@qwik-custom-elements/adapter-stencil 1.0.0

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 (69) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +420 -0
  3. package/dist/bundle-graph.json +1 -0
  4. package/dist/client/client-setup.d.ts +9 -0
  5. package/dist/client/client-setup.d.ts.map +1 -0
  6. package/dist/client/client-setup.test.d.ts +2 -0
  7. package/dist/client/client-setup.test.d.ts.map +1 -0
  8. package/dist/client/index.cjs +1 -0
  9. package/dist/client/index.d.ts +3 -0
  10. package/dist/client/index.d.ts.map +1 -0
  11. package/dist/client/index.js +6 -0
  12. package/dist/client/stencil-csr-props.d.ts +2 -0
  13. package/dist/client/stencil-csr-props.d.ts.map +1 -0
  14. package/dist/client/stencil-csr-props.test.d.ts +2 -0
  15. package/dist/client/stencil-csr-props.test.d.ts.map +1 -0
  16. package/dist/client/stencil-csr.d.ts +10 -0
  17. package/dist/client/stencil-csr.d.ts.map +1 -0
  18. package/dist/client-setup-C_qW_ZSR.cjs +1 -0
  19. package/dist/client-setup-D-ffVtNL.js +53 -0
  20. package/dist/client-setup.ts_createStencilClientSetup_runSetup_6wDTmOSdSbc-CPKK-h2J.js +11 -0
  21. package/dist/client-setup.ts_createStencilClientSetup_runSetup_6wDTmOSdSbc-Dz0z3zer.cjs +1 -0
  22. package/dist/core.min-Qm7Mxv6F.js +1846 -0
  23. package/dist/core.min-vJ4M2jcU.cjs +2 -0
  24. package/dist/index.d.ts +84 -0
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.qwik.cjs +8 -0
  27. package/dist/index.qwik.mjs +364 -0
  28. package/dist/index.test.d.ts +2 -0
  29. package/dist/index.test.d.ts.map +1 -0
  30. package/dist/preloader-Bietv0BS.js +118 -0
  31. package/dist/preloader-Cqc--uBU.cjs +1 -0
  32. package/dist/q-manifest.json +381 -0
  33. package/dist/qwikloader-C01zMTOC.js +102 -0
  34. package/dist/qwikloader-vFGnpgvG.cjs +2 -0
  35. package/dist/ssr/element-props-utils.d.ts +10 -0
  36. package/dist/ssr/element-props-utils.d.ts.map +1 -0
  37. package/dist/ssr/element-props-utils.test.d.ts +2 -0
  38. package/dist/ssr/element-props-utils.test.d.ts.map +1 -0
  39. package/dist/ssr/index.cjs +1 -0
  40. package/dist/ssr/index.d.ts +5 -0
  41. package/dist/ssr/index.d.ts.map +1 -0
  42. package/dist/ssr/index.js +29 -0
  43. package/dist/ssr/model.d.ts +49 -0
  44. package/dist/ssr/model.d.ts.map +1 -0
  45. package/dist/ssr/stencil-ssr.d.ts +14 -0
  46. package/dist/ssr/stencil-ssr.d.ts.map +1 -0
  47. package/dist/ssr/styles-core.d.ts +29 -0
  48. package/dist/ssr/styles-core.d.ts.map +1 -0
  49. package/dist/ssr/styles-core.test.d.ts +2 -0
  50. package/dist/ssr/styles-core.test.d.ts.map +1 -0
  51. package/dist/stencil-csr-B1U9s3VQ.js +24 -0
  52. package/dist/stencil-csr-D6zt1Am9.cjs +1 -0
  53. package/dist/stencil-csr.tsx_createStencilCSRComponent_component_pD3ekIZcUT0-ChAZ0hL3.js +37 -0
  54. package/dist/stencil-csr.tsx_createStencilCSRComponent_component_pD3ekIZcUT0-cGN__hqm.cjs +1 -0
  55. package/dist/stencil-csr.tsx_createStencilCSRComponent_component_useVisibleTask_1_dqWPXf9eNnk-BYiBxXW-.js +34 -0
  56. package/dist/stencil-csr.tsx_createStencilCSRComponent_component_useVisibleTask_1_dqWPXf9eNnk-sFN0uMI_.cjs +1 -0
  57. package/dist/stencil-csr.tsx_createStencilCSRComponent_component_useVisibleTask_y00qkhhKua8-BSsN2V78.cjs +1 -0
  58. package/dist/stencil-csr.tsx_createStencilCSRComponent_component_useVisibleTask_y00qkhhKua8-CF00O7hf.js +19 -0
  59. package/dist/stencil-ssr-BHjT94rd.js +118 -0
  60. package/dist/stencil-ssr-UlYtcG0-.cjs +1 -0
  61. package/dist/stencil-ssr.tsx_createStencilSSRBridgeComponent_component_IlVdOHKZfN0-46y8eTjO.cjs +1 -0
  62. package/dist/stencil-ssr.tsx_createStencilSSRBridgeComponent_component_IlVdOHKZfN0-BfqXBofh.js +42 -0
  63. package/dist/stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useOnDocument_bvALMlewx7Q-DA73DRke.cjs +1 -0
  64. package/dist/stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useOnDocument_bvALMlewx7Q-DdcskN1z.js +10 -0
  65. package/dist/stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useTask_1_aXg7AuatGTc-61dSP-JG.cjs +1 -0
  66. package/dist/stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useTask_1_aXg7AuatGTc-Byrz3fUp.js +34 -0
  67. package/dist/stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useTask_IH8I3eLdwI0-BtIygb8E.js +12 -0
  68. package/dist/stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useTask_IH8I3eLdwI0-DNQBT8Vc.cjs +1 -0
  69. package/package.json +53 -0
