solid-refresh 0.7.5 → 0.8.0-next.0

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 (91) hide show
  1. package/dist/babel.cjs +38 -33
  2. package/dist/babel.cjs.map +1 -1
  3. package/dist/babel.mjs +38 -33
  4. package/dist/babel.mjs.map +1 -1
  5. package/dist/solid-refresh.cjs +12 -43
  6. package/dist/solid-refresh.cjs.map +1 -1
  7. package/dist/solid-refresh.mjs +13 -43
  8. package/dist/solid-refresh.mjs.map +1 -1
  9. package/dist/src/babel/core/checks.d.ts.map +1 -1
  10. package/dist/src/babel/core/constants.d.ts.map +1 -1
  11. package/dist/src/babel/core/create-registry.d.ts.map +1 -1
  12. package/dist/src/babel/core/generate-unique-name.d.ts.map +1 -1
  13. package/dist/src/babel/core/generator.d.ts.map +1 -1
  14. package/dist/src/babel/core/get-descriptive-name.d.ts.map +1 -1
  15. package/dist/src/babel/core/get-foreign-bindings.d.ts.map +1 -1
  16. package/dist/src/babel/core/get-hmr-decline-call.d.ts.map +1 -1
  17. package/dist/src/babel/core/get-hot-identifier.d.ts +1 -1
  18. package/dist/src/babel/core/get-hot-identifier.d.ts.map +1 -1
  19. package/dist/src/babel/core/get-import-identifier.d.ts.map +1 -1
  20. package/dist/src/babel/core/get-root-statement-path.d.ts.map +1 -1
  21. package/dist/src/babel/core/get-statement-path.d.ts.map +1 -1
  22. package/dist/src/babel/core/is-statement-top-level.d.ts.map +1 -1
  23. package/dist/src/babel/core/is-valid-callee.d.ts +1 -1
  24. package/dist/src/babel/core/is-valid-callee.d.ts.map +1 -1
  25. package/dist/src/babel/core/register-import-specifiers.d.ts.map +1 -1
  26. package/dist/src/babel/core/transform-jsx.d.ts.map +1 -1
  27. package/dist/src/babel/core/types.d.ts.map +1 -1
  28. package/dist/src/babel/core/unwrap.d.ts.map +1 -1
  29. package/dist/src/babel/core/xxhash32.d.ts.map +1 -1
  30. package/dist/src/babel/index.d.ts.map +1 -1
  31. package/dist/src/runtime/create-proxy.d.ts.map +1 -1
  32. package/dist/src/runtime/index.d.ts +1 -7
  33. package/dist/src/runtime/index.d.ts.map +1 -1
  34. package/dist/src/runtime/is-list-updated.d.ts.map +1 -1
  35. package/dist/src/shared/types.d.ts.map +1 -1
  36. package/package.json +15 -15
  37. package/dist/solid-refresh.js +0 -152
  38. package/dist/src/babel/core/get-vite-hmr-requirement.d.ts +0 -4
  39. package/dist/src/babel/core/get-vite-hmr-requirement.d.ts.map +0 -1
  40. package/dist/src/babel/utils.d.ts +0 -2
  41. package/dist/src/babel/xxhash32.d.ts +0 -6
  42. package/dist/types/src/babel/core/checks.d.ts +0 -4
  43. package/dist/types/src/babel/core/checks.d.ts.map +0 -1
  44. package/dist/types/src/babel/core/constants.d.ts +0 -8
  45. package/dist/types/src/babel/core/constants.d.ts.map +0 -1
  46. package/dist/types/src/babel/core/create-registry.d.ts +0 -5
  47. package/dist/types/src/babel/core/create-registry.d.ts.map +0 -1
  48. package/dist/types/src/babel/core/generate-unique-name.d.ts +0 -4
  49. package/dist/types/src/babel/core/generate-unique-name.d.ts.map +0 -1
  50. package/dist/types/src/babel/core/generator.d.ts +0 -3
  51. package/dist/types/src/babel/core/generator.d.ts.map +0 -1
  52. package/dist/types/src/babel/core/get-descriptive-name.d.ts +0 -3
  53. package/dist/types/src/babel/core/get-descriptive-name.d.ts.map +0 -1
  54. package/dist/types/src/babel/core/get-foreign-bindings.d.ts +0 -4
  55. package/dist/types/src/babel/core/get-foreign-bindings.d.ts.map +0 -1
  56. package/dist/types/src/babel/core/get-hmr-decline-call.d.ts +0 -4
  57. package/dist/types/src/babel/core/get-hmr-decline-call.d.ts.map +0 -1
  58. package/dist/types/src/babel/core/get-hot-identifier.d.ts +0 -4
  59. package/dist/types/src/babel/core/get-hot-identifier.d.ts.map +0 -1
  60. package/dist/types/src/babel/core/get-import-identifier.d.ts +0 -5
  61. package/dist/types/src/babel/core/get-import-identifier.d.ts.map +0 -1
  62. package/dist/types/src/babel/core/get-root-statement-path.d.ts +0 -3
  63. package/dist/types/src/babel/core/get-root-statement-path.d.ts.map +0 -1
  64. package/dist/types/src/babel/core/get-statement-path.d.ts +0 -3
  65. package/dist/types/src/babel/core/get-statement-path.d.ts.map +0 -1
  66. package/dist/types/src/babel/core/get-vite-hmr-requirement.d.ts +0 -4
  67. package/dist/types/src/babel/core/get-vite-hmr-requirement.d.ts.map +0 -1
  68. package/dist/types/src/babel/core/is-valid-callee.d.ts +0 -5
  69. package/dist/types/src/babel/core/is-valid-callee.d.ts.map +0 -1
  70. package/dist/types/src/babel/core/register-import-specifiers.d.ts +0 -5
  71. package/dist/types/src/babel/core/register-import-specifiers.d.ts.map +0 -1
  72. package/dist/types/src/babel/core/transform-jsx.d.ts +0 -4
  73. package/dist/types/src/babel/core/transform-jsx.d.ts.map +0 -1
  74. package/dist/types/src/babel/core/types.d.ts +0 -40
  75. package/dist/types/src/babel/core/types.d.ts.map +0 -1
  76. package/dist/types/src/babel/core/unwrap.d.ts +0 -11
  77. package/dist/types/src/babel/core/unwrap.d.ts.map +0 -1
  78. package/dist/types/src/babel/core/xxhash32.d.ts +0 -7
  79. package/dist/types/src/babel/core/xxhash32.d.ts.map +0 -1
  80. package/dist/types/src/babel/index.d.ts +0 -8
  81. package/dist/types/src/babel/index.d.ts.map +0 -1
  82. package/dist/types/src/babel/xxhash32.d.ts +0 -7
  83. package/dist/types/src/babel/xxhash32.d.ts.map +0 -1
  84. package/dist/types/src/runtime/create-proxy.d.ts +0 -6
  85. package/dist/types/src/runtime/create-proxy.d.ts.map +0 -1
  86. package/dist/types/src/runtime/index.d.ts +0 -60
  87. package/dist/types/src/runtime/index.d.ts.map +0 -1
  88. package/dist/types/src/runtime/is-list-updated.d.ts +0 -2
  89. package/dist/types/src/runtime/is-list-updated.d.ts.map +0 -1
  90. package/dist/types/src/shared/types.d.ts +0 -4
  91. package/dist/types/src/shared/types.d.ts.map +0 -1
package/dist/babel.cjs CHANGED
@@ -54,11 +54,6 @@ const IMPORT_COMPONENT = {
54
54
  name: '$$component',
55
55
  source: SOLID_REFRESH_MODULE,
56
56
  };
57
- const IMPORT_CONTEXT = {
58
- kind: 'named',
59
- name: '$$context',
60
- source: SOLID_REFRESH_MODULE,
61
- };
62
57
  const IMPORT_DECLINE = {
63
58
  kind: 'named',
64
59
  name: '$$decline',
@@ -138,13 +133,6 @@ function getRootStatementPath(path) {
138
133
  return path;
139
134
  }
140
135
 
141
- function generateViteHMRRequirement(state, statements, pathToHot) {
142
- if (state.bundler === 'vite') {
143
- // Vite requires that the owner module has an `import.meta.hot.accept()` call
144
- statements.push(t__namespace.expressionStatement(t__namespace.callExpression(t__namespace.memberExpression(pathToHot, t__namespace.identifier('accept')), [])));
145
- }
146
- }
147
-
148
136
  const REGISTRY = 'REGISTRY';
149
137
  function createRegistry(state, path) {
150
138
  const current = state.imports.get(REGISTRY);
@@ -157,16 +145,14 @@ function createRegistry(state, path) {
157
145
  t__namespace.variableDeclarator(identifier, t__namespace.callExpression(getImportIdentifier(state, path, IMPORT_REGISTRY), [])),
158
146
  ]))[0]);
159
147
  const pathToHot = getHotIdentifier(state);
