foldkit 0.73.0 → 0.74.1

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 (352) hide show
  1. package/dist/calendar/arithmetic.d.ts +1 -1
  2. package/dist/calendar/arithmetic.d.ts.map +1 -1
  3. package/dist/calendar/arithmetic.js +1 -1
  4. package/dist/calendar/comparison.d.ts +1 -1
  5. package/dist/calendar/comparison.d.ts.map +1 -1
  6. package/dist/calendar/index.d.ts +6 -6
  7. package/dist/calendar/index.d.ts.map +1 -1
  8. package/dist/calendar/index.js +6 -6
  9. package/dist/calendar/info.d.ts +1 -1
  10. package/dist/calendar/info.d.ts.map +1 -1
  11. package/dist/calendar/info.js +2 -2
  12. package/dist/calendar/locale.d.ts +1 -1
  13. package/dist/calendar/locale.d.ts.map +1 -1
  14. package/dist/calendar/locale.js +1 -1
  15. package/dist/calendar/public.d.ts +1 -1
  16. package/dist/calendar/public.d.ts.map +1 -1
  17. package/dist/calendar/public.js +1 -1
  18. package/dist/calendar/today.js +1 -1
  19. package/dist/command/public.d.ts +2 -2
  20. package/dist/command/public.d.ts.map +1 -1
  21. package/dist/command/public.js +1 -1
  22. package/dist/devtools/overlay.d.ts +3 -3
  23. package/dist/devtools/overlay.d.ts.map +1 -1
  24. package/dist/devtools/overlay.js +12 -12
  25. package/dist/effectExtensions/index.d.ts +2 -2
  26. package/dist/effectExtensions/index.d.ts.map +1 -1
  27. package/dist/effectExtensions/index.js +2 -2
  28. package/dist/effectExtensions/stringExtensions.js +1 -1
  29. package/dist/fieldValidation/index.d.ts +8 -8
  30. package/dist/fieldValidation/index.js +2 -2
  31. package/dist/fieldValidation/public.d.ts +2 -2
  32. package/dist/fieldValidation/public.d.ts.map +1 -1
  33. package/dist/fieldValidation/public.js +1 -1
  34. package/dist/file/index.d.ts +4 -4
  35. package/dist/file/index.d.ts.map +1 -1
  36. package/dist/file/index.js +4 -4
  37. package/dist/file/public.d.ts +1 -1
  38. package/dist/file/public.d.ts.map +1 -1
  39. package/dist/file/public.js +1 -1
  40. package/dist/file/reader.d.ts +2 -2
  41. package/dist/file/reader.d.ts.map +1 -1
  42. package/dist/file/reader.js +1 -1
  43. package/dist/file/select.d.ts +1 -1
  44. package/dist/file/select.d.ts.map +1 -1
  45. package/dist/html/index.d.ts +4 -4
  46. package/dist/html/index.d.ts.map +1 -1
  47. package/dist/html/index.js +3 -3
  48. package/dist/html/lazy.d.ts +1 -1
  49. package/dist/html/lazy.d.ts.map +1 -1
  50. package/dist/html/lazy.js +1 -1
  51. package/dist/html/public.d.ts +2 -2
  52. package/dist/html/public.d.ts.map +1 -1
  53. package/dist/html/public.js +1 -1
  54. package/dist/index.d.ts +18 -18
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +18 -18
  57. package/dist/managedResource/public.d.ts +4 -4
  58. package/dist/managedResource/public.d.ts.map +1 -1
  59. package/dist/managedResource/public.js +2 -2
  60. package/dist/message/index.d.ts +1 -1
  61. package/dist/message/index.d.ts.map +1 -1
  62. package/dist/message/index.js +1 -1
  63. package/dist/message/public.d.ts +1 -1
  64. package/dist/message/public.d.ts.map +1 -1
  65. package/dist/message/public.js +1 -1
  66. package/dist/navigation/public.d.ts +1 -1
  67. package/dist/navigation/public.d.ts.map +1 -1
  68. package/dist/navigation/public.js +1 -1
  69. package/dist/route/index.d.ts +2 -2
  70. package/dist/route/index.d.ts.map +1 -1
  71. package/dist/route/index.js +2 -2
  72. package/dist/route/parser.d.ts +1 -1
  73. package/dist/route/parser.d.ts.map +1 -1
  74. package/dist/route/public.d.ts +2 -2
  75. package/dist/route/public.d.ts.map +1 -1
  76. package/dist/route/public.js +1 -1
  77. package/dist/runtime/browserListeners.d.ts +1 -1
  78. package/dist/runtime/browserListeners.d.ts.map +1 -1
  79. package/dist/runtime/browserListeners.js +2 -2
  80. package/dist/runtime/crashUI.d.ts +1 -1
  81. package/dist/runtime/crashUI.d.ts.map +1 -1
  82. package/dist/runtime/crashUI.js +1 -1
  83. package/dist/runtime/deepFreeze.d.ts +23 -0
  84. package/dist/runtime/deepFreeze.d.ts.map +1 -0
  85. package/dist/runtime/deepFreeze.js +54 -0
  86. package/dist/runtime/index.d.ts +2 -2
  87. package/dist/runtime/index.d.ts.map +1 -1
  88. package/dist/runtime/index.js +2 -2
  89. package/dist/runtime/managedResource.d.ts +1 -1
  90. package/dist/runtime/managedResource.d.ts.map +1 -1
  91. package/dist/runtime/public.d.ts +4 -4
  92. package/dist/runtime/public.d.ts.map +1 -1
  93. package/dist/runtime/public.js +2 -2
  94. package/dist/runtime/runtime.d.ts +30 -7
  95. package/dist/runtime/runtime.d.ts.map +1 -1
  96. package/dist/runtime/runtime.js +21 -12
  97. package/dist/runtime/urlRequest.d.ts +4 -4
  98. package/dist/runtime/urlRequest.js +2 -2
  99. package/dist/schema/public.d.ts +2 -2
  100. package/dist/schema/public.d.ts.map +1 -1
  101. package/dist/schema/public.js +1 -1
  102. package/dist/struct/public.d.ts +1 -1
  103. package/dist/struct/public.d.ts.map +1 -1
  104. package/dist/struct/public.js +1 -1
  105. package/dist/subscription/public.d.ts +2 -2
  106. package/dist/subscription/public.d.ts.map +1 -1
  107. package/dist/subscription/public.js +1 -1
  108. package/dist/task/dom.d.ts +1 -1
  109. package/dist/task/dom.d.ts.map +1 -1
  110. package/dist/task/dom.js +1 -1
  111. package/dist/task/index.d.ts +9 -9
  112. package/dist/task/index.d.ts.map +1 -1
  113. package/dist/task/index.js +8 -8
  114. package/dist/task/public.d.ts +1 -1
  115. package/dist/task/public.d.ts.map +1 -1
  116. package/dist/task/public.js +1 -1
  117. package/dist/task/time.d.ts +1 -1
  118. package/dist/task/time.d.ts.map +1 -1
  119. package/dist/task/time.js +1 -1
  120. package/dist/test/apps/bubbling.d.ts +2 -2
  121. package/dist/test/apps/bubbling.d.ts.map +1 -1
  122. package/dist/test/apps/bubbling.js +2 -2
  123. package/dist/test/apps/counter.d.ts +8 -8
  124. package/dist/test/apps/counter.d.ts.map +1 -1
  125. package/dist/test/apps/counter.js +2 -2
  126. package/dist/test/apps/disabledButton.d.ts +10 -10
  127. package/dist/test/apps/disabledButton.d.ts.map +1 -1
  128. package/dist/test/apps/disabledButton.js +4 -4
  129. package/dist/test/apps/fileUpload.d.ts +4 -4
  130. package/dist/test/apps/fileUpload.d.ts.map +1 -1
  131. package/dist/test/apps/fileUpload.js +3 -3
  132. package/dist/test/apps/formChild.d.ts +19 -19
  133. package/dist/test/apps/formChild.d.ts.map +1 -1
  134. package/dist/test/apps/formChild.js +2 -2
  135. package/dist/test/apps/interactions.d.ts +8 -8
  136. package/dist/test/apps/interactions.d.ts.map +1 -1
  137. package/dist/test/apps/interactions.js +2 -2
  138. package/dist/test/apps/keypress.d.ts +5 -5
  139. package/dist/test/apps/keypress.d.ts.map +1 -1
  140. package/dist/test/apps/keypress.js +2 -2
  141. package/dist/test/apps/login.d.ts +13 -13
  142. package/dist/test/apps/login.d.ts.map +1 -1
  143. package/dist/test/apps/login.js +3 -3
  144. package/dist/test/apps/logoutButton.d.ts +6 -6
  145. package/dist/test/apps/logoutButton.d.ts.map +1 -1
  146. package/dist/test/apps/logoutButton.js +2 -2
  147. package/dist/test/apps/multiRole.d.ts +3 -3
  148. package/dist/test/apps/multiRole.d.ts.map +1 -1
  149. package/dist/test/apps/multiRole.js +2 -2
  150. package/dist/test/apps/pointer.d.ts +3 -3
  151. package/dist/test/apps/pointer.d.ts.map +1 -1
  152. package/dist/test/apps/pointer.js +2 -2
  153. package/dist/test/apps/resumeUpload.d.ts +11 -11
  154. package/dist/test/apps/resumeUpload.d.ts.map +1 -1
  155. package/dist/test/apps/resumeUpload.js +5 -5
  156. package/dist/test/internal.d.ts +1 -1
  157. package/dist/test/internal.d.ts.map +1 -1
  158. package/dist/test/matchers.d.ts +1 -1
  159. package/dist/test/matchers.d.ts.map +1 -1
  160. package/dist/test/matchers.js +1 -1
  161. package/dist/test/public.d.ts +2 -2
  162. package/dist/test/public.d.ts.map +1 -1
  163. package/dist/test/public.js +2 -2
  164. package/dist/test/query.d.ts +1 -1
  165. package/dist/test/query.d.ts.map +1 -1
  166. package/dist/test/query.js +1 -1
  167. package/dist/test/scene.d.ts +9 -9
  168. package/dist/test/scene.d.ts.map +1 -1
  169. package/dist/test/scene.js +7 -7
  170. package/dist/test/story.d.ts +2 -2
  171. package/dist/test/story.d.ts.map +1 -1
  172. package/dist/test/story.js +1 -1
  173. package/dist/test/vitest-setup.js +1 -1
  174. package/dist/test/vitest.js +1 -1
  175. package/dist/ui/animation/index.d.ts +4 -4
  176. package/dist/ui/animation/index.d.ts.map +1 -1
  177. package/dist/ui/animation/index.js +3 -3
  178. package/dist/ui/animation/public.d.ts +2 -2
  179. package/dist/ui/animation/public.d.ts.map +1 -1
  180. package/dist/ui/animation/public.js +1 -1
  181. package/dist/ui/animation/schema.d.ts +7 -7
  182. package/dist/ui/animation/schema.d.ts.map +1 -1
  183. package/dist/ui/animation/schema.js +1 -1
  184. package/dist/ui/animation/update.d.ts +2 -2
  185. package/dist/ui/animation/update.d.ts.map +1 -1
  186. package/dist/ui/animation/update.js +4 -4
  187. package/dist/ui/button/index.d.ts +2 -2
  188. package/dist/ui/button/index.d.ts.map +1 -1
  189. package/dist/ui/button/index.js +1 -1
  190. package/dist/ui/button/public.d.ts +2 -2
  191. package/dist/ui/button/public.d.ts.map +1 -1
  192. package/dist/ui/button/public.js +1 -1
  193. package/dist/ui/calendar/index.d.ts +22 -22
  194. package/dist/ui/calendar/index.d.ts.map +1 -1
  195. package/dist/ui/calendar/index.js +7 -7
  196. package/dist/ui/calendar/public.d.ts +2 -2
  197. package/dist/ui/calendar/public.d.ts.map +1 -1
  198. package/dist/ui/calendar/public.js +1 -1
  199. package/dist/ui/checkbox/index.d.ts +4 -4
  200. package/dist/ui/checkbox/index.d.ts.map +1 -1
  201. package/dist/ui/checkbox/index.js +3 -3
  202. package/dist/ui/checkbox/public.d.ts +2 -2
  203. package/dist/ui/checkbox/public.d.ts.map +1 -1
  204. package/dist/ui/checkbox/public.js +1 -1
  205. package/dist/ui/combobox/multi.d.ts +13 -13
  206. package/dist/ui/combobox/multi.d.ts.map +1 -1
  207. package/dist/ui/combobox/multi.js +3 -3
  208. package/dist/ui/combobox/multiPublic.d.ts +2 -2
  209. package/dist/ui/combobox/multiPublic.d.ts.map +1 -1
  210. package/dist/ui/combobox/multiPublic.js +1 -1
  211. package/dist/ui/combobox/public.d.ts +6 -6
  212. package/dist/ui/combobox/public.d.ts.map +1 -1
  213. package/dist/ui/combobox/public.js +3 -3
  214. package/dist/ui/combobox/shared.d.ts +23 -23
  215. package/dist/ui/combobox/shared.d.ts.map +1 -1
  216. package/dist/ui/combobox/shared.js +11 -11
  217. package/dist/ui/combobox/single.d.ts +13 -13
  218. package/dist/ui/combobox/single.d.ts.map +1 -1
  219. package/dist/ui/combobox/single.js +3 -3
  220. package/dist/ui/datePicker/index.d.ts +23 -23
  221. package/dist/ui/datePicker/index.d.ts.map +1 -1
  222. package/dist/ui/datePicker/index.js +7 -7
  223. package/dist/ui/datePicker/public.d.ts +2 -2
  224. package/dist/ui/datePicker/public.d.ts.map +1 -1
  225. package/dist/ui/datePicker/public.js +1 -1
  226. package/dist/ui/dialog/index.d.ts +8 -8
  227. package/dist/ui/dialog/index.d.ts.map +1 -1
  228. package/dist/ui/dialog/index.js +7 -7
  229. package/dist/ui/dialog/public.d.ts +2 -2
  230. package/dist/ui/dialog/public.d.ts.map +1 -1
  231. package/dist/ui/dialog/public.js +1 -1
  232. package/dist/ui/disclosure/index.d.ts +5 -5
  233. package/dist/ui/disclosure/index.d.ts.map +1 -1
  234. package/dist/ui/disclosure/index.js +5 -5
  235. package/dist/ui/disclosure/public.d.ts +2 -2
  236. package/dist/ui/disclosure/public.d.ts.map +1 -1
  237. package/dist/ui/disclosure/public.js +1 -1
  238. package/dist/ui/dragAndDrop/index.d.ts +20 -20
  239. package/dist/ui/dragAndDrop/index.d.ts.map +1 -1
  240. package/dist/ui/dragAndDrop/index.js +7 -7
  241. package/dist/ui/dragAndDrop/public.d.ts +2 -2
  242. package/dist/ui/dragAndDrop/public.d.ts.map +1 -1
  243. package/dist/ui/dragAndDrop/public.js +1 -1
  244. package/dist/ui/fieldset/index.d.ts +2 -2
  245. package/dist/ui/fieldset/index.d.ts.map +1 -1
  246. package/dist/ui/fieldset/index.js +1 -1
  247. package/dist/ui/fieldset/public.d.ts +2 -2
  248. package/dist/ui/fieldset/public.d.ts.map +1 -1
  249. package/dist/ui/fieldset/public.js +1 -1
  250. package/dist/ui/fileDrop/index.d.ts +11 -11
  251. package/dist/ui/fileDrop/index.d.ts.map +1 -1
  252. package/dist/ui/fileDrop/index.js +4 -4
  253. package/dist/ui/fileDrop/public.d.ts +2 -2
  254. package/dist/ui/fileDrop/public.d.ts.map +1 -1
  255. package/dist/ui/fileDrop/public.js +1 -1
  256. package/dist/ui/index.d.ts +23 -23
  257. package/dist/ui/index.d.ts.map +1 -1
  258. package/dist/ui/index.js +23 -23
  259. package/dist/ui/input/index.d.ts +2 -2
  260. package/dist/ui/input/index.d.ts.map +1 -1
  261. package/dist/ui/input/index.js +1 -1
  262. package/dist/ui/input/public.d.ts +2 -2
  263. package/dist/ui/input/public.d.ts.map +1 -1
  264. package/dist/ui/input/public.js +1 -1
  265. package/dist/ui/listbox/multi.d.ts +11 -11
  266. package/dist/ui/listbox/multi.d.ts.map +1 -1
  267. package/dist/ui/listbox/multi.js +3 -3
  268. package/dist/ui/listbox/multiPublic.d.ts +2 -2
  269. package/dist/ui/listbox/multiPublic.d.ts.map +1 -1
  270. package/dist/ui/listbox/multiPublic.js +1 -1
  271. package/dist/ui/listbox/public.d.ts +6 -6
  272. package/dist/ui/listbox/public.d.ts.map +1 -1
  273. package/dist/ui/listbox/public.js +3 -3
  274. package/dist/ui/listbox/shared.d.ts +27 -27
  275. package/dist/ui/listbox/shared.d.ts.map +1 -1
  276. package/dist/ui/listbox/shared.js +12 -12
  277. package/dist/ui/listbox/single.d.ts +11 -11
  278. package/dist/ui/listbox/single.d.ts.map +1 -1
  279. package/dist/ui/listbox/single.js +3 -3
  280. package/dist/ui/menu/index.d.ts +30 -30
  281. package/dist/ui/menu/index.d.ts.map +1 -1
  282. package/dist/ui/menu/index.js +12 -12
  283. package/dist/ui/menu/public.d.ts +3 -3
  284. package/dist/ui/menu/public.d.ts.map +1 -1
  285. package/dist/ui/menu/public.js +1 -1
  286. package/dist/ui/popover/index.d.ts +17 -17
  287. package/dist/ui/popover/index.d.ts.map +1 -1
  288. package/dist/ui/popover/index.js +9 -9
  289. package/dist/ui/popover/public.d.ts +3 -3
  290. package/dist/ui/popover/public.d.ts.map +1 -1
  291. package/dist/ui/popover/public.js +1 -1
  292. package/dist/ui/radioGroup/index.d.ts +4 -4
  293. package/dist/ui/radioGroup/index.d.ts.map +1 -1
  294. package/dist/ui/radioGroup/index.js +6 -6
  295. package/dist/ui/radioGroup/public.d.ts +2 -2
  296. package/dist/ui/radioGroup/public.d.ts.map +1 -1
  297. package/dist/ui/radioGroup/public.js +1 -1
  298. package/dist/ui/select/index.d.ts +2 -2
  299. package/dist/ui/select/index.d.ts.map +1 -1
  300. package/dist/ui/select/index.js +1 -1
  301. package/dist/ui/select/public.d.ts +2 -2
  302. package/dist/ui/select/public.d.ts.map +1 -1
  303. package/dist/ui/select/public.js +1 -1
  304. package/dist/ui/slider/index.d.ts +12 -12
  305. package/dist/ui/slider/index.d.ts.map +1 -1
  306. package/dist/ui/slider/index.js +5 -5
  307. package/dist/ui/slider/public.d.ts +2 -2
  308. package/dist/ui/slider/public.d.ts.map +1 -1
  309. package/dist/ui/slider/public.js +1 -1
  310. package/dist/ui/switch/index.d.ts +4 -4
  311. package/dist/ui/switch/index.d.ts.map +1 -1
  312. package/dist/ui/switch/index.js +3 -3
  313. package/dist/ui/switch/public.d.ts +2 -2
  314. package/dist/ui/switch/public.d.ts.map +1 -1
  315. package/dist/ui/switch/public.js +1 -1
  316. package/dist/ui/tabs/index.d.ts +6 -6
  317. package/dist/ui/tabs/index.d.ts.map +1 -1
  318. package/dist/ui/tabs/index.js +7 -7
  319. package/dist/ui/tabs/public.d.ts +2 -2
  320. package/dist/ui/tabs/public.d.ts.map +1 -1
  321. package/dist/ui/tabs/public.js +1 -1
  322. package/dist/ui/textarea/index.d.ts +2 -2
  323. package/dist/ui/textarea/index.d.ts.map +1 -1
  324. package/dist/ui/textarea/index.js +1 -1
  325. package/dist/ui/textarea/public.d.ts +2 -2
  326. package/dist/ui/textarea/public.d.ts.map +1 -1
  327. package/dist/ui/textarea/public.js +1 -1
  328. package/dist/ui/toast/index.d.ts +13 -13
  329. package/dist/ui/toast/index.d.ts.map +1 -1
  330. package/dist/ui/toast/index.js +3 -3
  331. package/dist/ui/toast/public.d.ts +3 -3
  332. package/dist/ui/toast/public.d.ts.map +1 -1
  333. package/dist/ui/toast/public.js +1 -1
  334. package/dist/ui/toast/schema.d.ts +15 -15
  335. package/dist/ui/toast/schema.d.ts.map +1 -1
  336. package/dist/ui/toast/schema.js +2 -2
  337. package/dist/ui/toast/update.d.ts +10 -10
  338. package/dist/ui/toast/update.d.ts.map +1 -1
  339. package/dist/ui/toast/update.js +7 -7
  340. package/dist/ui/tooltip/index.d.ts +11 -11
  341. package/dist/ui/tooltip/index.d.ts.map +1 -1
  342. package/dist/ui/tooltip/index.js +7 -7
  343. package/dist/ui/tooltip/public.d.ts +3 -3
  344. package/dist/ui/tooltip/public.d.ts.map +1 -1
  345. package/dist/ui/tooltip/public.js +1 -1
  346. package/dist/ui/typeahead.js +1 -1
  347. package/dist/url/index.js +1 -1
  348. package/dist/url/public.d.ts +1 -1
  349. package/dist/url/public.d.ts.map +1 -1
  350. package/dist/url/public.js +1 -1
  351. package/dist/vdom.js +1 -1
  352. package/package.json +2 -2
