@wcstack/autoloader 1.3.14 → 1.3.16

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 (51) hide show
  1. package/README.ja.md +5 -1
  2. package/README.md +5 -1
  3. package/package.json +5 -4
  4. package/dist/bootstrapAutoloader.d.ts +0 -3
  5. package/dist/bootstrapAutoloader.d.ts.map +0 -1
  6. package/dist/bootstrapAutoloader.js +0 -9
  7. package/dist/bootstrapAutoloader.js.map +0 -1
  8. package/dist/components/Autoloader.d.ts +0 -10
  9. package/dist/components/Autoloader.d.ts.map +0 -1
  10. package/dist/components/Autoloader.js +0 -46
  11. package/dist/components/Autoloader.js.map +0 -1
  12. package/dist/config.d.ts +0 -12
  13. package/dist/config.d.ts.map +0 -1
  14. package/dist/config.js +0 -61
  15. package/dist/config.js.map +0 -1
  16. package/dist/eagerload.d.ts +0 -3
  17. package/dist/eagerload.d.ts.map +0 -1
  18. package/dist/eagerload.js +0 -122
  19. package/dist/eagerload.js.map +0 -1
  20. package/dist/exports.d.ts +0 -3
  21. package/dist/exports.d.ts.map +0 -1
  22. package/dist/exports.js +0 -2
  23. package/dist/exports.js.map +0 -1
  24. package/dist/importmap.d.ts +0 -7
  25. package/dist/importmap.d.ts.map +0 -1
  26. package/dist/importmap.js +0 -69
  27. package/dist/importmap.js.map +0 -1
  28. package/dist/lazyLoad.d.ts +0 -4
  29. package/dist/lazyLoad.d.ts.map +0 -1
  30. package/dist/lazyLoad.js +0 -167
  31. package/dist/lazyLoad.js.map +0 -1
  32. package/dist/registerComponents.d.ts +0 -2
  33. package/dist/registerComponents.d.ts.map +0 -1
  34. package/dist/registerComponents.js +0 -8
  35. package/dist/registerComponents.js.map +0 -1
  36. package/dist/resolveLoader.d.ts +0 -3
  37. package/dist/resolveLoader.d.ts.map +0 -1
  38. package/dist/resolveLoader.js +0 -45
  39. package/dist/resolveLoader.js.map +0 -1
  40. package/dist/tags.d.ts +0 -4
  41. package/dist/tags.d.ts.map +0 -1
  42. package/dist/tags.js +0 -7
  43. package/dist/tags.js.map +0 -1
  44. package/dist/types.d.ts +0 -53
  45. package/dist/types.d.ts.map +0 -1
  46. package/dist/types.js +0 -3
  47. package/dist/types.js.map +0 -1
  48. package/dist/vanilla.d.ts +0 -2
  49. package/dist/vanilla.d.ts.map +0 -1
  50. package/dist/vanilla.js +0 -5
  51. package/dist/vanilla.js.map +0 -1
package/README.ja.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # @wcstack/autoloader
2
2
 
3
- カスタム要素(要 Web Components 対応)を、HTMLにタグを書くだけで自動的にロードします。
3
+ **もしカスタム要素が勝手に読み込まれたら?**
4
+
5
+ カスタム要素のタグを書くだけで、ブラウザが勝手にその定義を見つけてくれる未来を妄想してみる。`import` も `customElements.define()` も登録ボイラープレートも不要。タグを書けば、読み込まれる。
6
+
7
+ それが `<wcs-autoloader>` の探求するもの。CDN一発、依存ゼロ、Import Mapを活用。
4
8
 
5
9
  ## 特徴
6
10
 
package/README.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # @wcstack/autoloader
2
2
 
3
- Automatically loads custom elements (requires Web Components support) just by writing the tags in HTML.
3
+ **What if custom elements loaded themselves?**
4
+
5
+ Imagine a future where you just write a custom element tag and the browser figures out where to find it. No `import`, no `customElements.define()`, no registration boilerplate. You write the tag, it loads.
6
+
7
+ That's what `<wcs-autoloader>` explores. One CDN import, zero dependencies, powered by Import Maps.
4
8
 
5
9
  ## Features
6
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wcstack/autoloader",
3
- "version": "1.3.14",
3
+ "version": "1.3.16",
4
4
  "description": "Auto-detect and dynamically import undefined custom elements via Import Maps. Zero dependencies, buildless.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.esm.js",
@@ -10,7 +10,8 @@
10
10
  ".": {
11
11
  "types": "./dist/index.d.ts",
12
12
  "import": "./dist/index.esm.js"
13
- }
13
+ },
14
+ "./auto": "./dist/auto.min.js"
14
15
  },
15
16
  "files": [
16
17
  "dist"
@@ -19,8 +20,8 @@
19
20
  "example": "__e2e__"
20
21
  },
