@fluixi/dom 1.0.0-alpha.83 → 1.0.0-alpha.85

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 (182) hide show
  1. package/dist/cdn/dom-client.cjs +1427 -1
  2. package/dist/cdn/dom-client.d.ts +2 -2
  3. package/dist/cdn/dom-client.global.js +2 -1
  4. package/dist/cdn/dom-client.js +3 -3
  5. package/dist/cdn/dom-client.mjs +1430 -1
  6. package/dist/cdn/dom.cjs +3127 -1
  7. package/dist/cdn/dom.d.ts +2 -2
  8. package/dist/cdn/dom.global.js +2 -1
  9. package/dist/cdn/dom.js +4 -4
  10. package/dist/cdn/dom.mjs +3133 -1
  11. package/dist/index.cjs +3155 -1
  12. package/dist/index.js +2 -2
  13. package/dist/index.mjs +3149 -1
  14. package/dist/lib/component/index.cjs +128 -1
  15. package/dist/lib/component/index.mjs +105 -1
  16. package/dist/lib/component/modifiers.cjs +126 -1
  17. package/dist/lib/component/modifiers.d.ts +12 -0
  18. package/dist/lib/component/modifiers.d.ts.map +1 -1
  19. package/dist/lib/component/modifiers.js +12 -84
  20. package/dist/lib/component/modifiers.mjs +105 -1
  21. package/dist/lib/dom/delegate.cjs +60 -1
  22. package/dist/lib/dom/delegate.js +1 -1
  23. package/dist/lib/dom/delegate.mjs +39 -1
  24. package/dist/lib/dom/dynamic-element.cjs +949 -1
  25. package/dist/lib/dom/dynamic-element.d.ts +3 -3
  26. package/dist/lib/dom/dynamic-element.js +2 -2
  27. package/dist/lib/dom/dynamic-element.mjs +928 -1
  28. package/dist/lib/dom/hydration-state.cjs +93 -1
  29. package/dist/lib/dom/hydration-state.d.ts +1 -1
  30. package/dist/lib/dom/hydration-state.js +1 -1
  31. package/dist/lib/dom/hydration-state.mjs +72 -1
  32. package/dist/lib/dom/hydration.cjs +685 -1
  33. package/dist/lib/dom/hydration.js +8 -8
  34. package/dist/lib/dom/hydration.mjs +664 -1
  35. package/dist/lib/dom/index.cjs +2040 -1
  36. package/dist/lib/dom/index.js +1 -1
  37. package/dist/lib/dom/index.mjs +2020 -1
  38. package/dist/lib/dom/integration.cjs +71 -1
  39. package/dist/lib/dom/integration.js +3 -3
  40. package/dist/lib/dom/integration.mjs +51 -1
  41. package/dist/lib/dom/island.cjs +790 -1
  42. package/dist/lib/dom/island.d.ts +1 -1
  43. package/dist/lib/dom/island.js +11 -11
  44. package/dist/lib/dom/island.mjs +769 -1
  45. package/dist/lib/dom/runtime.cjs +1432 -1
  46. package/dist/lib/dom/runtime.d.ts +60 -17
  47. package/dist/lib/dom/runtime.d.ts.map +1 -1
  48. package/dist/lib/dom/runtime.js +122 -79
  49. package/dist/lib/dom/runtime.mjs +1414 -1
  50. package/dist/lib/dom/server/fx-data.cjs +53 -1
  51. package/dist/lib/dom/server/fx-data.d.ts +5 -5
  52. package/dist/lib/dom/server/fx-data.js +6 -6
  53. package/dist/lib/dom/server/fx-data.mjs +32 -1
  54. package/dist/lib/dom/server/host.cjs +66 -1
  55. package/dist/lib/dom/server/host.d.ts +6 -0
  56. package/dist/lib/dom/server/host.d.ts.map +1 -1
  57. package/dist/lib/dom/server/host.js +7 -1
  58. package/dist/lib/dom/server/host.mjs +45 -1
  59. package/dist/lib/dom/server/index.cjs +759 -1
  60. package/dist/lib/dom/server/index.d.ts +1 -1
  61. package/dist/lib/dom/server/index.js +1 -1
  62. package/dist/lib/dom/server/index.mjs +743 -1
  63. package/dist/lib/dom/server/nodes.cjs +302 -1
  64. package/dist/lib/dom/server/nodes.d.ts +2 -2
  65. package/dist/lib/dom/server/nodes.d.ts.map +1 -1
  66. package/dist/lib/dom/server/nodes.js +4 -4
  67. package/dist/lib/dom/server/nodes.mjs +279 -1
  68. package/dist/lib/dom/server/parse-template.cjs +395 -1
  69. package/dist/lib/dom/server/parse-template.d.ts +1 -1
  70. package/dist/lib/dom/server/parse-template.js +4 -4
  71. package/dist/lib/dom/server/parse-template.mjs +372 -1
  72. package/dist/lib/dom/server/render.cjs +691 -1
  73. package/dist/lib/dom/server/render.d.ts +9 -1
  74. package/dist/lib/dom/server/render.d.ts.map +1 -1
  75. package/dist/lib/dom/server/render.js +23 -15
  76. package/dist/lib/dom/server/render.mjs +677 -1
  77. package/dist/lib/dom/server/request-context.cjs +110 -1
  78. package/dist/lib/dom/server/request-context.d.ts +29 -9
  79. package/dist/lib/dom/server/request-context.d.ts.map +1 -1
  80. package/dist/lib/dom/server/request-context.js +28 -8
  81. package/dist/lib/dom/server/request-context.mjs +89 -1
  82. package/dist/lib/dom/server/serialize.cjs +187 -1
  83. package/dist/lib/dom/server/serialize.js +3 -3
  84. package/dist/lib/dom/server/serialize.mjs +164 -1
  85. package/dist/lib/dom/server-renderer.cjs +760 -1
  86. package/dist/lib/dom/server-renderer.js +1 -1
  87. package/dist/lib/dom/server-renderer.mjs +745 -1
  88. package/dist/lib/dom/types.cjs +18 -1
  89. package/dist/lib/dom/utils.cjs +381 -1
  90. package/dist/lib/dom/utils.d.ts +1 -88
  91. package/dist/lib/dom/utils.d.ts.map +1 -1
  92. package/dist/lib/dom/utils.js +2 -99
  93. package/dist/lib/dom/utils.mjs +361 -1
  94. package/dist/lib/dom/versions.cjs +60 -1
  95. package/dist/lib/dom/versions.d.ts +3 -3
  96. package/dist/lib/dom/versions.d.ts.map +1 -1
  97. package/dist/lib/dom/versions.js +17 -5
  98. package/dist/lib/dom/versions.mjs +37 -1
  99. package/dist/lib/element/attributes.cjs +19 -1
  100. package/dist/lib/element/attributes.d.ts +7 -7
  101. package/dist/lib/element/attributes.js +1 -1
  102. package/dist/lib/element/attributes.mjs +1 -0
  103. package/dist/lib/element/index.cjs +19 -1
  104. package/dist/lib/element/index.mjs +1 -0
  105. package/dist/lib/element/types.cjs +18 -1
  106. package/dist/lib/element/types.d.ts +4 -5
  107. package/dist/lib/element/types.d.ts.map +1 -1
  108. package/dist/lib/element/types.js +0 -1
  109. package/dist/lib/flow/class-map.cjs +38 -1
  110. package/dist/lib/flow/class-map.d.ts +3 -3
  111. package/dist/lib/flow/class-map.js +2 -2
  112. package/dist/lib/flow/class-map.mjs +17 -1
  113. package/dist/lib/flow/client-only.cjs +57 -1
  114. package/dist/lib/flow/client-only.d.ts +4 -4
  115. package/dist/lib/flow/client-only.js +3 -3
  116. package/dist/lib/flow/client-only.mjs +36 -1
  117. package/dist/lib/flow/dynamic.cjs +53 -1
  118. package/dist/lib/flow/dynamic.d.ts +2 -2
  119. package/dist/lib/flow/dynamic.js +3 -3
  120. package/dist/lib/flow/dynamic.mjs +32 -1
  121. package/dist/lib/flow/error-boundary.cjs +43 -1
  122. package/dist/lib/flow/error-boundary.d.ts +2 -2
  123. package/dist/lib/flow/error-boundary.js +3 -3
  124. package/dist/lib/flow/error-boundary.mjs +22 -1
  125. package/dist/lib/flow/for.cjs +66 -1
  126. package/dist/lib/flow/for.d.ts +9 -9
  127. package/dist/lib/flow/for.d.ts.map +1 -1
  128. package/dist/lib/flow/for.js +2 -2
  129. package/dist/lib/flow/for.mjs +45 -1
  130. package/dist/lib/flow/index-flow.cjs +67 -1
  131. package/dist/lib/flow/index-flow.d.ts +5 -5
  132. package/dist/lib/flow/index-flow.js +4 -4
  133. package/dist/lib/flow/index-flow.mjs +46 -1
  134. package/dist/lib/flow/index.cjs +805 -1
  135. package/dist/lib/flow/index.mjs +792 -1
  136. package/dist/lib/flow/portal.cjs +538 -1
  137. package/dist/lib/flow/portal.mjs +519 -1
  138. package/dist/lib/flow/show.cjs +81 -1
  139. package/dist/lib/flow/show.d.ts +1 -1
  140. package/dist/lib/flow/show.d.ts.map +1 -1
  141. package/dist/lib/flow/show.js +4 -115
  142. package/dist/lib/flow/show.mjs +67 -1
  143. package/dist/lib/flow/style-map.cjs +43 -1
  144. package/dist/lib/flow/style-map.d.ts +3 -3
  145. package/dist/lib/flow/style-map.js +3 -3
  146. package/dist/lib/flow/style-map.mjs +22 -1
  147. package/dist/lib/flow/switch.cjs +91 -1
  148. package/dist/lib/flow/switch.d.ts +3 -3
  149. package/dist/lib/flow/switch.d.ts.map +1 -1
  150. package/dist/lib/flow/switch.js +6 -6
  151. package/dist/lib/flow/switch.mjs +70 -1
  152. package/dist/lib/flow/utils.cjs +44 -1
  153. package/dist/lib/flow/utils.d.ts +1 -1
  154. package/dist/lib/flow/utils.js +1 -1
  155. package/dist/lib/flow/utils.mjs +23 -1
  156. package/dist/lib/html.cjs +32 -1
  157. package/dist/lib/html.d.ts +6 -6
  158. package/dist/lib/html.js +5 -5
  159. package/dist/lib/html.mjs +11 -1
  160. package/dist/lib/index.cjs +3104 -1
  161. package/dist/lib/index.d.ts +0 -1
  162. package/dist/lib/index.d.ts.map +1 -1
  163. package/dist/lib/index.js +2 -3
  164. package/dist/lib/index.mjs +3097 -1
  165. package/dist/lib/shared/types.cjs +18 -1
  166. package/dist/lib/shared/types.d.ts +8 -8
  167. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  168. package/dist/version.generated.cjs +26 -1
  169. package/dist/version.generated.d.ts +1 -1
  170. package/dist/version.generated.js +2 -2
  171. package/dist/version.generated.mjs +5 -1
  172. package/package.json +7 -6
  173. package/dist/lib/jsx/control-flow/flow.cjs +0 -1
  174. package/dist/lib/jsx/control-flow/flow.d.ts +0 -2
  175. package/dist/lib/jsx/control-flow/flow.d.ts.map +0 -1
  176. package/dist/lib/jsx/control-flow/flow.js +0 -627
  177. package/dist/lib/jsx/control-flow/flow.mjs +0 -0
  178. package/dist/lib/jsx/control-flow/for-flow.cjs +0 -1
  179. package/dist/lib/jsx/control-flow/for-flow.d.ts +0 -2
  180. package/dist/lib/jsx/control-flow/for-flow.d.ts.map +0 -1
  181. package/dist/lib/jsx/control-flow/for-flow.js +0 -1
  182. package/dist/lib/jsx/control-flow/for-flow.mjs +0 -0
