@symbo.ls/scratch 2.11.224 → 2.11.226

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -1630,8 +1630,10 @@ var opacify = (color, opacity) => {
1630
1630
  return `rgba(${arr})`;
1631
1631
  };
1632
1632
  var getRgbTone = (rgb, tone) => {
1633
+ if ((0, import_utils.isString)(rgb) && rgb.includes("rgb"))
1634
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1633
1635
  if ((0, import_utils.isString)(rgb))
1634
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1636
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1635
1637
  if ((0, import_utils.isNumber)(tone))
1636
1638
  tone += "";
1637
1639
  const toHex = rgbArrayToHex(rgb);
@@ -3123,10 +3125,22 @@ var transformTextStroke = (stroke) => {
3123
3125
  return v;
3124
3126
  }).join(" ");
3125
3127
  };
3126
- var transformShadow = (sh, globalTheme) => {
3127
- return sh.split(",").map((shadow) => getShadow(shadow, globalTheme)).join(",");
3128
- };
3129
- var transformBoxShadow = (sh, globalTheme) => getShadow(sh, globalTheme);
3128
+ var transformShadow = (sh, globalTheme) => getShadow(sh, globalTheme);
3129
+ var transformBoxShadow = (shadows) => shadows.split("|").map((shadow) => {
3130
+ return shadow.split(", ").map((v) => {
3131
+ v = v.trim();
3132
+ if (v.slice(0, 2) === "--")
3133
+ return `var(${v})`;
3134
+ if (getColor(v).length > 2)
3135
+ return getColor(v);
3136
+ if (v.includes("px") || v.slice(-2) === "em")
3137
+ return v;
3138
+ const arr = v.split(" ");
3139
+ if (!arr.length)
3140
+ return v;
3141
+ return arr.map((v2) => getSpacingByKey(v2, "shadow").shadow).join(" ");
3142
+ }).join(" ");
3143
+ }).join(",");
3130
3144
  var transformBackgroundImage = (backgroundImage, globalTheme) => {
3131
3145
  const CONFIG2 = getActiveConfig();
3132
3146
  return backgroundImage.split(", ").map((v) => {
package/dist/cjs/set.js CHANGED
@@ -1668,8 +1668,10 @@ var getColorShade = (col, amt) => {
1668
1668
  return ((g | b << 8 | r << 16) + 16777216).toString(16).slice(1);
1669
1669
  };
1670
1670
  var getRgbTone = (rgb, tone) => {
1671
+ if ((0, import_utils2.isString)(rgb) && rgb.includes("rgb"))
1672
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1671
1673
  if ((0, import_utils2.isString)(rgb))
1672
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1674
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1673
1675
  if ((0, import_utils2.isNumber)(tone))
1674
1676
  tone += "";
1675
1677
  const toHex = rgbArrayToHex(rgb);
@@ -1659,8 +1659,10 @@ var getColorShade = (col, amt) => {
1659
1659
  return ((g | b << 8 | r << 16) + 16777216).toString(16).slice(1);
1660
1660
  };
1661
1661
  var getRgbTone = (rgb, tone) => {
1662
+ if ((0, import_utils2.isString)(rgb) && rgb.includes("rgb"))
1663
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1662
1664
  if ((0, import_utils2.isString)(rgb))
1663
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1665
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1664
1666
  if ((0, import_utils2.isNumber)(tone))
1665
1667
  tone += "";
1666
1668
  const toHex = rgbArrayToHex(rgb);
@@ -1686,8 +1686,10 @@ var getColorShade = (col, amt) => {
1686
1686
  return ((g | b << 8 | r << 16) + 16777216).toString(16).slice(1);
1687
1687
  };
1688
1688
  var getRgbTone = (rgb, tone) => {
1689
+ if ((0, import_utils2.isString)(rgb) && rgb.includes("rgb"))
1690
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1689
1691
  if ((0, import_utils2.isString)(rgb))
1690
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1692
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1691
1693
  if ((0, import_utils2.isNumber)(tone))
1692
1694
  tone += "";
1693
1695
  const toHex = rgbArrayToHex(rgb);
@@ -1584,6 +1584,43 @@ var import_utils9 = __toESM(require_cjs(), 1);
1584
1584
  // src/utils/color.js
1585
1585
  var import_globals = __toESM(require_cjs2(), 1);
1586
1586
  var import_utils2 = __toESM(require_cjs(), 1);
1587
+ var colorStringToRgbaArray = (color) => {
1588
+ if (color === "")
1589
+ return;
1590
+ if (color.toLowerCase() === "transparent")
1591
+ return [0, 0, 0, 0];
1592
+ if (color[0] === "#") {
1593
+ if (color.length < 7) {
1594
+ color = "#" + color[1] + color[1] + color[2] + color[2] + color[3] + color[3] + (color.length > 4 ? color[4] + color[4] : "");
1595
+ }
1596
+ return [
1597
+ parseInt(color.substr(1, 2), 16),
1598
+ parseInt(color.substr(3, 2), 16),
1599
+ parseInt(color.substr(5, 2), 16),
1600
+ color.length > 7 ? parseInt(color.substr(7, 2), 16) / 255 : 1
1601
+ ];
1602
+ }
1603
+ if (color.indexOf("rgb") === -1) {
1604
+ if (import_globals.document && import_globals.window) {
1605
+ const elem = import_globals.document.body.appendChild(import_globals.document.createElement("fictum"));
1606
+ const flag = "rgb(1, 2, 3)";
1607
+ elem.style.color = flag;
1608
+ if (elem.style.color !== flag)
1609
+ return;
1610
+ elem.style.color = color;
1611
+ if (elem.style.color === flag || elem.style.color === "")
1612
+ return;
1613
+ color = import_globals.window.getComputedStyle(elem).color;
1614
+ import_globals.document.body.removeChild(elem);
1615
+ }
1616
+ }
1617
+ if (color.indexOf("rgb") === 0) {
1618
+ if (color.indexOf("rgba") === -1)
1619
+ color = `${color}, 1`;
1620
+ return color.match(/[\.\d]+/g).map((a) => +a);
1621
+ }
1622
+ return [];
1623
+ };
1587
1624
  var hexToRgbArray = (hex, alpha = 1) => {
1588
1625
  const [r, g, b] = hex.match(/\w\w/g).map((x) => parseInt(x, 16));
1589
1626
  return [r, g, b];
@@ -1622,8 +1659,10 @@ var getColorShade = (col, amt) => {
1622
1659
  return ((g | b << 8 | r << 16) + 16777216).toString(16).slice(1);
1623
1660
  };
1624
1661
  var getRgbTone = (rgb, tone) => {
1662
+ if ((0, import_utils2.isString)(rgb) && rgb.includes("rgb"))
1663
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1625
1664
  if ((0, import_utils2.isString)(rgb))
1626
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1665
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1627
1666
  if ((0, import_utils2.isNumber)(tone))
1628
1667
  tone += "";
1629
1668
  const toHex = rgbArrayToHex(rgb);
@@ -1586,6 +1586,43 @@ var getActiveConfig = (def) => {
1586
1586
  // src/utils/color.js
1587
1587
  var import_globals = __toESM(require_cjs2(), 1);
1588
1588
  var import_utils2 = __toESM(require_cjs(), 1);
1589
+ var colorStringToRgbaArray = (color) => {
1590
+ if (color === "")
1591
+ return;
1592
+ if (color.toLowerCase() === "transparent")
1593
+ return [0, 0, 0, 0];
1594
+ if (color[0] === "#") {
1595
+ if (color.length < 7) {
1596
+ color = "#" + color[1] + color[1] + color[2] + color[2] + color[3] + color[3] + (color.length > 4 ? color[4] + color[4] : "");
1597
+ }
1598
+ return [
1599
+ parseInt(color.substr(1, 2), 16),
1600
+ parseInt(color.substr(3, 2), 16),
1601
+ parseInt(color.substr(5, 2), 16),
1602
+ color.length > 7 ? parseInt(color.substr(7, 2), 16) / 255 : 1
1603
+ ];
1604
+ }
1605
+ if (color.indexOf("rgb") === -1) {
1606
+ if (import_globals.document && import_globals.window) {
1607
+ const elem = import_globals.document.body.appendChild(import_globals.document.createElement("fictum"));
1608
+ const flag = "rgb(1, 2, 3)";
1609
+ elem.style.color = flag;
1610
+ if (elem.style.color !== flag)
1611
+ return;
1612
+ elem.style.color = color;
1613
+ if (elem.style.color === flag || elem.style.color === "")
1614
+ return;
1615
+ color = import_globals.window.getComputedStyle(elem).color;
1616
+ import_globals.document.body.removeChild(elem);
1617
+ }
1618
+ }
1619
+ if (color.indexOf("rgb") === 0) {
1620
+ if (color.indexOf("rgba") === -1)
1621
+ color = `${color}, 1`;
1622
+ return color.match(/[\.\d]+/g).map((a) => +a);
1623
+ }
1624
+ return [];
1625
+ };
1589
1626
  var hexToRgbArray = (hex, alpha = 1) => {
1590
1627
  const [r, g, b] = hex.match(/\w\w/g).map((x) => parseInt(x, 16));
1591
1628
  return [r, g, b];
@@ -1624,8 +1661,10 @@ var getColorShade = (col, amt) => {
1624
1661
  return ((g | b << 8 | r << 16) + 16777216).toString(16).slice(1);
1625
1662
  };
1626
1663
  var getRgbTone = (rgb, tone) => {
1664
+ if ((0, import_utils2.isString)(rgb) && rgb.includes("rgb"))
1665
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1627
1666
  if ((0, import_utils2.isString)(rgb))
1628
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1667
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1629
1668
  if ((0, import_utils2.isNumber)(tone))
1630
1669
  tone += "";
1631
1670
  const toHex = rgbArrayToHex(rgb);
@@ -1592,6 +1592,43 @@ var import_utils9 = __toESM(require_cjs(), 1);
1592
1592
  // src/utils/color.js
1593
1593
  var import_globals = __toESM(require_cjs2(), 1);
1594
1594
  var import_utils2 = __toESM(require_cjs(), 1);
1595
+ var colorStringToRgbaArray = (color) => {
1596
+ if (color === "")
1597
+ return;
1598
+ if (color.toLowerCase() === "transparent")
1599
+ return [0, 0, 0, 0];
1600
+ if (color[0] === "#") {
1601
+ if (color.length < 7) {
1602
+ color = "#" + color[1] + color[1] + color[2] + color[2] + color[3] + color[3] + (color.length > 4 ? color[4] + color[4] : "");
1603
+ }
1604
+ return [
1605
+ parseInt(color.substr(1, 2), 16),
1606
+ parseInt(color.substr(3, 2), 16),
1607
+ parseInt(color.substr(5, 2), 16),
1608
+ color.length > 7 ? parseInt(color.substr(7, 2), 16) / 255 : 1
1609
+ ];
1610
+ }
1611
+ if (color.indexOf("rgb") === -1) {
1612
+ if (import_globals.document && import_globals.window) {
1613
+ const elem = import_globals.document.body.appendChild(import_globals.document.createElement("fictum"));
1614
+ const flag = "rgb(1, 2, 3)";
1615
+ elem.style.color = flag;
1616
+ if (elem.style.color !== flag)
1617
+ return;
1618
+ elem.style.color = color;
1619
+ if (elem.style.color === flag || elem.style.color === "")
1620
+ return;
1621
+ color = import_globals.window.getComputedStyle(elem).color;
1622
+ import_globals.document.body.removeChild(elem);
1623
+ }
1624
+ }
1625
+ if (color.indexOf("rgb") === 0) {
1626
+ if (color.indexOf("rgba") === -1)
1627
+ color = `${color}, 1`;
1628
+ return color.match(/[\.\d]+/g).map((a) => +a);
1629
+ }
1630
+ return [];
1631
+ };
1595
1632
  var hexToRgbArray = (hex, alpha = 1) => {
1596
1633
  const [r, g, b] = hex.match(/\w\w/g).map((x) => parseInt(x, 16));
1597
1634
  return [r, g, b];
@@ -1630,8 +1667,10 @@ var getColorShade = (col, amt) => {
1630
1667
  return ((g | b << 8 | r << 16) + 16777216).toString(16).slice(1);
1631
1668
  };
1632
1669
  var getRgbTone = (rgb, tone) => {
1670
+ if ((0, import_utils2.isString)(rgb) && rgb.includes("rgb"))
1671
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1633
1672
  if ((0, import_utils2.isString)(rgb))
1634
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1673
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1635
1674
  if ((0, import_utils2.isNumber)(tone))
1636
1675
  tone += "";
1637
1676
  const toHex = rgbArrayToHex(rgb);
@@ -2079,10 +2118,22 @@ var transformTextStroke = (stroke) => {
2079
2118
  return v;
2080
2119
  }).join(" ");
2081
2120
  };
2082
- var transformShadow = (sh, globalTheme) => {
2083
- return sh.split(",").map((shadow) => getShadow(shadow, globalTheme)).join(",");
2084
- };
2085
- var transformBoxShadow = (sh, globalTheme) => getShadow(sh, globalTheme);
2121
+ var transformShadow = (sh, globalTheme) => getShadow(sh, globalTheme);
2122
+ var transformBoxShadow = (shadows) => shadows.split("|").map((shadow) => {
2123
+ return shadow.split(", ").map((v) => {
2124
+ v = v.trim();
2125
+ if (v.slice(0, 2) === "--")
2126
+ return `var(${v})`;
2127
+ if (getColor(v).length > 2)
2128
+ return getColor(v);
2129
+ if (v.includes("px") || v.slice(-2) === "em")
2130
+ return v;
2131
+ const arr = v.split(" ");
2132
+ if (!arr.length)
2133
+ return v;
2134
+ return arr.map((v2) => getSpacingByKey(v2, "shadow").shadow).join(" ");
2135
+ }).join(" ");
2136
+ }).join(",");
2086
2137
  var transformBackgroundImage = (backgroundImage, globalTheme) => {
2087
2138
  const CONFIG2 = getActiveConfig();
2088
2139
  return backgroundImage.split(", ").map((v) => {
@@ -1492,8 +1492,10 @@ var opacify = (color, opacity) => {
1492
1492
  return `rgba(${arr})`;
1493
1493
  };
1494
1494
  var getRgbTone = (rgb, tone) => {
1495
+ if ((0, import_utils.isString)(rgb) && rgb.includes("rgb"))
1496
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1495
1497
  if ((0, import_utils.isString)(rgb))
1496
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1498
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1497
1499
  if ((0, import_utils.isNumber)(tone))
1498
1500
  tone += "";
1499
1501
  const toHex = rgbArrayToHex(rgb);
@@ -1515,8 +1515,10 @@ var opacify = (color, opacity) => {
1515
1515
  return `rgba(${arr})`;
1516
1516
  };
1517
1517
  var getRgbTone = (rgb, tone) => {
1518
+ if ((0, import_utils.isString)(rgb) && rgb.includes("rgb"))
1519
+ rgb = colorStringToRgbaArray(rgb).join(", ");
1518
1520
  if ((0, import_utils.isString)(rgb))
1519
- rgb = rgb.split(", ").map((v) => parseFloat(v));
1521
+ rgb = rgb.split(",").map((v) => parseFloat(v.trim()));
1520
1522
  if ((0, import_utils.isNumber)(tone))
1521
1523
  tone += "";
1522
1524
  const toHex = rgbArrayToHex(rgb);
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@symbo.ls/scratch",
3
3
  "description": "Φ / CSS framework and methodology.",
4
4
  "author": "symbo.ls",
5
- "version": "2.11.224",
5
+ "version": "2.11.226",
6
6
  "files": [
7
7
  "src",
8
8
  "dist"
@@ -29,5 +29,5 @@
29
29
  "@symbo.ls/utils": "latest",
30
30
  "color-contrast-checker": "^1.5.0"
31
31
  },
32
- "gitHead": "37771d64cc6794281168469c53cc07195abe3e3f"
32
+ "gitHead": "cc4d8658520b0dc949f40274fbc99f2915877f96"
33
33
  }
@@ -46,11 +46,19 @@ export const transformTextStroke = stroke => {
46
46
  }).join(' ')
47
47
  }
48
48
 
49
- export const transformShadow = (sh, globalTheme) => {
50
- return sh.split(',').map(shadow => getShadow(shadow, globalTheme)).join(',')
51
- }
49
+ export const transformShadow = (sh, globalTheme) => getShadow(sh, globalTheme)
52
50
 
53
- export const transformBoxShadow = (sh, globalTheme) => getShadow(sh, globalTheme)
51
+ export const transformBoxShadow = shadows => shadows.split('|').map(shadow => {
52
+ return shadow.split(', ').map(v => {
53
+ v = v.trim()
54
+ if (v.slice(0, 2) === '--') return `var(${v})`
55
+ if (getColor(v).length > 2) return getColor(v)
56
+ if (v.includes('px') || v.slice(-2) === 'em') return v
57
+ const arr = v.split(' ')
58
+ if (!arr.length) return v
59
+ return arr.map(v => getSpacingByKey(v, 'shadow').shadow).join(' ')
60
+ }).join(' ')
61
+ }).join(',')
54
62
 
55
63
  export const transformBackgroundImage = (backgroundImage, globalTheme) => {
56
64
  const CONFIG = getActiveConfig()
@@ -155,7 +155,8 @@ export const opacify = (color, opacity) => {
155
155
  }
156
156
 
157
157
  export const getRgbTone = (rgb, tone) => {
158
- if (isString(rgb)) rgb = rgb.split(', ').map(v => parseFloat(v))
158
+ if (isString(rgb) && rgb.includes('rgb')) rgb = colorStringToRgbaArray(rgb).join(', ')
159
+ if (isString(rgb)) rgb = rgb.split(',').map(v => parseFloat(v.trim()))
159
160
  if (isNumber(tone)) tone += ''
160
161
  const toHex = rgbArrayToHex(rgb)
161
162
  const abs = tone.slice(0, 1)