Socket
Socket
Sign inDemoInstall

fizzle.js

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fizzle.js - npm Package Compare versions

Comparing version 1.2.0 to 1.3.0

2

dist/fizzle.min.js

@@ -1,1 +0,1 @@

this.Fizzle=function(t){var i={};function e(n){if(i[n])return i[n].exports;var s=i[n]={i:n,l:!1,exports:{}};return t[n].call(s.exports,s,s.exports,e),s.l=!0,s.exports}return e.m=t,e.c=i,e.d=function(t,i,n){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:n})},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,"a",i),i},e.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},e.p="",e(e.s=0)}([function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var n,s=(n=e(1))&&n.__esModule?n:{default:n};function o(t,i){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}function r(t,i){for(var e=0;e<i.length;e++){var n=i[e];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function h(t,i,e){return i&&r(t.prototype,i),e&&r(t,e),t}var f=2*Math.PI,u=Math.random,a=Math.floor,l=Math.sqrt,c=Math.abs,d=Math.max,p=function(){return Math.sign(u()-.5)},g=function(){function t(i,e,n){o(this,t),this.x=i,this.y=e,this.color=n,this.diffX=0,this.diffY=0,this.speedX=(u()/2+.25)*p(),this.speedY=(1-c(this.speedX))*p()}return h(t,[{key:"render",value:function(t,i){var e=this.x+this.diffX,n=this.y+this.diffY;return t.beginPath(),t.fillStyle=this.color,t.arc(e,n,i,0,f),t.fill(),this}},{key:"move",value:function(t,i){return i>0&&(this.diffX+=this.speedX*t,this.diffY+=this.speedY*t),(this.diffX>i&&this.speedX>0||this.diffX<-i&&this.speedX<0)&&(this.speedX*=-1),(this.diffY>i&&this.speedY>0||this.diffY<-i&&this.speedY<0)&&(this.speedY*=-1),this}}]),t}(),_=function(){function t(i,e){o(this,t),this._options=Object.assign(t.defaultOptions,e),this.bubbles=[],this.text=i}return h(t,[{key:"getImageData",value:function(){var i=this,e=document.createElement("canvas"),n=e.getContext("2d"),o="".concat(this._options.bold?"bold":""," ").concat(this._options.italic?"italic":"","\n ").concat(this._options.fontSize,"px ").concat(this._options.font);n.font=o;var r=this._options.text.reduce(function(t,i){return d(t,a(n.measureText(i).width))},0),h=a((this._options.text.length+.2)*this._options.fontSize);e.width=r,e.height=h,this.width=r,this.height=h;var f=[];if(this.width&&this.height){n.fillStyle="#000",n.textAlign=this._options.align,n.textBaseline="top",n.font=o;var u=(0,s.default)(),l=0;this._options.align===t.alignments.right||"rtl"===u&&this._options.align===t.alignments.start||"ltr"===u&&this._options.align===t.alignments.end?l=this.width:this._options.align===t.alignments.center&&(l=this.width/2),this._options.text.forEach(function(t,e){return n.fillText(t,l,e*i._options.fontSize)}),f=n.getImageData(0,0,this.width,this.height).data}return f}},{key:"build",value:function(){this.bubbles=[];for(var t=this.getImageData(),i=this._options.fontSize/1e5*(1/this._options.density),e=i/2,n=.08/l(t.length),s=this._options.colors.length,o=0,r=t.length/4;o<r;++o)if((e-=t[4*o+3]/255*n)<0){var h=this._options.colors[a(u()*s)];this.bubbles.push(new g(o%this.width,a(o/this.width),h)),e=(u()+1)*i}this.bubbles.sort(function(){return 2*u()-1})}},{key:"render",value:function(t){var i=this.speed*(this.fontSize/600),e=this.freedom*(this.fontSize/30),n=this.size*(this.fontSize/40);return this.bubbles.forEach(function(s){return s.move(i,e).render(t,n)}),this}},{key:"text",set:function(t){this._options.text=Array.isArray(t)?t.map(function(t){return t.toString()}):[t.toString().split(/\n/g)],this.build()},get:function(){return this._options.text.join("\n")}},{key:"font",set:function(t){this._options.font=t,this.build()},get:function(){return this._options.font}},{key:"fontSize",set:function(t){this._options.fontSize=t,this.build()},get:function(){return this._options.fontSize}},{key:"bold",set:function(t){this._options.bold=t,this.build()},get:function(){return this._options.bold}},{key:"italic",set:function(t){this._options.italic=t,this.build()},get:function(){return this._options.italic}},{key:"align",set:function(t){this._options.align=t,this.build()},get:function(){return this._options.align}},{key:"density",set:function(t){this._options.density=t,this.build()},get:function(){return this._options.density}},{key:"speed",set:function(t){this._options.speed=t},get:function(){return this._options.speed}},{key:"freedom",set:function(t){this._options.freedom=t},get:function(){return this._options.freedom}},{key:"size",set:function(t){this._options.size=t},get:function(){return this._options.size}},{key:"colors",set:function(t){var i=this;this._options.colors=t;var e=t.length;this.bubbles.forEach(function(t){return t.color=i._options.colors[a(u()*e)]})},get:function(){return this._options.colors}}],[{key:"defaultOptions",get:function(){return{font:"sans-serif",fontSize:200,bold:!0,italic:!1,align:t.alignments.start,colors:["#31ffb7","#ffb031","#c1ff31","#7931ff"],density:1,size:1,speed:1,freedom:1}}},{key:"alignments",get:function(){return{left:"left",center:"center",right:"right",start:"start",end:"end"}}}]),t}();i.default=_},function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.default=function(t){return document.defaultView.getComputedStyle(t||document.body).direction}}]).default;
this.Fizzle=function(t){var i={};function e(s){if(i[s])return i[s].exports;var o=i[s]={i:s,l:!1,exports:{}};return t[s].call(o.exports,o,o.exports,e),o.l=!0,o.exports}return e.m=t,e.c=i,e.d=function(t,i,s){e.o(t,i)||Object.defineProperty(t,i,{enumerable:!0,get:s})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,i){if(1&i&&(t=e(t)),8&i)return t;if(4&i&&"object"==typeof t&&t&&t.__esModule)return t;var s=Object.create(null);if(e.r(s),Object.defineProperty(s,"default",{enumerable:!0,value:t}),2&i&&"string"!=typeof t)for(var o in t)e.d(s,o,function(i){return t[i]}.bind(null,o));return s},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,"a",i),i},e.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},e.p="",e(e.s=0)}([function(t,i,e){"use strict";e.r(i);var s=function(t){return document.defaultView.getComputedStyle(t||document.body).direction};e.d(i,"default",function(){return u});const o=2*Math.PI,{random:n,floor:r,sqrt:h,abs:l,max:d}=Math,f=()=>Math.sign(n()-.5);class a{constructor(t,i,e){this.x=t,this.y=i,this.color=e,this.diffX=0,this.diffY=0,this.speedX=(n()/2+.25)*f(),this.speedY=(1-l(this.speedX))*f()}render(t,i){const e=this.x+this.diffX,s=this.y+this.diffY;return t.beginPath(),t.fillStyle=this.color,t.arc(e,s,i,0,o),t.fill(),this}move(t,i){return i>0&&(this.diffX+=this.speedX*t,this.diffY+=this.speedY*t),(this.diffX>i&&this.speedX>0||this.diffX<-i&&this.speedX<0)&&(this.speedX*=-1),(this.diffY>i&&this.speedY>0||this.diffY<-i&&this.speedY<0)&&(this.speedY*=-1),this}}class u{constructor(t,i){this._options=Object.assign(u.defaultOptions,i),this.bubbles=[],this.text=t}getImageData(){const t=document.createElement("canvas"),i=t.getContext("2d"),e=`${this._options.bold?"bold":""} ${this._options.italic?"italic":""}\n ${this._options.fontSize}px ${this._options.font}`;i.font=e;const o=this._options.text.reduce((t,e)=>d(t,r(i.measureText(e).width)),0),n=r((this._options.text.length+.2)*this._options.fontSize);t.width=o,t.height=n,this.width=o,this.height=n;let h=[];if(this.width&&this.height){i.fillStyle="#000",i.textAlign=this._options.align,i.textBaseline="top",i.font=e;const t=s();let o=0;this._options.align===u.alignments.right||"rtl"===t&&this._options.align===u.alignments.start||"ltr"===t&&this._options.align===u.alignments.end?o=this.width:this._options.align===u.alignments.center&&(o=this.width/2),this._options.text.forEach((t,e)=>i.fillText(t,o,e*this._options.fontSize)),h=i.getImageData(0,0,this.width,this.height).data}return h}build(){this.bubbles=[];const t=this.getImageData(),i=this._options.fontSize/1e5*(1/this._options.density);let e=i/2;const s=.08/h(t.length),o=this._options.colors.length;for(let h=0,l=t.length/4;h<l;++h)if((e-=t[4*h+3]/255*s)<0){const t=this._options.colors[r(n()*o)];this.bubbles.push(new a(h%this.width,r(h/this.width),t)),e=(n()+1)*i}this.bubbles.sort(()=>2*n()-1)}set text(t){this._options.text=Array.isArray(t)?t.map(t=>t.toString()):[t.toString().split(/\n/g)],this.build()}get text(){return this._options.text.join("\n")}set font(t){this._options.font=t,this.build()}get font(){return this._options.font}set fontSize(t){this._options.fontSize=t,this.build()}get fontSize(){return this._options.fontSize}set bold(t){this._options.bold=t,this.build()}get bold(){return this._options.bold}set italic(t){this._options.italic=t,this.build()}get italic(){return this._options.italic}set align(t){this._options.align=t,this.build()}get align(){return this._options.align}set density(t){this._options.density=t,this.build()}get density(){return this._options.density}set speed(t){this._options.speed=t}get speed(){return this._options.speed}set freedom(t){this._options.freedom=t}get freedom(){return this._options.freedom}set size(t){this._options.size=t}get size(){return this._options.size}set colors(t){this._options.colors=t;const i=t.length;this.bubbles.forEach(t=>t.color=this._options.colors[r(n()*i)])}get colors(){return this._options.colors}render(t){const i=this.speed*(this.fontSize/600),e=this.freedom*(this.fontSize/30),s=this.size*(this.fontSize/40);return this.bubbles.forEach(o=>o.move(i,e).render(t,s)),this}static get defaultOptions(){return{font:"sans-serif",fontSize:200,bold:!0,italic:!1,align:u.alignments.start,colors:["#31ffb7","#ffb031","#c1ff31","#7931ff"],density:1,size:1,speed:1,freedom:1}}static get alignments(){return{left:"left",center:"center",right:"right",start:"start",end:"end"}}}}]).default;