@@ -0,0 +1,54 @@
1
+ import { Array, Option, Predicate, Record } from 'effect';
2
+ /**
3
+ * Recursively `Object.freeze`s a Model so accidental mutations throw a
4
+ * `TypeError` at the write site with a clear stack trace, instead of silently
5
+ * corrupting state or breaking reference-equality change detection.
6
+ *
7
+ * Scope: plain objects and arrays only. `Date`, `Map`, `Set`, `File`, class
8
+ * instances, and Effect-tagged values such as `Option`, `Either`, `DateTime`,
9
+ * `HashSet`, `HashMap`, and `Chunk` are returned untouched. Effect values rely
10
+ * on `Hash.cached(this, ...)`, which lazily writes a memoized hash onto the
11
+ * instance via `Object.defineProperty` on the first `Equal.equals` or
12
+ * `Hash.hash` call. Freezing them would turn that legitimate write into a
13
+ * `TypeError` on every subsequent equality check.
14
+ *
15
+ * `Option` is special-cased so nested plain payloads still get frozen:
16
+ * `Option.some({ items: [...] })` walks into `.value` and freezes the inner
17
+ * record, but returns the `Some` wrapper untouched.
18
+ *
19
+ * Idempotent: already-frozen values are returned as-is. This also serves as
20
+ * the cycle-safety bailout and ensures amortized cost is O(diff) per update
21
+ * when combined with `evo()` which preserves unchanged branches by reference.
22
+ */
23
+ export const deepFreeze = (value) => {
24
+ if (value === null || typeof value !== 'object') {
25
+ return value;
26
+ }
27
+ if (Object.isFrozen(value)) {
28
+ return value;
29
+ }
30
+ if (Array.isArray(value)) {
31
+ Object.freeze(value);
32
+ value.forEach(deepFreeze);
33
+ return value;
34
+ }
35
+ if (Option.isOption(value)) {
36
+ if (Option.isSome(value)) {
37
+ deepFreeze(value.value);
38
+ }
39
+ return value;
40
+ }
41
+ if (!isPlainObject(value)) {
42
+ return value;
43
+ }
44
+ Object.freeze(value);
45
+ Record.values(value).forEach(deepFreeze);
46
+ return value;
47
+ };
48
+ const isPlainObject = (value) => {
49
+ if (!Predicate.isRecord(value)) {
50
+ return false;
51
+ }
52
+ const prototype = Object.getPrototypeOf(value);
53
+ return prototype === Object.prototype || prototype === null;
54
+ };
@@ -1,3 +1,3 @@
1
- export * from './runtime';
2
- export * from './urlRequest';
1
+ export * from './runtime.js';
2
+ export * from './urlRequest.js';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA"}
@@ -1,2 +1,2 @@
1
- export * from './runtime';
2
- export * from './urlRequest';
1
+ export * from './runtime.js';
2
+ export * from './urlRequest.js';
@@ -1,5 +1,5 @@
1
1
  import { type Effect, type Option, type Schema } from 'effect';
