@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.
- package/README.md +22 -16
- package/dist/compiler/babel-plugin.d.ts +4 -0
- package/dist/compiler/babel-plugin.d.ts.map +1 -0
- package/dist/compiler/babel-plugin.js +20 -0
- package/dist/compiler/babel-plugin.js.map +1 -0
- package/dist/compiler/babel-traverse.d.ts +3 -0
- package/dist/compiler/babel-traverse.d.ts.map +1 -0
- package/dist/compiler/babel-traverse.js +7 -0
- package/dist/compiler/babel-traverse.js.map +1 -0
- package/dist/compiler/compiler-utils.d.ts +3 -2
- package/dist/compiler/compiler-utils.d.ts.map +1 -1
- package/dist/compiler/compiler-utils.js +25 -23
- package/dist/compiler/compiler-utils.js.map +1 -1
- package/dist/compiler/config.d.ts +5 -1
- package/dist/compiler/config.d.ts.map +1 -1
- package/dist/compiler/config.js +2 -2
- package/dist/compiler/config.js.map +1 -1
- package/dist/compiler/create-logger.d.ts +3 -0
- package/dist/compiler/create-logger.d.ts.map +1 -0
- package/dist/compiler/create-logger.js +32 -0
- package/dist/compiler/create-logger.js.map +1 -0
- package/dist/compiler/import-discovery.d.ts +43 -4
- package/dist/compiler/import-discovery.d.ts.map +1 -1
- package/dist/compiler/import-discovery.js +306 -160
- package/dist/compiler/import-discovery.js.map +1 -1
- package/dist/compiler/preprocess.d.ts +1 -1
- package/dist/compiler/preprocess.d.ts.map +1 -1
- package/dist/compiler/preprocess.js +5 -4
- package/dist/compiler/preprocess.js.map +1 -1
- package/dist/compiler/transpiler.js +4 -4
- package/dist/compiler/transpiler.js.map +1 -1
- package/dist/compiler/vite-plugin.d.ts +1 -0
- package/dist/compiler/vite-plugin.d.ts.map +1 -1
- package/dist/compiler/vite-plugin.js +9 -13
- package/dist/compiler/vite-plugin.js.map +1 -1
- package/dist/runtime/type-helpers.d.ts +24 -36
- package/dist/runtime/type-helpers.d.ts.map +1 -1
- package/dist/runtime/type-helpers.js +22 -34
- package/dist/runtime/type-helpers.js.map +1 -1
- package/package.json +5 -2
- package/src/compiler/babel-plugin.ts +23 -0
- package/src/compiler/babel-traverse.ts +7 -0
- package/src/compiler/compiler-utils.ts +35 -25
- package/src/compiler/config.ts +7 -2
- package/src/compiler/create-logger.ts +35 -0
- package/src/compiler/import-discovery.ts +381 -202
- package/src/compiler/preprocess.ts +9 -7
- package/src/compiler/transpiler.ts +4 -4
- package/src/compiler/vite-plugin.ts +16 -22
- package/src/runtime/type-helpers.ts +24 -36
- package/dist/compiler/babel-preset.d.ts +0 -6
- package/dist/compiler/babel-preset.d.ts.map +0 -1
- package/dist/compiler/babel-preset.js +0 -27
- package/dist/compiler/babel-preset.js.map +0 -1
- 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 `
|
|
228
|
+
Use `toComponent()` for type-safe custom element components:
|
|
229
229
|
|
|
230
230
|
```tsx
|
|
231
|
-
import {
|
|
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
|
-
|
|
244
|
-
|
|
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
|
|
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 {
|
|
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
|
-
<
|
|
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
|
-
<
|
|
290
|
+
<DataListComponent<Product>
|
|
285
291
|
items={products}
|
|
286
292
|
renderItem={(product) => `${product.name} - $${product.price}`}
|
|
287
293
|
/>
|
|
288
294
|
```
|
|
289
295
|
|
|
290
|
-
**
|
|
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
|
|
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
|
|
309
|
+
<Tag href={href} class="action-element">
|
|
304
310
|
{children}
|
|
305
|
-
</Tag
|
|
311
|
+
</Tag>
|
|
306
312
|
);
|
|
307
313
|
}
|
|
308
314
|
```
|
|
309
315
|
|
|
310
|
-
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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: (
|
|
65
|
-
export declare const isJSXFunctionElementComponent: (
|
|
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":"AAAA,OAAO,KAAK,EAAE,OAAO,
|
|
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 {
|
|
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
|
|
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 = (
|
|
352
|
-
const
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
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 = (
|
|
360
|
-
|
|
361
|
-
if (
|
|
362
|
-
|
|
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
|
-
|
|
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
|
|
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":"
|
|
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"}
|
package/dist/compiler/config.js
CHANGED
|
@@ -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":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/compiler/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
-
|
|
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
|
-
|
|
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,
|
|
1
|
+
{"version":3,"file":"import-discovery.d.ts","sourceRoot":"","sources":["../../src/compiler/import-discovery.ts"],"names":[],"mappings":"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"}
|