@tamagui/static 1.14.1 → 1.14.2

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 (195) hide show
  1. package/dist/cjs/constants.js +52 -1
  2. package/dist/cjs/constants.js.map +2 -2
  3. package/dist/cjs/extractor/accessSafe.js +52 -1
  4. package/dist/cjs/extractor/accessSafe.js.map +2 -2
  5. package/dist/cjs/extractor/babelParse.js +66 -1
  6. package/dist/cjs/extractor/babelParse.js.map +2 -2
  7. package/dist/cjs/extractor/buildClassName.js +99 -1
  8. package/dist/cjs/extractor/buildClassName.js.map +2 -2
  9. package/dist/cjs/extractor/bundle.js +126 -1
  10. package/dist/cjs/extractor/bundle.js.map +2 -2
  11. package/dist/cjs/extractor/createEvaluator.js +86 -1
  12. package/dist/cjs/extractor/createEvaluator.js.map +2 -2
  13. package/dist/cjs/extractor/createExtractor.js +1630 -15
  14. package/dist/cjs/extractor/createExtractor.js.map +2 -2
  15. package/dist/cjs/extractor/ensureImportingConcat.js +64 -1
  16. package/dist/cjs/extractor/ensureImportingConcat.js.map +2 -2
  17. package/dist/cjs/extractor/evaluateAstNode.js +130 -1
  18. package/dist/cjs/extractor/evaluateAstNode.js.map +2 -2
  19. package/dist/cjs/extractor/extractHelpers.js +207 -1
  20. package/dist/cjs/extractor/extractHelpers.js.map +2 -2
  21. package/dist/cjs/extractor/extractMediaStyle.js +193 -1
  22. package/dist/cjs/extractor/extractMediaStyle.js.map +2 -2
  23. package/dist/cjs/extractor/extractToClassNames.js +413 -13
  24. package/dist/cjs/extractor/extractToClassNames.js.map +2 -2
  25. package/dist/cjs/extractor/findTopmostFunction.js +43 -1
  26. package/dist/cjs/extractor/findTopmostFunction.js.map +2 -2
  27. package/dist/cjs/extractor/generatedUid.js +59 -1
  28. package/dist/cjs/extractor/generatedUid.js.map +2 -2
  29. package/dist/cjs/extractor/getPrefixLogs.js +31 -1
  30. package/dist/cjs/extractor/getPrefixLogs.js.map +2 -2
  31. package/dist/cjs/extractor/getPropValueFromAttributes.js +89 -1
  32. package/dist/cjs/extractor/getPropValueFromAttributes.js.map +2 -2
  33. package/dist/cjs/extractor/getSourceModule.js +103 -1
  34. package/dist/cjs/extractor/getSourceModule.js.map +2 -2
  35. package/dist/cjs/extractor/getStaticBindingsForScope.js +225 -1
  36. package/dist/cjs/extractor/getStaticBindingsForScope.js.map +2 -2
  37. package/dist/cjs/extractor/hoistClassNames.js +74 -1
  38. package/dist/cjs/extractor/hoistClassNames.js.map +2 -2
  39. package/dist/cjs/extractor/literalToAst.js +115 -1
  40. package/dist/cjs/extractor/literalToAst.js.map +2 -2
  41. package/dist/cjs/extractor/loadFile.js +20 -2
  42. package/dist/cjs/extractor/loadFile.js.map +2 -2
  43. package/dist/cjs/extractor/loadTamagui.js +432 -15
  44. package/dist/cjs/extractor/loadTamagui.js.map +2 -2
  45. package/dist/cjs/extractor/logLines.js +43 -3
  46. package/dist/cjs/extractor/logLines.js.map +2 -2
  47. package/dist/cjs/extractor/normalizeTernaries.js +85 -1
  48. package/dist/cjs/extractor/normalizeTernaries.js.map +2 -2
  49. package/dist/cjs/extractor/removeUnusedHooks.js +109 -1
  50. package/dist/cjs/extractor/removeUnusedHooks.js.map +2 -2
  51. package/dist/cjs/extractor/timer.js +52 -1
  52. package/dist/cjs/extractor/timer.js.map +2 -2
  53. package/dist/cjs/extractor/validHTMLAttributes.js +126 -1
  54. package/dist/cjs/extractor/validHTMLAttributes.js.map +2 -2
  55. package/dist/cjs/getPragmaOptions.js +67 -2
  56. package/dist/cjs/getPragmaOptions.js.map +2 -2
  57. package/dist/cjs/helpers/memoize.js +45 -1
  58. package/dist/cjs/helpers/memoize.js.map +2 -2
  59. package/dist/cjs/index.js +42 -1
  60. package/dist/cjs/index.js.map +2 -2
  61. package/dist/cjs/require.js +81 -5
  62. package/dist/cjs/require.js.map +2 -2
  63. package/dist/cjs/types.js +16 -1
  64. package/dist/cjs/types.js.map +2 -2
  65. package/dist/cjs/webpackPlugin.js +34 -1
  66. package/dist/cjs/webpackPlugin.js.map +2 -2
  67. package/dist/esm/constants.js +14 -1
  68. package/dist/esm/constants.js.map +2 -2
  69. package/dist/esm/constants.mjs +14 -1
  70. package/dist/esm/constants.mjs.map +2 -2
  71. package/dist/esm/extractor/accessSafe.js +18 -1
  72. package/dist/esm/extractor/accessSafe.js.map +2 -2
  73. package/dist/esm/extractor/accessSafe.mjs +18 -1
  74. package/dist/esm/extractor/accessSafe.mjs.map +2 -2
  75. package/dist/esm/extractor/babelParse.js +31 -1
  76. package/dist/esm/extractor/babelParse.js.map +2 -2
  77. package/dist/esm/extractor/babelParse.mjs +31 -1
  78. package/dist/esm/extractor/babelParse.mjs.map +2 -2
  79. package/dist/esm/extractor/buildClassName.js +64 -1
  80. package/dist/esm/extractor/buildClassName.js.map +2 -2
  81. package/dist/esm/extractor/buildClassName.mjs +64 -1
  82. package/dist/esm/extractor/buildClassName.mjs.map +2 -2
  83. package/dist/esm/extractor/bundle.js +91 -1
  84. package/dist/esm/extractor/bundle.js.map +2 -2
  85. package/dist/esm/extractor/bundle.mjs +91 -1
  86. package/dist/esm/extractor/bundle.mjs.map +2 -2
  87. package/dist/esm/extractor/createEvaluator.js +51 -1
  88. package/dist/esm/extractor/createEvaluator.js.map +2 -2
  89. package/dist/esm/extractor/createEvaluator.mjs +51 -1
  90. package/dist/esm/extractor/createEvaluator.mjs.map +2 -2
  91. package/dist/esm/extractor/createExtractor.js +1613 -15
  92. package/dist/esm/extractor/createExtractor.js.map +2 -2
  93. package/dist/esm/extractor/createExtractor.mjs +1613 -15
  94. package/dist/esm/extractor/createExtractor.mjs.map +2 -2
  95. package/dist/esm/extractor/ensureImportingConcat.js +30 -1
  96. package/dist/esm/extractor/ensureImportingConcat.js.map +2 -2
  97. package/dist/esm/extractor/ensureImportingConcat.mjs +30 -1
  98. package/dist/esm/extractor/ensureImportingConcat.mjs.map +2 -2
  99. package/dist/esm/extractor/evaluateAstNode.js +96 -1
  100. package/dist/esm/extractor/evaluateAstNode.js.map +2 -2
  101. package/dist/esm/extractor/evaluateAstNode.mjs +96 -1
  102. package/dist/esm/extractor/evaluateAstNode.mjs.map +2 -2
  103. package/dist/esm/extractor/extractHelpers.js +161 -1
  104. package/dist/esm/extractor/extractHelpers.js.map +2 -2
  105. package/dist/esm/extractor/extractHelpers.mjs +161 -1
  106. package/dist/esm/extractor/extractHelpers.mjs.map +2 -2
  107. package/dist/esm/extractor/extractMediaStyle.js +158 -1
  108. package/dist/esm/extractor/extractMediaStyle.js.map +2 -2
  109. package/dist/esm/extractor/extractMediaStyle.mjs +158 -1
  110. package/dist/esm/extractor/extractMediaStyle.mjs.map +2 -2
  111. package/dist/esm/extractor/extractToClassNames.js +379 -13
  112. package/dist/esm/extractor/extractToClassNames.js.map +2 -2
  113. package/dist/esm/extractor/extractToClassNames.mjs +379 -13
  114. package/dist/esm/extractor/extractToClassNames.mjs.map +2 -2
  115. package/dist/esm/extractor/findTopmostFunction.js +19 -1
  116. package/dist/esm/extractor/findTopmostFunction.js.map +2 -2
  117. package/dist/esm/extractor/findTopmostFunction.mjs +19 -1
  118. package/dist/esm/extractor/findTopmostFunction.mjs.map +2 -2
  119. package/dist/esm/extractor/generatedUid.js +25 -1
  120. package/dist/esm/extractor/generatedUid.js.map +2 -2
  121. package/dist/esm/extractor/generatedUid.mjs +25 -1
  122. package/dist/esm/extractor/generatedUid.mjs.map +2 -2
  123. package/dist/esm/extractor/getPrefixLogs.js +7 -1
  124. package/dist/esm/extractor/getPrefixLogs.js.map +2 -2
  125. package/dist/esm/extractor/getPrefixLogs.mjs +7 -1
  126. package/dist/esm/extractor/getPrefixLogs.mjs.map +2 -2
  127. package/dist/esm/extractor/getPropValueFromAttributes.js +55 -1
  128. package/dist/esm/extractor/getPropValueFromAttributes.js.map +2 -2
  129. package/dist/esm/extractor/getPropValueFromAttributes.mjs +55 -1
  130. package/dist/esm/extractor/getPropValueFromAttributes.mjs.map +2 -2
  131. package/dist/esm/extractor/getSourceModule.js +69 -1
  132. package/dist/esm/extractor/getSourceModule.js.map +2 -2
  133. package/dist/esm/extractor/getSourceModule.mjs +69 -1
  134. package/dist/esm/extractor/getSourceModule.mjs.map +2 -2
  135. package/dist/esm/extractor/getStaticBindingsForScope.js +190 -1
  136. package/dist/esm/extractor/getStaticBindingsForScope.js.map +2 -2
  137. package/dist/esm/extractor/getStaticBindingsForScope.mjs +190 -1
  138. package/dist/esm/extractor/getStaticBindingsForScope.mjs.map +2 -2
  139. package/dist/esm/extractor/hoistClassNames.js +40 -1
  140. package/dist/esm/extractor/hoistClassNames.js.map +2 -2
  141. package/dist/esm/extractor/hoistClassNames.mjs +40 -1
  142. package/dist/esm/extractor/hoistClassNames.mjs.map +2 -2
  143. package/dist/esm/extractor/literalToAst.js +80 -1
  144. package/dist/esm/extractor/literalToAst.js.map +2 -2
  145. package/dist/esm/extractor/literalToAst.mjs +80 -1
  146. package/dist/esm/extractor/literalToAst.mjs.map +2 -2
  147. package/dist/esm/extractor/loadFile.js +19 -2
  148. package/dist/esm/extractor/loadFile.js.map +2 -2
  149. package/dist/esm/extractor/loadFile.mjs +19 -2
  150. package/dist/esm/extractor/loadFile.mjs.map +2 -2
  151. package/dist/esm/extractor/loadTamagui.js +396 -15
  152. package/dist/esm/extractor/loadTamagui.js.map +2 -2
  153. package/dist/esm/extractor/loadTamagui.mjs +396 -15
  154. package/dist/esm/extractor/loadTamagui.mjs.map +2 -2
  155. package/dist/esm/extractor/logLines.js +19 -3
  156. package/dist/esm/extractor/logLines.js.map +2 -2
  157. package/dist/esm/extractor/logLines.mjs +19 -3
  158. package/dist/esm/extractor/logLines.mjs.map +2 -2
  159. package/dist/esm/extractor/normalizeTernaries.js +51 -1
  160. package/dist/esm/extractor/normalizeTernaries.js.map +2 -2
  161. package/dist/esm/extractor/normalizeTernaries.mjs +51 -1
  162. package/dist/esm/extractor/normalizeTernaries.mjs.map +2 -2
  163. package/dist/esm/extractor/removeUnusedHooks.js +75 -1
  164. package/dist/esm/extractor/removeUnusedHooks.js.map +2 -2
  165. package/dist/esm/extractor/removeUnusedHooks.mjs +75 -1
  166. package/dist/esm/extractor/removeUnusedHooks.mjs.map +2 -2
  167. package/dist/esm/extractor/timer.js +28 -1
  168. package/dist/esm/extractor/timer.js.map +2 -2
  169. package/dist/esm/extractor/timer.mjs +28 -1
  170. package/dist/esm/extractor/timer.mjs.map +2 -2
  171. package/dist/esm/extractor/validHTMLAttributes.js +101 -1
  172. package/dist/esm/extractor/validHTMLAttributes.js.map +2 -2
  173. package/dist/esm/extractor/validHTMLAttributes.mjs +101 -1
  174. package/dist/esm/extractor/validHTMLAttributes.mjs.map +2 -2
  175. package/dist/esm/getPragmaOptions.js +43 -2
  176. package/dist/esm/getPragmaOptions.js.map +2 -2
  177. package/dist/esm/getPragmaOptions.mjs +43 -2
  178. package/dist/esm/getPragmaOptions.mjs.map +2 -2
  179. package/dist/esm/helpers/memoize.js +21 -1
  180. package/dist/esm/helpers/memoize.js.map +2 -2
  181. package/dist/esm/helpers/memoize.mjs +21 -1
  182. package/dist/esm/helpers/memoize.mjs.map +2 -2
  183. package/dist/esm/index.js +15 -1
  184. package/dist/esm/index.js.map +2 -2
  185. package/dist/esm/index.mjs +15 -1
  186. package/dist/esm/index.mjs.map +2 -2
  187. package/dist/esm/require.js +55 -5
  188. package/dist/esm/require.js.map +2 -2
  189. package/dist/esm/require.mjs +55 -5
  190. package/dist/esm/require.mjs.map +2 -2
  191. package/dist/esm/webpackPlugin.js +10 -1
  192. package/dist/esm/webpackPlugin.js.map +2 -2
  193. package/dist/esm/webpackPlugin.mjs +10 -1
  194. package/dist/esm/webpackPlugin.mjs.map +2 -2
  195. package/package.json +14 -14
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/extractor/getStaticBindingsForScope.ts"],
4
4
  "sourcesContent": ["import { ChildProcess, fork } from 'child_process'\nimport { dirname, extname, join, resolve } from 'path'\n\nimport { Binding, NodePath } from '@babel/traverse'\nimport * as t from '@babel/types'\n\nimport { evaluateAstNode } from './evaluateAstNode.js'\nimport { getSourceModule } from './getSourceModule.js'\n\nconst isLocalImport = (path: string) => path.startsWith('.') || path.startsWith('/')\n\nfunction resolveImportPath(sourcePath: string, path: string) {\n const sourceDir = dirname(sourcePath)\n if (isLocalImport(path)) {\n if (extname(path) === '') {\n path += '.js'\n }\n return resolve(sourceDir, path)\n }\n return path\n}\n\nconst cache = new Map()\nconst pending = new Map<string, Promise<any>>()\n\nconst loadCmd = `${join(__dirname, 'loadFile.js')}`\n\nlet exited = false\n\nlet child: ChildProcess | null = null\n\nfunction forkChild() {\n child = fork(loadCmd, [], {\n execArgv: ['-r', 'esbuild-register'],\n detached: false,\n stdio: 'ignore',\n })\n}\n\nexport function cleanupBeforeExit() {\n if (exited) return\n if (!child) return\n child.removeAllListeners()\n child.unref()\n child.disconnect()\n child.kill()\n exited = true\n}\n\nprocess.once('SIGTERM', cleanupBeforeExit)\nprocess.once('SIGINT', cleanupBeforeExit)\nprocess.once('beforeExit', cleanupBeforeExit)\n\nfunction importModule(path: string) {\n if (!child) {\n forkChild()\n }\n if (pending.has(path)) {\n return pending.get(path)\n }\n const promise = new Promise((res, rej) => {\n if (!child) return\n if (cache.size > 2000) {\n cache.clear()\n }\n if (cache.has(path)) {\n return cache.get(path)\n }\n const listener = (msg: any) => {\n if (!child) return\n if (!msg) return\n if (typeof msg !== 'string') return\n if (msg[0] === '-') {\n rej(new Error(msg.slice(1)))\n return\n }\n child.removeListener('message', listener)\n const val = JSON.parse(msg)\n cache.set(path, val)\n res(val)\n }\n child.once('message', listener)\n child.send(`${path.replace('.js', '')}`)\n })\n pending.set(path, promise)\n return promise\n}\n\nexport async function getStaticBindingsForScope(\n scope: NodePath<t.JSXElement>['scope'],\n whitelist: string[] = [],\n sourcePath: string,\n bindingCache: Record<string, string | null>,\n shouldPrintDebug: boolean | 'verbose'\n): Promise<Record<string, any>> {\n const bindings: Record<string, Binding> = scope.getAllBindings() as any\n const ret: Record<string, any> = {}\n\n if (\n shouldPrintDebug\n ) {\n // prettier-ignore\n // console.log(' ', Object.keys(bindings).length, 'variables in scope')\n // .map(x => bindings[x].identifier?.name).join(', ')\n }\n\n // on react native at least it doesnt find some bindings? not sure why\n // lets add in whitelisted imports if they exist\n const program = scope.getProgramParent().block as t.Program\n for (const node of program.body) {\n if (t.isImportDeclaration(node)) {\n const importPath = node.source.value\n if (!node.specifiers.length) continue\n if (!isLocalImport(importPath)) {\n continue\n }\n const moduleName = resolveImportPath(sourcePath, importPath)\n const isOnWhitelist = whitelist.some((test) => moduleName.endsWith(test))\n if (!isOnWhitelist) continue\n try {\n const src = await importModule(moduleName)\n if (!src) continue\n for (const specifier of node.specifiers) {\n if (t.isImportSpecifier(specifier) && t.isIdentifier(specifier.imported)) {\n if (typeof src[specifier.imported.name] !== 'undefined') {\n const val = src[specifier.local.name]\n ret[specifier.local.name] = val\n }\n }\n }\n } catch (err: any) {\n if (shouldPrintDebug) {\n // eslint-disable-next-line no-console\n console.warn(\n ` | Skipping partial evaluation of constant file: ${moduleName} (DEBUG=tamagui for more)`\n )\n } else if (process.env.DEBUG?.startsWith('tamagui')) {\n // eslint-disable-next-line no-console\n console.log(`Error in partial evaluation`, err.message, err.stack)\n }\n }\n }\n }\n\n if (!bindingCache) {\n throw new Error('BindingCache is a required param')\n }\n\n for (const k in bindings) {\n const binding = bindings[k]\n\n // check to see if the item is a module\n const sourceModule = getSourceModule(k, binding)\n if (sourceModule) {\n if (!sourceModule.sourceModule) {\n continue\n }\n\n const moduleName = resolveImportPath(sourcePath, sourceModule.sourceModule)\n const isOnWhitelist = whitelist.some((test) => moduleName.endsWith(test))\n\n // TODO we could cache this at the file level.. and check if its been touched since\n\n if (isOnWhitelist) {\n const src = importModule(moduleName)\n if (!src) {\n // eslint-disable-next-line no-console\n console.log(\n ` | \u26A0\uFE0F Missing file ${moduleName} via ${sourcePath} import ${sourceModule.sourceModule}?`\n )\n return {}\n }\n if (sourceModule.destructured) {\n if (sourceModule.imported) {\n ret[k] = src[sourceModule.imported]\n }\n } else {\n ret[k] = src\n }\n }\n continue\n }\n\n const { parent } = binding.path\n\n if (!t.isVariableDeclaration(parent) || parent.kind !== 'const') {\n continue\n }\n\n // pick out the right variable declarator\n const dec = parent.declarations.find((d) => t.isIdentifier(d.id) && d.id.name === k)\n\n // if init is not set, there's nothing to evaluate\n // TODO: handle spread syntax\n if (!dec || !dec.init) {\n continue\n }\n\n // missing start/end will break caching\n if (typeof dec.id.start !== 'number' || typeof dec.id.end !== 'number') {\n // eslint-disable-next-line no-console\n console.error('dec.id.start/end is not a number')\n continue\n }\n\n if (!t.isIdentifier(dec.id)) {\n // eslint-disable-next-line no-console\n console.error('dec is not an identifier')\n continue\n }\n\n const cacheKey = `${dec.id.name}_${dec.id.start}-${dec.id.end}`\n\n // retrieve value from cache\n if (Object.hasOwnProperty.call(bindingCache, cacheKey)) {\n ret[k] = bindingCache[cacheKey]\n continue\n }\n // retrieve value from cache\n if (Object.hasOwnProperty.call(bindingCache, cacheKey)) {\n ret[k] = bindingCache[cacheKey]\n continue\n }\n\n // evaluate\n try {\n ret[k] = evaluateAstNode(dec.init, undefined, shouldPrintDebug)\n bindingCache[cacheKey] = ret[k]\n continue\n } catch {\n // skip\n }\n }\n\n return ret\n}\n"],
