@arcmantle/lit-jsx 1.0.6 → 1.0.7

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 (55) hide show
  1. package/README.md +22 -16
  2. package/dist/compiler/babel-plugin.d.ts +4 -0
  3. package/dist/compiler/babel-plugin.d.ts.map +1 -0
  4. package/dist/compiler/babel-plugin.js +20 -0
  5. package/dist/compiler/babel-plugin.js.map +1 -0
  6. package/dist/compiler/babel-traverse.d.ts +3 -0
  7. package/dist/compiler/babel-traverse.d.ts.map +1 -0
  8. package/dist/compiler/babel-traverse.js +7 -0
  9. package/dist/compiler/babel-traverse.js.map +1 -0
  10. package/dist/compiler/compiler-utils.d.ts +3 -2
  11. package/dist/compiler/compiler-utils.d.ts.map +1 -1
  12. package/dist/compiler/compiler-utils.js +25 -23
  13. package/dist/compiler/compiler-utils.js.map +1 -1
  14. package/dist/compiler/config.d.ts +5 -1
  15. package/dist/compiler/config.d.ts.map +1 -1
  16. package/dist/compiler/config.js +2 -2
  17. package/dist/compiler/config.js.map +1 -1
  18. package/dist/compiler/create-logger.d.ts +3 -0
  19. package/dist/compiler/create-logger.d.ts.map +1 -0
  20. package/dist/compiler/create-logger.js +32 -0
  21. package/dist/compiler/create-logger.js.map +1 -0
  22. package/dist/compiler/import-discovery.d.ts +43 -4
  23. package/dist/compiler/import-discovery.d.ts.map +1 -1
  24. package/dist/compiler/import-discovery.js +306 -160
  25. package/dist/compiler/import-discovery.js.map +1 -1
  26. package/dist/compiler/preprocess.d.ts +1 -1
  27. package/dist/compiler/preprocess.d.ts.map +1 -1
  28. package/dist/compiler/preprocess.js +5 -4
  29. package/dist/compiler/preprocess.js.map +1 -1
  30. package/dist/compiler/transpiler.js +4 -4
  31. package/dist/compiler/transpiler.js.map +1 -1
  32. package/dist/compiler/vite-plugin.d.ts +1 -0
  33. package/dist/compiler/vite-plugin.d.ts.map +1 -1
  34. package/dist/compiler/vite-plugin.js +9 -13
  35. package/dist/compiler/vite-plugin.js.map +1 -1
  36. package/dist/runtime/type-helpers.d.ts +24 -36
  37. package/dist/runtime/type-helpers.d.ts.map +1 -1
  38. package/dist/runtime/type-helpers.js +22 -34
  39. package/dist/runtime/type-helpers.js.map +1 -1
  40. package/package.json +5 -2
  41. package/src/compiler/babel-plugin.ts +23 -0
  42. package/src/compiler/babel-traverse.ts +7 -0
  43. package/src/compiler/compiler-utils.ts +35 -25
  44. package/src/compiler/config.ts +7 -2
  45. package/src/compiler/create-logger.ts +35 -0
  46. package/src/compiler/import-discovery.ts +381 -202
  47. package/src/compiler/preprocess.ts +9 -7
  48. package/src/compiler/transpiler.ts +4 -4
  49. package/src/compiler/vite-plugin.ts +16 -22
  50. package/src/runtime/type-helpers.ts +24 -36
  51. package/dist/compiler/babel-preset.d.ts +0 -6
  52. package/dist/compiler/babel-preset.d.ts.map +0 -1
  53. package/dist/compiler/babel-preset.js +0 -27
  54. package/dist/compiler/babel-preset.js.map +0 -1
  55. package/src/compiler/babel-preset.ts +0 -34
package/README.md CHANGED
@@ -225,23 +225,24 @@ Function components:
225
225
 
226
226
  ### Custom Element Integration
227
227
 
228
- Use `toJSX()` for type-safe custom element components:
228
+ Use `toComponent()` for type-safe custom element components:
229
229
 
230
230
  ```tsx
231
- import { toJSX } from '@arcmantle/lit-jsx';
231
+ import { toComponent } from '@arcmantle/lit-jsx';
232
232
  import { LitElement } from 'lit';
233
233
 
234
234
  export class MyButton extends LitElement {
235
235
  static tagName = 'my-button';
236
- static tag = toJSX(MyButton);
237
236
 
238
237
  render() {
239
238
  return html`<button><slot></slot></button>`;
240
239
  }
241
240
  }
242
241
 
243
- // Usage with type safety
244
- <MyButton.tag
242
+ const MyButtonComponent = toComponent(MyButton);
243
+
244
+ // Usage with type safety - compiler automatically detects this as a custom element
245
+ <MyButtonComponent
245
246
  class="custom-btn"
246
247
  onClick={() => console.log('Clicked!')}
247
248
  />
@@ -249,16 +250,14 @@ export class MyButton extends LitElement {
249
250
 
250
251
  #### Generic Custom Elements
251
252
 
252
- For custom elements with generic types, you can create type-safe JSX components using explicit type casting:
253
+ For custom elements with generic types, you must use explicit type annotations due to TypeScript's inability to forward generic parameters through `toComponent()`:
253
254
 
254
255
  ```tsx
255
- import { toJSX } from '@arcmantle/lit-jsx';
256
+ import { toComponent } from '@arcmantle/lit-jsx';
256
257
  import { LitElement } from 'lit';
257
258
 
258
259
  class DataList<T> extends LitElement {
259
260
  static tagName = 'data-list';
260
- // Type casting is required due to TypeScript's inability to forward generics
261
- static tag = toJSX(this) as <T>(props: JSX.JSXProps<DataList<T>>) => JSX.JSXElement;
262
261
 
263
262
  @property({ type: Array }) items: T[] = [];
264
263
  @property() renderItem?: (item: T) => TemplateResult;
@@ -274,24 +273,31 @@ class DataList<T> extends LitElement {
274
273
  }
275
274
  }
276
275
 
276
+ // ❌ This won't work - TypeScript can't forward the generic parameter
277
+ // const DataListComponent = toComponent(DataList);
278
+
279
+ // ✅ Required: Explicit type annotation to preserve generic functionality
280
+ const DataListComponent: <T>(props: JSX.JSXProps<DataList<T>>) => string =
281
+ toComponent(DataList);
282
+
277
283
  // Usage with explicit type parameter
278
- <DataList.tag<User>
284
+ <DataListComponent<User>
279
285
  items={users}
280
286
  renderItem={(user) => `${user.name} (${user.email})`}
281
287
  />
282
288
 
283
289
  // Type inference works for the renderItem callback
284
- <DataList.tag<Product>
290
+ <DataListComponent<Product>
285
291
  items={products}
286
292
  renderItem={(product) => `${product.name} - $${product.price}`}
287
293
  />
288
294
  ```
289
295
 
290
- **Note**: The current generic syntax requires explicit type casting due to TypeScript's limitations in forwarding generic parameters through static properties. If TypeScript gains the ability to forward generics in this context in the future, lit-jsx will implement a more seamless syntax.
296
+ **Important**: The explicit type annotation `<T>(props: JSX.JSXProps<DataList<T>>) => string` is **required** for generic custom elements. Without this annotation, TypeScript will lose the generic type information and you won't be able to use type parameters like `<User>` or `<Product>` when using the component.
291
297
 
292
298
  ### Dynamic Tag Names
293
299
 
294
- lit-jsx supports dynamic element types with the `.tag` property pattern:
300
+ lit-jsx supports dynamic element types using the `toTag()` helper:
295
301
 
296
302
  ```tsx
297
303
  import { toTag } from '@arcmantle/lit-jsx';
@@ -300,14 +306,14 @@ function ActionElement({ href, children }) {
300
306
  const Tag = toTag(href ? 'a' : 'button');
301
307
 
302
308
  return (
303
- <Tag.tag href={href} class="action-element">
309
+ <Tag href={href} class="action-element">
304
310
  {children}
305
- </Tag.tag>
311
+ </Tag>
306
312
  );
307
313
  }
