- Linting (ESLint): Simplify regexes
- npm: Update scripts to reflect removal of `all_tests.html`; remove `browser-test` script - npm: Update devDepsmaster
parent
3200e0ab8e
commit
a59170fbe1
|
@ -185,6 +185,8 @@ module.exports = {
|
|||
}
|
||||
],
|
||||
rules: {
|
||||
// https://github.com/sindresorhus/eslint-plugin-unicorn/issues/453
|
||||
"unicorn/regex-shorthand": 0,
|
||||
// The Babel transform seems to have a problem converting these
|
||||
"prefer-named-capture-group": "off",
|
||||
// Override these `ash-nazg/sauron` rules which are difficult for us
|
||||
|
|
|
@ -3,10 +3,13 @@
|
|||
## ?
|
||||
|
||||
- Fix (Accessibility): Avoid duplicate IDs
|
||||
- Linting (ESLint): Simplify regexes
|
||||
- Testing: Switch to Cypress with code coverage for UI testing;
|
||||
use ESM version for faster debugging
|
||||
- Testing: Add map file for underscore
|
||||
- npm: Add peerDeps
|
||||
- npm: Update scripts to reflect removal of `all_tests.html`;
|
||||
remove `browser-test` script
|
||||
- npm: Update devDeps, peerDeps
|
||||
|
||||
## 5.1.0
|
||||
|
||||
|
|
|
@ -386,7 +386,7 @@ var canvg = (function (exports) {
|
|||
});
|
||||
}
|
||||
}, {
|
||||
re: /^(\w{1})(\w{1})(\w{1})$/,
|
||||
re: /^(\w)(\w)(\w)$/,
|
||||
// re: /^(?<r>\w{1})(?<g>\w{1})(?<b>\w{1})$/,
|
||||
example: ['#fb0', 'f0f'],
|
||||
process: function process(_) {
|
||||
|
@ -1030,7 +1030,7 @@ var canvg = (function (exports) {
|
|||
|
||||
|
||||
svg.compressSpaces = function (s) {
|
||||
return s.replace(/[\s\r\t\n]+/gm, ' ');
|
||||
return s.replace(/\s+/gm, ' ');
|
||||
}; // ajax
|
||||
// Todo: Replace with `fetch` and polyfill
|
||||
|
||||
|
@ -1211,7 +1211,7 @@ var canvg = (function (exports) {
|
|||
}, {
|
||||
key: "getUnits",
|
||||
value: function getUnits() {
|
||||
return String(this.value).replace(/[0-9.-]/g, '');
|
||||
return String(this.value).replace(/[\d.-]/g, '');
|
||||
} // get the length as pixels
|
||||
|
||||
}, {
|
||||
|
@ -2528,8 +2528,8 @@ var canvg = (function (exports) {
|
|||
.replace(/,/gm, ' ') // get rid of all commas
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from commands
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from commands
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/([^\s])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])(\S)/gm, '$1 $2') // separate commands from points
|
||||
.replace(/(\S)([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/(\d)([+-])/gm, '$1 $2') // separate digits when no comma
|
||||
.replace(/(\.\d*)(\.)/gm, '$1 $2') // separate digits when no comma
|
||||
.replace(/([Aa](\s+\d+)(\s+\d+)(\s+\d+))\s+([01])\s*([01])/gm, '$1 $5 $6 '); // shorthand elliptical arc path syntax
|
||||
|
@ -4002,7 +4002,7 @@ var canvg = (function (exports) {
|
|||
}); // remove comments
|
||||
|
||||
|
||||
css = css.replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm, ''); // eslint-disable-line unicorn/no-unsafe-regex
|
||||
css = css.replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^\s*\/\/.*)/gm, ''); // eslint-disable-line unicorn/no-unsafe-regex
|
||||
// replace whitespace
|
||||
|
||||
css = svg.compressSpaces(css);
|
||||
|
|
|
@ -386,7 +386,7 @@ var svgEditorExtension_server_moinsave = (function () {
|
|||
});
|
||||
}
|
||||
}, {
|
||||
re: /^(\w{1})(\w{1})(\w{1})$/,
|
||||
re: /^(\w)(\w)(\w)$/,
|
||||
// re: /^(?<r>\w{1})(?<g>\w{1})(?<b>\w{1})$/,
|
||||
example: ['#fb0', 'f0f'],
|
||||
process: function process(_) {
|
||||
|
@ -1030,7 +1030,7 @@ var svgEditorExtension_server_moinsave = (function () {
|
|||
|
||||
|
||||
svg.compressSpaces = function (s) {
|
||||
return s.replace(/[\s\r\t\n]+/gm, ' ');
|
||||
return s.replace(/\s+/gm, ' ');
|
||||
}; // ajax
|
||||
// Todo: Replace with `fetch` and polyfill
|
||||
|
||||
|
@ -1211,7 +1211,7 @@ var svgEditorExtension_server_moinsave = (function () {
|
|||
}, {
|
||||
key: "getUnits",
|
||||
value: function getUnits() {
|
||||
return String(this.value).replace(/[0-9.-]/g, '');
|
||||
return String(this.value).replace(/[\d.-]/g, '');
|
||||
} // get the length as pixels
|
||||
|
||||
}, {
|
||||
|
@ -2528,8 +2528,8 @@ var svgEditorExtension_server_moinsave = (function () {
|
|||
.replace(/,/gm, ' ') // get rid of all commas
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from commands
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from commands
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/([^\s])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])(\S)/gm, '$1 $2') // separate commands from points
|
||||
.replace(/(\S)([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/(\d)([+-])/gm, '$1 $2') // separate digits when no comma
|
||||
.replace(/(\.\d*)(\.)/gm, '$1 $2') // separate digits when no comma
|
||||
.replace(/([Aa](\s+\d+)(\s+\d+)(\s+\d+))\s+([01])\s*([01])/gm, '$1 $5 $6 '); // shorthand elliptical arc path syntax
|
||||
|
@ -4002,7 +4002,7 @@ var svgEditorExtension_server_moinsave = (function () {
|
|||
}); // remove comments
|
||||
|
||||
|
||||
css = css.replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm, ''); // eslint-disable-line unicorn/no-unsafe-regex
|
||||
css = css.replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^\s*\/\/.*)/gm, ''); // eslint-disable-line unicorn/no-unsafe-regex
|
||||
// replace whitespace
|
||||
|
||||
css = svg.compressSpaces(css);
|
||||
|
|
|
@ -386,7 +386,7 @@ var svgEditorExtension_server_opensave = (function () {
|
|||
});
|
||||
}
|
||||
}, {
|
||||
re: /^(\w{1})(\w{1})(\w{1})$/,
|
||||
re: /^(\w)(\w)(\w)$/,
|
||||
// re: /^(?<r>\w{1})(?<g>\w{1})(?<b>\w{1})$/,
|
||||
example: ['#fb0', 'f0f'],
|
||||
process: function process(_) {
|
||||
|
@ -1030,7 +1030,7 @@ var svgEditorExtension_server_opensave = (function () {
|
|||
|
||||
|
||||
svg.compressSpaces = function (s) {
|
||||
return s.replace(/[\s\r\t\n]+/gm, ' ');
|
||||
return s.replace(/\s+/gm, ' ');
|
||||
}; // ajax
|
||||
// Todo: Replace with `fetch` and polyfill
|
||||
|
||||
|
@ -1211,7 +1211,7 @@ var svgEditorExtension_server_opensave = (function () {
|
|||
}, {
|
||||
key: "getUnits",
|
||||
value: function getUnits() {
|
||||
return String(this.value).replace(/[0-9.-]/g, '');
|
||||
return String(this.value).replace(/[\d.-]/g, '');
|
||||
} // get the length as pixels
|
||||
|
||||
}, {
|
||||
|
@ -2528,8 +2528,8 @@ var svgEditorExtension_server_opensave = (function () {
|
|||
.replace(/,/gm, ' ') // get rid of all commas
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from commands
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from commands
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/([^\s])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])(\S)/gm, '$1 $2') // separate commands from points
|
||||
.replace(/(\S)([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/(\d)([+-])/gm, '$1 $2') // separate digits when no comma
|
||||
.replace(/(\.\d*)(\.)/gm, '$1 $2') // separate digits when no comma
|
||||
.replace(/([Aa](\s+\d+)(\s+\d+)(\s+\d+))\s+([01])\s*([01])/gm, '$1 $5 $6 '); // shorthand elliptical arc path syntax
|
||||
|
@ -4002,7 +4002,7 @@ var svgEditorExtension_server_opensave = (function () {
|
|||
}); // remove comments
|
||||
|
||||
|
||||
css = css.replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm, ''); // eslint-disable-line unicorn/no-unsafe-regex
|
||||
css = css.replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^\s*\/\/.*)/gm, ''); // eslint-disable-line unicorn/no-unsafe-regex
|
||||
// replace whitespace
|
||||
|
||||
css = svg.compressSpaces(css);
|
||||
|
|
|
@ -7934,7 +7934,7 @@ var init$2 = function init(editorContext) {
|
|||
*/
|
||||
|
||||
var dropXMLInteralSubset = function dropXMLInteralSubset(str) {
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?\]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
};
|
||||
/**
|
||||
* Converts characters in a string to XML-friendly entities.
|
||||
|
@ -8014,7 +8014,7 @@ function decode64(input) {
|
|||
} // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
|
||||
|
||||
|
||||
input = input.replace(/[^A-Za-z0-9+/=]/g, '');
|
||||
input = input.replace(/[^A-Za-z\d+/=]/g, '');
|
||||
var output = '';
|
||||
var i = 0;
|
||||
|
||||
|
@ -17101,8 +17101,8 @@ function SvgCanvas(container, config) {
|
|||
var pt = screenToPt(mouseX, mouseY);
|
||||
var index = getIndexFromPoint(pt.x, pt.y);
|
||||
var str = curtext.textContent;
|
||||
var first = str.substr(0, index).replace(/[a-z0-9]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z0-9]+/i);
|
||||
var first = str.substr(0, index).replace(/[a-z\d]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z\d]+/i);
|
||||
var last = (m ? m[0].length : 0) + index;
|
||||
setSelection(first, last); // Set tripleclick
|
||||
|
||||
|
@ -25470,19 +25470,19 @@ var jPicker = function jPicker($) {
|
|||
break;
|
||||
|
||||
case hex.get(0):
|
||||
hex.val(hex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(hex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex && bindedHex.val(hex.val());
|
||||
color.val('hex', hex.val() !== '' ? hex.val() : null, e.target);
|
||||
break;
|
||||
|
||||
case bindedHex && bindedHex.get(0):
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(bindedHex.val());
|
||||
color.val('hex', bindedHex.val() !== '' ? bindedHex.val() : null, e.target);
|
||||
break;
|
||||
|
||||
case ahex && ahex.get(0):
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 2));
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 2));
|
||||
color.val('a', !isNullish$1(ahex.val()) ? parseInt(ahex.val(), 16) : null, e.target);
|
||||
break;
|
||||
}
|
||||
|
@ -26121,7 +26121,7 @@ var jPicker = function jPicker($) {
|
|||
*/
|
||||
validateHex: function validateHex(hex) {
|
||||
// if (typeof hex === 'object') return '';
|
||||
hex = hex.toLowerCase().replace(/[^a-f0-9]/g, '');
|
||||
hex = hex.toLowerCase().replace(/[^a-f\d]/g, '');
|
||||
if (hex.length > 8) hex = hex.substring(0, 8);
|
||||
return hex;
|
||||
},
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -7940,7 +7940,7 @@
|
|||
*/
|
||||
|
||||
var dropXMLInteralSubset = function dropXMLInteralSubset(str) {
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?\]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
};
|
||||
/**
|
||||
* Converts characters in a string to XML-friendly entities.
|
||||
|
@ -8020,7 +8020,7 @@
|
|||
} // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
|
||||
|
||||
|
||||
input = input.replace(/[^A-Za-z0-9+/=]/g, '');
|
||||
input = input.replace(/[^A-Za-z\d+/=]/g, '');
|
||||
var output = '';
|
||||
var i = 0;
|
||||
|
||||
|
@ -17107,8 +17107,8 @@
|
|||
var pt = screenToPt(mouseX, mouseY);
|
||||
var index = getIndexFromPoint(pt.x, pt.y);
|
||||
var str = curtext.textContent;
|
||||
var first = str.substr(0, index).replace(/[a-z0-9]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z0-9]+/i);
|
||||
var first = str.substr(0, index).replace(/[a-z\d]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z\d]+/i);
|
||||
var last = (m ? m[0].length : 0) + index;
|
||||
setSelection(first, last); // Set tripleclick
|
||||
|
||||
|
@ -25476,19 +25476,19 @@
|
|||
break;
|
||||
|
||||
case hex.get(0):
|
||||
hex.val(hex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(hex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex && bindedHex.val(hex.val());
|
||||
color.val('hex', hex.val() !== '' ? hex.val() : null, e.target);
|
||||
break;
|
||||
|
||||
case bindedHex && bindedHex.get(0):
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(bindedHex.val());
|
||||
color.val('hex', bindedHex.val() !== '' ? bindedHex.val() : null, e.target);
|
||||
break;
|
||||
|
||||
case ahex && ahex.get(0):
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 2));
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 2));
|
||||
color.val('a', !isNullish$1(ahex.val()) ? parseInt(ahex.val(), 16) : null, e.target);
|
||||
break;
|
||||
}
|
||||
|
@ -26127,7 +26127,7 @@
|
|||
*/
|
||||
validateHex: function validateHex(hex) {
|
||||
// if (typeof hex === 'object') return '';
|
||||
hex = hex.toLowerCase().replace(/[^a-f0-9]/g, '');
|
||||
hex = hex.toLowerCase().replace(/[^a-f\d]/g, '');
|
||||
if (hex.length > 8) hex = hex.substring(0, 8);
|
||||
return hex;
|
||||
},
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -265,7 +265,7 @@
|
|||
});
|
||||
}
|
||||
}, {
|
||||
re: /^(\w{1})(\w{1})(\w{1})$/,
|
||||
re: /^(\w)(\w)(\w)$/,
|
||||
// re: /^(?<r>\w{1})(?<g>\w{1})(?<b>\w{1})$/,
|
||||
example: ['#fb0', 'f0f'],
|
||||
process: function process(_) {
|
||||
|
|
|
@ -8006,7 +8006,7 @@ var SvgCanvas = (function () {
|
|||
*/
|
||||
|
||||
var dropXMLInteralSubset = function dropXMLInteralSubset(str) {
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?\]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
};
|
||||
/**
|
||||
* Converts characters in a string to XML-friendly entities.
|
||||
|
@ -8086,7 +8086,7 @@ var SvgCanvas = (function () {
|
|||
} // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
|
||||
|
||||
|
||||
input = input.replace(/[^A-Za-z0-9+/=]/g, '');
|
||||
input = input.replace(/[^A-Za-z\d+/=]/g, '');
|
||||
var output = '';
|
||||
var i = 0;
|
||||
|
||||
|
@ -16879,8 +16879,8 @@ var SvgCanvas = (function () {
|
|||
var pt = screenToPt(mouseX, mouseY);
|
||||
var index = getIndexFromPoint(pt.x, pt.y);
|
||||
var str = curtext.textContent;
|
||||
var first = str.substr(0, index).replace(/[a-z0-9]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z0-9]+/i);
|
||||
var first = str.substr(0, index).replace(/[a-z\d]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z\d]+/i);
|
||||
var last = (m ? m[0].length : 0) + index;
|
||||
setSelection(first, last); // Set tripleclick
|
||||
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -152,7 +152,7 @@ function build (opts) {
|
|||
|
||||
// compress spaces
|
||||
svg.compressSpaces = function (s) {
|
||||
return s.replace(/[\s\r\t\n]+/gm, ' ');
|
||||
return s.replace(/\s+/gm, ' ');
|
||||
};
|
||||
|
||||
// ajax
|
||||
|
@ -302,7 +302,7 @@ function build (opts) {
|
|||
}
|
||||
|
||||
getUnits () {
|
||||
return String(this.value).replace(/[0-9.-]/g, '');
|
||||
return String(this.value).replace(/[\d.-]/g, '');
|
||||
}
|
||||
|
||||
// get the length as pixels
|
||||
|
@ -1254,8 +1254,8 @@ function build (opts) {
|
|||
.replace(/,/gm, ' ') // get rid of all commas
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from commands
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from commands
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/([^\s])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/([MmZzLlHhVvCcSsQqTtAa])(\S)/gm, '$1 $2') // separate commands from points
|
||||
.replace(/(\S)([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // separate commands from points
|
||||
.replace(/(\d)([+-])/gm, '$1 $2') // separate digits when no comma
|
||||
.replace(/(\.\d*)(\.)/gm, '$1 $2') // separate digits when no comma
|
||||
.replace(/([Aa](\s+\d+)(\s+\d+)(\s+\d+))\s+([01])\s*([01])/gm, '$1 $5 $6 '); // shorthand elliptical arc path syntax
|
||||
|
@ -2367,7 +2367,7 @@ function build (opts) {
|
|||
css += nodeValue;
|
||||
});
|
||||
// remove comments
|
||||
css = css.replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm, ''); // eslint-disable-line unicorn/no-unsafe-regex
|
||||
css = css.replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^\s*\/\/.*)/gm, ''); // eslint-disable-line unicorn/no-unsafe-regex
|
||||
// replace whitespace
|
||||
css = svg.compressSpaces(css);
|
||||
const cssDefs = css.split('}');
|
||||
|
|
|
@ -170,7 +170,7 @@ const colorDefs = [
|
|||
}
|
||||
},
|
||||
{
|
||||
re: /^(\w{1})(\w{1})(\w{1})$/,
|
||||
re: /^(\w)(\w)(\w)$/,
|
||||
// re: /^(?<r>\w{1})(?<g>\w{1})(?<b>\w{1})$/,
|
||||
example: ['#fb0', 'f0f'],
|
||||
process (_, ...bits) {
|
||||
|
|
|
@ -549,17 +549,17 @@ const jPicker = function ($) {
|
|||
color.val('v', value.val(), e.target);
|
||||
break;
|
||||
case hex.get(0):
|
||||
hex.val(hex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(hex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex && bindedHex.val(hex.val());
|
||||
color.val('hex', hex.val() !== '' ? hex.val() : null, e.target);
|
||||
break;
|
||||
case bindedHex && bindedHex.get(0):
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(bindedHex.val());
|
||||
color.val('hex', bindedHex.val() !== '' ? bindedHex.val() : null, e.target);
|
||||
break;
|
||||
case ahex && ahex.get(0):
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 2));
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 2));
|
||||
color.val('a', !isNullish(ahex.val()) ? parseInt(ahex.val(), 16) : null, e.target);
|
||||
break;
|
||||
}
|
||||
|
@ -1056,7 +1056,7 @@ const jPicker = function ($) {
|
|||
*/
|
||||
validateHex (hex) {
|
||||
// if (typeof hex === 'object') return '';
|
||||
hex = hex.toLowerCase().replace(/[^a-f0-9]/g, '');
|
||||
hex = hex.toLowerCase().replace(/[^a-f\d]/g, '');
|
||||
if (hex.length > 8) hex = hex.substring(0, 8);
|
||||
return hex;
|
||||
},
|
||||
|
|
|
@ -3287,8 +3287,8 @@ function selectWord (evt) {
|
|||
|
||||
const index = getIndexFromPoint(pt.x, pt.y);
|
||||
const str = curtext.textContent;
|
||||
const first = str.substr(0, index).replace(/[a-z0-9]+$/i, '').length;
|
||||
const m = str.substr(index).match(/^[a-z0-9]+/i);
|
||||
const first = str.substr(0, index).replace(/[a-z\d]+$/i, '').length;
|
||||
const m = str.substr(index).match(/^[a-z\d]+/i);
|
||||
const last = (m ? m[0].length : 0) + index;
|
||||
setSelection(first, last);
|
||||
|
||||
|
|
|
@ -110,7 +110,7 @@ export const init = function (editorContext) {
|
|||
* @todo This might be needed in other places `parseFromString` is used even without LGTM flagging
|
||||
*/
|
||||
export const dropXMLInteralSubset = (str) => {
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?\]>)/, '$1$2');
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?]>)/, '$1$2');
|
||||
// return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
};
|
||||
|
||||
|
@ -208,7 +208,7 @@ export function decode64 (input) {
|
|||
}
|
||||
|
||||
// remove all characters that are not A-Z, a-z, 0-9, +, /, or =
|
||||
input = input.replace(/[^A-Za-z0-9+/=]/g, '');
|
||||
input = input.replace(/[^A-Za-z\d+/=]/g, '');
|
||||
|
||||
let output = '';
|
||||
let i = 0;
|
||||
|
|
|
@ -7937,7 +7937,7 @@
|
|||
*/
|
||||
|
||||
var dropXMLInteralSubset = function dropXMLInteralSubset(str) {
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?\]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
};
|
||||
/**
|
||||
* Converts characters in a string to XML-friendly entities.
|
||||
|
@ -8017,7 +8017,7 @@
|
|||
} // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
|
||||
|
||||
|
||||
input = input.replace(/[^A-Za-z0-9+/=]/g, '');
|
||||
input = input.replace(/[^A-Za-z\d+/=]/g, '');
|
||||
var output = '';
|
||||
var i = 0;
|
||||
|
||||
|
@ -17104,8 +17104,8 @@
|
|||
var pt = screenToPt(mouseX, mouseY);
|
||||
var index = getIndexFromPoint(pt.x, pt.y);
|
||||
var str = curtext.textContent;
|
||||
var first = str.substr(0, index).replace(/[a-z0-9]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z0-9]+/i);
|
||||
var first = str.substr(0, index).replace(/[a-z\d]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z\d]+/i);
|
||||
var last = (m ? m[0].length : 0) + index;
|
||||
setSelection(first, last); // Set tripleclick
|
||||
|
||||
|
@ -25473,19 +25473,19 @@
|
|||
break;
|
||||
|
||||
case hex.get(0):
|
||||
hex.val(hex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(hex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex && bindedHex.val(hex.val());
|
||||
color.val('hex', hex.val() !== '' ? hex.val() : null, e.target);
|
||||
break;
|
||||
|
||||
case bindedHex && bindedHex.get(0):
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(bindedHex.val());
|
||||
color.val('hex', bindedHex.val() !== '' ? bindedHex.val() : null, e.target);
|
||||
break;
|
||||
|
||||
case ahex && ahex.get(0):
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 2));
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 2));
|
||||
color.val('a', !isNullish$1(ahex.val()) ? parseInt(ahex.val(), 16) : null, e.target);
|
||||
break;
|
||||
}
|
||||
|
@ -26124,7 +26124,7 @@
|
|||
*/
|
||||
validateHex: function validateHex(hex) {
|
||||
// if (typeof hex === 'object') return '';
|
||||
hex = hex.toLowerCase().replace(/[^a-f0-9]/g, '');
|
||||
hex = hex.toLowerCase().replace(/[^a-f\d]/g, '');
|
||||
if (hex.length > 8) hex = hex.substring(0, 8);
|
||||
return hex;
|
||||
},
|
||||
|
|
|
@ -1542,15 +1542,6 @@
|
|||
"supports-color": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"cli-cursor": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz",
|
||||
"integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"restore-cursor": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"figures": {
|
||||
"version": "1.7.0",
|
||||
"resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
|
||||
|
@ -1561,22 +1552,6 @@
|
|||
"object-assign": "^4.1.0"
|
||||
}
|
||||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
"restore-cursor": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz",
|
||||
"integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"exit-hook": "^1.0.0",
|
||||
"onetime": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
|
@ -1692,9 +1667,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"@types/estree": {
|
||||
"version": "0.0.39",
|
||||
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
|
||||
"integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
|
||||
"version": "0.0.40",
|
||||
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.40.tgz",
|
||||
"integrity": "sha512-p3KZgMto/JyxosKGmnLDJ/dG5wf+qTRMUjHJcspC2oQKa4jP7mz+tv0ND56lLBu3ojHlhzY33Ol+khLyNmilkA==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/events": {
|
||||
|
@ -1937,13 +1912,10 @@
|
|||
}
|
||||
},
|
||||
"ansi-escapes": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
|
||||
"integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"type-fest": "^0.8.1"
|
||||
}
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz",
|
||||
"integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=",
|
||||
"dev": true
|
||||
},
|
||||
"ansi-regex": {
|
||||
"version": "5.0.0",
|
||||
|
@ -2141,6 +2113,15 @@
|
|||
"integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
|
||||
"dev": true
|
||||
},
|
||||
"async": {
|
||||
"version": "2.6.1",
|
||||
"resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz",
|
||||
"integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lodash": "^4.17.10"
|
||||
}
|
||||
},
|
||||
"async-each": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
|
||||
|
@ -3563,9 +3544,9 @@
|
|||
}
|
||||
},
|
||||
"ci-info": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
|
||||
"integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
|
||||
"version": "1.6.0",
|
||||
"resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz",
|
||||
"integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==",
|
||||
"dev": true
|
||||
},
|
||||
"cipher-base": {
|
||||
|
@ -3611,12 +3592,12 @@
|
|||
}
|
||||
},
|
||||
"cli-cursor": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
|
||||
"integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz",
|
||||
"integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"restore-cursor": "^3.1.0"
|
||||
"restore-cursor": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"cli-spinners": {
|
||||
|
@ -3650,12 +3631,6 @@
|
|||
"number-is-nan": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"slice-ansi": {
|
||||
"version": "0.0.4",
|
||||
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz",
|
||||
"integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=",
|
||||
"dev": true
|
||||
},
|
||||
"string-width": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
|
||||
|
@ -3968,9 +3943,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"core-js-bundle": {
|
||||
"version": "3.4.2",
|
||||
"resolved": "https://registry.npmjs.org/core-js-bundle/-/core-js-bundle-3.4.2.tgz",
|
||||
"integrity": "sha512-Y8qJqRF/Zqrd5FtPyEID8ZIMydyoOtpQU8l+3BCICviJkkgL0KtQQS+k+k8s+KcuqJrOHWIAWxJfIu2xTqpNVA==",
|
||||
"version": "3.4.5",
|
||||
"resolved": "https://registry.npmjs.org/core-js-bundle/-/core-js-bundle-3.4.5.tgz",
|
||||
"integrity": "sha512-RxIIYceeKEtLFC9/3MpsyhxtZRj7NBZARaWPdfUj8uQlkHEkdS5QY3n25JrkKZahll+KoyFuc3NtITqLFG9Q+w==",
|
||||
"dev": true
|
||||
},
|
||||
"core-js-compat": {
|
||||
|
@ -4195,9 +4170,9 @@
|
|||
}
|
||||
},
|
||||
"cypress": {
|
||||
"version": "3.6.1",
|
||||
"resolved": "https://registry.npmjs.org/cypress/-/cypress-3.6.1.tgz",
|
||||
"integrity": "sha512-6n0oqENdz/oQ7EJ6IgESNb2M7Bo/70qX9jSJsAziJTC3kICfEMmJUlrAnP9bn+ut24MlXQST5nRXhUP5nRIx6A==",
|
||||
"version": "3.7.0",
|
||||
"resolved": "https://registry.npmjs.org/cypress/-/cypress-3.7.0.tgz",
|
||||
"integrity": "sha512-o+vfRxqAba8TduelzfZQ4WHmj2yNEjaoO2EuZ8dZ9pJpuW+WGtBGheKIp6zkoQsp8ZgFe8OoHh1i2mY8BDnMAw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@cypress/listr-verbose-renderer": "0.4.1",
|
||||
|
@ -4791,9 +4766,9 @@
|
|||
}
|
||||
},
|
||||
"eslint": {
|
||||
"version": "6.7.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-6.7.0.tgz",
|
||||
"integrity": "sha512-dQpj+PaHKHfXHQ2Imcw5d853PTvkUGbHk/MR68KQUl98EgKDCdh4vLRH1ZxhqeQjQFJeg8fgN0UwmNhN3l8dDQ==",
|
||||
"version": "6.7.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-6.7.1.tgz",
|
||||
"integrity": "sha512-UWzBS79pNcsDSxgxbdjkmzn/B6BhsXMfUaOHnNwyE8nD+Q6pyT96ow2MccVayUTV4yMid4qLhMiQaywctRkBLA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.0.0",
|
||||
|
@ -4907,9 +4882,9 @@
|
|||
}
|
||||
},
|
||||
"eslint-config-ash-nazg": {
|
||||
"version": "12.0.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-ash-nazg/-/eslint-config-ash-nazg-12.0.0.tgz",
|
||||
"integrity": "sha512-1+RGSF5DDa0BFxfouYYyGvGbPh9S8pRvtxNdJqtikvurVXYYfruYyisCcfr4ODBSLU3NRMzLuGf1Der0FxfB9A==",
|
||||
"version": "13.0.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-ash-nazg/-/eslint-config-ash-nazg-13.0.0.tgz",
|
||||
"integrity": "sha512-NYiYpkH0aIHRwi/+tCjaB3Myt7f1n+6+2m3blIYMPm0LwXCzqWPVWF4POUGK7aWO6YdrRt0vHPRDgcyhuqxw+g==",
|
||||
"dev": true
|
||||
},
|
||||
"eslint-config-standard": {
|
||||
|
@ -5134,9 +5109,9 @@
|
|||
}
|
||||
},
|
||||
"eslint-plugin-jsdoc": {
|
||||
"version": "18.1.4",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-18.1.4.tgz",
|
||||
"integrity": "sha512-X3jXbAZAFwr2xZXpz8cyozDuu9ea2eWf8qiIgmgUbAo3vs8xWL0g4hVmCo/Pwg5T2qL6/+iksY3m+xjmd8NAig==",
|
||||
"version": "18.1.5",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-18.1.5.tgz",
|
||||
"integrity": "sha512-dfq1YA0z2WaosgbEX3QPf37TDUcrfcRRjJ0HBgJYuA4XIV2ICe7dFxhJ8halIlKL4VNhUZ5GMKO1r0CPRvBN0g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"comment-parser": "^0.7.0",
|
||||
|
@ -5246,9 +5221,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"eslint-plugin-unicorn": {
|
||||
"version": "13.0.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-13.0.0.tgz",
|
||||
"integrity": "sha512-9CQk0v74vQpETMt6iqNgjf3IbWEFhrT0sjaLnjkl9SF3rJH6ZL9f7H42BXJ6LPENQR97QzhrIvB8VG0nD05wxQ==",
|
||||
"version": "14.0.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-14.0.0.tgz",
|
||||
"integrity": "sha512-hbW0Tl/TixLIpeObsrdYl01XTud3HZzNd705AjUzJCMcQFRc2jmL+IeD7uue/Nw8HaP2qwoWW1LldHxz7XvwVg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ci-info": "^2.0.0",
|
||||
|
@ -5263,12 +5238,19 @@
|
|||
"lodash.topairs": "^4.3.0",
|
||||
"lodash.upperfirst": "^4.3.1",
|
||||
"read-pkg-up": "^7.0.0",
|
||||
"regexp-tree": "^0.1.16",
|
||||
"regexpp": "^3.0.0",
|
||||
"reserved-words": "^0.1.2",
|
||||
"safe-regex": "^2.1.1",
|
||||
"semver": "^6.3.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"ci-info": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
|
||||
"integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
|
||||
"dev": true
|
||||
},
|
||||
"find-up": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
|
||||
|
@ -6170,17 +6152,6 @@
|
|||
"dev": true,
|
||||
"requires": {
|
||||
"async": "2.6.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"async": {
|
||||
"version": "2.6.1",
|
||||
"resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz",
|
||||
"integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lodash": "^4.17.10"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"getpass": {
|
||||
|
@ -6688,6 +6659,45 @@
|
|||
"string-width": "^4.1.0",
|
||||
"strip-ansi": "^5.1.0",
|
||||
"through": "^2.3.6"
|
||||
},
|
||||
"dependencies": {
|
||||
"ansi-escapes": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
|
||||
"integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"type-fest": "^0.8.1"
|
||||
}
|
||||
},
|
||||
"cli-cursor": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
|
||||
"integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"restore-cursor": "^3.1.0"
|
||||
}
|
||||
},
|
||||
"restore-cursor": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
|
||||
"integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"onetime": "^5.1.0",
|
||||
"signal-exit": "^3.0.2"
|
||||
}
|
||||
},
|
||||
"rxjs": {
|
||||
"version": "6.5.3",
|
||||
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz",
|
||||
"integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"insert-module-globals": {
|
||||
|
@ -6828,14 +6838,6 @@
|
|||
"dev": true,
|
||||
"requires": {
|
||||
"ci-info": "^1.5.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"ci-info": {
|
||||
"version": "1.6.0",
|
||||
"resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz",
|
||||
"integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"is-css-color": {
|
||||
|
@ -7592,15 +7594,6 @@
|
|||
"chalk": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"rxjs": {
|
||||
"version": "5.5.12",
|
||||
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz",
|
||||
"integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"symbol-observable": "1.0.1"
|
||||
}
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
|
@ -7738,15 +7731,6 @@
|
|||
"supports-color": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"cli-cursor": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz",
|
||||
"integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"restore-cursor": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"figures": {
|
||||
"version": "1.7.0",
|
||||
"resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
|
||||
|
@ -7757,22 +7741,6 @@
|
|||
"object-assign": "^4.1.0"
|
||||
}
|
||||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
"restore-cursor": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz",
|
||||
"integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"exit-hook": "^1.0.0",
|
||||
"onetime": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
|
@ -7963,39 +7931,6 @@
|
|||
"requires": {
|
||||
"ansi-escapes": "^1.0.0",
|
||||
"cli-cursor": "^1.0.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"ansi-escapes": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz",
|
||||
"integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=",
|
||||
"dev": true
|
||||
},
|
||||
"cli-cursor": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz",
|
||||
"integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"restore-cursor": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
"restore-cursor": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz",
|
||||
"integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"exit-hook": "^1.0.0",
|
||||
"onetime": "^1.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"longest-streak": {
|
||||
|
@ -9042,31 +8977,6 @@
|
|||
"supports-color": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"cli-cursor": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz",
|
||||
"integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"restore-cursor": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
"restore-cursor": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz",
|
||||
"integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"exit-hook": "^1.0.0",
|
||||
"onetime": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
|
@ -10199,13 +10109,21 @@
|
|||
"dev": true
|
||||
},
|
||||
"restore-cursor": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
|
||||
"integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz",
|
||||
"integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"onetime": "^5.1.0",
|
||||
"signal-exit": "^3.0.2"
|
||||
"exit-hook": "^1.0.0",
|
||||
"onetime": "^1.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"ret": {
|
||||
|
@ -10240,9 +10158,9 @@
|
|||
}
|
||||
},
|
||||
"rollup": {
|
||||
"version": "1.27.4",
|
||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-1.27.4.tgz",
|
||||
"integrity": "sha512-UaGNOIax/Ixfd92CAAanUilx2RSkkwEfC1lCTw1eL5Re6NURWgX66ARZt5+3px4kYnpSwzyOot4r18c2b+QgJQ==",
|
||||
"version": "1.27.5",
|
||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-1.27.5.tgz",
|
||||
"integrity": "sha512-8rfVdzuTg2kt8ObD9LNJpEwUN7B6lsl3sHc5fddtgICpLjpYeSf4m2+RftBzcCaBTMi1iYX3Ez8zFT4Gj2nJjg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/estree": "*",
|
||||
|
@ -10327,12 +10245,12 @@
|
|||
"dev": true
|
||||
},
|
||||
"rxjs": {
|
||||
"version": "6.5.3",
|
||||
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz",
|
||||
"integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==",
|
||||
"version": "5.5.12",
|
||||
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz",
|
||||
"integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
"symbol-observable": "1.0.1"
|
||||
}
|
||||
},
|
||||
"safe-buffer": {
|
||||
|
@ -10499,23 +10417,10 @@
|
|||
"dev": true
|
||||
},
|
||||
"slice-ansi": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
|
||||
"integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^3.2.0",
|
||||
"astral-regex": "^1.0.0",
|
||||
"is-fullwidth-code-point": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"is-fullwidth-code-point": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
|
||||
"integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
"version": "0.0.4",
|
||||
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz",
|
||||
"integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=",
|
||||
"dev": true
|
||||
},
|
||||
"sliced": {
|
||||
"version": "1.0.1",
|
||||
|
@ -11129,6 +11034,17 @@
|
|||
"integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
|
||||
"dev": true
|
||||
},
|
||||
"slice-ansi": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
|
||||
"integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^3.2.0",
|
||||
"astral-regex": "^1.0.0",
|
||||
"is-fullwidth-code-point": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"string-width": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
|
||||
|
|
21
package.json
21
package.json
|
@ -26,7 +26,7 @@
|
|||
"eslint": "eslint --ext js,md,html .",
|
||||
"rollup": "rollup -c",
|
||||
"start-embedded": "echo \"Open file to http://localhost:8000/editor/embedapi.html\" && static -p 8000 | static -p 8001 -H '{\"Access-Control-Allow-Origin\": \"*\"}'",
|
||||
"start": "echo \"Open file to http://localhost:8000/test/all_tests.html\" && static -p 8000",
|
||||
"start": "echo \"Open file, e.g., to http://localhost:8000/editor/svg-editor-es.html\" && static -p 8000",
|
||||
"cypress:open": "cypress open",
|
||||
"cypress:run": "cypress run",
|
||||
"open-report": "open http://localhost:8000/coverage/",
|
||||
|
@ -43,10 +43,9 @@
|
|||
"report-summary": "npx nyc report --reporter=text-summary",
|
||||
"test-cov": "npm-run-all instrument --parallel --race start cypress:run ; npm run report-summary",
|
||||
"test-cov-open": "npm-run-all instrument --parallel --race start cypress:run",
|
||||
"test-no-build": "npm run eslint && npm run build-html && npm run build-by-config && open-cli http://localhost:8000/test/all_tests.html && static -p 8000",
|
||||
"test-no-build": "npm run eslint && npm run build-html && npm run build-by-config && npm test",
|
||||
"test-prep": "npm run eslint && npm run build-html && npm run rollup && npm run build-by-config",
|
||||
"test": "run-p start cypress:run",
|
||||
"browser-test": "npm run test-prep && open-cli http://localhost:8000/test/all_tests.html && static -p 8000"
|
||||
"test": "run-p start cypress:run"
|
||||
},
|
||||
"nyc": {
|
||||
"exclude": [
|
||||
|
@ -123,11 +122,11 @@
|
|||
"coffeescript": "^2.4.1",
|
||||
"convert-svg-to-png": "^0.5.0",
|
||||
"copyfiles": "^2.1.1",
|
||||
"core-js-bundle": "^3.4.2",
|
||||
"cypress": "^3.6.1",
|
||||
"core-js-bundle": "^3.4.5",
|
||||
"cypress": "^3.7.0",
|
||||
"cypress-axe": "^0.5.1",
|
||||
"eslint": "6.7.0",
|
||||
"eslint-config-ash-nazg": "12.0.0",
|
||||
"eslint": "6.7.1",
|
||||
"eslint-config-ash-nazg": "13.0.0",
|
||||
"eslint-config-standard": "14.1.0",
|
||||
"eslint-plugin-array-func": "^3.1.3",
|
||||
"eslint-plugin-compat": "^3.3.0",
|
||||
|
@ -135,14 +134,14 @@
|
|||
"eslint-plugin-eslint-comments": "^3.1.2",
|
||||
"eslint-plugin-html": "^6.0.0",
|
||||
"eslint-plugin-import": "2.18.2",
|
||||
"eslint-plugin-jsdoc": "^18.1.4",
|
||||
"eslint-plugin-jsdoc": "^18.1.5",
|
||||
"eslint-plugin-markdown": "^1.0.1",
|
||||
"eslint-plugin-no-use-extend-native": "^0.4.1",
|
||||
"eslint-plugin-node": "10.0.0",
|
||||
"eslint-plugin-promise": "4.2.1",
|
||||
"eslint-plugin-sonarjs": "^0.5.0",
|
||||
"eslint-plugin-standard": "4.0.1",
|
||||
"eslint-plugin-unicorn": "^13.0.0",
|
||||
"eslint-plugin-unicorn": "^14.0.0",
|
||||
"frs-replace": "^2.0.1",
|
||||
"gh-badges": "^2.2.1",
|
||||
"imageoptim-cli": "^3.0.2",
|
||||
|
@ -159,7 +158,7 @@
|
|||
"regenerator-runtime": "^0.13.3",
|
||||
"remark-cli": "^7.0.1",
|
||||
"remark-lint-ordered-list-marker-value": "^1.0.3",
|
||||
"rollup": "1.27.4",
|
||||
"rollup": "1.27.5",
|
||||
"rollup-plugin-babel": "^4.3.3",
|
||||
"rollup-plugin-re": "^1.0.7",
|
||||
"rollup-plugin-terser": "^5.1.2",
|
||||
|
|
|
@ -7937,7 +7937,7 @@
|
|||
*/
|
||||
|
||||
var dropXMLInteralSubset = function dropXMLInteralSubset(str) {
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?\]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
return str.replace(/(<!DOCTYPE\s+\w*\s*\[).*(\?]>)/, '$1$2'); // return str.replace(/(?<doctypeOpen><!DOCTYPE\s+\w*\s*\[).*(?<doctypeClose>\?\]>)/, '$<doctypeOpen>$<doctypeClose>');
|
||||
};
|
||||
/**
|
||||
* Converts characters in a string to XML-friendly entities.
|
||||
|
@ -8017,7 +8017,7 @@
|
|||
} // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
|
||||
|
||||
|
||||
input = input.replace(/[^A-Za-z0-9+/=]/g, '');
|
||||
input = input.replace(/[^A-Za-z\d+/=]/g, '');
|
||||
var output = '';
|
||||
var i = 0;
|
||||
|
||||
|
@ -17104,8 +17104,8 @@
|
|||
var pt = screenToPt(mouseX, mouseY);
|
||||
var index = getIndexFromPoint(pt.x, pt.y);
|
||||
var str = curtext.textContent;
|
||||
var first = str.substr(0, index).replace(/[a-z0-9]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z0-9]+/i);
|
||||
var first = str.substr(0, index).replace(/[a-z\d]+$/i, '').length;
|
||||
var m = str.substr(index).match(/^[a-z\d]+/i);
|
||||
var last = (m ? m[0].length : 0) + index;
|
||||
setSelection(first, last); // Set tripleclick
|
||||
|
||||
|
@ -25473,19 +25473,19 @@
|
|||
break;
|
||||
|
||||
case hex.get(0):
|
||||
hex.val(hex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(hex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex && bindedHex.val(hex.val());
|
||||
color.val('hex', hex.val() !== '' ? hex.val() : null, e.target);
|
||||
break;
|
||||
|
||||
case bindedHex && bindedHex.get(0):
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 6));
|
||||
bindedHex.val(bindedHex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 6));
|
||||
hex.val(bindedHex.val());
|
||||
color.val('hex', bindedHex.val() !== '' ? bindedHex.val() : null, e.target);
|
||||
break;
|
||||
|
||||
case ahex && ahex.get(0):
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F0-9]/g, '').toLowerCase().substring(0, 2));
|
||||
ahex.val(ahex.val().replace(/[^a-fA-F\d]/g, '').toLowerCase().substring(0, 2));
|
||||
color.val('a', !isNullish$1(ahex.val()) ? parseInt(ahex.val(), 16) : null, e.target);
|
||||
break;
|
||||
}
|
||||
|
@ -26124,7 +26124,7 @@
|
|||
*/
|
||||
validateHex: function validateHex(hex) {
|
||||
// if (typeof hex === 'object') return '';
|
||||
hex = hex.toLowerCase().replace(/[^a-f0-9]/g, '');
|
||||
hex = hex.toLowerCase().replace(/[^a-f\d]/g, '');
|
||||
if (hex.length > 8) hex = hex.substring(0, 8);
|
||||
return hex;
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue