@reidelsaltres/pureper 0.2.21 → 0.2.23

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.
@@ -1,5 +1,5 @@
1
1
  import { ImplementationStruct } from "./Injection.js";
2
- export declare const REGISTRY: (() => void)[];
2
+ export declare const REGISTRY: (() => Promise<void>)[];
3
3
  export declare enum AccessType {
4
4
  NONE = 0,
5
5
  OFFLINE = 1,
@@ -38,6 +38,6 @@ export default class Triplet {
38
38
  private readonly placeholderName?;
39
39
  private readonly implementation;
40
40
  constructor(struct: TripletStruct, implName?: string);
41
- register(type: "router" | "markup", name: string): Promise<void>;
41
+ register(type: "router" | "markup", name: string): void;
42
42
  }
43
43
  //# sourceMappingURL=Triplet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Triplet.d.ts","sourceRoot":"","sources":["../../src/foundation/Triplet.ts"],"names":[],"mappings":"AAQA,OAAO,EAAkB,oBAAoB,EAAe,MAAM,gBAAgB,CAAC;AAEnF,eAAO,MAAM,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,EAAO,CAAC;AAE3C,oBAAY,UAAU;IAClB,IAAI,IAAI;IACR,OAAO,IAAS;IAChB,MAAM,IAAS;IACf,IAAI,IAAmB;CAC1B;AAED,MAAM,MAAM,aAAa,GAAG,oBAAoB,GAAG;IAC/C,MAAM,CAAC,EAAE,UAAU,CAAC;CACvB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,OAAO,OAAO,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;gBAE7B,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,MAAM;IAQ9C,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA4GhF"}
1
+ {"version":3,"file":"Triplet.d.ts","sourceRoot":"","sources":["../../src/foundation/Triplet.ts"],"names":[],"mappings":"AAQA,OAAO,EAAkB,oBAAoB,EAAe,MAAM,gBAAgB,CAAC;AAEnF,eAAO,MAAM,QAAQ,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAO,CAAC;AAEpD,oBAAY,UAAU;IAClB,IAAI,IAAI;IACR,OAAO,IAAS;IAChB,MAAM,IAAS;IACf,IAAI,IAAmB;CAC1B;AAED,MAAM,MAAM,aAAa,GAAG,oBAAoB,GAAG;IAC/C,MAAM,CAAC,EAAE,UAAU,CAAC;CACvB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,OAAO,OAAO,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;gBAE7B,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,MAAM;IAQpD,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;CAkHjE"}
@@ -46,21 +46,20 @@ export default class Triplet {
46
46
  const name = implName ?? struct.class?.name ?? "default";
47
47
  this.implementation = new Implementation(name, struct);
48
48
  }
49
- async register(type, name) {
49
+ register(type, name) {
50
50
  const placeholder = Placeholder.get(name);
51
51
  placeholder.addImplementation(this.implementation);
52
- // If the placeholder already has a registered element/route, skip re-registration
53
52
  if (placeholder.implementations.size > 1) {
54
53
  console.info(`[Triplet]: Implementation "${this.implementation.name}" added to existing placeholder "${name}"`);
55
54
  return;
56
55
  }
57
- const globalCss = await this.implementation.globalStyle;
58
- if (globalCss) {
59
- document.adoptedStyleSheets.push(await new CSSStyleSheet().replace(globalCss));
60
- }
61
- // First implementation — register the placeholder shell
56
+ const impl = this.implementation;
62
57
  if (type === "router") {
63
- REGISTRY.push(() => {
58
+ REGISTRY.push(async () => {
59
+ const globalCss = await impl.globalStyle;
60
+ if (globalCss) {
61
+ document.adoptedStyleSheets.push(await new CSSStyleSheet().replace(globalCss));
62
+ }
64
63
  const routePath = name;
65
64
  Router.registerRoute(this.path, routePath, (search) => {
66
65
  const impl = placeholder.getActive();
@@ -98,7 +97,11 @@ export default class Triplet {
98
97
  });
99
98
  }
100
99
  else if (type === "markup") {
101
- REGISTRY.push(() => {
100
+ REGISTRY.push(async () => {
101
+ const globalCss = await impl.globalStyle;
102
+ if (globalCss) {
103
+ document.adoptedStyleSheets.push(await new CSSStyleSheet().replace(globalCss));
104
+ }
102
105
  if (customElements.get(name))
103
106
  throw new Error(`Custom element '${name}' is already defined.`);
104
107
  const cls = this.implementation.uniClass ?? Component;
@@ -1 +1 @@
1
- {"version":3,"file":"Triplet.js","sourceRoot":"","sources":["../../src/foundation/Triplet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Triplet.js","sourceRoot":"","sources":["../../src/foundation/Triplet.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,IAAI,MAAM,yBAAyB,CAAC;AAC3C,OAAO,SAAS,MAAM,8BAA8B,CAAC;AAErD,OAAO,cAAkC,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,EAAE,cAAc,EAAwB,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEnF,MAAM,CAAC,MAAM,QAAQ,GAA4B,EAAE,CAAC;AAEpD,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IAClB,2CAAQ,CAAA;IACR,iDAAgB,CAAA;IAChB,+CAAe,CAAA;IACf,2CAAuB,CAAA;AAC3B,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAMD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,OAAO,OAAO,OAAO;IACP,MAAM,CAAa;IACnB,IAAI,CAAS;IACb,eAAe,CAAU;IACzB,cAAc,CAAiB;IAEhD,YAAmB,MAAqB,EAAE,QAAiB;QACvD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC;QAC/C,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;QAEnC,MAAM,IAAI,GAAG,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,SAAS,CAAC;QACzD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAEM,QAAQ,CAAC,IAAyB,EAAE,IAAY;QACnD,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1C,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEnD,IAAI,WAAW,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,cAAc,CAAC,IAAI,oCAAoC,IAAI,GAAG,CAAC,CAAC;YAChH,OAAO;QACX,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;QAEjC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;gBACzC,IAAI,SAAS,EAAE,CAAC;oBACZ,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAC5B,MAAM,IAAI,aAAa,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;gBACtD,CAAC;gBAED,MAAM,SAAS,GAAG,IAAI,CAAC;gBACvB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;oBAClD,MAAM,IAAI,GAAG,WAAW,CAAC,SAAS,EAAG,CAAC;oBACtC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;oBAElC,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE;wBACrB,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC;wBACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;wBAC3D,IAAI,CAAC,SAAS;4BAAE,OAAO,EAAE,CAAC;wBAC1B,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACtE,CAAC,CAAC,EAAE,CAAC;oBAEL,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;oBAElC,8DAA8D;oBAC7D,QAAgB,CAAC,gBAAgB,GAAG,IAAI,CAAC;oBACzC,QAAgB,CAAC,qBAAqB,GAAG,IAAI,CAAC;oBAC/C,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAEnC,QAAgB,CAAC,KAAK,GAAG,KAAK;wBAC3B,MAAM,UAAU,GAAoB,IAAY,CAAC,qBAAqB;+BAC/D,WAAW,CAAC,SAAS,EAAE,CAAC;wBAC/B,IAAI,CAAC,UAAU;4BAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,SAAS,8BAA8B,CAAC,CAAC;wBAE1F,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC;wBAC3C,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAEzE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC;wBACvC,IAAI,OAAO,EAAE,CAAC;4BACV,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAC5B,MAAM,IAAI,aAAa,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;wBACpD,CAAC;wBAED,OAAO,MAAM,CAAC;oBAClB,CAAC,CAAC;oBAEF,OAAO,QAAQ,CAAC;gBACpB,CAAC,CAAC,CAAC;gBAEH,OAAO,CAAC,IAAI,CAAC,4BAA4B,IAAI,6BAA6B,CAAC,CAAC;YAChF,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;gBACzC,IAAI,SAAS,EAAE,CAAC;oBACZ,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAC5B,MAAM,IAAI,aAAa,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;gBACtD,CAAC;gBAED,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,uBAAuB,CAAC,CAAC;gBAEpE,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,SAAS,CAAC;gBACtD,MAAM,cAAc,GAAG,WAAW,CAAC;gBACnC,MAAM,eAAe,GAAG,IAAI,CAAC;gBAE7B,2EAA2E;gBAC3E,IAAI,KAAK,GAAG,GAAG,CAAC,SAAgB,CAAC;gBAEjC,KAAK,CAAC,KAAK,GAAG,KAAK;oBACf,wEAAwE;oBACxE,MAAM,IAAI,GAAoB,IAAY,CAAC,qBAAqB;2BACzD,cAAc,CAAC,SAAS,EAAE,CAAC;oBAElC,IAAI,CAAC,IAAI;wBAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,eAAe,8BAA8B,CAAC,CAAC;oBAE1F,mBAAmB;oBAClB,IAAY,CAAC,gBAAgB,GAAG,eAAe,CAAC;oBACjD,IAAI,CAAE,IAAY,CAAC,qBAAqB;wBACnC,IAAY,CAAC,qBAAqB,GAAG,IAAI,CAAC;oBAE/C,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;oBAEnC,cAAc;oBACd,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;oBACrC,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBAEzE,mBAAmB;oBACnB,MAAM,GAAG,GAA0B,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAC;oBAC/D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC;oBACjC,IAAI,OAAO,EAAE,CAAC;wBACV,GAAG,CAAC,kBAAkB,CAAC,IAAI,CACvB,MAAM,IAAI,aAAa,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;oBACpD,CAAC;oBAED,OAAO,MAAM,CAAC;gBAClB,CAAC,CAAC;gBAEF,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,SAAS,CAAC,WAAuC,CAAC,CAAC;gBACnF,OAAO,CAAC,IAAI,CAAC,8BAA8B,IAAI,6BAA6B,CAAC,CAAC;YAClF,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"TripletDecorator.d.ts","sourceRoot":"","sources":["../../src/foundation/TripletDecorator.ts"],"names":[],"mappings":"AACA,OAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAErD,wBAAgB,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,IACpD,MAAM,QAAQ,UAYzB;AACD,wBAAgB,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,IACjD,MAAM,QAAQ,UAYzB;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,IAC5D,MAAM,QAAQ,UAiBzB"}
1
+ {"version":3,"file":"TripletDecorator.d.ts","sourceRoot":"","sources":["../../src/foundation/TripletDecorator.ts"],"names":[],"mappings":"AACA,OAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAErD,wBAAgB,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,IACpD,MAAM,QAAQ,UAWzB;AACD,wBAAgB,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,IACjD,MAAM,QAAQ,UAWzB;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,IAC5D,MAAM,QAAQ,UAgBzB"}
@@ -6,8 +6,7 @@ export function ReComponent(settings, tag) {
6
6
  if (settings.class === null || settings.class === undefined)
7
7
  settings.class = ctor;
8
8
  const triplet = new Triplet(settings);
9
- triplet.register("markup", tag)
10
- .catch(err => console.error(`[ReComponent:${tag}] register failed`, err));
9
+ triplet.register("markup", tag);
11
10
  };
12
11
  }
13
12
  export function RePage(settings, route) {
@@ -17,8 +16,7 @@ export function RePage(settings, route) {
17
16
  if (settings.class === null || settings.class === undefined)
18
17
  settings.class = ctor;
19
18
  const triplet = new Triplet(settings);
20
- triplet.register("router", route)
21
- .catch(err => console.error(`[RePage:${route}] register failed`, err));
19
+ triplet.register("router", route);
22
20
  };
23
21
  }
24
22
  /**
@@ -41,8 +39,7 @@ export function ReImplementation(settings, target) {
41
39
  const implName = ctor.name;
42
40
  const triplet = new Triplet(settings, implName);
43
41
  // Register adds the implementation to the existing placeholder (or creates one)
44
- triplet.register(target.includes("-") ? "markup" : "router", target)
45
- .catch(err => console.error(`[ReImplementation:${target}] register failed`, err));
42
+ triplet.register(target.includes("-") ? "markup" : "router", target);
46
43
  console.info(`[ReImplementation:${target}] registered implementation "${implName}"`);
47
44
  };
48
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TripletDecorator.js","sourceRoot":"","sources":["../../src/foundation/TripletDecorator.ts"],"names":[],"mappings":"AACA,OAAO,OAA0B,MAAM,cAAc,CAAA;AAErD,MAAM,UAAU,WAAW,CAAC,QAAuB,EAAE,GAAW;IAC5D,OAAO,CAAC,IAAc,EAAE,EAAE;QACtB,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAExD,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS;YACvD,QAAQ,CAAC,KAAK,GAAG,IAA+B,CAAC;QAErD,MAAM,OAAO,GAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC;aAC1B,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC;IAClF,CAAC,CAAA;AACL,CAAC;AACD,MAAM,UAAU,MAAM,CAAC,QAAuB,EAAE,KAAa;IACzD,OAAO,CAAC,IAAc,EAAE,EAAE;QACtB,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;YAC7D,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAE3C,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS;YACvD,QAAQ,CAAC,KAAK,GAAG,IAA+B,CAAC;QAErD,MAAM,OAAO,GAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;aAC5B,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/E,CAAC,CAAA;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAuB,EAAE,MAAc;IACpE,OAAO,CAAC,IAAc,EAAE,EAAE;QACtB,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAEtD,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS;YACvD,QAAQ,CAAC,KAAK,GAAG,IAA+B,CAAC;QAErD,gDAAgD;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3B,MAAM,OAAO,GAAY,IAAI,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEzD,gFAAgF;QAChF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC;aAC/D,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,MAAM,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC;QAEtF,OAAO,CAAC,IAAI,CAAC,qBAAqB,MAAM,gCAAgC,QAAQ,GAAG,CAAC,CAAC;IACzF,CAAC,CAAA;AACL,CAAC"}
1
+ {"version":3,"file":"TripletDecorator.js","sourceRoot":"","sources":["../../src/foundation/TripletDecorator.ts"],"names":[],"mappings":"AACA,OAAO,OAA0B,MAAM,cAAc,CAAA;AAErD,MAAM,UAAU,WAAW,CAAC,QAAuB,EAAE,GAAW;IAC5D,OAAO,CAAC,IAAc,EAAE,EAAE;QACtB,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAExD,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS;YACvD,QAAQ,CAAC,KAAK,GAAG,IAA+B,CAAC;QAErD,MAAM,OAAO,GAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC,CAAA;AACL,CAAC;AACD,MAAM,UAAU,MAAM,CAAC,QAAuB,EAAE,KAAa;IACzD,OAAO,CAAC,IAAc,EAAE,EAAE;QACtB,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;YAC7D,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAE3C,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS;YACvD,QAAQ,CAAC,KAAK,GAAG,IAA+B,CAAC;QAErD,MAAM,OAAO,GAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC,CAAA;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAuB,EAAE,MAAc;IACpE,OAAO,CAAC,IAAc,EAAE,EAAE;QACtB,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAEtD,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS;YACvD,QAAQ,CAAC,KAAK,GAAG,IAA+B,CAAC;QAErD,gDAAgD;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3B,MAAM,OAAO,GAAY,IAAI,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEzD,gFAAgF;QAChF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAErE,OAAO,CAAC,IAAI,CAAC,qBAAqB,MAAM,gCAAgC,QAAQ,GAAG,CAAC,CAAC;IACzF,CAAC,CAAA;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reidelsaltres/pureper",
3
- "version": "0.2.21",
3
+ "version": "0.2.23",
4
4
  "description": "Minimal library extracted from the Pureper SPA foundation — utilities and base classes for components/pages.",
5
5
  "type": "module",
6
6
  "main": "out/src/index.js",
@@ -8,7 +8,7 @@ import TemplateEngine, { TemplateHolder } from "./engine/TemplateEngine.js";
8
8
  import Scope from "./engine/Scope.js";
9
9
  import { Implementation, ImplementationStruct, Placeholder } from "./Injection.js";
10
10
 
11
- export const REGISTRY: (() => void)[] = [];
11
+ export const REGISTRY: (() => Promise<void>)[] = [];
12
12
 
13
13
  export enum AccessType {
14
14
  NONE = 0,
@@ -58,25 +58,25 @@ export default class Triplet {
58
58
  this.implementation = new Implementation(name, struct);
59
59
  }
60
60
 
61
- public async register(type: "router" | "markup", name: string): Promise<void> {
61
+ public register(type: "router" | "markup", name: string): void {
62
62
  const placeholder = Placeholder.get(name);
63
63
  placeholder.addImplementation(this.implementation);
64
64
 
65
- // If the placeholder already has a registered element/route, skip re-registration
66
65
  if (placeholder.implementations.size > 1) {
67
66
  console.info(`[Triplet]: Implementation "${this.implementation.name}" added to existing placeholder "${name}"`);
68
67
  return;
69
68
  }
70
69
 
71
- const globalCss = await this.implementation.globalStyle;
72
- if (globalCss) {
73
- document.adoptedStyleSheets.push(
74
- await new CSSStyleSheet().replace(globalCss));
75
- }
70
+ const impl = this.implementation;
76
71
 
77
- // First implementation — register the placeholder shell
78
72
  if (type === "router") {
79
- REGISTRY.push(() => {
73
+ REGISTRY.push(async () => {
74
+ const globalCss = await impl.globalStyle;
75
+ if (globalCss) {
76
+ document.adoptedStyleSheets.push(
77
+ await new CSSStyleSheet().replace(globalCss));
78
+ }
79
+
80
80
  const routePath = name;
81
81
  Router.registerRoute(this.path, routePath, (search) => {
82
82
  const impl = placeholder.getActive()!;
@@ -121,7 +121,13 @@ export default class Triplet {
121
121
  console.info(`[Triplet]: Router route "${name}" registered as placeholder`);
122
122
  });
123
123
  } else if (type === "markup") {
124
- REGISTRY.push(() => {
124
+ REGISTRY.push(async () => {
125
+ const globalCss = await impl.globalStyle;
126
+ if (globalCss) {
127
+ document.adoptedStyleSheets.push(
128
+ await new CSSStyleSheet().replace(globalCss));
129
+ }
130
+
125
131
  if (customElements.get(name))
126
132
  throw new Error(`Custom element '${name}' is already defined.`);
127
133
 
@@ -11,8 +11,7 @@ export function ReComponent(settings: TripletStruct, tag: string) {
11
11
 
12
12
  const triplet: Triplet = new Triplet(settings);
13
13
 
14
- triplet.register("markup", tag)
15
- .catch(err => console.error(`[ReComponent:${tag}] register failed`, err));
14
+ triplet.register("markup", tag);
16
15
  }
17
16
  }
18
17
  export function RePage(settings: TripletStruct, route: string) {
@@ -25,8 +24,7 @@ export function RePage(settings: TripletStruct, route: string) {
25
24
 
26
25
  const triplet: Triplet = new Triplet(settings);
27
26
 
28
- triplet.register("router", route)
29
- .catch(err => console.error(`[RePage:${route}] register failed`, err));
27
+ triplet.register("router", route);
30
28
  }
31
29
  }
32
30
 
@@ -53,8 +51,7 @@ export function ReImplementation(settings: TripletStruct, target: string) {
53
51
  const triplet: Triplet = new Triplet(settings, implName);
54
52
 
55
53
  // Register adds the implementation to the existing placeholder (or creates one)
56
- triplet.register(target.includes("-") ? "markup" : "router", target)
57
- .catch(err => console.error(`[ReImplementation:${target}] register failed`, err));
54
+ triplet.register(target.includes("-") ? "markup" : "router", target);
58
55
 
59
56
  console.info(`[ReImplementation:${target}] registered implementation "${implName}"`);
60
57
  }