@vidact/runtime 0.2.0-beta.0 → 0.2.0-beta.10

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 (244) hide show
  1. package/CHANGELOG.md +71 -0
  2. package/README.md +1 -1
  3. package/dist/actions.d.ts +32 -30
  4. package/dist/actions.d.ts.map +1 -1
  5. package/dist/actions.js +251 -266
  6. package/dist/actions.js.map +1 -1
  7. package/dist/async.d.ts +20 -17
  8. package/dist/async.d.ts.map +1 -1
  9. package/dist/async.js +18 -17
  10. package/dist/async.js.map +1 -1
  11. package/dist/compiled/async-resource.d.ts +9 -6
  12. package/dist/compiled/async-resource.d.ts.map +1 -1
  13. package/dist/compiled/async-resource.js +69 -77
  14. package/dist/compiled/async-resource.js.map +1 -1
  15. package/dist/compiled/core.d.ts +148 -147
  16. package/dist/compiled/core.d.ts.map +1 -1
  17. package/dist/compiled/core.js +3064 -2987
  18. package/dist/compiled/core.js.map +1 -1
  19. package/dist/compiled/types.d.ts +44 -56
  20. package/dist/compiled/types.d.ts.map +1 -1
  21. package/dist/compiled/types.js +10 -6
  22. package/dist/compiled/types.js.map +1 -1
  23. package/dist/compiled/validation.d.ts +4 -1
  24. package/dist/compiled/validation.d.ts.map +1 -1
  25. package/dist/compiled/validation.js +17 -20
  26. package/dist/compiled/validation.js.map +1 -1
  27. package/dist/component-spread.d.ts +5 -3
  28. package/dist/component-spread.d.ts.map +1 -1
  29. package/dist/component-spread.js +49 -67
  30. package/dist/component-spread.js.map +1 -1
  31. package/dist/concurrent.d.ts +20 -18
  32. package/dist/concurrent.d.ts.map +1 -1
  33. package/dist/concurrent.js +191 -210
  34. package/dist/concurrent.js.map +1 -1
  35. package/dist/direct-dom.d.ts +17 -12
  36. package/dist/direct-dom.d.ts.map +1 -1
  37. package/dist/direct-dom.js +279 -222
  38. package/dist/direct-dom.js.map +1 -1
  39. package/dist/dom/attributes.d.ts +9 -6
  40. package/dist/dom/attributes.d.ts.map +1 -1
  41. package/dist/dom/attributes.js +65 -47
  42. package/dist/dom/attributes.js.map +1 -1
  43. package/dist/dom/events.d.ts +8 -2
  44. package/dist/dom/events.d.ts.map +1 -1
  45. package/dist/dom/events.js +118 -65
  46. package/dist/dom/events.js.map +1 -1
  47. package/dist/dom/forms.d.ts +9 -6
  48. package/dist/dom/forms.d.ts.map +1 -1
  49. package/dist/dom/forms.js +152 -198
  50. package/dist/dom/forms.js.map +1 -1
  51. package/dist/dom/intrinsic.d.ts +17 -15
  52. package/dist/dom/intrinsic.d.ts.map +1 -1
  53. package/dist/dom/intrinsic.js +48 -50
  54. package/dist/dom/intrinsic.js.map +1 -1
  55. package/dist/dom/namespace.d.ts +4 -1
  56. package/dist/dom/namespace.d.ts.map +1 -1
  57. package/dist/dom/namespace.js +25 -28
  58. package/dist/dom/namespace.js.map +1 -1
  59. package/dist/dom/namespaces.d.ts +11 -8
  60. package/dist/dom/namespaces.d.ts.map +1 -1
  61. package/dist/dom/namespaces.js +14 -12
  62. package/dist/dom/namespaces.js.map +1 -1
  63. package/dist/dom/properties.d.ts +18 -16
  64. package/dist/dom/properties.d.ts.map +1 -1
  65. package/dist/dom/properties.js +273 -296
  66. package/dist/dom/properties.js.map +1 -1
  67. package/dist/dom/style-properties.d.ts +4 -1
  68. package/dist/dom/style-properties.d.ts.map +1 -1
  69. package/dist/dom/style-properties.js +49 -45
  70. package/dist/dom/style-properties.js.map +1 -1
  71. package/dist/dom/styles.d.ts +5 -2
  72. package/dist/dom/styles.d.ts.map +1 -1
  73. package/dist/dom/styles.js +47 -67
  74. package/dist/dom/styles.js.map +1 -1
  75. package/dist/dom-forms.d.ts +4 -1
  76. package/dist/dom-forms.d.ts.map +1 -1
  77. package/dist/dom-forms.js +16 -13
  78. package/dist/dom-forms.js.map +1 -1
  79. package/dist/dom-styles.d.ts +4 -1
  80. package/dist/dom-styles.d.ts.map +1 -1
  81. package/dist/dom-styles.js +10 -7
  82. package/dist/dom-styles.js.map +1 -1
  83. package/dist/framework-hydrate.d.ts +20 -17
  84. package/dist/framework-hydrate.d.ts.map +1 -1
  85. package/dist/framework-hydrate.js +128 -146
  86. package/dist/framework-hydrate.js.map +1 -1
  87. package/dist/framework-protocol.d.ts +27 -25
  88. package/dist/framework-protocol.d.ts.map +1 -1
  89. package/dist/framework-protocol.js +173 -211
  90. package/dist/framework-protocol.js.map +1 -1
  91. package/dist/framework.d.ts +34 -32
  92. package/dist/framework.d.ts.map +1 -1
  93. package/dist/framework.js +74 -93
  94. package/dist/framework.js.map +1 -1
  95. package/dist/hydrate.d.ts +11 -8
  96. package/dist/hydrate.d.ts.map +1 -1
  97. package/dist/hydrate.js +13 -9
  98. package/dist/hydrate.js.map +1 -1
  99. package/dist/hydration-bridge.d.ts +70 -58
  100. package/dist/hydration-bridge.d.ts.map +1 -1
  101. package/dist/hydration-bridge.js +77 -66
  102. package/dist/hydration-bridge.js.map +1 -1
  103. package/dist/hydration.d.ts +54 -28
  104. package/dist/hydration.d.ts.map +1 -1
  105. package/dist/hydration.js +450 -463
  106. package/dist/hydration.js.map +1 -1
  107. package/dist/index.d.ts +13 -13
  108. package/dist/index.js +11 -13
  109. package/dist/indexed-list.d.ts +8 -5
  110. package/dist/indexed-list.d.ts.map +1 -1
  111. package/dist/indexed-list.js +14 -7
  112. package/dist/indexed-list.js.map +1 -1
  113. package/dist/jsx-runtime.d.ts +10 -8
  114. package/dist/jsx-runtime.d.ts.map +1 -1
  115. package/dist/jsx-runtime.js +28 -23
  116. package/dist/jsx-runtime.js.map +1 -1
  117. package/dist/keyed-list.d.ts +17 -14
  118. package/dist/keyed-list.d.ts.map +1 -1
  119. package/dist/keyed-list.js +244 -161
  120. package/dist/keyed-list.js.map +1 -1
  121. package/dist/metadata.d.ts +6 -3
  122. package/dist/metadata.d.ts.map +1 -1
  123. package/dist/metadata.js +131 -164
  124. package/dist/metadata.js.map +1 -1
  125. package/dist/nested-prop.d.ts +4 -2
  126. package/dist/nested-prop.d.ts.map +1 -1
  127. package/dist/nested-prop.js +17 -16
  128. package/dist/nested-prop.js.map +1 -1
  129. package/dist/profiling.d.ts +11 -8
  130. package/dist/profiling.d.ts.map +1 -1
  131. package/dist/profiling.js +17 -17
  132. package/dist/profiling.js.map +1 -1
  133. package/dist/protocol.d.ts +5 -2
  134. package/dist/protocol.d.ts.map +1 -1
  135. package/dist/protocol.js +8 -5
  136. package/dist/protocol.js.map +1 -1
  137. package/dist/raw-html.d.ts +5 -2
  138. package/dist/raw-html.d.ts.map +1 -1
  139. package/dist/raw-html.js +86 -146
  140. package/dist/raw-html.js.map +1 -1
  141. package/dist/ref.d.ts +8 -3
  142. package/dist/ref.d.ts.map +1 -1
  143. package/dist/ref.js +10 -2
  144. package/dist/ref.js.map +1 -1
  145. package/dist/renderable-protocol.d.ts +26 -8
  146. package/dist/renderable-protocol.d.ts.map +1 -1
  147. package/dist/renderable-protocol.js +30 -9
  148. package/dist/renderable-protocol.js.map +1 -1
  149. package/dist/renderable.d.ts +28 -22
  150. package/dist/renderable.d.ts.map +1 -1
  151. package/dist/renderable.js +152 -133
  152. package/dist/renderable.js.map +1 -1
  153. package/dist/retained-ui.d.ts +9 -6
  154. package/dist/retained-ui.d.ts.map +1 -1
  155. package/dist/retained-ui.js +12 -10
  156. package/dist/retained-ui.js.map +1 -1
  157. package/dist/root.d.ts +18 -15
  158. package/dist/root.d.ts.map +1 -1
  159. package/dist/root.js +73 -85
  160. package/dist/root.js.map +1 -1
  161. package/dist/scheduler.d.ts +10 -8
  162. package/dist/scheduler.d.ts.map +1 -1
  163. package/dist/scheduler.js +97 -105
  164. package/dist/scheduler.js.map +1 -1
  165. package/dist/server-framework.d.ts +45 -42
  166. package/dist/server-framework.d.ts.map +1 -1
  167. package/dist/server-framework.js +209 -217
  168. package/dist/server-framework.js.map +1 -1
  169. package/dist/server.d.ts +130 -128
  170. package/dist/server.d.ts.map +1 -1
  171. package/dist/server.js +603 -710
  172. package/dist/server.js.map +1 -1
  173. package/dist/shared/promise.d.ts +6 -3
  174. package/dist/shared/promise.d.ts.map +1 -1
  175. package/dist/shared/promise.js +21 -19
  176. package/dist/shared/promise.js.map +1 -1
  177. package/dist/source-mask.d.ts +10 -6
  178. package/dist/source-mask.d.ts.map +1 -1
  179. package/dist/source-mask.js +60 -63
  180. package/dist/source-mask.js.map +1 -1
  181. package/dist/spread.d.ts +5 -2
  182. package/dist/spread.d.ts.map +1 -1
  183. package/dist/spread.js +79 -99
  184. package/dist/spread.js.map +1 -1
  185. package/dist/state-slot.d.ts +29 -15
  186. package/dist/state-slot.d.ts.map +1 -1
  187. package/dist/state-slot.js +73 -42
  188. package/dist/state-slot.js.map +1 -1
  189. package/dist/testing.d.ts +9 -6
  190. package/dist/testing.d.ts.map +1 -1
  191. package/dist/testing.js +16 -12
  192. package/dist/testing.js.map +1 -1
  193. package/package.json +8 -7
  194. package/src/actions.ts +415 -0
  195. package/src/async.ts +78 -0
  196. package/src/compiled/async-resource.ts +113 -0
  197. package/src/compiled/core.ts +4647 -0
  198. package/src/compiled/types.ts +96 -0
  199. package/src/compiled/validation.ts +23 -0
  200. package/src/component-spread.ts +86 -0
  201. package/src/concurrent.ts +310 -0
  202. package/src/direct-dom.ts +491 -0
  203. package/src/dom/attributes.ts +55 -0
  204. package/src/dom/events.ts +179 -0
  205. package/src/dom/forms.ts +220 -0
  206. package/src/dom/intrinsic.ts +94 -0
  207. package/src/dom/namespace.ts +30 -0
  208. package/src/dom/namespaces.ts +14 -0
  209. package/src/dom/properties.ts +355 -0
  210. package/src/dom/style-properties.ts +46 -0
  211. package/src/dom/styles.ts +86 -0
  212. package/src/dom-forms.ts +23 -0
  213. package/src/dom-styles.ts +11 -0
  214. package/src/env.d.ts +6 -0
  215. package/src/framework-hydrate.ts +224 -0
  216. package/src/framework-protocol.ts +335 -0
  217. package/src/framework.ts +161 -0
  218. package/src/hydrate.ts +38 -0
  219. package/src/hydration-bridge.ts +202 -0
  220. package/src/hydration.ts +644 -0
  221. package/src/index.ts +94 -0
  222. package/src/indexed-list.ts +20 -0
  223. package/src/jsx-runtime.ts +55 -0
  224. package/src/keyed-list.ts +379 -0
  225. package/src/metadata.ts +212 -0
  226. package/src/nested-prop.ts +27 -0
  227. package/src/profiling.ts +43 -0
  228. package/src/protocol.ts +8 -0
  229. package/src/raw-html.ts +206 -0
  230. package/src/ref.ts +13 -0
  231. package/src/renderable-protocol.ts +63 -0
  232. package/src/renderable.ts +313 -0
  233. package/src/retained-ui.ts +19 -0
  234. package/src/root.ts +122 -0
  235. package/src/scheduler.ts +136 -0
  236. package/src/server-framework.ts +397 -0
  237. package/src/server.ts +1160 -0
  238. package/src/shared/promise.ts +28 -0
  239. package/src/source-mask.ts +103 -0
  240. package/src/spread.ts +131 -0
  241. package/src/state-slot.ts +132 -0
  242. package/src/testing.ts +27 -0
  243. package/dist/index.d.ts.map +0 -1
  244. package/dist/index.js.map +0 -1