5
- "mappings": "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",
6
- "names": ["getStaticBindingsForScope_exports", "__export", "cleanupBeforeExit", "getStaticBindingsForScope", "__toCommonJS", "import_child_process", "import_path", "t", "import_evaluateAstNode", "import_getSourceModule", "isLocalImport", "path", "resolveImportPath", "sourcePath", "sourceDir", "cache", "pending", "loadCmd", "exited", "child", "forkChild", "importModule", "promise", "res", "rej", "listener", "msg", "val", "scope", "whitelist", "bindingCache", "shouldPrintDebug", "_a", "bindings", "ret", "program", "node", "importPath", "moduleName", "test", "src", "specifier", "err", "k", "binding", "sourceModule", "parent", "dec", "d", "cacheKey"]
5
+ "mappings": "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",
6
+ "names": []
7
7
  }
@@ -1,2 +1,75 @@
1
- "use strict";var m=Object.create;var s=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var b=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var y=(i,n)=>{for(var t in n)s(i,t,{get:n[t],enumerable:!0})},u=(i,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let e of v(n))!h.call(i,e)&&e!==t&&s(i,e,{get:()=>n[e],enumerable:!(o=E(n,e))||o.enumerable});return i};var L=(i,n,t)=>(t=i!=null?m(b(i)):{},u(n||!i||!i.__esModule?s(t,"default",{value:i,enumerable:!0}):t,i)),P=i=>u(s({},"__esModule",{value:!0}),i);var S={};y(S,{hoistClassNames:()=>c});module.exports=P(S);var r=L(require("@babel/types"));function c(i,n,t){const o=c.bind(null,i,n);if(r.isStringLiteral(t)){if(t.value.trim()==="")return t;if(n[t.value])return n[t.value];const a=e(t);return n[t.value]=a,a}if(r.isBinaryExpression(t))return r.binaryExpression(t.operator,o(t.left),o(t.right));if(r.isLogicalExpression(t))return r.logicalExpression(t.operator,o(t.left),o(t.right));if(r.isConditionalExpression(t))return r.conditionalExpression(t.test,o(t.consequent),o(t.alternate));return t;function e(a){const l=i.scope.generateUidIdentifier("cn"),f=i.findParent(g=>g.isProgram());if(!f)throw new Error("no program?");const d=r.variableDeclaration("const",[r.variableDeclarator(l,r.stringLiteral(` ${a.value}`))]);return f.unshiftContainer("body",d),l}}0&&(module.exports={hoistClassNames});
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var hoistClassNames_exports = {};
30
+ __export(hoistClassNames_exports, {
31
+ hoistClassNames: () => hoistClassNames
32
+ });
33
+ module.exports = __toCommonJS(hoistClassNames_exports);
34
+ var t = __toESM(require("@babel/types"));
35
+ function hoistClassNames(path, existing, expr) {
36
+ const hoist = hoistClassNames.bind(null, path, existing);
37
+ if (t.isStringLiteral(expr)) {
38
+ if (expr.value.trim() === "") {
39
+ return expr;
40
+ }
41
+ if (existing[expr.value]) {
42
+ return existing[expr.value];
43
+ }
44
+ const identifier = replaceStringWithVariable(expr);
45
+ existing[expr.value] = identifier;
46
+ return identifier;
47
+ }
48
+ if (t.isBinaryExpression(expr)) {
49
+ return t.binaryExpression(expr.operator, hoist(expr.left), hoist(expr.right));
50
+ }
51
+ if (t.isLogicalExpression(expr)) {
52
+ return t.logicalExpression(expr.operator, hoist(expr.left), hoist(expr.right));
53
+ }
54
+ if (t.isConditionalExpression(expr)) {
55
+ return t.conditionalExpression(expr.test, hoist(expr.consequent), hoist(expr.alternate));
56
+ }
57
+ return expr;
58
+ function replaceStringWithVariable(str) {
59
+ const uid = path.scope.generateUidIdentifier("cn");
60
+ const parent = path.findParent((path2) => path2.isProgram());
61
+ if (!parent)
62
+ throw new Error(`no program?`);
63
+ const variable = t.variableDeclaration("const", [
64
+ // adding a space for extra safety
65
+ t.variableDeclarator(uid, t.stringLiteral(` ${str.value}`))
66
+ ]);
67
+ parent.unshiftContainer("body", variable);
68
+ return uid;
69
+ }
70
+ }
71
+ // Annotate the CommonJS export names for ESM import in node:
72
+ 0 && (module.exports = {
73
+ hoistClassNames
74
+ });
2
75
  //# sourceMappingURL=hoistClassNames.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/extractor/hoistClassNames.ts"],
