@sigx/runtime-dom 0.1.3 → 0.1.5

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/dist/index.d.ts CHANGED
@@ -1,14 +1,13 @@
1
1
  import './jsx';
2
2
  import './types.js';
3
- import { JSXElement } from '@sigx/runtime-core';
4
- export { styled } from './styled.js';
5
- export { defineStyles, defineVars } from './sheet.js';
6
- export type { CSSObject, StylesMap, VarsHelper, DeepPartial } from './sheet.js';
7
- export { adoptStyles, getStyleTags, clearStyles, getAllStyles, hasStyle, setStyleTarget, getStyleTarget } from './styles.js';
8
- export type { StyleEntry } from './styles.js';
9
- export declare const render: (element: JSXElement, container: Element, appContext?: import("@sigx/runtime-core").AppContext) => void, createApp: (rootComponent: any) => {
10
- mount(selectorOrContainer: string | Element): void;
3
+ import { RendererOptions } from '@sigx/runtime-core';
4
+ declare function patchProp(dom: Element, key: string, prevValue: any, nextValue: any, isSVG?: boolean): void;
5
+ declare const nodeOps: RendererOptions<Node, Element>;
6
+ export declare const render: import("@sigx/runtime-core").RootRenderFunction<Node, Element>, createApp: (rootComponent: any) => {
7
+ mount: (selectorOrContainer: string | Element) => void;
11
8
  };
9
+ export declare const patch: import("@sigx/runtime-core").RendererPatchFn<Node, Element>, mount: import("@sigx/runtime-core").RendererMountFn<Node, Element>, unmount: import("@sigx/runtime-core").RendererUnmountFn<Node, Element>, mountComponent: import("@sigx/runtime-core").RendererMountComponentFn<Node, Element>;
10
+ export { patchProp, nodeOps };
12
11
  /**
13
12
  * Mount function for DOM environments.
14
13
  * Use this with defineApp().mount() to render to the DOM.
@@ -23,9 +22,5 @@ export declare const render: (element: JSXElement, container: Element, appContex
23
22
  * .mount(document.getElementById('app')!, domMount);
24
23
  * ```
25
24
  */
26
- export declare const domMount: (component: any, container: HTMLElement | Element | ShadowRoot, appContext?: any) => (() => void);
27
- /**
28
- * Hydrate existing DOM with VNode structure
29
- */
30
- export declare function hydrate(element: JSXElement, container: Element | ShadowRoot): void;
25
+ export declare const domMount: (component: any, container: HTMLElement | Element | ShadowRoot | string, appContext?: any) => (() => void);
31
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,CAAC;AAEf,OAAO,YAAY,CAAC;AACpB,OAAO,EAAmB,UAAU,EAAoF,MAAM,oBAAoB,CAAC;AAqDnJ,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACtD,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7H,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAuK9C,eAAO,MAAQ,MAAM,2GAAE,SAAS;;CAAa,CAAC;AAE9C;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,GAAI,WAAW,GAAG,EAAE,WAAW,WAAW,GAAG,OAAO,GAAG,UAAU,EAAE,aAAa,GAAG,KAAG,CAAC,MAAM,IAAI,CAQrH,CAAC;AAKF;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAuBlF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,CAAC;AAEf,OAAO,YAAY,CAAC;AACpB,OAAO,EAAyE,eAAe,EAAyB,MAAM,oBAAoB,CAAC;AAoDnJ,iBAAS,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,QAmI5F;AAED,QAAA,MAAM,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,CA4B3C,CAAC;AAKF,eAAO,MAAQ,MAAM,kEAAE,SAAS;;CAAa,CAAC;AAG9C,eAAO,MAAQ,KAAK,+DAAE,KAAK,+DAAE,OAAO,iEAAE,cAAc,sEAAa,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAE9B;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,GAAI,WAAW,GAAG,EAAE,WAAW,WAAW,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,EAAE,aAAa,GAAG,KAAG,CAAC,MAAM,IAAI,CAiB9H,CAAC"}
package/dist/index.js CHANGED
@@ -1,266 +1,5 @@
1
- import { Fragment, Text, createRenderer, jsx, setDefaultMount, setPlatformSyncProcessor } from "@sigx/runtime-core";
1
+ import { createRenderer, setDefaultMount, setPlatformSyncProcessor } from "@sigx/runtime-core";
2
2
 
3
- //#region src/styles.ts
4
- const styleRegistry = /* @__PURE__ */ new Map();
5
- const adoptedToDocument = /* @__PURE__ */ new Set();
6
- const adoptedToShadowRoots = /* @__PURE__ */ new WeakMap();
7
- let currentStyleTarget = null;
8
- /**
9
- * Set the current style target for style adoption
10
- * Components should call this before rendering to ensure styles go to the right place
11
- * @returns The previous style target
12
- */
13
- function setStyleTarget(target) {
14
- const prev = currentStyleTarget;
15
- currentStyleTarget = target;
16
- return prev;
17
- }
18
- /**
19
- * Get the current style target
20
- */
21
- function getStyleTarget() {
22
- return currentStyleTarget;
23
- }
24
- /**
25
- * Register and adopt a stylesheet
26
- * @param id Unique identifier for deduplication
27
- * @param cssText The CSS text content
28
- * @param target Optional target (ShadowRoot or Document). Uses currentStyleTarget if not provided, falls back to document.
29
- */
30
- function adoptStyles(id, cssText, target) {
31
- let entry = styleRegistry.get(id);
32
- if (!entry) {
33
- entry = {
34
- id,
35
- cssText
36
- };
37
- styleRegistry.set(id, entry);
38
- }
39
- if (!entry.sheet && typeof CSSStyleSheet !== "undefined") {
40
- entry.sheet = new CSSStyleSheet();
41
- entry.sheet.replaceSync(cssText);
42
- }
43
- if (!entry.sheet) return;
44
- const doc = target || currentStyleTarget || document;
45
- if (doc instanceof ShadowRoot) {
46
- let adopted = adoptedToShadowRoots.get(doc);
47
- if (!adopted) {
48
- adopted = /* @__PURE__ */ new Set();
49
- adoptedToShadowRoots.set(doc, adopted);
50
- }
51
- if (!adopted.has(id)) {
52
- adopted.add(id);
53
- doc.adoptedStyleSheets = [...doc.adoptedStyleSheets, entry.sheet];
54
- }
55
- } else if (!adoptedToDocument.has(id)) {
56
- adoptedToDocument.add(id);
57
- doc.adoptedStyleSheets = [...doc.adoptedStyleSheets, entry.sheet];
58
- }
59
- }
60
- /**
61
- * Get all registered styles (for SSR)
62
- */
63
- function getAllStyles() {
64
- return Array.from(styleRegistry.values());
65
- }
66
- /**
67
- * Get style tags HTML string (for SSR)
68
- */
69
- function getStyleTags() {
70
- return getAllStyles().map((entry) => `<style data-sigx-style="${entry.id}">${entry.cssText}</style>`).join("\n");
71
- }
72
- /**
73
- * Clear the style registry (useful for SSR per-request isolation)
74
- */
75
- function clearStyles() {
76
- styleRegistry.clear();
77
- adoptedToDocument.clear();
78
- }
79
- /**
80
- * Check if a style is already registered
81
- */
82
- function hasStyle(id) {
83
- return styleRegistry.has(id);
84
- }
85
-
86
- //#endregion
87
- //#region src/styled.ts
88
- function hash$1(str) {
89
- let hash$2 = 5381;
90
- let i = str.length;
91
- while (i) hash$2 = hash$2 * 33 ^ str.charCodeAt(--i);
92
- return (hash$2 >>> 0).toString(36);
93
- }
94
- let counter = 0;
95
- const styledProxy = new Proxy({}, {
96
- get(_target, tag) {
97
- return (strings, ...values) => {
98
- const cssText = strings.reduce((acc, str, i) => acc + str + (values[i] || ""), "");
99
- const className = `sigx-${hash$1(cssText)}-${counter++}`;
100
- let finalCss = cssText;
101
- if (finalCss.includes("&")) finalCss = finalCss.replace(/&/g, `.${className}`);
102
- else finalCss = `.${className} { ${cssText} }`;
103
- const styleId = `styled-${className}`;
104
- return (props) => {
105
- adoptStyles(styleId, finalCss);
106
- const { class: cls, className: clsName, children, ...rest } = props;
107
- const combinedClass = [
108
- className,
109
- cls,
110
- clsName
111
- ].filter(Boolean).join(" ");
112
- return jsx(tag, {
113
- ...rest,
114
- class: combinedClass,
115
- children
116
- });
117
- };
118
- };
119
- },
120
- apply(_target, _thisArg, args) {
121
- const tag = args[0];
122
- return (strings, ...values) => {
123
- const cssText = strings.reduce((acc, str, i) => acc + str + (values[i] || ""), "");
124
- const className = `sigx-${hash$1(cssText)}-${counter++}`;
125
- let finalCss = cssText;
126
- if (finalCss.includes("&")) finalCss = finalCss.replace(/&/g, `.${className}`);
127
- else finalCss = `.${className} { ${cssText} }`;
128
- const styleId = `styled-${className}`;
129
- return (props) => {
130
- adoptStyles(styleId, finalCss);
131
- const { class: cls, className: clsName, children, ...rest } = props;
132
- const combinedClass = [
133
- className,
134
- cls,
135
- clsName
136
- ].filter(Boolean).join(" ");
137
- return jsx(tag, {
138
- ...rest,
139
- class: combinedClass,
140
- children
141
- });
142
- };
143
- };
144
- }
145
- });
146
- const styled = styledProxy;
147
-
148
- //#endregion
149
- //#region src/sheet.ts
150
- function hash(str) {
151
- let hash$2 = 5381;
152
- let i = str.length;
153
- while (i) hash$2 = hash$2 * 33 ^ str.charCodeAt(--i);
154
- return (hash$2 >>> 0).toString(36);
155
- }
156
- function toKebabCase(str) {
157
- return str.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
158
- }
159
- function compileRule(selector, style, buffer) {
160
- let block = `${selector} {`;
161
- const nested = [];
162
- for (const key in style) {
163
- const value = style[key];
164
- if (value === void 0 || value === null) continue;
165
- if (typeof value === "object") {
166
- const subSelector = key.includes("&") ? key.replace(/&/g, selector) : `${selector} ${key}`;
167
- nested.push([subSelector, value]);
168
- } else {
169
- const prop = key.startsWith("--") ? key : toKebabCase(key);
170
- block += `\n ${prop}: ${value};`;
171
- }
172
- }
173
- block += `\n}`;
174
- buffer.push(block);
175
- for (const [sel, obj] of nested) compileRule(sel, obj, buffer);
176
- }
177
- /**
178
- * Define a set of styles using a typed object.
179
- * Returns a map of class names that automatically adopts the stylesheet when used.
180
- *
181
- * @example
182
- * ```typescript
183
- * const styles = defineStyles({
184
- * container: {
185
- * display: "flex",
186
- * backgroundColor: "var(--bg)",
187
- * "&:hover": { opacity: 0.8 }
188
- * }
189
- * });
190
- *
191
- * // In component:
192
- * <div class={styles.container} />
193
- * ```
194
- */
195
- function defineStyles(styles) {
196
- const buffer = [];
197
- const classMap = {};
198
- const prefix = "sigx-" + hash(JSON.stringify(styles));
199
- for (const key in styles) {
200
- const className = `${prefix}-${key}`;
201
- classMap[key] = className;
202
- compileRule(`.${className}`, styles[key], buffer);
203
- }
204
- const cssText = buffer.join("\n");
205
- const styleId = `sheet-${prefix}`;
206
- return new Proxy(classMap, { get(target, prop) {
207
- adoptStyles(styleId, cssText);
208
- return target[prop];
209
- } });
210
- }
211
- /**
212
- * Define a set of CSS variables with defaults.
213
- * Returns a helper that provides both the var() strings and a function to generate style objects.
214
- *
215
- * @example
216
- * ```typescript
217
- * const vars = defineVars('card', {
218
- * bg: 'white',
219
- * padding: '1rem'
220
- * });
221
- *
222
- * // Use in styles:
223
- * // background: vars.bg -> var(--card-bg, white)
224
- *
225
- * // Use in component:
226
- * // style={vars({ bg: 'red' })} -> { '--card-bg': 'red' }
227
- * ```
228
- */
229
- function defineVars(namespace, defaults) {
230
- const varsObj = {};
231
- function buildVars(current, path, target) {
232
- for (const key in current) {
233
- const value = current[key];
234
- const newPath = [...path, key];
235
- if (value && typeof value === "object" && !Array.isArray(value)) {
236
- target[key] = {};
237
- buildVars(value, newPath, target[key]);
238
- } else target[key] = `var(${`--${namespace}-${newPath.map(toKebabCase).join("-")}`}, ${value})`;
239
- }
240
- }
241
- buildVars(defaults, [], varsObj);
242
- const func = (overrides) => {
243
- const style = {};
244
- if (!overrides) return style;
245
- function flatten(current, path) {
246
- for (const key in current) {
247
- const value = current[key];
248
- const newPath = [...path, key];
249
- if (value !== void 0) if (value && typeof value === "object" && !Array.isArray(value)) flatten(value, newPath);
250
- else {
251
- const varName = `--${namespace}-${newPath.map(toKebabCase).join("-")}`;
252
- style[varName] = String(value);
253
- }
254
- }
255
- }
256
- flatten(overrides, []);
257
- return style;
258
- };
259
- Object.assign(func, varsObj);
260
- return func;
261
- }
262
-
263
- //#endregion
264
3
  //#region src/index.ts
265
4
  setPlatformSyncProcessor((type, props, [stateObj, key], originalProps) => {
266
5
  if (type === "input" && originalProps.type === "checkbox") {
@@ -374,7 +113,7 @@ function patchProp(dom, key, prevValue, nextValue, isSVG) {
374
113
  else if (newValue === false || newValue == null) dom.removeAttribute(key);
375
114
  else dom.setAttribute(key, String(newValue));
376
115
  }
377
- const renderer = createRenderer({
116
+ const nodeOps = {
378
117
  insert: (child, parent, anchor) => {
379
118
  parent.insertBefore(child, anchor || null);
380
119
  },
@@ -400,8 +139,10 @@ const renderer = createRenderer({
400
139
  setScopeId: (el, id) => el.setAttribute(id, ""),
401
140
  cloneNode: (node) => node.cloneNode(true),
402
141
  patchProp
403
- });
142
+ };
143
+ const renderer = createRenderer(nodeOps);
404
144
  const { render, createApp } = renderer;
145
+ const { patch, mount, unmount, mountComponent } = renderer;
405
146
  /**
406
147
  * Mount function for DOM environments.
407
148
  * Use this with defineApp().mount() to render to the DOM.
@@ -417,84 +158,15 @@ const { render, createApp } = renderer;
417
158
  * ```
418
159
  */
419
160
  const domMount = (component, container, appContext) => {
420
- render(component, container, appContext);
161
+ const target = typeof container === "string" ? document.querySelector(container) : container;
162
+ if (!target) throw new Error(`Mount target "${container}" not found.`);
163
+ render(component, target, appContext);
421
164
  return () => {
422
- render(null, container);
165
+ render(null, target);
423
166
  };
424
167
  };
425
168
  setDefaultMount(domMount);
426
- /**
427
- * Hydrate existing DOM with VNode structure
428
- */
429
- function hydrate(element, container) {
430
- let vnode = null;
431
- if (element != null && element !== false && element !== true) if (typeof element === "string" || typeof element === "number") vnode = {
432
- type: Text,
433
- props: {},
434
- key: null,
435
- children: [],
436
- dom: null,
437
- text: element
438
- };
439
- else vnode = element;
440
- if (vnode) {
441
- container._vnode = vnode;
442
- hydrateRecursive(vnode, container.firstChild);
443
- }
444
- }
445
- function hydrateRecursive(vnode, dom) {
446
- if (!dom) {
447
- console.warn("Hydration mismatch: DOM node missing for vnode", vnode);
448
- return null;
449
- }
450
- vnode.dom = dom;
451
- dom.__vnode = vnode;
452
- if (vnode.type === Text) {
453
- if (dom.nodeType !== Node.TEXT_NODE) console.warn("Hydration mismatch: Expected text node", dom);
454
- else if (dom.nodeValue !== String(vnode.text)) {
455
- console.warn(`Hydration mismatch: Text content "${dom.nodeValue}" !== "${vnode.text}"`);
456
- dom.nodeValue = String(vnode.text);
457
- }
458
- return dom.nextSibling;
459
- }
460
- if (vnode.type === Fragment) {
461
- let next = dom;
462
- for (const child of vnode.children) next = hydrateRecursive(child, next);
463
- return next;
464
- }
465
- if (dom.nodeType !== Node.ELEMENT_NODE) {
466
- console.warn("Hydration mismatch: Expected element node", dom);
467
- return dom.nextSibling;
468
- }
469
- const el = dom;
470
- if (el.tagName.toLowerCase() !== vnode.type.toLowerCase()) {
471
- console.warn(`Hydration mismatch: Tag name "${el.tagName}" !== "${vnode.type}"`);
472
- return dom.nextSibling;
473
- }
474
- if (vnode.props) for (const key in vnode.props) patchProp(el, key, null, vnode.props[key]);
475
- if (vnode.props.ref) {
476
- if (typeof vnode.props.ref === "function") vnode.props.ref(el);
477
- else if (vnode.props.ref && typeof vnode.props.ref === "object") vnode.props.ref.current = el;
478
- }
479
- let childDom = el.firstChild;
480
- for (const child of vnode.children) {
481
- child.parent = vnode;
482
- childDom = hydrateRecursive(child, childDom);
483
- }
484
- if (vnode.type === "select") fixSelectValue(el, vnode.props);
485
- return dom.nextSibling;
486
- }
487
- function fixSelectValue(dom, props) {
488
- if (dom.tagName === "SELECT" && "value" in props) {
489
- const val = props.value;
490
- if (dom.multiple) {
491
- const options = dom.options;
492
- const valArray = Array.isArray(val) ? val : [val];
493
- for (let i = 0; i < options.length; i++) options[i].selected = valArray.includes(options[i].value);
494
- } else dom.value = String(val);
495
- }
496
- }
497
169
 
498
170
  //#endregion
499
- export { adoptStyles, clearStyles, createApp, defineStyles, defineVars, domMount, getAllStyles, getStyleTags, getStyleTarget, hasStyle, hydrate, render, setStyleTarget, styled };
171
+ export { createApp, domMount, mount, mountComponent, nodeOps, patch, patchProp, render, unmount };
500
172
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["currentStyleTarget: ShadowRoot | Document | null","hash","hash","nested: [string, CSSObject][]","buffer: string[]","classMap: Record<string, string>","varsObj: any","style: Record<string, string>","val: any","vnode: VNode | null","next: Node | null","childDom: Node | null"],"sources":["../src/styles.ts","../src/styled.ts","../src/sheet.ts","../src/index.ts"],"sourcesContent":["/**\r\n * Style Registry for DOM runtime\r\n * Manages CSS stylesheets with deduplication and lazy CSSStyleSheet creation\r\n */\r\n\r\nexport interface StyleEntry {\r\n id: string;\r\n cssText: string;\r\n sheet?: CSSStyleSheet;\r\n}\r\n\r\n// Global registry of all styles\r\nconst styleRegistry = new Map<string, StyleEntry>();\r\n\r\n// Track which styles have been adopted to document\r\nconst adoptedToDocument = new Set<string>();\r\n\r\n// Track which shadow roots have adopted which styles\r\nconst adoptedToShadowRoots = new WeakMap<ShadowRoot, Set<string>>();\r\n\r\n// Current style target (set by components during render)\r\nlet currentStyleTarget: ShadowRoot | Document | null = null;\r\n\r\n/**\r\n * Set the current style target for style adoption\r\n * Components should call this before rendering to ensure styles go to the right place\r\n * @returns The previous style target\r\n */\r\nexport function setStyleTarget(target: ShadowRoot | Document | null): ShadowRoot | Document | null {\r\n const prev = currentStyleTarget;\r\n currentStyleTarget = target;\r\n return prev;\r\n}\r\n\r\n/**\r\n * Get the current style target\r\n */\r\nexport function getStyleTarget(): ShadowRoot | Document | null {\r\n return currentStyleTarget;\r\n}\r\n\r\n/**\r\n * Register and adopt a stylesheet\r\n * @param id Unique identifier for deduplication\r\n * @param cssText The CSS text content\r\n * @param target Optional target (ShadowRoot or Document). Uses currentStyleTarget if not provided, falls back to document.\r\n */\r\nexport function adoptStyles(id: string, cssText: string, target?: ShadowRoot | Document): void {\r\n let entry = styleRegistry.get(id);\r\n\r\n if (!entry) {\r\n entry = { id, cssText };\r\n styleRegistry.set(id, entry);\r\n }\r\n\r\n // Lazily create CSSStyleSheet\r\n if (!entry.sheet && typeof CSSStyleSheet !== 'undefined') {\r\n entry.sheet = new CSSStyleSheet();\r\n entry.sheet.replaceSync(cssText);\r\n }\r\n\r\n if (!entry.sheet) return;\r\n\r\n const doc = target || currentStyleTarget || document;\r\n\r\n if (doc instanceof ShadowRoot) {\r\n // Shadow DOM: track per-shadow-root adoption\r\n let adopted = adoptedToShadowRoots.get(doc);\r\n if (!adopted) {\r\n adopted = new Set<string>();\r\n adoptedToShadowRoots.set(doc, adopted);\r\n }\r\n if (!adopted.has(id)) {\r\n adopted.add(id);\r\n doc.adoptedStyleSheets = [...doc.adoptedStyleSheets, entry.sheet];\r\n }\r\n } else {\r\n // Document: avoid duplicates\r\n if (!adoptedToDocument.has(id)) {\r\n adoptedToDocument.add(id);\r\n doc.adoptedStyleSheets = [...doc.adoptedStyleSheets, entry.sheet];\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Get all registered styles (for SSR)\r\n */\r\nexport function getAllStyles(): StyleEntry[] {\r\n return Array.from(styleRegistry.values());\r\n}\r\n\r\n/**\r\n * Get style tags HTML string (for SSR)\r\n */\r\nexport function getStyleTags(): string {\r\n const styles = getAllStyles();\r\n return styles\r\n .map(entry => `<style data-sigx-style=\"${entry.id}\">${entry.cssText}</style>`)\r\n .join('\\n');\r\n}\r\n\r\n/**\r\n * Clear the style registry (useful for SSR per-request isolation)\r\n */\r\nexport function clearStyles(): void {\r\n styleRegistry.clear();\r\n adoptedToDocument.clear();\r\n}\r\n\r\n/**\r\n * Check if a style is already registered\r\n */\r\nexport function hasStyle(id: string): boolean {\r\n return styleRegistry.has(id);\r\n}\r\n","import { adoptStyles } from \"./styles.js\";\r\nimport { jsx, JSXElement } from \"@sigx/runtime-core\";\r\n\r\n// Simple hash function for class names\r\nfunction hash(str: string): string {\r\n let hash = 5381;\r\n let i = str.length;\r\n while (i) {\r\n hash = (hash * 33) ^ str.charCodeAt(--i);\r\n }\r\n return (hash >>> 0).toString(36);\r\n}\r\n\r\nlet counter = 0;\r\n\r\ntype StyledComponent<P> = (props: P & { class?: string; className?: string; children?: any }) => JSXElement;\r\n\r\ntype StyledFunction<P> = (strings: TemplateStringsArray, ...values: any[]) => StyledComponent<P>;\r\n\r\ntype StyledInterface = {\r\n [Tag in keyof JSX.IntrinsicElements]: StyledFunction<JSX.IntrinsicElements[Tag]>;\r\n} & {\r\n <P>(tag: string | ((props: P) => JSXElement)): StyledFunction<P>;\r\n};\r\n\r\nconst styledProxy = new Proxy({} as StyledInterface, {\r\n get(_target, tag: string) {\r\n return (strings: TemplateStringsArray, ...values: any[]) => {\r\n const cssText = strings.reduce((acc, str, i) => acc + str + (values[i] || \"\"), \"\");\r\n\r\n // Generate unique class name\r\n const className = `sigx-${hash(cssText)}-${counter++}`;\r\n\r\n // Build final CSS with class wrapper\r\n let finalCss = cssText;\r\n if (finalCss.includes('&')) {\r\n finalCss = finalCss.replace(/&/g, `.${className}`);\r\n } else {\r\n finalCss = `.${className} { ${cssText} }`;\r\n }\r\n\r\n // Create unique ID for deduplication\r\n const styleId = `styled-${className}`;\r\n\r\n return (props: any) => {\r\n // Adopt styles using the new registry\r\n adoptStyles(styleId, finalCss);\r\n\r\n const { class: cls, className: clsName, children, ...rest } = props;\r\n const combinedClass = [className, cls, clsName].filter(Boolean).join(\" \");\r\n\r\n return jsx(tag, { ...rest, class: combinedClass, children });\r\n };\r\n };\r\n },\r\n apply(_target, _thisArg, args) {\r\n const tag = args[0];\r\n return (strings: TemplateStringsArray, ...values: any[]) => {\r\n const cssText = strings.reduce((acc, str, i) => acc + str + (values[i] || \"\"), \"\");\r\n const className = `sigx-${hash(cssText)}-${counter++}`;\r\n\r\n let finalCss = cssText;\r\n if (finalCss.includes('&')) {\r\n finalCss = finalCss.replace(/&/g, `.${className}`);\r\n } else {\r\n finalCss = `.${className} { ${cssText} }`;\r\n }\r\n\r\n const styleId = `styled-${className}`;\r\n\r\n return (props: any) => {\r\n adoptStyles(styleId, finalCss);\r\n\r\n const { class: cls, className: clsName, children, ...rest } = props;\r\n const combinedClass = [className, cls, clsName].filter(Boolean).join(\" \");\r\n\r\n return jsx(tag, { ...rest, class: combinedClass, children });\r\n };\r\n };\r\n }\r\n});\r\n\r\nexport const styled = styledProxy;\r\n","import { adoptStyles } from \"./styles.js\";\r\n\r\n// Simple hash function\r\nfunction hash(str: string): string {\r\n let hash = 5381;\r\n let i = str.length;\r\n while (i) {\r\n hash = (hash * 33) ^ str.charCodeAt(--i);\r\n }\r\n return (hash >>> 0).toString(36);\r\n}\r\n\r\n// CamelCase to kebab-case\r\nfunction toKebabCase(str: string): string {\r\n return str.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();\r\n}\r\n\r\n// Type definition for CSS Object\r\n// We use Partial<CSSStyleDeclaration> to get autocompletion for standard properties\r\n// We intersect with a record to allow nested selectors and custom properties\r\nexport type CSSObject = Partial<CSSStyleDeclaration> & {\r\n [key: string]: string | number | CSSObject | undefined | any;\r\n};\r\n\r\nexport type StylesMap<T> = {\r\n [K in keyof T]: string;\r\n};\r\n\r\nexport type DeepPartial<T> = {\r\n [P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];\r\n};\r\n\r\nexport type VarsHelper<T> = T & {\r\n (overrides?: DeepPartial<T>): Record<string, string>;\r\n};\r\n\r\nfunction compileRule(selector: string, style: CSSObject, buffer: string[]): void {\r\n let block = `${selector} {`;\r\n const nested: [string, CSSObject][] = [];\r\n\r\n for (const key in style) {\r\n const value = style[key];\r\n if (value === undefined || value === null) continue;\r\n\r\n if (typeof value === 'object') {\r\n // Nested selector\r\n // Handle & replacement\r\n const subSelector = key.includes('&')\r\n ? key.replace(/&/g, selector)\r\n : `${selector} ${key}`;\r\n nested.push([subSelector, value as CSSObject]);\r\n } else {\r\n // CSS Property\r\n // Check if it's a number that needs px (optional, but good for DX)\r\n // For now, let's stick to raw values to be zero-magic, except camelCase conversion\r\n const prop = key.startsWith('--') ? key : toKebabCase(key);\r\n block += `\\n ${prop}: ${value};`;\r\n }\r\n }\r\n block += `\\n}`;\r\n buffer.push(block);\r\n\r\n // Process nested rules\r\n for (const [sel, obj] of nested) {\r\n compileRule(sel, obj, buffer);\r\n }\r\n}\r\n\r\n/**\r\n * Define a set of styles using a typed object.\r\n * Returns a map of class names that automatically adopts the stylesheet when used.\r\n * \r\n * @example\r\n * ```typescript\r\n * const styles = defineStyles({\r\n * container: {\r\n * display: \"flex\",\r\n * backgroundColor: \"var(--bg)\",\r\n * \"&:hover\": { opacity: 0.8 }\r\n * }\r\n * });\r\n * \r\n * // In component:\r\n * <div class={styles.container} />\r\n * ```\r\n */\r\nexport function defineStyles<T extends Record<string, CSSObject>>(styles: T): StylesMap<T> {\r\n const buffer: string[] = [];\r\n const classMap: Record<string, string> = {};\r\n\r\n // Generate unique hash for this style definition\r\n const prefix = \"sigx-\" + hash(JSON.stringify(styles));\r\n\r\n for (const key in styles) {\r\n const className = `${prefix}-${key}`;\r\n classMap[key] = className;\r\n compileRule(`.${className}`, styles[key], buffer);\r\n }\r\n\r\n const cssText = buffer.join('\\n');\r\n const styleId = `sheet-${prefix}`;\r\n\r\n // Return a proxy to auto-adopt styles when classes are accessed\r\n return new Proxy(classMap, {\r\n get(target, prop) {\r\n // Adopt styles when accessed\r\n adoptStyles(styleId, cssText);\r\n return target[prop as string];\r\n }\r\n }) as StylesMap<T>;\r\n}\r\n\r\n/**\r\n * Define a set of CSS variables with defaults.\r\n * Returns a helper that provides both the var() strings and a function to generate style objects.\r\n * \r\n * @example\r\n * ```typescript\r\n * const vars = defineVars('card', {\r\n * bg: 'white',\r\n * padding: '1rem'\r\n * });\r\n * \r\n * // Use in styles:\r\n * // background: vars.bg -> var(--card-bg, white)\r\n * \r\n * // Use in component:\r\n * // style={vars({ bg: 'red' })} -> { '--card-bg': 'red' }\r\n * ```\r\n */\r\nexport function defineVars<T extends Record<string, any>>(namespace: string, defaults: T): VarsHelper<T> {\r\n const varsObj: any = {};\r\n\r\n function buildVars(current: any, path: string[], target: any) {\r\n for (const key in current) {\r\n const value = current[key];\r\n const newPath = [...path, key];\r\n if (value && typeof value === 'object' && !Array.isArray(value)) {\r\n target[key] = {};\r\n buildVars(value, newPath, target[key]);\r\n } else {\r\n const varName = `--${namespace}-${newPath.map(toKebabCase).join('-')}`;\r\n target[key] = `var(${varName}, ${value})`;\r\n }\r\n }\r\n }\r\n\r\n buildVars(defaults, [], varsObj);\r\n\r\n const func = (overrides?: DeepPartial<T>) => {\r\n const style: Record<string, string> = {};\r\n if (!overrides) return style;\r\n\r\n function flatten(current: any, path: string[]) {\r\n for (const key in current) {\r\n const value = current[key];\r\n const newPath = [...path, key];\r\n if (value !== undefined) {\r\n if (value && typeof value === 'object' && !Array.isArray(value)) {\r\n flatten(value, newPath);\r\n } else {\r\n const varName = `--${namespace}-${newPath.map(toKebabCase).join('-')}`;\r\n style[varName] = String(value);\r\n }\r\n }\r\n }\r\n }\r\n flatten(overrides, []);\r\n return style;\r\n };\r\n\r\n Object.assign(func, varsObj);\r\n\r\n return func as VarsHelper<T>;\r\n}\r\n","// Import JSX types (global augmentation)\r\nimport './jsx';\r\n// Import type augmentation for @sigx/runtime-core\r\nimport './types.js';\r\nimport { VNode, Fragment, JSXElement, setPlatformSyncProcessor, createRenderer, RendererOptions, Text, setDefaultMount } from '@sigx/runtime-core';\r\n\r\n// Register DOM-specific sync processor for intrinsic elements (checkbox, radio, etc.)\r\nsetPlatformSyncProcessor((type, props, [stateObj, key], originalProps) => {\r\n // Smart mapping for checkbox\r\n if (type === 'input' && originalProps.type === 'checkbox') {\r\n const val = stateObj[key];\r\n\r\n if (Array.isArray(val)) {\r\n // Array Checkbox (Multi-select)\r\n props.checked = val.includes(originalProps.value);\r\n\r\n const existingHandler = props['onUpdate:value'];\r\n props['onUpdate:value'] = (checked: boolean) => {\r\n const currentVal = originalProps.value;\r\n const currentArr = stateObj[key] as any[];\r\n if (checked) {\r\n if (!currentArr.includes(currentVal)) {\r\n stateObj[key] = [...currentArr, currentVal];\r\n }\r\n } else {\r\n stateObj[key] = currentArr.filter((i: any) => i !== currentVal);\r\n }\r\n if (existingHandler) existingHandler(checked);\r\n };\r\n } else {\r\n // Boolean Checkbox\r\n props.checked = val;\r\n const existingHandler = props['onUpdate:value'];\r\n props['onUpdate:value'] = (v: any) => {\r\n stateObj[key] = v;\r\n if (existingHandler) existingHandler(v);\r\n };\r\n }\r\n return true; // Handled\r\n }\r\n\r\n // Radio Button\r\n if (type === 'input' && originalProps.type === 'radio') {\r\n props.checked = stateObj[key] === originalProps.value;\r\n const existingHandler = props['onUpdate:value'];\r\n props['onUpdate:value'] = (checked: boolean) => {\r\n if (checked) stateObj[key] = originalProps.value;\r\n if (existingHandler) existingHandler(checked);\r\n };\r\n return true; // Handled\r\n }\r\n\r\n // Not handled - use generic fallback\r\n return false;\r\n});\r\n\r\n// Export style APIs\r\nexport { styled } from './styled.js';\r\nexport { defineStyles, defineVars } from './sheet.js';\r\nexport type { CSSObject, StylesMap, VarsHelper, DeepPartial } from './sheet.js';\r\nexport { adoptStyles, getStyleTags, clearStyles, getAllStyles, hasStyle, setStyleTarget, getStyleTarget } from './styles.js';\r\nexport type { StyleEntry } from './styles.js';\r\n\r\nfunction patchProp(dom: Element, key: string, prevValue: any, nextValue: any, isSVG?: boolean) {\r\n const tagName = dom.tagName.toLowerCase();\r\n const oldProps = prevValue ? { [key]: prevValue } : {};\r\n const newProps = nextValue ? { [key]: nextValue } : {};\r\n\r\n // This is a simplified version of updateProps that handles a single prop\r\n // But the original updateProps handled all props at once.\r\n // The renderer calls patchProp for each key.\r\n\r\n // Logic adapted from original updateProps\r\n const oldValue = prevValue;\r\n const newValue = nextValue;\r\n\r\n if (key === 'children' || key === 'key' || key === 'ref') return;\r\n\r\n if (key === 'style') {\r\n const el = dom as HTMLElement;\r\n if (typeof newValue === 'object' && newValue !== null) {\r\n const styleObj = newValue as Record<string, string | number>;\r\n // We might need to unset old styles if they are not in new styles\r\n // But here we only get the new value for the key.\r\n // Ideally patchProp should handle diffing inside style object if it's an object.\r\n // For now, let's assume full replacement or simple update.\r\n for (const styleKey in styleObj) {\r\n if (styleKey.startsWith('--')) {\r\n el.style.setProperty(styleKey, String(styleObj[styleKey]));\r\n } else {\r\n (el.style as any)[styleKey] = styleObj[styleKey];\r\n }\r\n }\r\n } else {\r\n el.style.cssText = String(newValue);\r\n }\r\n } else if (key.startsWith('on')) {\r\n if (key === 'onUpdate:value' && (tagName === 'input' || tagName === 'textarea' || tagName === 'select')) {\r\n const el = dom as HTMLElement;\r\n if (oldValue) {\r\n const wrapper = (oldValue as any).__sigx_sync_handler;\r\n if (wrapper) {\r\n el.removeEventListener('input', wrapper);\r\n el.removeEventListener('change', wrapper);\r\n }\r\n }\r\n\r\n if (newValue) {\r\n const handler = (e: Event) => {\r\n const target = e.target as HTMLInputElement;\r\n let val: any;\r\n\r\n if (target.type === 'checkbox' || target.type === 'radio') {\r\n val = target.checked;\r\n } else if (target.type === 'number') {\r\n val = target.valueAsNumber;\r\n } else if (tagName === 'select' && (dom as HTMLSelectElement).multiple) {\r\n val = Array.from((dom as HTMLSelectElement).selectedOptions).map(o => o.value);\r\n } else {\r\n val = target.value;\r\n }\r\n\r\n (newValue as Function)(val);\r\n };\r\n (newValue as any).__sigx_sync_handler = handler;\r\n\r\n const inputType = (dom as HTMLInputElement).type;\r\n if (tagName === 'select' || (tagName === 'input' && (inputType === 'checkbox' || inputType === 'radio'))) {\r\n el.addEventListener('change', handler);\r\n } else {\r\n el.addEventListener('input', handler);\r\n }\r\n }\r\n return;\r\n }\r\n\r\n const eventName = key.slice(2).toLowerCase();\r\n // Store handlers on the DOM element to properly track them across re-renders\r\n // Using a Map keyed by event name to ensure we remove the correct wrapper\r\n const handlersKey = '__sigx_event_handlers';\r\n let handlers = (dom as any)[handlersKey] as Map<string, EventListener> | undefined;\r\n if (!handlers) {\r\n handlers = new Map();\r\n (dom as any)[handlersKey] = handlers;\r\n }\r\n\r\n // Remove old handler if exists\r\n const oldHandler = handlers.get(eventName);\r\n if (oldHandler) {\r\n dom.removeEventListener(eventName, oldHandler);\r\n handlers.delete(eventName);\r\n }\r\n\r\n // Add new handler\r\n if (newValue) {\r\n const handler = (e: Event) => {\r\n if (e instanceof CustomEvent) {\r\n (newValue as Function)(e.detail);\r\n } else {\r\n (newValue as Function)(e);\r\n }\r\n };\r\n handlers.set(eventName, handler);\r\n dom.addEventListener(eventName, handler as EventListener);\r\n }\r\n } else if (key === 'className') {\r\n dom.setAttribute('class', String(newValue));\r\n } else if (key.startsWith('.')) {\r\n const propName = key.slice(1);\r\n (dom as any)[propName] = newValue;\r\n } else {\r\n if ((tagName === 'input' || tagName === 'textarea' || tagName === 'select') &&\r\n (key === 'value' || key === 'checked')) {\r\n if (tagName === 'select' && key === 'value') return;\r\n\r\n if (key === 'checked' && tagName === 'input') {\r\n (dom as HTMLInputElement).checked = Boolean(newValue);\r\n } else if (key === 'value') {\r\n (dom as HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement).value = String(newValue ?? '');\r\n }\r\n } else if (key in dom) {\r\n try {\r\n (dom as Record<string, any>)[key] = newValue;\r\n } catch (e) {\r\n dom.setAttribute(key, String(newValue));\r\n }\r\n } else if (tagName.includes('-') && !key.includes('-')) {\r\n (dom as Record<string, any>)[key] = newValue;\r\n } else {\r\n if (newValue === true) dom.setAttribute(key, '');\r\n else if (newValue === false || newValue == null) dom.removeAttribute(key);\r\n else dom.setAttribute(key, String(newValue));\r\n }\r\n }\r\n}\r\n\r\nconst nodeOps: RendererOptions<Node, Element> = {\r\n insert: (child, parent, anchor) => {\r\n parent.insertBefore(child, anchor || null);\r\n },\r\n remove: (child) => {\r\n const parent = child.parentNode;\r\n if (parent) {\r\n parent.removeChild(child);\r\n }\r\n },\r\n createElement: (tag, isSVG, isCustomizedBuiltIn) => {\r\n const is = isCustomizedBuiltIn ? { is: isCustomizedBuiltIn } : undefined;\r\n return document.createElement(tag, is);\r\n },\r\n createText: (text) => document.createTextNode(text),\r\n createComment: (text) => document.createComment(text),\r\n setText: (node, text) => {\r\n node.nodeValue = text;\r\n },\r\n setElementText: (el, text) => {\r\n el.textContent = text;\r\n },\r\n parentNode: (node) => node.parentNode as Element,\r\n nextSibling: (node) => node.nextSibling,\r\n querySelector: (selector) => document.querySelector(selector),\r\n setScopeId: (el, id) => el.setAttribute(id, ''),\r\n cloneNode: (node) => node.cloneNode(true),\r\n patchProp\r\n};\r\n\r\nconst renderer = createRenderer(nodeOps);\r\n\r\nexport const { render, createApp } = renderer;\r\n\r\n/**\r\n * Mount function for DOM environments.\r\n * Use this with defineApp().mount() to render to the DOM.\r\n * \r\n * @example\r\n * ```tsx\r\n * import { defineApp } from '@sigx/runtime-core';\r\n * import { domMount } from '@sigx/runtime-dom';\r\n * \r\n * const app = defineApp(<App />);\r\n * app.use(routerPlugin)\r\n * .mount(document.getElementById('app')!, domMount);\r\n * ```\r\n */\r\nexport const domMount = (component: any, container: HTMLElement | Element | ShadowRoot, appContext?: any): (() => void) => {\r\n render(component, container as Element, appContext);\r\n\r\n // Return an unmount function\r\n return () => {\r\n // Render null to unmount\r\n render(null as any, container as Element);\r\n };\r\n};\r\n\r\n// Set domMount as the default mount function for this platform\r\nsetDefaultMount(domMount);\r\n\r\n/**\r\n * Hydrate existing DOM with VNode structure\r\n */\r\nexport function hydrate(element: JSXElement, container: Element | ShadowRoot): void {\r\n // Normalize element to VNode\r\n let vnode: VNode | null = null;\r\n if (element != null && element !== false && element !== true) {\r\n if (typeof element === 'string' || typeof element === 'number') {\r\n vnode = {\r\n type: Text,\r\n props: {},\r\n key: null,\r\n children: [],\r\n dom: null,\r\n text: element\r\n };\r\n } else {\r\n vnode = element as VNode;\r\n }\r\n }\r\n\r\n if (vnode) {\r\n (container as any)._vnode = vnode;\r\n // Hydrate starting from the first child of the container\r\n hydrateRecursive(vnode, container.firstChild);\r\n }\r\n}\r\n\r\nfunction hydrateRecursive(vnode: VNode, dom: Node | null): Node | null {\r\n if (!dom) {\r\n // Mismatch: DOM missing. \r\n // In a real implementation, we would mount the node here.\r\n // For now, we just warn.\r\n console.warn('Hydration mismatch: DOM node missing for vnode', vnode);\r\n return null;\r\n }\r\n\r\n vnode.dom = dom;\r\n (dom as any).__vnode = vnode;\r\n\r\n if (vnode.type === Text) {\r\n if (dom.nodeType !== Node.TEXT_NODE) {\r\n console.warn('Hydration mismatch: Expected text node', dom);\r\n // Recovery could happen here\r\n } else {\r\n if (dom.nodeValue !== String(vnode.text)) {\r\n console.warn(`Hydration mismatch: Text content \"${dom.nodeValue}\" !== \"${vnode.text}\"`);\r\n dom.nodeValue = String(vnode.text);\r\n }\r\n }\r\n return dom.nextSibling;\r\n }\r\n\r\n if (vnode.type === Fragment) {\r\n let next: Node | null = dom;\r\n for (const child of vnode.children) {\r\n next = hydrateRecursive(child, next);\r\n }\r\n return next;\r\n }\r\n\r\n // Element\r\n if (dom.nodeType !== Node.ELEMENT_NODE) {\r\n console.warn('Hydration mismatch: Expected element node', dom);\r\n return dom.nextSibling;\r\n }\r\n\r\n const el = dom as HTMLElement;\r\n if (el.tagName.toLowerCase() !== (vnode.type as string).toLowerCase()) {\r\n console.warn(`Hydration mismatch: Tag name \"${el.tagName}\" !== \"${vnode.type}\"`);\r\n return dom.nextSibling;\r\n }\r\n\r\n // Hydrate props (attach listeners and ensure attributes match)\r\n // We reuse updateProps to attach event listeners and fix any attribute mismatches\r\n // updateProps(el, {}, vnode.props, vnode.type as string);\r\n // We need to use patchProp here for each prop\r\n if (vnode.props) {\r\n for (const key in vnode.props) {\r\n patchProp(el, key, null, vnode.props[key]);\r\n }\r\n }\r\n\r\n // Handle ref\r\n if (vnode.props.ref) {\r\n if (typeof vnode.props.ref === 'function') {\r\n vnode.props.ref(el);\r\n } else if (vnode.props.ref && typeof vnode.props.ref === 'object') {\r\n vnode.props.ref.current = el;\r\n }\r\n }\r\n\r\n // Hydrate children\r\n let childDom: Node | null = el.firstChild;\r\n for (const child of vnode.children) {\r\n child.parent = vnode;\r\n childDom = hydrateRecursive(child, childDom);\r\n }\r\n\r\n if (vnode.type === 'select') {\r\n fixSelectValue(el, vnode.props);\r\n }\r\n\r\n return dom.nextSibling;\r\n}\r\n\r\nfunction fixSelectValue(dom: HTMLElement, props: any) {\r\n if (dom.tagName === 'SELECT' && 'value' in props) {\r\n const val = props.value;\r\n if ((dom as HTMLSelectElement).multiple) {\r\n const options = (dom as HTMLSelectElement).options;\r\n const valArray = Array.isArray(val) ? val : [val];\r\n for (let i = 0; i < options.length; i++) {\r\n options[i].selected = valArray.includes(options[i].value);\r\n }\r\n } else {\r\n (dom as HTMLSelectElement).value = String(val);\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["val: any","nodeOps: RendererOptions<Node, Element>"],"sources":["../src/index.ts"],"sourcesContent":["// Import JSX types (global augmentation)\r\nimport './jsx';\r\n// Import type augmentation for @sigx/runtime-core\r\nimport './types.js';\r\nimport { VNode, Fragment, JSXElement, setPlatformSyncProcessor, createRenderer, RendererOptions, Text, setDefaultMount } from '@sigx/runtime-core';\r\n\r\n// Register DOM-specific sync processor for intrinsic elements (checkbox, radio, etc.)\r\nsetPlatformSyncProcessor((type, props, [stateObj, key], originalProps) => {\r\n // Smart mapping for checkbox\r\n if (type === 'input' && originalProps.type === 'checkbox') {\r\n const val = stateObj[key];\r\n\r\n if (Array.isArray(val)) {\r\n // Array Checkbox (Multi-select)\r\n props.checked = val.includes(originalProps.value);\r\n\r\n const existingHandler = props['onUpdate:value'];\r\n props['onUpdate:value'] = (checked: boolean) => {\r\n const currentVal = originalProps.value;\r\n const currentArr = stateObj[key] as any[];\r\n if (checked) {\r\n if (!currentArr.includes(currentVal)) {\r\n stateObj[key] = [...currentArr, currentVal];\r\n }\r\n } else {\r\n stateObj[key] = currentArr.filter((i: any) => i !== currentVal);\r\n }\r\n if (existingHandler) existingHandler(checked);\r\n };\r\n } else {\r\n // Boolean Checkbox\r\n props.checked = val;\r\n const existingHandler = props['onUpdate:value'];\r\n props['onUpdate:value'] = (v: any) => {\r\n stateObj[key] = v;\r\n if (existingHandler) existingHandler(v);\r\n };\r\n }\r\n return true; // Handled\r\n }\r\n\r\n // Radio Button\r\n if (type === 'input' && originalProps.type === 'radio') {\r\n props.checked = stateObj[key] === originalProps.value;\r\n const existingHandler = props['onUpdate:value'];\r\n props['onUpdate:value'] = (checked: boolean) => {\r\n if (checked) stateObj[key] = originalProps.value;\r\n if (existingHandler) existingHandler(checked);\r\n };\r\n return true; // Handled\r\n }\r\n\r\n // Not handled - use generic fallback\r\n return false;\r\n});\r\n\r\nfunction patchProp(dom: Element, key: string, prevValue: any, nextValue: any, isSVG?: boolean) {\r\n const tagName = dom.tagName.toLowerCase();\r\n const oldProps = prevValue ? { [key]: prevValue } : {};\r\n const newProps = nextValue ? { [key]: nextValue } : {};\r\n\r\n // This is a simplified version of updateProps that handles a single prop\r\n // But the original updateProps handled all props at once.\r\n // The renderer calls patchProp for each key.\r\n\r\n // Logic adapted from original updateProps\r\n const oldValue = prevValue;\r\n const newValue = nextValue;\r\n\r\n if (key === 'children' || key === 'key' || key === 'ref') return;\r\n\r\n if (key === 'style') {\r\n const el = dom as HTMLElement;\r\n if (typeof newValue === 'object' && newValue !== null) {\r\n const styleObj = newValue as Record<string, string | number>;\r\n // We might need to unset old styles if they are not in new styles\r\n // But here we only get the new value for the key.\r\n // Ideally patchProp should handle diffing inside style object if it's an object.\r\n // For now, let's assume full replacement or simple update.\r\n for (const styleKey in styleObj) {\r\n if (styleKey.startsWith('--')) {\r\n el.style.setProperty(styleKey, String(styleObj[styleKey]));\r\n } else {\r\n (el.style as any)[styleKey] = styleObj[styleKey];\r\n }\r\n }\r\n } else {\r\n el.style.cssText = String(newValue);\r\n }\r\n } else if (key.startsWith('on')) {\r\n if (key === 'onUpdate:value' && (tagName === 'input' || tagName === 'textarea' || tagName === 'select')) {\r\n const el = dom as HTMLElement;\r\n if (oldValue) {\r\n const wrapper = (oldValue as any).__sigx_sync_handler;\r\n if (wrapper) {\r\n el.removeEventListener('input', wrapper);\r\n el.removeEventListener('change', wrapper);\r\n }\r\n }\r\n\r\n if (newValue) {\r\n const handler = (e: Event) => {\r\n const target = e.target as HTMLInputElement;\r\n let val: any;\r\n\r\n if (target.type === 'checkbox' || target.type === 'radio') {\r\n val = target.checked;\r\n } else if (target.type === 'number') {\r\n val = target.valueAsNumber;\r\n } else if (tagName === 'select' && (dom as HTMLSelectElement).multiple) {\r\n val = Array.from((dom as HTMLSelectElement).selectedOptions).map(o => o.value);\r\n } else {\r\n val = target.value;\r\n }\r\n\r\n (newValue as Function)(val);\r\n };\r\n (newValue as any).__sigx_sync_handler = handler;\r\n\r\n const inputType = (dom as HTMLInputElement).type;\r\n if (tagName === 'select' || (tagName === 'input' && (inputType === 'checkbox' || inputType === 'radio'))) {\r\n el.addEventListener('change', handler);\r\n } else {\r\n el.addEventListener('input', handler);\r\n }\r\n }\r\n return;\r\n }\r\n\r\n const eventName = key.slice(2).toLowerCase();\r\n // Store handlers on the DOM element to properly track them across re-renders\r\n // Using a Map keyed by event name to ensure we remove the correct wrapper\r\n const handlersKey = '__sigx_event_handlers';\r\n let handlers = (dom as any)[handlersKey] as Map<string, EventListener> | undefined;\r\n if (!handlers) {\r\n handlers = new Map();\r\n (dom as any)[handlersKey] = handlers;\r\n }\r\n\r\n // Remove old handler if exists\r\n const oldHandler = handlers.get(eventName);\r\n if (oldHandler) {\r\n dom.removeEventListener(eventName, oldHandler);\r\n handlers.delete(eventName);\r\n }\r\n\r\n // Add new handler\r\n if (newValue) {\r\n const handler = (e: Event) => {\r\n if (e instanceof CustomEvent) {\r\n (newValue as Function)(e.detail);\r\n } else {\r\n (newValue as Function)(e);\r\n }\r\n };\r\n handlers.set(eventName, handler);\r\n dom.addEventListener(eventName, handler as EventListener);\r\n }\r\n } else if (key === 'className') {\r\n dom.setAttribute('class', String(newValue));\r\n } else if (key.startsWith('.')) {\r\n const propName = key.slice(1);\r\n (dom as any)[propName] = newValue;\r\n } else {\r\n if ((tagName === 'input' || tagName === 'textarea' || tagName === 'select') &&\r\n (key === 'value' || key === 'checked')) {\r\n if (tagName === 'select' && key === 'value') return;\r\n\r\n if (key === 'checked' && tagName === 'input') {\r\n (dom as HTMLInputElement).checked = Boolean(newValue);\r\n } else if (key === 'value') {\r\n (dom as HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement).value = String(newValue ?? '');\r\n }\r\n } else if (key in dom) {\r\n try {\r\n (dom as Record<string, any>)[key] = newValue;\r\n } catch (e) {\r\n dom.setAttribute(key, String(newValue));\r\n }\r\n } else if (tagName.includes('-') && !key.includes('-')) {\r\n (dom as Record<string, any>)[key] = newValue;\r\n } else {\r\n if (newValue === true) dom.setAttribute(key, '');\r\n else if (newValue === false || newValue == null) dom.removeAttribute(key);\r\n else dom.setAttribute(key, String(newValue));\r\n }\r\n }\r\n}\r\n\r\nconst nodeOps: RendererOptions<Node, Element> = {\r\n insert: (child, parent, anchor) => {\r\n parent.insertBefore(child, anchor || null);\r\n },\r\n remove: (child) => {\r\n const parent = child.parentNode;\r\n if (parent) {\r\n parent.removeChild(child);\r\n }\r\n },\r\n createElement: (tag, isSVG, isCustomizedBuiltIn) => {\r\n const is = isCustomizedBuiltIn ? { is: isCustomizedBuiltIn } : undefined;\r\n return document.createElement(tag, is);\r\n },\r\n createText: (text) => document.createTextNode(text),\r\n createComment: (text) => document.createComment(text),\r\n setText: (node, text) => {\r\n node.nodeValue = text;\r\n },\r\n setElementText: (el, text) => {\r\n el.textContent = text;\r\n },\r\n parentNode: (node) => node.parentNode as Element,\r\n nextSibling: (node) => node.nextSibling,\r\n querySelector: (selector) => document.querySelector(selector),\r\n setScopeId: (el, id) => el.setAttribute(id, ''),\r\n cloneNode: (node) => node.cloneNode(true),\r\n patchProp\r\n};\r\n\r\nconst renderer = createRenderer(nodeOps);\r\n\r\n// Export render and createApp\r\nexport const { render, createApp } = renderer;\r\n\r\n// Export primitives for SSR plugins and hydration\r\nexport const { patch, mount, unmount, mountComponent } = renderer;\r\nexport { patchProp, nodeOps };\r\n\r\n/**\r\n * Mount function for DOM environments.\r\n * Use this with defineApp().mount() to render to the DOM.\r\n * \r\n * @example\r\n * ```tsx\r\n * import { defineApp } from '@sigx/runtime-core';\r\n * import { domMount } from '@sigx/runtime-dom';\r\n * \r\n * const app = defineApp(<App />);\r\n * app.use(routerPlugin)\r\n * .mount(document.getElementById('app')!, domMount);\r\n * ```\r\n */\r\nexport const domMount = (component: any, container: HTMLElement | Element | ShadowRoot | string, appContext?: any): (() => void) => {\r\n // Resolve string selector to element\r\n const target = typeof container === 'string'\r\n ? document.querySelector(container)\r\n : container;\r\n\r\n if (!target) {\r\n throw new Error(`Mount target \"${container}\" not found.`);\r\n }\r\n\r\n render(component, target as Element, appContext);\r\n\r\n // Return an unmount function\r\n return () => {\r\n // Render null to unmount\r\n render(null as any, target as Element);\r\n };\r\n};\r\n\r\n// Set domMount as the default mount function for this platform\r\nsetDefaultMount(domMount);\r\n"],"mappings":"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"}
package/dist/jsx.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import '@sigx/runtime-core';
2
- import type { RegisteredElements } from '@sigx/runtime-core';
3
2
  declare global {
4
3
  namespace JSX {
5
4
  interface IntrinsicAttributes {
@@ -9,7 +8,7 @@ declare global {
9
8
  [key: `data-${string}`]: any;
10
9
  [key: `aria-${string}`]: any;
11
10
  }
12
- interface IntrinsicElements extends RegisteredElements {
11
+ interface IntrinsicElements {
13
12
  a: HTMLAttributes<HTMLAnchorElement>;
14
13
  abbr: HTMLAttributes<HTMLElement>;
15
14
  address: HTMLAttributes<HTMLElement>;
package/dist/jsx.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"jsx.d.ts","sourceRoot":"","sources":["../src/jsx.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsx.d.ts","sourceRoot":"","sources":["../src/jsx.tsx"],"names":[],"mappings":"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"}
package/dist/styles.d.ts CHANGED
@@ -1,43 +1,61 @@
1
1
  /**
2
2
  * Style Registry for DOM runtime
3
- * Manages CSS stylesheets with deduplication and lazy CSSStyleSheet creation
4
- */
5
- export interface StyleEntry {
6
- id: string;
7
- cssText: string;
8
- sheet?: CSSStyleSheet;
9
- }
10
- /**
11
- * Set the current style target for style adoption
12
- * Components should call this before rendering to ensure styles go to the right place
13
- * @returns The previous style target
14
- */
15
- export declare function setStyleTarget(target: ShadowRoot | Document | null): ShadowRoot | Document | null;
16
- /**
17
- * Get the current style target
18
- */
19
- export declare function getStyleTarget(): ShadowRoot | Document | null;
20
- /**
21
- * Register and adopt a stylesheet
3
+ * Manages CSS stylesheets with deduplication using adoptedStyleSheets API
4
+ */
5
+ export type CSSObject = Partial<CSSStyleDeclaration> & {
6
+ [key: string]: string | number | CSSObject | undefined | any;
7
+ };
8
+ export type StylesMap<T> = {
9
+ [K in keyof T]: string;
10
+ };
11
+ export type DeepPartial<T> = {
12
+ [P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
13
+ };
14
+ export type VarsHelper<T> = T & {
15
+ (overrides?: DeepPartial<T>): Record<string, string>;
16
+ };
17
+ /**
18
+ * Register and adopt a stylesheet to the document
22
19
  * @param id Unique identifier for deduplication
23
20
  * @param cssText The CSS text content
24
- * @param target Optional target (ShadowRoot or Document). Uses currentStyleTarget if not provided, falls back to document.
25
- */
26
- export declare function adoptStyles(id: string, cssText: string, target?: ShadowRoot | Document): void;
27
- /**
28
- * Get all registered styles (for SSR)
29
- */
30
- export declare function getAllStyles(): StyleEntry[];
31
- /**
32
- * Get style tags HTML string (for SSR)
33
- */
34
- export declare function getStyleTags(): string;
35
- /**
36
- * Clear the style registry (useful for SSR per-request isolation)
37
- */
38
- export declare function clearStyles(): void;
39
- /**
40
- * Check if a style is already registered
41
21
  */
42
- export declare function hasStyle(id: string): boolean;
22
+ export declare function adoptStyles(id: string, cssText: string): void;
23
+ /**
24
+ * Define a set of styles using a typed object.
25
+ * Returns a map of class names that automatically adopts the stylesheet when used.
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * const styles = defineStyles({
30
+ * container: {
31
+ * display: "flex",
32
+ * backgroundColor: "var(--bg)",
33
+ * "&:hover": { opacity: 0.8 }
34
+ * }
35
+ * });
36
+ *
37
+ * // In component:
38
+ * <div class={styles.container} />
39
+ * ```
40
+ */
41
+ export declare function defineStyles<T extends Record<string, CSSObject>>(styles: T): StylesMap<T>;
42
+ /**
43
+ * Define a set of CSS variables with defaults.
44
+ * Returns a helper that provides both the var() strings and a function to generate style objects.
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * const vars = defineVars('card', {
49
+ * bg: 'white',
50
+ * padding: '1rem'
51
+ * });
52
+ *
53
+ * // Use in styles:
54
+ * // background: vars.bg -> var(--card-bg, white)
55
+ *
56
+ * // Use in component:
57
+ * // style={vars({ bg: 'red' })} -> { '--card-bg': 'red' }
58
+ * ```
59
+ */
60
+ export declare function defineVars<T extends Record<string, any>>(namespace: string, defaults: T): VarsHelper<T>;
43
61
  //# sourceMappingURL=styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,aAAa,CAAC;CACzB;AAcD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,IAAI,GAAG,UAAU,GAAG,QAAQ,GAAG,IAAI,CAIjG;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,UAAU,GAAG,QAAQ,GAAG,IAAI,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,IAAI,CAoC7F;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,UAAU,EAAE,CAE3C;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAKrC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAGlC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE5C"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkBH,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,mBAAmB,CAAC,GAAG;IACnD,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,GAAG,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;KACtB,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM;CACzB,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KACxB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAClE,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG;IAC5B,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxD,CAAC;AAcF;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAqB7D;AA+BD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAwBzF;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CA4CvG"}
package/dist/types.d.ts CHANGED
@@ -7,14 +7,6 @@ declare module '@sigx/runtime-core' {
7
7
  interface PlatformTypes {
8
8
  element: HTMLElement;
9
9
  }
10
- interface MountContext<TElement> {
11
- /** The shadow root if component uses Shadow DOM, null otherwise */
12
- shadow: ShadowRoot | null;
13
- }
14
- interface SetupContext {
15
- /** The shadow root if component uses Shadow DOM, null otherwise */
16
- shadow: ShadowRoot | null;
17
- }
18
10
  }
19
11
  export {};
20
12
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,QAAQ,oBAAoB,CAAC;IAChC,gEAAgE;IAChE,UAAU,aAAa;QACnB,OAAO,EAAE,WAAW,CAAC;KACxB;IAED,UAAU,YAAY,CAAC,QAAQ;QAC3B,mEAAmE;QACnE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;KAC7B;IAED,UAAU,YAAY;QAClB,mEAAmE;QACnE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;KAC7B;CACJ;AAGD,OAAO,EAAG,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,QAAQ,oBAAoB,CAAC;IAChC,gEAAgE;IAChE,UAAU,aAAa;QACnB,OAAO,EAAE,WAAW,CAAC;KACxB;CACJ;AAGD,OAAO,EAAG,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sigx/runtime-dom",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "description": "DOM runtime for SignalX",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -29,8 +29,8 @@
29
29
  "url": "https://github.com/signalxjs/core/issues"
30
30
  },
31
31
  "dependencies": {
32
- "@sigx/runtime-core": "^0.1.3",
33
- "@sigx/reactivity": "^0.1.3"
32
+ "@sigx/runtime-core": "^0.1.5",
33
+ "@sigx/reactivity": "^0.1.5"
34
34
  },
35
35
  "devDependencies": {
36
36
  "rolldown": "^1.0.0-beta.52",