160
- const statements = [
161
- t__namespace.expressionStatement(t__namespace.callExpression(getImportIdentifier(state, path, IMPORT_REFRESH), [
162
- t__namespace.stringLiteral(state.bundler),
163
- pathToHot,
164
- identifier,
165
- ])),
166
- ];
167
- generateViteHMRRequirement(state, statements, pathToHot);
168
148
  path.scope.getProgramParent().path.pushContainer('body', [
169
- t__namespace.ifStatement(pathToHot, t__namespace.blockStatement(statements)),
149
+ t__namespace.ifStatement(pathToHot, t__namespace.blockStatement([
150
+ t__namespace.expressionStatement(t__namespace.callExpression(getImportIdentifier(state, path, IMPORT_REFRESH), [
151
+ t__namespace.stringLiteral(state.bundler),
152
+ pathToHot,
153
+ identifier,
154
+ ])),
155
+ ])),
170
156
  ]);
171
157
  state.imports.set(REGISTRY, identifier);
172
158
  return identifier;
@@ -255,14 +241,19 @@ function getForeignBindings(path) {
255
241
 
256
242
  function getHMRDeclineCall(state, path) {
257
243
  const pathToHot = getHotIdentifier(state);
258
- const statements = [
244
+ if (state.bundler === 'vite') {
245
+ return t__namespace.ifStatement(pathToHot, t__namespace.blockStatement([
246
+ t__namespace.expressionStatement(t__namespace.callExpression(t__namespace.memberExpression(pathToHot, t__namespace.identifier('accept')), [
247
+ t__namespace.arrowFunctionExpression([], t__namespace.callExpression(t__namespace.memberExpression(pathToHot, t__namespace.identifier('invalidate')), [])),
248
+ ])),
249
+ ]));
250
+ }
251
+ return t__namespace.ifStatement(pathToHot, t__namespace.blockStatement([
259
252
  t__namespace.expressionStatement(t__namespace.callExpression(getImportIdentifier(state, path, IMPORT_DECLINE), [
260
253
  t__namespace.stringLiteral(state.bundler),
261
254
  pathToHot,
262
255
  ])),
263
- ];
264
- generateViteHMRRequirement(state, statements, pathToHot);
265
- return t__namespace.ifStatement(pathToHot, t__namespace.blockStatement(statements));
256
+ ]));
266
257
  }
267
258
 
268
259
  function getStatementPath(path) {
@@ -473,12 +464,22 @@ function extractJSXExpressionFromRef(state, attr) {
473
464
  let replacement;
474
465
  if (unwrappedIdentifier) {
475
466
  const arg = expr.scope.generateUidIdentifier('arg');
467
+ const binding = expr.scope.getBinding(unwrappedIdentifier.name);
468
+ const cannotAssignKind = ['const', 'module'];
469
+ const isConst = binding && cannotAssignKind.includes(binding.kind);
476
470
  replacement = t__namespace.arrowFunctionExpression([arg], t__namespace.blockStatement([
477
471
  t__namespace.ifStatement(t__namespace.binaryExpression('===', t__namespace.unaryExpression('typeof', unwrappedIdentifier), t__namespace.stringLiteral('function')), t__namespace.blockStatement([
478
472
  t__namespace.expressionStatement(t__namespace.callExpression(unwrappedIdentifier, [arg])),
479
- ]), t__namespace.blockStatement([
480
- t__namespace.expressionStatement(t__namespace.assignmentExpression('=', unwrappedIdentifier, arg)),
481
- ])),
473
+ ]),
474
+ // fix the new usage of `ref` attribute,
475
+ // if use `Signals as refs`, the `else` branch will throw an error with `Cannot assign to "setter" because it is a constant` message
476
+ // issue: https://github.com/solidjs/solid-refresh/issues/66
477
+ // docs: https://docs.solidjs.com/concepts/refs#signals-as-refs
478
+ isConst
479
+ ? null
480
+ : t__namespace.blockStatement([
481
+ t__namespace.expressionStatement(t__namespace.assignmentExpression('=', unwrappedIdentifier, arg)),
482
+ ])),
482
483
  ]));
483
484
  }
484
485
  else {
@@ -535,11 +536,12 @@ function convertJSXOpeningToExpression(node) {
535
536
  }
536
537
  return t__namespace.memberExpression(convertJSXOpeningToExpression(node.object), convertJSXOpeningToExpression(node.property));
537
538
  }