4
4
  "sourcesContent": ["import { NodePath } from '@babel/traverse'\nimport * as t from '@babel/types'\n\nexport function hoistClassNames(\n path: NodePath<t.JSXElement>,\n existing: { [key: string]: t.Identifier },\n expr: t.Expression\n) {\n const hoist = hoistClassNames.bind(null, path, existing)\n if (t.isStringLiteral(expr)) {\n if (expr.value.trim() === '') {\n return expr\n }\n if (existing[expr.value]) {\n return existing[expr.value]\n }\n const identifier = replaceStringWithVariable(expr)\n existing[expr.value] = identifier\n return identifier\n }\n if (t.isBinaryExpression(expr)) {\n return t.binaryExpression(expr.operator, hoist(expr.left), hoist(expr.right))\n }\n if (t.isLogicalExpression(expr)) {\n return t.logicalExpression(expr.operator, hoist(expr.left), hoist(expr.right))\n }\n if (t.isConditionalExpression(expr)) {\n return t.conditionalExpression(expr.test, hoist(expr.consequent), hoist(expr.alternate))\n }\n return expr\n\n function replaceStringWithVariable(str: t.StringLiteral): t.Identifier {\n // hoist outside fn!\n const uid = path.scope.generateUidIdentifier('cn')\n const parent = path.findParent((path) => path.isProgram())\n if (!parent) throw new Error(`no program?`)\n const variable = t.variableDeclaration('const', [\n // adding a space for extra safety\n t.variableDeclarator(uid, t.stringLiteral(` ${str.value}`)),\n ])\n // @ts-ignore\n parent.unshiftContainer('body', variable)\n return uid\n }\n}\n"],