package/dist/root.js CHANGED
@@ -1,94 +1,82 @@
1
- import { hydrateCompiled, mountCompiled } from './compiled/core.js';
2
- const DEV = typeof __VIDACT_DEV__ === 'undefined' || __VIDACT_DEV__;
3
- const HOT_ROOT = '__vidactHotRoot';
4
- export function createRoot(host, options) {
5
- let dispose;
6
- let terminal = false;
7
- return {
8
- mount(application) {
9
- if (terminal)
10
- throw new Error(DEV ? 'cannot mount an unmounted root' : 'V024');
11
- if (dispose !== undefined) {
12
- throw new Error(DEV ? 'compiled root already has a mounted application' : 'V025');
13
- }
14
- dispose = mountCompiled(application, host, options).dispose;
15
- },
16
- replace(nextApplication) {
17
- if (terminal)
18
- throw new Error(DEV ? 'cannot replace an unmounted root' : 'V030');
19
- const previous = dispose;
20
- const next = mountCompiled(nextApplication, host, options).dispose;
21
- dispose = next;
22
- previous?.();
23
- },
24
- unmount() {
25
- if (terminal)
26
- return;
27
- terminal = true;
28
- dispose?.();
29
- dispose = undefined;
30
- },
31
- };
1
+ import { hydrateCompiled, mountCompiled } from "./compiled/core.js";
2
+ //#region src/root.ts
3
+ const DEV = typeof __VIDACT_DEV__ === "undefined" || __VIDACT_DEV__;
4
+ const HOT_ROOT = "__vidactHotRoot";
5
+ function createRoot(host, options) {
6
+ let dispose;
7
+ let terminal = false;
8
+ return {
9
+ mount(application) {
10
+ if (terminal) throw new Error(DEV ? "cannot mount an unmounted root" : "V024");
11
+ if (dispose !== void 0) throw new Error(DEV ? "compiled root already has a mounted application" : "V025");
12
+ dispose = mountCompiled(application, host, options).dispose;
13
+ },
14
+ replace(nextApplication) {
15
+ if (terminal) throw new Error(DEV ? "cannot replace an unmounted root" : "V030");
16
+ const previous = dispose;
17
+ dispose = mountCompiled(nextApplication, host, options).dispose;
18
+ previous?.();
19
+ },
20
+ unmount() {
21
+ if (terminal) return;
22
+ terminal = true;
23
+ dispose?.();
24
+ dispose = void 0;
25
+ }
26
+ };
32
27
  }
33
- export function hydrateRoot(host, application, options) {
34
- let dispose = hydrateCompiled(application, host, options).dispose;
35
- let terminal = false;
36
- return {
37
- mount() {
38
- throw new Error(DEV ? 'hydration roots are mounted during creation' : 'V029');
39
- },
40
- replace(nextApplication) {
41
- if (terminal)
42
- throw new Error(DEV ? 'cannot replace an unmounted root' : 'V030');
43
- const previous = dispose;
44
- const next = mountCompiled(nextApplication, host, options).dispose;
45
- dispose = next;
46
- previous?.();
47
- },
48
- unmount() {
49
- if (terminal)
50
- return;
51
- terminal = true;
52
- dispose?.();
53
- dispose = undefined;
54
- },
55
- };
28
+ function hydrateRoot(host, application, options) {
29
+ let dispose = hydrateCompiled(application, host, options).dispose;
30
+ let terminal = false;
31
+ return {
32
+ mount() {
33
+ throw new Error(DEV ? "hydration roots are mounted during creation" : "V029");
34
+ },
35
+ replace(nextApplication) {
36
+ if (terminal) throw new Error(DEV ? "cannot replace an unmounted root" : "V030");
37
+ const previous = dispose;
38
+ dispose = mountCompiled(nextApplication, host, options).dispose;
39
+ previous?.();
40
+ },
41
+ unmount() {
42
+ if (terminal) return;
43
+ terminal = true;
44
+ dispose?.();
45
+ dispose = void 0;
46
+ }
47
+ };
56
48
  }
57
- export function mountHotRoot(hot, host, application, options) {
58
- const previous = hot.data[HOT_ROOT];
59
- const root = isCompiledRoot(previous) ? previous : createRoot(host, options);
60
- if (isCompiledRoot(previous))
61
- root.replace(application);
62
- else
63
- root.mount(application);
64
- registerHotRoot(hot, root);
65
- return root;
49
+ function mountHotRoot(hot, host, application, options) {
50
+ const previous = hot.data[HOT_ROOT];
51
+ const root = isCompiledRoot(previous) ? previous : createRoot(host, options);
52
+ if (isCompiledRoot(previous)) root.replace(application);
53
+ else root.mount(application);
54
+ registerHotRoot(hot, root);
55
+ return root;
66
56
  }
67
- export function hydrateHotRoot(hot, host, application, options) {
68
- const previous = hot.data[HOT_ROOT];
69
- const root = isCompiledRoot(previous) ? previous : hydrateRoot(host, application, options);
70
- if (isCompiledRoot(previous))
71
- root.replace(application);
72
- registerHotRoot(hot, root);
73
- return root;
57
+ function hydrateHotRoot(hot, host, application, options) {
58
+ const previous = hot.data[HOT_ROOT];
59
+ const root = isCompiledRoot(previous) ? previous : hydrateRoot(host, application, options);
60
+ if (isCompiledRoot(previous)) root.replace(application);
61
+ registerHotRoot(hot, root);
62
+ return root;
74
63
  }
75
64
  function registerHotRoot(hot, root) {
76
- hot.data[HOT_ROOT] = root;
77
- hot.accept();
78
- hot.dispose((data) => {
79
- data[HOT_ROOT] = root;
80
- });
81
- hot.prune(() => {
82
- if (hot.data[HOT_ROOT] !== root)
83
- return;
84
- delete hot.data[HOT_ROOT];
85
- root.unmount();
86
- });
65
+ hot.data[HOT_ROOT] = root;
66
+ hot.accept();
67
+ hot.dispose((data) => {
68
+ data[HOT_ROOT] = root;
69
+ });
70
+ hot.prune(() => {
71
+ if (hot.data[HOT_ROOT] !== root) return;
72
+ delete hot.data[HOT_ROOT];
73
+ root.unmount();
74
+ });
87
75
  }
88
76
  function isCompiledRoot(value) {
89
- return (typeof value === 'object' &&
90
- value !== null &&
91
- typeof Reflect.get(value, 'replace') === 'function' &&
92
- typeof Reflect.get(value, 'unmount') === 'function');
77
+ return typeof value === "object" && value !== null && typeof Reflect.get(value, "replace") === "function" && typeof Reflect.get(value, "unmount") === "function";
93
78
  }
79
+ //#endregion
80
+ export { createRoot, hydrateHotRoot, hydrateRoot, mountHotRoot };
81
+
94
82
  //# sourceMappingURL=root.js.map
package/dist/root.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"root.js","sourceRoot":"","sources":["../src/root.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"root.js","names":[],"sources":["../src/root.ts"],"mappings":";;AAGA,MAAM,MAAM,OAAO,mBAAmB,eAAe;AAerD,MAAM,WAAW;AAEjB,SAAgB,WAAW,MAAkB,SAA8C;CACzF,IAAI;CACJ,IAAI,WAAW;CACf,OAAO;EACL,MAAM,aAAa;GACjB,IAAI,UAAU,MAAM,IAAI,MAAM,MAAM,mCAAmC,MAAM;GAC7E,IAAI,YAAY,KAAA,GACd,MAAM,IAAI,MAAM,MAAM,oDAAoD,MAAM;GAElF,UAAU,cAAc,aAAa,MAAM,OAAO,CAAC,CAAC;EACtD;EACA,QAAQ,iBAAiB;GACvB,IAAI,UAAU,MAAM,IAAI,MAAM,MAAM,qCAAqC,MAAM;GAC/E,MAAM,WAAW;GAEjB,UADa,cAAc,iBAAiB,MAAM,OAAO,CAAC,CAAC;GAE3D,WAAW;EACb;EACA,UAAU;GACR,IAAI,UAAU;GACd,WAAW;GACX,UAAU;GACV,UAAU,KAAA;EACZ;CACF;AACF;AAEA,SAAgB,YACd,MACA,aACA,SACc;CACd,IAAI,UAAoC,gBAAgB,aAAa,MAAM,OAAO,CAAC,CAAC;CACpF,IAAI,WAAW;CACf,OAAO;EACL,QAAQ;GACN,MAAM,IAAI,MAAM,MAAM,gDAAgD,MAAM;EAC9E;EACA,QAAQ,iBAAiB;GACvB,IAAI,UAAU,MAAM,IAAI,MAAM,MAAM,qCAAqC,MAAM;GAC/E,MAAM,WAAW;GAEjB,UADa,cAAc,iBAAiB,MAAM,OAAO,CAAC,CAAC;GAE3D,WAAW;EACb;EACA,UAAU;GACR,IAAI,UAAU;GACd,WAAW;GACX,UAAU;GACV,UAAU,KAAA;EACZ;CACF;AACF;AAEA,SAAgB,aACd,KACA,MACA,aACA,SACc;CACd,MAAM,WAAW,IAAI,KAAK;CAC1B,MAAM,OAAO,eAAe,QAAQ,IAAI,WAAW,WAAW,MAAM,OAAO;CAC3E,IAAI,eAAe,QAAQ,GAAG,KAAK,QAAQ,WAAW;MACjD,KAAK,MAAM,WAAW;CAC3B,gBAAgB,KAAK,IAAI;CACzB,OAAO;AACT;AAEA,SAAgB,eACd,KACA,MACA,aACA,SACc;CACd,MAAM,WAAW,IAAI,KAAK;CAC1B,MAAM,OAAO,eAAe,QAAQ,IAAI,WAAW,YAAY,MAAM,aAAa,OAAO;CACzF,IAAI,eAAe,QAAQ,GAAG,KAAK,QAAQ,WAAW;CACtD,gBAAgB,KAAK,IAAI;CACzB,OAAO;AACT;AAEA,SAAS,gBAAgB,KAAiB,MAA0B;CAClE,IAAI,KAAK,YAAY;CACrB,IAAI,OAAO;CACX,IAAI,SAAS,SAAS;EACpB,KAAK,YAAY;CACnB,CAAC;CACD,IAAI,YAAY;EACd,IAAI,IAAI,KAAK,cAAc,MAAM;EACjC,OAAO,IAAI,KAAK;EAChB,KAAK,QAAQ;CACf,CAAC;AACH;AAEA,SAAS,eAAe,OAAuC;CAC7D,OACE,OAAO,UAAU,YACjB,UAAU,QACV,OAAO,QAAQ,IAAI,OAAO,SAAS,MAAM,cACzC,OAAO,QAAQ,IAAI,OAAO,SAAS,MAAM;AAE7C"}
@@ -1,10 +1,12 @@
1
+ //#region src/scheduler.d.ts
1
2
  type ScheduledTask = () => void;
2
- export type CancelScheduledTask = () => void;
3
- export declare function scheduleTask(task: ScheduledTask): void;
4
- export declare function scheduleDeferredTask(task: ScheduledTask): CancelScheduledTask;
5
- export declare function flushScheduledTasks(): number;
6
- export declare function hasScheduledTasks(): boolean;
7
- export declare function beginActScope(): void;
8
- export declare function endActScope(): void;
9
- export {};
3
+ type CancelScheduledTask = () => void;
4
+ declare function scheduleTask(task: ScheduledTask): void;
5
+ declare function scheduleDeferredTask(task: ScheduledTask): CancelScheduledTask;
6
+ declare function flushScheduledTasks(): number;
7
+ declare function hasScheduledTasks(): boolean;
8
+ declare function beginActScope(): void;
9
+ declare function endActScope(): void;
10
+ //#endregion
11
+ export { CancelScheduledTask, beginActScope, endActScope, flushScheduledTasks, hasScheduledTasks, scheduleDeferredTask, scheduleTask };
10
12
  //# sourceMappingURL=scheduler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"AAAA,KAAK,aAAa,GAAG,MAAM,IAAI,CAAA;AAC/B,MAAM,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAA;AAc5C,wBAAgB,YAAY,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAGtD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,GAAG,mBAAmB,CAO7E;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CA0C5C;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,wBAAgB,aAAa,IAAI,IAAI,CAEpC;AAED,wBAAgB,WAAW,IAAI,IAAI,CAIlC"}
1
+ {"version":3,"file":"scheduler.d.ts","names":[],"sources":["../src/scheduler.ts"],"mappings":";KAAK;KACO;iBAcI,aAAa,MAAM;iBAKnB,qBAAqB,MAAM,gBAAgB;iBAS3C;iBA4CA;iBAIA;iBAIA"}
package/dist/scheduler.js CHANGED
@@ -1,124 +1,116 @@
1
+ //#region src/scheduler.ts
1
2
  let tasks = [];
2
3
  let deferredTasks = [];
3
4
  let microtaskScheduled = false;
4
5
  let deferredTurnScheduled = false;
5
6
  let flushing = false;
6
7
  let actDepth = 0;
7
- export function scheduleTask(task) {
8
- tasks.push(task);
9
- requestFlush();
8
+ function scheduleTask(task) {
9
+ tasks.push(task);
10
+ requestFlush();
10
11
  }
11
- export function scheduleDeferredTask(task) {
12
- const entry = { run: task, canceled: false };
13
- deferredTasks.push(entry);
14
- requestDeferredTurn();
15
- return () => {
16
- entry.canceled = true;
17
- };
12
+ function scheduleDeferredTask(task) {
13
+ const entry = {
14
+ run: task,
15
+ canceled: false
16
+ };
17
+ deferredTasks.push(entry);
18
+ requestDeferredTurn();
19
+ return () => {
20
+ entry.canceled = true;
21
+ };
18
22
  }
19
- export function flushScheduledTasks() {
20
- if (flushing)
21
- return 0;
22
- flushing = true;
23
- microtaskScheduled = false;
24
- let firstError;
25
- let failed = false;
26
- let count = 0;
27
- try {
28
- const queued = tasks;
29
- const deferred = deferredTasks;
30
- tasks = [];
31
- deferredTasks = [];
32
- for (const task of queued) {
33
- count += 1;
34
- try {
35
- task();
36
- }
37
- catch (error) {
38
- if (!failed) {
39
- firstError = error;
40
- failed = true;
41
- }
42
- }
43
- }
44
- for (const task of deferred) {
45
- if (task.canceled)
46
- continue;
47
- count += 1;
48
- try {
49
- task.run();
50
- }
51
- catch (error) {
52
- if (!failed) {
53
- firstError = error;
54
- failed = true;
55
- }
56
- }
57
- }
58
- }
59
- finally {
60
- flushing = false;
61
- requestFlush();
62
- requestDeferredTurn();
63
- }
64
- if (failed)
65
- throw firstError;
66
- return count;
23
+ function flushScheduledTasks() {
24
+ if (flushing) return 0;
25
+ flushing = true;
26
+ microtaskScheduled = false;
27
+ let firstError;
28
+ let failed = false;
29
+ let count = 0;
30
+ try {
31
+ const queued = tasks;
32
+ const deferred = deferredTasks;
33
+ tasks = [];
34
+ deferredTasks = [];
35
+ for (const task of queued) {
36
+ count += 1;
37
+ try {
38
+ task();
39
+ } catch (error) {
40
+ if (!failed) {
41
+ firstError = error;
42
+ failed = true;
43
+ }
44
+ }
45
+ }
46
+ for (const task of deferred) {
47
+ if (task.canceled) continue;
48
+ count += 1;
49
+ try {
50
+ task.run();
51
+ } catch (error) {
52
+ if (!failed) {
53
+ firstError = error;
54
+ failed = true;
55
+ }
56
+ }
57
+ }
58
+ } finally {
59
+ flushing = false;
60
+ requestFlush();
61
+ requestDeferredTurn();
62
+ }
63
+ if (failed) throw firstError;
64
+ return count;
67
65
  }
68
- export function hasScheduledTasks() {
69
- return tasks.length > 0 || deferredTasks.some((task) => !task.canceled);
66
+ function hasScheduledTasks() {
67
+ return tasks.length > 0 || deferredTasks.some((task) => !task.canceled);
70
68
  }
71
- export function beginActScope() {
72
- actDepth += 1;
69
+ function beginActScope() {
70
+ actDepth += 1;
73
71
  }
74
- export function endActScope() {
75
- actDepth -= 1;
76
- requestFlush();
77
- requestDeferredTurn();
72
+ function endActScope() {
73
+ actDepth -= 1;
74
+ requestFlush();
75
+ requestDeferredTurn();
78
76
  }
79
77
  function requestFlush() {
80
- if (tasks.length === 0 || microtaskScheduled || flushing || actDepth > 0)
81
- return;
82
- microtaskScheduled = true;
83
- queueMicrotask(() => {
84
- microtaskScheduled = false;
85
- if (actDepth === 0)
86
- flushScheduledTasks();
87
- });
78
+ if (tasks.length === 0 || microtaskScheduled || flushing || actDepth > 0) return;
79
+ microtaskScheduled = true;
80
+ queueMicrotask(() => {
81
+ microtaskScheduled = false;
82
+ if (actDepth === 0) flushScheduledTasks();
83
+ });
88
84
  }
89
85
  function requestDeferredTurn() {
90
- if (deferredTasks.every((task) => task.canceled) ||
91
- deferredTurnScheduled ||
92
- flushing ||
93
- actDepth > 0) {
94
- return;
95
- }
96
- deferredTurnScheduled = true;
97
- const channel = new MessageChannel();
98
- channel.port1.addEventListener('message', () => {
99
- channel.port1.close();
100
- channel.port2.close();
101
- deferredTurnScheduled = false;
102
- if (actDepth > 0 || flushing) {
103
- requestDeferredTurn();
104
- return;
105
- }
106
- flushOneDeferredTask();
107
- }, { once: true });
108
- channel.port1.start();
109
- channel.port2.postMessage(undefined);
86
+ if (deferredTasks.every((task) => task.canceled) || deferredTurnScheduled || flushing || actDepth > 0) return;
87
+ deferredTurnScheduled = true;
88
+ const channel = new MessageChannel();
89
+ channel.port1.addEventListener("message", () => {
90
+ channel.port1.close();
91
+ channel.port2.close();
92
+ deferredTurnScheduled = false;
93
+ if (actDepth > 0 || flushing) {
94
+ requestDeferredTurn();
95
+ return;
96
+ }
97
+ flushOneDeferredTask();
98
+ }, { once: true });
99
+ channel.port1.start();
100
+ channel.port2.postMessage(void 0);
110
101
  }
111
102
  function flushOneDeferredTask() {
112
- let task;
113
- while ((task = deferredTasks.shift()) !== undefined && task.canceled) { }
114
- if (task === undefined)
115
- return;
116
- try {
117
- task.run();
118
- }
119
- finally {
120
- requestFlush();
121
- requestDeferredTurn();
122
- }
103
+ let task;
104
+ while ((task = deferredTasks.shift()) !== void 0 && task.canceled);
105
+ if (task === void 0) return;
106
+ try {
107
+ task.run();
108
+ } finally {
109
+ requestFlush();
110
+ requestDeferredTurn();
111
+ }
123
112
  }
113
+ //#endregion
114
+ export { beginActScope, endActScope, flushScheduledTasks, hasScheduledTasks, scheduleDeferredTask, scheduleTask };
115
+
124
116
  //# sourceMappingURL=scheduler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scheduler.js","names":[],"sources":["../src/scheduler.ts"],"mappings":";AAQA,IAAI,QAAyB,CAAC;AAC9B,IAAI,gBAAgC,CAAC;AACrC,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,IAAI,WAAW;AACf,IAAI,WAAW;AAEf,SAAgB,aAAa,MAA2B;CACtD,MAAM,KAAK,IAAI;CACf,aAAa;AACf;AAEA,SAAgB,qBAAqB,MAA0C;CAC7E,MAAM,QAAsB;EAAE,KAAK;EAAM,UAAU;CAAM;CACzD,cAAc,KAAK,KAAK;CACxB,oBAAoB;CACpB,aAAa;EACX,MAAM,WAAW;CACnB;AACF;AAEA,SAAgB,sBAA8B;CAC5C,IAAI,UAAU,OAAO;CACrB,WAAW;CACX,qBAAqB;CACrB,IAAI;CACJ,IAAI,SAAS;CACb,IAAI,QAAQ;CACZ,IAAI;EACF,MAAM,SAAS;EACf,MAAM,WAAW;EACjB,QAAQ,CAAC;EACT,gBAAgB,CAAC;EACjB,KAAK,MAAM,QAAQ,QAAQ;GACzB,SAAS;GACT,IAAI;IACF,KAAK;GACP,SAAS,OAAO;IACd,IAAI,CAAC,QAAQ;KACX,aAAa;KACb,SAAS;IACX;GACF;EACF;EACA,KAAK,MAAM,QAAQ,UAAU;GAC3B,IAAI,KAAK,UAAU;GACnB,SAAS;GACT,IAAI;IACF,KAAK,IAAI;GACX,SAAS,OAAO;IACd,IAAI,CAAC,QAAQ;KACX,aAAa;KACb,SAAS;IACX;GACF;EACF;CACF,UAAU;EACR,WAAW;EACX,aAAa;EACb,oBAAoB;CACtB;CACA,IAAI,QAAQ,MAAM;CAClB,OAAO;AACT;AAEA,SAAgB,oBAA6B;CAC3C,OAAO,MAAM,SAAS,KAAK,cAAc,MAAM,SAAS,CAAC,KAAK,QAAQ;AACxE;AAEA,SAAgB,gBAAsB;CACpC,YAAY;AACd;AAEA,SAAgB,cAAoB;CAClC,YAAY;CACZ,aAAa;CACb,oBAAoB;AACtB;AAEA,SAAS,eAAqB;CAC5B,IAAI,MAAM,WAAW,KAAK,sBAAsB,YAAY,WAAW,GAAG;CAC1E,qBAAqB;CACrB,qBAAqB;EACnB,qBAAqB;EACrB,IAAI,aAAa,GAAG,oBAAoB;CAC1C,CAAC;AACH;AAEA,SAAS,sBAA4B;CACnC,IACE,cAAc,OAAO,SAAS,KAAK,QAAQ,KAC3C,yBACA,YACA,WAAW,GAEX;CAEF,wBAAwB;CACxB,MAAM,UAAU,IAAI,eAAe;CACnC,QAAQ,MAAM,iBACZ,iBACM;EACJ,QAAQ,MAAM,MAAM;EACpB,QAAQ,MAAM,MAAM;EACpB,wBAAwB;EACxB,IAAI,WAAW,KAAK,UAAU;GAC5B,oBAAoB;GACpB;EACF;EACA,qBAAqB;CACvB,GACA,EAAE,MAAM,KAAK,CACf;CACA,QAAQ,MAAM,MAAM;CACpB,QAAQ,MAAM,YAAY,KAAA,CAAS;AACrC;AAEA,SAAS,uBAA6B;CACpC,IAAI;CACJ,QAAQ,OAAO,cAAc,MAAM,OAAO,KAAA,KAAa,KAAK;CAC5D,IAAI,SAAS,KAAA,GAAW;CACxB,IAAI;EACF,KAAK,IAAI;CACX,UAAU;EACR,aAAa;EACb,oBAAoB;CACtB;AACF"}
@@ -1,52 +1,55 @@
1
- import type { CompiledComponentResult } from './compiled/types.js';
2
- import { type ClientModuleManifest, type ClientReference, type FrameworkValue } from './framework-protocol.js';
3
- import { type ServerChild, type ServerNode, type ServerRenderOptions } from './server.js';
4
- export interface FrameworkRenderOptions extends ServerRenderOptions {
5
- readonly signal?: AbortSignal;
6
- readonly progressiveChunkSize?: number;
7
- readonly onError?: (error: unknown) => void;
1
+ import { CompiledComponentResult } from "./compiled/types.js";
2
+ import { ClientModuleManifest, ClientReference, FrameworkValue } from "./framework-protocol.js";
3
+ import { ServerChild, ServerNode, ServerRenderOptions } from "./server.js";
4
+ //#region src/server-framework.d.ts
5
+ interface FrameworkRenderOptions extends ServerRenderOptions {
6
+ readonly signal?: AbortSignal;
7
+ readonly progressiveChunkSize?: number;
8
+ readonly onError?: (error: unknown) => void;
8
9
  }
9
- export interface PipeableRenderOptions extends FrameworkRenderOptions {
10
- readonly onAllReady?: () => void;
11
- readonly onShellError?: (error: unknown) => void;
12
- readonly onShellReady?: () => void;
10
+ interface PipeableRenderOptions extends FrameworkRenderOptions {
11
+ readonly onAllReady?: () => void;
12
+ readonly onShellError?: (error: unknown) => void;
13
+ readonly onShellReady?: () => void;
13
14
  }
14
- export interface PipeDestination {
15
- readonly write: (chunk: Uint8Array) => boolean;
16
- readonly end: () => void;
17
- readonly destroy?: (error: unknown) => void;
18
- readonly once?: (event: 'drain', listener: () => void) => void;
19
- readonly off?: (event: 'drain', listener: () => void) => void;
15
+ interface PipeDestination {
16
+ readonly write: (chunk: Uint8Array) => boolean;
17
+ readonly end: () => void;
18
+ readonly destroy?: (error: unknown) => void;
19
+ readonly once?: (event: 'drain', listener: () => void) => void;
20
+ readonly off?: (event: 'drain', listener: () => void) => void;
20
21
  }
21
- export interface PipeableStream {
22
- readonly abort: (reason?: unknown) => void;
23
- readonly pipe: (destination: PipeDestination) => void;
22
+ interface PipeableStream {
23
+ readonly abort: (reason?: unknown) => void;
24
+ readonly pipe: (destination: PipeDestination) => void;
24
25
  }
25
- export type VidactReadableStream = ReadableStream<Uint8Array> & {
26
- readonly allReady: Promise<void>;
26
+ type VidactReadableStream = ReadableStream<Uint8Array> & {
27
+ readonly allReady: Promise<void>;
27
28
  };
28
- export interface PrerenderResult<Prelude> {
29
- readonly prelude: Prelude;
30
- readonly postponed: string | null;
29
+ interface PrerenderResult<Prelude> {
30
+ readonly prelude: Prelude;
31
+ readonly postponed: string | null;
31
32
  }
32
- export interface ServerComponentPayload {
33
- readonly kind: 'server-component';
34
- readonly html: string;
35
- readonly model: FrameworkValue;
33
+ interface ServerComponentPayload {
34
+ readonly kind: 'server-component';
35
+ readonly html: string;
36
+ readonly model: FrameworkValue;
36
37
  }
37
- export interface ClientBoundaryOptions {
38
- readonly clientManifest: ClientModuleManifest;
39
- readonly hostProps?: Readonly<Record<string, unknown>>;
38
+ interface ClientBoundaryOptions {
39
+ readonly clientManifest: ClientModuleManifest;
40
+ readonly hostProps?: Readonly<Record<string, unknown>>;
40
41
  }
41
- export declare function createClientBoundary(reference: ClientReference, props: FrameworkValue, serverContent: ServerChild | CompiledComponentResult, options: ClientBoundaryOptions): ServerNode & CompiledComponentResult;
42
- export declare function renderToReadableStream(value: ServerChild | (() => ServerChild), options?: FrameworkRenderOptions): Promise<VidactReadableStream>;
43
- export declare function renderToPipeableStream(value: ServerChild | (() => ServerChild), options?: PipeableRenderOptions): PipeableStream;
44
- export declare function prerender(value: ServerChild | (() => ServerChild), options?: FrameworkRenderOptions): Promise<PrerenderResult<ReadableStream<Uint8Array>>>;
45
- export declare function prerenderToNodeStream(value: ServerChild | (() => ServerChild), options?: FrameworkRenderOptions): Promise<PrerenderResult<AsyncIterable<Uint8Array>>>;
46
- export declare function resume(postponed: string, options?: FrameworkRenderOptions): Promise<VidactReadableStream>;
47
- export declare function resumeToPipeableStream(postponed: string, options?: PipeableRenderOptions): PipeableStream;
48
- export declare function renderServerComponentPayload(value: ServerChild | (() => ServerChild), model: FrameworkValue, options?: FrameworkRenderOptions & {
49
- readonly clientManifest?: ClientModuleManifest;
42
+ declare function createClientBoundary(reference: ClientReference, props: FrameworkValue, serverContent: ServerChild | CompiledComponentResult, options: ClientBoundaryOptions): ServerNode & CompiledComponentResult;
43
+ declare function renderToReadableStream(value: ServerChild | (() => ServerChild), options?: FrameworkRenderOptions): Promise<VidactReadableStream>;
44
+ declare function renderToPipeableStream(value: ServerChild | (() => ServerChild), options?: PipeableRenderOptions): PipeableStream;
45
+ declare function prerender(value: ServerChild | (() => ServerChild), options?: FrameworkRenderOptions): Promise<PrerenderResult<ReadableStream<Uint8Array>>>;
46
+ declare function prerenderToNodeStream(value: ServerChild | (() => ServerChild), options?: FrameworkRenderOptions): Promise<PrerenderResult<AsyncIterable<Uint8Array>>>;
47
+ declare function resume(postponed: string, options?: FrameworkRenderOptions): Promise<VidactReadableStream>;
48
+ declare function resumeToPipeableStream(postponed: string, options?: PipeableRenderOptions): PipeableStream;
49
+ declare function renderServerComponentPayload(value: ServerChild | (() => ServerChild), model: FrameworkValue, options?: FrameworkRenderOptions & {
50
+ readonly clientManifest?: ClientModuleManifest;
50
51
  }): Promise<string>;
51
- export declare function decodeServerComponentPayload(payload: string, clientManifest?: ClientModuleManifest): ServerComponentPayload;
52
+ declare function decodeServerComponentPayload(payload: string, clientManifest?: ClientModuleManifest): ServerComponentPayload;
53
+ //#endregion
54
+ export { ClientBoundaryOptions, FrameworkRenderOptions, PipeDestination, PipeableRenderOptions, PipeableStream, PrerenderResult, ServerComponentPayload, VidactReadableStream, createClientBoundary, decodeServerComponentPayload, prerender, prerenderToNodeStream, renderServerComponentPayload, renderToPipeableStream, renderToReadableStream, resume, resumeToPipeableStream };
52
55
  //# sourceMappingURL=server-framework.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-framework.d.ts","sourceRoot":"","sources":["../src/server-framework.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-framework.d.ts","names":[],"sources":["../src/server-framework.ts"],"mappings":";;;;UAoBiB,+BAA+B;WACrC,SAAS;WACT;WACA,WAAW;;UAGL,8BAA8B;WACpC;WACA,gBAAgB;WAChB;;UAGM;WACN,QAAQ,OAAO;WACf;WACA,WAAW;WACX,QAAQ,gBAAgB;WACxB,OAAO,gBAAgB;;UAGjB;WACN,QAAQ;WACR,OAAO,aAAa;;KAGnB,uBAAuB,eAAe;WACvC,UAAU;;UAGJ,gBAAgB;WACtB,SAAS;WACT;;UAGM;WACN;WACA;WACA,OAAO;;UAGD;WACN,gBAAgB;WAChB,YAAY,SAAS;;iBAGhB,qBACd,WAAW,iBACX,OAAO,gBACP,eAAe,cAAc,yBAC7B,SAAS,wBACR,aAAa;iBASA,uBACd,OAAO,qBAAqB,cAC5B,UAAS,yBACR,QAAQ;iBAMK,uBACd,OAAO,qBAAqB,cAC5B,UAAS,wBACR;iBAqBmB,UACpB,OAAO,qBAAqB,cAC5B,UAAS,yBACR,QAAQ,gBAAgB,eAAe;iBAapB,sBACpB,OAAO,qBAAqB,cAC5B,UAAS,yBACR,QAAQ,gBAAgB,cAAc;iBASzB,OACd,mBACA,UAAS,yBACR,QAAQ;iBAMK,uBACd,mBACA,UAAS,wBACR;iBAuBmB,6BACpB,OAAO,qBAAqB,cAC5B,OAAO,gBACP,UAAS;WAAoC,iBAAiB;IAC7D;iBAMa,6BACd,iBACA,iBAAiB,uBAChB"}