@@ -0,0 +1,29 @@
1
+ import { d as S, e as _, f as m, c as y, g as f, b as g, a as E, h as b, i as v, j as d, k as p, t as k } from "../stencil-ssr-BHjT94rd.js";
2
+ function o(e) {
3
+ const t = typeof e;
4
+ return e == null || t === "string" || t === "number" || t === "boolean";
5
+ }
6
+ function l(e, t) {
7
+ if (!e || !t) return;
8
+ const s = Object.keys(t);
9
+ for (const n of s) {
10
+ const i = t[n];
11
+ if (n.startsWith("on") || n.startsWith("$")) continue;
12
+ o(i) ? e.setAttribute(n, String(i)) : e[n] = i;
13
+ }
14
+ }
15
+ export {
16
+ S as _auto_buildInlineStylesHtml,
17
+ _ as _auto_buildInputHtml,
18
+ m as _auto_collectSlotEntries,
19
+ y as _auto_getEventEntries,
20
+ f as _auto_getEventsDependencyKey,
21
+ g as _auto_getStencilElement,
22
+ E as _auto_getWrapperElement,
23
+ b as collectStencilSsrStyles,
24
+ v as createStencilSSRBridgeComponent,
25
+ d as createStencilSsrStyleStore,
26
+ p as getOrCreateStencilSsrStyleStore,
27
+ k as toDocumentHeadStyles,
28
+ l as updateStencilElementProps
29
+ };
@@ -0,0 +1,49 @@
1
+ import { QRL } from '@builder.io/qwik';
2
+ export interface StencilRenderToStringOptions {
3
+ prettyHtml?: boolean;
4
+ removeScripts?: boolean;
5
+ fullDocument?: boolean;
6
+ removeUnusedStyles?: boolean;
7
+ serializeShadowRoot?: 'declarative-shadow-dom' | 'scoped' | {
8
+ 'declarative-shadow-dom'?: string[];
9
+ scoped?: string[];
10
+ default: 'declarative-shadow-dom' | 'scoped';
11
+ } | boolean;
12
+ beforeHydrate?: (root: ParentNode) => void;
13
+ [key: string]: unknown;
14
+ }
15
+ export interface StencilHydrateStyleElement {
16
+ id?: string;
17
+ href?: string;
18
+ content?: string;
19
+ [key: string]: string | undefined;
20
+ }
21
+ export interface StencilHydrateComponent {
22
+ tag: string;
23
+ mode: string;
24
+ count: number;
25
+ depth: number;
26
+ }
27
+ export interface StencilRenderToStringResult {
28
+ html: string | null;
29
+ styles?: StencilHydrateStyleElement[];
30
+ components?: StencilHydrateComponent[];
31
+ }
32
+ export type StencilRenderToString = (input: string, options?: StencilRenderToStringOptions) => Promise<StencilRenderToStringResult>;
33
+ export interface StencilSSRProps {
34
+ tagName: string;
35
+ props?: Record<string, unknown>;
36
+ /**
37
+ * Optional custom-event names exposed by the Stencil component.
38
+ * Used by the runtime bridge to attach listeners even when handlers
39
+ * do not follow onX$ naming or use directive-based syntax.
40
+ */
41
+ events?: Record<string, QRL<(...args: any[]) => void>>;
42
+ /**
43
+ * Names of the named slots this Stencil component accepts (e.g. `['footer']`).
44
+ * Children with the matching `q:slot` attribute will be projected into them.
45
+ */
46
+ slots?: string[];
47
+ [key: string]: unknown;
48
+ }
49
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/ssr/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEvC,MAAM,WAAW,4BAA4B;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,mBAAmB,CAAC,EAChB,wBAAwB,GACxB,QAAQ,GACR;QACE,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;QACpC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,EAAE,wBAAwB,GAAG,QAAQ,CAAC;KAC9C,GACD,OAAO,CAAC;IACZ,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3C,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,0BAA0B;IACzC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACtC,UAAU,CAAC,EAAE,uBAAuB,EAAE,CAAC;CACxC;AAED,MAAM,MAAM,qBAAqB,GAAG,CAClC,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,4BAA4B,KACnC,OAAO,CAAC,2BAA2B,CAAC,CAAC;AAE1C,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;IACvD;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
@@ -0,0 +1,14 @@
1
+ import { type QRL } from '@builder.io/qwik';
2
+ import type { StencilRenderToString, StencilSSRProps } from './model';
3
+ /**
4
+ * Creates a Qwik component that renders a Stencil component with SSR support.
5
+ * Handles slot projection, prop synchronization, and style deduplication.
6
+ *
7
+ * @param stencilRenderToString$ - QRL reference to Stencil's renderToString function
8
+ * @param options - Optional callbacks for SSR lifecycle events
9
+ * @returns A Qwik component that can be used like any other Qwik component
10
+ */
11
+ export declare function createStencilSSRBridgeComponent(stencilRenderToString$: QRL<StencilRenderToString>, options?: {
12
+ onSsrRenderResultQrl?: QRL<(result: Awaited<ReturnType<StencilRenderToString>>) => void | Promise<void>>;
13
+ }): import("@builder.io/qwik").Component<StencilSSRProps>;
14
+ //# sourceMappingURL=stencil-ssr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stencil-ssr.d.ts","sourceRoot":"","sources":["../../src/ssr/stencil-ssr.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,GAAG,EAQT,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAwKtE;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,sBAAsB,EAAE,GAAG,CAAC,qBAAqB,CAAC,EAClD,OAAO,CAAC,EAAE;IACR,oBAAoB,CAAC,EAAE,GAAG,CACxB,CACE,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,KAC/C,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAC1B,CAAC;CACH,yDA4KF"}
@@ -0,0 +1,29 @@
1
+ import type { DocumentStyle, RequestEventBase } from '@builder.io/qwik-city';
2
+ import type { StencilRenderToStringResult } from './model';
3
+ export interface StencilSsrStyleStore {
4
+ stylesByKey: Map<string, string>;
5
+ }
6
+ export interface StencilSsrHeadStyleOptions {
7
+ keyPrefix?: string;
8
+ nonce?: string;
9
+ }
10
+ /**
11
+ * Creates a new style store for collecting Stencil component styles during SSR.
12
+ */
13
+ export declare function createStencilSsrStyleStore(): StencilSsrStyleStore;
14
+ /**
15
+ * Retrieves or creates a request-scoped style store from the Qwik request context.
16
+ * Ensures styles are deduplicated across multiple renders in the same request.
17
+ */
18
+ export declare function getOrCreateStencilSsrStyleStore(requestEvent: Pick<RequestEventBase, 'sharedMap'>): StencilSsrStyleStore;
19
+ /**
20
+ * Collects styles from a Stencil renderToString result and stores them.
21
+ * Normalizes style keys and deduplicates by key to prevent CSS duplication.
22
+ */
23
+ export declare function collectStencilSsrStyles(result: StencilRenderToStringResult, styleStore: StencilSsrStyleStore, tagName?: string): void;
24
+ /**
25
+ * Converts collected styles from a style store into Qwik DocumentStyle[]
26
+ * for use in document head rendering. Supports key prefixing and CSP nonce.
27
+ */
28
+ export declare function toDocumentHeadStyles(styleStore: StencilSsrStyleStore, options?: StencilSsrHeadStyleOptions): DocumentStyle[];
29
+ //# sourceMappingURL=styles-core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles-core.d.ts","sourceRoot":"","sources":["../../src/ssr/styles-core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAI3D,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAkBD;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,oBAAoB,CAIjE;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,GAChD,oBAAoB,CAYtB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,2BAA2B,EACnC,UAAU,EAAE,oBAAoB,EAChC,OAAO,CAAC,EAAE,MAAM,QAcjB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,oBAAoB,EAChC,OAAO,CAAC,EAAE,0BAA0B,GACnC,aAAa,EAAE,CASjB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=styles-core.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles-core.test.d.ts","sourceRoot":"","sources":["../../src/ssr/styles-core.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import { d as c, L as i } from "./core.min-Qm7Mxv6F.js";
2
+ const r = /* @__PURE__ */ new WeakMap();
3
+ let s = 0;
4
+ function u(t) {
5
+ if (!t || typeof t != "object" && typeof t != "function") return -1;
6
+ const e = t, n = r.get(e);
7
+ if (n) return n;
8
+ const o = ++s;
9
+ return r.set(e, o), o;
10
+ }
11
+ function a(t) {
12
+ return Object.entries(t ?? {}).filter(([e, n]) => e.trim().length > 0 && !!n);
13
+ }
14
+ function p(t) {
15
+ return a(t).map(([e, n]) => `${e}:${u(n)}`).sort().join("|");
16
+ }
17
+ function g() {
18
+ return /* @__PURE__ */ c(/* @__PURE__ */ i(() => import("./stencil-csr.tsx_createStencilCSRComponent_component_pD3ekIZcUT0-ChAZ0hL3.js"), "s_pD3ekIZcUT0"));
19
+ }
20
+ export {
21
+ a,
22
+ g as c,
23
+ p as g
24
+ };
@@ -0,0 +1 @@
1
+ "use strict";const o=require("./core.min-vJ4M2jcU.cjs"),c=new WeakMap;let s=0;function u(e){if(!e||typeof e!="object"&&typeof e!="function")return-1;const t=e,n=c.get(t);if(n)return n;const r=++s;return c.set(t,r),r}function i(e){return Object.entries(e??{}).filter(([t,n])=>t.trim().length>0&&!!n)}function f(e){return i(e).map(([t,n])=>`${t}:${u(n)}`).sort().join("|")}function p(){return o.bc(o.Ls(()=>Promise.resolve().then(()=>require("./stencil-csr.tsx_createStencilCSRComponent_component_pD3ekIZcUT0-cGN__hqm.cjs")),"s_pD3ekIZcUT0"))}exports.createStencilCSRComponent=p;exports.getEventEntries=i;exports.getEventsDependencyKey=f;
@@ -0,0 +1,37 @@
1
+ import { b as m, a as i, K as n, A as e, s as o, I as _, L as c, c as l } from "./core.min-Qm7Mxv6F.js";
2
+ const h = (s) => {
3
+ const r = m(s, [
4
+ "tagName",
5
+ "props",
6
+ "events",
7
+ "slots"
8
+ ]), t = i(), f = s.slots ?? [];
9
+ return n(/* @__PURE__ */ c(() => import("./stencil-csr.tsx_createStencilCSRComponent_component_useVisibleTask_y00qkhhKua8-CF00O7hf.js"), "s_y00qkhhKua8", [
10
+ t,
11
+ s
12
+ ])), n(/* @__PURE__ */ c(() => import("./stencil-csr.tsx_createStencilCSRComponent_component_useVisibleTask_1_dqWPXf9eNnk-BYiBxXW-.js"), "s_dqWPXf9eNnk", [
13
+ t,
14
+ s
15
+ ])), /* @__PURE__ */ e(s.tagName, {
16
+ ref: t,
17
+ ...r,
18
+ children: [
19
+ /* @__PURE__ */ e(o, null, 3, "fM_0"),
20
+ f.map((a) => /* @__PURE__ */ _("span", {
21
+ slot: a
22
+ }, {
23
+ style: {
24
+ display: "contents"
25
+ }
26
+ }, /* @__PURE__ */ e(o, {
27
+ name: a
28
+ }, 3, "fM_1"), 1, a))
29
+ ],
30
+ [l]: {
31
+ ref: l
32
+ }
33
+ }, 0, "fM_2");
34
+ };
35
+ export {
36
+ h as s_pD3ekIZcUT0
37
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./core.min-vJ4M2jcU.cjs"),c=s=>{const r=e.bt(s,["tagName","props","events","slots"]),t=e.Le(),o=s.slots??[];return e.Ke(e.Ls(()=>Promise.resolve().then(()=>require("./stencil-csr.tsx_createStencilCSRComponent_component_useVisibleTask_y00qkhhKua8-BSsN2V78.cjs")),"s_y00qkhhKua8",[t,s])),e.Ke(e.Ls(()=>Promise.resolve().then(()=>require("./stencil-csr.tsx_createStencilCSRComponent_component_useVisibleTask_1_dqWPXf9eNnk-sFN0uMI_.cjs")),"s_dqWPXf9eNnk",[t,s])),e.An(s.tagName,{ref:t,...r,children:[e.An(e.si,null,3,"fM_0"),o.map(n=>e.In("span",{slot:n},{style:{display:"contents"}},e.An(e.si,{name:n},3,"fM_1"),1,n))],[e.ct]:{ref:e.ct}},0,"fM_2")};exports.s_pD3ekIZcUT0=c;
@@ -0,0 +1,34 @@
1
+ import { v as E } from "./core.min-Qm7Mxv6F.js";
2
+ import { x as L } from "./core.min-Qm7Mxv6F.js";
3
+ import { g, a as y } from "./stencil-csr-B1U9s3VQ.js";
4
+ const N = ({ track: s, cleanup: f }) => {
5
+ const [a, o] = E(), e = s(() => a.value), p = s(() => g(o.events));
6
+ if (!e) return;
7
+ const r = y(o.events);
8
+ if (r.length === 0 || p.length === 0) return;
9
+ let c = !1;
10
+ const i = [];
11
+ f(() => {
12
+ c = !0;
13
+ for (const { eventName: t, listener: n } of i) e.removeEventListener(t, n);
14
+ });
15
+ for (const [t, n] of r) {
16
+ const v = (m) => {
17
+ const d = n, l = e.closest("[q\\:container]");
18
+ l && d.$setContainer$?.(l);
19
+ const h = n(m, e);
20
+ Promise.resolve(h).catch((u) => {
21
+ console.error(u);
22
+ });
23
+ };
24
+ if (c) return;
25
+ e.addEventListener(t, v), i.push({
26
+ eventName: t,
27
+ listener: v
28
+ });
29
+ }
30
+ };
31
+ export {
32
+ L as _hW,
33
+ N as s_dqWPXf9eNnk
34
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./core.min-vJ4M2jcU.cjs"),f=require("./stencil-csr-D6zt1Am9.cjs"),q=({track:s,cleanup:a})=>{const[d,r]=u.ve(),e=s(()=>d.value),h=s(()=>f.getEventsDependencyKey(r.events));if(!e)return;const o=f.getEventEntries(r.events);if(o.length===0||h.length===0)return;let c=!1;const i=[];a(()=>{c=!0;for(const{eventName:t,listener:n}of i)e.removeEventListener(t,n)});for(const[t,n]of o){const l=p=>{const E=n,v=e.closest("[q\\:container]");v&&E.$setContainer$?.(v);const g=n(p,e);Promise.resolve(g).catch(m=>{console.error(m)})};if(c)return;e.addEventListener(t,l),i.push({eventName:t,listener:l})}};exports._hW=u.xe;exports.s_dqWPXf9eNnk=q;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./core.min-vJ4M2jcU.cjs"),i="on",c="$";function u(t){return t.startsWith(i)||t.startsWith(c)}function a(t,e){if(!(!t||!e))for(const[o,s]of Object.entries(e))u(o)||(t[o]=s)}const p=({track:t})=>{const[e,o]=n.ve(),s=t(()=>e.value),r=t(()=>o.props);a(s,r)};exports._hW=n.xe;exports.s_y00qkhhKua8=p;
@@ -0,0 +1,19 @@
1
+ import { v as r } from "./core.min-Qm7Mxv6F.js";
2
+ import { x as h } from "./core.min-Qm7Mxv6F.js";
3
+ const i = "on", c = "$";
4
+ function p(t) {
5
+ return t.startsWith(i) || t.startsWith(c);
6
+ }
7
+ function f(t, o) {
8
+ if (!(!t || !o))
9
+ for (const [s, n] of Object.entries(o))
10
+ p(s) || (t[s] = n);
11
+ }
12
+ const a = ({ track: t }) => {
13
+ const [o, s] = r(), n = t(() => o.value), e = t(() => s.props);
14
+ f(n, e);
15
+ };
16
+ export {
17
+ h as _hW,
18
+ a as s_y00qkhhKua8
19
+ };
@@ -0,0 +1,118 @@
1
+ import { d, L as S } from "./core.min-Qm7Mxv6F.js";
2
+ const c = "__stencil_ssr_style_store__";
3
+ function m(e, t = "", n) {
4
+ return e && e.length > 0 ? e : n ? `sc-${n}` : `inline-${t.length}-${t.slice(0, 32)}`;
5
+ }
6
+ function u() {
7
+ return {
8
+ stylesByKey: /* @__PURE__ */ new Map()
9
+ };
10
+ }
11
+ function h(e) {
12
+ const t = e.sharedMap.get(c);
13
+ if (t) return t;
14
+ const n = u();
15
+ return e.sharedMap.set(c, n), n;
16
+ }
17
+ function p(e, t, n) {
18
+ if (!(!e.styles || e.styles.length === 0))
19
+ for (const r of e.styles) {
20
+ const s = r.content ?? "", o = r.id;
21
+ if (!s) continue;
22
+ const i = m(o, s, n);
23
+ t.stylesByKey.set(i, s);
24
+ }
25
+ }
26
+ function M(e, t) {
27
+ const n = t?.keyPrefix ?? "stencil-ssr", r = t?.nonce;
28
+ return [
29
+ ...e.stylesByKey.entries()
30
+ ].map(([s, o]) => ({
31
+ key: `${n}-${s}`,
32
+ style: o,
33
+ props: r ? {
34
+ nonce: r
35
+ } : void 0
36
+ }));
37
+ }
38
+ const a = "__stencil_ssr_inline_emitted__", l = /* @__PURE__ */ new WeakMap();
39
+ let _ = 0;
40
+ function g(e) {
41
+ if (!e || typeof e != "object" && typeof e != "function") return -1;
42
+ const t = e, n = l.get(t);
43
+ if (n) return n;
44
+ const r = ++_;
45
+ return l.set(t, r), r;
46
+ }
47
+ function E() {
48
+ const e = globalThis.qcAsyncRequestStore?.getStore?.();
49
+ if (!e?.sharedMap || !(e.sharedMap instanceof Map)) return /* @__PURE__ */ new Set();
50
+ const t = e.sharedMap.get(a);
51
+ if (t) return t;
52
+ const n = /* @__PURE__ */ new Set();
53
+ return e.sharedMap.set(a, n), n;
54
+ }
55
+ function K(e, t) {
56
+ const n = E(), r = u();
57
+ p(e, r, t);
58
+ let s = "";
59
+ for (const [o, i] of r.stylesByKey) n.has(o) || (n.add(o), s += `<style sty-id="${o}">${i}</style>`);
60
+ return s;
61
+ }
62
+ const f = "<!--SLOT-->";
63
+ function y(e) {
64
+ return `<!--SLOT:${e}-->`;
65
+ }
66
+ function I(e, t) {
67
+ return e?.querySelector(t);
68
+ }
69
+ function T(e) {
70
+ return document.querySelector(`[data-stencil-wrapper-id="${e}"]`) ?? void 0;
71
+ }
72
+ function $(e) {
73
+ return Object.entries(e ?? {}).filter(([t, n]) => t.trim().length > 0 && !!n);
74
+ }
75
+ function L(e) {
76
+ return $(e).map(([t, n]) => `${t}:${g(n)}`).sort().join("|");
77
+ }
78
+ function O(e, t) {
79
+ const n = t.map((r) => `<div slot="${r}" style="display:contents">${y(r)}</div>`).join("");
80
+ return `<${e}>${f}${n}</${e}>`;
81
+ }
82
+ function v(e, t) {
83
+ const n = [
84
+ {
85
+ marker: f,
86
+ name: void 0
87
+ },
88
+ ...t.map((s) => ({
89
+ marker: y(s),
90
+ name: s
91
+ }))
92
+ ], r = /* @__PURE__ */ new Map();
93
+ for (const s of n) {
94
+ const o = e.indexOf(s.marker);
95
+ o !== -1 && r.set(s.marker, o);
96
+ }
97
+ return n.filter((s) => r.has(s.marker)).sort((s, o) => r.get(s.marker) - r.get(o.marker));
98
+ }
99
+ function b(e, t) {
100
+ return /* @__PURE__ */ d(/* @__PURE__ */ S(() => import("./stencil-ssr.tsx_createStencilSSRBridgeComponent_component_IlVdOHKZfN0-BfqXBofh.js"), "s_IlVdOHKZfN0", [
101
+ t,
102
+ e
103
+ ]));
104
+ }
105
+ export {
106
+ T as a,
107
+ I as b,
108
+ $ as c,
109
+ K as d,
110
+ O as e,
111
+ v as f,
112
+ L as g,
113
+ p as h,
114
+ b as i,
115
+ u as j,
116
+ h as k,
117
+ M as t
118
+ };
@@ -0,0 +1 @@
1
+ "use strict";const l=require("./core.min-vJ4M2jcU.cjs"),a="__stencil_ssr_style_store__";function p(e,t="",n){return e&&e.length>0?e:n?`sc-${n}`:`inline-${t.length}-${t.slice(0,32)}`}function c(){return{stylesByKey:new Map}}function E(e){const t=e.sharedMap.get(a);if(t)return t;const n=c();return e.sharedMap.set(a,n),n}function y(e,t,n){if(!(!e.styles||e.styles.length===0))for(const r of e.styles){const s=r.content??"",o=r.id;if(!s)continue;const i=p(o,s,n);t.stylesByKey.set(i,s)}}function g(e,t){const n=t?.keyPrefix??"stencil-ssr",r=t?.nonce;return[...e.stylesByKey.entries()].map(([s,o])=>({key:`${n}-${s}`,style:o,props:r?{nonce:r}:void 0}))}const u="__stencil_ssr_inline_emitted__",S=new WeakMap;let _=0;function $(e){if(!e||typeof e!="object"&&typeof e!="function")return-1;const t=e,n=S.get(t);if(n)return n;const r=++_;return S.set(t,r),r}function h(){const e=globalThis.qcAsyncRequestStore?.getStore?.();if(!e?.sharedMap||!(e.sharedMap instanceof Map))return new Set;const t=e.sharedMap.get(u);if(t)return t;const n=new Set;return e.sharedMap.set(u,n),n}function k(e,t){const n=h(),r=c();y(e,r,t);let s="";for(const[o,i]of r.stylesByKey)n.has(o)||(n.add(o),s+=`<style sty-id="${o}">${i}</style>`);return s}const d="<!--SLOT-->";function f(e){return`<!--SLOT:${e}-->`}function I(e,t){return e?.querySelector(t)}function K(e){return document.querySelector(`[data-stencil-wrapper-id="${e}"]`)??void 0}function m(e){return Object.entries(e??{}).filter(([t,n])=>t.trim().length>0&&!!n)}function M(e){return m(e).map(([t,n])=>`${t}:${$(n)}`).sort().join("|")}function v(e,t){const n=t.map(r=>`<div slot="${r}" style="display:contents">${f(r)}</div>`).join("");return`<${e}>${d}${n}</${e}>`}function O(e,t){const n=[{marker:d,name:void 0},...t.map(s=>({marker:f(s),name:s}))],r=new Map;for(const s of n){const o=e.indexOf(s.marker);o!==-1&&r.set(s.marker,o)}return n.filter(s=>r.has(s.marker)).sort((s,o)=>r.get(s.marker)-r.get(o.marker))}function T(e,t){return l.bc(l.Ls(()=>Promise.resolve().then(()=>require("./stencil-ssr.tsx_createStencilSSRBridgeComponent_component_IlVdOHKZfN0-46y8eTjO.cjs")),"s_IlVdOHKZfN0",[t,e]))}exports.buildInlineStylesHtml=k;exports.buildInputHtml=v;exports.collectSlotEntries=O;exports.collectStencilSsrStyles=y;exports.createStencilSSRBridgeComponent=T;exports.createStencilSsrStyleStore=c;exports.getEventEntries=m;exports.getEventsDependencyKey=M;exports.getOrCreateStencilSsrStyleStore=E;exports.getStencilElement=I;exports.getWrapperElement=K;exports.toDocumentHeadStyles=g;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./core.min-vJ4M2jcU.cjs"),c=s=>{const[a,d]=e.ve();e._r();const o=e.bt(s,["tagName","props","events","slots"]),t=e.Le(void 0),r=e.Le(!1),n=e.Mc(),l=s.slots??[];return e.Re("qinit",e.Ls(()=>Promise.resolve().then(()=>require("./stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useOnDocument_bvALMlewx7Q-DA73DRke.cjs")),"s_bvALMlewx7Q",[r])),e.He(e.Ls(()=>Promise.resolve().then(()=>require("./stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useTask_IH8I3eLdwI0-DNQBT8Vc.cjs")),"s_IH8I3eLdwI0",[s,n,t])),e.He(e.Ls(()=>Promise.resolve().then(()=>require("./stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useTask_1_aXg7AuatGTc-61dSP-JG.cjs")),"s_aXg7AuatGTc",[r,s,n,t])),e.zn("div",{ref:t,"data-stencil-wrapper-id":n,...o,style:{display:"contents"},children:[e.An(e.si,null,3,"Nj_8"),l.map(i=>e.An(e.si,{name:i},3,i))]},{"data-stencil-wrapper-id":e.ct,style:e.ct},0,"Nj_9")};exports.s_IlVdOHKZfN0=c;
@@ -0,0 +1,42 @@
1
+ import { v as _, _ as f, b as w, a as i, M as v, R as I, H as o, z as L, A as c, L as a, c as l, s as d } from "./core.min-Qm7Mxv6F.js";
2
+ const A = (s) => {
3
+ const [R, u] = _();
4
+ f();
5
+ const p = w(s, [
6
+ "tagName",
7
+ "props",
8
+ "events",
9
+ "slots"
10
+ ]), t = i(void 0), n = i(!1), e = v(), m = s.slots ?? [];
11
+ return I("qinit", /* @__PURE__ */ a(() => import("./stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useOnDocument_bvALMlewx7Q-DdcskN1z.js"), "s_bvALMlewx7Q", [
12
+ n
13
+ ])), o(/* @__PURE__ */ a(() => import("./stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useTask_IH8I3eLdwI0-BtIygb8E.js"), "s_IH8I3eLdwI0", [
14
+ s,
15
+ e,
16
+ t
17
+ ])), o(/* @__PURE__ */ a(() => import("./stencil-ssr.tsx_createStencilSSRBridgeComponent_component_useTask_1_aXg7AuatGTc-Byrz3fUp.js"), "s_aXg7AuatGTc", [
18
+ n,
19
+ s,
20
+ e,
21
+ t
22
+ ])), /* @__PURE__ */ L("div", {
23
+ ref: t,
24
+ "data-stencil-wrapper-id": e,
25
+ ...p,
26
+ style: {
27
+ display: "contents"
28
+ },
29
+ children: [
30
+ /* @__PURE__ */ c(d, null, 3, "Nj_8"),
31
+ m.map((r) => /* @__PURE__ */ c(d, {
32
+ name: r
33
+ }, 3, r))
34
+ ]
35
+ }, {
36
+ "data-stencil-wrapper-id": l,
37
+ style: l
38
+ }, 0, "Nj_9");
39
+ };
40
+ export {
41
+ A as s_IlVdOHKZfN0
42
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./core.min-vJ4M2jcU.cjs"),o=()=>{const[t]=e.ve();t.value=!0};exports._hW=e.xe;exports.s_bvALMlewx7Q=o;
@@ -0,0 +1,10 @@
1
+ import { v as o } from "./core.min-Qm7Mxv6F.js";
2
+ import { x as v } from "./core.min-Qm7Mxv6F.js";
3
+ const r = () => {
4
+ const [e] = o();
5
+ e.value = !0;
6
+ };
7
+ export {
8
+ v as _hW,
9
+ r as s_bvALMlewx7Q
10
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./core.min-vJ4M2jcU.cjs"),r=require("./stencil-ssr-UlYtcG0-.cjs"),w=({cleanup:p,track:o})=>{const[f,s,d,g]=u.ve(),E=o(()=>f.value),m=o(()=>r.getEventsDependencyKey(s.events));if(!E)return;const y=r.getWrapperElement(d)??g.value,e=r.getStencilElement(y,s.tagName),c=r.getEventEntries(s.events);if(!e||c.length===0||m.length===0)return;let i=!1;const l=[];p(()=>{i=!0;for(const{eventName:t,listener:n}of l)e.removeEventListener(t,n)});for(const[t,n]of c){const a=h=>{const q=n,v=e.closest("[q\\:container]");v&&q.$setContainer$?.(v);const S=n(h,e);Promise.resolve(S).catch(_=>{console.error(_)})};if(i)return;e.addEventListener(t,a),l.push({eventName:t,listener:a})}};exports._hW=u.xe;exports.s_aXg7AuatGTc=w;
@@ -0,0 +1,34 @@
1
+ import { v as x } from "./core.min-Qm7Mxv6F.js";
2
+ import { x as b } from "./core.min-Qm7Mxv6F.js";
3
+ import { g as N, a as q, b as D, c as K } from "./stencil-ssr-BHjT94rd.js";
4
+ const W = ({ cleanup: p, track: s }) => {
5
+ const [v, r, f, m] = x(), u = s(() => v.value), E = s(() => N(r.events));
6
+ if (!u) return;
7
+ const d = q(f) ?? m.value, e = D(d, r.tagName), o = K(r.events);
8
+ if (!e || o.length === 0 || E.length === 0) return;
9
+ let a = !1;
10
+ const c = [];
11
+ p(() => {
12
+ a = !0;
13
+ for (const { eventName: t, listener: n } of c) e.removeEventListener(t, n);
14
+ });
15
+ for (const [t, n] of o) {
16
+ const i = (g) => {
17
+ const y = n, l = e.closest("[q\\:container]");
18
+ l && y.$setContainer$?.(l);
19
+ const h = n(g, e);
20
+ Promise.resolve(h).catch((w) => {
21
+ console.error(w);
22
+ });
23
+ };
24
+ if (a) return;
25
+ e.addEventListener(t, i), c.push({
26
+ eventName: t,
27
+ listener: i
28
+ });
29
+ }
30
+ };
31
+ export {
32
+ b as _hW,
33
+ W as s_aXg7AuatGTc
34
+ };
@@ -0,0 +1,12 @@
1
+ import { v as m } from "./core.min-Qm7Mxv6F.js";
2
+ import { x as g } from "./core.min-Qm7Mxv6F.js";
3
+ import { a as n, b as c } from "./stencil-ssr-BHjT94rd.js";
4
+ import { updateStencilElementProps as l } from "./ssr/index.js";
5
+ const w = ({ track: r }) => {
6
+ const [e, t, p] = m(), o = r(() => e.props), s = n(t) ?? p.value, a = c(s, e.tagName);
7
+ l(a, o);
8
+ };
9
+ export {
10
+ g as _hW,
11
+ w as s_IH8I3eLdwI0
12
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./core.min-vJ4M2jcU.cjs"),r=require("./stencil-ssr-UlYtcG0-.cjs"),l=require("./ssr/index.cjs"),a=({track:s})=>{const[e,n,o]=t.ve(),c=s(()=>e.props),p=r.getWrapperElement(n)??o.value,i=r.getStencilElement(p,e.tagName);l.updateStencilElementProps(i,c)};exports._hW=t.xe;exports.s_IH8I3eLdwI0=a;
package/package.json ADDED
@@ -0,0 +1,53 @@
1
+ {
2
+ "name": "@qwik-custom-elements/adapter-stencil",
3
+ "version": "1.0.0",
4
+ "type": "module",
5
+ "main": "./dist/index.qwik.cjs",
6
+ "module": "./dist/index.qwik.mjs",
7
+ "types": "./dist/index.d.ts",
8
+ "qwik": "./dist/index.qwik.mjs",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.qwik.mjs",
13
+ "require": "./dist/index.qwik.cjs"
14
+ },
15
+ "./client": {
16
+ "types": "./dist/client/index.d.ts",
17
+ "import": "./dist/client/index.js",
18
+ "require": "./dist/client/index.cjs"
19
+ },
20
+ "./ssr": {
21
+ "types": "./dist/ssr/index.d.ts",
22
+ "import": "./dist/ssr/index.js",
23
+ "require": "./dist/ssr/index.cjs"
24
+ }
25
+ },
26
+ "files": [
27
+ "dist"
28
+ ],
29
+ "peerDependencies": {
30
+ "@builder.io/qwik": "^1.19.2",
31
+ "@builder.io/qwik-city": "^1.19.2"
32
+ },
33
+ "devDependencies": {
34
+ "@builder.io/qwik": "^1.19.2",
35
+ "@builder.io/qwik-city": "^1.19.2",
36
+ "typescript": "^5.9.3",
37
+ "vite": "^7.3.1",
38
+ "vitest": "^3.2.4"
39
+ },
40
+ "publishConfig": {
41
+ "access": "public"
42
+ },
43
+ "scripts": {
44
+ "build": "vite build && tsc -p tsconfig.json --emitDeclarationOnly",
45
+ "check-types": "tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json --noEmit",
46
+ "dev": "tsc -p tsconfig.json --watch",
47
+ "format": "prettier --write . --config ../../.prettierrc.json --ignore-path ../../.prettierignore",
48
+ "format:check": "prettier --check . --config ../../.prettierrc.json --ignore-path ../../.prettierignore",
49
+ "lint": "eslint \"**/*.{js,mjs,cjs,ts,mts,cts,tsx}\" --no-error-on-unmatched-pattern",
50
+ "e2e": "node -e \"console.log('adapter-stencil e2e noop')\"",
51
+ "test": "vitest run"
52
+ }
53
+ }