539
+ const COMPONENT_PATTERN = /^[A-Z_]/;
538
540
  function extractJSXExpressionsFromJSXElement(state, path) {
539
541
  const openingElement = path.get('openingElement');
540
542
  const openingName = openingElement.get('name');
541
543
  if ((isPathValid(openingName, t__namespace.isJSXIdentifier) &&
542
- /^[A-Z_]/.test(openingName.node.name)) ||
544
+ COMPONENT_PATTERN.test(openingName.node.name)) ||
543
545
  isPathValid(openingName, t__namespace.isJSXMemberExpression)) {
544
546
  if (isPathValid(openingName, t__namespace.isJSXIdentifier)) {
545
547
  const binding = path.scope.getBinding(openingName.node.name);
@@ -619,6 +621,7 @@ function transformJSX(path) {
619
621
  path.replaceWith(skippableJSX(t__namespace.jsxElement(t__namespace.jsxOpeningElement(t__namespace.jsxIdentifier(id.name), [...state.attributes], true), t__namespace.jsxClosingElement(t__namespace.jsxIdentifier(id.name)), [], true)));
620
622
  }
621
623
 
624
+ // @ts-nocheck
622
625
  /**
623
626
  * Copyright (c) 2019 Jason Dent
624
627
  * https://github.com/Jason3S/xxhash
@@ -894,22 +897,24 @@ function wrapContext(state, path, identifier, context) {
894
897
  if (statementPath) {
895
898
  const registry = createRegistry(state, statementPath);
896
899
  const hotName = t__namespace.stringLiteral(identifier.name);
897
- const contextCall = getImportIdentifier(state, statementPath, IMPORT_CONTEXT);
898
- return t__namespace.callExpression(contextCall, [registry, hotName, context]);
900
+ const componentCall = getImportIdentifier(state, statementPath, IMPORT_COMPONENT);
901
+ return t__namespace.callExpression(componentCall, [registry, hotName, context]);
899
902
  }
900
903
  return context;
901
904
  }
905
+ const SKIP_PATTERN = /^\s*@refresh skip\s*$/;
906
+ const RELOAD_PATTERN = /^\s*@refresh reload\s*$/;
902
907
  function setupProgram(state, path, comments) {
903
908
  let shouldSkip = false;
904
909
  let isDone = false;
905
910
  if (comments) {
906
911
  for (const { value: comment } of comments) {
907
- if (/^\s*@refresh skip\s*$/.test(comment)) {
912
+ if (SKIP_PATTERN.test(comment)) {
908
913
  isDone = true;
909
914
  shouldSkip = true;
910
915
  break;
911
916
  }
912
- if (/^\s*@refresh reload\s*$/.test(comment)) {
917
+ if (RELOAD_PATTERN.test(comment)) {
913
918
  isDone = true;
914
919
  path.pushContainer('body', getHMRDeclineCall(state, path));
915
920
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"babel.cjs","sources":["../src/babel/core/checks.ts","../src/babel/core/constants.ts","../src/babel/core/get-hot-identifier.ts","../src/babel/core/get-import-identifier.ts","../src/babel/core/get-root-statement-path.ts","../src/babel/core/get-vite-hmr-requirement.ts","../src/babel/core/create-registry.ts","../src/babel/core/generator.ts","../src/babel/core/unwrap.ts","../src/babel/core/get-foreign-bindings.ts","../src/babel/core/get-hmr-decline-call.ts","../src/babel/core/get-statement-path.ts","../src/babel/core/is-statement-top-level.ts","../src/babel/core/is-valid-callee.ts","../src/babel/core/register-import-specifiers.ts","../src/babel/core/generate-unique-name.ts","../src/babel/core/get-descriptive-name.ts","../src/babel/core/transform-jsx.ts","../src/babel/core/xxhash32.ts","../src/babel/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["t"],"mappings":"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"}
1
+ {"version":3,"file":"babel.cjs","sources":["../src/babel/core/checks.ts","../src/babel/core/constants.ts","../src/babel/core/get-hot-identifier.ts","../src/babel/core/get-import-identifier.ts","../src/babel/core/get-root-statement-path.ts","../src/babel/core/create-registry.ts","../src/babel/core/generator.ts","../src/babel/core/unwrap.ts","../src/babel/core/get-foreign-bindings.ts","../src/babel/core/get-hmr-decline-call.ts","../src/babel/core/get-statement-path.ts","../src/babel/core/is-statement-top-level.ts","../src/babel/core/is-valid-callee.ts","../src/babel/core/register-import-specifiers.ts","../src/babel/core/generate-unique-name.ts","../src/babel/core/get-descriptive-name.ts","../src/babel/core/transform-jsx.ts","../src/babel/core/xxhash32.ts","../src/babel/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["t"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACM,SAAU,kBAAkB,CAAC,IAAY,EAAA;AAC7C,IAAA,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG;AACzC;AAEM,SAAU,sBAAsB,CAAC,SAA4B,EAAA;IACjE,IAAIA,YAAC,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;AACtC,QAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI;IAChC;AACA,IAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK;AACjC;;ACZA;AACA,MAAM,oBAAoB,GAAG,eAAe;AAE5C;AACO,MAAM,eAAe,GAAqB;AAC/C,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,IAAI,EAAE,YAAY;AAClB,IAAA,MAAM,EAAE,oBAAoB;CAC7B;AAEM,MAAM,cAAc,GAAqB;AAC9C,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,MAAM,EAAE,oBAAoB;CAC7B;AAEM,MAAM,gBAAgB,GAAqB;AAChD,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,IAAI,EAAE,aAAa;AACnB,IAAA,MAAM,EAAE,oBAAoB;CAC7B;AAQM,MAAM,cAAc,GAAqB;AAC9C,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,MAAM,EAAE,oBAAoB;CAC7B;AAEM,MAAM,iBAAiB,GAAgC;AAC5D,IAAA;AACE,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE;AACtE,KAAA;AACD,IAAA;AACE,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE;AACvE,KAAA;AACD,IAAA;AACE,QAAA,IAAI,EAAE,eAAe;AACrB,QAAA,UAAU,EAAE;AACV,YAAA,IAAI,EAAE,eAAe;AACrB,YAAA,IAAI,EAAE,OAAO;AACb,YAAA,MAAM,EAAE,UAAU;AACnB,SAAA;AACF,KAAA;AACD,IAAA;AACE,QAAA,IAAI,EAAE,eAAe;AACrB,QAAA,UAAU,EAAE;AACV,YAAA,IAAI,EAAE,eAAe;AACrB,YAAA,IAAI,EAAE,OAAO;AACb,YAAA,MAAM,EAAE,cAAc;AACvB,SAAA;AACF,KAAA;CACF;;AC1DK,SAAU,gBAAgB,CAAC,KAAmB,EAAA;AAClD,IAAA,QAAQ,KAAK,CAAC,OAAO;;AAEnB,QAAA,KAAK,KAAK;AACV,QAAA,KAAK,MAAM;AACT,YAAA,OAAOA,YAAC,CAAC,gBAAgB,CACvBA,YAAC,CAAC,gBAAgB,CAACA,YAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAEA,YAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAChEA,YAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CACpB;;;AAGH,QAAA,KAAK,UAAU;AACf,QAAA,KAAK,YAAY;AACf,YAAA,OAAOA,YAAC,CAAC,gBAAgB,CACvBA,YAAC,CAAC,gBAAgB,CAACA,YAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAEA,YAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAChEA,YAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAC3B;AACH,QAAA;;AAEE,YAAA,OAAOA,YAAC,CAAC,gBAAgB,CAACA,YAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAEA,YAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;;AAE5E;;SCpBgB,mBAAmB,CACjC,KAAmB,EACnB,IAAoB,EACpB,YAA8B,EAAA;AAE9B,IAAA,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,KAAK,OAAO,GAAG,YAAY,CAAC,IAAI,GAAG,SAAS;IAC1E,MAAM,MAAM,GAAG,CAAA,EAAG,YAAY,CAAC,MAAM,CAAA,CAAA,EAAI,IAAI,CAAA,CAAA,CAAG;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;IACzC,IAAI,OAAO,EAAE;AACX,QAAA,OAAO,OAAO;IAChB;IACA,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;IACnD,MAAM,GAAG,GAAG,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC;AACrD,IAAA,aAAa,CAAC,mBAAmB,CAC9B,aAAa,CAAC,IAAkC,CAAC,gBAAgB,CAChE,MAAM,EACNA,YAAC,CAAC,iBAAiB,CACjB;QACE,YAAY,CAAC,IAAI,KAAK;AACpB,cAAEA,YAAC,CAAC,eAAe,CAAC,GAAG,EAAEA,YAAC,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC;AACxD,cAAEA,YAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC;AAClC,KAAA,EACDA,YAAC,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CACrC,CACF,CAAC,CAAC,CAAC,CACL;IACD,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;AAC9B,IAAA,OAAO,GAAG;AACZ;;AC7BM,SAAU,oBAAoB,CAAC,IAAoB,EAAA;AACvD,IAAA,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU;IAC7B,OAAO,OAAO,EAAE;AACd,QAAA,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU;QAC/B,IAAI,IAAI,IAAIA,YAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAClC,YAAA,OAAO,OAAO;QAChB;QACA,OAAO,GAAG,IAAI;IAChB;AACA,IAAA,OAAO,IAAI;AACb;;ACLA,MAAM,QAAQ,GAAG,UAAU;AAErB,SAAU,cAAc,CAC5B,KAAmB,EACnB,IAAoB,EAAA;IAEpB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC3C,IAAI,OAAO,EAAE;AACX,QAAA,OAAO,OAAO;IAChB;AACA,IAAA,MAAM,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC;IACvC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,QAAQ,CAAC;AAE7D,IAAA,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAC5B,IAAI,CAAC,YAAY,CACfA,YAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE;QAC7BA,YAAC,CAAC,kBAAkB,CAClB,UAAU,EACVA,YAAC,CAAC,cAAc,CACd,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,eAAe,CAAC,EACjD,EAAE,CACH,CACF;AACF,KAAA,CAAC,CACH,CAAC,CAAC,CAAC,CACL;AACD,IAAA,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC;IAEvC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,IAC/B,CAAC,aAAa,CAAC,MAAM,EAAE;QACtBA,YAAC,CAAC,WAAW,CACX,SAAS,EACTA,YAAC,CAAC,cAAc,CAAC;AACf,YAAAA,YAAC,CAAC,mBAAmB,CACnBA,YAAC,CAAC,cAAc,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE;AACjE,gBAAAA,YAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;gBAC9B,SAAS;gBACT,UAAU;AACX,aAAA,CAAC,CACH;AACF,SAAA,CAAC,CACH;AACF,KAAA,CAAC;IACF,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC;AACvC,IAAA,OAAO,UAAU;AACnB;;AClDA;AACA,IAAI,SAA4B;AAChC,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;AACpC,IAAA,SAAS,GAAI,UAAkB,CAAC,OAAO;AACzC;KAAO;IACL,SAAS,GAAG,UAAU;AACxB;AAEM,SAAU,YAAY,CAAC,IAAY,EAAA;AACvC,IAAA,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI;AAC7B;;ACRM,SAAU,WAAW,CACzB,IAAa,EACb,GAAkB,EAAA;AAElB,IAAA,OAAO,GAAG,CAAE,IAAuB,CAAC,IAAI,CAAC;AAC3C;AAWM,SAAU,kBAAkB,CAAC,IAAY,EAAA;AAC7C,IAAA,QAAQ,IAAI,CAAC,IAAI;AACf,QAAA,KAAK,yBAAyB;AAC9B,QAAA,KAAK,oBAAoB;AACzB,QAAA,KAAK,gBAAgB;AACrB,QAAA,KAAK,uBAAuB;AAC5B,QAAA,KAAK,qBAAqB;AAC1B,QAAA,KAAK,iBAAiB;AACtB,QAAA,KAAK,2BAA2B;AAC9B,YAAA,OAAO,IAAI;AACb,QAAA;AACE,YAAA,OAAO,KAAK;;AAElB;AAIM,SAAU,UAAU,CACxB,IAAY,EACZ,GAAM,EAAA;AAEN,IAAA,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE;AACb,QAAA,OAAO,IAAoB;IAC7B;AACA,IAAA,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE;QAC5B,OAAO,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC;IACzC;AACA,IAAA,OAAO,SAAS;AAClB;;AC7CA,SAAS,gBAAgB,CACvB,MAAsB,EACtB,OAAuB,EACvB,IAAY,EAAA;AAEZ,IAAA,IAAI,MAAM,KAAK,OAAO,EAAE;AACtB,QAAA,OAAO,IAAI;IACb;IACA,IAAI,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;AACrC,QAAA,OAAO,KAAK;IACd;AACA,IAAA,IAAI,OAAO,CAAC,UAAU,EAAE;QACtB,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC;IAC3D;AACA,IAAA,OAAO,IAAI;AACb;AAEA,SAAS,cAAc,CAAC,IAAoB,EAAA;AAC1C,IAAA,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU;IAC5B,OAAO,MAAM,EAAE;AACb,QAAA,IAAIA,YAAC,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAACA,YAAC,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;AAC/D,YAAA,OAAO,IAAI;QACb;AACA,QAAA,MAAM,GAAG,MAAM,CAAC,UAAU;IAC5B;AACA,IAAA,OAAO,KAAK;AACd;AAEM,SAAU,kBAAkB,CAAC,IAAoB,EAAA;AACrD,IAAA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU;IACrC,IAAI,CAAC,QAAQ,CAAC;AACZ,QAAA,oBAAoB,CAAC,CAAC,EAAA;;AAEpB,YAAA,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAChE,gBAAA,IACE,WAAW,CAAC,CAAC,EAAEA,YAAC,CAAC,YAAY,CAAC;oBAC9B,WAAW,CAAC,CAAC,CAAC,UAAU,EAAEA,YAAC,CAAC,qBAAqB,CAAC,EAClD;oBACA,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9B;YACF;QACF,CAAC;AACF,KAAA,CAAC;IACF,MAAM,SAAS,GAAG,EAAE;AACpB,IAAA,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;QACpC,SAAS,CAAC,IAAI,CAACA,YAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC1C;AACA,IAAA,OAAO,SAAS;AAClB;;AC7CM,SAAU,iBAAiB,CAAC,KAAmB,EAAE,IAAoB,EAAA;AACzE,IAAA,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC;AAEzC,IAAA,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE;QAC5B,OAAOA,YAAC,CAAC,WAAW,CAClB,SAAS,EACTA,YAAC,CAAC,cAAc,CAAC;YACfA,YAAC,CAAC,mBAAmB,CACnBA,YAAC,CAAC,cAAc,CACdA,YAAC,CAAC,gBAAgB,CAAC,SAAS,EAAEA,YAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EACrD;gBACEA,YAAC,CAAC,uBAAuB,CACvB,EAAE,EACFA,YAAC,CAAC,cAAc,CACdA,YAAC,CAAC,gBAAgB,CAAC,SAAS,EAAEA,YAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EACzD,EAAE,CACH,CACF;AACF,aAAA,CACF,CACF;AACF,SAAA,CAAC,CACH;IACH;IACA,OAAOA,YAAC,CAAC,WAAW,CAClB,SAAS,EACTA,YAAC,CAAC,cAAc,CAAC;AACf,QAAAA,YAAC,CAAC,mBAAmB,CACnBA,YAAC,CAAC,cAAc,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE;AACjE,YAAAA,YAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;YAC9B,SAAS;AACV,SAAA,CAAC,CACH;AACF,KAAA,CAAC,CACH;AACH;;ACvCM,SAAU,gBAAgB,CAAC,IAAoB,EAAA;IACnD,IAAIA,YAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAC5B,QAAA,OAAO,IAAI;IACb;AACA,IAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC;IAC1C;AACA,IAAA,OAAO,IAAI;AACb;;ACRM,SAAU,mBAAmB,CACjC,IAAiC,EAAA;IAEjC,IAAI,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;IAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;;AAEnD,IAAA,IAAI,WAAW,CAAC,IAAI,KAAK,IAAI,EAAE;AAC7B,QAAA,WAAW,GAAG,WAAW,CAAC,MAAM;IAClC;IAEA,OAAO,aAAa,KAAK,WAAW;AACtC;;ACLA,SAAS,uBAAuB,CAC9B,KAAmB,EACnB,IAAoB,EACpB,MAAoB,EACpB,MAA4B,EAAA;AAE5B,IAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC;IAC5D,IAAI,OAAO,EAAE;AACX,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;QAC3D,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE;AACpC,YAAA,OAAO,IAAI;QACb;IACF;AACA,IAAA,OAAO,KAAK;AACd;AAEA,SAAS,qBAAqB,CAC5B,MAAmC,EACnC,MAA4B,EAC5B,QAAgB,EAAA;AAEhB,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;AACjD,QAAA,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC;AAC9B,QAAA,IAAI,YAAY,CAAC,IAAI,KAAK,MAAM,EAAE;YAChC,IAAI,YAAY,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE;gBAC5C,IAAI,YAAY,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE;AAC7C,oBAAA,OAAO,IAAI;gBACb;YACF;AAAO,iBAAA,IAAI,QAAQ,KAAK,SAAS,EAAE;AACjC,gBAAA,OAAO,IAAI;YACb;QACF;IACF;AACA,IAAA,OAAO,KAAK;AACd;AAEA,SAAS,6BAA6B,CACpC,KAAmB,EACnB,IAAoB,EACpB,MAA0B,EAC1B,MAA4B,EAAA;IAE5B,IAAI,CAACA,YAAC,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;AACpC,QAAA,OAAO,KAAK;IACd;AACA,IAAA,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAEA,YAAC,CAAC,YAAY,CAAC;IAC5D,IAAI,CAAC,UAAU,EAAE;AACf,QAAA,OAAO,KAAK;IACd;AACA,IAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC;IAChE,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,KAAK;IACd;AACA,IAAA,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC;IAC1D,IAAI,CAAC,MAAM,EAAE;AACX,QAAA,OAAO,KAAK;IACd;AACA,IAAA,OAAO,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;AACpE;AAEM,SAAU,aAAa,CAC3B,KAAmB,EACnB,IAAoB,EACpB,EAAE,MAAM,EAAoB,EAC5B,MAA4B,EAAA;AAE5B,IAAA,IAAIA,YAAC,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE;AACrC,QAAA,OAAO,KAAK;IACd;IACA,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAEA,YAAC,CAAC,YAAY,CAAC;IACrD,IAAI,UAAU,EAAE;QACd,OAAO,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC;IACjE;IACA,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAEA,YAAC,CAAC,kBAAkB,CAAC;AAC3D,IAAA,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;QACtC,OAAO,6BAA6B,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC;IACvE;AAEA,IAAA,OAAO,KAAK;AACd;;ACnFA,SAAS,uBAAuB,CAC9B,KAAmB,EACnB,EAA6B,EAC7B,SAGqB,EAAA;AAErB,IAAA,IAAIA,YAAC,CAAC,wBAAwB,CAAC,SAAS,CAAC,EAAE;QACzC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE;AACpC,YAAA,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;QAC1D;QACA;IACF;AACA,IAAA,IAAIA,YAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE;AAClC,QAAA,IAAI,SAAS,CAAC,UAAU,KAAK,MAAM,IAAI,SAAS,CAAC,UAAU,KAAK,QAAQ,EAAE;YACxE;QACF;AACA,QAAA,MAAM,IAAI,GAAG,sBAAsB,CAAC,SAAS,CAAC;AAC9C,QAAA,IACE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,IAAI;AAC9D,aAAC,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,CAAC,EACxD;AACA,YAAA,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;QAC1D;QACA;IACF;AACA,IAAA,IAAI,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC;IACjE,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,GAAG,EAAE;IACd;AACA,IAAA,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;AAChB,IAAA,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC;AAC9D;SAEgB,wBAAwB,CACtC,KAAmB,EACnB,IAAyC,EACzC,WAAwC,EAAA;AAExC,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;AACtD,QAAA,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;AACzB,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;AACjE,gBAAA,uBAAuB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7D;QACF;IACF;AACF;;AClDM,SAAU,kBAAkB,CAChC,IAAoB,EACpB,IAAY,EAAA;AAEZ,IAAA,IAAI,GAAG;IACP,IAAI,CAAC,GAAG,CAAC;AACT,IAAA,GAAG;AACD,QAAA,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,CAAC;AACpB,QAAA,CAAC,EAAE;IACL,CAAC,QACC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;AACxB,QAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;AAC1B,QAAA,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC;AACzB,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC;IAG9B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;AAC7C,IAAA,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI;AAC9B,IAAA,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI;AAExB,IAAA,OAAOA,YAAC,CAAC,UAAU,CAAC,GAAG,CAAC;AAC1B;;ACtBM,SAAU,kBAAkB,CAChC,IAAoB,EACpB,WAAmB,EAAA;IAEnB,IAAI,OAAO,GAA0B,IAAI;IACzC,OAAO,OAAO,EAAE;AACd,QAAA,QAAQ,OAAO,CAAC,IAAI,CAAC,IAAI;AACvB,YAAA,KAAK,qBAAqB;YAC1B,KAAK,oBAAoB,EAAE;AACzB,gBAAA,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;AACnB,oBAAA,OAAO,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI;gBAC7B;gBACA;YACF;YACA,KAAK,oBAAoB,EAAE;gBACzB,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,EAAE;AACzC,oBAAA,OAAO,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI;gBAC7B;gBACA;YACF;AACA,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,aAAa;YAClB,KAAK,cAAc,EAAE;gBACnB,QAAQ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI;AAC3B,oBAAA,KAAK,YAAY;AACf,wBAAA,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI;AAC9B,oBAAA,KAAK,aAAa;wBAChB,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI;;gBAInC;YACF;;AAIF,QAAA,OAAO,GAAG,OAAO,CAAC,UAAU;IAC9B;AACA,IAAA,OAAO,WAAW;AACpB;;AChCA,MAAM,gBAAgB,GAAG,2BAA2B;AAEpD,SAAS,aAAa,CAAC,IAAY,EAAA;;AAEjC,IAAA,IAAI,IAAI,CAAC,eAAe,EAAE;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;AAC/D,YAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;AACxD,gBAAA,OAAO,IAAI;YACb;QACF;IACF;AACA,IAAA,OAAO,KAAK;AACd;AAEA,SAAS,YAAY,CAAmB,IAAO,EAAA;IAC7C,OAAOA,YAAC,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,mBAAmB,CAAC;AAC3D;AAQA,SAAS,aAAa,CAAC,KAAe,EAAE,WAAyB,EAAA;IAC/D,MAAM,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM;IACzC,KAAK,CAAC,UAAU,CAAC,IAAI,CACnBA,YAAC,CAAC,YAAY,CAACA,YAAC,CAAC,aAAa,CAAC,GAAG,CAAC,EAAEA,YAAC,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAC5E;AACD,IAAA,OAAO,GAAG;AACZ;AAEA,SAAS,uBAAuB,CAC9B,KAAe,EACf,MAAoC,EACpC,WAAyB,EAAA;IAEzB,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC;AAC7C,IAAA,MAAM,CAAC,WAAW,CAACA,YAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAEA,YAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACxE;AAEA,SAAS,uCAAuC,CAC9C,KAAe,EACf,IAAoC,EAAA;IAEpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;AAC/B,IAAA,IACE,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,YAAY,CAAC;QAClC,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,aAAa,CAAC,EACnC;AACA,QAAA,KAAK,CAAC,WAAW,CAACA,YAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzD;IACA,IAAI,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,wBAAwB,CAAC,EAAE;AAClD,QAAA,+CAA+C,CAAC,KAAK,EAAE,KAAK,CAAC;IAC/D;AACF;AAEA,SAAS,2BAA2B,CAClC,KAAe,EACf,IAAoC,EAAA;IAEpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;IAE/B,IAAI,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,wBAAwB,CAAC,EAAE;QAClD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC;QACpC,IAAI,WAAW,CAAC,IAAI,EAAEA,YAAC,CAAC,YAAY,CAAC,EAAE;AACrC,YAAA,MAAM,mBAAmB,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAEA,YAAC,CAAC,YAAY,CAAC;AACjE,YAAA,IAAI,WAAyB;YAC7B,IAAI,mBAAmB,EAAE;gBACvB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC;AACnD,gBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC;AAC/D,gBAAA,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC;AAC5C,gBAAA,MAAM,OAAO,GAAG,OAAO,IAAI,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;AAElE,gBAAA,WAAW,GAAGA,YAAC,CAAC,uBAAuB,CACrC,CAAC,GAAG,CAAC,EACLA,YAAC,CAAC,cAAc,CAAC;AACf,oBAAAA,YAAC,CAAC,WAAW,CACXA,YAAC,CAAC,gBAAgB,CAChB,KAAK,EACLA,YAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,mBAAmB,CAAC,EAChDA,YAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAC5B,EACDA,YAAC,CAAC,cAAc,CAAC;AACf,wBAAAA,YAAC,CAAC,mBAAmB,CACnBA,YAAC,CAAC,cAAc,CAAC,mBAAmB,EAAE,CAAC,GAAG,CAAC,CAAC,CAC7C;qBACF,CAAC;;;;;oBAKF;AACE,0BAAE;AACF,0BAAEA,YAAC,CAAC,cAAc,CAAC;AACf,4BAAAA,YAAC,CAAC,mBAAmB,CACnBA,YAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,mBAAmB,EAAE,GAAG,CAAC,CACtD;AACF,yBAAA,CAAC,CACP;AACF,iBAAA,CAAC,CACH;YACH;iBAAO;AACL,gBAAA,WAAW,GAAG,IAAI,CAAC,IAAI;YACzB;AACA,YAAA,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC;QACnD;IACF;AACF;AAEA,SAAS,oCAAoC,CAC3C,KAAe,EACf,EAAmB,EACnB,IAAoC,EAAA;IAEpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;IAE/B,IAAI,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,wBAAwB,CAAC,EAAE;AAClD,QAAA,+CAA+C,CAAC,KAAK,EAAE,KAAK,CAAC;IAC/D;AAEA,IAAA,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAEA,YAAC,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AACvD,IAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CACbA,YAAC,CAAC,kBAAkB,CAClBA,YAAC,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,EACrBA,YAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAEA,YAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CACnD,CACF;AACH;AAEA,SAAS,iCAAiC,CACxC,KAAe,EACf,IAAoC,EAAA;IAEpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;IAC5B,IAAI,WAAW,CAAC,GAAG,EAAEA,YAAC,CAAC,eAAe,CAAC,EAAE;QACvC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE;AAC3B,YAAA,2BAA2B,CAAC,KAAK,EAAE,IAAI,CAAC;QAC1C;aAAO;AACL,YAAA,uCAAuC,CAAC,KAAK,EAAE,IAAI,CAAC;QACtD;IACF;SAAO,IAAI,WAAW,CAAC,GAAG,EAAEA,YAAC,CAAC,mBAAmB,CAAC,EAAE;QAClD,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK,EAAE;YACrC,oCAAoC,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;QAClE;aAAO;AACL,YAAA,uCAAuC,CAAC,KAAK,EAAE,IAAI,CAAC;QACtD;IACF;AACF;AAEA,SAAS,mCAAmC,CAC1C,KAAe,EACf,IAAkC,EAAA;IAElC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACjD,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;AAC9C,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;AAChD,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;QAErB,IAAI,WAAW,CAAC,IAAI,EAAEA,YAAC,CAAC,cAAc,CAAC,EAAE;AACvC,YAAA,iCAAiC,CAAC,KAAK,EAAE,IAAI,CAAC;QAChD;QACA,IAAI,WAAW,CAAC,IAAI,EAAEA,YAAC,CAAC,oBAAoB,CAAC,EAAE;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YAChC,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;QAC/C;IACF;AACF;AAEA,SAAS,6BAA6B,CACpC,IAA6C,EAAA;AAE7C,IAAA,IAAIA,YAAC,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;QAC3B,OAAOA,YAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;IAChC;AACA,IAAA,OAAOA,YAAC,CAAC,gBAAgB,CACvB,6BAA6B,CAAC,IAAI,CAAC,MAAM,CAAC,EAC1C,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC7C;AACH;AAEA,MAAM,iBAAiB,GAAG,SAAS;AAEnC,SAAS,mCAAmC,CAC1C,KAAe,EACf,IAAkC,EAAA;IAElC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACjD,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC;IAC9C,IACE,CAAC,WAAW,CAAC,WAAW,EAAEA,YAAC,CAAC,eAAe,CAAC;QAC1C,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/C,WAAW,CAAC,WAAW,EAAEA,YAAC,CAAC,qBAAqB,CAAC,EACjD;QACA,IAAI,WAAW,CAAC,WAAW,EAAEA,YAAC,CAAC,eAAe,CAAC,EAAE;AAC/C,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5D,IAAI,OAAO,EAAE;gBACX,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE;AACvD,gBAAA,IAAI,aAAa,IAAI,mBAAmB,CAAC,aAAa,CAAC,EAAE;oBACvD;gBACF;YACF;QACF;AACA,QAAA,MAAM,GAAG,GAAG,aAAa,CACvB,KAAK,EACL,6BAA6B,CAAC,WAAW,CAAC,IAAI,CAAC,CAChD;QACD,MAAM,WAAW,GAAGA,YAAC,CAAC,mBAAmB,CACvCA,YAAC,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EACjCA,YAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CACrB;AACD,QAAA,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC;QAEpC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACjD,IAAI,WAAW,CAAC,cAAc,EAAEA,YAAC,CAAC,mBAAmB,CAAC,EAAE;YACtD,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;QACrD;IACF;AACF;AAEA,SAAS,+CAA+C,CACtD,KAAe,EACf,KAA+C,EAAA;IAE/C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC;IACpC,IAAI,WAAW,CAAC,IAAI,EAAEA,YAAC,CAAC,YAAY,CAAC,EAAE;QACrC,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IACjD;AACF;AAEA,SAAS,uCAAuC,CAC9C,KAAe,EACf,KAAuC,EAAA;IAEvC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC;IACnC,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;AAC/C;AAEA,SAAS,qBAAqB,CAC5B,KAAe,EACf,IAAkD,EAAA;IAElD,IAAI,WAAW,CAAC,IAAI,EAAEA,YAAC,CAAC,YAAY,CAAC,EAAE;AACrC,QAAA,mCAAmC,CAAC,KAAK,EAAE,IAAI,CAAC;AAChD,QAAA,mCAAmC,CAAC,KAAK,EAAE,IAAI,CAAC;IAClD;IACA,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;AACrC,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;AACnD,QAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC;AAEzB,QAAA,IACE,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,YAAY,CAAC;YAClC,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,aAAa,CAAC,EACnC;AACA,YAAA,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC;QACrC;aAAO,IAAI,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,wBAAwB,CAAC,EAAE;AACzD,YAAA,+CAA+C,CAAC,KAAK,EAAE,KAAK,CAAC;QAC/D;aAAO,IAAI,WAAW,CAAC,KAAK,EAAEA,YAAC,CAAC,gBAAgB,CAAC,EAAE;AACjD,YAAA,uCAAuC,CAAC,KAAK,EAAE,KAAK,CAAC;QACvD;IACF;AACF;AAEM,SAAU,YAAY,CAC1B,IAAkD,EAAA;AAElD,IAAA,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC5B;IACF;AAEA,IAAA,MAAM,KAAK,GAAa;QACtB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC;AAChD,QAAA,UAAU,EAAE,EAAE;AACd,QAAA,IAAI,EAAE,EAAE;KACT;AAED,IAAA,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC;IAElC,MAAM,eAAe,GAAG,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC;IAC5D,MAAM,EAAE,GAAG,kBAAkB,CAC3B,IAAI,EACJ,kBAAkB,CAAC,eAAe;AAChC,UAAE;AACF,UAAE,MAAM,GAAG,eAAe,CAC7B;AAED,IAAA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC;AAE3C,IAAA,IAAI,QAAQ,GAAoC,YAAY,CAC1DA,YAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CACvB;AAED,IAAA,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;AACrB,QAAA,QAAQ,GAAGA,YAAC,CAAC,cAAc,CAAC;YAC1BA,YAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC;AAC1C,YAAAA,YAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;AAC5B,SAAA,CAAC;IACJ;AAEA,IAAA,MAAM,YAAY,GAAGA,YAAC,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC;AAEvE,IAAA,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;QACjB,YAAY,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG;IAClC;AAEA,IAAA,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAChC,QAAQ,CAAC,YAAY,CACnBA,YAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAACA,YAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CACzE,CAAC,CAAC,CAAC,CACL;IAED,IAAI,CAAC,WAAW,CACd,YAAY,CACVA,YAAC,CAAC,UAAU,CACVA,YAAC,CAAC,iBAAiB,CACjBA,YAAC,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,EACxB,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,EACrB,IAAI,CACL,EACDA,YAAC,CAAC,iBAAiB,CAACA,YAAC,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAC7C,EAAE,EACF,IAAI,CACL,CACF,CACF;AACH;;AC9UA;AACA;;;AAGG;AACH,MAAM,SAAS,GAAG,UAAU;AAC5B,MAAM,SAAS,GAAG,UAAU;AAC5B,MAAM,SAAS,GAAG,UAAU;AAC5B,MAAM,SAAS,GAAG,SAAS;AAC3B,MAAM,SAAS,GAAG,SAAS;AAE3B,SAAS,MAAM,CAAC,IAAY,EAAA;IAC1B,MAAM,KAAK,GAAa,EAAE;AAC1B,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;QAC3C,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AAC5B,QAAA,IAAI,CAAC,GAAG,IAAI,EAAE;AACZ,YAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACf;AAAO,aAAA,IAAI,CAAC,GAAG,KAAK,EAAE;AACpB,YAAA,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAChD;aAAO,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,MAAM,EAAE;AACpC,YAAA,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3E;aAAO;YACL,MAAM,EAAE,GACN,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;YAClE,KAAK,CAAC,IAAI,CACR,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,EACzB,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,EAC1B,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,EACzB,IAAI,IAAI,EAAE,GAAG,IAAI,CAAC,CACnB;QACH;IACF;AACA,IAAA,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC;AAC9B;AACA;;;;AAIG;SACa,QAAQ,CAAC,MAA2B,EAAE,IAAI,GAAG,CAAC,EAAA;AAC5D,IAAA,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM;IAC7D,MAAM,CAAC,GAAG,MAAM;AAEhB;;;;;;;;;;;;;;;AAeI;IAEJ,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,SAAS,IAAI,UAAU;IACzC,IAAI,MAAM,GAAG,CAAC;AAEd,IAAA,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE;AAClB,QAAA,MAAM,IAAI,GAAG;AACX,YAAA,CAAC,IAAI,GAAG,SAAS,GAAG,SAAS,IAAI,UAAU;AAC3C,YAAA,CAAC,IAAI,GAAG,SAAS,IAAI,UAAU;AAC/B,YAAA,CAAC,IAAI,GAAG,CAAC,IAAI,UAAU;AACvB,YAAA,CAAC,IAAI,GAAG,SAAS,IAAI,UAAU;SAChC;AAED;;;;;;;;;;;;;;;;AAgBM;QAEN,MAAM,CAAC,GAAG,MAAM;AAChB,QAAA,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,EAAE;QAC3B,IAAI,IAAI,GAAG,CAAC;AACZ,QAAA,KAAK,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,GAAG,UAAU,KAAK,KAAK,EAAE,MAAM,IAAI,CAAC,EAAE;YAC5D,MAAM,CAAC,GAAG,MAAM;AAChB,YAAA,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AACzC,YAAA,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AACzC,YAAA,MAAM,MAAM,GAAG,MAAM,GAAG,SAAS,IAAI,CAAC,MAAM,GAAG,SAAS,KAAK,EAAE,CAAC;AAChE,YAAA,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,UAAU;AAC5C,YAAA,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,CAAC;AAChC,YAAA,MAAM,IAAI,GAAG,GAAG,GAAG,MAAM;AACzB,YAAA,MAAM,IAAI,GAAG,GAAG,KAAK,EAAE;YACvB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,SAAS,IAAI,CAAC,IAAI,GAAG,SAAS,KAAK,EAAE,CAAC,IAAI,UAAU;YACzE,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG;QACzB;AAEA;;;;;;;AAOM;QACN,GAAG;AACD,YAAA,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;AACjC,iBAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;AACnC,iBAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;AACpC,iBAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;AACtC,gBAAA,UAAU;IACd;AAEA;;;;;;;AAOI;IACJ,GAAG,GAAG,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU;AAExC;;;;;;;;;;;;;AAaI;AAEJ,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC;IAC/B,OAAO,MAAM,IAAI,KAAK,EAAE,MAAM,IAAI,CAAC,EAAE;QACnC,MAAM,CAAC,GAAG,MAAM;AAChB,QAAA,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AACzC,QAAA,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AACzC,QAAA,MAAM,KAAK,GAAG,MAAM,GAAG,SAAS,IAAI,CAAC,MAAM,GAAG,SAAS,KAAK,EAAE,CAAC;QAC/D,GAAG,GAAG,CAAC,GAAG,GAAG,KAAK,IAAI,UAAU;AAChC,QAAA,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,CAAC;QAChC,GAAG;YACD,CAAC,CAAC,GAAG,GAAG,MAAM,IAAI,SAAS,IAAI,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,SAAS,KAAK,EAAE,CAAC;AAChE,gBAAA,UAAU;IACd;AAEA;;;;;;;;;AASI;IAEJ,OAAO,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE;AAClC,QAAA,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC;AACtB,QAAA,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,SAAS;AAC5B,QAAA,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,CAAC;QAChC,GAAG;YACD,CAAC,CAAC,GAAG,GAAG,MAAM,IAAI,SAAS,IAAI,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,SAAS,KAAK,EAAE,CAAC;AAChE,gBAAA,UAAU;IACd;AAEA;;;;;;;;;;;AAWI;IAEJ,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IACxB,GAAG;QACD,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,IAAI,SAAS,IAAI,UAAU;AAC1C,aAAC,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,SAAS,KAAK,EAAE,CAAC;IACpC,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IACxB,GAAG;QACD,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,IAAI,SAAS,IAAI,UAAU;AAC1C,aAAC,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,SAAS,KAAK,EAAE,CAAC;IACpC,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;;AAGxB,IAAA,OAAO,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,UAAU,GAAG,GAAG;AACzC;;ACrLA,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;AAEzB,SAAS,OAAO,CAAC,QAAgB,EAAA;IAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;AACrC;AAEA,SAAS,oBAAoB,CAAC,IAAY,EAAA;AACxC,IAAA,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;IAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC1C,IAAA,OAAO,MAAM;AACf;AAEA,SAAS,kBAAkB,CAAC,KAAmB,EAAE,IAAoB,EAAA;IACnE,IAAI,CAAC,QAAQ,CAAC;AACZ,QAAA,iBAAiB,CAAC,CAAC,EAAA;AACjB,YAAA,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,EAAE;gBACrE,wBAAwB,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC;YACtD;QACF,CAAC;AACF,KAAA,CAAC;AACJ;AAEA,SAAS,oBAAoB,CAAC,IAAoB,EAAA;AAChD,IAAA,IAAI,WAAW,GAAG,IAAI,CAAC,UAAU;IAEjC,OAAO,WAAW,EAAE;QAClB,IAAIA,YAAC,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;AACjC,YAAA,OAAO,IAAI;QACb;QACA,IAAI,CAACA,YAAC,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;AACpC,YAAA,OAAO,KAAK;QACd;AACA,QAAA,WAAW,GAAG,WAAW,CAAC,UAAU;IACtC;AAEA,IAAA,OAAO,KAAK;AACd;AAEA,SAAS,cAAc,CAAC,KAAmB,EAAE,IAA+B,EAAA;IAC1E,IAAI,CAAC,QAAQ,CAAC;AACZ,QAAA,mBAAmB,CAAC,CAAC,EAAA;AACnB,YAAA,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAEA,YAAC,CAAC,gBAAgB,CAAC;AACtE,YAAA,IACE,YAAY;gBACZ,oBAAoB,CAAC,CAAC,CAAC;gBACvB,aAAa,CAAC,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,EAC/C;;gBAEA,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC;gBACnD,CAAC,CAAC,WAAW,CACXA,YAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE;oBAC7BA,YAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;AAC5C,iBAAA,CAAC,CACH;AACD,gBAAA,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC;AACzC,gBAAA,CAAC,CAAC,WAAW,CACXA,YAAC,CAAC,WAAW,CACX,SAAS,EACTA,YAAC,CAAC,mBAAmB,CACnBA,YAAC,CAAC,cAAc,CACdA,YAAC,CAAC,gBAAgB,CAAC,SAAS,EAAEA,YAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EACtD,CAAC,EAAE,CAAC,CACL,CACF,CACF,CACF;gBACD,CAAC,CAAC,IAAI,EAAE;YACV;QACF,CAAC;AACF,KAAA,CAAC;AACJ;AAEA,SAAS,aAAa,CACpB,KAAmB,EACnB,IAAoB,EACpB,UAAwB,EACxB,SAA2D,EAC3D,QAAA,GAAmB,SAAS,EAAA;AAE5B,IAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC;IAC5C,IAAI,aAAa,EAAE;QACjB,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,aAAa,CAAC;QACrD,MAAM,OAAO,GAAGA,YAAC,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC;QAChD,MAAM,aAAa,GAAG,mBAAmB,CACvC,KAAK,EACL,aAAa,EACb,gBAAgB,CACjB;QACD,MAAM,UAAU,GAAuB,EAAE;QACzC,IAAI,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,GAAG,EAAE;YAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;AACxC,YAAA,UAAU,CAAC,IAAI,CACbA,YAAC,CAAC,cAAc,CACdA,YAAC,CAAC,UAAU,CAAC,UAAU,CAAC,EACxBA,YAAC,CAAC,aAAa,CACb,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CACtE,CACF,CACF;QACH;AACA,QAAA,IAAI,KAAK,CAAC,QAAQ,EAAE;YAClB,UAAU,CAAC,IAAI,CACbA,YAAC,CAAC,cAAc,CACdA,YAAC,CAAC,UAAU,CAAC,WAAW,CAAC,EACzBA,YAAC,CAAC,aAAa,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CACjD,CACF;AACD,YAAA,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC;AAC7C,YAAA,IAAI,YAAY,CAAC,MAAM,EAAE;gBACvB,MAAM,cAAc,GAAuB,EAAE;AAC7C,gBAAA,IAAI,EAAgB;AACpB,gBAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;AACvD,oBAAA,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC;AACpB,oBAAA,cAAc,CAAC,IAAI,CAACA,YAAC,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC5D;AACA,gBAAA,UAAU,CAAC,IAAI,CACbA,YAAC,CAAC,cAAc,CACdA,YAAC,CAAC,UAAU,CAAC,cAAc,CAAC,EAC5BA,YAAC,CAAC,uBAAuB,CAAC,EAAE,EAAEA,YAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAClE,CACF;YACH;QACF;AACA,QAAA,OAAOA,YAAC,CAAC,cAAc,CAAC,aAAa,EAAE;YACrC,QAAQ;YACR,OAAO;YACP,SAAS;AACT,YAAAA,YAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC;AAC/B,SAAA,CAAC;IACJ;AACA,IAAA,OAAO,SAAS;AAClB;AAEA,SAAS,WAAW,CAClB,KAAmB,EACnB,IAAoB,EACpB,UAAwB,EACxB,OAAyB,EAAA;AAEzB,IAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC;IAC5C,IAAI,aAAa,EAAE;QACjB,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,aAAa,CAAC;QACrD,MAAM,OAAO,GAAGA,YAAC,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC;QAChD,MAAM,aAAa,GAAG,mBAAmB,CACvC,KAAK,EACL,aAAa,EACb,gBAAgB,CACjB;AAED,QAAA,OAAOA,YAAC,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACtE;AACA,IAAA,OAAO,OAAO;AAChB;AAEA,MAAM,YAAY,GAAG,uBAAuB;AAC5C,MAAM,cAAc,GAAG,yBAAyB;AAEhD,SAAS,YAAY,CACnB,KAAmB,EACnB,IAA+B,EAC/B,QAAwC,EAAA;IAExC,IAAI,UAAU,GAAG,KAAK;IACtB,IAAI,MAAM,GAAG,KAAK;IAClB,IAAI,QAAQ,EAAE;QACZ,KAAK,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,QAAQ,EAAE;AACzC,YAAA,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC9B,MAAM,GAAG,IAAI;gBACb,UAAU,GAAG,IAAI;gBACjB;YACF;AACA,YAAA,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAChC,MAAM,GAAG,IAAI;AACb,gBAAA,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC1D;YACF;QACF;IACF;AAEA,IAAA,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,SAAS,EAAE;AAClC,QAAA,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC;AAC/B,QAAA,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC;IAC7B;AACA,IAAA,OAAO,MAAM;AACf;AAEA,SAAS,eAAe,CACtB,IAAY,EAAA;AAEZ,IAAA,OAAOA,YAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAIA,YAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC;AAC1E;AAEA,SAAS,2BAA2B,CAClC,KAAmB,EACnB,IAA0C,EAAA;AAE1C,IAAA,IACE,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE;AACvC,QAAA,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,EACrC;QACA;IACF;AACA,IAAA,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE;AAC/B,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI;AAC3B,IAAA,IAAI,EAAE,IAAI,IAAIA,YAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE;QACzC;IACF;AACA,IAAA,IAAI,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACvC,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,EAAE,eAAe,CAAC;;AAEtD,QAAA,IACE,YAAY;;YAEZ,EAAE,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,SAAS,CAAC;;;AAG/C,YAAA,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAC9B;AACA,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC;QACvE;IACF;;IAEA,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,EAAEA,YAAC,CAAC,gBAAgB,CAAC;AACzD,IAAA,IACE,YAAY;QACZ,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,eAAe,CAAC,EACzD;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC;IACrE;IACA,IAAI,CAAC,IAAI,EAAE;AACb;AAEA,SAAS,4BAA4B,CACnC,KAAmB,EACnB,IAA2C,EAAA;AAE3C,IAAA,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE;AAC7B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;;AAEtB,QAAA;;AAEE,QAAA,IAAI,CAAC,EAAE;;AAEP,YAAA,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;YAChC,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC;;;AAG/B,YAAA,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EACtB;AACA,YAAA,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAC5B,IAAI,CAAC,WAAW,CACdA,YAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE;AAC7B,gBAAAA,YAAC,CAAC,kBAAkB,CAClB,IAAI,CAAC,EAAE,EACP,aAAa,CACX,KAAK,EACL,IAAI,EACJ,IAAI,CAAC,EAAE,EACPA,YAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EACrD,IAAI,CACL,CACF;AACF,aAAA,CAAC,CACH,CAAC,CAAC,CAAC,CACL;YACD,IAAI,CAAC,IAAI,EAAE;QACb;IACF;AACF;AAEA,SAAS,yBAAyB,CAChC,OAAkC,EAClC,IAA2C,EAAA;AAE3C,IAAA,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE;AAC7B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;;AAEtB,QAAA;;AAEE,QAAA,IAAI,CAAC,EAAE;;AAEP,YAAA,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;YAChC,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC;;;AAG/B,YAAA,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EACtB;YACA,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC;AACtC,YAAA,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC;YACtC,GAAG,CAAC,IAAI,EAAE;AACV,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,EAAE,EAAE;gBAC9C,IAAI,CAAC,UAAU,CAAC,WAAW,CACzBA,YAAC,CAAC,sBAAsB,CAAC,SAAS,EAAE;oBAClCA,YAAC,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;AACpC,iBAAA,CAAC,CACH;YACH;AAAO,iBAAA,IAAI,IAAI,CAAC,UAAU,CAAC,0BAA0B,EAAE,EAAE;AACvD,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B;iBAAO;gBACL,IAAI,CAAC,MAAM,EAAE;YACf;QACF;IACF;AACF;AAQc,SAAU,kBAAkB,GAAA;IACxC,OAAO;AACL,QAAA,IAAI,EAAE,eAAe;AACrB,QAAA,OAAO,EAAE;YACP,OAAO,CAAC,WAAW,EAAE,OAAO,EAAA;;AAC1B,gBAAA,MAAM,KAAK,GAAiB;oBAC1B,GAAG,EAAE,MAAA,OAAO,CAAC,IAAI,CAAC,GAAG,mCAAI,IAAI;oBAC7B,QAAQ,EAAE,MAAA,OAAO,CAAC,IAAI,CAAC,QAAQ,mCAAI,IAAI;oBACvC,IAAI,EAAE,OAAO,CAAC,IAAI;AAClB,oBAAA,UAAU,EAAE,CAAC,GAAG,iBAAiB,CAAC;oBAClC,OAAO,EAAE,IAAI,GAAG,EAAE;AAClB,oBAAA,aAAa,EAAE;wBACb,WAAW,EAAE,IAAI,GAAG,EAAE;wBACtB,UAAU,EAAE,IAAI,GAAG,EAAE;AACtB,qBAAA;oBACD,QAAQ,EAAE,OAAO,CAAC,QAAQ;AAC1B,oBAAA,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,UAAU;oBAC3C,SAAS,EAAE,MAAA,OAAO,CAAC,IAAI,CAAC,SAAS,mCAAI,IAAI;iBAC1C;AACD,gBAAA,IAAI,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBAC/D;gBACF;gBACA,WAAW,CAAC,QAAQ,CAAC;AACnB,oBAAA,mBAAmB,CAAC,IAAI,EAAA;AACtB,wBAAA,yBAAyB,CAAC,WAAW,EAAE,IAAI,CAAC;oBAC9C,CAAC;AACF,iBAAA,CAAC;AACF,gBAAA,IAAI,KAAK,CAAC,GAAG,EAAE;oBACb,WAAW,CAAC,QAAQ,CAAC;AACnB,wBAAA,UAAU,CAAC,IAAI,EAAA;4BACb,YAAY,CAAC,IAAI,CAAC;wBACpB,CAAC;AACD,wBAAA,WAAW,CAAC,IAAI,EAAA;4BACd,YAAY,CAAC,IAAI,CAAC;wBACpB,CAAC;AACF,qBAAA,CAAC;gBACJ;gBACA,WAAW,CAAC,QAAQ,CAAC;AACnB,oBAAA,kBAAkB,CAAC,IAAI,EAAA;AACrB,wBAAA,2BAA2B,CAAC,KAAK,EAAE,IAAI,CAAC;oBAC1C,CAAC;AACD,oBAAA,mBAAmB,CAAC,IAAI,EAAA;AACtB,wBAAA,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC;oBAC3C,CAAC;AACF,iBAAA,CAAC;;;AAGF,gBAAA,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE;YAC3B,CAAC;AACF,SAAA;KACF;AACH;;;;"}
package/dist/babel.mjs CHANGED
@@ -33,11 +33,6 @@ const IMPORT_COMPONENT = {
33
33
  name: '$$component',
34
34
  source: SOLID_REFRESH_MODULE,
35
35
  };
36
- const IMPORT_CONTEXT = {
37
- kind: 'named',
38
- name: '$$context',
39
- source: SOLID_REFRESH_MODULE,
40
- };
41
36
  const IMPORT_DECLINE = {
42
37
  kind: 'named',
43
38
  name: '$$decline',
@@ -117,13 +112,6 @@ function getRootStatementPath(path) {
117
112
  return path;
118
113
  }
119
114
 
120
- function generateViteHMRRequirement(state, statements, pathToHot) {
121
- if (state.bundler === 'vite') {
122
- // Vite requires that the owner module has an `import.meta.hot.accept()` call
123
- statements.push(t.expressionStatement(t.callExpression(t.memberExpression(pathToHot, t.identifier('accept')), [])));
124
- }
125
- }
126
-
127
115
  const REGISTRY = 'REGISTRY';
128
116
  function createRegistry(state, path) {
129
117
  const current = state.imports.get(REGISTRY);
@@ -136,16 +124,14 @@ function createRegistry(state, path) {
136
124
  t.variableDeclarator(identifier, t.callExpression(getImportIdentifier(state, path, IMPORT_REGISTRY), [])),
137
125
  ]))[0]);
138
126
  const pathToHot = getHotIdentifier(state);
139
- const statements = [
140
- t.expressionStatement(t.callExpression(getImportIdentifier(state, path, IMPORT_REFRESH), [
141
- t.stringLiteral(state.bundler),
142
- pathToHot,
143
- identifier,
144
- ])),
145
- ];
146
- generateViteHMRRequirement(state, statements, pathToHot);
147
127
  path.scope.getProgramParent().path.pushContainer('body', [
148
- t.ifStatement(pathToHot, t.blockStatement(statements)),
128
+ t.ifStatement(pathToHot, t.blockStatement([
129
+ t.expressionStatement(t.callExpression(getImportIdentifier(state, path, IMPORT_REFRESH), [
130
+ t.stringLiteral(state.bundler),
131
+ pathToHot,
132
+ identifier,
133
+ ])),
134
+ ])),
149
135
  ]);
150
136
  state.imports.set(REGISTRY, identifier);
151
137
  return identifier;
@@ -234,14 +220,19 @@ function getForeignBindings(path) {
234
220
 
235
221
  function getHMRDeclineCall(state, path) {
236
222
  const pathToHot = getHotIdentifier(state);
237
- const statements = [
223
+ if (state.bundler === 'vite') {
224
+ return t.ifStatement(pathToHot, t.blockStatement([
225
+ t.expressionStatement(t.callExpression(t.memberExpression(pathToHot, t.identifier('accept')), [
226
+ t.arrowFunctionExpression([], t.callExpression(t.memberExpression(pathToHot, t.identifier('invalidate')), [])),
227
+ ])),
228
+ ]));
229
+ }
230
+ return t.ifStatement(pathToHot, t.blockStatement([
238
231
  t.expressionStatement(t.callExpression(getImportIdentifier(state, path, IMPORT_DECLINE), [
239
232
  t.stringLiteral(state.bundler),
240
233
  pathToHot,
241
234
  ])),
242
- ];
243
- generateViteHMRRequirement(state, statements, pathToHot);
244
- return t.ifStatement(pathToHot, t.blockStatement(statements));
235
+ ]));
245
236
  }
246
237
 
247
238
  function getStatementPath(path) {
@@ -452,12 +443,22 @@ function extractJSXExpressionFromRef(state, attr) {
452
443
  let replacement;
453
444
  if (unwrappedIdentifier) {
454
445
  const arg = expr.scope.generateUidIdentifier('arg');
446
+ const binding = expr.scope.getBinding(unwrappedIdentifier.name);
447
+ const cannotAssignKind = ['const', 'module'];
448
+ const isConst = binding && cannotAssignKind.includes(binding.kind);
455
449
  replacement = t.arrowFunctionExpression([arg], t.blockStatement([
456
450
  t.ifStatement(t.binaryExpression('===', t.unaryExpression('typeof', unwrappedIdentifier), t.stringLiteral('function')), t.blockStatement([
457
451
  t.expressionStatement(t.callExpression(unwrappedIdentifier, [arg])),
458
- ]), t.blockStatement([
459
- t.expressionStatement(t.assignmentExpression('=', unwrappedIdentifier, arg)),
460
- ])),
452
+ ]),
453
+ // fix the new usage of `ref` attribute,
454
+ // if use `Signals as refs`, the `else` branch will throw an error with `Cannot assign to "setter" because it is a constant` message
455
+ // issue: https://github.com/solidjs/solid-refresh/issues/66
456
+ // docs: https://docs.solidjs.com/concepts/refs#signals-as-refs
457
+ isConst
458
+ ? null
459
+ : t.blockStatement([
460
+ t.expressionStatement(t.assignmentExpression('=', unwrappedIdentifier, arg)),
461
+ ])),
461
462
  ]));
462
463
  }
463
464
  else {
@@ -514,11 +515,12 @@ function convertJSXOpeningToExpression(node) {
514
515
  }
515
516
  return t.memberExpression(convertJSXOpeningToExpression(node.object), convertJSXOpeningToExpression(node.property));
516
517
  }
518
+ const COMPONENT_PATTERN = /^[A-Z_]/;
517
519
  function extractJSXExpressionsFromJSXElement(state, path) {
518
520
  const openingElement = path.get('openingElement');
519
521
  const openingName = openingElement.get('name');
520
522
  if ((isPathValid(openingName, t.isJSXIdentifier) &&
521
- /^[A-Z_]/.test(openingName.node.name)) ||
523
+ COMPONENT_PATTERN.test(openingName.node.name)) ||
522
524
  isPathValid(openingName, t.isJSXMemberExpression)) {
523
525
  if (isPathValid(openingName, t.isJSXIdentifier)) {
524
526
  const binding = path.scope.getBinding(openingName.node.name);
@@ -598,6 +600,7 @@ function transformJSX(path) {
598
600
  path.replaceWith(skippableJSX(t.jsxElement(t.jsxOpeningElement(t.jsxIdentifier(id.name), [...state.attributes], true), t.jsxClosingElement(t.jsxIdentifier(id.name)), [], true)));
599
601
  }
600
602
 
603
+ // @ts-nocheck
601
604
  /**
602
605
  * Copyright (c) 2019 Jason Dent
603
606
  * https://github.com/Jason3S/xxhash
@@ -873,22 +876,24 @@ function wrapContext(state, path, identifier, context) {
873
876
  if (statementPath) {
874
877
  const registry = createRegistry(state, statementPath);
875
878
  const hotName = t.stringLiteral(identifier.name);
876
- const contextCall = getImportIdentifier(state, statementPath, IMPORT_CONTEXT);
877
- return t.callExpression(contextCall, [registry, hotName, context]);
879
+ const componentCall = getImportIdentifier(state, statementPath, IMPORT_COMPONENT);
880
+ return t.callExpression(componentCall, [registry, hotName, context]);
878
881
  }
879
882
  return context;
880
883
  }
884
+ const SKIP_PATTERN = /^\s*@refresh skip\s*$/;
885
+ const RELOAD_PATTERN = /^\s*@refresh reload\s*$/;
881
886
  function setupProgram(state, path, comments) {
882
887
  let shouldSkip = false;
883
888
  let isDone = false;
884
889
  if (comments) {
885
890
  for (const { value: comment } of comments) {
886
- if (/^\s*@refresh skip\s*$/.test(comment)) {
891
+ if (SKIP_PATTERN.test(comment)) {
887
892
  isDone = true;
888
893
  shouldSkip = true;
889
894
  break;
890
895
  }
891
- if (/^\s*@refresh reload\s*$/.test(comment)) {
896
+ if (RELOAD_PATTERN.test(comment)) {
892
897
  isDone = true;
893
898
  path.pushContainer('body', getHMRDeclineCall(state, path));
894
899
  break;