308
314
  ```
309
315
 
310
- **Important**: Dynamic tag names must use the `.tag` property pattern for proper static template compilation.
316
+ The compiler automatically detects when `toTag()` is used and optimizes the template accordingly.
311
317
 
312
318
  ### Library Components
313
319
 
@@ -0,0 +1,4 @@
1
+ import type { PluginItem } from '@babel/core';
2
+ /** Compiles jsx to a combination of standard and compiled lit-html */
3
+ export declare const litJsxBabelPlugin: () => PluginItem;
4
+ //# sourceMappingURL=babel-plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"babel-plugin.d.ts","sourceRoot":"","sources":["../../src/compiler/babel-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQ9C,sEAAsE;AACtE,eAAO,MAAM,iBAAiB,QAAO,UAapC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import SyntaxJSX from '@babel/plugin-syntax-jsx';
2
+ import { postprocess } from './postprocess.js';
3
+ import { preprocess } from './preprocess.js';
4
+ import { transformJSXElement } from './transform-jsx.js';
5
+ /** Compiles jsx to a combination of standard and compiled lit-html */
6
+ export const litJsxBabelPlugin = () => {
7
+ return {
8
+ name: 'lit-jsx-transform',
9
+ inherits: SyntaxJSX.default,
10
+ visitor: {
11
+ JSXElement: transformJSXElement,
12
+ JSXFragment: transformJSXElement,
13
+ Program: {
14
+ enter: preprocess,
15
+ exit: postprocess,
16
+ },
17
+ },
18
+ };
19
+ };
20
+ //# sourceMappingURL=babel-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"babel-plugin.js","sourceRoot":"","sources":["../../src/compiler/babel-plugin.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,0BAA0B,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,sEAAsE;AACtE,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAe,EAAE;IACjD,OAAO;QACN,IAAI,EAAM,mBAAmB;QAC7B,QAAQ,EAAE,SAAS,CAAC,OAAO;QAC3B,OAAO,EAAG;YACT,UAAU,EAAG,mBAAmB;YAChC,WAAW,EAAE,mBAAmB;YAChC,OAAO,EAAM;gBACZ,KAAK,EAAE,UAAU;gBACjB,IAAI,EAAG,WAAW;aAClB;SACD;KACoB,CAAC;AACxB,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import _traverse from '@babel/traverse';
2
+ export declare let traverse: typeof _traverse;
3
+ //# sourceMappingURL=babel-traverse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"babel-traverse.d.ts","sourceRoot":"","sources":["../../src/compiler/babel-traverse.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,iBAAiB,CAAC;AAExC,eAAO,IAAI,QAAQ,EAAE,OAAO,SAAS,CAAC"}
@@ -0,0 +1,7 @@
1
+ import _traverse from '@babel/traverse';
2
+ export let traverse;
3
+ if (typeof _traverse === 'function')
4
+ traverse = _traverse;
5
+ else
6
+ traverse = _traverse.default;
7
+ //# sourceMappingURL=babel-traverse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"babel-traverse.js","sourceRoot":"","sources":["../../src/compiler/babel-traverse.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,iBAAiB,CAAC;AAExC,MAAM,CAAC,IAAI,QAA0B,CAAC;AACtC,IAAI,OAAO,SAAS,KAAK,UAAU;IAClC,QAAQ,GAAG,SAAS,CAAC;;IAErB,QAAQ,GAAI,SAAiB,CAAC,OAAO,CAAC"}
@@ -5,6 +5,7 @@ import { VARIABLES } from './config.js';
5
5
  export type Values<T> = T[keyof T];
6
6
  export declare const isComponent: (tagName: string) => boolean;
7
7
  export declare const getProgramFromPath: (path: NodePath) => t.Program;
8
+ export declare const getPathFilename: (path: NodePath) => string;
8
9
  export declare class Ensure {
9
10
  static findProgram(path: NodePath): NodePath<t.Program>;
10
11
  static import(importSource: (value: string) => boolean, importName: (value: string) => boolean, createImport: () => t.ImportDeclaration, program: t.Program, path: NodePath): void;
@@ -61,8 +62,8 @@ export type ValidJSXElement = t.JSXElement & {
61
62
  export declare const isValidJSXElement: (path: NodePath) => path is NodePath<ValidJSXElement>;
62
63
  export declare const isValidOpeningElement: (path: NodePath) => path is NodePath<t.JSXElement | t.JSXFragment>;
63
64
  export declare const getJSXElementName: (node: t.JSXElement) => string;
64
- export declare const isJSXCustomElementComponent: (nodeOrName: t.JSXElement | string) => boolean;
65
- export declare const isJSXFunctionElementComponent: (pathOrName: NodePath<t.JSXElement | t.JSXFragment> | string) => boolean;
65
+ export declare const isJSXCustomElementComponent: (path: NodePath<t.JSXElement | t.JSXFragment>) => boolean;
66
+ export declare const isJSXFunctionElementComponent: (path: NodePath<t.JSXElement | t.JSXFragment>) => boolean;
66
67
  export declare const isJSXElementPath: (path: NodePath) => path is NodePath<t.JSXElement>;
67
68
  export declare const isJSXFragmentPath: (path: NodePath) => path is NodePath<t.JSXFragment>;
68
69
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"compiler-utils.d.ts","sourceRoot":"","sources":["../../src/compiler/compiler-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler-utils.d.ts","sourceRoot":"","sources":["../../src/compiler/compiler-utils.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import * as t from '@babel/types';
2
2
  import { isMathmlTag } from '../shared/mathml-tags.js';
3
3
  import { isSvgTag } from '../shared/svg-tags.js';
4
- import { COMPONENT_POSTFIX, ERROR_MESSAGES, SOURCES, VARIABLES } from './config.js';
4
+ import { ERROR_MESSAGES, SOURCES, VARIABLES } from './config.js';
5
+ import { findElementDefinition } from './import-discovery.js';
5
6
  export const isComponent = (tagName) => {
6
7
  return (tagName[0] && tagName[0].toLowerCase() !== tagName[0])
7
8
  || tagName.includes('.')
@@ -13,6 +14,11 @@ export const getProgramFromPath = (path) => {
13
14
  throw new Error(ERROR_MESSAGES.NO_PROGRAM_FOUND);
14
15
  return program;
15
16
  };
17
+ export const getPathFilename = (path) => {
18
+ const hub = path.hub;
19
+ const currentFileName = hub.file.opts.filename;
20
+ return currentFileName;
21
+ };
16
22
  export class Ensure {
17
23
  static findProgram(path) {
18
24
  const programPath = path.findParent(p => t.isProgram(p.node));
@@ -231,9 +237,7 @@ export class Ensure {
231
237
  }
232
238
  static componentLiteral(tagName, variableName, path, program) {
233
239
  EnsureImport.literalMap(program, path);
234
- variableName = variableName.replace(COMPONENT_POSTFIX, '');
235
- tagName = tagName.replace(COMPONENT_POSTFIX, '');
236
- return this.componentTagDeclaration(path, tagName, variableName, () => t.variableDeclarator(t.identifier(variableName), t.callExpression(t.memberExpression(t.identifier(VARIABLES.LITERAL_MAP), t.identifier('get')), [t.identifier(tagName + COMPONENT_POSTFIX)])));
240
+ return this.componentTagDeclaration(path, tagName, variableName, () => t.variableDeclarator(t.identifier(variableName), t.callExpression(t.memberExpression(t.identifier(VARIABLES.LITERAL_MAP), t.identifier('get')), [t.identifier(tagName)])));
237
241
  }
238
242
  }
239
243
  export class EnsureImport {
@@ -348,29 +352,27 @@ export const getJSXElementName = (node) => {
348
352
  : '';
349
353
  return name;
350
354
  };
351
- export const isJSXCustomElementComponent = (nodeOrName) => {
352
- const tagName = typeof nodeOrName !== 'string'
353
- ? getJSXElementName(nodeOrName)
354
- : nodeOrName;
355
- if (tagName.endsWith(COMPONENT_POSTFIX))
355
+ export const isJSXCustomElementComponent = (path) => {
356
+ const node = path.node;
357
+ if (t.isJSXFragment(node))
358
+ return false;
359
+ const tagName = getJSXElementName(node);
360
+ if (!isComponent(tagName))
361
+ return false;
362
+ const type = findElementDefinition(path.get('openingElement'));
363
+ if (type.type === 'custom-element')
356
364
  return true;
357
365
  return false;
358
366
  };
359
- export const isJSXFunctionElementComponent = (pathOrName) => {
360
- let tagName;
361
- if (typeof pathOrName === 'string') {
362
- tagName = pathOrName;
363
- }
364
- else {
365
- const node = pathOrName.node;
366
- // If it's a fragment, we cannot determine the tag name.
367
- if (t.isJSXFragment(node))
368
- return false;
369
- tagName = getJSXElementName(node);
370
- }
367
+ export const isJSXFunctionElementComponent = (path) => {
368
+ const node = path.node;
369
+ if (t.isJSXFragment(node))
370
+ return false;
371
+ const tagName = getJSXElementName(node);
371
372
  if (!isComponent(tagName))
372
373
  return false;
373
- if (tagName.endsWith(COMPONENT_POSTFIX))
374
+ const type = findElementDefinition(path.get('openingElement'));
375
+ if (type.type === 'custom-element')
374
376
  return false;
375
377
  return true;
376
378
  };
@@ -385,7 +387,7 @@ export const isJSXFragmentPath = (path) => t.isJSXFragment(path.node);
385
387
  * @returns true if the template will be static, false otherwise
386
388
  */
387
389
  export const isJSXElementStatic = (path) => {
388
- if (t.isJSXElement(path.node) && isJSXCustomElementComponent(path.node))
390
+ if (t.isJSXElement(path.node) && isJSXCustomElementComponent(path))
389
391
  return true;
390
392
  for (const childPath of path.get('children')) {
391
393
  if (!isJSXElementPath(childPath) && !isJSXFragmentPath(childPath))
@@ -1 +1 @@
1
- {"version":3,"file":"compiler-utils.js","sourceRoot":"","sources":["../../src/compiler/compiler-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler-utils.js","sourceRoot":"","sources":["../../src/compiler/compiler-utils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,9 @@
1
+ export type BabelPlugins = NonNullable<NonNullable<babel.TransformOptions['parserOpts']>['plugins']>;
2
+ export declare const babelPlugins: BabelPlugins;
3
+ export declare const debugMode: {
4
+ value: boolean;
5
+ };
1
6
  export declare const COMPONENT_LITERAL_PREFIX = "__$";
2
- export declare const COMPONENT_POSTFIX = ".tag";
3
7
  export declare const WHITESPACE_TAGS: string[];
4
8
  export declare const SPECIAL_TAGS: string[];
5
9
  export declare const ATTR_NAMES: {
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/compiler/config.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,iBAAiB,SAAS,CAAC;AACxC,eAAO,MAAM,eAAe,EAAE,MAAM,EAA0B,CAAC;AAC/D,eAAO,MAAM,YAAY,EAAE,MAAM,EAAO,CAAC;AACzC,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;AACX,eAAO,MAAM,kBAAkB,OAAO,CAAC;AACvC,eAAO,MAAM,WAAW;;;CAGd,CAAC;AACX,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;CAoBZ,CAAC;AACX,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;CAwBV,CAAC;AACX,eAAO,MAAM,cAAc;;;;;;;;0CAQS,MAAM,KAAG,MAAM;2CACZ,MAAM,KAAG,MAAM;0CACf,MAAM,KAAG,MAAM;2CAClB,MAAM,KAAG,MAAM;uCACf,MAAM,KAAG,MAAM;CACzC,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/compiler/config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAGrG,eAAO,MAAM,YAAY,EAAE,YAA8E,CAAC;AAC1G,eAAO,MAAM,SAAS;;CAAmB,CAAC;AAG1C,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,eAAe,EAAE,MAAM,EAA0B,CAAC;AAC/D,eAAO,MAAM,YAAY,EAAE,MAAM,EAAO,CAAC;AACzC,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;AACX,eAAO,MAAM,kBAAkB,OAAO,CAAC;AACvC,eAAO,MAAM,WAAW;;;CAGd,CAAC;AACX,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;CAoBZ,CAAC;AACX,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;CAwBV,CAAC;AACX,eAAO,MAAM,cAAc;;;;;;;;0CAQS,MAAM,KAAG,MAAM;2CACZ,MAAM,KAAG,MAAM;0CACf,MAAM,KAAG,MAAM;2CAClB,MAAM,KAAG,MAAM;uCACf,MAAM,KAAG,MAAM;CACzC,CAAC"}
@@ -1,6 +1,6 @@
1
- //
1
+ export const babelPlugins = ['jsx', 'typescript', 'decorators', 'decoratorAutoAccessors'];
2
+ export const debugMode = { value: false };
2
3
  export const COMPONENT_LITERAL_PREFIX = '__$';
3
- export const COMPONENT_POSTFIX = '.tag';
4
4
  export const WHITESPACE_TAGS = ['pre', 'textarea'];
5
5
  export const SPECIAL_TAGS = [];
6
6
  export const ATTR_NAMES = {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/compiler/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/compiler/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type Logger } from 'pino';
2
+ export declare const createLogger: (name: string, debug?: boolean) => Logger<never, boolean>;
3
+ //# sourceMappingURL=create-logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-logger.d.ts","sourceRoot":"","sources":["../../src/compiler/create-logger.ts"],"names":[],"mappings":"AAAA,OAAa,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAIzC,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,QAAQ,OAAO,KAAG,MAAM,CAAC,KAAK,EAAE,OAAO,CA8BjF,CAAC"}
@@ -0,0 +1,32 @@
1
+ import pino, {} from 'pino';
2
+ import { prettyFactory } from 'pino-pretty';
3
+ export const createLogger = (name, debug) => {
4
+ const prettify = prettyFactory({
5
+ sync: true,
6
+ colorize: true,
7
+ ignore: 'pid,hostname',
8
+ translateTime: 'HH:MM:ss',
9
+ });
10
+ const hooks = {
11
+ streamWrite: (s) => {
12
+ console.log(prettify(s));
13
+ return '';
14
+ },
15
+ };
16
+ return pino({
17
+ name,
18
+ level: debug ? 'trace' : 'info',
19
+ hooks,
20
+ //...(debug && {
21
+ // transport: {
22
+ // target: 'pino-pretty',
23
+ // options: {
24
+ // colorize: true,
25
+ // translateTime: 'HH:MM:ss',
26
+ // ignore: 'pid,hostname',
27
+ // },
28
+ // },
29
+ //}),
30
+ });
31
+ };
32
+ //# sourceMappingURL=create-logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-logger.js","sourceRoot":"","sources":["../../src/compiler/create-logger.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAe,EAA0B,EAAE;IACrF,MAAM,QAAQ,GAAG,aAAa,CAAC;QAC9B,IAAI,EAAW,IAAI;QACnB,QAAQ,EAAO,IAAI;QACnB,MAAM,EAAS,cAAc;QAC7B,aAAa,EAAE,UAAU;KACzB,CAAC,CAAC;IACH,MAAM,KAAK,GAA4C;QACtD,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;YAClB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAEzB,OAAO,EAAE,CAAC;QACX,CAAC;KACD,CAAC;IAEF,OAAO,IAAI,CAAC;QACX,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;QAC/B,KAAK;QACL,gBAAgB;QAChB,eAAe;QACf,2BAA2B;QAC3B,cAAc;QACd,yBAAyB;QACzB,+BAA+B;QAC/B,mCAAmC;QACnC,MAAM;QACN,KAAK;QACL,KAAK;KACL,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -1,12 +1,51 @@
1
1
  import * as babel from '@babel/core';
2
- import { NodePath } from '@babel/traverse';
2
+ import type { Binding, NodePath, Scope } from '@babel/traverse';
3
3
  import * as t from '@babel/types';
4
- export type BabelPlugins = NonNullable<NonNullable<babel.TransformOptions['parserOpts']>['plugins']>;
4
+ import type { Logger } from 'pino';
5
5
  export interface ElementDefinition {
6
- type: 'custom-element' | 'import' | 'local-variable' | 'unknown';
6
+ type: 'custom-element' | 'import' | 'local-variable' | 'wildcard-export' | 'unknown';
7
7
  source?: string;
8
8
  originalName?: string;
9
+ localName?: string;
9
10
  callExpression?: t.CallExpression;
11
+ resolvedPath?: string;
12
+ referencedName?: string;
10
13
  }
11
- export declare function findElementDefinition(path: NodePath<t.JSXOpeningElement>): ElementDefinition;
14
+ interface FileSystemAdapter {
15
+ existsSync: (path: string) => boolean;
16
+ readFileSync: (path: string, encoding: 'utf-8') => string;
17
+ dirname: (path: string) => string;
18
+ }
19
+ interface ResolverAdapter {
20
+ sync: (basedir: string, module: string) => {
21
+ path?: string;
22
+ };
23
+ }
24
+ export declare class ImportDiscovery {
25
+ static readonly definitionCache: Map<string, Map<string, ElementDefinition>>;
26
+ static readonly fileBindingsCache: Map<string, ReadonlyMap<string, ElementDefinition>>;
27
+ static readonly fileDependencies: Map<string, Set<string>>;
28
+ static readonly EMPTY_BINDINGS: ReadonlyMap<string, ElementDefinition>;
29
+ static clearCacheForFileAndDependents(changedFilePath: string): void;
30
+ protected readonly visitedFiles: Set<string>;
31
+ protected readonly resolver: ResolverAdapter;
32
+ protected readonly log: Logger<never, boolean>;
33
+ protected readonly fs: FileSystemAdapter;
34
+ constructor();
35
+ /**
36
+ * Finds the definition of a JSX element in the given path.
37
+ */
38
+ findElementDefinition(path: NodePath<t.JSXOpeningElement>): ElementDefinition;
39
+ protected traceElementDefinition(elementName: string, scope: Scope, currentFileName: string): ElementDefinition;
40
+ protected analyzeFileBindings(filePath: string): ReadonlyMap<string, ElementDefinition>;
41
+ protected analyzeFileDeclarations(programPath: babel.NodePath<babel.types.Program>, filePath: string, bindings: Map<string, ElementDefinition>): void;
42
+ protected analyzeBindingFast(binding: Binding, filePath: string): ElementDefinition;
43
+ protected analyzeImportBinding(binding: Binding, currentFileName: string): ElementDefinition;
44
+ protected analyzeLocalBinding(binding: Binding, filePath: string): ElementDefinition;
45
+ protected isToComponentOrTagCall(callExpr: t.CallExpression, scope: Scope): boolean;
46
+ protected analyzeFileExports(programPath: babel.NodePath<babel.types.Program>, filePath: string, bindings: Map<string, ElementDefinition>): void;
47
+ protected resolveLazyDefinition(definition: ElementDefinition): ElementDefinition;
48
+ }
49
+ export declare const findElementDefinition: (...args: Parameters<ImportDiscovery["findElementDefinition"]>) => ReturnType<ImportDiscovery["findElementDefinition"]>;
50
+ export {};
12
51
  //# sourceMappingURL=import-discovery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"import-discovery.d.ts","sourceRoot":"","sources":["../../src/compiler/import-discovery.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,aAAa,CAAC;AACrC,OAAiB,EAAgB,QAAQ,EAAS,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAOlC,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAIrG,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAa,gBAAgB,GAAG,QAAQ,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAC5E,MAAM,CAAC,EAAU,MAAM,CAAC;IACxB,YAAY,CAAC,EAAI,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC;CAClC;AAID,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,iBAAiB,CAiB5F"}
1
+ {"version":3,"file":"import-discovery.d.ts","sourceRoot":"","sources":["../../src/compiler/import-discovery.ts"],"names":[],"mappings":"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"}