@@ -165,2 +165,3 @@ import getDirection from "text-direction";

}
/**

@@ -182,2 +183,3 @@ * Get current text.

}
/**

@@ -199,2 +201,3 @@ * Get the current font

}
/**

@@ -216,2 +219,3 @@ * Get current font-size

}
/**

@@ -233,2 +237,3 @@ * Get whether font is bold

}
/**

@@ -250,2 +255,3 @@ * Get whether font is italic

}
/**

@@ -283,2 +289,3 @@ * Get current alignment

}
/**

@@ -315,2 +322,3 @@ * Get current bubbles' speed

}
/**

@@ -334,2 +342,3 @@ * Get current bubbles' size

}
/**

@@ -336,0 +345,0 @@ * Get current bubbles' colors

{
"name": "fizzle.js",
"version": "1.2.0",
"version": "1.3.0",
"description": "Write any text in a canvas with fizzly bubbles.",

@@ -13,6 +13,11 @@ "main": "fizzle.js",

"lint": "eslint fizzle.js",
"test": "jest-webpack",
"build": "webpack",
"prepublishOnly": "npm run lint && npm test && npm run build"
"test": "ava",
"build": "webpack --mode=development",
"prepublishOnly": "npm run lint && npm test && webpack --mode=production"
},
"ava": {
"require": [
"esm"
]
},
"repository": {

@@ -35,17 +40,13 @@ "type": "git",

"devDependencies": {
"@babel/core": "^7.0.0-beta.40",
"@babel/preset-env": "^7.0.0-beta.40",
"@gmartigny/eslint-config": "^1.0.2",
"babel-loader": "^8.0.0-beta.2",
"eslint": "^4.18.1",
"eslint-plugin-import": "^2.9.0",
"jest": "^22.4.2",
"jest-webpack": "^0.4.0",
"uglifyjs-webpack-plugin": "^1.2.2",
"webpack": "^3.11.0"
"@gmartigny/eslint-config": "^1.2.1",
"ava": "^0.25.0",
"eslint": "^4.19.1",
"eslint-plugin-import": "^2.13.0",
"esm": "^3.0.72",
"webpack": "^4.16.2",
"webpack-command": "^0.4.1"
},
"dependencies": {
"text-direction": "^1.0.2"
},
"peerDependencies": {}
"text-direction": "^1.1.0"
}
}

@@ -0,0 +0,0 @@ # Fizzle.js

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc