@rezi-ui/core 0.1.0-alpha.60 → 0.1.0-alpha.63

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 (345) hide show
  1. package/dist/app/createApp/breadcrumbs.d.ts +38 -0
  2. package/dist/app/createApp/breadcrumbs.d.ts.map +1 -0
  3. package/dist/app/createApp/breadcrumbs.js +65 -0
  4. package/dist/app/createApp/breadcrumbs.js.map +1 -0
  5. package/dist/app/createApp/config.d.ts +25 -0
  6. package/dist/app/createApp/config.d.ts.map +1 -0
  7. package/dist/app/createApp/config.js +130 -0
  8. package/dist/app/createApp/config.js.map +1 -0
  9. package/dist/app/createApp/eventLoop.d.ts +95 -0
  10. package/dist/app/createApp/eventLoop.d.ts.map +1 -0
  11. package/dist/app/createApp/eventLoop.js +384 -0
  12. package/dist/app/createApp/eventLoop.js.map +1 -0
  13. package/dist/app/createApp/guards.d.ts +21 -0
  14. package/dist/app/createApp/guards.d.ts.map +1 -0
  15. package/dist/app/createApp/guards.js +54 -0
  16. package/dist/app/createApp/guards.js.map +1 -0
  17. package/dist/app/createApp/keybindings.d.ts +28 -0
  18. package/dist/app/createApp/keybindings.d.ts.map +1 -0
  19. package/dist/app/createApp/keybindings.js +113 -0
  20. package/dist/app/createApp/keybindings.js.map +1 -0
  21. package/dist/app/createApp/renderLoop.d.ts +64 -0
  22. package/dist/app/createApp/renderLoop.d.ts.map +1 -0
  23. package/dist/app/createApp/renderLoop.js +305 -0
  24. package/dist/app/createApp/renderLoop.js.map +1 -0
  25. package/dist/app/createApp.d.ts +3 -39
  26. package/dist/app/createApp.d.ts.map +1 -1
  27. package/dist/app/createApp.js +403 -1205
  28. package/dist/app/createApp.js.map +1 -1
  29. package/dist/app/widgetRenderer/constraintState.d.ts +98 -0
  30. package/dist/app/widgetRenderer/constraintState.d.ts.map +1 -0
  31. package/dist/app/widgetRenderer/constraintState.js +563 -0
  32. package/dist/app/widgetRenderer/constraintState.js.map +1 -0
  33. package/dist/app/widgetRenderer/fileNodeCache.d.ts +2 -0
  34. package/dist/app/widgetRenderer/fileNodeCache.d.ts.map +1 -1
  35. package/dist/app/widgetRenderer/fileNodeCache.js +31 -0
  36. package/dist/app/widgetRenderer/fileNodeCache.js.map +1 -1
  37. package/dist/app/widgetRenderer/filePickerRouting.d.ts +12 -1
  38. package/dist/app/widgetRenderer/filePickerRouting.d.ts.map +1 -1
  39. package/dist/app/widgetRenderer/filePickerRouting.js +63 -14
  40. package/dist/app/widgetRenderer/filePickerRouting.js.map +1 -1
  41. package/dist/app/widgetRenderer/focusState.d.ts +46 -0
  42. package/dist/app/widgetRenderer/focusState.d.ts.map +1 -0
  43. package/dist/app/widgetRenderer/focusState.js +122 -0
  44. package/dist/app/widgetRenderer/focusState.js.map +1 -0
  45. package/dist/app/widgetRenderer/keyboardRouting.d.ts.map +1 -1
  46. package/dist/app/widgetRenderer/keyboardRouting.js.map +1 -1
  47. package/dist/app/widgetRenderer/mouseRouting.d.ts +5 -0
  48. package/dist/app/widgetRenderer/mouseRouting.d.ts.map +1 -1
  49. package/dist/app/widgetRenderer/mouseRouting.js +78 -8
  50. package/dist/app/widgetRenderer/mouseRouting.js.map +1 -1
  51. package/dist/app/widgetRenderer/overlayShortcuts.d.ts.map +1 -1
  52. package/dist/app/widgetRenderer/overlayShortcuts.js +14 -4
  53. package/dist/app/widgetRenderer/overlayShortcuts.js.map +1 -1
  54. package/dist/app/widgetRenderer/overlayState.d.ts +198 -0
  55. package/dist/app/widgetRenderer/overlayState.d.ts.map +1 -0
  56. package/dist/app/widgetRenderer/overlayState.js +590 -0
  57. package/dist/app/widgetRenderer/overlayState.js.map +1 -0
  58. package/dist/app/widgetRenderer/routeEngineEvent.d.ts +189 -0
  59. package/dist/app/widgetRenderer/routeEngineEvent.d.ts.map +1 -0
  60. package/dist/app/widgetRenderer/routeEngineEvent.js +527 -0
  61. package/dist/app/widgetRenderer/routeEngineEvent.js.map +1 -0
  62. package/dist/app/widgetRenderer.d.ts +2 -1
  63. package/dist/app/widgetRenderer.d.ts.map +1 -1
  64. package/dist/app/widgetRenderer.js +334 -1707
  65. package/dist/app/widgetRenderer.js.map +1 -1
  66. package/dist/forms/internal/arrayState.d.ts +35 -0
  67. package/dist/forms/internal/arrayState.d.ts.map +1 -0
  68. package/dist/forms/internal/arrayState.js +238 -0
  69. package/dist/forms/internal/arrayState.js.map +1 -0
  70. package/dist/forms/internal/bindings.d.ts +46 -0
  71. package/dist/forms/internal/bindings.d.ts.map +1 -0
  72. package/dist/forms/internal/bindings.js +161 -0
  73. package/dist/forms/internal/bindings.js.map +1 -0
  74. package/dist/forms/internal/dev.d.ts +4 -0
  75. package/dist/forms/internal/dev.d.ts.map +1 -0
  76. package/dist/forms/internal/dev.js +21 -0
  77. package/dist/forms/internal/dev.js.map +1 -0
  78. package/dist/forms/internal/state.d.ts +52 -0
  79. package/dist/forms/internal/state.d.ts.map +1 -0
  80. package/dist/forms/internal/state.js +240 -0
  81. package/dist/forms/internal/state.js.map +1 -0
  82. package/dist/forms/internal/submit.d.ts +43 -0
  83. package/dist/forms/internal/submit.d.ts.map +1 -0
  84. package/dist/forms/internal/submit.js +165 -0
  85. package/dist/forms/internal/submit.js.map +1 -0
  86. package/dist/forms/internal/wizard.d.ts +53 -0
  87. package/dist/forms/internal/wizard.d.ts.map +1 -0
  88. package/dist/forms/internal/wizard.js +311 -0
  89. package/dist/forms/internal/wizard.js.map +1 -0
  90. package/dist/forms/useForm.d.ts.map +1 -1
  91. package/dist/forms/useForm.js +90 -1117
  92. package/dist/forms/useForm.js.map +1 -1
  93. package/dist/index.d.ts +1 -1
  94. package/dist/index.d.ts.map +1 -1
  95. package/dist/index.js +1 -1
  96. package/dist/index.js.map +1 -1
  97. package/dist/keybindings/manager.d.ts.map +1 -1
  98. package/dist/keybindings/manager.js.map +1 -1
  99. package/dist/keybindings/parser.d.ts.map +1 -1
  100. package/dist/keybindings/parser.js +10 -5
  101. package/dist/keybindings/parser.js.map +1 -1
  102. package/dist/layout/dropdownGeometry.d.ts +8 -0
  103. package/dist/layout/dropdownGeometry.d.ts.map +1 -1
  104. package/dist/layout/dropdownGeometry.js +40 -0
  105. package/dist/layout/dropdownGeometry.js.map +1 -1
  106. package/dist/layout/engine/layoutEngine.js +1 -1
  107. package/dist/layout/engine/layoutEngine.js.map +1 -1
  108. package/dist/layout/kinds/overlays.d.ts.map +1 -1
  109. package/dist/layout/kinds/stack.d.ts +1 -3
  110. package/dist/layout/kinds/stack.d.ts.map +1 -1
  111. package/dist/layout/kinds/stack.js +11 -1523
  112. package/dist/layout/kinds/stack.js.map +1 -1
  113. package/dist/layout/kinds/stackParts/axis.d.ts +32 -0
  114. package/dist/layout/kinds/stackParts/axis.d.ts.map +1 -0
  115. package/dist/layout/kinds/stackParts/axis.js +61 -0
  116. package/dist/layout/kinds/stackParts/axis.js.map +1 -0
  117. package/dist/layout/kinds/stackParts/constraintPlan.d.ts +18 -0
  118. package/dist/layout/kinds/stackParts/constraintPlan.d.ts.map +1 -0
  119. package/dist/layout/kinds/stackParts/constraintPlan.js +434 -0
  120. package/dist/layout/kinds/stackParts/constraintPlan.js.map +1 -0
  121. package/dist/layout/kinds/stackParts/layout.d.ts +6 -0
  122. package/dist/layout/kinds/stackParts/layout.d.ts.map +1 -0
  123. package/dist/layout/kinds/stackParts/layout.js +376 -0
  124. package/dist/layout/kinds/stackParts/layout.js.map +1 -0
  125. package/dist/layout/kinds/stackParts/measure.d.ts +6 -0
  126. package/dist/layout/kinds/stackParts/measure.d.ts.map +1 -0
  127. package/dist/layout/kinds/stackParts/measure.js +212 -0
  128. package/dist/layout/kinds/stackParts/measure.js.map +1 -0
  129. package/dist/layout/kinds/stackParts/shared.d.ts +31 -0
  130. package/dist/layout/kinds/stackParts/shared.d.ts.map +1 -0
  131. package/dist/layout/kinds/stackParts/shared.js +94 -0
  132. package/dist/layout/kinds/stackParts/shared.js.map +1 -0
  133. package/dist/layout/kinds/stackParts/wrap.d.ts +26 -0
  134. package/dist/layout/kinds/stackParts/wrap.d.ts.map +1 -0
  135. package/dist/layout/kinds/stackParts/wrap.js +374 -0
  136. package/dist/layout/kinds/stackParts/wrap.js.map +1 -0
  137. package/dist/layout/validate/interactive.d.ts +106 -0
  138. package/dist/layout/validate/interactive.d.ts.map +1 -0
  139. package/dist/layout/validate/interactive.js +430 -0
  140. package/dist/layout/validate/interactive.js.map +1 -0
  141. package/dist/layout/validate/layoutConstraints.d.ts +51 -0
  142. package/dist/layout/validate/layoutConstraints.d.ts.map +1 -0
  143. package/dist/layout/validate/layoutConstraints.js +100 -0
  144. package/dist/layout/validate/layoutConstraints.js.map +1 -0
  145. package/dist/layout/validate/primitives.d.ts +31 -0
  146. package/dist/layout/validate/primitives.d.ts.map +1 -0
  147. package/dist/layout/validate/primitives.js +299 -0
  148. package/dist/layout/validate/primitives.js.map +1 -0
  149. package/dist/layout/validate/shared.d.ts +23 -0
  150. package/dist/layout/validate/shared.d.ts.map +1 -0
  151. package/dist/layout/validate/shared.js +32 -0
  152. package/dist/layout/validate/shared.js.map +1 -0
  153. package/dist/layout/validate/spacing.d.ts +21 -0
  154. package/dist/layout/validate/spacing.d.ts.map +1 -0
  155. package/dist/layout/validate/spacing.js +33 -0
  156. package/dist/layout/validate/spacing.js.map +1 -0
  157. package/dist/layout/validateProps.d.ts +5 -159
  158. package/dist/layout/validateProps.d.ts.map +1 -1
  159. package/dist/layout/validateProps.js +1 -832
  160. package/dist/layout/validateProps.js.map +1 -1
  161. package/dist/pipeline.js +1 -1
  162. package/dist/pipeline.js.map +1 -1
  163. package/dist/renderer/renderToDrawlist/renderTree.d.ts +1 -1
  164. package/dist/renderer/renderToDrawlist/renderTree.d.ts.map +1 -1
  165. package/dist/renderer/renderToDrawlist/renderTree.js +3 -3
  166. package/dist/renderer/renderToDrawlist/renderTree.js.map +1 -1
  167. package/dist/renderer/renderToDrawlist/types.d.ts +2 -0
  168. package/dist/renderer/renderToDrawlist/types.d.ts.map +1 -1
  169. package/dist/renderer/renderToDrawlist/widgets/containers.d.ts.map +1 -1
  170. package/dist/renderer/renderToDrawlist/widgets/containers.js +1 -1
  171. package/dist/renderer/renderToDrawlist/widgets/containers.js.map +1 -1
  172. package/dist/renderer/renderToDrawlist/widgets/files.d.ts +2 -1
  173. package/dist/renderer/renderToDrawlist/widgets/files.d.ts.map +1 -1
  174. package/dist/renderer/renderToDrawlist/widgets/files.js +30 -3
  175. package/dist/renderer/renderToDrawlist/widgets/files.js.map +1 -1
  176. package/dist/renderer/renderToDrawlist/widgets/overlays.d.ts +1 -1
  177. package/dist/renderer/renderToDrawlist/widgets/overlays.d.ts.map +1 -1
  178. package/dist/renderer/renderToDrawlist/widgets/overlays.js +26 -6
  179. package/dist/renderer/renderToDrawlist/widgets/overlays.js.map +1 -1
  180. package/dist/renderer/renderToDrawlist/widgets/renderFormWidgets.d.ts.map +1 -1
  181. package/dist/renderer/renderToDrawlist/widgets/renderFormWidgets.js +52 -18
  182. package/dist/renderer/renderToDrawlist/widgets/renderFormWidgets.js.map +1 -1
  183. package/dist/renderer/renderToDrawlist.d.ts +0 -8
  184. package/dist/renderer/renderToDrawlist.d.ts.map +1 -1
  185. package/dist/renderer/renderToDrawlist.js +1 -9
  186. package/dist/renderer/renderToDrawlist.js.map +1 -1
  187. package/dist/runtime/commit/composite.d.ts +11 -0
  188. package/dist/runtime/commit/composite.d.ts.map +1 -0
  189. package/dist/runtime/commit/composite.js +238 -0
  190. package/dist/runtime/commit/composite.js.map +1 -0
  191. package/dist/runtime/commit/container.d.ts +7 -0
  192. package/dist/runtime/commit/container.d.ts.map +1 -0
  193. package/dist/runtime/commit/container.js +350 -0
  194. package/dist/runtime/commit/container.js.map +1 -0
  195. package/dist/runtime/commit/equality.d.ts +20 -0
  196. package/dist/runtime/commit/equality.d.ts.map +1 -0
  197. package/dist/runtime/commit/equality.js +436 -0
  198. package/dist/runtime/commit/equality.js.map +1 -0
  199. package/dist/runtime/commit/errorBoundary.d.ts +7 -0
  200. package/dist/runtime/commit/errorBoundary.d.ts.map +1 -0
  201. package/dist/runtime/commit/errorBoundary.js +53 -0
  202. package/dist/runtime/commit/errorBoundary.js.map +1 -0
  203. package/dist/runtime/commit/shared.d.ts +138 -0
  204. package/dist/runtime/commit/shared.d.ts.map +1 -0
  205. package/dist/runtime/commit/shared.js +11 -0
  206. package/dist/runtime/commit/shared.js.map +1 -0
  207. package/dist/runtime/commit/transitions.d.ts +9 -0
  208. package/dist/runtime/commit/transitions.d.ts.map +1 -0
  209. package/dist/runtime/commit/transitions.js +93 -0
  210. package/dist/runtime/commit/transitions.js.map +1 -0
  211. package/dist/runtime/commit/validation.d.ts +16 -0
  212. package/dist/runtime/commit/validation.d.ts.map +1 -0
  213. package/dist/runtime/commit/validation.js +157 -0
  214. package/dist/runtime/commit/validation.js.map +1 -0
  215. package/dist/runtime/commit.d.ts +7 -117
  216. package/dist/runtime/commit.d.ts.map +1 -1
  217. package/dist/runtime/commit.js +13 -1394
  218. package/dist/runtime/commit.js.map +1 -1
  219. package/dist/runtime/localState.d.ts +4 -0
  220. package/dist/runtime/localState.d.ts.map +1 -1
  221. package/dist/runtime/localState.js.map +1 -1
  222. package/dist/runtime/widgetMeta/collector.d.ts +77 -0
  223. package/dist/runtime/widgetMeta/collector.d.ts.map +1 -0
  224. package/dist/runtime/widgetMeta/collector.js +293 -0
  225. package/dist/runtime/widgetMeta/collector.js.map +1 -0
  226. package/dist/runtime/widgetMeta/focusContainers.d.ts +44 -0
  227. package/dist/runtime/widgetMeta/focusContainers.d.ts.map +1 -0
  228. package/dist/runtime/widgetMeta/focusContainers.js +190 -0
  229. package/dist/runtime/widgetMeta/focusContainers.js.map +1 -0
  230. package/dist/runtime/widgetMeta/focusInfo.d.ts +19 -0
  231. package/dist/runtime/widgetMeta/focusInfo.d.ts.map +1 -0
  232. package/dist/runtime/widgetMeta/focusInfo.js +172 -0
  233. package/dist/runtime/widgetMeta/focusInfo.js.map +1 -0
  234. package/dist/runtime/widgetMeta/helpers.d.ts +47 -0
  235. package/dist/runtime/widgetMeta/helpers.d.ts.map +1 -0
  236. package/dist/runtime/widgetMeta/helpers.js +182 -0
  237. package/dist/runtime/widgetMeta/helpers.js.map +1 -0
  238. package/dist/runtime/widgetMeta.d.ts +12 -175
  239. package/dist/runtime/widgetMeta.d.ts.map +1 -1
  240. package/dist/runtime/widgetMeta.js +6 -847
  241. package/dist/runtime/widgetMeta.js.map +1 -1
  242. package/dist/ui/capabilities.d.ts.map +1 -1
  243. package/dist/ui/designTokens.d.ts.map +1 -1
  244. package/dist/widgets/accordion.d.ts.map +1 -1
  245. package/dist/widgets/accordion.js +8 -13
  246. package/dist/widgets/accordion.js.map +1 -1
  247. package/dist/widgets/factories/advanced.d.ts +20 -0
  248. package/dist/widgets/factories/advanced.d.ts.map +1 -0
  249. package/dist/widgets/factories/advanced.js +75 -0
  250. package/dist/widgets/factories/advanced.js.map +1 -0
  251. package/dist/widgets/factories/basic.d.ts +14 -0
  252. package/dist/widgets/factories/basic.d.ts.map +1 -0
  253. package/dist/widgets/factories/basic.js +44 -0
  254. package/dist/widgets/factories/basic.js.map +1 -0
  255. package/dist/widgets/factories/feedback.d.ts +20 -0
  256. package/dist/widgets/factories/feedback.d.ts.map +1 -0
  257. package/dist/widgets/factories/feedback.js +102 -0
  258. package/dist/widgets/factories/feedback.js.map +1 -0
  259. package/dist/widgets/factories/helpers.d.ts +41 -0
  260. package/dist/widgets/factories/helpers.d.ts.map +1 -0
  261. package/dist/widgets/factories/helpers.js +72 -0
  262. package/dist/widgets/factories/helpers.js.map +1 -0
  263. package/dist/widgets/factories/interactive.d.ts +15 -0
  264. package/dist/widgets/factories/interactive.d.ts.map +1 -0
  265. package/dist/widgets/factories/interactive.js +46 -0
  266. package/dist/widgets/factories/interactive.js.map +1 -0
  267. package/dist/widgets/factories/layoutShell.d.ts +22 -0
  268. package/dist/widgets/factories/layoutShell.d.ts.map +1 -0
  269. package/dist/widgets/factories/layoutShell.js +190 -0
  270. package/dist/widgets/factories/layoutShell.js.map +1 -0
  271. package/dist/widgets/factories/media.d.ts +14 -0
  272. package/dist/widgets/factories/media.d.ts.map +1 -0
  273. package/dist/widgets/factories/media.js +25 -0
  274. package/dist/widgets/factories/media.js.map +1 -0
  275. package/dist/widgets/factories/navigation.d.ts +10 -0
  276. package/dist/widgets/factories/navigation.d.ts.map +1 -0
  277. package/dist/widgets/factories/navigation.js +24 -0
  278. package/dist/widgets/factories/navigation.js.map +1 -0
  279. package/dist/widgets/field.d.ts +6 -1
  280. package/dist/widgets/field.d.ts.map +1 -1
  281. package/dist/widgets/field.js +8 -2
  282. package/dist/widgets/field.js.map +1 -1
  283. package/dist/widgets/filePicker.d.ts +5 -0
  284. package/dist/widgets/filePicker.d.ts.map +1 -0
  285. package/dist/widgets/filePicker.js +136 -0
  286. package/dist/widgets/filePicker.js.map +1 -0
  287. package/dist/widgets/protocol.d.ts +0 -6
  288. package/dist/widgets/protocol.d.ts.map +1 -1
  289. package/dist/widgets/protocol.js +0 -6
  290. package/dist/widgets/protocol.js.map +1 -1
  291. package/dist/widgets/select.js +1 -1
  292. package/dist/widgets/select.js.map +1 -1
  293. package/dist/widgets/splitPane.d.ts.map +1 -1
  294. package/dist/widgets/splitPane.js.map +1 -1
  295. package/dist/widgets/table.d.ts.map +1 -1
  296. package/dist/widgets/table.js +43 -1
  297. package/dist/widgets/table.js.map +1 -1
  298. package/dist/widgets/tree.d.ts.map +1 -1
  299. package/dist/widgets/types/advanced.d.ts +611 -0
  300. package/dist/widgets/types/advanced.d.ts.map +1 -0
  301. package/dist/widgets/types/advanced.js +2 -0
  302. package/dist/widgets/types/advanced.js.map +1 -0
  303. package/dist/widgets/types/base.d.ts +933 -0
  304. package/dist/widgets/types/base.d.ts.map +1 -0
  305. package/dist/widgets/types/base.js +2 -0
  306. package/dist/widgets/types/base.js.map +1 -0
  307. package/dist/widgets/types/forms.d.ts +136 -0
  308. package/dist/widgets/types/forms.d.ts.map +1 -0
  309. package/dist/widgets/types/forms.js +2 -0
  310. package/dist/widgets/types/forms.js.map +1 -0
  311. package/dist/widgets/types/navigation.d.ts +83 -0
  312. package/dist/widgets/types/navigation.d.ts.map +1 -0
  313. package/dist/widgets/types/navigation.js +2 -0
  314. package/dist/widgets/types/navigation.js.map +1 -0
  315. package/dist/widgets/types/overlaysShell.d.ts +223 -0
  316. package/dist/widgets/types/overlaysShell.d.ts.map +1 -0
  317. package/dist/widgets/types/overlaysShell.js +2 -0
  318. package/dist/widgets/types/overlaysShell.js.map +1 -0
  319. package/dist/widgets/types/table.d.ts +104 -0
  320. package/dist/widgets/types/table.d.ts.map +1 -0
  321. package/dist/widgets/types/table.js +2 -0
  322. package/dist/widgets/types/table.js.map +1 -0
  323. package/dist/widgets/types/tree.d.ts +64 -0
  324. package/dist/widgets/types/tree.d.ts.map +1 -0
  325. package/dist/widgets/types/tree.js +2 -0
  326. package/dist/widgets/types/tree.js.map +1 -0
  327. package/dist/widgets/types.d.ts +14 -2123
  328. package/dist/widgets/types.d.ts.map +1 -1
  329. package/dist/widgets/ui.d.ts +37 -843
  330. package/dist/widgets/ui.d.ts.map +1 -1
  331. package/dist/widgets/ui.js +37 -1262
  332. package/dist/widgets/ui.js.map +1 -1
  333. package/package.json +2 -2
  334. package/dist/constraints/aggregation.d.ts +0 -17
  335. package/dist/constraints/aggregation.d.ts.map +0 -1
  336. package/dist/constraints/aggregation.js +0 -59
  337. package/dist/constraints/aggregation.js.map +0 -1
  338. package/dist/renderer/renderToDrawlist/overflowCulling.d.ts +0 -3
  339. package/dist/renderer/renderToDrawlist/overflowCulling.d.ts.map +0 -1
  340. package/dist/renderer/renderToDrawlist/overflowCulling.js +0 -81
  341. package/dist/renderer/renderToDrawlist/overflowCulling.js.map +0 -1
  342. package/dist/widgets/tests/protocol.test.d.ts +0 -2
  343. package/dist/widgets/tests/protocol.test.d.ts.map +0 -1
  344. package/dist/widgets/tests/protocol.test.js +0 -120
  345. package/dist/widgets/tests/protocol.test.js.map +0 -1
@@ -0,0 +1,563 @@
1
+ import { isConstraintExpr } from "../../constraints/expr.js";
2
+ import { measure } from "../../layout/layout.js";
3
+ export const CONSTRAINT_NODE_PROPS = Object.freeze([
4
+ "width",
5
+ "height",
6
+ "minWidth",
7
+ "maxWidth",
8
+ "minHeight",
9
+ "maxHeight",
10
+ "flexBasis",
11
+ "display",
12
+ ]);
13
+ export function describeConstraintGraphFatal(fatal) {
14
+ if (fatal.code === "ZRUI_CIRCULAR_CONSTRAINT") {
15
+ return `Circular constraint dependency: ${fatal.cycle.join(" -> ")}`;
16
+ }
17
+ return fatal.detail;
18
+ }
19
+ function readWidgetIdFromRuntimeNode(node) {
20
+ const id = node.vnode.props?.id;
21
+ return typeof id === "string" && id.length > 0 ? id : null;
22
+ }
23
+ function hasConstraintSourceDiff(node, graph) {
24
+ const props = (node.vnode.props ?? {});
25
+ for (const prop of CONSTRAINT_NODE_PROPS) {
26
+ const prev = graph.nodeByKey.get(`${String(node.instanceId)}:${prop}`);
27
+ const prevSource = prev?.expr.source ?? null;
28
+ const nextRaw = props[prop];
29
+ const nextSource = isConstraintExpr(nextRaw) ? nextRaw.source : null;
30
+ if (prevSource !== nextSource)
31
+ return true;
32
+ }
33
+ return false;
34
+ }
35
+ function hasRuntimeConstraintExpr(node) {
36
+ const props = node.vnode.props;
37
+ if (props === undefined || props === null)
38
+ return false;
39
+ for (const prop of CONSTRAINT_NODE_PROPS) {
40
+ if (isConstraintExpr(props[prop]))
41
+ return true;
42
+ }
43
+ return false;
44
+ }
45
+ function resolveConstraintChildAxis(node, parentAxis) {
46
+ switch (node.vnode.kind) {
47
+ case "row":
48
+ return "row";
49
+ case "column":
50
+ case "box":
51
+ return "column";
52
+ default:
53
+ return parentAxis;
54
+ }
55
+ }
56
+ function measureConstraintIntrinsicValues(node, parentW, parentH, axis) {
57
+ const measured = measure(node.vnode, parentW, parentH, axis);
58
+ if (!measured.ok)
59
+ return null;
60
+ const w = Math.max(0, Math.floor(measured.value.w));
61
+ const h = Math.max(0, Math.floor(measured.value.h));
62
+ return {
63
+ w,
64
+ h,
65
+ min_w: w,
66
+ min_h: h,
67
+ };
68
+ }
69
+ export function shouldRebuildConstraintGraph(root, prevGraph, removedInstanceIds, pooledConstraintRuntimeStack) {
70
+ if (removedInstanceIds.length > 0) {
71
+ for (const instanceId of removedInstanceIds) {
72
+ if (prevGraph.constrainedInstanceIds.has(instanceId) ||
73
+ prevGraph.instanceIdToWidgetId.has(instanceId)) {
74
+ return true;
75
+ }
76
+ }
77
+ }
78
+ pooledConstraintRuntimeStack.length = 0;
79
+ pooledConstraintRuntimeStack.push(root);
80
+ while (pooledConstraintRuntimeStack.length > 0) {
81
+ const node = pooledConstraintRuntimeStack.pop();
82
+ if (!node)
83
+ continue;
84
+ if (!node.dirty)
85
+ continue;
86
+ if (node.selfDirty) {
87
+ const prevWidgetId = prevGraph.instanceIdToWidgetId.get(node.instanceId) ?? null;
88
+ const nextWidgetId = readWidgetIdFromRuntimeNode(node);
89
+ if (prevWidgetId !== nextWidgetId) {
90
+ return true;
91
+ }
92
+ const hadConstraintExpr = prevGraph.constrainedInstanceIds.has(node.instanceId);
93
+ if ((hadConstraintExpr || hasRuntimeConstraintExpr(node)) &&
94
+ hasConstraintSourceDiff(node, prevGraph)) {
95
+ return true;
96
+ }
97
+ }
98
+ for (let i = node.children.length - 1; i >= 0; i--) {
99
+ const child = node.children[i];
100
+ if (!child)
101
+ continue;
102
+ if (!child.dirty)
103
+ continue;
104
+ pooledConstraintRuntimeStack.push(child);
105
+ }
106
+ }
107
+ return false;
108
+ }
109
+ export function buildConstraintResolutionInputs(params) {
110
+ params.pooledConstraintBaseValues.clear();
111
+ params.pooledConstraintParentValues.clear();
112
+ params.pooledConstraintIntrinsicValues.clear();
113
+ params.pooledConstraintParentByInstanceId.clear();
114
+ params.pooledConstraintRuntimeStack.length = 0;
115
+ params.pooledConstraintParentStack.length = 0;
116
+ params.pooledConstraintAxisStack.length = 0;
117
+ let hasStaticHiddenDisplay = false;
118
+ const requiredInstanceIds = params.graph.requiredRuntimeInstanceIds;
119
+ const intrinsicInstanceIds = params.graph.intrinsicRuntimeInstanceIds;
120
+ let remainingRequiredInstanceCount = requiredInstanceIds.size;
121
+ params.pooledConstraintRuntimeStack.push(params.root);
122
+ params.pooledConstraintParentStack.push(null);
123
+ params.pooledConstraintAxisStack.push("column");
124
+ let head = 0;
125
+ while (head < params.pooledConstraintRuntimeStack.length) {
126
+ const node = params.pooledConstraintRuntimeStack[head];
127
+ const parentInstanceId = params.pooledConstraintParentStack[head] ?? null;
128
+ const axis = params.pooledConstraintAxisStack[head] ?? "column";
129
+ head++;
130
+ if (!node)
131
+ continue;
132
+ params.pooledConstraintParentByInstanceId.set(node.instanceId, parentInstanceId);
133
+ const needsNodeData = requiredInstanceIds.has(node.instanceId);
134
+ if (needsNodeData) {
135
+ remainingRequiredInstanceCount--;
136
+ const parentRect = parentInstanceId === null ? null : params.pooledRectByInstanceId.get(parentInstanceId);
137
+ const parentW = parentRect?.w ?? params.rootW;
138
+ const parentH = parentRect?.h ?? params.rootH;
139
+ const displayRaw = node.vnode.props?.display;
140
+ if (displayRaw === false)
141
+ hasStaticHiddenDisplay = true;
142
+ const staticDisplay = displayRaw === false ? 0 : displayRaw === true ? 1 : undefined;
143
+ if (params.graph.constrainedInstanceIds.has(node.instanceId)) {
144
+ params.pooledConstraintParentValues.set(node.instanceId, {
145
+ w: parentW,
146
+ h: parentH,
147
+ min_w: parentW,
148
+ min_h: parentH,
149
+ });
150
+ }
151
+ const rect = params.pooledRectByInstanceId.get(node.instanceId);
152
+ if (rect) {
153
+ const base = {
154
+ width: rect.w,
155
+ height: rect.h,
156
+ minWidth: rect.w,
157
+ minHeight: rect.h,
158
+ };
159
+ if (staticDisplay !== undefined) {
160
+ base.display = staticDisplay;
161
+ }
162
+ params.pooledConstraintBaseValues.set(node.instanceId, {
163
+ ...base,
164
+ });
165
+ }
166
+ else if (staticDisplay !== undefined) {
167
+ params.pooledConstraintBaseValues.set(node.instanceId, {
168
+ display: staticDisplay,
169
+ });
170
+ }
171
+ if (intrinsicInstanceIds.has(node.instanceId)) {
172
+ const intrinsicValues = measureConstraintIntrinsicValues(node, parentW, parentH, axis);
173
+ if (intrinsicValues !== null) {
174
+ params.pooledConstraintIntrinsicValues.set(node.instanceId, intrinsicValues);
175
+ }
176
+ }
177
+ }
178
+ if (remainingRequiredInstanceCount === 0)
179
+ break;
180
+ const childAxis = resolveConstraintChildAxis(node, axis);
181
+ for (let i = 0; i < node.children.length; i++) {
182
+ const child = node.children[i];
183
+ if (!child)
184
+ continue;
185
+ params.pooledConstraintRuntimeStack.push(child);
186
+ params.pooledConstraintParentStack.push(node.instanceId);
187
+ params.pooledConstraintAxisStack.push(childAxis);
188
+ }
189
+ }
190
+ params.pooledConstraintRuntimeStack.length = 0;
191
+ params.pooledConstraintParentStack.length = 0;
192
+ params.pooledConstraintAxisStack.length = 0;
193
+ return Object.freeze({ hasStaticHiddenDisplay });
194
+ }
195
+ export function rebuildConstraintHiddenState(root, valuesByInstanceId, pooledConstraintRuntimeStack, pooledConstraintVisibilityStack, pooledHiddenConstraintInstanceIds, pooledHiddenConstraintWidgetIds) {
196
+ pooledHiddenConstraintInstanceIds.clear();
197
+ pooledHiddenConstraintWidgetIds.clear();
198
+ pooledConstraintRuntimeStack.length = 0;
199
+ pooledConstraintVisibilityStack.length = 0;
200
+ pooledConstraintRuntimeStack.push(root);
201
+ pooledConstraintVisibilityStack.push(false);
202
+ while (pooledConstraintRuntimeStack.length > 0) {
203
+ const node = pooledConstraintRuntimeStack.pop();
204
+ const parentHidden = pooledConstraintVisibilityStack.pop() ?? false;
205
+ if (!node)
206
+ continue;
207
+ const props = (node.vnode.props ?? {});
208
+ const displayResolved = valuesByInstanceId?.get(node.instanceId)?.display;
209
+ const hiddenByResolved = typeof displayResolved === "number" && Number.isFinite(displayResolved)
210
+ ? displayResolved <= 0
211
+ : false;
212
+ const hiddenByStatic = props.display === false;
213
+ const hidden = parentHidden || hiddenByResolved || hiddenByStatic;
214
+ if (hidden) {
215
+ pooledHiddenConstraintInstanceIds.add(node.instanceId);
216
+ const id = props.id;
217
+ if (typeof id === "string" && id.length > 0) {
218
+ pooledHiddenConstraintWidgetIds.add(id);
219
+ }
220
+ }
221
+ for (let i = node.children.length - 1; i >= 0; i--) {
222
+ const child = node.children[i];
223
+ if (!child)
224
+ continue;
225
+ pooledConstraintRuntimeStack.push(child);
226
+ pooledConstraintVisibilityStack.push(hidden);
227
+ }
228
+ }
229
+ return Object.freeze({
230
+ hiddenConstraintInstanceIds: pooledHiddenConstraintInstanceIds,
231
+ hiddenConstraintWidgetIds: pooledHiddenConstraintWidgetIds,
232
+ });
233
+ }
234
+ export function rebuildConstraintAffectedPathSet(graph, hiddenInstanceIds, pooledConstraintAffectedPathInstanceIds, pooledConstraintNodesWithAffectedDescendants, pooledConstraintParentByInstanceId) {
235
+ pooledConstraintAffectedPathInstanceIds.clear();
236
+ pooledConstraintNodesWithAffectedDescendants.clear();
237
+ const addWithAncestors = (instanceId) => {
238
+ let cursor = instanceId;
239
+ while (cursor !== null) {
240
+ pooledConstraintAffectedPathInstanceIds.add(cursor);
241
+ const parentInstanceId = pooledConstraintParentByInstanceId.get(cursor) ?? null;
242
+ if (parentInstanceId !== null) {
243
+ pooledConstraintNodesWithAffectedDescendants.add(parentInstanceId);
244
+ }
245
+ cursor = parentInstanceId;
246
+ }
247
+ };
248
+ for (const node of graph.nodes) {
249
+ addWithAncestors(node.instanceId);
250
+ }
251
+ for (const instanceId of hiddenInstanceIds) {
252
+ addWithAncestors(instanceId);
253
+ }
254
+ return Object.freeze({
255
+ constraintAffectedPathInstanceIds: pooledConstraintAffectedPathInstanceIds,
256
+ constraintNodesWithAffectedDescendants: pooledConstraintNodesWithAffectedDescendants,
257
+ });
258
+ }
259
+ export function hasConstraintInputSignatureChange(params) {
260
+ const signature = params.signature;
261
+ let index = 0;
262
+ let changed = !params.valid;
263
+ const write = (value) => {
264
+ if (!changed && !Object.is(signature[index], value))
265
+ changed = true;
266
+ signature[index] = value;
267
+ index++;
268
+ };
269
+ const writeOrNaN = (value) => {
270
+ write(value === undefined ? Number.NaN : value);
271
+ };
272
+ write(params.graph.fingerprint);
273
+ write(params.viewport.cols);
274
+ write(params.viewport.rows);
275
+ write(params.rootW);
276
+ write(params.rootH);
277
+ for (const instanceId of params.graph.requiredRuntimeInstanceIds) {
278
+ const base = params.pooledConstraintBaseValues.get(instanceId);
279
+ const parent = params.pooledConstraintParentValues.get(instanceId);
280
+ const intrinsic = params.pooledConstraintIntrinsicValues.get(instanceId);
281
+ write(instanceId);
282
+ writeOrNaN(base?.width);
283
+ writeOrNaN(base?.height);
284
+ writeOrNaN(base?.minWidth);
285
+ writeOrNaN(base?.minHeight);
286
+ writeOrNaN(base?.display);
287
+ writeOrNaN(parent?.w);
288
+ writeOrNaN(parent?.h);
289
+ writeOrNaN(parent?.min_w);
290
+ writeOrNaN(parent?.min_h);
291
+ writeOrNaN(intrinsic?.w);
292
+ writeOrNaN(intrinsic?.h);
293
+ writeOrNaN(intrinsic?.min_w);
294
+ writeOrNaN(intrinsic?.min_h);
295
+ }
296
+ if (!changed && signature.length !== index)
297
+ changed = true;
298
+ signature.length = index;
299
+ return Object.freeze({ changed, valid: true });
300
+ }
301
+ export function computeConstraintInputKey(graph, viewport, rootW, rootH, pooledConstraintBaseValues, pooledConstraintParentValues, pooledConstraintIntrinsicValues) {
302
+ const parts = [
303
+ String(graph.fingerprint),
304
+ String(viewport.cols),
305
+ String(viewport.rows),
306
+ String(rootW),
307
+ String(rootH),
308
+ ];
309
+ for (const instanceId of graph.requiredRuntimeInstanceIds) {
310
+ const base = pooledConstraintBaseValues.get(instanceId);
311
+ const parent = pooledConstraintParentValues.get(instanceId);
312
+ const intrinsic = pooledConstraintIntrinsicValues.get(instanceId);
313
+ parts.push(String(instanceId), String(base?.width ?? "u"), String(base?.height ?? "u"), String(base?.minWidth ?? "u"), String(base?.minHeight ?? "u"), String(base?.display ?? "u"), String(parent?.w ?? rootW), String(parent?.h ?? rootH), String(parent?.min_w ?? rootW), String(parent?.min_h ?? rootH), String(intrinsic?.w ?? "u"), String(intrinsic?.h ?? "u"), String(intrinsic?.min_w ?? "u"), String(intrinsic?.min_h ?? "u"));
314
+ }
315
+ return parts.join("|");
316
+ }
317
+ export function rebuildConstraintExprIndex(graph) {
318
+ const mutable = new Map();
319
+ for (const node of graph.nodes) {
320
+ const entry = Object.freeze({ prop: node.prop, source: node.expr.source });
321
+ const bucket = mutable.get(node.instanceId);
322
+ if (bucket)
323
+ bucket.push(entry);
324
+ else
325
+ mutable.set(node.instanceId, [entry]);
326
+ }
327
+ const frozen = new Map();
328
+ for (const [instanceId, list] of mutable.entries()) {
329
+ frozen.set(instanceId, Object.freeze(list.slice()));
330
+ }
331
+ return frozen;
332
+ }
333
+ export function computeConstraintBreadcrumbs(params) {
334
+ const graph = params.graph;
335
+ if (graph === null || graph.nodes.length === 0)
336
+ return params.emptyConstraintBreadcrumbs;
337
+ const exprIndexByInstanceId = params.exprIndexByInstanceId ?? params.rebuildConstraintExprIndex(graph);
338
+ const hiddenInstanceCount = params.hiddenConstraintInstanceIds.size;
339
+ let focused = null;
340
+ if (params.focusedId) {
341
+ const instances = graph.idToInstances.get(params.focusedId) ?? params.emptyInstanceIds;
342
+ const instanceCount = instances.length;
343
+ const instanceId = instances[0] ?? null;
344
+ const resolved = instanceId !== null ? (params.resolvedByInstanceId?.get(instanceId) ?? null) : null;
345
+ const expressions = instanceId !== null ? (exprIndexByInstanceId.get(instanceId) ?? null) : null;
346
+ focused = Object.freeze({
347
+ id: params.focusedId,
348
+ instanceCount,
349
+ instanceId,
350
+ resolved: resolved
351
+ ? (() => {
352
+ const out = {};
353
+ if (typeof resolved.display === "number" && Number.isFinite(resolved.display))
354
+ out.display = resolved.display;
355
+ if (typeof resolved.width === "number" && Number.isFinite(resolved.width))
356
+ out.width = resolved.width;
357
+ if (typeof resolved.height === "number" && Number.isFinite(resolved.height))
358
+ out.height = resolved.height;
359
+ if (typeof resolved.minWidth === "number" && Number.isFinite(resolved.minWidth))
360
+ out.minWidth = resolved.minWidth;
361
+ if (typeof resolved.maxWidth === "number" && Number.isFinite(resolved.maxWidth))
362
+ out.maxWidth = resolved.maxWidth;
363
+ if (typeof resolved.minHeight === "number" && Number.isFinite(resolved.minHeight))
364
+ out.minHeight = resolved.minHeight;
365
+ if (typeof resolved.maxHeight === "number" && Number.isFinite(resolved.maxHeight))
366
+ out.maxHeight = resolved.maxHeight;
367
+ if (typeof resolved.flexBasis === "number" && Number.isFinite(resolved.flexBasis))
368
+ out.flexBasis = resolved.flexBasis;
369
+ return Object.freeze(out);
370
+ })()
371
+ : null,
372
+ expressions,
373
+ });
374
+ }
375
+ return Object.freeze({
376
+ enabled: true,
377
+ graphFingerprint: graph.fingerprint,
378
+ nodeCount: graph.nodes.length,
379
+ cacheKey: params.lastCacheKey,
380
+ resolution: params.lastResolution,
381
+ hiddenInstanceCount,
382
+ focused,
383
+ });
384
+ }
385
+ function isVNodeLike(v) {
386
+ return typeof v === "object" && v !== null && "kind" in v;
387
+ }
388
+ export function applyConstraintOverridesToVNode(params) {
389
+ const vnode = params.runtimeNode.vnode;
390
+ const propsRecord = (vnode.props ?? {});
391
+ const resolved = params.valuesByInstanceId?.get(params.runtimeNode.instanceId);
392
+ const isHidden = params.hiddenInstanceIds.has(params.runtimeNode.instanceId);
393
+ const shouldTraverseChildren = params.constraintNodesWithAffectedDescendants.has(params.runtimeNode.instanceId);
394
+ let propsChanged = false;
395
+ let nextProps = vnode.props;
396
+ let nextPropsMutable = null;
397
+ const ensureMutableProps = () => {
398
+ if (nextPropsMutable === null)
399
+ nextPropsMutable = { ...propsRecord };
400
+ return nextPropsMutable;
401
+ };
402
+ if (resolved) {
403
+ const write = (name) => {
404
+ const raw = resolved[name];
405
+ if (raw === undefined || !Number.isFinite(raw))
406
+ return;
407
+ const nextValue = Math.floor(raw);
408
+ if (propsRecord[name] === nextValue)
409
+ return;
410
+ ensureMutableProps()[name] = nextValue;
411
+ };
412
+ write("width");
413
+ write("height");
414
+ write("minWidth");
415
+ write("maxWidth");
416
+ write("minHeight");
417
+ write("maxHeight");
418
+ write("flexBasis");
419
+ if (typeof resolved.display === "number" && Number.isFinite(resolved.display)) {
420
+ const displayVisible = resolved.display > 0;
421
+ if (propsRecord.display !== displayVisible) {
422
+ ensureMutableProps().display = displayVisible;
423
+ }
424
+ }
425
+ }
426
+ if (isHidden) {
427
+ const mutable = ensureMutableProps();
428
+ mutable.display = false;
429
+ mutable.width = 0;
430
+ mutable.height = 0;
431
+ mutable.minWidth = 0;
432
+ mutable.maxWidth = 0;
433
+ mutable.minHeight = 0;
434
+ mutable.maxHeight = 0;
435
+ mutable.flex = 0;
436
+ mutable.flexBasis = 0;
437
+ }
438
+ const currentChildren = vnode.children;
439
+ let childrenChanged = false;
440
+ let nextChildren = currentChildren;
441
+ if (Array.isArray(currentChildren) && currentChildren.length > 0 && shouldTraverseChildren) {
442
+ let rebuiltChildren = null;
443
+ for (let i = 0; i < currentChildren.length; i++) {
444
+ const childVNode = currentChildren[i];
445
+ const runtimeChild = params.runtimeNode.children[i];
446
+ if (!runtimeChild ||
447
+ !childVNode ||
448
+ !params.affectedPathInstanceIds.has(runtimeChild.instanceId)) {
449
+ if (rebuiltChildren !== null)
450
+ rebuiltChildren[i] = childVNode;
451
+ continue;
452
+ }
453
+ const nextChild = applyConstraintOverridesToVNode({
454
+ runtimeNode: runtimeChild,
455
+ valuesByInstanceId: params.valuesByInstanceId,
456
+ hiddenInstanceIds: params.hiddenInstanceIds,
457
+ affectedPathInstanceIds: params.affectedPathInstanceIds,
458
+ constraintNodesWithAffectedDescendants: params.constraintNodesWithAffectedDescendants,
459
+ });
460
+ if (nextChild !== childVNode) {
461
+ if (rebuiltChildren === null) {
462
+ rebuiltChildren = currentChildren.slice();
463
+ }
464
+ rebuiltChildren[i] = nextChild;
465
+ childrenChanged = true;
466
+ }
467
+ else if (rebuiltChildren !== null) {
468
+ rebuiltChildren[i] = childVNode;
469
+ }
470
+ }
471
+ if (rebuiltChildren !== null && childrenChanged) {
472
+ nextChildren = Object.freeze(rebuiltChildren);
473
+ }
474
+ }
475
+ if (shouldTraverseChildren && vnode.kind === "layer") {
476
+ const content = propsRecord.content;
477
+ const runtimeChild = params.runtimeNode.children[0];
478
+ if (runtimeChild &&
479
+ isVNodeLike(content) &&
480
+ params.affectedPathInstanceIds.has(runtimeChild.instanceId)) {
481
+ const nextContent = applyConstraintOverridesToVNode({
482
+ runtimeNode: runtimeChild,
483
+ valuesByInstanceId: params.valuesByInstanceId,
484
+ hiddenInstanceIds: params.hiddenInstanceIds,
485
+ affectedPathInstanceIds: params.affectedPathInstanceIds,
486
+ constraintNodesWithAffectedDescendants: params.constraintNodesWithAffectedDescendants,
487
+ });
488
+ if (nextContent !== content) {
489
+ ensureMutableProps().content = nextContent;
490
+ }
491
+ }
492
+ }
493
+ else if (shouldTraverseChildren && vnode.kind === "modal") {
494
+ const modalProps = propsRecord;
495
+ let runtimeChildIndex = 0;
496
+ const content = modalProps.content;
497
+ if (isVNodeLike(content)) {
498
+ const runtimeChild = params.runtimeNode.children[runtimeChildIndex];
499
+ runtimeChildIndex++;
500
+ if (runtimeChild && params.affectedPathInstanceIds.has(runtimeChild.instanceId)) {
501
+ const nextContent = applyConstraintOverridesToVNode({
502
+ runtimeNode: runtimeChild,
503
+ valuesByInstanceId: params.valuesByInstanceId,
504
+ hiddenInstanceIds: params.hiddenInstanceIds,
505
+ affectedPathInstanceIds: params.affectedPathInstanceIds,
506
+ constraintNodesWithAffectedDescendants: params.constraintNodesWithAffectedDescendants,
507
+ });
508
+ if (nextContent !== content) {
509
+ ensureMutableProps().content = nextContent;
510
+ }
511
+ }
512
+ }
513
+ const actionsRaw = modalProps.actions;
514
+ if (Array.isArray(actionsRaw) && actionsRaw.length > 0) {
515
+ let nextActions = null;
516
+ for (let i = 0; i < actionsRaw.length; i++) {
517
+ const action = actionsRaw[i];
518
+ if (!isVNodeLike(action)) {
519
+ if (nextActions !== null)
520
+ nextActions[i] = action;
521
+ continue;
522
+ }
523
+ const runtimeChild = params.runtimeNode.children[runtimeChildIndex];
524
+ runtimeChildIndex++;
525
+ if (!runtimeChild || !params.affectedPathInstanceIds.has(runtimeChild.instanceId)) {
526
+ if (nextActions !== null)
527
+ nextActions[i] = action;
528
+ continue;
529
+ }
530
+ const nextAction = applyConstraintOverridesToVNode({
531
+ runtimeNode: runtimeChild,
532
+ valuesByInstanceId: params.valuesByInstanceId,
533
+ hiddenInstanceIds: params.hiddenInstanceIds,
534
+ affectedPathInstanceIds: params.affectedPathInstanceIds,
535
+ constraintNodesWithAffectedDescendants: params.constraintNodesWithAffectedDescendants,
536
+ });
537
+ if (nextAction !== action) {
538
+ if (nextActions === null)
539
+ nextActions = actionsRaw.slice();
540
+ nextActions[i] = nextAction;
541
+ }
542
+ else if (nextActions !== null) {
543
+ nextActions[i] = action;
544
+ }
545
+ }
546
+ if (nextActions !== null) {
547
+ ensureMutableProps().actions = Object.freeze(nextActions);
548
+ }
549
+ }
550
+ }
551
+ if (nextPropsMutable !== null) {
552
+ nextProps = Object.freeze(nextPropsMutable);
553
+ propsChanged = true;
554
+ }
555
+ if (!propsChanged && !childrenChanged)
556
+ return vnode;
557
+ return Object.freeze({
558
+ ...vnode,
559
+ ...(propsChanged ? { props: nextProps } : {}),
560
+ ...(childrenChanged ? { children: nextChildren } : {}),
561
+ });
562
+ }
563
+ //# sourceMappingURL=constraintState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constraintState.js","sourceRoot":"","sources":["../../../src/app/widgetRenderer/constraintState.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,7 @@ export declare function fileNodeGetKey(n: FileNode): string;
5
5
  export declare function fileNodeGetChildren(n: FileNode): readonly FileNode[] | undefined;
6
6
  export declare function fileNodeHasChildren(n: FileNode): boolean;
7
7
  export declare function makeFileNodeFlatCache(dataRef: FileNode | readonly FileNode[], expandedRef: readonly string[], flatNodes: readonly FlattenedNode<FileNode>[]): TreeFlatCache;
8
+ export declare function makeFilePickerFlatCache(dataRef: FileNode | readonly FileNode[], expandedRef: readonly string[], filter: string | undefined, showHidden: boolean | undefined, flatNodes: readonly FlattenedNode<FileNode>[]): TreeFlatCache;
8
9
  export declare function readFileNodeFlatCache(state: TreeLocalState, dataRef: FileNode | readonly FileNode[], expandedRef: readonly string[]): readonly FlattenedNode<FileNode>[] | null;
10
+ export declare function readFilePickerFlatCache(state: TreeLocalState, dataRef: FileNode | readonly FileNode[], expandedRef: readonly string[], filter: string | undefined, showHidden: boolean | undefined): readonly FlattenedNode<FileNode>[] | null;
9
11
  //# sourceMappingURL=fileNodeCache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fileNodeCache.d.ts","sourceRoot":"","sources":["../../../src/app/widgetRenderer/fileNodeCache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAIvD,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAElD;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,GAAG,SAAS,CAEhF;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,QAAQ,GAAG,OAAO,CAExD;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,EACvC,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,SAAS,EAAE,SAAS,aAAa,CAAC,QAAQ,CAAC,EAAE,GAC5C,aAAa,CAUf;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,EACvC,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,SAAS,aAAa,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAO3C"}
1
+ {"version":3,"file":"fileNodeCache.d.ts","sourceRoot":"","sources":["../../../src/app/widgetRenderer/fileNodeCache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAEjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAIvD,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAElD;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,GAAG,SAAS,CAEhF;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,QAAQ,GAAG,OAAO,CAExD;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,EACvC,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,SAAS,EAAE,SAAS,aAAa,CAAC,QAAQ,CAAC,EAAE,GAC5C,aAAa,CAUf;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,EACvC,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,SAAS,EAAE,SAAS,aAAa,CAAC,QAAQ,CAAC,EAAE,GAC5C,aAAa,CAcf;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,EACvC,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,SAAS,aAAa,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAO3C;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,EACvC,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,UAAU,EAAE,OAAO,GAAG,SAAS,GAC9B,SAAS,aAAa,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAS3C"}
@@ -1,3 +1,4 @@
1
+ import { normalizeFilePickerFilter } from "../../widgets/filePicker.js";
1
2
  const FILE_NODE_KIND_DIR = "directory";
2
3
  export function fileNodeGetKey(n) {
3
4
  return n.path;
@@ -19,6 +20,20 @@ export function makeFileNodeFlatCache(dataRef, expandedRef, flatNodes) {
19
20
  flatNodes: flatNodes,
20
21
  });
21
22
  }