2
- import type { ManagedResource } from '../managedResource';
2
+ import type { ManagedResource } from '../managedResource/index.js';
3
3
  /** Internal configuration for a single managed resource, used by the runtime. */
4
4
  export type ManagedResourceConfig<Model, Message> = {
5
5
  readonly schema: Schema.Schema<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"managedResource.d.ts","sourceRoot":"","sources":["../../src/runtime/managedResource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"managedResource.d.ts","sourceRoot":"","sources":["../../src/runtime/managedResource.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- export { makeProgram, run } from './runtime';
2
- export type { RoutingConfig, CrashConfig, CrashContext, RoutingProgramConfigWithFlags, RoutingProgramConfig, ProgramConfigWithFlags, ProgramConfig, ProgramInit, RoutingProgramInit, MakeRuntimeReturn, Visibility, SlowViewContext, SlowViewConfig, DevtoolsConfig, } from './runtime';
3
- export { UrlRequest } from './urlRequest';
4
- export type { Internal, External } from './urlRequest';
1
+ export { makeProgram, run } from './runtime.js';
2
+ export type { RoutingConfig, CrashConfig, CrashContext, RoutingProgramConfigWithFlags, RoutingProgramConfig, ProgramConfigWithFlags, ProgramConfig, ProgramInit, RoutingProgramInit, MakeRuntimeReturn, Visibility, SlowViewContext, SlowViewConfig, FreezeModelConfig, DevtoolsConfig, } from './runtime.js';
3
+ export { UrlRequest } from './urlRequest.js';
4
+ export type { Internal, External } from './urlRequest.js';
5
5
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/runtime/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAE5C,YAAY,EACV,aAAa,EACb,WAAW,EACX,YAAY,EACZ,6BAA6B,EAC7B,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,cAAc,EACd,cAAc,GACf,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/runtime/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAE/C,YAAY,EACV,aAAa,EACb,WAAW,EACX,YAAY,EACZ,6BAA6B,EAC7B,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,cAAc,GACf,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA"}
@@ -1,2 +1,2 @@
1
- export { makeProgram, run } from './runtime';
2
- export { UrlRequest } from './urlRequest';
1
+ export { makeProgram, run } from './runtime.js';
2
+ export { UrlRequest } from './urlRequest.js';
@@ -1,10 +1,10 @@
1
1
  import { Context, Effect, Layer, Option, Schema } from 'effect';
2
- import type { Command } from '../command';
3
- import { Html } from '../html';
4
- import { Url } from '../url';
5
- import type { ManagedResources } from './managedResource';
6
- import type { Subscriptions } from './subscription';
7
- import { UrlRequest } from './urlRequest';
2
+ import type { Command } from '../command/index.js';
3
+ import { Html } from '../html/index.js';
4
+ import { Url } from '../url/index.js';
5
+ import type { ManagedResources } from './managedResource.js';
6
+ import type { Subscriptions } from './subscription.js';
7
+ import { UrlRequest } from './urlRequest.js';
8
8
  /** Position of the devtools badge and panel on screen. */
9
9
  export type DevtoolsPosition = 'BottomRight' | 'BottomLeft' | 'TopRight' | 'TopLeft';
10
10
  /** Controls when a feature is shown. */
@@ -52,6 +52,28 @@ export type SlowViewConfig<Model, Message> = false | Readonly<{
52
52
  thresholdMs?: number;
53
53
  onSlowView?: (context: SlowViewContext<Model, Message>) => void;
54
54
  }>;
55
+ /**
56
+ * Model-freeze configuration for catching accidental mutations in development.
57
+ *
58
+ * When active, Foldkit deep-freezes the Model after `init` and after every
59
+ * `update`. Accidental mutations (e.g. `model.items.push(...)`) then throw a
60
+ * `TypeError` at the exact write site with a stack trace, rather than
61
+ * silently corrupting state or breaking reference-equality change detection.
62
+ *
63
+ * Pass `false` to disable entirely.
64
+ *
65
+ * - `show`: `'Development'` (default) enables when Vite HMR is active,
66
+ * `'Always'` enables in all environments including production.
67
+ *
68
+ * Scope: only the Model is frozen. Messages are short-lived and are not
69
+ * frozen; they often carry `OptionFromSelf` / `DateTimeFromSelf` fields that
70
+ * rely on `Hash.cached` which lazily writes to the instance. Production
71
+ * builds (`'Development'` + no HMR) leave change detection at reference
72
+ * equality and pay nothing for this feature.
73
+ */
74
+ export type FreezeModelConfig = false | Readonly<{
75
+ show?: Visibility;
76
+ }>;
55
77
  declare const Dispatch_base: Context.TagClass<Dispatch, "@foldkit/Dispatch", {
56
78
  readonly dispatchAsync: (message: unknown) => Effect.Effect<void>;
57
79
  readonly dispatchSync: (message: unknown) => void;
@@ -59,7 +81,7 @@ declare const Dispatch_base: Context.TagClass<Dispatch, "@foldkit/Dispatch", {
59
81
  /** Effect service tag that provides message dispatching to the view layer. */
60
82
  export declare class Dispatch extends Dispatch_base {
61
83
  }
62
- export type { Command } from '../command';
84
+ export type { Command } from '../command/index.js';
63
85
  /** Configuration for URL routing with handlers for URL requests and URL changes. */
64
86
  export type RoutingConfig<Message> = Readonly<{
65
87
  onUrlRequest: (request: UrlRequest) => Message;
@@ -87,6 +109,7 @@ type BaseProgramConfig<Model, Message, StreamDepsMap extends Schema.Struct<Schem
87
109
  container: HTMLElement;
88
110
  crash?: CrashConfig<Model, Message>;
89
111
  slowView?: SlowViewConfig<Model, Message>;
112
+ freezeModel?: FreezeModelConfig;
90
113
  resources?: Layer.Layer<Resources>;
91
114
  managedResources?: ManagedResources<Model, Message, ManagedResourceServices>;
92
115
  /** Derives the document title from the current model. Called after every render. */
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,19 @@
1
- import { BrowserRuntime } from '@effect/platform-browser/index';
1
+ import { BrowserRuntime } from '@effect/platform-browser';
2
2
  import { Array, Cause, Context, Effect, Either, Function, Layer, Match, Option, Predicate, Queue, Record, Ref, Runtime, Schema, Stream, SubscriptionRef, Tuple, pipe, } from 'effect';
3
3
  import { h } from 'snabbdom';
4
- import { createOverlay } from '../devtools/overlay';
5
- import { createDevtoolsStore } from '../devtools/store';
6
- import { fromString as urlFromString } from '../url';
7
- import { patch, toVNode } from '../vdom';
8
- import { addBfcacheRestoreListener, addNavigationEventListeners, } from './browserListeners';
9
- import { defaultCrashView, noOpDispatch } from './crashUI';
4
+ import { createOverlay } from '../devtools/overlay.js';
5
+ import { createDevtoolsStore } from '../devtools/store.js';
6
+ import { fromString as urlFromString } from '../url/index.js';
7
+ import { patch, toVNode } from '../vdom.js';
8
+ import { addBfcacheRestoreListener, addNavigationEventListeners, } from './browserListeners.js';
9
+ import { defaultCrashView, noOpDispatch } from './crashUI.js';
10
+ import { deepFreeze } from './deepFreeze.js';
10
11
  const DEFAULT_DEVTOOLS_SHOW = 'Development';
11
12
  const DEFAULT_DEVTOOLS_POSITION = 'BottomRight';
12
13
  const DEFAULT_DEVTOOLS_MODE = 'TimeTravel';
13
14
  const DEFAULT_SLOW_VIEW_SHOW = 'Development';
14
15
  const DEFAULT_SLOW_VIEW_THRESHOLD_MS = 16;
16
+ const DEFAULT_FREEZE_MODEL_SHOW = 'Development';
15
17
  const defaultSlowViewCallback = (context) => {
16
18
  const trigger = Option.match(context.message, {
17
19
  onNone: () => 'init',
@@ -27,11 +29,13 @@ const defaultSlowViewCallback = (context) => {
27
29
  /** Effect service tag that provides message dispatching to the view layer. */
28
30
  export class Dispatch extends Context.Tag('@foldkit/Dispatch')() {
29
31
  }
30
- const makeRuntime = ({ Model, flags: resolveFlags, init, update, view, subscriptions, container, routing: routingConfig, crash, slowView, resources, managedResources, title, devtools, }) => {
32
+ const makeRuntime = ({ Model, flags: resolveFlags, init, update, view, subscriptions, container, routing: routingConfig, crash, slowView, freezeModel, resources, managedResources, title, devtools, }) => {
31
33
  const resolvedSlowView = pipe(slowView ?? {}, Option.liftPredicate(config => config !== false), Option.filter(config => Match.value(config.show ?? DEFAULT_SLOW_VIEW_SHOW).pipe(Match.when('Always', () => true), Match.when('Development', () => !!import.meta.hot), Match.exhaustive)), Option.map(config => ({
32
34
  thresholdMs: config.thresholdMs ?? DEFAULT_SLOW_VIEW_THRESHOLD_MS,
33
35
  onSlowView: config.onSlowView ?? defaultSlowViewCallback,
34
36
  })));
37
+ const isFreezeModelActive = pipe(freezeModel ?? {}, Option.liftPredicate(config => config !== false), Option.filter(config => Match.value(config.show ?? DEFAULT_FREEZE_MODEL_SHOW).pipe(Match.when('Always', () => true), Match.when('Development', () => !!import.meta.hot), Match.exhaustive)), Option.isSome);
38
+ const maybeFreezeModel = (model) => isFreezeModelActive ? deepFreeze(model) : model;
35
39
  return (hmrModel) => Effect.scoped(Effect.gen(function* () {
36
40
  const maybeResourceLayer = resources
37
41
  ? Option.some(yield* Layer.memoize(resources))
@@ -68,12 +72,13 @@ const makeRuntime = ({ Model, flags: resolveFlags, init, update, view, subscript
68
72
  const messageQueue = yield* Queue.unbounded();
69
73
  const enqueueMessage = (message) => Queue.offer(messageQueue, message);
70
74
  const currentUrl = Option.fromNullable(routingConfig).pipe(Option.flatMap(() => urlFromString(window.location.href)));
71
- const [initModel, initCommands] = Predicate.isNotUndefined(hmrModel)
75
+ const [initModelRaw, initCommands] = Predicate.isNotUndefined(hmrModel)
72
76
  ? pipe(hmrModel, Schema.decodeUnknownEither(Model), Either.match({
73
77
  onLeft: () => init(flags, Option.getOrUndefined(currentUrl)),
74
78
  onRight: restoredModel => [restoredModel, []],
75
79
  }))
76
80
  : init(flags, Option.getOrUndefined(currentUrl));
81
+ const initModel = maybeFreezeModel(initModelRaw);
77
82
  const modelSubscriptionRef = yield* SubscriptionRef.make(initModel);
78
83
  yield* Effect.forEach(
79
84
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
@@ -99,7 +104,8 @@ const makeRuntime = ({ Model, flags: resolveFlags, init, update, view, subscript
99
104
  const pendingMessagesQueue = yield* Queue.unbounded();
100
105
  const processMessage = (message) => Effect.gen(function* () {
101
106
  const currentModel = yield* Ref.get(modelRef);
102
- const [nextModel, commands] = update(currentModel, message);
107
+ const [nextModelRaw, commands] = update(currentModel, message);
108
+ const nextModel = maybeFreezeModel(nextModelRaw);
103
109
  if (currentModel !== nextModel) {
104
110
  yield* Ref.set(modelRef, nextModel);
105
111
  const isPaused = yield* pipe(maybeDevtoolsStoreRef, Ref.get, Effect.flatMap(Option.match({
@@ -203,9 +209,9 @@ const makeRuntime = ({ Model, flags: resolveFlags, init, update, view, subscript
203
209
  if (Option.isSome(resolvedDevtools)) {
204
210
  const { position, mode, maybeBanner } = resolvedDevtools.value;
205
211
  const devtoolsStore = yield* createDevtoolsStore({
206
- replay: (model, message) =>
212
+ replay: (model, message) => maybeFreezeModel(
207
213
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
208
- Tuple.getFirst(update(model, message)),
214
+ Tuple.getFirst(update(model, message))),
209
215
  render: model =>
210
216
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
211
217
  render(model, Option.none()),
@@ -334,6 +340,9 @@ export function makeProgram(config) {
334
340
  ...(Predicate.isNotUndefined(config.slowView) && {
335
341
  slowView: config.slowView,
336
342
  }),
343
+ ...(Predicate.isNotUndefined(config.freezeModel) && {
344
+ freezeModel: config.freezeModel,
345
+ }),
337
346
  ...(config.resources && { resources: config.resources }),
338
347
  ...(config.managedResources && {
339
348
  managedResources: config.managedResources,
@@ -1,6 +1,6 @@
1
1
  import { Schema as S } from 'effect';
2
2
  /** A URL request to a page within the application (same origin). */
3
- export declare const Internal: import("../schema").CallableTaggedStruct<"Internal", {
3
+ export declare const Internal: import("../schema/index.js").CallableTaggedStruct<"Internal", {
4
4
  url: S.Struct<{
5
5
  protocol: typeof S.String;
6
6
  host: typeof S.String;
@@ -13,13 +13,13 @@ export declare const Internal: import("../schema").CallableTaggedStruct<"Interna
13
13
  /** A URL request to a page within the application (same origin). */
14
14
  export type Internal = typeof Internal.Type;
15
15
  /** A URL request to an external page (different origin). */
16
- export declare const External: import("../schema").CallableTaggedStruct<"External", {
16
+ export declare const External: import("../schema/index.js").CallableTaggedStruct<"External", {
17
17
  href: typeof S.String;
18
18
  }>;
19
19
  /** A URL request to an external page (different origin). */
20
20
  export type External = typeof External.Type;
21
21
  /** Union of `Internal` and `External` URL request types. */
22
- export declare const UrlRequest: S.Union<[import("../schema").CallableTaggedStruct<"Internal", {
22
+ export declare const UrlRequest: S.Union<[import("../schema/index.js").CallableTaggedStruct<"Internal", {
23
23
  url: S.Struct<{
24
24
  protocol: typeof S.String;
25
25
  host: typeof S.String;
@@ -28,7 +28,7 @@ export declare const UrlRequest: S.Union<[import("../schema").CallableTaggedStru
28
28
  search: S.OptionFromSelf<typeof S.String>;
29
29
  hash: S.OptionFromSelf<typeof S.String>;
30
30
  }>;
31
- }>, import("../schema").CallableTaggedStruct<"External", {
31
+ }>, import("../schema/index.js").CallableTaggedStruct<"External", {
32
32
  href: typeof S.String;
33
33
  }>]>;
34
34
  /** Union of `Internal` and `External` URL request types. */
@@ -1,6 +1,6 @@
1
1
  import { Schema as S } from 'effect';
2
- import { ts } from '../schema';
3
- import { Url } from '../url';
2
+ import { ts } from '../schema/index.js';
3
+ import { Url } from '../url/index.js';
4
4
  /** A URL request to a page within the application (same origin). */
5
5
  export const Internal = ts('Internal', {
6
6
  url: Url,
@@ -1,3 +1,3 @@
1
- export { ts } from './index';
2
- export type { CallableTaggedStruct } from './index';
1
+ export { ts } from './index.js';
2
+ export type { CallableTaggedStruct } from './index.js';
3
3
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/schema/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAC5B,YAAY,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/schema/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAA;AAC/B,YAAY,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA"}
@@ -1 +1 @@
1
- export { ts } from './index';
1
+ export { ts } from './index.js';
@@ -1,2 +1,2 @@
1
- export { evo, makeConstrainedEvo } from './index';
1
+ export { evo, makeConstrainedEvo } from './index.js';
2
2
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/struct/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/struct/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA"}
@@ -1 +1 @@
1
- export { evo, makeConstrainedEvo } from './index';
1
+ export { evo, makeConstrainedEvo } from './index.js';
@@ -1,3 +1,3 @@
1
- export { makeSubscriptions } from '../runtime/subscription';
2
- export type { Subscription, Subscriptions } from '../runtime/subscription';
1
+ export { makeSubscriptions } from '../runtime/subscription.js';
2
+ export type { Subscription, Subscriptions } from '../runtime/subscription.js';
3
3
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/subscription/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/subscription/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAE9D,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA"}
@@ -1 +1 @@
1
- export { makeSubscriptions } from '../runtime/subscription';
1
+ export { makeSubscriptions } from '../runtime/subscription.js';
@@ -1,5 +1,5 @@
1
1
  import { Effect } from 'effect';
2
- import { ElementNotFound } from './error';
2
+ import { ElementNotFound } from './error.js';
3
3
  /**
4
4
  * Focuses an element matching the given selector.
5
5
  * Fails with `ElementNotFound` if the selector does not match an `HTMLElement`.
@@ -1 +1 @@
1
- {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/task/dom.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,MAAM,EAMP,MAAM,QAAQ,CAAA;AAEf,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAmBzC;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,UAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAQxE,CAAA;AAEJ;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,SAAS,GACpB,UAAU,MAAM,EAChB,UAAU,QAAQ,CAAC;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,KAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAgDlC,CAAA;AAuBJ;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,GACrB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAclC,CAAA;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAQlC,CAAA;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,GACzB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAQlC,CAAA;AAEJ,0EAA0E;AAC1E,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,CAAA;AAEhD;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,EAChB,WAAW,cAAc,KACxB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAqClC,CAAA"}
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/task/dom.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,MAAM,EAMP,MAAM,QAAQ,CAAA;AAEf,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAmB5C;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,UAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAQxE,CAAA;AAEJ;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,SAAS,GACpB,UAAU,MAAM,EAChB,UAAU,QAAQ,CAAC;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,KAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAgDlC,CAAA;AAuBJ;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,GACrB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAclC,CAAA;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAQlC,CAAA;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,GACzB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAQlC,CAAA;AAEJ,0EAA0E;AAC1E,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,CAAA;AAEhD;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,EAChB,WAAW,cAAc,KACxB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAqClC,CAAA"}
package/dist/task/dom.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Array, Effect, Equal, Function, Match as M, Number, Option, } from 'effect';
2
- import { ElementNotFound } from './error';
2
+ import { ElementNotFound } from './error.js';
3
3
  const BASE_DIALOG_Z_INDEX = 2147483600;
4
4
  let openDialogCount = 0;
5
5
  const dialogCleanups = new WeakMap();
@@ -1,10 +1,10 @@
1
- export { ElementNotFound, TimeZoneError } from './error';
2
- export { getTime, getTimeZone, getZonedTime, getZonedTimeIn } from './time';
3
- export { advanceFocus, focus, showModal, closeModal, clickElement, scrollIntoView, } from './dom';
4
- export type { FocusDirection } from './dom';
5
- export { detectElementMovement } from './elementMovement';
6
- export { delay, nextFrame, waitForAnimationSettled } from './timing';
7
- export { randomInt, uuid } from './random';
8
- export { lockScroll, unlockScroll } from './scrollLock';
9
- export { inertOthers, restoreInert } from './inert';
1
+ export { ElementNotFound, TimeZoneError } from './error.js';
2
+ export { getTime, getTimeZone, getZonedTime, getZonedTimeIn } from './time.js';
3
+ export { advanceFocus, focus, showModal, closeModal, clickElement, scrollIntoView, } from './dom.js';
4
+ export type { FocusDirection } from './dom.js';
5
+ export { detectElementMovement } from './elementMovement.js';
6
+ export { delay, nextFrame, waitForAnimationSettled } from './timing.js';
7
+ export { randomInt, uuid } from './random.js';
8
+ export { lockScroll, unlockScroll } from './scrollLock.js';
9
+ export { inertOthers, restoreInert } from './inert.js';
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACxD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAC3E,OAAO,EACL,YAAY,EACZ,KAAK,EACL,SAAS,EACT,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,OAAO,CAAA;AACd,YAAY,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AACpE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC9E,OAAO,EACL,YAAY,EACZ,KAAK,EACL,SAAS,EACT,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,UAAU,CAAA;AACjB,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACvE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA"}
@@ -1,8 +1,8 @@
1
- export { ElementNotFound, TimeZoneError } from './error';
2
- export { getTime, getTimeZone, getZonedTime, getZonedTimeIn } from './time';
3
- export { advanceFocus, focus, showModal, closeModal, clickElement, scrollIntoView, } from './dom';
4
- export { detectElementMovement } from './elementMovement';
5
- export { delay, nextFrame, waitForAnimationSettled } from './timing';
6
- export { randomInt, uuid } from './random';
7
- export { lockScroll, unlockScroll } from './scrollLock';
8
- export { inertOthers, restoreInert } from './inert';
1
+ export { ElementNotFound, TimeZoneError } from './error.js';
2
+ export { getTime, getTimeZone, getZonedTime, getZonedTimeIn } from './time.js';
3
+ export { advanceFocus, focus, showModal, closeModal, clickElement, scrollIntoView, } from './dom.js';
4
+ export { detectElementMovement } from './elementMovement.js';
5
+ export { delay, nextFrame, waitForAnimationSettled } from './timing.js';
6
+ export { randomInt, uuid } from './random.js';
7
+ export { lockScroll, unlockScroll } from './scrollLock.js';
8
+ export { inertOthers, restoreInert } from './inert.js';
@@ -1,2 +1,2 @@
1
- export { ElementNotFound, TimeZoneError, getTime, getTimeZone, getZonedTime, getZonedTimeIn, focus, showModal, closeModal, clickElement, delay, scrollIntoView, randomInt, uuid, nextFrame, waitForAnimationSettled, } from './index';
1
+ export { ElementNotFound, TimeZoneError, getTime, getTimeZone, getZonedTime, getZonedTimeIn, focus, showModal, closeModal, clickElement, delay, scrollIntoView, randomInt, uuid, nextFrame, waitForAnimationSettled, } from './index.js';
2
2
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/task/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,aAAa,EACb,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,KAAK,EACL,SAAS,EACT,UAAU,EACV,YAAY,EACZ,KAAK,EACL,cAAc,EACd,SAAS,EACT,IAAI,EACJ,SAAS,EACT,uBAAuB,GACxB,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/task/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,aAAa,EACb,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,KAAK,EACL,SAAS,EACT,UAAU,EACV,YAAY,EACZ,KAAK,EACL,cAAc,EACd,SAAS,EACT,IAAI,EACJ,SAAS,EACT,uBAAuB,GACxB,MAAM,YAAY,CAAA"}
@@ -1 +1 @@
1
- export { ElementNotFound, TimeZoneError, getTime, getTimeZone, getZonedTime, getZonedTimeIn, focus, showModal, closeModal, clickElement, delay, scrollIntoView, randomInt, uuid, nextFrame, waitForAnimationSettled, } from './index';
1
+ export { ElementNotFound, TimeZoneError, getTime, getTimeZone, getZonedTime, getZonedTimeIn, focus, showModal, closeModal, clickElement, delay, scrollIntoView, randomInt, uuid, nextFrame, waitForAnimationSettled, } from './index.js';
@@ -1,5 +1,5 @@
1
1
  import { DateTime, Effect } from 'effect';
2
- import { TimeZoneError } from './error';
2
+ import { TimeZoneError } from './error.js';
3
3
  /**
4
4
  * Gets the current UTC time.
5
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../src/task/time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAA;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAgB,CAAA;AAEhE;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAExD,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAMtD,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc,GACzB,QAAQ,MAAM,KACb,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAQ1C,CAAA"}
1
+ {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../src/task/time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAA;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE1C;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAgB,CAAA;AAEhE;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAExD,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAMtD,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc,GACzB,QAAQ,MAAM,KACb,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAQ1C,CAAA"}
package/dist/task/time.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { DateTime, Effect, Option } from 'effect';
2
- import { TimeZoneError } from './error';
2
+ import { TimeZoneError } from './error.js';
3
3
  /**
4
4
  * Gets the current UTC time.
5
5
  *
@@ -1,11 +1,11 @@
1
1
  import { Schema as S } from 'effect';
2
- import { type Html } from '../../html';
2
+ import { type Html } from '../../html/index.js';
3
3
  export declare const Model: S.Struct<{
4
4
  clicks: typeof S.Number;
5
5
  doubleClicks: typeof S.Number;
6
6
  }>;
7
7
  export type Model = typeof Model.Type;
8
- declare const Message: S.Union<[import("../../schema").CallableTaggedStruct<"ClickedContainer", {}>, import("../../schema").CallableTaggedStruct<"DoubleClickedContainer", {}>]>;
8
+ declare const Message: S.Union<[import("../../schema/index.js").CallableTaggedStruct<"ClickedContainer", {}>, import("../../schema/index.js").CallableTaggedStruct<"DoubleClickedContainer", {}>]>;
9
9
  type Message = typeof Message.Type;
10
10
  export declare const initialModel: Model;
11
11
  export declare const update: (model: Model, message: Message) => readonly [Model, ReadonlyArray<never>];
@@ -1 +1 @@
1
- {"version":3,"file":"bubbling.d.ts","sourceRoot":"","sources":["../../../src/test/apps/bubbling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,YAAY,CAAA;AAK5C,eAAO,MAAM,KAAK;;;EAGhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAOrC,QAAA,MAAM,OAAO,2JAAoD,CAAA;AACjE,KAAK,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIlC,eAAO,MAAM,YAAY,EAAE,KAG1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAUrC,CAAA;AAMH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IAajC,CAAA"}
1
+ {"version":3,"file":"bubbling.d.ts","sourceRoot":"","sources":["../../../src/test/apps/bubbling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,eAAO,MAAM,KAAK;;;EAGhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAOrC,QAAA,MAAM,OAAO,6KAAoD,CAAA;AACjE,KAAK,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIlC,eAAO,MAAM,YAAY,EAAE,KAG1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAUrC,CAAA;AAMH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IAajC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { Match as M, Schema as S } from 'effect';
2
- import { html } from '../../html';
3
- import { m } from '../../message';
2
+ import { html } from '../../html/index.js';
3
+ import { m } from '../../message/index.js';
4
4
  // MODEL
5
5
  export const Model = S.Struct({
6
6
  clicks: S.Number,
@@ -1,21 +1,21 @@
1
1
  import { Effect, Schema as S } from 'effect';
2
- import * as Command from '../../command';
2
+ import * as Command from '../../command/index.js';
3
3
  export declare const Model: S.Struct<{
4
4
  count: typeof S.Number;
5
5
  }>;
6
6
  export type Model = typeof Model.Type;
7
- export declare const ClickedIncrement: import("../../schema").CallableTaggedStruct<"ClickedIncrement", {}>;
8
- export declare const ClickedDecrement: import("../../schema").CallableTaggedStruct<"ClickedDecrement", {}>;
9
- export declare const ClickedFetch: import("../../schema").CallableTaggedStruct<"ClickedFetch", {}>;
10
- export declare const SucceededFetchCount: import("../../schema").CallableTaggedStruct<"SucceededFetchCount", {
7
+ export declare const ClickedIncrement: import("../../schema/index.js").CallableTaggedStruct<"ClickedIncrement", {}>;
8
+ export declare const ClickedDecrement: import("../../schema/index.js").CallableTaggedStruct<"ClickedDecrement", {}>;
9
+ export declare const ClickedFetch: import("../../schema/index.js").CallableTaggedStruct<"ClickedFetch", {}>;
10
+ export declare const SucceededFetchCount: import("../../schema/index.js").CallableTaggedStruct<"SucceededFetchCount", {
11
11
  count: typeof S.Number;
12
12
  }>;
13
- export declare const FailedFetchCount: import("../../schema").CallableTaggedStruct<"FailedFetchCount", {
13
+ export declare const FailedFetchCount: import("../../schema/index.js").CallableTaggedStruct<"FailedFetchCount", {
14
14
  error: typeof S.String;
15
15
  }>;
16
- export declare const Message: S.Union<[import("../../schema").CallableTaggedStruct<"ClickedIncrement", {}>, import("../../schema").CallableTaggedStruct<"ClickedDecrement", {}>, import("../../schema").CallableTaggedStruct<"ClickedFetch", {}>, import("../../schema").CallableTaggedStruct<"SucceededFetchCount", {
16
+ export declare const Message: S.Union<[import("../../schema/index.js").CallableTaggedStruct<"ClickedIncrement", {}>, import("../../schema/index.js").CallableTaggedStruct<"ClickedDecrement", {}>, import("../../schema/index.js").CallableTaggedStruct<"ClickedFetch", {}>, import("../../schema/index.js").CallableTaggedStruct<"SucceededFetchCount", {
17
17
  count: typeof S.Number;
18
- }>, import("../../schema").CallableTaggedStruct<"FailedFetchCount", {
18
+ }>, import("../../schema/index.js").CallableTaggedStruct<"FailedFetchCount", {
19
19
  error: typeof S.String;
20
20
  }>]>;
21
21
  export type Message = typeof Message.Type;
@@ -1 +1 @@
1
- {"version":3,"file":"counter.d.ts","sourceRoot":"","sources":["../../../src/test/apps/counter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AAKxC,eAAO,MAAM,KAAK;;EAAgC,CAAA;AAClD,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,gBAAgB,qEAAwB,CAAA;AACrD,eAAO,MAAM,gBAAgB,qEAAwB,CAAA;AACrD,eAAO,MAAM,YAAY,iEAAoB,CAAA;AAC7C,eAAO,MAAM,mBAAmB;;EAAgD,CAAA;AAChF,eAAO,MAAM,gBAAgB;;EAA6C,CAAA;AAE1E,eAAO,MAAM,OAAO;;;;IAMnB,CAAA;AACD,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,UAAU;;;;;;EAItB,CAAA;AAED,eAAO,MAAM,UAAU;;;;;;EAEtB,CAAA;AAID,eAAO,MAAM,YAAY,EAAE,KAAoB,CAAA;AAI/C,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAYxD,CAAA"}
1
+ {"version":3,"file":"counter.d.ts","sourceRoot":"","sources":["../../../src/test/apps/counter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AAKjD,eAAO,MAAM,KAAK;;EAAgC,CAAA;AAClD,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,gBAAgB,8EAAwB,CAAA;AACrD,eAAO,MAAM,gBAAgB,8EAAwB,CAAA;AACrD,eAAO,MAAM,YAAY,0EAAoB,CAAA;AAC7C,eAAO,MAAM,mBAAmB;;EAAgD,CAAA;AAChF,eAAO,MAAM,gBAAgB;;EAA6C,CAAA;AAE1E,eAAO,MAAM,OAAO;;;;IAMnB,CAAA;AACD,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,UAAU;;;;;;EAItB,CAAA;AAED,eAAO,MAAM,UAAU;;;;;;EAEtB,CAAA;AAID,eAAO,MAAM,YAAY,EAAE,KAAoB,CAAA;AAI/C,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAYxD,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { Effect, Match as M, Schema as S } from 'effect';
2
- import * as Command from '../../command';
3
- import { m } from '../../message';
2
+ import * as Command from '../../command/index.js';
3
+ import { m } from '../../message/index.js';
4
4
  // MODEL
5
5
  export const Model = S.Struct({ count: S.Number });
6
6
  // MESSAGE