@@ -1 +1,164 @@
1
- var l=Symbol.for("fluixi.server-node"),m=Symbol.for("fluixi.dom.server-host"),v=globalThis,w=v[m]??={server:typeof document>"u",nodes:null};var d=1,c=3,h=8,u;u=l;var a=class{constructor(){this[u]=!0;this.parentNode=null;this.childNodes=[]}get firstChild(){return this.childNodes[0]??null}get lastChild(){return this.childNodes[this.childNodes.length-1]??null}get nextSibling(){let e=this.parentNode;if(!e)return null;let r=e.childNodes.indexOf(this);return r>=0?e.childNodes[r+1]??null:null}get previousSibling(){let e=this.parentNode;if(!e)return null;let r=e.childNodes.indexOf(this);return r>0?e.childNodes[r-1]??null:null}get parentElement(){return this.parentNode}appendChild(e){return e.parentNode&&e.parentNode.removeChild(e),e.parentNode=this,this.childNodes.push(e),e}insertBefore(e,r){if(r==null)return this.appendChild(e);e.parentNode&&e.parentNode.removeChild(e);let s=this.childNodes.indexOf(r);return e.parentNode=this,s<0?this.childNodes.push(e):this.childNodes.splice(s,0,e),e}removeChild(e){let r=this.childNodes.indexOf(e);return r>=0&&this.childNodes.splice(r,1),e.parentNode=null,e}replaceChild(e,r){let s=this.childNodes.indexOf(r);return s>=0&&(e.parentNode&&e.parentNode.removeChild(e),e.parentNode=this,this.childNodes[s]=e,r.parentNode=null),r}addEventListener(){}removeEventListener(){}};var T=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),g=/&/g,f=/</g,N=/>/g,b=/"/g;function o(t){return t.replace(g,"&amp;").replace(f,"&lt;").replace(N,"&gt;")}function p(t){return t.replace(g,"&amp;").replace(b,"&quot;").replace(f,"&lt;").replace(N,"&gt;")}function y(t){return t.startsWith("--")?t:t.replace(/[A-Z]/g,e=>"-"+e.toLowerCase())}function S(t){if(!t)return"";let e=[];t.cssText&&e.push(t.cssText.trim().replace(/;\s*$/,""));for(let r of Object.keys(t)){if(r==="cssText")continue;let s=t[r];s==null||s===""||e.push(`${y(r)}: ${s}`)}return e.join("; ")}function x(t){let e="",r=S(t.style);for(let[s,i]of t.attributes)s==="style"&&r||(e+=` ${s}="${p(i)}"`);if(r){let s=t.attributes.get("style"),i=s?`${s.replace(/;\s*$/,"")}; ${r}`:r;e+=` style="${p(i)}"`}return e}function n(t){if(t==null||t===!1||t===!0)return"";if(typeof t=="string")return o(t);if(typeof t=="number")return o(String(t));if(typeof t=="function")return n(t());if(Array.isArray(t))return t.map(n).join("");if(typeof t.rawOuterHTML=="string")return t.rawOuterHTML;switch(t.nodeType){case c:return o(t.data??"");case h:return`<!--${t.data??""}-->`;case d:{let e=t.localName,r=`<${e}${x(t)}>`;if(T.has(e))return r;let s=t.rawHTML!=null?t.rawHTML:(t.childNodes??[]).map(n).join("");return`${r}${s}</${e}>`}}return Array.isArray(t.childNodes)?t.childNodes.map(n).join(""):""}export{n as serializeNode};
1
+ // src/lib/dom/server/host.ts
2
+ var SERVER_NODE = /* @__PURE__ */ Symbol.for("fluixi.server-node");
3
+ var STATE = /* @__PURE__ */ Symbol.for("fluixi.dom.server-host");
4
+ var realm = globalThis;
5
+ var state = realm[STATE] ??= {
6
+ server: typeof document === "undefined",
7
+ nodes: null
8
+ };
9
+
10
+ // src/lib/dom/server/nodes.ts
11
+ var NODE_ELEMENT = 1;
12
+ var NODE_TEXT = 3;
13
+ var NODE_COMMENT = 8;
14
+ var _a;
15
+ _a = SERVER_NODE;
16
+ var ServerNode = class {
17
+ constructor() {
18
+ // Brand the host.ts guards check for (lets them skip an instanceof on these classes).
19
+ this[_a] = true;
20
+ this.parentNode = null;
21
+ this.childNodes = [];
22
+ }
23
+ get firstChild() {
24
+ return this.childNodes[0] ?? null;
25
+ }
26
+ get lastChild() {
27
+ return this.childNodes[this.childNodes.length - 1] ?? null;
28
+ }
29
+ get nextSibling() {
30
+ const p = this.parentNode;
31
+ if (!p) return null;
32
+ const i = p.childNodes.indexOf(this);
33
+ return i >= 0 ? p.childNodes[i + 1] ?? null : null;
34
+ }
35
+ get previousSibling() {
36
+ const p = this.parentNode;
37
+ if (!p) return null;
38
+ const i = p.childNodes.indexOf(this);
39
+ return i > 0 ? p.childNodes[i - 1] ?? null : null;
40
+ }
41
+ get parentElement() {
42
+ return this.parentNode;
43
+ }
44
+ appendChild(child) {
45
+ if (child.parentNode) child.parentNode.removeChild(child);
46
+ child.parentNode = this;
47
+ this.childNodes.push(child);
48
+ return child;
49
+ }
50
+ insertBefore(child, ref) {
51
+ if (ref == null) return this.appendChild(child);
52
+ if (child.parentNode) child.parentNode.removeChild(child);
53
+ const i = this.childNodes.indexOf(ref);
54
+ child.parentNode = this;
55
+ if (i < 0) this.childNodes.push(child);
56
+ else this.childNodes.splice(i, 0, child);
57
+ return child;
58
+ }
59
+ removeChild(child) {
60
+ const i = this.childNodes.indexOf(child);
61
+ if (i >= 0) this.childNodes.splice(i, 1);
62
+ child.parentNode = null;
63
+ return child;
64
+ }
65
+ replaceChild(next, old) {
66
+ const i = this.childNodes.indexOf(old);
67
+ if (i >= 0) {
68
+ if (next.parentNode) next.parentNode.removeChild(next);
69
+ next.parentNode = this;
70
+ this.childNodes[i] = next;
71
+ old.parentNode = null;
72
+ }
73
+ return old;
74
+ }
75
+ // Event listeners are inert on the server.
76
+ addEventListener() {
77
+ }
78
+ removeEventListener() {
79
+ }
80
+ };
81
+
82
+ // src/lib/dom/server/serialize.ts
83
+ var VOID_ELEMENTS = /* @__PURE__ */ new Set([
84
+ "area",
85
+ "base",
86
+ "br",
87
+ "col",
88
+ "embed",
89
+ "hr",
90
+ "img",
91
+ "input",
92
+ "link",
93
+ "meta",
94
+ "param",
95
+ "source",
96
+ "track",
97
+ "wbr"
98
+ ]);
99
+ var AMP = /&/g;
100
+ var LT = /</g;
101
+ var GT = />/g;
102
+ var QUOT = /"/g;
103
+ function escapeText(s) {
104
+ return s.replace(AMP, "&amp;").replace(LT, "&lt;").replace(GT, "&gt;");
105
+ }
106
+ function escapeAttr(s) {
107
+ return s.replace(AMP, "&amp;").replace(QUOT, "&quot;").replace(LT, "&lt;").replace(GT, "&gt;");
108
+ }
109
+ function camelToKebab(k) {
110
+ if (k.startsWith("--")) return k;
111
+ return k.replace(/[A-Z]/g, (m) => "-" + m.toLowerCase());
112
+ }
113
+ function serializeStyle(style) {
114
+ if (!style) return "";
115
+ const parts = [];
116
+ if (style.cssText) parts.push(style.cssText.trim().replace(/;\s*$/, ""));
117
+ for (const key of Object.keys(style)) {
118
+ if (key === "cssText") continue;
119
+ const v = style[key];
120
+ if (v == null || v === "") continue;
121
+ parts.push(`${camelToKebab(key)}: ${v}`);
122
+ }
123
+ return parts.join("; ");
124
+ }
125
+ function serializeAttrs(el) {
126
+ let out = "";
127
+ const inlineStyle = serializeStyle(el.style);
128
+ for (const [name, value] of el.attributes) {
129
+ if (name === "style" && inlineStyle) continue;
130
+ out += ` ${name}="${escapeAttr(value)}"`;
131
+ }
132
+ if (inlineStyle) {
133
+ const attrStyle = el.attributes.get("style");
134
+ const merged = attrStyle ? `${attrStyle.replace(/;\s*$/, "")}; ${inlineStyle}` : inlineStyle;
135
+ out += ` style="${escapeAttr(merged)}"`;
136
+ }
137
+ return out;
138
+ }
139
+ function serializeNode(node) {
140
+ if (node == null || node === false || node === true) return "";
141
+ if (typeof node === "string") return escapeText(node);
142
+ if (typeof node === "number") return escapeText(String(node));
143
+ if (typeof node === "function") return serializeNode(node());
144
+ if (Array.isArray(node)) return node.map(serializeNode).join("");
145
+ if (typeof node.rawOuterHTML === "string") return node.rawOuterHTML;
146
+ switch (node.nodeType) {
147
+ case NODE_TEXT:
148
+ return escapeText(node.data ?? "");
149
+ case NODE_COMMENT:
150
+ return `<!--${node.data ?? ""}-->`;
151
+ case NODE_ELEMENT: {
152
+ const tag = node.localName;
153
+ const open = `<${tag}${serializeAttrs(node)}>`;
154
+ if (VOID_ELEMENTS.has(tag)) return open;
155
+ const inner = node.rawHTML != null ? node.rawHTML : (node.childNodes ?? []).map(serializeNode).join("");
156
+ return `${open}${inner}</${tag}>`;
157
+ }
158
+ }
159
+ if (Array.isArray(node.childNodes)) return node.childNodes.map(serializeNode).join("");
160
+ return "";
161
+ }
162
+ export {
163
+ serializeNode
164
+ };