File manager - Edit - /home/cipherteam/htdocs/cipherteam.in/backup2609/yogi/assets/node_modules/jquery-asGradient/src/asGradient.js
Back
import $ from 'jquery'; import DEFAULTS from './defaults'; import * as util from './util'; import GradientString from './gradientString'; import ColorStop from './colorStop'; import GradientTypes from './gradientTypes'; class AsGradient { constructor(string, options) { if (typeof string === 'object' && typeof options === 'undefined') { options = string; string = undefined; } this.value = { angle: 0, stops: [] }; this.options = $.extend(true, {}, DEFAULTS, options); this._type = 'LINEAR'; this._prefix = null; this.length = this.value.stops.length; this.current = 0; this._stopIdCount = 0; this.init(string); } init(string) { if (string) { this.fromString(string); } } val(value) { if (typeof value === 'undefined') { return this.toString(); } else { this.fromString(value); return this; } } angle(value) { if (typeof value === 'undefined') { return this.value.angle; } else { this.value.angle = GradientString.parseAngle(value); return this; } } append(color, position) { return this.insert(color, position, this.length); } reorder() { if(this.length < 2){ return; } this.value.stops = this.value.stops.sort((a, b) => a.position - b.position); } insert(color, position, index) { if (typeof index === 'undefined') { index = this.current; } const stop = new ColorStop(color, position, this); this.value.stops.splice(index, 0, stop); this.length = this.length + 1; this.current = index; return stop; } getById(id) { if(this.length > 0){ for(const i in this.value.stops){ if(id === this.value.stops[i].id){ return this.value.stops[i]; } } } return false; } removeById(id) { const index = this.getIndexById(id); if(index){ this.remove(index); } } getIndexById(id) { let index = 0; for(const i in this.value.stops){ if(id === this.value.stops[i].id){ return index; } index ++; } return false; } getCurrent() { return this.value.stops[this.current]; } setCurrentById(id) { let index = 0; for(const i in this.value.stops){ if(this.value.stops[i].id !== id){ index ++; } else { this.current = index; } } } get(index) { if (typeof index === 'undefined') { index = this.current; } if (index >= 0 && index < this.length) { this.current = index; return this.value.stops[index]; } else { return false; } } remove(index) { if (typeof index === 'undefined') { index = this.current; } if (index >= 0 && index < this.length) { this.value.stops.splice(index, 1); this.length = this.length - 1; this.current = index - 1; } } empty() { this.value.stops = []; this.length = 0; this.current = 0; } reset() { this.value._angle = 0; this.empty(); this._prefix = null; this._type = 'LINEAR'; } type(type) { if (typeof type === 'string' && (type = type.toUpperCase()) && typeof GradientTypes[type] !== 'undefined') { this._type = type; return this; } else { return this._type; } } fromString(string) { this.reset(); const result = GradientString.parseString(string); if (result) { this._prefix = result.prefix; this.type(result.type); if (result.value) { this.value.angle = GradientString.parseAngle(result.value.angle, this._prefix !== null); $.each(result.value.stops, (i, stop) => { this.append(stop.color, stop.position); }); } } } toString(prefix) { if(prefix === true){ prefix = util.getPrefix(); } return GradientTypes[this.type()].to(this.value, this, prefix); } matchString(string) { return GradientString.matchString(string); } toStringWithAngle(angle, prefix) { const value = $.extend(true, {}, this.value); value.angle = GradientString.parseAngle(angle); if(prefix === true){ prefix = util.getPrefix(); } return GradientTypes[this.type()].to(value, this, prefix); } getPrefixedStrings() { const strings = []; for (let i in this.options.prefixes) { if(Object.hasOwnProperty.call(this.options.prefixes, i)){ strings.push(this.toString(this.options.prefixes[i])); } } return strings; } static setDefaults(options) { $.extend(true, DEFAULTS, $.isPlainObject(options) && options); } } export default AsGradient;
| ver. 1.4 |
Github
|
.
| PHP 8.2.9 | Generation time: 0.04 |
proxy
|
phpinfo
|
Settings