@hanzogui/create-theme 2.0.0-rc.41-hanzoai.5

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.
Files changed (104) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/applyMask.cjs +67 -0
  3. package/dist/cjs/applyMask.native.js +76 -0
  4. package/dist/cjs/applyMask.native.js.map +1 -0
  5. package/dist/cjs/combineMasks.cjs +48 -0
  6. package/dist/cjs/combineMasks.native.js +73 -0
  7. package/dist/cjs/combineMasks.native.js.map +1 -0
  8. package/dist/cjs/createTheme.cjs +105 -0
  9. package/dist/cjs/createTheme.native.js +111 -0
  10. package/dist/cjs/createTheme.native.js.map +1 -0
  11. package/dist/cjs/createThemeTypes.cjs +18 -0
  12. package/dist/cjs/createThemeTypes.native.js +21 -0
  13. package/dist/cjs/createThemeTypes.native.js.map +1 -0
  14. package/dist/cjs/helpers.cjs +36 -0
  15. package/dist/cjs/helpers.native.js +41 -0
  16. package/dist/cjs/helpers.native.js.map +1 -0
  17. package/dist/cjs/index.cjs +25 -0
  18. package/dist/cjs/index.native.js +28 -0
  19. package/dist/cjs/index.native.js.map +1 -0
  20. package/dist/cjs/isMinusZero.cjs +30 -0
  21. package/dist/cjs/isMinusZero.native.js +33 -0
  22. package/dist/cjs/isMinusZero.native.js.map +1 -0
  23. package/dist/cjs/masks.cjs +146 -0
  24. package/dist/cjs/masks.native.js +192 -0
  25. package/dist/cjs/masks.native.js.map +1 -0
  26. package/dist/cjs/tests.cjs +26 -0
  27. package/dist/cjs/tests.native.js +29 -0
  28. package/dist/cjs/tests.native.js.map +1 -0
  29. package/dist/cjs/themeInfo.cjs +40 -0
  30. package/dist/cjs/themeInfo.native.js +43 -0
  31. package/dist/cjs/themeInfo.native.js.map +1 -0
  32. package/dist/esm/applyMask.mjs +41 -0
  33. package/dist/esm/applyMask.mjs.map +1 -0
  34. package/dist/esm/applyMask.native.js +47 -0
  35. package/dist/esm/applyMask.native.js.map +1 -0
  36. package/dist/esm/combineMasks.mjs +23 -0
  37. package/dist/esm/combineMasks.mjs.map +1 -0
  38. package/dist/esm/combineMasks.native.js +45 -0
  39. package/dist/esm/combineMasks.native.js.map +1 -0
  40. package/dist/esm/createTheme.mjs +78 -0
  41. package/dist/esm/createTheme.mjs.map +1 -0
  42. package/dist/esm/createTheme.native.js +81 -0
  43. package/dist/esm/createTheme.native.js.map +1 -0
  44. package/dist/esm/createThemeTypes.mjs +2 -0
  45. package/dist/esm/createThemeTypes.mjs.map +1 -0
  46. package/dist/esm/createThemeTypes.native.js +2 -0
  47. package/dist/esm/createThemeTypes.native.js.map +1 -0
  48. package/dist/esm/helpers.mjs +9 -0
  49. package/dist/esm/helpers.mjs.map +1 -0
  50. package/dist/esm/helpers.native.js +11 -0
  51. package/dist/esm/helpers.native.js.map +1 -0
  52. package/dist/esm/index.js +7 -0
  53. package/dist/esm/index.js.map +1 -0
  54. package/dist/esm/index.mjs +7 -0
  55. package/dist/esm/index.mjs.map +1 -0
  56. package/dist/esm/index.native.js +7 -0
  57. package/dist/esm/index.native.js.map +1 -0
  58. package/dist/esm/isMinusZero.mjs +5 -0
  59. package/dist/esm/isMinusZero.mjs.map +1 -0
  60. package/dist/esm/isMinusZero.native.js +5 -0
  61. package/dist/esm/isMinusZero.native.js.map +1 -0
  62. package/dist/esm/masks.mjs +114 -0
  63. package/dist/esm/masks.mjs.map +1 -0
  64. package/dist/esm/masks.native.js +157 -0
  65. package/dist/esm/masks.native.js.map +1 -0
  66. package/dist/esm/tests.mjs +27 -0
  67. package/dist/esm/tests.mjs.map +1 -0
  68. package/dist/esm/tests.native.js +27 -0
  69. package/dist/esm/tests.native.js.map +1 -0
  70. package/dist/esm/themeInfo.mjs +14 -0
  71. package/dist/esm/themeInfo.mjs.map +1 -0
  72. package/dist/esm/themeInfo.native.js +14 -0
  73. package/dist/esm/themeInfo.native.js.map +1 -0
  74. package/package.json +42 -0
  75. package/src/applyMask.tsx +69 -0
  76. package/src/combineMasks.tsx +29 -0
  77. package/src/createTheme.tsx +127 -0
  78. package/src/createThemeTypes.tsx +85 -0
  79. package/src/helpers.tsx +44 -0
  80. package/src/index.tsx +6 -0
  81. package/src/isMinusZero.tsx +3 -0
  82. package/src/masks.tsx +137 -0
  83. package/src/tests.tsx +28 -0
  84. package/src/themeInfo.tsx +36 -0
  85. package/types/applyMask.d.ts +8 -0
  86. package/types/applyMask.d.ts.map +11 -0
  87. package/types/combineMasks.d.ts +4 -0
  88. package/types/combineMasks.d.ts.map +11 -0
  89. package/types/createTheme.d.ts +28 -0
  90. package/types/createTheme.d.ts.map +11 -0
  91. package/types/createThemeTypes.d.ts +67 -0
  92. package/types/createThemeTypes.d.ts.map +11 -0
  93. package/types/helpers.d.ts +18 -0
  94. package/types/helpers.d.ts.map +11 -0
  95. package/types/index.d.ts +8 -0
  96. package/types/index.d.ts.map +11 -0
  97. package/types/isMinusZero.d.ts +3 -0
  98. package/types/isMinusZero.d.ts.map +11 -0
  99. package/types/masks.d.ts +15 -0
  100. package/types/masks.d.ts.map +11 -0
  101. package/types/tests.d.ts +3 -0
  102. package/types/tests.d.ts.map +11 -0
  103. package/types/themeInfo.d.ts +13 -0
  104. package/types/themeInfo.d.ts.map +11 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createTheme","getThemeInfo","setThemeInfo","applyMask","theme","mask","options","parentName","nextName","info","Error","process","env","NODE_ENV","next","applyMaskStateless","definition","palette","name","skip","nonInheritedValues","key","maskOptions","template","cache","Map"],"sources":["../../src/applyMask.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAG5B,SAASC,YAAA,EAAcC,YAAA,QAAoB;AAEpC,SAASC,UACdC,KAAA,EACAC,IAAA,EACAC,OAAA,GAAuB,CAAC,GACxBC,UAAA,EACAC,QAAA,EACO;EACP,MAAMC,IAAA,GAAOR,YAAA,CAAaG,KAAA,EAAOG,UAAU;EAC3C,IAAI,CAACE,IAAA,EAAM;IACT,MAAM,IAAIC,KAAA,CACRC,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,eACrB,+GACA,aACN;EACF;EAEA,MAAMC,IAAA,GAAOC,kBAAA,CAAmBN,IAAA,EAAMJ,IAAA,EAAMC,OAAA,EAASC,UAAU;EAE/DL,YAAA,CAAaY,IAAA,CAAKV,KAAA,EAAO;IACvBY,UAAA,EAAYF,IAAA,CAAKE,UAAA;IACjBC,OAAA,EAASR,IAAA,CAAKQ,OAAA;IACdC,IAAA,EAAMV;EACR,CAAC;EAED,OAAOM,IAAA,CAAKV,KAAA;AACd;AAEO,SAASW,mBACdN,IAAA,EACAJ,IAAA,EACAC,OAAA,GAAuB,CAAC,GACxBC,UAAA,EAGA;EACA,MAAMY,IAAA,GAAO;IACX,GAAGb,OAAA,CAAQa;EACb;EAGA,IAAIV,IAAA,CAAKH,OAAA,EAASc,kBAAA,EAAoB;IACpC,WAAWC,GAAA,IAAOZ,IAAA,CAAKH,OAAA,CAAQc,kBAAA,EAAoB;MACjDD,IAAA,CAAKE,GAAG,IAAI;IACd;EACF;EAGA,MAAMC,WAAA,GAAc;IAClBf,UAAA;IACAU,OAAA,EAASR,IAAA,CAAKQ,OAAA;IACd,GAAGX,OAAA;IACHa;EACF;EAEA,MAAMI,QAAA,GAAWlB,IAAA,CAAKA,IAAA,CAAKI,IAAA,CAAKO,UAAA,EAAYM,WAAW;EACvD,MAAMlB,KAAA,GAAQJ,WAAA,CAAYS,IAAA,CAAKQ,OAAA,EAASM,QAAQ;EAEhD,OAAO;IACL,GAAGd,IAAA;IACHe,KAAA,EAAO,mBAAIC,GAAA,CAAI;IACfT,UAAA,EAAYO,QAAA;IACZnB;EACF;AACF","ignoreList":[]}