5
- "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAAmB,2BAEZ,SAASF,EACdG,EACAC,EACAC,EACA,CACA,MAAMC,EAAQN,EAAgB,KAAK,KAAMG,EAAMC,CAAQ,EACvD,GAAIF,EAAE,gBAAgBG,CAAI,EAAG,CAC3B,GAAIA,EAAK,MAAM,KAAK,IAAM,GACxB,OAAOA,EAET,GAAID,EAASC,EAAK,KAAK,EACrB,OAAOD,EAASC,EAAK,KAAK,EAE5B,MAAME,EAAaC,EAA0BH,CAAI,EACjD,OAAAD,EAASC,EAAK,KAAK,EAAIE,EAChBA,CACT,CACA,GAAIL,EAAE,mBAAmBG,CAAI,EAC3B,OAAOH,EAAE,iBAAiBG,EAAK,SAAUC,EAAMD,EAAK,IAAI,EAAGC,EAAMD,EAAK,KAAK,CAAC,EAE9E,GAAIH,EAAE,oBAAoBG,CAAI,EAC5B,OAAOH,EAAE,kBAAkBG,EAAK,SAAUC,EAAMD,EAAK,IAAI,EAAGC,EAAMD,EAAK,KAAK,CAAC,EAE/E,GAAIH,EAAE,wBAAwBG,CAAI,EAChC,OAAOH,EAAE,sBAAsBG,EAAK,KAAMC,EAAMD,EAAK,UAAU,EAAGC,EAAMD,EAAK,SAAS,CAAC,EAEzF,OAAOA,EAEP,SAASG,EAA0BC,EAAoC,CAErE,MAAMC,EAAMP,EAAK,MAAM,sBAAsB,IAAI,EAC3CQ,EAASR,EAAK,WAAYA,GAASA,EAAK,UAAU,CAAC,EACzD,GAAI,CAACQ,EAAQ,MAAM,IAAI,MAAM,aAAa,EAC1C,MAAMC,EAAWV,EAAE,oBAAoB,QAAS,CAE9CA,EAAE,mBAAmBQ,EAAKR,EAAE,cAAc,IAAIO,EAAI,OAAO,CAAC,CAC5D,CAAC,EAED,OAAAE,EAAO,iBAAiB,OAAQC,CAAQ,EACjCF,CACT,CACF",
6
- "names": ["hoistClassNames_exports", "__export", "hoistClassNames", "__toCommonJS", "t", "path", "existing", "expr", "hoist", "identifier", "replaceStringWithVariable", "str", "uid", "parent", "variable"]
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,QAAmB;AAEZ,SAAS,gBACd,MACA,UACA,MACA;AACA,QAAM,QAAQ,gBAAgB,KAAK,MAAM,MAAM,QAAQ;AACvD,MAAI,EAAE,gBAAgB,IAAI,GAAG;AAC3B,QAAI,KAAK,MAAM,KAAK,MAAM,IAAI;AAC5B,aAAO;AAAA,IACT;AACA,QAAI,SAAS,KAAK,KAAK,GAAG;AACxB,aAAO,SAAS,KAAK,KAAK;AAAA,IAC5B;AACA,UAAM,aAAa,0BAA0B,IAAI;AACjD,aAAS,KAAK,KAAK,IAAI;AACvB,WAAO;AAAA,EACT;AACA,MAAI,EAAE,mBAAmB,IAAI,GAAG;AAC9B,WAAO,EAAE,iBAAiB,KAAK,UAAU,MAAM,KAAK,IAAI,GAAG,MAAM,KAAK,KAAK,CAAC;AAAA,EAC9E;AACA,MAAI,EAAE,oBAAoB,IAAI,GAAG;AAC/B,WAAO,EAAE,kBAAkB,KAAK,UAAU,MAAM,KAAK,IAAI,GAAG,MAAM,KAAK,KAAK,CAAC;AAAA,EAC/E;AACA,MAAI,EAAE,wBAAwB,IAAI,GAAG;AACnC,WAAO,EAAE,sBAAsB,KAAK,MAAM,MAAM,KAAK,UAAU,GAAG,MAAM,KAAK,SAAS,CAAC;AAAA,EACzF;AACA,SAAO;AAEP,WAAS,0BAA0B,KAAoC;AAErE,UAAM,MAAM,KAAK,MAAM,sBAAsB,IAAI;AACjD,UAAM,SAAS,KAAK,WAAW,CAACA,UAASA,MAAK,UAAU,CAAC;AACzD,QAAI,CAAC;AAAQ,YAAM,IAAI,MAAM,aAAa;AAC1C,UAAM,WAAW,EAAE,oBAAoB,SAAS;AAAA;AAAA,MAE9C,EAAE,mBAAmB,KAAK,EAAE,cAAc,IAAI,IAAI,OAAO,CAAC;AAAA,IAC5D,CAAC;AAED,WAAO,iBAAiB,QAAQ,QAAQ;AACxC,WAAO;AAAA,EACT;AACF;",
6
+ "names": ["path"]
7
7
  }