23
+ export function makeFilePickerFlatCache(dataRef, expandedRef, filter, showHidden, flatNodes) {
24
+ const normalizedFilter = normalizeFilePickerFilter(filter) ?? undefined;
25
+ return Object.freeze({
26
+ kind: "fileNode",
27
+ dataRef,
28
+ expandedRef,
29
+ filterRef: normalizedFilter,
30
+ showHiddenRef: showHidden === true,
31
+ getKeyRef: null,
32
+ getChildrenRef: null,
33
+ hasChildrenRef: null,
34
+ flatNodes: flatNodes,
35
+ });
36
+ }
22
37
  export function readFileNodeFlatCache(state, dataRef, expandedRef) {
23
38
  const cache = state.flatCache;
24
39
  if (!cache)
@@ -31,4 +46,20 @@ export function readFileNodeFlatCache(state, dataRef, expandedRef) {
31
46
  return null;
32
47
  return cache.flatNodes;
33
48
  }
49
+ export function readFilePickerFlatCache(state, dataRef, expandedRef, filter, showHidden) {
50
+ const cache = state.flatCache;
51
+ if (!cache)
52
+ return null;
53
+ if (cache.kind !== "fileNode")
54
+ return null;
55
+ if (cache.dataRef !== dataRef)
56
+ return null;
57
+ if (cache.expandedRef !== expandedRef)
58
+ return null;
59
+ if (cache.filterRef !== (normalizeFilePickerFilter(filter) ?? undefined))
60
+ return null;
61
+ if (cache.showHiddenRef !== (showHidden === true))
62
+ return null;
63
+ return cache.flatNodes;
64
+ }
34
65
  //# sourceMappingURL=fileNodeCache.js.map