@@ -0,0 +1,47 @@
1
+ import { createTheme } from "./createTheme.native.js";
2
+ import { getThemeInfo, setThemeInfo } from "./themeInfo.native.js";
3
+ function applyMask(theme, mask) {
4
+ var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {},
5
+ parentName = arguments.length > 3 ? arguments[3] : void 0,
6
+ nextName = arguments.length > 4 ? arguments[4] : void 0;
7
+ var info = getThemeInfo(theme, parentName);
8
+ if (!info) {
9
+ throw new Error(process.env.NODE_ENV !== "production" ? `No info found for theme, you must pass the theme created by createThemeFromPalette directly to extendTheme` : `\u274C Err2`);
10
+ }
11
+ var next = applyMaskStateless(info, mask, options, parentName);
12
+ setThemeInfo(next.theme, {
13
+ definition: next.definition,
14
+ palette: info.palette,
15
+ name: nextName
16
+ });
17
+ return next.theme;
18
+ }
19
+ function applyMaskStateless(info, mask) {
20
+ var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {},
21
+ parentName = arguments.length > 3 ? arguments[3] : void 0;
22
+ var _info_options;
23
+ var skip = {
24
+ ...options.skip
25
+ };
26
+ if ((_info_options = info.options) === null || _info_options === void 0 ? void 0 : _info_options.nonInheritedValues) {
27
+ for (var key in info.options.nonInheritedValues) {
28
+ skip[key] = 1;
29
+ }
30
+ }
31
+ var maskOptions = {
32
+ parentName,
33
+ palette: info.palette,
34
+ ...options,
35
+ skip
36
+ };
37
+ var template = mask.mask(info.definition, maskOptions);
38
+ var theme = createTheme(info.palette, template);
39
+ return {
40
+ ...info,
41
+ cache: /* @__PURE__ */new Map(),
42
+ definition: template,
43
+ theme
44
+ };
45
+ }
46
+ export { applyMask, applyMaskStateless };
47
+ //# sourceMappingURL=applyMask.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createTheme","getThemeInfo","setThemeInfo","applyMask","theme","mask","options","arguments","length","parentName","nextName","info","Error","process","env","NODE_ENV","next","applyMaskStateless","definition","palette","name","_info_options","skip","nonInheritedValues","key","maskOptions","template","cache","Map"],"sources":["../../src/applyMask.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAG5B,SAASC,YAAA,EAAcC,YAAA,QAAoB;AAEpC,SAASC,UACdC,KAAA,EACAC,IAAA,EACA;EAIA,IAAAC,OAAM,GAAOC,SAAA,CAAAC,MAAa,GAAO,KAAAD,SAAU,iBAAAA,SAAA;IAAAE,UAAA,GAAAF,SAAA,CAAAC,MAAA,OAAAD,SAAA;IAAAG,QAAA,GAAAH,SAAA,CAAAC,MAAA,OAAAD,SAAA;EAC3C,IAAII,IAAC,GAAMV,YAAA,CAAAG,KAAA,EAAAK,UAAA;EACT,KAAAE,IAAM;IAAI,MACR,IAAQC,KAAI,CAAAC,OAAA,CAAAC,GAAa,CAAAC,QAAA,iBACrB,+GACA;EAAA;EAER,IAAAC,IAAA,GAAAC,kBAAA,CAAAN,IAAA,EAAAN,IAAA,EAAAC,OAAA,EAAAG,UAAA;EAEAP,YAAM,CAAOc,IAAA,CAAAZ,KAAA;IAEbc,UAAA,EAAaF,IAAK,CAAAE,UAAO;IACvBC,OAAA,EAAAR,IAAY,CAAAQ,OAAK;IACjBC,IAAA,EAAAV;EAAc,EACd;EACF,OAACM,IAAA,CAAAZ,KAAA;AAED;AACF,SAAAa,mBAAAN,IAAA,EAAAN,IAAA;EAEO,IAAAC,OAAS,GAAAC,SAAA,CAAAC,MACd,GACA,KACAD,SAAA,CAAuB,CAAC,MACxB,SAGAA,SAAA;IAAAE,UAAA,GAAAF,SAAA,CAAAC,MAAA,OAAAD,SAAA;EACA,IAAAc,aAAa;EAAA,IACXC,IAAG;IACL,GAAAhB,OAAA,CAAAgB;EAGA;EACE,KAAAD,aAAW,GAAOV,IAAK,CAAAL,OAAQ,cAAAe,aAAoB,uBAAAA,aAAA,CAAAE,kBAAA;IACjD,SAAKC,GAAG,IAAIb,IAAA,CAAAL,OAAA,CAAAiB,kBAAA;MACdD,IAAA,CAAAE,GAAA;IACF;EAGA;EAAoB,IAClBC,WAAA;IACAhB,UAAS;IACTU,OAAG,EAAAR,IAAA,CAAAQ,OAAA;IACH,GAAAb,OAAA;IACFgB;EAEA;EACA,IAAAI,QAAM,GAAQrB,IAAA,CAAAA,IAAA,CAAAM,IAAY,CAAAO,UAAc,EAAAO,WAAQ;EAEhD,IAAArB,KAAO,GAAAJ,WAAA,CAAAW,IAAA,CAAAQ,OAAA,EAAAO,QAAA;EAAA,OACF;IACH,GAAAf,IAAO;IACPgB,KAAA,iBAAY,IAAAC,GAAA;IACZV,UAAA,EAAAQ,QAAA;IACFtB;EACF","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ import { applyMaskStateless } from "./applyMask.mjs";
2
+ import { getThemeInfo } from "./themeInfo.mjs";
3
+ const combineMasks = (...masks) => {
4
+ const mask = {
5
+ name: "combine-mask",
6
+ mask: (template, opts) => {
7
+ let current = getThemeInfo(template, opts.parentName);
8
+ let theme;
9
+ for (const mask2 of masks) {
10
+ if (!current) {
11
+ throw new Error(`Nothing returned from mask: ${current}, for template: ${template} and mask: ${mask2.toString()}, given opts ${JSON.stringify(opts, null, 2)}`);
12
+ }
13
+ const next = applyMaskStateless(current, mask2, opts);
14
+ current = next;
15
+ theme = next.theme;
16
+ }
17
+ return theme;
18
+ }
19
+ };
20
+ return mask;
21
+ };
22
+ export { combineMasks };
23
+ //# sourceMappingURL=combineMasks.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["applyMaskStateless","getThemeInfo","combineMasks","masks","mask","name","template","opts","current","parentName","theme","mask2","Error","toString","JSON","stringify","next"],"sources":["../../src/combineMasks.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,kBAAA,QAA0B;AAEnC,SAASC,YAAA,QAAoB;AAEtB,MAAMC,YAAA,GAAeA,CAAA,GAAIC,KAAA,KAAoC;EAClE,MAAMC,IAAA,GAAmB;IACvBC,IAAA,EAAM;IACND,IAAA,EAAMA,CAACE,QAAA,EAAUC,IAAA,KAAS;MACxB,IAAIC,OAAA,GAAUP,YAAA,CAAaK,QAAA,EAAUC,IAAA,CAAKE,UAAU;MACpD,IAAIC,KAAA;MACJ,WAAWC,KAAA,IAAQR,KAAA,EAAO;QACxB,IAAI,CAACK,OAAA,EAAS;UACZ,MAAM,IAAII,KAAA,CACR,+BAA+BJ,OAAO,mBAAmBF,QAAQ,cAAcK,KAAA,CAAKE,QAAA,CAAS,CAAC,gBAAgBC,IAAA,CAAKC,SAAA,CACjHR,IAAA,EACA,MACA,CACF,CAAC,EACH;QACF;QACA,MAAMS,IAAA,GAAOhB,kBAAA,CAAmBQ,OAAA,EAASG,KAAA,EAAMJ,IAAI;QACnDC,OAAA,GAAUQ,IAAA;QACVN,KAAA,GAAQM,IAAA,CAAKN,KAAA;MACf;MACA,OAAOA,KAAA;IACT;EACF;EACA,OAAON,IAAA;AACT","ignoreList":[]}
@@ -0,0 +1,45 @@
1
+ import { applyMaskStateless } from "./applyMask.native.js";
2
+ import { getThemeInfo } from "./themeInfo.native.js";
3
+ var combineMasks = function () {
4
+ for (var _len = arguments.length, masks = new Array(_len), _key = 0; _key < _len; _key++) {
5
+ masks[_key] = arguments[_key];
6
+ }
7
+ var mask = {
8
+ name: "combine-mask",
9
+ mask: function (template, opts) {
10
+ var current = getThemeInfo(template, opts.parentName);
11
+ var theme;
12
+ var _iteratorNormalCompletion = true,
13
+ _didIteratorError = false,
14
+ _iteratorError = void 0;
15
+ try {
16
+ for (var _iterator = masks[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
17
+ var mask2 = _step.value;
18
+ if (!current) {
19
+ throw new Error(`Nothing returned from mask: ${current}, for template: ${template} and mask: ${mask2.toString()}, given opts ${JSON.stringify(opts, null, 2)}`);
20
+ }
21
+ var next = applyMaskStateless(current, mask2, opts);
22
+ current = next;
23
+ theme = next.theme;
24
+ }
25
+ } catch (err) {
26
+ _didIteratorError = true;
27
+ _iteratorError = err;
28
+ } finally {
29
+ try {
30
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
31
+ _iterator.return();
32
+ }
33
+ } finally {
34
+ if (_didIteratorError) {
35
+ throw _iteratorError;
36
+ }
37
+ }
38
+ }
39
+ return theme;
40
+ }
41
+ };
42
+ return mask;
43
+ };
44
+ export { combineMasks };
45
+ //# sourceMappingURL=combineMasks.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["applyMaskStateless","getThemeInfo","combineMasks","_len","arguments","length","masks","Array","_key","mask","name","template","opts","current","parentName","theme","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","mask2","value","Error","toString","JSON","stringify","err"],"sources":["../../src/combineMasks.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,kBAAA,QAA0B;AAEnC,SAASC,YAAA,QAAoB;AAEtB,IAAAC,YAAM,YAAAA,CAAA,EAAmB;EAC9B,SAAMC,IAAmB,GAAAC,SAAA,CAAAC,MAAA,EAAAC,KAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;IACvBF,KAAA,CAAME,IAAA,IAAAJ,SAAA,CAAAI,IAAA;EAAA;EAEJ,IAAAC,IAAI;IACJC,IAAA,EAAI;IACJD,IAAA,WAAAA,CAAWE,QAAQ,EAAAC,IAAO;MACxB,IAAAC,OAAK,GAAAZ,YAAS,CAAAU,QAAA,EAAAC,IAAA,CAAAE,UAAA;MACZ,IAAAC,KAAA;MAAU,IAAAC,yBACR;QAA+BC,iBAAO,QAAmB;QAAAC,cAAQ,QAAc;MAAoC;QACjH,SACAC,SAAA,GAAAb,KAAA,CAAAc,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;UAAA,IACAS,KAAA,GAAAH,KAAA,CAAAI,KAAA;UAAA,IACD,CAAAb,OAAA;YACH,UAAAc,KAAA,gCAAAd,OAAA,mBAAAF,QAAA,cAAAc,KAAA,CAAAG,QAAA,kBAAAC,IAAA,CAAAC,SAAA,CAAAlB,IAAA;UACF;UACA,IAAMW,IAAA,GAAOvB,kBAAA,CAAmBa,OAAA,EAASY,KAAA,EAAMb,IAAI;UACnDC,OAAA,GAAUU,IAAA;UACVR,KAAA,GAAQQ,IAAK,CAAAR,KAAA;QACf;MACA,SAAOgB,GAAA;QACTd,iBAAA;QACFC,cAAA,GAAAa,GAAA;MACA,UAAO;QACT","ignoreList":[]}
@@ -0,0 +1,78 @@
1
+ import { isMinusZero } from "./isMinusZero.mjs";
2
+ import { setThemeInfo } from "./themeInfo.mjs";
3
+ const identityCache = /* @__PURE__ */new Map();
4
+ function createThemeWithPalettes(palettes, defaultPalette, definition, options, name, skipCache = false) {
5
+ if (!palettes[defaultPalette]) {
6
+ throw new Error(`No palette: ${defaultPalette}`);
7
+ }
8
+ const newDef = {
9
+ ...definition
10
+ };
11
+ for (const key in definition) {
12
+ let val = definition[key];
13
+ if (typeof val === "string" && val[0] === "$") {
14
+ const [altPaletteName$, altPaletteIndex] = val.split(".");
15
+ const altPaletteName = altPaletteName$.slice(1);
16
+ const parentName = defaultPalette.split("_")[0];
17
+ const altPalette = palettes[altPaletteName] || palettes[`${parentName}_${altPaletteName}`];
18
+ if (altPalette) {
19
+ const next = getValue(altPalette, +altPaletteIndex);
20
+ if (typeof next !== "undefined") {
21
+ newDef[key] = next;
22
+ }
23
+ }
24
+ }
25
+ }
26
+ return createTheme(palettes[defaultPalette], newDef, options, name, skipCache);
27
+ }
28
+ function createTheme(palette, definition, options, name, skipCache = false) {
29
+ const cacheKey = skipCache ? "" : JSON.stringify([name, palette, definition, options]);
30
+ if (!skipCache) {
31
+ if (identityCache.has(cacheKey)) {
32
+ return identityCache.get(cacheKey);
33
+ }
34
+ }
35
+ const theme = {
36
+ ...Object.fromEntries(Object.entries(definition).map(([key, offset]) => {
37
+ return [key, getValue(palette, offset)];
38
+ })),
39
+ ...options?.nonInheritedValues
40
+ };
41
+ setThemeInfo(theme, {
42
+ palette,
43
+ definition,
44
+ options,
45
+ name
46
+ });
47
+ if (cacheKey) {
48
+ identityCache.set(cacheKey, theme);
49
+ }
50
+ return theme;
51
+ }
52
+ const getValue = (palette, value) => {
53
+ if (!palette) {
54
+ throw new Error(`No palette!`);
55
+ }
56
+ if (typeof value === "string") {
57
+ return value;
58
+ }
59
+ const max = palette.length - 1;
60
+ const isPositive = value === 0 ? !isMinusZero(value) : value >= 0;
61
+ const next = isPositive ? value : max + value;
62
+ const index = Math.min(Math.max(0, next), max);
63
+ return palette[index];
64
+ };
65
+ function addChildren(themes, getChildren) {
66
+ const out = {
67
+ ...themes
68
+ };
69
+ for (const key in themes) {
70
+ const subThemes = getChildren(key, themes[key]);
71
+ for (const sKey in subThemes) {
72
+ out[`${key}_${sKey}`] = subThemes[sKey];
73
+ }
74
+ }
75
+ return out;
76
+ }
77
+ export { addChildren, createTheme, createThemeWithPalettes };
78
+ //# sourceMappingURL=createTheme.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isMinusZero","setThemeInfo","identityCache","Map","createThemeWithPalettes","palettes","defaultPalette","definition","options","name","skipCache","Error","newDef","key","val","altPaletteName$","altPaletteIndex","split","altPaletteName","slice","parentName","altPalette","next","getValue","createTheme","palette","cacheKey","JSON","stringify","has","get","theme","Object","fromEntries","entries","map","offset","nonInheritedValues","set","value","max","length","isPositive","index","Math","min","addChildren","themes","getChildren","out","subThemes","sKey"],"sources":["../../src/createTheme.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,81 @@
1
+ import { isMinusZero } from "./isMinusZero.native.js";
2
+ import { setThemeInfo } from "./themeInfo.native.js";
3
+ var identityCache = /* @__PURE__ */new Map();
4
+ function createThemeWithPalettes(palettes, defaultPalette, definition, options, name) {
5
+ var skipCache = arguments.length > 5 && arguments[5] !== void 0 ? arguments[5] : false;
6
+ if (!palettes[defaultPalette]) {
7
+ throw new Error(`No palette: ${defaultPalette}`);
8
+ }
9
+ var newDef = {
10
+ ...definition
11
+ };
12
+ for (var key in definition) {
13
+ var val = definition[key];
14
+ if (typeof val === "string" && val[0] === "$") {
15
+ var [altPaletteName$, altPaletteIndex] = val.split(".");
16
+ var altPaletteName = altPaletteName$.slice(1);
17
+ var parentName = defaultPalette.split("_")[0];
18
+ var altPalette = palettes[altPaletteName] || palettes[`${parentName}_${altPaletteName}`];
19
+ if (altPalette) {
20
+ var next = getValue(altPalette, +altPaletteIndex);
21
+ if (typeof next !== "undefined") {
22
+ newDef[key] = next;
23
+ }
24
+ }
25
+ }
26
+ }
27
+ return createTheme(palettes[defaultPalette], newDef, options, name, skipCache);
28
+ }
29
+ function createTheme(palette, definition, options, name) {
30
+ var skipCache = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
31
+ var cacheKey = skipCache ? "" : JSON.stringify([name, palette, definition, options]);
32
+ if (!skipCache) {
33
+ if (identityCache.has(cacheKey)) {
34
+ return identityCache.get(cacheKey);
35
+ }
36
+ }
37
+ var theme = {
38
+ ...Object.fromEntries(Object.entries(definition).map(function (param) {
39
+ var [key, offset] = param;
40
+ return [key, getValue(palette, offset)];
41
+ })),
42
+ ...(options === null || options === void 0 ? void 0 : options.nonInheritedValues)
43
+ };
44
+ setThemeInfo(theme, {
45
+ palette,
46
+ definition,
47
+ options,
48
+ name
49
+ });
50
+ if (cacheKey) {
51
+ identityCache.set(cacheKey, theme);
52
+ }
53
+ return theme;
54
+ }
55
+ var getValue = function (palette, value) {
56
+ if (!palette) {
57
+ throw new Error(`No palette!`);
58
+ }
59
+ if (typeof value === "string") {
60
+ return value;
61
+ }
62
+ var max = palette.length - 1;
63
+ var isPositive = value === 0 ? !isMinusZero(value) : value >= 0;
64
+ var next = isPositive ? value : max + value;
65
+ var index = Math.min(Math.max(0, next), max);
66
+ return palette[index];
67
+ };
68
+ function addChildren(themes, getChildren) {
69
+ var out = {
70
+ ...themes
71
+ };
72
+ for (var key in themes) {
73
+ var subThemes = getChildren(key, themes[key]);
74
+ for (var sKey in subThemes) {
75
+ out[`${key}_${sKey}`] = subThemes[sKey];
76
+ }
77
+ }
78
+ return out;
79
+ }
80
+ export { addChildren, createTheme, createThemeWithPalettes };
81
+ //# sourceMappingURL=createTheme.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isMinusZero","setThemeInfo","identityCache","Map","createThemeWithPalettes","palettes","defaultPalette","definition","options","name","skipCache","arguments","length","Error","newDef","key","val","altPaletteName$","altPaletteIndex","split","altPaletteName","slice","parentName","altPalette","next","getValue","createTheme","palette","cacheKey","JSON","stringify","has","get","theme","Object","fromEntries","entries","map","param","offset","nonInheritedValues","set","value"],"sources":["../../src/createTheme.tsx"],"sourcesContent":[null],"mappings":"AAMA,SAASA,WAAA,QAAmB;AAC5B,SAASC,YAAA,QAAoB;AAE7B,IAAAC,aAAM,kBAAgB,IAAAC,GAAI;AAEnB,SAASC,wBAIdC,QAAA,EACAC,cAAA,EACAC,UAAA,EACAC,OAAA,EACAC,IAAA,EACA;EAIA,IAAIC,SAAC,GAASC,SAAA,CAAAC,MAAiB,QAAAD,SAAA,iBAAAA,SAAA;EAC7B,KAAAN,QAAU,CAAAC,cAAM;IAClB,UAAAO,KAAA,gBAAAP,cAAA;EACA;EACA,IAAAQ,MAAA,GAAW;IACT,GAAAP;EACA;EACE,SAAAQ,GAAO,IAAAR,UAAA,EAAiB;IACxB,IAAAS,GAAA,GAAMT,UAAA,CAAAQ,GAAA,CAAiB;IACvB,WAAMC,GAAA,aAAa,IAAAA,GAAA,EAAe,MAAM,GAAG,EAAE;MAC7C,KAAAC,eACE,EAAAC,eAAS,IAAAF,GAAc,CAAAG,KAAK;MAE9B,IAAIC,cAAY,GAAAH,eAAA,CAAAI,KAAA;MACd,IAAAC,UAAM,GAAOhB,cAAS,CAAAa,KAAa;MACnC,IAAAI,UAAW,GAAAlB,QAAS,CAAAe,cAAa,KAAAf,QAAA,IAAAiB,UAAA,IAAAF,cAAA;MAC/B,IAAAG,UAAU;QACZ,IAAAC,IAAA,GAAAC,QAAA,CAAAF,UAAA,GAAAL,eAAA;QACF,WAAAM,IAAA;UACFV,MAAA,CAAAC,GAAA,IAAAS,IAAA;QACF;MAEA;IACF;EAEO;EAYL,OAAME,WAAW,CAAArB,QAAA,CAAAC,cAAsB,GAAAQ,MAAW,EAAAN,OAAM,EAAAC,IAAS,EAAAC,SAAY;AAC7E;AACE,SAAIgB,YAAAC,OAAkB,EAAApB,UAAW,EAAAC,OAAA,EAAAC,IAAA;EAC/B,IAAAC,SAAO,GAAAC,SAAc,CAAAC,MAAI,QAAQD,SAAA,iBAAAA,SAAA;EAAA,IACnCiB,QAAA,GAAAlB,SAAA,QAAAmB,IAAA,CAAAC,SAAA,EACFrB,IAAA,EAEAkB,OAAM,EACJpB,UAAW,EAAAC,OACT,CACE;EAAsC,IACxC,CAACE,SAAA;IACH,IAAAR,aAAA,CAAA6B,GAAA,CAAAH,QAAA;MACA,OAAG1B,aAAS,CAAA8B,GAAA,CAAAJ,QAAA;IACd;EAEA;EAEA,IAAIK,KAAA;IACF,GAAAC,MAAA,CAAAC,WAAkB,CAAAD,MAAU,CAAAE,OAAK,CAAA7B,UAAA,EAAA8B,GAAA,WAAAC,KAAA;MACnC,KAAAvB,GAAA,EAAAwB,MAAA,IAAAD,KAAA;MAEA,OAAO,CACTvB,GAAA,EAEMU,QAAA,CAAWE,OAAC,EAAAY,MAA6B,EACxC;IACH;IACF,IAAA/B,OAAA,aAAAA,OAAA,uBAAAA,OAAA,CAAAgC,kBAAA;EACA;EACEvC,YAAO,CAAAgC,KAAA;IACTN,OAAA;IACApB,UAAY;IACZC,OAAM;IACNC;EACA;EACA,IAAAmB,QAAO;IACT1B,aAAA,CAAAuC,GAAA,CAAAb,QAAA,EAAAK,KAAA;EAWO;EASL,OAAMA,KAAM;AACZ;AACE,IAAAR,QAAM,YAAAA,CAAYE,OAAA,EAAAe,KAAY,EAAK;EACnC,KAAAf,OAAA,EAAW;IACT,MAAI,IAAGd,KAAG,CAAI,aAAU;EAAc;EAE1C,WAAA6B,KAAA;IACA,OAAOA,KAAA;EACT","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=createThemeTypes.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=createThemeTypes.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ const objectKeys = obj => Object.keys(obj);
2
+ function objectEntries(obj) {
3
+ return Object.entries(obj);
4
+ }
5
+ function objectFromEntries(arr) {
6
+ return Object.fromEntries(arr);
7
+ }
8
+ export { objectEntries, objectFromEntries, objectKeys };
9
+ //# sourceMappingURL=helpers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["objectKeys","obj","Object","keys","objectEntries","entries","objectFromEntries","arr","fromEntries"],"sources":["../../src/helpers.tsx"],"sourcesContent":[null],"mappings":"AAQO,MAAMA,UAAA,GAAgCC,GAAA,IAAWC,MAAA,CAAOC,IAAA,CAAKF,GAAG;AAEhE,SAASG,cACdH,GAAA,EACsB;EACtB,OAAOC,MAAA,CAAOG,OAAA,CAAQJ,GAAG;AAC3B;AAyBO,SAASK,kBACdC,GAAA,EACwB;EACxB,OAAOL,MAAA,CAAOM,WAAA,CAAYD,GAAG;AAC/B","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ var objectKeys = function (obj) {
2
+ return Object.keys(obj);
3
+ };
4
+ function objectEntries(obj) {
5
+ return Object.entries(obj);
6
+ }
7
+ function objectFromEntries(arr) {
8
+ return Object.fromEntries(arr);
9
+ }
10
+ export { objectEntries, objectFromEntries, objectKeys };
11
+ //# sourceMappingURL=helpers.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["objectKeys","obj","Object","keys","objectEntries","entries","objectFromEntries","arr"],"sources":["../../src/helpers.tsx"],"sourcesContent":[null],"mappings":"AAQO,IAAAA,UAAM,YAAAA,CAAgCC,GAAW;EAEjD,OAASC,MAAA,CAAAC,IAAA,CAAAF,GACd;AAEA;AACF,SAAAG,cAAAH,GAAA;EAyBO,OAASC,MAAA,CAAAG,OAAA,CAAAJ,GACd;AAEA;AACF,SAAAK,kBAAAC,GAAA","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export * from "./createTheme.mjs";
2
+ export * from "./masks.mjs";
3
+ export * from "./combineMasks.mjs";
4
+ export * from "./applyMask.mjs";
5
+ export * from "./createThemeTypes.mjs";
6
+ export * from "./helpers.mjs";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export * from "./createTheme.mjs";
2
+ export * from "./masks.mjs";
3
+ export * from "./combineMasks.mjs";
4
+ export * from "./applyMask.mjs";
5
+ export * from "./createThemeTypes.mjs";
6
+ export * from "./helpers.mjs";
7
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export * from "./createTheme.native.js";
2
+ export * from "./masks.native.js";
3
+ export * from "./combineMasks.native.js";
4
+ export * from "./applyMask.native.js";
5
+ export * from "./createThemeTypes.native.js";
6
+ export * from "./helpers.native.js";
7
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ function isMinusZero(value) {
2
+ return 1 / value === Number.NEGATIVE_INFINITY;
3
+ }
4
+ export { isMinusZero };
5
+ //# sourceMappingURL=isMinusZero.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isMinusZero","value","Number","NEGATIVE_INFINITY"],"sources":["../../src/isMinusZero.tsx"],"sourcesContent":[null],"mappings":"AAAO,SAASA,YAAYC,KAAA,EAAwB;EAClD,OAAO,IAAIA,KAAA,KAAUC,MAAA,CAAOC,iBAAA;AAC9B","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ function isMinusZero(value) {
2
+ return 1 / value === Number.NEGATIVE_INFINITY;
3
+ }
4
+ export { isMinusZero };
5
+ //# sourceMappingURL=isMinusZero.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isMinusZero","value","Number","NEGATIVE_INFINITY"],"sources":["../../src/isMinusZero.tsx"],"sourcesContent":[null],"mappings":"AAAO,SAASA,YAAYC,KAAA,EAAwB;EAClD,OAAO,IAAIA,KAAA,KAAUC,MAAA,CAAOC,iBAAA;AAC9B","ignoreList":[]}
@@ -0,0 +1,114 @@
1
+ import { objectEntries, objectFromEntries } from "./helpers.mjs";
2
+ import { isMinusZero } from "./isMinusZero.mjs";
3
+ const createMask = createMask2 => typeof createMask2 === "function" ? {
4
+ name: createMask2.name || "unnamed",
5
+ mask: createMask2
6
+ } : createMask2;
7
+ const skipMask = {
8
+ name: "skip-mask",
9
+ mask: (template, opts) => {
10
+ const {
11
+ skip
12
+ } = opts;
13
+ const result = Object.fromEntries(Object.entries(template).filter(([k]) => !skip || !(k in skip)).map(([k, v]) => [k, applyOverrides(k, v, opts)]));
14
+ return result;
15
+ }
16
+ };
17
+ function applyOverrides(key, value, opts) {
18
+ let override;
19
+ let strategy = opts.overrideStrategy;
20
+ const overrideSwap = opts.overrideSwap?.[key];
21
+ if (typeof overrideSwap !== "undefined") {
22
+ override = overrideSwap;
23
+ strategy = "swap";
24
+ } else {
25
+ const overrideShift = opts.overrideShift?.[key];
26
+ if (typeof overrideShift !== "undefined") {
27
+ override = overrideShift;
28
+ strategy = "shift";
29
+ } else {
30
+ const overrideDefault = opts.override?.[key];
31
+ if (typeof overrideDefault !== "undefined") {
32
+ override = overrideDefault;
33
+ strategy = opts.overrideStrategy;
34
+ }
35
+ }
36
+ }
37
+ if (typeof override === "undefined") return value;
38
+ if (typeof override === "string") return value;
39
+ if (strategy === "swap") {
40
+ return override;
41
+ }
42
+ return value;
43
+ }
44
+ const createIdentityMask = () => ({
45
+ name: "identity-mask",
46
+ mask: (template, opts) => skipMask.mask(template, opts)
47
+ });
48
+ const createInverseMask = () => {
49
+ const mask = {
50
+ name: "inverse-mask",
51
+ mask: (template, opts) => {
52
+ const inversed = objectFromEntries(objectEntries(template).map(([k, v]) => [k, -v]));
53
+ return skipMask.mask(inversed, opts);
54
+ }
55
+ };
56
+ return mask;
57
+ };
58
+ const createShiftMask = ({
59
+ inverse
60
+ } = {}, defaultOptions) => {
61
+ const mask = {
62
+ name: "shift-mask",
63
+ mask: (template, opts) => {
64
+ const {
65
+ override,
66
+ overrideStrategy = "shift",
67
+ max: maxIn,
68
+ palette,
69
+ min = 0,
70
+ strength = 1
71
+ } = {
72
+ ...defaultOptions,
73
+ ...opts
74
+ };
75
+ const values = Object.entries(template);
76
+ const max = maxIn ?? (palette ? Object.values(palette).length - 1 : Number.POSITIVE_INFINITY);
77
+ const out = {};
78
+ for (const [key, value] of values) {
79
+ if (typeof value === "string") continue;
80
+ if (typeof override?.[key] === "number") {
81
+ const overrideVal = override[key];
82
+ out[key] = overrideStrategy === "shift" ? value + overrideVal : overrideVal;
83
+ continue;
84
+ }
85
+ if (typeof override?.[key] === "string") {
86
+ out[key] = override[key];
87
+ continue;
88
+ }
89
+ const isPositive = value === 0 ? !isMinusZero(value) : value >= 0;
90
+ const direction = isPositive ? 1 : -1;
91
+ const invert = inverse ? -1 : 1;
92
+ const next = value + strength * direction * invert;
93
+ const clamped = isPositive ? Math.max(min, Math.min(max, next)) : Math.min(-min, Math.max(-max, next));
94
+ out[key] = clamped;
95
+ }
96
+ const skipped = skipMask.mask(out, opts);
97
+ return skipped;
98
+ }
99
+ };
100
+ return mask;
101
+ };
102
+ const createWeakenMask = defaultOptions => ({
103
+ name: "soften-mask",
104
+ mask: createShiftMask({}, defaultOptions).mask
105
+ });
106
+ const createSoftenMask = createWeakenMask;
107
+ const createStrengthenMask = defaultOptions => ({
108
+ name: "strengthen-mask",
109
+ mask: createShiftMask({
110
+ inverse: true
111
+ }, defaultOptions).mask
112
+ });
113
+ export { createIdentityMask, createInverseMask, createMask, createShiftMask, createSoftenMask, createStrengthenMask, createWeakenMask, skipMask };
114
+ //# sourceMappingURL=masks.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["objectEntries","objectFromEntries","isMinusZero","createMask","createMask2","name","mask","skipMask","template","opts","skip","result","Object","fromEntries","entries","filter","k","map","v","applyOverrides","key","value","override","strategy","overrideStrategy","overrideSwap","overrideShift","overrideDefault","createIdentityMask","createInverseMask","inversed","createShiftMask","inverse","defaultOptions","max","maxIn","palette","min","strength","values","length","Number","POSITIVE_INFINITY","out","overrideVal","isPositive","direction","invert","next","clamped","Math","skipped","createWeakenMask","createSoftenMask","createStrengthenMask"],"sources":["../../src/masks.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,aAAA,EAAeC,iBAAA,QAAyB;AACjD,SAASC,WAAA,QAAmB;AAErB,MAAMC,UAAA,GACXC,WAAA,IAEA,OAAOA,WAAA,KAAe,aAClB;EAAEC,IAAA,EAAMD,WAAA,CAAWC,IAAA,IAAQ;EAAWC,IAAA,EAAMF;AAAW,IACvDA,WAAA;AAEC,MAAMG,QAAA,GAAuB;EAClCF,IAAA,EAAM;EACNC,IAAA,EAAMA,CAACE,QAAA,EAAUC,IAAA,KAAS;IACxB,MAAM;MAAEC;IAAK,IAAID,IAAA;IACjB,MAAME,MAAA,GAASC,MAAA,CAAOC,WAAA,CACpBD,MAAA,CAAOE,OAAA,CAAQN,QAAQ,EACpBO,MAAA,CAAO,CAAC,CAACC,CAAC,MAAM,CAACN,IAAA,IAAQ,EAAEM,CAAA,IAAKN,IAAA,CAAK,EACrCO,GAAA,CAAI,CAAC,CAACD,CAAA,EAAGE,CAAC,MAAM,CAACF,CAAA,EAAGG,cAAA,CAAeH,CAAA,EAAGE,CAAA,EAAGT,IAAI,CAAC,CAAC,CACpD;IAEA,OAAOE,MAAA;EACT;AACF;AAEA,SAASQ,eAAeC,GAAA,EAAaC,KAAA,EAAwBZ,IAAA,EAAmB;EAC9E,IAAIa,QAAA;EACJ,IAAIC,QAAA,GAAWd,IAAA,CAAKe,gBAAA;EAEpB,MAAMC,YAAA,GAAehB,IAAA,CAAKgB,YAAA,GAAeL,GAAG;EAC5C,IAAI,OAAOK,YAAA,KAAiB,aAAa;IACvCH,QAAA,GAAWG,YAAA;IACXF,QAAA,GAAW;EACb,OAAO;IACL,MAAMG,aAAA,GAAgBjB,IAAA,CAAKiB,aAAA,GAAgBN,GAAG;IAC9C,IAAI,OAAOM,aAAA,KAAkB,aAAa;MACxCJ,QAAA,GAAWI,aAAA;MACXH,QAAA,GAAW;IACb,OAAO;MACL,MAAMI,eAAA,GAAkBlB,IAAA,CAAKa,QAAA,GAAWF,GAAG;MAC3C,IAAI,OAAOO,eAAA,KAAoB,aAAa;QAC1CL,QAAA,GAAWK,eAAA;QACXJ,QAAA,GAAWd,IAAA,CAAKe,gBAAA;MAClB;IACF;EACF;EAEA,IAAI,OAAOF,QAAA,KAAa,aAAa,OAAOD,KAAA;EAC5C,IAAI,OAAOC,QAAA,KAAa,UAAU,OAAOD,KAAA;EAEzC,IAAIE,QAAA,KAAa,QAAQ;IACvB,OAAOD,QAAA;EACT;EAEA,OAAOD,KAAA;AACT;AAEO,MAAMO,kBAAA,GAAqBA,CAAA,MAAmB;EACnDvB,IAAA,EAAM;EACNC,IAAA,EAAMA,CAACE,QAAA,EAAUC,IAAA,KAASF,QAAA,CAASD,IAAA,CAAKE,QAAA,EAAUC,IAAI;AACxD;AAEO,MAAMoB,iBAAA,GAAoBA,CAAA,KAAkB;EACjD,MAAMvB,IAAA,GAAmB;IACvBD,IAAA,EAAM;IACNC,IAAA,EAAMA,CAACE,QAAA,EAAUC,IAAA,KAAS;MACxB,MAAMqB,QAAA,GAAW7B,iBAAA,CACfD,aAAA,CAAcQ,QAAQ,EAAES,GAAA,CAAI,CAAC,CAACD,CAAA,EAAGE,CAAC,MAAM,CAACF,CAAA,EAAG,CAACE,CAAC,CAAC,CACjD;MACA,OAAOX,QAAA,CAASD,IAAA,CAAKwB,QAAA,EAAUrB,IAAI;IACrC;EACF;EACA,OAAOH,IAAA;AACT;AAIO,MAAMyB,eAAA,GAAkBA,CAC7B;EAAEC;AAAQ,IAAsB,CAAC,GACjCC,cAAA,KACe;EACf,MAAM3B,IAAA,GAAmB;IACvBD,IAAA,EAAM;IACNC,IAAA,EAAMA,CAACE,QAAA,EAAUC,IAAA,KAAS;MACxB,MAAM;QACJa,QAAA;QACAE,gBAAA,GAAmB;QACnBU,GAAA,EAAKC,KAAA;QACLC,OAAA;QACAC,GAAA,GAAM;QACNC,QAAA,GAAW;MACb,IAAI;QAAE,GAAGL,cAAA;QAAgB,GAAGxB;MAAK;MACjC,MAAM8B,MAAA,GAAS3B,MAAA,CAAOE,OAAA,CAAQN,QAAQ;MACtC,MAAM0B,GAAA,GACJC,KAAA,KAAUC,OAAA,GAAUxB,MAAA,CAAO2B,MAAA,CAAOH,OAAO,EAAEI,MAAA,GAAS,IAAIC,MAAA,CAAOC,iBAAA;MACjE,MAAMC,GAAA,GAAM,CAAC;MACb,WAAW,CAACvB,GAAA,EAAKC,KAAK,KAAKkB,MAAA,EAAQ;QACjC,IAAI,OAAOlB,KAAA,KAAU,UAAU;QAC/B,IAAI,OAAOC,QAAA,GAAWF,GAAG,MAAM,UAAU;UACvC,MAAMwB,WAAA,GAActB,QAAA,CAASF,GAAG;UAChCuB,GAAA,CAAIvB,GAAG,IAAII,gBAAA,KAAqB,UAAUH,KAAA,GAAQuB,WAAA,GAAcA,WAAA;UAChE;QACF;QACA,IAAI,OAAOtB,QAAA,GAAWF,GAAG,MAAM,UAAU;UACvCuB,GAAA,CAAIvB,GAAG,IAAIE,QAAA,CAASF,GAAG;UACvB;QACF;QACA,MAAMyB,UAAA,GAAaxB,KAAA,KAAU,IAAI,CAACnB,WAAA,CAAYmB,KAAK,IAAIA,KAAA,IAAS;QAChE,MAAMyB,SAAA,GAAYD,UAAA,GAAa,IAAI;QACnC,MAAME,MAAA,GAASf,OAAA,GAAU,KAAK;QAC9B,MAAMgB,IAAA,GAAO3B,KAAA,GAAQiB,QAAA,GAAWQ,SAAA,GAAYC,MAAA;QAC5C,MAAME,OAAA,GAAUJ,UAAA,GACZK,IAAA,CAAKhB,GAAA,CAAIG,GAAA,EAAKa,IAAA,CAAKb,GAAA,CAAIH,GAAA,EAAKc,IAAI,CAAC,IACjCE,IAAA,CAAKb,GAAA,CAAI,CAACA,GAAA,EAAKa,IAAA,CAAKhB,GAAA,CAAI,CAACA,GAAA,EAAKc,IAAI,CAAC;QAEvCL,GAAA,CAAIvB,GAAG,IAAI6B,OAAA;MACb;MAEA,MAAME,OAAA,GAAU5C,QAAA,CAASD,IAAA,CAAKqC,GAAA,EAAKlC,IAAI;MACvC,OAAO0C,OAAA;IACT;EACF;EACA,OAAO7C,IAAA;AACT;AAEO,MAAM8C,gBAAA,GAAoBnB,cAAA,KAA8C;EAC7E5B,IAAA,EAAM;EACNC,IAAA,EAAMyB,eAAA,CAAgB,CAAC,GAAGE,cAAc,EAAE3B;AAC5C;AAEO,MAAM+C,gBAAA,GACXD,gBAAA;AAEK,MAAME,oBAAA,GAAwBrB,cAAA,KAA8C;EACjF5B,IAAA,EAAM;EACNC,IAAA,EAAMyB,eAAA,CAAgB;IAAEC,OAAA,EAAS;EAAK,GAAGC,cAAc,EAAE3B;AAC3D","ignoreList":[]}