@@ -1,2 +1,116 @@
1
- "use strict";var c=Object.create;var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var l=Object.getPrototypeOf,L=Object.prototype.hasOwnProperty;var d=(r,e)=>{for(var t in e)a(r,t,{get:e[t],enumerable:!0})},o=(r,e,t,u)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of y(e))!L.call(r,i)&&i!==t&&a(r,i,{get:()=>e[i],enumerable:!(u=p(e,i))||u.enumerable});return r};var m=(r,e,t)=>(t=r!=null?c(l(r)):{},o(e||!r||!r.__esModule?a(t,"default",{value:r,enumerable:!0}):t,r)),E=r=>o(a({},"__esModule",{value:!0}),r);var g={};d(g,{astToLiteral:()=>s,literalToAst:()=>f});module.exports=E(g);var n=m(require("@babel/types"));function f(r){if(r===null)return n.nullLiteral();switch(typeof r){case"function":throw new Error("Unsupported");case"number":return n.numericLiteral(r);case"string":return n.stringLiteral(r);case"boolean":return n.booleanLiteral(r);case"undefined":return n.unaryExpression("void",n.numericLiteral(0),!0);default:return Array.isArray(r)?n.arrayExpression(r.map(f)):n.objectExpression(Object.keys(r).filter(e=>typeof r[e]<"u").map(e=>n.objectProperty(n.stringLiteral(e),f(r[e]))))}}const b=["BooleanLiteral","StringLiteral","NumericLiteral"];function s(r){if(r){if(b.includes(r.type))return r.value;if(!(r.name==="undefined"&&!r.value)){if(n.isNullLiteral(r))return null;if(n.isObjectExpression(r))return x(r.properties);if(n.isArrayExpression(r))return r.elements.reduce((e,t)=>[...e,...(t==null?void 0:t.type)==="SpreadElement"?s(t.argument):[s(t)]],[])}}}function x(r){return r.reduce((e,t)=>{if(t.type==="SpreadElement")return{...e,...s(t.argument)};if(t.type!=="ObjectMethod"){const u=s(t.value);if(u!==void 0)return{...e,[t.key.name]:u}}return e},{})}0&&(module.exports={astToLiteral,literalToAst});
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var literalToAst_exports = {};
30
+ __export(literalToAst_exports, {
31
+ astToLiteral: () => astToLiteral,
32
+ literalToAst: () => literalToAst
33
+ });
34
+ module.exports = __toCommonJS(literalToAst_exports);
35
+ var t = __toESM(require("@babel/types"));
36
+ function literalToAst(literal) {
37
+ if (literal === null) {
38
+ return t.nullLiteral();
39
+ }
40
+ switch (typeof literal) {
41
+ case "function":
42
+ throw new Error("Unsupported");
43
+ case "number":
44
+ return t.numericLiteral(literal);
45
+ case "string":
46
+ return t.stringLiteral(literal);
47
+ case "boolean":
48
+ return t.booleanLiteral(literal);
49
+ case "undefined":
50
+ return t.unaryExpression("void", t.numericLiteral(0), true);
51
+ default:
52
+ if (Array.isArray(literal)) {
53
+ return t.arrayExpression(literal.map(literalToAst));
54
+ }
55
+ return t.objectExpression(
56
+ Object.keys(literal).filter((k) => {
57
+ return typeof literal[k] !== "undefined";
58
+ }).map((k) => {
59
+ return t.objectProperty(t.stringLiteral(k), literalToAst(literal[k]));
60
+ })
61
+ );
62
+ }
63
+ }
64
+ const easyPeasies = ["BooleanLiteral", "StringLiteral", "NumericLiteral"];
65
+ function astToLiteral(node) {
66
+ if (!node) {
67
+ return;
68
+ }
69
+ if (easyPeasies.includes(node.type)) {
70
+ return node.value;
71
+ }
72
+ if (node.name === "undefined" && !node.value) {
73
+ return void 0;
74
+ }
75
+ if (t.isNullLiteral(node)) {
76
+ return null;
77
+ }
78
+ if (t.isObjectExpression(node)) {
79
+ return computeProps(node.properties);
80
+ }
81
+ if (t.isArrayExpression(node)) {
82
+ return node.elements.reduce(
83
+ // @ts-ignore
84
+ (acc, element) => [
85
+ ...acc,
86
+ ...(element == null ? void 0 : element.type) === "SpreadElement" ? astToLiteral(element.argument) : [astToLiteral(element)]
87
+ ],
88
+ []
89
+ );
90
+ }
91
+ }
92
+ function computeProps(props) {
93
+ return props.reduce((acc, prop) => {
94
+ if (prop.type === "SpreadElement") {
95
+ return {
96
+ ...acc,
97
+ ...astToLiteral(prop.argument)
98
+ };
99
+ } else if (prop.type !== "ObjectMethod") {
100
+ const val = astToLiteral(prop.value);
101
+ if (val !== void 0) {
102
+ return {
103
+ ...acc,
104
+ [prop.key.name]: val
105
+ };
106
+ }
107
+ }
108
+ return acc;
109
+ }, {});
110
+ }
111
+ // Annotate the CommonJS export names for ESM import in node:
112
+ 0 && (module.exports = {
113
+ astToLiteral,
114
+ literalToAst
115
+ });
2
116
  //# sourceMappingURL=literalToAst.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/extractor/literalToAst.ts"],