21
22
  "scripts": {
22
- "clean": "rimraf dist",
23
- "build": "rimraf dist && tsc && rollup -c",
23
+ "clean": "rimraf dist .tsc-out",
24
+ "build": "rimraf dist .tsc-out && tsc && rollup -c",
24
25
  "test": "vitest run",
25
26
  "test:watch": "vitest",
26
27
  "test:coverage": "vitest run --coverage",
@@ -1,3 +0,0 @@
1
- import { IWritableConfig } from "./types.js";
2
- export declare function bootstrapAutoloader(config?: IWritableConfig): void;
3
- //# sourceMappingURL=bootstrapAutoloader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bootstrapAutoloader.d.ts","sourceRoot":"","sources":["../src/bootstrapAutoloader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI,CAKlE"}
@@ -1,9 +0,0 @@
1
- import { setConfig } from "./config.js";
2
- import { registerComponents } from "./registerComponents.js";
3
- export function bootstrapAutoloader(config) {
4
- if (config) {
5
- setConfig(config);
6
- }
7
- registerComponents();
8
- }
9
- //# sourceMappingURL=bootstrapAutoloader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bootstrapAutoloader.js","sourceRoot":"","sources":["../src/bootstrapAutoloader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,MAAM,UAAU,mBAAmB,CAAC,MAAwB;IAC1D,IAAI,MAAM,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC;IACD,kBAAkB,EAAE,CAAC;AACvB,CAAC"}
@@ -1,10 +0,0 @@
1
- export declare class Autoloader extends HTMLElement {
2
- private static _instance;
3
- private _initialized;
4
- private _prefixMap;
5
- private _observer;
6
- constructor();
7
- connectedCallback(): Promise<void>;
8
- disconnectedCallback(): void;
9
- }
10
- //# sourceMappingURL=Autoloader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Autoloader.d.ts","sourceRoot":"","sources":["../../src/components/Autoloader.ts"],"names":[],"mappings":"AAMA,qBAAa,UAAW,SAAQ,WAAW;IACzC,OAAO,CAAC,MAAM,CAAC,SAAS,CAA2B;IACnD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,SAAS,CAAiC;;IAqB5C,iBAAiB;IAoBvB,oBAAoB;CAOrB"}
@@ -1,46 +0,0 @@
1
- import { config } from "../config.js";
2
- import { buildMap, loadImportmap } from "../importmap.js";
3
- import { eagerLoad } from "../eagerload.js";
4
- import { handlerForLazyLoad } from "../lazyLoad.js";
5
- export class Autoloader extends HTMLElement {
6
- static _instance = null;
7
- _initialized = false;
8
- _prefixMap = null;
9
- _observer = null;
10
- constructor() {
11
- super();
12
- if (Autoloader._instance) {
13
- throw new Error(`${config.tagNames.autoloader} can only be instantiated once.`);
14
- }
15
- Autoloader._instance = this;
16
- const importmap = loadImportmap();
17
- if (importmap) {
18
- const { prefixMap, loadMap } = buildMap(importmap);
19
- this._prefixMap = prefixMap;
20
- eagerLoad(loadMap, config.loaders).catch((e) => {
21
- console.error("Failed to eager load components:", e);
22
- });
23
- }
24
- }
25
- async connectedCallback() {
26
- if (!this._initialized) {
27
- this._initialized = true;
28
- if (this._prefixMap) {
29
- if (document.readyState === "loading") {
30
- await new Promise((r) => document.addEventListener("DOMContentLoaded", () => r(), {
31
- once: true,
32
- }));
33
- }
34
- this._observer = await handlerForLazyLoad(document, config, this._prefixMap);
35
- }
36
- }
37
- }
38
- disconnectedCallback() {
39
- this._observer?.disconnect();
40
- this._observer = null;
41
- if (Autoloader._instance === this) {
42
- Autoloader._instance = null;
43
- }
44
- }
45
- }
46
- //# sourceMappingURL=Autoloader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Autoloader.js","sourceRoot":"","sources":["../../src/components/Autoloader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAGpD,MAAM,OAAO,UAAW,SAAQ,WAAW;IACjC,MAAM,CAAC,SAAS,GAAsB,IAAI,CAAC;IAC3C,YAAY,GAAG,KAAK,CAAC;IACrB,UAAU,GAAsB,IAAI,CAAC;IACrC,SAAS,GAA4B,IAAI,CAAC;IAElD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,iCAAiC,CAC/D,CAAC;QACJ,CAAC;QACD,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC;QAE5B,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YACnD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC5B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC7C,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,CAAC,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBACtC,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAC5B,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;wBACvD,IAAI,EAAE,IAAI;qBACX,CAAC,CACH,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,SAAS,GAAG,MAAM,kBAAkB,CACvC,QAAQ,EACR,MAAM,EACN,IAAI,CAAC,UAAU,CAChB,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,UAAU,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAClC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC"}
package/dist/config.d.ts DELETED
@@ -1,12 +0,0 @@
1
- import { IConfig, IWritableConfig } from "./types.js";
2
- import { load } from "./vanilla.js";
3
- export declare const DEFAULT_KEY = "*";
4
- export declare const VANILLA_KEY = "vanilla";
5
- export declare const VANILLA_LOADER: {
6
- postfix: string;
7
- loader: typeof load;
8
- };
9
- export declare const config: IConfig;
10
- export declare function getConfig(): IConfig;
11
- export declare function setConfig(partialConfig: IWritableConfig): void;
12
- //# sourceMappingURL=config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAW,eAAe,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAWnC,eAAO,MAAM,WAAW,MAAM,CAAC;AAE/B,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC,eAAO,MAAM,cAAc;;;CAG1B,CAAA;AAmCD,eAAO,MAAM,MAAM,EAAE,OAA4B,CAAC;AAElD,wBAAgB,SAAS,IAAI,OAAO,CAKnC;AAED,wBAAgB,SAAS,CAAC,aAAa,EAAE,eAAe,GAAG,IAAI,CAc9D"}
package/dist/config.js DELETED
@@ -1,61 +0,0 @@
1
- import { load } from "./vanilla.js";
2
- export const DEFAULT_KEY = "*";
3
- export const VANILLA_KEY = "vanilla";
4
- export const VANILLA_LOADER = {
5
- postfix: ".js",
6
- loader: load
7
- };
8
- const _config = {
9
- scanImportmap: true,
10
- loaders: {
11
- [VANILLA_KEY]: VANILLA_LOADER,
12
- [DEFAULT_KEY]: VANILLA_KEY
13
- },
14
- observable: true,
15
- tagNames: {
16
- autoloader: "wcs-autoloader"
17
- }
18
- };
19
- function deepFreeze(obj) {
20
- if (obj === null || typeof obj !== "object")
21
- return obj;
22
- Object.freeze(obj);
23
- for (const key of Object.keys(obj)) {
24
- deepFreeze(obj[key]);
25
- }
26
- return obj;
27
- }
28
- function deepClone(obj) {
29
- if (obj === null || typeof obj !== "object")
30
- return obj;
31
- const clone = {};
32
- for (const key of Object.keys(obj)) {
33
- clone[key] = deepClone(obj[key]);
34
- }
35
- return clone;
36
- }
37
- let frozenConfig = null;
38
- // 後方互換のため config もエクスポート(読み取り専用として使用)
39
- export const config = _config;
40
- export function getConfig() {
41
- if (!frozenConfig) {
42
- frozenConfig = deepFreeze(deepClone(_config));
43
- }
44
- return frozenConfig;
45
- }
46
- export function setConfig(partialConfig) {
47
- if (typeof partialConfig.scanImportmap === "boolean") {
48
- _config.scanImportmap = partialConfig.scanImportmap;
49
- }
50
- if (partialConfig.loaders) {
51
- Object.assign(_config.loaders, partialConfig.loaders);
52
- }
53
- if (typeof partialConfig.observable === "boolean") {
54
- _config.observable = partialConfig.observable;
55
- }
56
- if (partialConfig.tagNames) {
57
- Object.assign(_config.tagNames, partialConfig.tagNames);
58
- }
59
- frozenConfig = null;
60
- }
61
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAWnC,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC;AAE/B,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AAErC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,IAAI;CACb,CAAA;AAED,MAAM,OAAO,GAAoB;IAC/B,aAAa,EAAE,IAAI;IACnB,OAAO,EAAE;QACP,CAAC,WAAW,CAAC,EAAE,cAAc;QAC7B,CAAC,WAAW,CAAC,EAAE,WAAW;KAC3B;IACD,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE;QACR,UAAU,EAAE,gBAAgB;KAC7B;CACF,CAAA;AAED,SAAS,UAAU,CAAI,GAAM;IAC3B,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,UAAU,CAAE,GAA+B,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,SAAS,CAAI,GAAM;IAC1B,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxD,MAAM,KAAK,GAA4B,EAAE,CAAC;IAC1C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAE,GAA+B,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,KAAU,CAAC;AACpB,CAAC;AAED,IAAI,YAAY,GAAmB,IAAI,CAAC;AAExC,sCAAsC;AACtC,MAAM,CAAC,MAAM,MAAM,GAAY,OAAkB,CAAC;AAElD,MAAM,UAAU,SAAS;IACvB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,aAA8B;IACtD,IAAI,OAAO,aAAa,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACrD,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC;IACtD,CAAC;IACD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;QAC1B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,aAAa,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClD,OAAO,CAAC,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC;IAChD,CAAC;IACD,IAAI,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IACD,YAAY,GAAG,IAAI,CAAC;AACtB,CAAC"}
@@ -1,3 +0,0 @@
1
- import { IEagerLoadInfo, ILoader } from "./types.js";
2
- export declare function eagerLoad(loadMap: Record<string, IEagerLoadInfo>, loaders: Record<string, ILoader | string>): Promise<void>;
3
- //# sourceMappingURL=eagerload.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eagerload.d.ts","sourceRoot":"","sources":["../src/eagerload.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAgHrD,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,GACxC,OAAO,CAAC,IAAI,CAAC,CAYf"}
package/dist/eagerload.js DELETED
@@ -1,122 +0,0 @@
1
- import { resolveLoader } from "./resolveLoader.js";
2
- import { failedTags } from "./tags.js";
3
- const EXTENDS_MAP = new Map();
4
- if (typeof window !== "undefined") {
5
- const map = [
6
- [HTMLButtonElement, "button"],
7
- [HTMLInputElement, "input"],
8
- [HTMLAnchorElement, "a"],
9
- [HTMLImageElement, "img"],
10
- [HTMLDivElement, "div"],
11
- [HTMLSpanElement, "span"],
12
- [HTMLParagraphElement, "p"],
13
- [HTMLUListElement, "ul"],
14
- [HTMLOListElement, "ol"],
15
- [HTMLLIElement, "li"],
16
- [HTMLTableElement, "table"],
17
- [HTMLFormElement, "form"],
18
- [HTMLLabelElement, "label"],
19
- [HTMLSelectElement, "select"],
20
- [HTMLTextAreaElement, "textarea"],
21
- [HTMLHeadingElement, "h1"],
22
- [HTMLQuoteElement, "blockquote"],
23
- [HTMLPreElement, "pre"],
24
- [HTMLBRElement, "br"],
25
- [HTMLHRElement, "hr"],
26
- [HTMLModElement, "ins"],
27
- [HTMLTableCaptionElement, "caption"],
28
- [HTMLTableColElement, "col"],
29
- [HTMLTableSectionElement, "tbody"],
30
- [HTMLTableRowElement, "tr"],
31
- [HTMLTableCellElement, "td"],
32
- [HTMLFieldSetElement, "fieldset"],
33
- [HTMLLegendElement, "legend"],
34
- [HTMLDListElement, "dl"],
35
- [HTMLOptGroupElement, "optgroup"],
36
- [HTMLOptionElement, "option"],
37
- [HTMLStyleElement, "style"],
38
- [HTMLScriptElement, "script"],
39
- [HTMLTemplateElement, "template"],
40
- [HTMLCanvasElement, "canvas"],
41
- [HTMLIFrameElement, "iframe"],
42
- [HTMLObjectElement, "object"],
43
- [HTMLEmbedElement, "embed"],
44
- [HTMLVideoElement, "video"],
45
- [HTMLAudioElement, "audio"],
46
- [HTMLTrackElement, "track"],
47
- [HTMLMapElement, "map"],
48
- [HTMLAreaElement, "area"],
49
- [HTMLSourceElement, "source"],
50
- [HTMLParamElement, "param"],
51
- [HTMLMeterElement, "meter"],
52
- [HTMLProgressElement, "progress"],
53
- [HTMLOutputElement, "output"],
54
- [HTMLDetailsElement, "details"],
55
- [HTMLDialogElement, "dialog"],
56
- [HTMLMenuElement, "menu"],
57
- [HTMLSlotElement, "slot"],
58
- [HTMLTimeElement, "time"],
59
- [HTMLDataElement, "data"],
60
- [HTMLPictureElement, "picture"],
61
- ];
62
- map.forEach(([cls, tag]) => {
63
- /* istanbul ignore next */
64
- if (typeof cls !== "undefined") {
65
- EXTENDS_MAP.set(cls, tag);
66
- }
67
- });
68
- }
69
- function resolveExtends(componentConstructor) {
70
- for (const [cls, tag] of EXTENDS_MAP) {
71
- if (componentConstructor.prototype instanceof cls) {
72
- return tag;
73
- }
74
- }
75
- return null;
76
- }
77
- async function eagerLoadItem(info, tagName, loader) {
78
- try {
79
- if (customElements.get(tagName)) {
80
- // すでに定義済み
81
- return;
82
- }
83
- const componentConstructor = await loader.loader(info.key);
84
- if (componentConstructor !== null) {
85
- let extendsName = info.extends;
86
- if (extendsName === null) {
87
- extendsName = resolveExtends(componentConstructor);
88
- }
89
- if (customElements.get(tagName)) {
90
- // すでに定義済み
91
- return;
92
- }
93
- if (extendsName === null) {
94
- customElements.define(tagName, componentConstructor);
95
- }
96
- else {
97
- customElements.define(tagName, componentConstructor, { extends: extendsName });
98
- }
99
- }
100
- }
101
- catch (e) {
102
- if (!failedTags.has(tagName)) {
103
- console.error(`Failed to eager load component '${tagName}':`, e);
104
- failedTags.add(tagName);
105
- }
106
- }
107
- }
108
- export async function eagerLoad(loadMap, loaders) {
109
- const promises = [];
110
- for (const [tagName, info] of Object.entries(loadMap)) {
111
- let loader;
112
- try {
113
- loader = resolveLoader(info.key, info.loaderKey, loaders);
114
- }
115
- catch (_e) {
116
- throw new Error("Loader redirection is not supported for eager loaded components: " + tagName);
117
- }
118
- promises.push(eagerLoadItem(info, tagName, loader));
119
- }
120
- await Promise.all(promises);
121
- }
122
- //# sourceMappingURL=eagerload.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eagerload.js","sourceRoot":"","sources":["../src/eagerload.ts"],"names":[],"mappings":"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"}
package/dist/exports.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export { bootstrapAutoloader } from "./bootstrapAutoloader.js";
2
- export type { IWritableConfig, IWritableTagNames, ILoader, LoaderFunction } from "./types.js";
3
- //# sourceMappingURL=exports.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../src/exports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,YAAY,EACV,eAAe,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,EAC5D,MAAM,YAAY,CAAC"}
package/dist/exports.js DELETED
@@ -1,2 +0,0 @@
1
- export { bootstrapAutoloader } from "./bootstrapAutoloader.js";
2
- //# sourceMappingURL=exports.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"exports.js","sourceRoot":"","sources":["../src/exports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,7 +0,0 @@
1
- import { IImportMap, ILoadMap, IPrefixMap } from "./types.js";
2
- export declare function loadImportmap(): IImportMap | null;
3
- export declare function buildMap(importmap: IImportMap): {
4
- prefixMap: IPrefixMap;
5
- loadMap: ILoadMap;
6
- };
7
- //# sourceMappingURL=importmap.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"importmap.d.ts","sourceRoot":"","sources":["../src/importmap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAY,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAIxE,wBAAgB,aAAa,IAAI,UAAU,GAAG,IAAI,CAejD;AAmCD,wBAAgB,QAAQ,CAAC,SAAS,EAAE,UAAU,GAAG;IAC/C,SAAS,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CACzC,CAeA"}
package/dist/importmap.js DELETED
@@ -1,69 +0,0 @@
1
- const COMPONENT_KEYWORD = "@components/";
2
- export function loadImportmap() {
3
- const importmap = { imports: {} };
4
- document.querySelectorAll('script[type="importmap"]').forEach((script) => {
5
- try {
6
- const json = JSON.parse(script.innerHTML);
7
- if (json.imports) {
8
- importmap.imports = Object.assign(importmap.imports, json.imports);
9
- }
10
- }
11
- catch (e) {
12
- throw new Error("Failed to parse importmap JSON: " + e);
13
- }
14
- });
15
- return Object.keys(importmap.imports).length > 0
16
- ? importmap
17
- : null;
18
- }
19
- function getKeyInfoFromImportmapKey(key) {
20
- if (key.startsWith(COMPONENT_KEYWORD)) {
21
- if (key.endsWith("/")) {
22
- const prefixWithLoader = key.slice(COMPONENT_KEYWORD.length, key.length - 1);
23
- const [prefix, loaderKey] = prefixWithLoader.split("|", 2);
24
- if (prefix === "") {
25
- throw new Error("Invalid importmap key: " + key);
26
- }
27
- return {
28
- key,
29
- prefix: prefix.replaceAll("/", "-").toLowerCase(),
30
- loaderKey: loaderKey ?? null,
31
- isNameSpaced: true
32
- };
33
- }
34
- else {
35
- const tagNamePart = key.slice(COMPONENT_KEYWORD.length);
36
- const [tagName, loaderKeyPart] = tagNamePart.split("|", 2);
37
- const [loaderKey, extendsText] = (loaderKeyPart ?? "").split(",", 2);
38
- if (tagName === "") {
39
- throw new Error("Invalid importmap key: " + key);
40
- }
41
- return {
42
- key,
43
- tagName: tagName.replaceAll("/", "-").toLowerCase(),
44
- loaderKey: loaderKey || null,
45
- extends: extendsText || null,
46
- isNameSpaced: false
47
- };
48
- }
49
- }
50
- return null;
51
- }
52
- export function buildMap(importmap) {
53
- const prefixMap = {};
54
- const loadMap = {};
55
- for (const [key, _value] of Object.entries(importmap.imports)) {
56
- const keyInfo = getKeyInfoFromImportmapKey(key);
57
- if (keyInfo === null) {
58
- continue;
59
- }
60
- if (keyInfo.isNameSpaced) {
61
- prefixMap[keyInfo.prefix] = keyInfo;
62
- }
63
- else {
64
- loadMap[keyInfo.tagName] = keyInfo;
65
- }
66
- }
67
- return { prefixMap, loadMap };
68
- }
69
- //# sourceMappingURL=importmap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"importmap.js","sourceRoot":"","sources":["../src/importmap.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { IConfig, IPrefixMap, ITagInfo } from "./types.js";
2
- export declare function getCustomTagInfo(e: Element): ITagInfo;
3
- export declare function handlerForLazyLoad(root: Document | ShadowRoot, config: IConfig, prefixMap: IPrefixMap): Promise<MutationObserver | null>;
4
- //# sourceMappingURL=lazyLoad.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lazyLoad.d.ts","sourceRoot":"","sources":["../src/lazyLoad.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAA2B,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAMpF,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,QAAQ,CAmBrD;AAsID,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,QAAQ,GAAG,UAAU,EAC3B,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,UAAU,GACpB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAsBlC"}
package/dist/lazyLoad.js DELETED
@@ -1,167 +0,0 @@
1
- import { resolveLoader } from "./resolveLoader.js";
2
- import { failedTags, loadingTags } from "./tags.js";
3
- const isCustomElement = (node) => {
4
- return (node instanceof Element && (node.tagName.includes("-") || node.getAttribute("is")?.includes("-"))) ?? false;
5
- };
6
- export function getCustomTagInfo(e) {
7
- const elementTagName = e.tagName.toLowerCase();
8
- let name;
9
- let extendsName;
10
- if (elementTagName.includes("-")) {
11
- name = elementTagName;
12
- extendsName = null;
13
- }
14
- else {
15
- const tagName = e.getAttribute("is");
16
- if (tagName === null) {
17
- throw new Error("Custom element without a dash or 'is' attribute found: " + elementTagName);
18
- }
19
- if (!tagName.includes("-")) {
20
- throw new Error("Custom element 'is' attribute without a dash found: " + elementTagName);
21
- }
22
- name = tagName;
23
- extendsName = elementTagName;
24
- }
25
- return { name, extends: extendsName };
26
- }
27
- const observedCustomElements = new WeakSet();
28
- async function observeShadowRoot(element, config, prefixMap) {
29
- observedCustomElements.add(element);
30
- await handlerForLazyLoad(element.shadowRoot, config, prefixMap);
31
- }
32
- async function checkObserveShadowRoot(element, config, prefixMap) {
33
- if (element.shadowRoot) {
34
- if (!observedCustomElements.has(element)) {
35
- await observeShadowRoot(element, config, prefixMap);
36
- }
37
- }
38
- }
39
- function matchNameSpace(tagName, prefixMap) {
40
- for (const [prefix, info] of Object.entries(prefixMap)) {
41
- if (tagName.startsWith(prefix + "-")) {
42
- return info;
43
- }
44
- }
45
- return null;
46
- }
47
- async function tagLoad(tagInfo, config, prefixMap) {
48
- const info = matchNameSpace(tagInfo.name, prefixMap);
49
- if (info === null) {
50
- throw new Error("No matching namespace found for lazy loaded component: " + tagInfo.name);
51
- }
52
- if (loadingTags.has(tagInfo.name)) {
53
- await customElements.whenDefined(tagInfo.name);
54
- return;
55
- }
56
- loadingTags.add(tagInfo.name);
57
- try {
58
- let loader;
59
- try {
60
- loader = resolveLoader("", info.loaderKey, config.loaders);
61
- }
62
- catch (_e) {
63
- throw new Error("Loader redirection is not supported for lazy loaded components: " + tagInfo.name);
64
- }
65
- const file = tagInfo.name.slice(info.prefix.length + 1);
66
- if (file === "") {
67
- throw new Error("Invalid component name for lazy loaded component: " + tagInfo.name);
68
- }
69
- const path = info.key + file + loader.postfix;
70
- if (customElements.get(tagInfo.name)) {
71
- // すでに定義済み
72
- return;
73
- }
74
- const componentConstructor = await loader.loader(path);
75
- if (componentConstructor !== null) {
76
- if (customElements.get(tagInfo.name)) {
77
- // すでに定義済み
78
- return;
79
- }
80
- if (tagInfo.extends === null) {
81
- customElements.define(tagInfo.name, componentConstructor);
82
- }
83
- else {
84
- customElements.define(tagInfo.name, componentConstructor, { extends: tagInfo.extends });
85
- }
86
- }
87
- else {
88
- throw new Error("Loader returned null for component: " + tagInfo.name);
89
- }
90
- }
91
- catch (e) {
92
- console.error(`Failed to lazy load component '${tagInfo.name}':`, e);
93
- failedTags.add(tagInfo.name);
94
- }
95
- finally {
96
- loadingTags.delete(tagInfo.name);
97
- }
98
- }
99
- //
100
- async function lazyLoad(root, config, prefixMap) {
101
- const elements = [];
102
- // Create TreeWalker (target element and comment nodes)
103
- const walker = document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT, (node) => {
104
- return isCustomElement(node) ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
105
- });
106
- // Move to next node with TreeWalker and add matching nodes to array
107
- while (walker.nextNode()) {
108
- elements.push(walker.currentNode);
109
- }
110
- const tagInfos = [];
111
- const tagNames = new Set();
112
- for (const element of elements) {
113
- const tagInfo = getCustomTagInfo(element);
114
- const customClass = customElements.get(tagInfo.name);
115
- if (customClass === undefined) {
116
- // undefined
117
- customElements.whenDefined(tagInfo.name).then(async () => {
118
- // upgraded
119
- await checkObserveShadowRoot(element, config, prefixMap);
120
- });
121
- if (!tagNames.has(tagInfo.name) && !failedTags.has(tagInfo.name)) {
122
- tagNames.add(tagInfo.name);
123
- tagInfos.push(tagInfo);
124
- }
125
- }
126
- else {
127
- // upgraded
128
- await checkObserveShadowRoot(element, config, prefixMap);
129
- }
130
- }
131
- let tagCount = 0;
132
- for (const tagInfo of tagInfos) {
133
- await tagLoad(tagInfo, config, prefixMap);
134
- tagCount++;
135
- }
136
- return tagCount;
137
- }
138
- async function lazyLoads(root, config, prefixMap) {
139
- while (await lazyLoad(root, config, prefixMap) > 0) {
140
- // Repeat until no more tags to load
141
- }
142
- }
143
- export async function handlerForLazyLoad(root, config, prefixMap) {
144
- if (Object.keys(prefixMap).length === 0) {
145
- return null;
146
- }
147
- try {
148
- await lazyLoads(root, config, prefixMap);
149
- }
150
- catch (e) {
151
- throw new Error("Failed to lazy load components: " + e);
152
- }
153
- if (!config.observable) {
154
- return null;
155
- }
156
- const mo = new MutationObserver(async () => {
157
- try {
158
- await lazyLoads(root, config, prefixMap);
159
- }
160
- catch (e) {
161
- console.error("Failed to lazy load components: " + e);
162
- }
163
- });
164
- mo.observe(root, { childList: true, subtree: true });
165
- return mo;
166
- }
167
- //# sourceMappingURL=lazyLoad.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lazyLoad.js","sourceRoot":"","sources":["../src/lazyLoad.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function registerComponents(): void;
2
- //# sourceMappingURL=registerComponents.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registerComponents.d.ts","sourceRoot":"","sources":["../src/registerComponents.ts"],"names":[],"mappings":"AAGA,wBAAgB,kBAAkB,SAIjC"}
@@ -1,8 +0,0 @@
1
- import { Autoloader } from "./components/Autoloader.js";
2
- import { config } from "./config.js";
3
- export function registerComponents() {
4
- if (!customElements.get(config.tagNames.autoloader)) {
5
- customElements.define(config.tagNames.autoloader, Autoloader);
6
- }
7
- }
8
- //# sourceMappingURL=registerComponents.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registerComponents.js","sourceRoot":"","sources":["../src/registerComponents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,UAAU,kBAAkB;IAChC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACpD,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;AACH,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ILoader } from "./types.js";
2
- export declare function resolveLoader(path: string, loaderKey: string | null, loaders: Record<string, ILoader | string>): ILoader;
3
- //# sourceMappingURL=resolveLoader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveLoader.d.ts","sourceRoot":"","sources":["../src/resolveLoader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,GACxC,OAAO,CA4CT"}
@@ -1,45 +0,0 @@
1
- import { DEFAULT_KEY } from "./config.js";
2
- export function resolveLoader(path, loaderKey, loaders) {
3
- let loader;
4
- if (loaderKey === null || loaderKey === DEFAULT_KEY || loaderKey === "") {
5
- // Try to resolve by postfix
6
- let resolvedLoader = null;
7
- const candidates = [];
8
- for (const [key, l] of Object.entries(loaders)) {
9
- if (key === DEFAULT_KEY)
10
- continue;
11
- const currentLoader = typeof l === "string" ? loaders[l] : l;
12
- if (typeof currentLoader === "string")
13
- continue; // Should not happen if config is correct
14
- candidates.push(currentLoader);
15
- }
16
- // Sort by postfix length descending to match longest extension first
17
- candidates.sort((a, b) => b.postfix.length - a.postfix.length);
18
- for (const currentLoader of candidates) {
19
- if (path.endsWith(currentLoader.postfix)) {
20
- resolvedLoader = currentLoader;
21
- break;
22
- }
23
- }
24
- if (resolvedLoader) {
25
- loader = resolvedLoader;
26
- }
27
- else {
28
- loader = loaders[DEFAULT_KEY];
29
- if (typeof loader === "string") {
30
- loader = loaders[loader];
31
- }
32
- }
33
- }
34
- else {
35
- loader = loaders[loaderKey];
36
- if (!loader) {
37
- throw new Error("Loader not found: " + loaderKey);
38
- }
39
- }
40
- if (typeof loader === "string") {
41
- throw new Error("Loader redirection is not supported here");
42
- }
43
- return loader;
44
- }
45
- //# sourceMappingURL=resolveLoader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveLoader.js","sourceRoot":"","sources":["../src/resolveLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,SAAwB,EACxB,OAAyC;IAEzC,IAAI,MAAwB,CAAC;IAE7B,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;QACxE,4BAA4B;QAC5B,IAAI,cAAc,GAAmB,IAAI,CAAC;QAE1C,MAAM,UAAU,GAAc,EAAE,CAAC;QACjC,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/C,IAAI,GAAG,KAAK,WAAW;gBAAE,SAAS;YAClC,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,OAAO,aAAa,KAAK,QAAQ;gBAAE,SAAS,CAAC,yCAAyC;YAC1F,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjC,CAAC;QAED,qEAAqE;QACrE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE/D,KAAK,MAAM,aAAa,IAAI,UAAU,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzC,cAAc,GAAG,aAAa,CAAC;gBAC/B,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,GAAG,cAAc,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;YAC9B,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
package/dist/tags.d.ts DELETED
@@ -1,4 +0,0 @@
1
- export declare const failedTags: Set<string>;
2
- export declare const loadingTags: Set<string>;
3
- export declare function resetState(): void;
4
- //# sourceMappingURL=tags.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../src/tags.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU,aAAoB,CAAC;AAC5C,eAAO,MAAM,WAAW,aAAoB,CAAC;AAE7C,wBAAgB,UAAU,SAGzB"}
package/dist/tags.js DELETED
@@ -1,7 +0,0 @@
1
- export const failedTags = new Set();
2
- export const loadingTags = new Set();
3
- export function resetState() {
4
- failedTags.clear();
5
- loadingTags.clear();
6
- }
7
- //# sourceMappingURL=tags.js.map
package/dist/tags.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"tags.js","sourceRoot":"","sources":["../src/tags.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;AAC5C,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AAE7C,MAAM,UAAU,UAAU;IACxB,UAAU,CAAC,KAAK,EAAE,CAAC;IACnB,WAAW,CAAC,KAAK,EAAE,CAAC;AACtB,CAAC"}
package/dist/types.d.ts DELETED
@@ -1,53 +0,0 @@
1
- export type LoaderFunction = (path: string) => Promise<CustomElementConstructor | null>;
2
- export interface ILoader {
3
- readonly postfix: string;
4
- readonly loader: LoaderFunction;
5
- }
6
- export interface ITagNames {
7
- readonly autoloader: string;
8
- }
9
- export interface IWritableTagNames {
10
- autoloader?: string;
11
- }
12
- export interface IConfig {
13
- readonly scanImportmap: boolean;
14
- readonly loaders: Record<string, ILoader | string>;
15
- readonly observable: boolean;
16
- readonly tagNames: ITagNames;
17
- }
18
- export interface IWritableConfig {
19
- scanImportmap?: boolean;
20
- loaders?: Record<string, ILoader | string>;
21
- observable?: boolean;
22
- tagNames?: IWritableTagNames;
23
- }
24
- export interface IImportMap {
25
- imports: Record<string, string>;
26
- }
27
- export interface IPrefixMap {
28
- [key: string]: INameSpaceInfo;
29
- }
30
- export interface ILoadMap {
31
- [key: string]: IEagerLoadInfo;
32
- }
33
- export interface INameSpaceInfo {
34
- key: string;
35
- prefix: string;
36
- loaderKey: string | null;
37
- }
38
- export interface IEagerLoadInfo {
39
- key: string;
40
- tagName: string;
41
- loaderKey: string | null;
42
- extends: string | null;
43
- }
44
- export type IKeyInfo = (INameSpaceInfo & {
45
- isNameSpaced: true;
46
- }) | (IEagerLoadInfo & {
47
- isNameSpaced: false;
48
- });
49
- export interface ITagInfo {
50
- name: string;
51
- extends: string | null;
52
- }
53
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAAC;AAExF,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;IACnD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,MAAM,QAAQ,GAChB,CAAC,cAAc,GAAG;IAAE,YAAY,EAAE,IAAI,CAAA;CAAE,CAAC,GACzC,CAAC,cAAc,GAAG;IAAE,YAAY,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AAE/C,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB"}
package/dist/types.js DELETED
@@ -1,3 +0,0 @@
1
- ;
2
- export {};
3
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAgCC,CAAC"}
package/dist/vanilla.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function load(path: string): Promise<CustomElementConstructor>;
2
- //# sourceMappingURL=vanilla.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vanilla.d.ts","sourceRoot":"","sources":["../src/vanilla.ts"],"names":[],"mappings":"AACA,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAG1E"}
package/dist/vanilla.js DELETED
@@ -1,5 +0,0 @@
1
- export async function load(path) {
2
- const module = await import(`${path}`);
3
- return module.default;
4
- }
5
- //# sourceMappingURL=vanilla.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vanilla.js","sourceRoot":"","sources":["../src/vanilla.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAY;IACrC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACvC,OAAO,MAAM,CAAC,OAAmC,CAAC;AACpD,CAAC"}