4
4
  "sourcesContent": ["import * as t from '@babel/types'\n\nexport function literalToAst(literal: any): t.Expression {\n if (literal === null) {\n return t.nullLiteral()\n }\n switch (typeof literal) {\n case 'function':\n throw new Error('Unsupported')\n case 'number':\n return t.numericLiteral(literal)\n case 'string':\n return t.stringLiteral(literal)\n case 'boolean':\n return t.booleanLiteral(literal)\n case 'undefined':\n return t.unaryExpression('void', t.numericLiteral(0), true)\n default:\n if (Array.isArray(literal)) {\n return t.arrayExpression(literal.map(literalToAst))\n }\n return t.objectExpression(\n Object.keys(literal)\n .filter((k) => {\n return typeof literal[k] !== 'undefined'\n })\n .map((k) => {\n return t.objectProperty(t.stringLiteral(k), literalToAst(literal[k]))\n })\n )\n }\n}\n\nconst easyPeasies = ['BooleanLiteral', 'StringLiteral', 'NumericLiteral']\n\nexport function astToLiteral(node: any) {\n if (!node) {\n return\n }\n if (easyPeasies.includes(node.type)) {\n return node.value\n }\n if (node.name === 'undefined' && !node.value) {\n return undefined\n }\n if (t.isNullLiteral(node)) {\n return null\n }\n if (t.isObjectExpression(node)) {\n return computeProps(node.properties)\n }\n if (t.isArrayExpression(node)) {\n return node.elements.reduce(\n // @ts-ignore\n (acc, element) => [\n ...acc,\n ...(element?.type === 'SpreadElement'\n ? astToLiteral(element.argument)\n : [astToLiteral(element)]),\n ],\n []\n )\n }\n}\n\nfunction computeProps(props) {\n return props.reduce((acc, prop) => {\n if (prop.type === 'SpreadElement') {\n return {\n ...acc,\n ...astToLiteral(prop.argument),\n }\n } else if (prop.type !== 'ObjectMethod') {\n const val = astToLiteral(prop.value)\n if (val !== undefined) {\n return {\n ...acc,\n [prop.key.name]: val,\n }\n }\n }\n return acc\n }, {})\n}\n"],
5
- "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kBAAAE,EAAA,iBAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAAmB,2BAEZ,SAASF,EAAaG,EAA4B,CACvD,GAAIA,IAAY,KACd,OAAOD,EAAE,YAAY,EAEvB,OAAQ,OAAOC,EAAS,CACtB,IAAK,WACH,MAAM,IAAI,MAAM,aAAa,EAC/B,IAAK,SACH,OAAOD,EAAE,eAAeC,CAAO,EACjC,IAAK,SACH,OAAOD,EAAE,cAAcC,CAAO,EAChC,IAAK,UACH,OAAOD,EAAE,eAAeC,CAAO,EACjC,IAAK,YACH,OAAOD,EAAE,gBAAgB,OAAQA,EAAE,eAAe,CAAC,EAAG,EAAI,EAC5D,QACE,OAAI,MAAM,QAAQC,CAAO,EAChBD,EAAE,gBAAgBC,EAAQ,IAAIH,CAAY,CAAC,EAE7CE,EAAE,iBACP,OAAO,KAAKC,CAAO,EAChB,OAAQC,GACA,OAAOD,EAAQC,CAAC,EAAM,GAC9B,EACA,IAAKA,GACGF,EAAE,eAAeA,EAAE,cAAcE,CAAC,EAAGJ,EAAaG,EAAQC,CAAC,CAAC,CAAC,CACrE,CACL,CACJ,CACF,CAEA,MAAMC,EAAc,CAAC,iBAAkB,gBAAiB,gBAAgB,EAEjE,SAASN,EAAaO,EAAW,CACtC,GAAKA,EAGL,IAAID,EAAY,SAASC,EAAK,IAAI,EAChC,OAAOA,EAAK,MAEd,GAAI,EAAAA,EAAK,OAAS,aAAe,CAACA,EAAK,OAGvC,IAAIJ,EAAE,cAAcI,CAAI,EACtB,OAAO,KAET,GAAIJ,EAAE,mBAAmBI,CAAI,EAC3B,OAAOC,EAAaD,EAAK,UAAU,EAErC,GAAIJ,EAAE,kBAAkBI,CAAI,EAC1B,OAAOA,EAAK,SAAS,OAEnB,CAACE,EAAKC,IAAY,CAChB,GAAGD,EACH,IAAIC,GAAA,YAAAA,EAAS,QAAS,gBAClBV,EAAaU,EAAQ,QAAQ,EAC7B,CAACV,EAAaU,CAAO,CAAC,CAC5B,EACA,CAAC,CACH,GAEJ,CAEA,SAASF,EAAaG,EAAO,CAC3B,OAAOA,EAAM,OAAO,CAACF,EAAKG,IAAS,CACjC,GAAIA,EAAK,OAAS,gBAChB,MAAO,CACL,GAAGH,EACH,GAAGT,EAAaY,EAAK,QAAQ,CAC/B,EACK,GAAIA,EAAK,OAAS,eAAgB,CACvC,MAAMC,EAAMb,EAAaY,EAAK,KAAK,EACnC,GAAIC,IAAQ,OACV,MAAO,CACL,GAAGJ,EACH,CAACG,EAAK,IAAI,IAAI,EAAGC,CACnB,CAEJ,CACA,OAAOJ,CACT,EAAG,CAAC,CAAC,CACP",
6
- "names": ["literalToAst_exports", "__export", "astToLiteral", "literalToAst", "__toCommonJS", "t", "literal", "k", "easyPeasies", "node", "computeProps", "acc", "element", "props", "prop", "val"]
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAmB;AAEZ,SAAS,aAAa,SAA4B;AACvD,MAAI,YAAY,MAAM;AACpB,WAAO,EAAE,YAAY;AAAA,EACvB;AACA,UAAQ,OAAO,SAAS;AAAA,IACtB,KAAK;AACH,YAAM,IAAI,MAAM,aAAa;AAAA,IAC/B,KAAK;AACH,aAAO,EAAE,eAAe,OAAO;AAAA,IACjC,KAAK;AACH,aAAO,EAAE,cAAc,OAAO;AAAA,IAChC,KAAK;AACH,aAAO,EAAE,eAAe,OAAO;AAAA,IACjC,KAAK;AACH,aAAO,EAAE,gBAAgB,QAAQ,EAAE,eAAe,CAAC,GAAG,IAAI;AAAA,IAC5D;AACE,UAAI,MAAM,QAAQ,OAAO,GAAG;AAC1B,eAAO,EAAE,gBAAgB,QAAQ,IAAI,YAAY,CAAC;AAAA,MACpD;AACA,aAAO,EAAE;AAAA,QACP,OAAO,KAAK,OAAO,EAChB,OAAO,CAAC,MAAM;AACb,iBAAO,OAAO,QAAQ,CAAC,MAAM;AAAA,QAC/B,CAAC,EACA,IAAI,CAAC,MAAM;AACV,iBAAO,EAAE,eAAe,EAAE,cAAc,CAAC,GAAG,aAAa,QAAQ,CAAC,CAAC,CAAC;AAAA,QACtE,CAAC;AAAA,MACL;AAAA,EACJ;AACF;AAEA,MAAM,cAAc,CAAC,kBAAkB,iBAAiB,gBAAgB;AAEjE,SAAS,aAAa,MAAW;AACtC,MAAI,CAAC,MAAM;AACT;AAAA,EACF;AACA,MAAI,YAAY,SAAS,KAAK,IAAI,GAAG;AACnC,WAAO,KAAK;AAAA,EACd;AACA,MAAI,KAAK,SAAS,eAAe,CAAC,KAAK,OAAO;AAC5C,WAAO;AAAA,EACT;AACA,MAAI,EAAE,cAAc,IAAI,GAAG;AACzB,WAAO;AAAA,EACT;AACA,MAAI,EAAE,mBAAmB,IAAI,GAAG;AAC9B,WAAO,aAAa,KAAK,UAAU;AAAA,EACrC;AACA,MAAI,EAAE,kBAAkB,IAAI,GAAG;AAC7B,WAAO,KAAK,SAAS;AAAA;AAAA,MAEnB,CAAC,KAAK,YAAY;AAAA,QAChB,GAAG;AAAA,QACH,IAAI,mCAAS,UAAS,kBAClB,aAAa,QAAQ,QAAQ,IAC7B,CAAC,aAAa,OAAO,CAAC;AAAA,MAC5B;AAAA,MACA,CAAC;AAAA,IACH;AAAA,EACF;AACF;AAEA,SAAS,aAAa,OAAO;AAC3B,SAAO,MAAM,OAAO,CAAC,KAAK,SAAS;AACjC,QAAI,KAAK,SAAS,iBAAiB;AACjC,aAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAG,aAAa,KAAK,QAAQ;AAAA,MAC/B;AAAA,IACF,WAAW,KAAK,SAAS,gBAAgB;AACvC,YAAM,MAAM,aAAa,KAAK,KAAK;AACnC,UAAI,QAAQ,QAAW;AACrB,eAAO;AAAA,UACL,GAAG;AAAA,UACH,CAAC,KAAK,IAAI,IAAI,GAAG;AAAA,QACnB;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AACP;",
6
+ "names": []
7
7
  }
@@ -1,3 +1,21 @@
1
- "use strict";process.on("message",e=>{var r,n,o;if(typeof e!="string")throw new Error(`Not a string: ${e}`);try{const s=require(e);(r=process.send)==null||r.call(process,JSON.stringify(s))}catch(s){s instanceof Error?(n=process.send)==null||n.call(process,`-${s.message}
2
- ${s.stack}`):(o=process.send)==null||o.call(process,`-${s}`)}}),setInterval(()=>{},1e3);
1
+ "use strict";
2
+ process.on("message", (path) => {
3
+ var _a, _b, _c;
4
+ if (typeof path !== "string") {
5
+ throw new Error(`Not a string: ${path}`);
6
+ }
7
+ try {
8
+ const out = require(path);
9
+ (_a = process.send) == null ? void 0 : _a.call(process, JSON.stringify(out));
10
+ } catch (err) {
11
+ if (err instanceof Error) {
12
+ (_b = process.send) == null ? void 0 : _b.call(process, `-${err.message}
13
+ ${err.stack}`);
14
+ } else {
15
+ (_c = process.send) == null ? void 0 : _c.call(process, `-${err}`);
16
+ }
17
+ }
18
+ });
19
+ setInterval(() => {
20
+ }, 1e3);
3
21
  //# sourceMappingURL=loadFile.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/extractor/loadFile.ts"],
4
4
  "sourcesContent": ["process.on('message', (path) => {\n if (typeof path !== 'string') {\n throw new Error(`Not a string: ${path}`)\n }\n try {\n const out = require(path)\n process.send?.(JSON.stringify(out))\n } catch (err) {\n if (err instanceof Error) {\n process.send?.(`-${err.message}\\n${err.stack}`)\n } else {\n process.send?.(`-${err}`)\n }\n }\n})\n\nsetInterval(() => {}, 1000)\n"],
5
- "mappings": "aAAA,QAAQ,GAAG,UAAYA,GAAS,CAAhC,IAAAC,EAAAC,EAAAC,EACE,GAAI,OAAOH,GAAS,SAClB,MAAM,IAAI,MAAM,iBAAiBA,GAAM,EAEzC,GAAI,CACF,MAAMI,EAAM,QAAQJ,CAAI,GACxBC,EAAA,QAAQ,OAAR,MAAAA,EAAA,aAAe,KAAK,UAAUG,CAAG,EACnC,OAASC,EAAP,CACIA,aAAe,OACjBH,EAAA,QAAQ,OAAR,MAAAA,EAAA,aAAe,IAAIG,EAAI;AAAA,EAAYA,EAAI,UAEvCF,EAAA,QAAQ,OAAR,MAAAA,EAAA,aAAe,IAAIE,IAEvB,CACF,CAAC,EAED,YAAY,IAAM,CAAC,EAAG,GAAI",
6
- "names": ["path", "_a", "_b", "_c", "out", "err"]
5
+ "mappings": ";AAAA,QAAQ,GAAG,WAAW,CAAC,SAAS;AAAhC;AACE,MAAI,OAAO,SAAS,UAAU;AAC5B,UAAM,IAAI,MAAM,iBAAiB,MAAM;AAAA,EACzC;AACA,MAAI;AACF,UAAM,MAAM,QAAQ,IAAI;AACxB,kBAAQ,SAAR,iCAAe,KAAK,UAAU,GAAG;AAAA,EACnC,SAAS,KAAP;AACA,QAAI,eAAe,OAAO;AACxB,oBAAQ,SAAR,iCAAe,IAAI,IAAI;AAAA,EAAY,IAAI;AAAA,IACzC,OAAO;AACL,oBAAQ,SAAR,iCAAe,IAAI;AAAA,IACrB;AAAA,EACF;AACF,CAAC;AAED,YAAY,MAAM;AAAC,GAAG,GAAI;",
6
+ "names": []
7
7
  }