@flanksource/clicky-ui 0.3.40 → 0.3.42

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 (759) hide show
  1. package/README.md +24 -0
  2. package/dist/ai.cjs +14 -0
  3. package/dist/ai.cjs.map +1 -1
  4. package/dist/ai.js +14 -0
  5. package/dist/ai.js.map +1 -1
  6. package/dist/comments/CommentCard.cjs +3 -1
  7. package/dist/comments/CommentCard.cjs.map +1 -1
  8. package/dist/comments/CommentCard.d.ts.map +1 -1
  9. package/dist/comments/CommentCard.js +4 -2
  10. package/dist/comments/CommentCard.js.map +1 -1
  11. package/dist/comments/CommentCardParts.cjs +16 -0
  12. package/dist/comments/CommentCardParts.cjs.map +1 -1
  13. package/dist/comments/CommentCardParts.d.ts +4 -1
  14. package/dist/comments/CommentCardParts.d.ts.map +1 -1
  15. package/dist/comments/CommentCardParts.js +16 -0
  16. package/dist/comments/CommentCardParts.js.map +1 -1
  17. package/dist/comments/comment-types.cjs.map +1 -1
  18. package/dist/comments/comment-types.d.ts +4 -0
  19. package/dist/comments/comment-types.d.ts.map +1 -1
  20. package/dist/comments/comment-types.js.map +1 -1
  21. package/dist/components/AccordionList.cjs +5 -1
  22. package/dist/components/AccordionList.cjs.map +1 -1
  23. package/dist/components/AccordionList.d.ts +3 -1
  24. package/dist/components/AccordionList.d.ts.map +1 -1
  25. package/dist/components/AccordionList.js +5 -1
  26. package/dist/components/AccordionList.js.map +1 -1
  27. package/dist/components/Combobox.cjs +54 -8
  28. package/dist/components/Combobox.cjs.map +1 -1
  29. package/dist/components/Combobox.d.ts.map +1 -1
  30. package/dist/components/Combobox.js +56 -10
  31. package/dist/components/Combobox.js.map +1 -1
  32. package/dist/components/ComboboxMenu.cjs +139 -113
  33. package/dist/components/ComboboxMenu.cjs.map +1 -1
  34. package/dist/components/ComboboxMenu.d.ts +3 -1
  35. package/dist/components/ComboboxMenu.d.ts.map +1 -1
  36. package/dist/components/ComboboxMenu.js +139 -113
  37. package/dist/components/ComboboxMenu.js.map +1 -1
  38. package/dist/components/ComboboxMenuTrigger.cjs +87 -0
  39. package/dist/components/ComboboxMenuTrigger.cjs.map +1 -0
  40. package/dist/components/ComboboxMenuTrigger.d.ts +23 -0
  41. package/dist/components/ComboboxMenuTrigger.d.ts.map +1 -0
  42. package/dist/components/ComboboxMenuTrigger.js +87 -0
  43. package/dist/components/ComboboxMenuTrigger.js.map +1 -0
  44. package/dist/components/JsonSchemaForm.cjs +39 -11
  45. package/dist/components/JsonSchemaForm.cjs.map +1 -1
  46. package/dist/components/JsonSchemaForm.d.ts +1 -1
  47. package/dist/components/JsonSchemaForm.d.ts.map +1 -1
  48. package/dist/components/JsonSchemaForm.js +38 -10
  49. package/dist/components/JsonSchemaForm.js.map +1 -1
  50. package/dist/components/SegmentedControl.cjs +20 -3
  51. package/dist/components/SegmentedControl.cjs.map +1 -1
  52. package/dist/components/SegmentedControl.d.ts +11 -0
  53. package/dist/components/SegmentedControl.d.ts.map +1 -1
  54. package/dist/components/SegmentedControl.js +21 -4
  55. package/dist/components/SegmentedControl.js.map +1 -1
  56. package/dist/components/combobox-types.d.ts +8 -0
  57. package/dist/components/combobox-types.d.ts.map +1 -1
  58. package/dist/components/json-schema-form-accordion-array.cjs +3 -1
  59. package/dist/components/json-schema-form-accordion-array.cjs.map +1 -1
  60. package/dist/components/json-schema-form-accordion-array.d.ts +4 -1
  61. package/dist/components/json-schema-form-accordion-array.d.ts.map +1 -1
  62. package/dist/components/json-schema-form-accordion-array.js +3 -1
  63. package/dist/components/json-schema-form-accordion-array.js.map +1 -1
  64. package/dist/components/json-schema-form-array-view.cjs +63 -0
  65. package/dist/components/json-schema-form-array-view.cjs.map +1 -0
  66. package/dist/components/json-schema-form-array-view.d.ts +21 -0
  67. package/dist/components/json-schema-form-array-view.d.ts.map +1 -0
  68. package/dist/components/json-schema-form-array-view.js +63 -0
  69. package/dist/components/json-schema-form-array-view.js.map +1 -0
  70. package/dist/components/json-schema-form-array.cjs +3 -7
  71. package/dist/components/json-schema-form-array.cjs.map +1 -1
  72. package/dist/components/json-schema-form-array.d.ts.map +1 -1
  73. package/dist/components/json-schema-form-array.js +3 -7
  74. package/dist/components/json-schema-form-array.js.map +1 -1
  75. package/dist/components/json-schema-form-conditionals.cjs +67 -0
  76. package/dist/components/json-schema-form-conditionals.cjs.map +1 -0
  77. package/dist/components/json-schema-form-conditionals.d.ts +9 -0
  78. package/dist/components/json-schema-form-conditionals.d.ts.map +1 -0
  79. package/dist/components/json-schema-form-conditionals.js +67 -0
  80. package/dist/components/json-schema-form-conditionals.js.map +1 -0
  81. package/dist/components/json-schema-form-debug-badge.cjs +108 -0
  82. package/dist/components/json-schema-form-debug-badge.cjs.map +1 -0
  83. package/dist/components/json-schema-form-debug-badge.d.ts +10 -0
  84. package/dist/components/json-schema-form-debug-badge.d.ts.map +1 -0
  85. package/dist/components/json-schema-form-debug-badge.js +108 -0
  86. package/dist/components/json-schema-form-debug-badge.js.map +1 -0
  87. package/dist/components/json-schema-form-debug-glyph-map.cjs +129 -0
  88. package/dist/components/json-schema-form-debug-glyph-map.cjs.map +1 -0
  89. package/dist/components/json-schema-form-debug-glyph-map.d.ts +20 -0
  90. package/dist/components/json-schema-form-debug-glyph-map.d.ts.map +1 -0
  91. package/dist/components/json-schema-form-debug-glyph-map.js +129 -0
  92. package/dist/components/json-schema-form-debug-glyph-map.js.map +1 -0
  93. package/dist/components/json-schema-form-debug-glyph.cjs +13 -0
  94. package/dist/components/json-schema-form-debug-glyph.cjs.map +1 -0
  95. package/dist/components/json-schema-form-debug-glyph.d.ts +6 -0
  96. package/dist/components/json-schema-form-debug-glyph.d.ts.map +1 -0
  97. package/dist/components/json-schema-form-debug-glyph.js +13 -0
  98. package/dist/components/json-schema-form-debug-glyph.js.map +1 -0
  99. package/dist/components/json-schema-form-debug-groups.cjs +56 -0
  100. package/dist/components/json-schema-form-debug-groups.cjs.map +1 -0
  101. package/dist/components/json-schema-form-debug-groups.d.ts +8 -0
  102. package/dist/components/json-schema-form-debug-groups.d.ts.map +1 -0
  103. package/dist/components/json-schema-form-debug-groups.js +56 -0
  104. package/dist/components/json-schema-form-debug-groups.js.map +1 -0
  105. package/dist/components/json-schema-form-debug-keywords.cjs +159 -0
  106. package/dist/components/json-schema-form-debug-keywords.cjs.map +1 -0
  107. package/dist/components/json-schema-form-debug-keywords.d.ts +6 -0
  108. package/dist/components/json-schema-form-debug-keywords.d.ts.map +1 -0
  109. package/dist/components/json-schema-form-debug-keywords.js +159 -0
  110. package/dist/components/json-schema-form-debug-keywords.js.map +1 -0
  111. package/dist/components/json-schema-form-debug-listeners.cjs +102 -0
  112. package/dist/components/json-schema-form-debug-listeners.cjs.map +1 -0
  113. package/dist/components/json-schema-form-debug-listeners.d.ts +6 -0
  114. package/dist/components/json-schema-form-debug-listeners.d.ts.map +1 -0
  115. package/dist/components/json-schema-form-debug-listeners.js +102 -0
  116. package/dist/components/json-schema-form-debug-listeners.js.map +1 -0
  117. package/dist/components/json-schema-form-debug.cjs +31 -0
  118. package/dist/components/json-schema-form-debug.cjs.map +1 -0
  119. package/dist/components/json-schema-form-debug.d.ts +11 -0
  120. package/dist/components/json-schema-form-debug.d.ts.map +1 -0
  121. package/dist/components/json-schema-form-debug.js +31 -0
  122. package/dist/components/json-schema-form-debug.js.map +1 -0
  123. package/dist/components/json-schema-form-defaults.cjs +68 -0
  124. package/dist/components/json-schema-form-defaults.cjs.map +1 -0
  125. package/dist/components/json-schema-form-defaults.d.ts +4 -0
  126. package/dist/components/json-schema-form-defaults.d.ts.map +1 -0
  127. package/dist/components/json-schema-form-defaults.js +68 -0
  128. package/dist/components/json-schema-form-defaults.js.map +1 -0
  129. package/dist/components/json-schema-form-enum-choice.cjs +114 -0
  130. package/dist/components/json-schema-form-enum-choice.cjs.map +1 -0
  131. package/dist/components/json-schema-form-enum-choice.d.ts +14 -0
  132. package/dist/components/json-schema-form-enum-choice.d.ts.map +1 -0
  133. package/dist/components/json-schema-form-enum-choice.js +114 -0
  134. package/dist/components/json-schema-form-enum-choice.js.map +1 -0
  135. package/dist/components/json-schema-form-errors.cjs +49 -31
  136. package/dist/components/json-schema-form-errors.cjs.map +1 -1
  137. package/dist/components/json-schema-form-errors.d.ts +4 -2
  138. package/dist/components/json-schema-form-errors.d.ts.map +1 -1
  139. package/dist/components/json-schema-form-errors.js +51 -33
  140. package/dist/components/json-schema-form-errors.js.map +1 -1
  141. package/dist/components/json-schema-form-fields.cjs +3 -93
  142. package/dist/components/json-schema-form-fields.cjs.map +1 -1
  143. package/dist/components/json-schema-form-fields.d.ts.map +1 -1
  144. package/dist/components/json-schema-form-fields.js +1 -91
  145. package/dist/components/json-schema-form-fields.js.map +1 -1
  146. package/dist/components/json-schema-form-filter.cjs +2 -1
  147. package/dist/components/json-schema-form-filter.cjs.map +1 -1
  148. package/dist/components/json-schema-form-filter.js +2 -1
  149. package/dist/components/json-schema-form-filter.js.map +1 -1
  150. package/dist/components/json-schema-form-item-summary.cjs +6 -2
  151. package/dist/components/json-schema-form-item-summary.cjs.map +1 -1
  152. package/dist/components/json-schema-form-item-summary.d.ts.map +1 -1
  153. package/dist/components/json-schema-form-item-summary.js +6 -2
  154. package/dist/components/json-schema-form-item-summary.js.map +1 -1
  155. package/dist/components/json-schema-form-layout.cjs +28 -19
  156. package/dist/components/json-schema-form-layout.cjs.map +1 -1
  157. package/dist/components/json-schema-form-layout.d.ts +8 -6
  158. package/dist/components/json-schema-form-layout.d.ts.map +1 -1
  159. package/dist/components/json-schema-form-layout.js +29 -20
  160. package/dist/components/json-schema-form-layout.js.map +1 -1
  161. package/dist/components/json-schema-form-listener-paths.cjs +52 -0
  162. package/dist/components/json-schema-form-listener-paths.cjs.map +1 -0
  163. package/dist/components/json-schema-form-listener-paths.d.ts +10 -0
  164. package/dist/components/json-schema-form-listener-paths.d.ts.map +1 -0
  165. package/dist/components/json-schema-form-listener-paths.js +52 -0
  166. package/dist/components/json-schema-form-listener-paths.js.map +1 -0
  167. package/dist/components/json-schema-form-listener-types.d.ts +22 -0
  168. package/dist/components/json-schema-form-listener-types.d.ts.map +1 -0
  169. package/dist/components/json-schema-form-listeners.cjs +256 -0
  170. package/dist/components/json-schema-form-listeners.cjs.map +1 -0
  171. package/dist/components/json-schema-form-listeners.d.ts +13 -0
  172. package/dist/components/json-schema-form-listeners.d.ts.map +1 -0
  173. package/dist/components/json-schema-form-listeners.js +256 -0
  174. package/dist/components/json-schema-form-listeners.js.map +1 -0
  175. package/dist/components/json-schema-form-object-array-view.cjs +62 -0
  176. package/dist/components/json-schema-form-object-array-view.cjs.map +1 -0
  177. package/dist/components/json-schema-form-object-array-view.d.ts +14 -0
  178. package/dist/components/json-schema-form-object-array-view.d.ts.map +1 -0
  179. package/dist/components/json-schema-form-object-array-view.js +62 -0
  180. package/dist/components/json-schema-form-object-array-view.js.map +1 -0
  181. package/dist/components/json-schema-form-object.cjs +3 -0
  182. package/dist/components/json-schema-form-object.cjs.map +1 -1
  183. package/dist/components/json-schema-form-object.d.ts.map +1 -1
  184. package/dist/components/json-schema-form-object.js +3 -0
  185. package/dist/components/json-schema-form-object.js.map +1 -1
  186. package/dist/components/json-schema-form-preferences.cjs +1 -0
  187. package/dist/components/json-schema-form-preferences.cjs.map +1 -1
  188. package/dist/components/json-schema-form-preferences.d.ts +1 -0
  189. package/dist/components/json-schema-form-preferences.d.ts.map +1 -1
  190. package/dist/components/json-schema-form-preferences.js +1 -0
  191. package/dist/components/json-schema-form-preferences.js.map +1 -1
  192. package/dist/components/json-schema-form-render.cjs +36 -12
  193. package/dist/components/json-schema-form-render.cjs.map +1 -1
  194. package/dist/components/json-schema-form-render.d.ts.map +1 -1
  195. package/dist/components/json-schema-form-render.js +38 -14
  196. package/dist/components/json-schema-form-render.js.map +1 -1
  197. package/dist/components/json-schema-form-resolve.cjs +6 -99
  198. package/dist/components/json-schema-form-resolve.cjs.map +1 -1
  199. package/dist/components/json-schema-form-resolve.d.ts +1 -8
  200. package/dist/components/json-schema-form-resolve.d.ts.map +1 -1
  201. package/dist/components/json-schema-form-resolve.js +5 -98
  202. package/dist/components/json-schema-form-resolve.js.map +1 -1
  203. package/dist/components/json-schema-form-runtime-types.d.ts +16 -0
  204. package/dist/components/json-schema-form-runtime-types.d.ts.map +1 -1
  205. package/dist/components/json-schema-form-table-array.cjs +67 -16
  206. package/dist/components/json-schema-form-table-array.cjs.map +1 -1
  207. package/dist/components/json-schema-form-table-array.d.ts +4 -1
  208. package/dist/components/json-schema-form-table-array.d.ts.map +1 -1
  209. package/dist/components/json-schema-form-table-array.js +70 -19
  210. package/dist/components/json-schema-form-table-array.js.map +1 -1
  211. package/dist/components/json-schema-form-tone.cjs +12 -0
  212. package/dist/components/json-schema-form-tone.cjs.map +1 -1
  213. package/dist/components/json-schema-form-tone.js +12 -0
  214. package/dist/components/json-schema-form-tone.js.map +1 -1
  215. package/dist/components/json-schema-form-types.d.ts +17 -0
  216. package/dist/components/json-schema-form-types.d.ts.map +1 -1
  217. package/dist/components/json-schema-form-utils.cjs +7 -1
  218. package/dist/components/json-schema-form-utils.cjs.map +1 -1
  219. package/dist/components/json-schema-form-utils.d.ts +2 -1
  220. package/dist/components/json-schema-form-utils.d.ts.map +1 -1
  221. package/dist/components/json-schema-form-utils.js +7 -1
  222. package/dist/components/json-schema-form-utils.js.map +1 -1
  223. package/dist/components.cjs +3 -2
  224. package/dist/components.cjs.map +1 -1
  225. package/dist/components.d.ts +3 -2
  226. package/dist/components.d.ts.map +1 -1
  227. package/dist/components.js +2 -1
  228. package/dist/components.js.map +1 -1
  229. package/dist/data/DataTable.cjs +9 -3
  230. package/dist/data/DataTable.cjs.map +1 -1
  231. package/dist/data/DataTable.d.ts +6 -0
  232. package/dist/data/DataTable.d.ts.map +1 -1
  233. package/dist/data/DataTable.js +9 -3
  234. package/dist/data/DataTable.js.map +1 -1
  235. package/dist/data/FixtureEditor/FixtureEditor.cjs +43 -24
  236. package/dist/data/FixtureEditor/FixtureEditor.cjs.map +1 -1
  237. package/dist/data/FixtureEditor/FixtureEditor.d.ts.map +1 -1
  238. package/dist/data/FixtureEditor/FixtureEditor.js +43 -24
  239. package/dist/data/FixtureEditor/FixtureEditor.js.map +1 -1
  240. package/dist/data/GraphDiagram.cjs +125 -138
  241. package/dist/data/GraphDiagram.cjs.map +1 -1
  242. package/dist/data/GraphDiagram.d.ts +30 -23
  243. package/dist/data/GraphDiagram.d.ts.map +1 -1
  244. package/dist/data/GraphDiagram.js +128 -141
  245. package/dist/data/GraphDiagram.js.map +1 -1
  246. package/dist/data/GraphDiagramEdges.cjs +208 -0
  247. package/dist/data/GraphDiagramEdges.cjs.map +1 -0
  248. package/dist/data/GraphDiagramEdges.d.ts +40 -0
  249. package/dist/data/GraphDiagramEdges.d.ts.map +1 -0
  250. package/dist/data/GraphDiagramEdges.js +208 -0
  251. package/dist/data/GraphDiagramEdges.js.map +1 -0
  252. package/dist/data/GraphDiagramNodes.cjs +142 -0
  253. package/dist/data/GraphDiagramNodes.cjs.map +1 -0
  254. package/dist/data/GraphDiagramNodes.d.ts +22 -0
  255. package/dist/data/GraphDiagramNodes.d.ts.map +1 -0
  256. package/dist/data/GraphDiagramNodes.js +142 -0
  257. package/dist/data/GraphDiagramNodes.js.map +1 -0
  258. package/dist/data/Tree.cjs +10 -2
  259. package/dist/data/Tree.cjs.map +1 -1
  260. package/dist/data/Tree.d.ts +6 -1
  261. package/dist/data/Tree.d.ts.map +1 -1
  262. package/dist/data/Tree.js +10 -2
  263. package/dist/data/Tree.js.map +1 -1
  264. package/dist/data/ai/PromptRunEditor/RuntimeRows.cjs +8 -3
  265. package/dist/data/ai/PromptRunEditor/RuntimeRows.cjs.map +1 -1
  266. package/dist/data/ai/PromptRunEditor/RuntimeRows.d.ts.map +1 -1
  267. package/dist/data/ai/PromptRunEditor/RuntimeRows.js +8 -3
  268. package/dist/data/ai/PromptRunEditor/RuntimeRows.js.map +1 -1
  269. package/dist/data/ai/PromptRunEditor/index.cjs +37 -43
  270. package/dist/data/ai/PromptRunEditor/index.cjs.map +1 -1
  271. package/dist/data/ai/PromptRunEditor/index.d.ts +3 -1
  272. package/dist/data/ai/PromptRunEditor/index.d.ts.map +1 -1
  273. package/dist/data/ai/PromptRunEditor/index.js +38 -44
  274. package/dist/data/ai/PromptRunEditor/index.js.map +1 -1
  275. package/dist/data/ai/PromptRunEditor/runtimeActions.cjs +16 -5
  276. package/dist/data/ai/PromptRunEditor/runtimeActions.cjs.map +1 -1
  277. package/dist/data/ai/PromptRunEditor/runtimeActions.d.ts +4 -1
  278. package/dist/data/ai/PromptRunEditor/runtimeActions.d.ts.map +1 -1
  279. package/dist/data/ai/PromptRunEditor/runtimeActions.js +17 -6
  280. package/dist/data/ai/PromptRunEditor/runtimeActions.js.map +1 -1
  281. package/dist/data/ai/SessionInspector.approvals-model.cjs +12 -0
  282. package/dist/data/ai/SessionInspector.approvals-model.cjs.map +1 -1
  283. package/dist/data/ai/SessionInspector.approvals-model.d.ts +11 -2
  284. package/dist/data/ai/SessionInspector.approvals-model.d.ts.map +1 -1
  285. package/dist/data/ai/SessionInspector.approvals-model.js +12 -0
  286. package/dist/data/ai/SessionInspector.approvals-model.js.map +1 -1
  287. package/dist/data/ai/SessionInspector.approvals.cjs +25 -1
  288. package/dist/data/ai/SessionInspector.approvals.cjs.map +1 -1
  289. package/dist/data/ai/SessionInspector.approvals.d.ts.map +1 -1
  290. package/dist/data/ai/SessionInspector.approvals.js +26 -2
  291. package/dist/data/ai/SessionInspector.approvals.js.map +1 -1
  292. package/dist/data/ai/SessionInspector.cjs +143 -167
  293. package/dist/data/ai/SessionInspector.cjs.map +1 -1
  294. package/dist/data/ai/SessionInspector.collection-types.d.ts +5 -0
  295. package/dist/data/ai/SessionInspector.collection-types.d.ts.map +1 -1
  296. package/dist/data/ai/SessionInspector.collection.cjs +18 -5
  297. package/dist/data/ai/SessionInspector.collection.cjs.map +1 -1
  298. package/dist/data/ai/SessionInspector.collection.d.ts +2 -0
  299. package/dist/data/ai/SessionInspector.collection.d.ts.map +1 -1
  300. package/dist/data/ai/SessionInspector.collection.fixtures.d.ts +6 -0
  301. package/dist/data/ai/SessionInspector.collection.fixtures.d.ts.map +1 -0
  302. package/dist/data/ai/SessionInspector.collection.js +18 -5
  303. package/dist/data/ai/SessionInspector.collection.js.map +1 -1
  304. package/dist/data/ai/SessionInspector.d.ts +24 -2
  305. package/dist/data/ai/SessionInspector.d.ts.map +1 -1
  306. package/dist/data/ai/SessionInspector.hierarchy-state.cjs +105 -7
  307. package/dist/data/ai/SessionInspector.hierarchy-state.cjs.map +1 -1
  308. package/dist/data/ai/SessionInspector.hierarchy-state.d.ts +12 -1
  309. package/dist/data/ai/SessionInspector.hierarchy-state.d.ts.map +1 -1
  310. package/dist/data/ai/SessionInspector.hierarchy-state.js +107 -9
  311. package/dist/data/ai/SessionInspector.hierarchy-state.js.map +1 -1
  312. package/dist/data/ai/SessionInspector.hierarchy.cjs +1 -1
  313. package/dist/data/ai/SessionInspector.hierarchy.cjs.map +1 -1
  314. package/dist/data/ai/SessionInspector.hierarchy.js +1 -1
  315. package/dist/data/ai/SessionInspector.hierarchy.js.map +1 -1
  316. package/dist/data/ai/SessionInspector.js +144 -168
  317. package/dist/data/ai/SessionInspector.js.map +1 -1
  318. package/dist/data/ai/SessionInspector.legacy.cjs +116 -0
  319. package/dist/data/ai/SessionInspector.legacy.cjs.map +1 -0
  320. package/dist/data/ai/SessionInspector.legacy.d.ts +19 -0
  321. package/dist/data/ai/SessionInspector.legacy.d.ts.map +1 -0
  322. package/dist/data/ai/SessionInspector.legacy.js +116 -0
  323. package/dist/data/ai/SessionInspector.legacy.js.map +1 -0
  324. package/dist/data/ai/SessionInspector.panels.cjs +3 -0
  325. package/dist/data/ai/SessionInspector.panels.cjs.map +1 -1
  326. package/dist/data/ai/SessionInspector.panels.d.ts.map +1 -1
  327. package/dist/data/ai/SessionInspector.panels.js +3 -0
  328. package/dist/data/ai/SessionInspector.panels.js.map +1 -1
  329. package/dist/data/ai/SessionInspector.plan.cjs +29 -12
  330. package/dist/data/ai/SessionInspector.plan.cjs.map +1 -1
  331. package/dist/data/ai/SessionInspector.plan.d.ts.map +1 -1
  332. package/dist/data/ai/SessionInspector.plan.js +30 -13
  333. package/dist/data/ai/SessionInspector.plan.js.map +1 -1
  334. package/dist/data/ai/SessionInspector.remote-view.cjs +44 -0
  335. package/dist/data/ai/SessionInspector.remote-view.cjs.map +1 -0
  336. package/dist/data/ai/SessionInspector.remote-view.d.ts +11 -0
  337. package/dist/data/ai/SessionInspector.remote-view.d.ts.map +1 -0
  338. package/dist/data/ai/SessionInspector.remote-view.js +44 -0
  339. package/dist/data/ai/SessionInspector.remote-view.js.map +1 -0
  340. package/dist/data/ai/SessionInspector.remote.cjs +275 -0
  341. package/dist/data/ai/SessionInspector.remote.cjs.map +1 -0
  342. package/dist/data/ai/SessionInspector.remote.d.ts +57 -0
  343. package/dist/data/ai/SessionInspector.remote.d.ts.map +1 -0
  344. package/dist/data/ai/SessionInspector.remote.js +275 -0
  345. package/dist/data/ai/SessionInspector.remote.js.map +1 -0
  346. package/dist/data/ai/SessionInspector.summary.cjs +9 -159
  347. package/dist/data/ai/SessionInspector.summary.cjs.map +1 -1
  348. package/dist/data/ai/SessionInspector.summary.d.ts +0 -3
  349. package/dist/data/ai/SessionInspector.summary.d.ts.map +1 -1
  350. package/dist/data/ai/SessionInspector.summary.js +11 -161
  351. package/dist/data/ai/SessionInspector.summary.js.map +1 -1
  352. package/dist/data/ai/SessionInspector.tab-state.cjs +15 -0
  353. package/dist/data/ai/SessionInspector.tab-state.cjs.map +1 -0
  354. package/dist/data/ai/SessionInspector.tab-state.d.ts +3 -0
  355. package/dist/data/ai/SessionInspector.tab-state.d.ts.map +1 -0
  356. package/dist/data/ai/SessionInspector.tab-state.js +15 -0
  357. package/dist/data/ai/SessionInspector.tab-state.js.map +1 -0
  358. package/dist/data/ai/SessionInspector.tabs.model.cjs +31 -18
  359. package/dist/data/ai/SessionInspector.tabs.model.cjs.map +1 -1
  360. package/dist/data/ai/SessionInspector.tabs.model.d.ts +3 -1
  361. package/dist/data/ai/SessionInspector.tabs.model.d.ts.map +1 -1
  362. package/dist/data/ai/SessionInspector.tabs.model.js +32 -19
  363. package/dist/data/ai/SessionInspector.tabs.model.js.map +1 -1
  364. package/dist/data/ai/SessionInspector.transcript.cjs +4 -0
  365. package/dist/data/ai/SessionInspector.transcript.cjs.map +1 -1
  366. package/dist/data/ai/SessionInspector.transcript.d.ts.map +1 -1
  367. package/dist/data/ai/SessionInspector.transcript.js +4 -0
  368. package/dist/data/ai/SessionInspector.transcript.js.map +1 -1
  369. package/dist/data/ai/SessionInspector.verification.cjs +53 -0
  370. package/dist/data/ai/SessionInspector.verification.cjs.map +1 -0
  371. package/dist/data/ai/SessionInspector.verification.d.ts +7 -0
  372. package/dist/data/ai/SessionInspector.verification.d.ts.map +1 -0
  373. package/dist/data/ai/SessionInspector.verification.js +53 -0
  374. package/dist/data/ai/SessionInspector.verification.js.map +1 -0
  375. package/dist/data/ai/SessionViewer.approval-body.cjs +146 -0
  376. package/dist/data/ai/SessionViewer.approval-body.cjs.map +1 -0
  377. package/dist/data/ai/SessionViewer.approval-body.d.ts +11 -0
  378. package/dist/data/ai/SessionViewer.approval-body.d.ts.map +1 -0
  379. package/dist/data/ai/SessionViewer.approval-body.js +146 -0
  380. package/dist/data/ai/SessionViewer.approval-body.js.map +1 -0
  381. package/dist/data/ai/SessionViewer.approval-forms.cjs +150 -0
  382. package/dist/data/ai/SessionViewer.approval-forms.cjs.map +1 -0
  383. package/dist/data/ai/SessionViewer.approval-forms.d.ts +23 -0
  384. package/dist/data/ai/SessionViewer.approval-forms.d.ts.map +1 -0
  385. package/dist/data/ai/SessionViewer.approval-forms.js +150 -0
  386. package/dist/data/ai/SessionViewer.approval-forms.js.map +1 -0
  387. package/dist/data/ai/SessionViewer.cjs +57 -20
  388. package/dist/data/ai/SessionViewer.cjs.map +1 -1
  389. package/dist/data/ai/SessionViewer.d.ts +13 -3
  390. package/dist/data/ai/SessionViewer.d.ts.map +1 -1
  391. package/dist/data/ai/SessionViewer.decision-controls.cjs +313 -0
  392. package/dist/data/ai/SessionViewer.decision-controls.cjs.map +1 -0
  393. package/dist/data/ai/SessionViewer.decision-controls.d.ts +43 -0
  394. package/dist/data/ai/SessionViewer.decision-controls.d.ts.map +1 -0
  395. package/dist/data/ai/SessionViewer.decision-controls.js +313 -0
  396. package/dist/data/ai/SessionViewer.decision-controls.js.map +1 -0
  397. package/dist/data/ai/SessionViewer.decision.cjs +21 -0
  398. package/dist/data/ai/SessionViewer.decision.cjs.map +1 -0
  399. package/dist/data/ai/SessionViewer.decision.d.ts +12 -0
  400. package/dist/data/ai/SessionViewer.decision.d.ts.map +1 -0
  401. package/dist/data/ai/SessionViewer.decision.js +21 -0
  402. package/dist/data/ai/SessionViewer.decision.js.map +1 -0
  403. package/dist/data/ai/SessionViewer.input.cjs +14 -0
  404. package/dist/data/ai/SessionViewer.input.cjs.map +1 -1
  405. package/dist/data/ai/SessionViewer.input.d.ts +5 -0
  406. package/dist/data/ai/SessionViewer.input.d.ts.map +1 -1
  407. package/dist/data/ai/SessionViewer.input.js +14 -0
  408. package/dist/data/ai/SessionViewer.input.js.map +1 -1
  409. package/dist/data/ai/SessionViewer.js +58 -21
  410. package/dist/data/ai/SessionViewer.js.map +1 -1
  411. package/dist/data/ai/SessionViewer.model.cjs +7 -1
  412. package/dist/data/ai/SessionViewer.model.cjs.map +1 -1
  413. package/dist/data/ai/SessionViewer.model.d.ts +25 -3
  414. package/dist/data/ai/SessionViewer.model.d.ts.map +1 -1
  415. package/dist/data/ai/SessionViewer.model.js +7 -1
  416. package/dist/data/ai/SessionViewer.model.js.map +1 -1
  417. package/dist/data/ai/SessionViewer.rows.cjs +6 -3
  418. package/dist/data/ai/SessionViewer.rows.cjs.map +1 -1
  419. package/dist/data/ai/SessionViewer.rows.d.ts +2 -1
  420. package/dist/data/ai/SessionViewer.rows.d.ts.map +1 -1
  421. package/dist/data/ai/SessionViewer.rows.js +6 -3
  422. package/dist/data/ai/SessionViewer.rows.js.map +1 -1
  423. package/dist/data/ai/SessionViewer.tool-row.cjs +29 -237
  424. package/dist/data/ai/SessionViewer.tool-row.cjs.map +1 -1
  425. package/dist/data/ai/SessionViewer.tool-row.d.ts.map +1 -1
  426. package/dist/data/ai/SessionViewer.tool-row.js +27 -235
  427. package/dist/data/ai/SessionViewer.tool-row.js.map +1 -1
  428. package/dist/data/ai/SessionViewer.unified.d.ts +17 -0
  429. package/dist/data/ai/SessionViewer.unified.d.ts.map +1 -1
  430. package/dist/data/ai/SessionViewerMenu.cjs +8 -2
  431. package/dist/data/ai/SessionViewerMenu.cjs.map +1 -1
  432. package/dist/data/ai/SessionViewerMenu.d.ts +4 -1
  433. package/dist/data/ai/SessionViewerMenu.d.ts.map +1 -1
  434. package/dist/data/ai/SessionViewerMenu.js +8 -2
  435. package/dist/data/ai/SessionViewerMenu.js.map +1 -1
  436. package/dist/data/ai/SpecRuntimeEditor/CommitSection.cjs +28 -17
  437. package/dist/data/ai/SpecRuntimeEditor/CommitSection.cjs.map +1 -1
  438. package/dist/data/ai/SpecRuntimeEditor/CommitSection.d.ts +10 -2
  439. package/dist/data/ai/SpecRuntimeEditor/CommitSection.d.ts.map +1 -1
  440. package/dist/data/ai/SpecRuntimeEditor/CommitSection.js +29 -18
  441. package/dist/data/ai/SpecRuntimeEditor/CommitSection.js.map +1 -1
  442. package/dist/data/ai/SpecRuntimeEditor/index.cjs +9 -1
  443. package/dist/data/ai/SpecRuntimeEditor/index.cjs.map +1 -1
  444. package/dist/data/ai/SpecRuntimeEditor/index.d.ts +9 -2
  445. package/dist/data/ai/SpecRuntimeEditor/index.d.ts.map +1 -1
  446. package/dist/data/ai/SpecRuntimeEditor/index.js +9 -1
  447. package/dist/data/ai/SpecRuntimeEditor/index.js.map +1 -1
  448. package/dist/data/ai/SpecRuntimeEditor/permission-mode-visuals.cjs +1 -1
  449. package/dist/data/ai/SpecRuntimeEditor/permission-mode-visuals.js +1 -1
  450. package/dist/data/ai/SpecRuntimeEditor/summaries.cjs.map +1 -1
  451. package/dist/data/ai/SpecRuntimeEditor/summaries.d.ts +8 -2
  452. package/dist/data/ai/SpecRuntimeEditor/summaries.d.ts.map +1 -1
  453. package/dist/data/ai/SpecRuntimeEditor/summaries.js.map +1 -1
  454. package/dist/data/ai/SpecRuntimeEditor/update.cjs +14 -6
  455. package/dist/data/ai/SpecRuntimeEditor/update.cjs.map +1 -1
  456. package/dist/data/ai/SpecRuntimeEditor/update.d.ts +1 -0
  457. package/dist/data/ai/SpecRuntimeEditor/update.d.ts.map +1 -1
  458. package/dist/data/ai/SpecRuntimeEditor/update.js +14 -6
  459. package/dist/data/ai/SpecRuntimeEditor/update.js.map +1 -1
  460. package/dist/data/ai/approval-request.cjs +75 -0
  461. package/dist/data/ai/approval-request.cjs.map +1 -0
  462. package/dist/data/ai/approval-request.d.ts +155 -0
  463. package/dist/data/ai/approval-request.d.ts.map +1 -0
  464. package/dist/data/ai/approval-request.js +75 -0
  465. package/dist/data/ai/approval-request.js.map +1 -0
  466. package/dist/data/ai/index.d.ts +6 -1
  467. package/dist/data/ai/index.d.ts.map +1 -1
  468. package/dist/data/ai/runtime-preset-menu/SavePresetDialog.cjs +125 -0
  469. package/dist/data/ai/runtime-preset-menu/SavePresetDialog.cjs.map +1 -0
  470. package/dist/data/ai/runtime-preset-menu/SavePresetDialog.d.ts +11 -0
  471. package/dist/data/ai/runtime-preset-menu/SavePresetDialog.d.ts.map +1 -0
  472. package/dist/data/ai/runtime-preset-menu/SavePresetDialog.js +125 -0
  473. package/dist/data/ai/runtime-preset-menu/SavePresetDialog.js.map +1 -0
  474. package/dist/data/ai/runtime-preset-menu/index.d.ts +3 -0
  475. package/dist/data/ai/runtime-preset-menu/index.d.ts.map +1 -0
  476. package/dist/data/ai/runtime-preset-menu/model.cjs +73 -0
  477. package/dist/data/ai/runtime-preset-menu/model.cjs.map +1 -0
  478. package/dist/data/ai/runtime-preset-menu/model.d.ts +13 -0
  479. package/dist/data/ai/runtime-preset-menu/model.d.ts.map +1 -0
  480. package/dist/data/ai/runtime-preset-menu/model.js +73 -0
  481. package/dist/data/ai/runtime-preset-menu/model.js.map +1 -0
  482. package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.cjs +149 -0
  483. package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.cjs.map +1 -0
  484. package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.d.ts +15 -0
  485. package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.d.ts.map +1 -0
  486. package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.js +149 -0
  487. package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.js.map +1 -0
  488. package/dist/data/ai/runtime-spec-fields.cjs +166 -0
  489. package/dist/data/ai/runtime-spec-fields.cjs.map +1 -0
  490. package/dist/data/ai/runtime-spec-fields.d.ts +13 -0
  491. package/dist/data/ai/runtime-spec-fields.d.ts.map +1 -0
  492. package/dist/data/ai/runtime-spec-fields.js +166 -0
  493. package/dist/data/ai/runtime-spec-fields.js.map +1 -0
  494. package/dist/data/ai/session-categories.cjs +4 -0
  495. package/dist/data/ai/session-categories.cjs.map +1 -1
  496. package/dist/data/ai/session-categories.d.ts +1 -0
  497. package/dist/data/ai/session-categories.d.ts.map +1 -1
  498. package/dist/data/ai/session-categories.js +4 -0
  499. package/dist/data/ai/session-categories.js.map +1 -1
  500. package/dist/data/ai/use-session-scroll.cjs +49 -21
  501. package/dist/data/ai/use-session-scroll.cjs.map +1 -1
  502. package/dist/data/ai/use-session-scroll.d.ts +2 -0
  503. package/dist/data/ai/use-session-scroll.d.ts.map +1 -1
  504. package/dist/data/ai/use-session-scroll.js +49 -21
  505. package/dist/data/ai/use-session-scroll.js.map +1 -1
  506. package/dist/data/chat/Chat.runtime.cjs +1 -1
  507. package/dist/data/chat/Chat.runtime.cjs.map +1 -1
  508. package/dist/data/chat/Chat.runtime.d.ts.map +1 -1
  509. package/dist/data/chat/Chat.runtime.js +1 -1
  510. package/dist/data/chat/Chat.runtime.js.map +1 -1
  511. package/dist/data/graph-columns-layout.cjs +216 -0
  512. package/dist/data/graph-columns-layout.cjs.map +1 -0
  513. package/dist/data/graph-columns-layout.d.ts +56 -0
  514. package/dist/data/graph-columns-layout.d.ts.map +1 -0
  515. package/dist/data/graph-columns-layout.js +216 -0
  516. package/dist/data/graph-columns-layout.js.map +1 -0
  517. package/dist/data/graph-diagram-model.cjs +73 -0
  518. package/dist/data/graph-diagram-model.cjs.map +1 -0
  519. package/dist/data/graph-diagram-model.d.ts +90 -0
  520. package/dist/data/graph-diagram-model.d.ts.map +1 -0
  521. package/dist/data/graph-diagram-model.js +73 -0
  522. package/dist/data/graph-diagram-model.js.map +1 -0
  523. package/dist/data/graph-edge-routing.cjs +235 -0
  524. package/dist/data/graph-edge-routing.cjs.map +1 -0
  525. package/dist/data/graph-edge-routing.d.ts +73 -0
  526. package/dist/data/graph-edge-routing.d.ts.map +1 -0
  527. package/dist/data/graph-edge-routing.js +235 -0
  528. package/dist/data/graph-edge-routing.js.map +1 -0
  529. package/dist/data/graph-layout.cjs +0 -82
  530. package/dist/data/graph-layout.cjs.map +1 -1
  531. package/dist/data/graph-layout.d.ts +1 -28
  532. package/dist/data/graph-layout.d.ts.map +1 -1
  533. package/dist/data/graph-layout.js +1 -83
  534. package/dist/data/graph-layout.js.map +1 -1
  535. package/dist/data/har/HarPanel.cjs +129 -33
  536. package/dist/data/har/HarPanel.cjs.map +1 -1
  537. package/dist/data/har/HarPanel.d.ts +13 -1
  538. package/dist/data/har/HarPanel.d.ts.map +1 -1
  539. package/dist/data/har/HarPanel.js +130 -34
  540. package/dist/data/har/HarPanel.js.map +1 -1
  541. package/dist/data/har/fixtures.d.ts +12 -0
  542. package/dist/data/har/fixtures.d.ts.map +1 -1
  543. package/dist/data/har/types.d.ts +12 -0
  544. package/dist/data/har/types.d.ts.map +1 -1
  545. package/dist/data/runtime/RuntimeBar.cjs +67 -84
  546. package/dist/data/runtime/RuntimeBar.cjs.map +1 -1
  547. package/dist/data/runtime/RuntimeBar.d.ts +4 -5
  548. package/dist/data/runtime/RuntimeBar.d.ts.map +1 -1
  549. package/dist/data/runtime/RuntimeBar.fields.cjs +170 -0
  550. package/dist/data/runtime/RuntimeBar.fields.cjs.map +1 -0
  551. package/dist/data/runtime/RuntimeBar.fields.d.ts +16 -0
  552. package/dist/data/runtime/RuntimeBar.fields.d.ts.map +1 -0
  553. package/dist/data/runtime/RuntimeBar.fields.js +170 -0
  554. package/dist/data/runtime/RuntimeBar.fields.js.map +1 -0
  555. package/dist/data/runtime/RuntimeBar.js +70 -87
  556. package/dist/data/runtime/RuntimeBar.js.map +1 -1
  557. package/dist/data/runtime/RuntimeBar.selection.cjs +56 -0
  558. package/dist/data/runtime/RuntimeBar.selection.cjs.map +1 -0
  559. package/dist/data/runtime/RuntimeBar.selection.d.ts +20 -0
  560. package/dist/data/runtime/RuntimeBar.selection.d.ts.map +1 -0
  561. package/dist/data/runtime/RuntimeBar.selection.js +56 -0
  562. package/dist/data/runtime/RuntimeBar.selection.js.map +1 -0
  563. package/dist/data/runtime/RuntimeBarActions.cjs +10 -6
  564. package/dist/data/runtime/RuntimeBarActions.cjs.map +1 -1
  565. package/dist/data/runtime/RuntimeBarActions.d.ts +8 -1
  566. package/dist/data/runtime/RuntimeBarActions.d.ts.map +1 -1
  567. package/dist/data/runtime/RuntimeBarActions.js +10 -6
  568. package/dist/data/runtime/RuntimeBarActions.js.map +1 -1
  569. package/dist/data/runtime/RuntimeBarIdentity.cjs +166 -0
  570. package/dist/data/runtime/RuntimeBarIdentity.cjs.map +1 -0
  571. package/dist/data/runtime/RuntimeBarIdentity.d.ts +25 -0
  572. package/dist/data/runtime/RuntimeBarIdentity.d.ts.map +1 -0
  573. package/dist/data/runtime/RuntimeBarIdentity.js +166 -0
  574. package/dist/data/runtime/RuntimeBarIdentity.js.map +1 -0
  575. package/dist/data/runtime/RuntimeBarLayout.cjs +95 -0
  576. package/dist/data/runtime/RuntimeBarLayout.cjs.map +1 -0
  577. package/dist/data/runtime/RuntimeBarLayout.d.ts +9 -0
  578. package/dist/data/runtime/RuntimeBarLayout.d.ts.map +1 -0
  579. package/dist/data/runtime/RuntimeBarLayout.js +95 -0
  580. package/dist/data/runtime/RuntimeBarLayout.js.map +1 -0
  581. package/dist/data/runtime/RuntimeBarSegment.cjs +25 -14
  582. package/dist/data/runtime/RuntimeBarSegment.cjs.map +1 -1
  583. package/dist/data/runtime/RuntimeBarSegment.d.ts +4 -0
  584. package/dist/data/runtime/RuntimeBarSegment.d.ts.map +1 -1
  585. package/dist/data/runtime/RuntimeBarSegment.js +25 -14
  586. package/dist/data/runtime/RuntimeBarSegment.js.map +1 -1
  587. package/dist/data/runtime/RuntimeLimitInput.cjs +41 -0
  588. package/dist/data/runtime/RuntimeLimitInput.cjs.map +1 -0
  589. package/dist/data/runtime/RuntimeLimitInput.d.ts +9 -0
  590. package/dist/data/runtime/RuntimeLimitInput.d.ts.map +1 -0
  591. package/dist/data/runtime/RuntimeLimitInput.js +41 -0
  592. package/dist/data/runtime/RuntimeLimitInput.js.map +1 -0
  593. package/dist/data/runtime/use-runtime-bar-overflow.cjs +70 -0
  594. package/dist/data/runtime/use-runtime-bar-overflow.cjs.map +1 -0
  595. package/dist/data/runtime/use-runtime-bar-overflow.d.ts +13 -0
  596. package/dist/data/runtime/use-runtime-bar-overflow.d.ts.map +1 -0
  597. package/dist/data/runtime/use-runtime-bar-overflow.js +70 -0
  598. package/dist/data/runtime/use-runtime-bar-overflow.js.map +1 -0
  599. package/dist/data/use-edge-focus.cjs +20 -0
  600. package/dist/data/use-edge-focus.cjs.map +1 -0
  601. package/dist/data/use-edge-focus.d.ts +23 -0
  602. package/dist/data/use-edge-focus.d.ts.map +1 -0
  603. package/dist/data/use-edge-focus.js +20 -0
  604. package/dist/data/use-edge-focus.js.map +1 -0
  605. package/dist/data/use-pan-zoom.cjs +159 -0
  606. package/dist/data/use-pan-zoom.cjs.map +1 -0
  607. package/dist/data/use-pan-zoom.d.ts +79 -0
  608. package/dist/data/use-pan-zoom.d.ts.map +1 -0
  609. package/dist/data/use-pan-zoom.js +159 -0
  610. package/dist/data/use-pan-zoom.js.map +1 -0
  611. package/dist/data/version-info.cjs +3 -3
  612. package/dist/data/version-info.js +3 -3
  613. package/dist/data.cjs +5 -1
  614. package/dist/data.cjs.map +1 -1
  615. package/dist/data.d.ts +4 -3
  616. package/dist/data.d.ts.map +1 -1
  617. package/dist/data.js +6 -2
  618. package/dist/data.js.map +1 -1
  619. package/dist/devtools/useDebugStream.cjs +5 -1
  620. package/dist/devtools/useDebugStream.cjs.map +1 -1
  621. package/dist/devtools/useDebugStream.d.ts.map +1 -1
  622. package/dist/devtools/useDebugStream.js +6 -2
  623. package/dist/devtools/useDebugStream.js.map +1 -1
  624. package/dist/hooks/event-source-provider.cjs +9 -0
  625. package/dist/hooks/event-source-provider.cjs.map +1 -0
  626. package/dist/hooks/event-source-provider.d.ts +15 -0
  627. package/dist/hooks/event-source-provider.d.ts.map +1 -0
  628. package/dist/hooks/event-source-provider.js +9 -0
  629. package/dist/hooks/event-source-provider.js.map +1 -0
  630. package/dist/hooks/event-source.cjs +11 -0
  631. package/dist/hooks/event-source.cjs.map +1 -0
  632. package/dist/hooks/event-source.d.ts +22 -0
  633. package/dist/hooks/event-source.d.ts.map +1 -0
  634. package/dist/hooks/event-source.js +11 -0
  635. package/dist/hooks/event-source.js.map +1 -0
  636. package/dist/hooks/use-log-tail.cjs +5 -1
  637. package/dist/hooks/use-log-tail.cjs.map +1 -1
  638. package/dist/hooks/use-log-tail.d.ts.map +1 -1
  639. package/dist/hooks/use-log-tail.js +5 -1
  640. package/dist/hooks/use-log-tail.js.map +1 -1
  641. package/dist/hooks/use-prompts.cjs +5 -1
  642. package/dist/hooks/use-prompts.cjs.map +1 -1
  643. package/dist/hooks/use-prompts.d.ts.map +1 -1
  644. package/dist/hooks/use-prompts.js +6 -2
  645. package/dist/hooks/use-prompts.js.map +1 -1
  646. package/dist/hooks/use-task-run.cjs +9 -2
  647. package/dist/hooks/use-task-run.cjs.map +1 -1
  648. package/dist/hooks/use-task-run.d.ts.map +1 -1
  649. package/dist/hooks/use-task-run.js +10 -3
  650. package/dist/hooks/use-task-run.js.map +1 -1
  651. package/dist/hooks.cjs +4 -0
  652. package/dist/hooks.cjs.map +1 -1
  653. package/dist/hooks.d.ts +2 -0
  654. package/dist/hooks.d.ts.map +1 -1
  655. package/dist/hooks.js +4 -0
  656. package/dist/hooks.js.map +1 -1
  657. package/dist/icons/programmingCatalog.cjs +34 -34
  658. package/dist/icons/programmingCatalog.cjs.map +1 -1
  659. package/dist/icons/programmingCatalog.js +34 -34
  660. package/dist/icons/programmingCatalog.js.map +1 -1
  661. package/dist/index.cjs +14 -3
  662. package/dist/index.cjs.map +1 -1
  663. package/dist/index.js +14 -3
  664. package/dist/index.js.map +1 -1
  665. package/dist/monaco/MonacoEditor.cjs +4 -1
  666. package/dist/monaco/MonacoEditor.cjs.map +1 -1
  667. package/dist/monaco/MonacoEditor.d.ts +1 -1
  668. package/dist/monaco/MonacoEditor.d.ts.map +1 -1
  669. package/dist/monaco/MonacoEditor.js +4 -1
  670. package/dist/monaco/MonacoEditor.js.map +1 -1
  671. package/dist/monaco/types.d.ts +2 -1
  672. package/dist/monaco/types.d.ts.map +1 -1
  673. package/dist/overlay/CommandPalette.cjs +14 -4
  674. package/dist/overlay/CommandPalette.cjs.map +1 -1
  675. package/dist/overlay/CommandPalette.d.ts +5 -1
  676. package/dist/overlay/CommandPalette.d.ts.map +1 -1
  677. package/dist/overlay/CommandPalette.js +14 -4
  678. package/dist/overlay/CommandPalette.js.map +1 -1
  679. package/dist/overlay/CommandPaletteList.cjs +5 -0
  680. package/dist/overlay/CommandPaletteList.cjs.map +1 -1
  681. package/dist/overlay/CommandPaletteList.d.ts +4 -2
  682. package/dist/overlay/CommandPaletteList.d.ts.map +1 -1
  683. package/dist/overlay/CommandPaletteList.js +5 -0
  684. package/dist/overlay/CommandPaletteList.js.map +1 -1
  685. package/dist/overlay/DropdownMenu.cjs +2 -0
  686. package/dist/overlay/DropdownMenu.cjs.map +1 -1
  687. package/dist/overlay/DropdownMenu.d.ts +4 -0
  688. package/dist/overlay/DropdownMenu.d.ts.map +1 -1
  689. package/dist/overlay/DropdownMenu.js +2 -0
  690. package/dist/overlay/DropdownMenu.js.map +1 -1
  691. package/dist/overlay/DropdownMenuSubmenu.cjs +31 -15
  692. package/dist/overlay/DropdownMenuSubmenu.cjs.map +1 -1
  693. package/dist/overlay/DropdownMenuSubmenu.d.ts.map +1 -1
  694. package/dist/overlay/DropdownMenuSubmenu.js +31 -15
  695. package/dist/overlay/DropdownMenuSubmenu.js.map +1 -1
  696. package/dist/rpc/OperationCatalog.cjs +32 -27
  697. package/dist/rpc/OperationCatalog.cjs.map +1 -1
  698. package/dist/rpc/OperationCatalog.d.ts +11 -1
  699. package/dist/rpc/OperationCatalog.d.ts.map +1 -1
  700. package/dist/rpc/OperationCatalog.js +32 -27
  701. package/dist/rpc/OperationCatalog.js.map +1 -1
  702. package/dist/rpc/OperationEntityContextPicker.cjs +62 -256
  703. package/dist/rpc/OperationEntityContextPicker.cjs.map +1 -1
  704. package/dist/rpc/OperationEntityContextPicker.d.ts.map +1 -1
  705. package/dist/rpc/OperationEntityContextPicker.js +64 -258
  706. package/dist/rpc/OperationEntityContextPicker.js.map +1 -1
  707. package/dist/rpc/OperationEntityPicker.cjs +185 -0
  708. package/dist/rpc/OperationEntityPicker.cjs.map +1 -0
  709. package/dist/rpc/OperationEntityPicker.d.ts +51 -0
  710. package/dist/rpc/OperationEntityPicker.d.ts.map +1 -0
  711. package/dist/rpc/OperationEntityPicker.js +185 -0
  712. package/dist/rpc/OperationEntityPicker.js.map +1 -0
  713. package/dist/rpc/OperationEntityPicker.model.cjs +39 -0
  714. package/dist/rpc/OperationEntityPicker.model.cjs.map +1 -0
  715. package/dist/rpc/OperationEntityPicker.model.d.ts +27 -0
  716. package/dist/rpc/OperationEntityPicker.model.d.ts.map +1 -0
  717. package/dist/rpc/OperationEntityPicker.model.js +39 -0
  718. package/dist/rpc/OperationEntityPicker.model.js.map +1 -0
  719. package/dist/rpc/operationCatalogRowSelection.cjs +85 -0
  720. package/dist/rpc/operationCatalogRowSelection.cjs.map +1 -0
  721. package/dist/rpc/operationCatalogRowSelection.d.ts +57 -0
  722. package/dist/rpc/operationCatalogRowSelection.d.ts.map +1 -0
  723. package/dist/rpc/operationCatalogRowSelection.js +85 -0
  724. package/dist/rpc/operationCatalogRowSelection.js.map +1 -0
  725. package/dist/rpc/operationEntityPicker.fixtures.d.ts +13 -0
  726. package/dist/rpc/operationEntityPicker.fixtures.d.ts.map +1 -0
  727. package/dist/rpc/useOperationPages.cjs +6 -1
  728. package/dist/rpc/useOperationPages.cjs.map +1 -1
  729. package/dist/rpc/useOperationPages.d.ts +3 -1
  730. package/dist/rpc/useOperationPages.d.ts.map +1 -1
  731. package/dist/rpc/useOperationPages.js +6 -1
  732. package/dist/rpc/useOperationPages.js.map +1 -1
  733. package/dist/rpc.cjs +2 -0
  734. package/dist/rpc.cjs.map +1 -1
  735. package/dist/rpc.d.ts +2 -0
  736. package/dist/rpc.d.ts.map +1 -1
  737. package/dist/rpc.js +2 -0
  738. package/dist/rpc.js.map +1 -1
  739. package/dist/styles.css +1 -1
  740. package/package.json +4 -1
  741. package/schemas/json-schema-form.schema.json +571 -0
  742. package/dist/data/runtime/RuntimeBarCombo.cjs +0 -423
  743. package/dist/data/runtime/RuntimeBarCombo.cjs.map +0 -1
  744. package/dist/data/runtime/RuntimeBarCombo.d.ts +0 -33
  745. package/dist/data/runtime/RuntimeBarCombo.d.ts.map +0 -1
  746. package/dist/data/runtime/RuntimeBarCombo.js +0 -423
  747. package/dist/data/runtime/RuntimeBarCombo.js.map +0 -1
  748. package/dist/data/runtime/RuntimeBarLimits.cjs +0 -262
  749. package/dist/data/runtime/RuntimeBarLimits.cjs.map +0 -1
  750. package/dist/data/runtime/RuntimeBarLimits.d.ts +0 -17
  751. package/dist/data/runtime/RuntimeBarLimits.d.ts.map +0 -1
  752. package/dist/data/runtime/RuntimeBarLimits.js +0 -262
  753. package/dist/data/runtime/RuntimeBarLimits.js.map +0 -1
  754. package/dist/data/runtime/RuntimeBarSegments.cjs +0 -346
  755. package/dist/data/runtime/RuntimeBarSegments.cjs.map +0 -1
  756. package/dist/data/runtime/RuntimeBarSegments.d.ts +0 -37
  757. package/dist/data/runtime/RuntimeBarSegments.d.ts.map +0 -1
  758. package/dist/data/runtime/RuntimeBarSegments.js +0 -346
  759. package/dist/data/runtime/RuntimeBarSegments.js.map +0 -1
@@ -0,0 +1,6 @@
1
+ import { ChangeListener } from './json-schema-form-types.js';
2
+ export declare function ListenerList({ listeners, subject }: {
3
+ listeners: ChangeListener[];
4
+ subject: unknown;
5
+ }): import("react").JSX.Element;
6
+ //# sourceMappingURL=json-schema-form-debug-listeners.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-debug-listeners.d.ts","sourceRoot":"","sources":["../../src/components/json-schema-form-debug-listeners.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAkC,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAmB/F,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;IAAE,SAAS,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,+BAqCrG"}
@@ -0,0 +1,102 @@
1
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
+ import { cn } from "../lib/utils.js";
3
+ import { evaluatePredicate } from "./json-schema-form-conditionals.js";
4
+ import { DebugGlyph } from "./json-schema-form-debug-glyph.js";
5
+ import { CONDITION_GLYPH, ACTION_GLYPH } from "./json-schema-form-debug-glyph-map.js";
6
+ const VERBS = ["hide", "show", "enable", "disable", "require", "optional", "reset", "set", "patch"];
7
+ const STATE_BADGE = {
8
+ true: { label: "holds", className: "text-emerald-700 dark:text-emerald-300" },
9
+ false: { label: "does not hold", className: "text-muted-foreground" },
10
+ unknown: { label: "needs evaluator", className: "text-amber-700 dark:text-amber-300" }
11
+ };
12
+ function ListenerList({ listeners, subject }) {
13
+ return /* @__PURE__ */ jsx("ol", { className: "mt-0.5 space-y-1", children: listeners.map((listener, index) => {
14
+ const state = listenerState(listener.when, subject);
15
+ return /* @__PURE__ */ jsxs(
16
+ "li",
17
+ {
18
+ "data-debug-listener": "",
19
+ "data-active": state,
20
+ className: cn(
21
+ "space-y-0.5 rounded border px-1.5 py-1",
22
+ state === "true" ? "border-emerald-500/50 bg-emerald-500/5" : "border-border"
23
+ ),
24
+ children: [
25
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-1", children: [
26
+ /* @__PURE__ */ jsx("span", { className: "w-10 shrink-0 text-sky-700 dark:text-sky-300", children: "when" }),
27
+ conditions(listener.when).map((condition, i) => /* @__PURE__ */ jsxs("span", { "data-condition": "", className: "inline-flex items-center gap-1 rounded bg-muted px-1", children: [
28
+ /* @__PURE__ */ jsx(DebugGlyph, { glyph: condition.glyph }),
29
+ condition.text
30
+ ] }, i)),
31
+ /* @__PURE__ */ jsx("span", { className: cn("ml-auto font-sans text-[10px]", STATE_BADGE[state].className), children: STATE_BADGE[state].label })
32
+ ] }),
33
+ /* @__PURE__ */ jsx(ActionRows, { actions: listener, branch: "then", dimmed: state === "false" }),
34
+ listener.else && /* @__PURE__ */ jsxs(Fragment, { children: [
35
+ /* @__PURE__ */ jsx("div", { className: "w-10 text-sky-700 dark:text-sky-300", children: "else" }),
36
+ /* @__PURE__ */ jsx(ActionRows, { actions: listener.else, branch: "else", dimmed: state === "true" })
37
+ ] })
38
+ ]
39
+ },
40
+ index
41
+ );
42
+ }) });
43
+ }
44
+ function ActionRows({ actions, branch, dimmed }) {
45
+ const rows = VERBS.flatMap((verb) => actionRows(verb, actions).map((row) => ({ verb, ...row })));
46
+ return /* @__PURE__ */ jsxs("ul", { ...{ [`data-${branch}`]: "" }, className: cn("space-y-0.5 pl-2", dimmed && "opacity-50"), children: [
47
+ rows.length === 0 && /* @__PURE__ */ jsx("li", { className: "text-muted-foreground", children: "nothing" }),
48
+ rows.map(({ verb, detail, targets }) => /* @__PURE__ */ jsxs("li", { "data-action": verb, className: "flex items-start gap-1", children: [
49
+ /* @__PURE__ */ jsx(DebugGlyph, { glyph: ACTION_GLYPH[verb], className: "mt-px" }),
50
+ /* @__PURE__ */ jsx("span", { className: "w-12 shrink-0", children: verb }),
51
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-1", children: [
52
+ detail !== void 0 && /* @__PURE__ */ jsx("span", { "data-detail": "", className: "text-muted-foreground", children: detail }),
53
+ targets.map((target) => /* @__PURE__ */ jsx("span", { "data-target": "", className: "rounded bg-muted px-1", children: target }, target))
54
+ ] })
55
+ ] }, `${verb}${detail ?? ""}`))
56
+ ] });
57
+ }
58
+ function actionRows(verb, actions) {
59
+ if (verb === "set") return groupByDetail(Object.entries(actions.set ?? {}).map(([key, value]) => [key, `= ${JSON.stringify(value)}`]));
60
+ if (verb === "patch") {
61
+ return groupByDetail(
62
+ Object.entries(actions.patch ?? {}).map(([key, patch]) => [
63
+ key,
64
+ Object.entries(patch).map(([keyword, value]) => `${keyword}: ${JSON.stringify(value)}`).join(", ")
65
+ ])
66
+ );
67
+ }
68
+ const targets = actions[verb] ?? [];
69
+ return targets.length > 0 ? [{ targets }] : [];
70
+ }
71
+ function groupByDetail(entries) {
72
+ const grouped = /* @__PURE__ */ new Map();
73
+ for (const [key, detail] of entries) grouped.set(detail, [...grouped.get(detail) ?? [], key]);
74
+ return [...grouped].map(([detail, targets]) => ({ detail, targets }));
75
+ }
76
+ function conditions(when) {
77
+ if (!when) return [{ glyph: CONDITION_GLYPH.always, text: "always" }];
78
+ const { const: constValue, enum: enumValues, not, expr, ...rest } = when;
79
+ const out = [];
80
+ if (constValue !== void 0) out.push({ glyph: CONDITION_GLYPH.const, text: `= ${JSON.stringify(constValue)}` });
81
+ if (enumValues !== void 0) out.push({ glyph: CONDITION_GLYPH.enum, text: `∈ ${JSON.stringify(enumValues)}` });
82
+ if ((not == null ? void 0 : not.const) !== void 0) out.push({ glyph: CONDITION_GLYPH.not, text: `≠ ${JSON.stringify(not.const)}` });
83
+ if ((not == null ? void 0 : not.enum) !== void 0) out.push({ glyph: CONDITION_GLYPH.not, text: `∉ ${JSON.stringify(not.enum)}` });
84
+ if (not && not.const === void 0 && not.enum === void 0) out.push({ glyph: CONDITION_GLYPH.not, text: `not ${JSON.stringify(not)}` });
85
+ if (expr !== void 0) out.push({ glyph: CONDITION_GLYPH.expr, text: `expr ${expr}` });
86
+ if (Object.keys(rest).length > 0) out.push({ glyph: CONDITION_GLYPH.schema, text: JSON.stringify(rest) });
87
+ return out;
88
+ }
89
+ function listenerState(when, subject) {
90
+ if (!when) return "true";
91
+ const { expr, ...predicate } = when;
92
+ if (Object.keys(predicate).length > 0) {
93
+ const holds = evaluatePredicate(predicate, subject);
94
+ if (holds === false) return "false";
95
+ if (holds === void 0) return "unknown";
96
+ }
97
+ return expr === void 0 ? "true" : "unknown";
98
+ }
99
+ export {
100
+ ListenerList
101
+ };
102
+ //# sourceMappingURL=json-schema-form-debug-listeners.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-debug-listeners.js","sources":["../../src/components/json-schema-form-debug-listeners.tsx"],"sourcesContent":["import { cn } from \"../lib/utils\";\nimport { evaluatePredicate } from \"./json-schema-form-conditionals\";\nimport { DebugGlyph } from \"./json-schema-form-debug-glyph\";\nimport { ACTION_GLYPH, CONDITION_GLYPH, type DebugGlyphPair } from \"./json-schema-form-debug-glyph-map\";\nimport type { ChangeActions, ChangeCondition, ChangeListener } from \"./json-schema-form-types\";\n\n// ListenerList renders an `x-on-change` / `x-on-load` array as one card per\n// listener: its conditions as chips, one row per action with the fields it\n// touches, and its else branch. `subject` is what `when` is evaluated against\n// (the field's value, or the object for x-on-load); the branch that applies to\n// it is marked and the other dimmed. A `when.expr` needs the host's\n// ExpressionEvaluator, which the card does not have, so it stays \"unknown\".\n\ntype ListenerState = \"true\" | \"false\" | \"unknown\";\n\nconst VERBS: (keyof ChangeActions)[] = [\"hide\", \"show\", \"enable\", \"disable\", \"require\", \"optional\", \"reset\", \"set\", \"patch\"];\n\nconst STATE_BADGE: Record<ListenerState, { label: string; className: string }> = {\n true: { label: \"holds\", className: \"text-emerald-700 dark:text-emerald-300\" },\n false: { label: \"does not hold\", className: \"text-muted-foreground\" },\n unknown: { label: \"needs evaluator\", className: \"text-amber-700 dark:text-amber-300\" },\n};\n\nexport function ListenerList({ listeners, subject }: { listeners: ChangeListener[]; subject: unknown }) {\n return (\n <ol className=\"mt-0.5 space-y-1\">\n {listeners.map((listener, index) => {\n const state = listenerState(listener.when, subject);\n return (\n <li\n key={index}\n data-debug-listener=\"\"\n data-active={state}\n className={cn(\n \"space-y-0.5 rounded border px-1.5 py-1\",\n state === \"true\" ? \"border-emerald-500/50 bg-emerald-500/5\" : \"border-border\",\n )}\n >\n <div className=\"flex flex-wrap items-center gap-1\">\n <span className=\"w-10 shrink-0 text-sky-700 dark:text-sky-300\">when</span>\n {conditions(listener.when).map((condition, i) => (\n <span key={i} data-condition=\"\" className=\"inline-flex items-center gap-1 rounded bg-muted px-1\">\n <DebugGlyph glyph={condition.glyph} />\n {condition.text}\n </span>\n ))}\n <span className={cn(\"ml-auto font-sans text-[10px]\", STATE_BADGE[state].className)}>{STATE_BADGE[state].label}</span>\n </div>\n <ActionRows actions={listener} branch=\"then\" dimmed={state === \"false\"} />\n {listener.else && (\n <>\n <div className=\"w-10 text-sky-700 dark:text-sky-300\">else</div>\n <ActionRows actions={listener.else} branch=\"else\" dimmed={state === \"true\"} />\n </>\n )}\n </li>\n );\n })}\n </ol>\n );\n}\n\nfunction ActionRows({ actions, branch, dimmed }: { actions: ChangeActions; branch: \"then\" | \"else\"; dimmed: boolean }) {\n const rows = VERBS.flatMap((verb) => actionRows(verb, actions).map((row) => ({ verb, ...row })));\n return (\n <ul {...{ [`data-${branch}`]: \"\" }} className={cn(\"space-y-0.5 pl-2\", dimmed && \"opacity-50\")}>\n {rows.length === 0 && <li className=\"text-muted-foreground\">nothing</li>}\n {rows.map(({ verb, detail, targets }) => (\n <li key={`${verb}${detail ?? \"\"}`} data-action={verb} className=\"flex items-start gap-1\">\n <DebugGlyph glyph={ACTION_GLYPH[verb]} className=\"mt-px\" />\n <span className=\"w-12 shrink-0\">{verb}</span>\n <div className=\"flex min-w-0 flex-1 flex-wrap items-center gap-1\">\n {detail !== undefined && (\n <span data-detail=\"\" className=\"text-muted-foreground\">\n {detail}\n </span>\n )}\n {targets.map((target) => (\n <span key={target} data-target=\"\" className=\"rounded bg-muted px-1\">\n {target}\n </span>\n ))}\n </div>\n </li>\n ))}\n </ul>\n );\n}\n\n// actionRows lists one verb's targets. The keyed verbs gather their targets by\n// what they do to them — every field set to \"\", every field patched readOnly —\n// so a listener that touches a dozen siblings reads as a few rows.\nfunction actionRows(verb: keyof ChangeActions, actions: ChangeActions): { detail?: string; targets: string[] }[] {\n if (verb === \"set\") return groupByDetail(Object.entries(actions.set ?? {}).map(([key, value]) => [key, `= ${JSON.stringify(value)}`]));\n if (verb === \"patch\") {\n return groupByDetail(\n Object.entries(actions.patch ?? {}).map(([key, patch]) => [\n key,\n Object.entries(patch)\n .map(([keyword, value]) => `${keyword}: ${JSON.stringify(value)}`)\n .join(\", \"),\n ]),\n );\n }\n const targets = actions[verb] ?? [];\n return targets.length > 0 ? [{ targets }] : [];\n}\n\nfunction groupByDetail(entries: [string, string][]): { detail: string; targets: string[] }[] {\n const grouped = new Map<string, string[]>();\n for (const [key, detail] of entries) grouped.set(detail, [...(grouped.get(detail) ?? []), key]);\n return [...grouped].map(([detail, targets]) => ({ detail, targets }));\n}\n\nfunction conditions(when: ChangeCondition | undefined): { glyph: DebugGlyphPair; text: string }[] {\n if (!when) return [{ glyph: CONDITION_GLYPH.always, text: \"always\" }];\n const { const: constValue, enum: enumValues, not, expr, ...rest } = when;\n const out: { glyph: DebugGlyphPair; text: string }[] = [];\n if (constValue !== undefined) out.push({ glyph: CONDITION_GLYPH.const, text: `= ${JSON.stringify(constValue)}` });\n if (enumValues !== undefined) out.push({ glyph: CONDITION_GLYPH.enum, text: `∈ ${JSON.stringify(enumValues)}` });\n if (not?.const !== undefined) out.push({ glyph: CONDITION_GLYPH.not, text: `≠ ${JSON.stringify(not.const)}` });\n if (not?.enum !== undefined) out.push({ glyph: CONDITION_GLYPH.not, text: `∉ ${JSON.stringify(not.enum)}` });\n if (not && not.const === undefined && not.enum === undefined) out.push({ glyph: CONDITION_GLYPH.not, text: `not ${JSON.stringify(not)}` });\n if (expr !== undefined) out.push({ glyph: CONDITION_GLYPH.expr, text: `expr ${expr}` });\n if (Object.keys(rest).length > 0) out.push({ glyph: CONDITION_GLYPH.schema, text: JSON.stringify(rest) });\n return out;\n}\n\nfunction listenerState(when: ChangeCondition | undefined, subject: unknown): ListenerState {\n if (!when) return \"true\";\n const { expr, ...predicate } = when;\n if (Object.keys(predicate).length > 0) {\n const holds = evaluatePredicate(predicate, subject);\n if (holds === false) return \"false\";\n if (holds === undefined) return \"unknown\";\n }\n return expr === undefined ? \"true\" : \"unknown\";\n}\n"],"names":[],"mappings":";;;;;AAeA,MAAM,QAAiC,CAAC,QAAQ,QAAQ,UAAU,WAAW,WAAW,YAAY,SAAS,OAAO,OAAO;AAE3H,MAAM,cAA2E;AAAA,EAC/E,MAAM,EAAE,OAAO,SAAS,WAAW,yCAAA;AAAA,EACnC,OAAO,EAAE,OAAO,iBAAiB,WAAW,wBAAA;AAAA,EAC5C,SAAS,EAAE,OAAO,mBAAmB,WAAW,qCAAA;AAClD;AAEO,SAAS,aAAa,EAAE,WAAW,WAA8D;AACtG,SACE,oBAAC,QAAG,WAAU,oBACX,oBAAU,IAAI,CAAC,UAAU,UAAU;AAClC,UAAM,QAAQ,cAAc,SAAS,MAAM,OAAO;AAClD,WACE;AAAA,MAAC;AAAA,MAAA;AAAA,QAEC,uBAAoB;AAAA,QACpB,eAAa;AAAA,QACb,WAAW;AAAA,UACT;AAAA,UACA,UAAU,SAAS,2CAA2C;AAAA,QAAA;AAAA,QAGhE,UAAA;AAAA,UAAA,qBAAC,OAAA,EAAI,WAAU,qCACb,UAAA;AAAA,YAAA,oBAAC,QAAA,EAAK,WAAU,gDAA+C,UAAA,QAAI;AAAA,YAClE,WAAW,SAAS,IAAI,EAAE,IAAI,CAAC,WAAW,MACzC,qBAAC,QAAA,EAAa,kBAAe,IAAG,WAAU,wDACxC,UAAA;AAAA,cAAA,oBAAC,YAAA,EAAW,OAAO,UAAU,MAAA,CAAO;AAAA,cACnC,UAAU;AAAA,YAAA,EAAA,GAFF,CAGX,CACD;AAAA,YACD,oBAAC,QAAA,EAAK,WAAW,GAAG,iCAAiC,YAAY,KAAK,EAAE,SAAS,GAAI,UAAA,YAAY,KAAK,EAAE,MAAA,CAAM;AAAA,UAAA,GAChH;AAAA,UACA,oBAAC,cAAW,SAAS,UAAU,QAAO,QAAO,QAAQ,UAAU,SAAS;AAAA,UACvE,SAAS,QACR,qBAAA,UAAA,EACE,UAAA;AAAA,YAAA,oBAAC,OAAA,EAAI,WAAU,uCAAsC,UAAA,QAAI;AAAA,YACzD,oBAAC,cAAW,SAAS,SAAS,MAAM,QAAO,QAAO,QAAQ,UAAU,OAAA,CAAQ;AAAA,UAAA,EAAA,CAC9E;AAAA,QAAA;AAAA,MAAA;AAAA,MAvBG;AAAA,IAAA;AAAA,EA2BX,CAAC,EAAA,CACH;AAEJ;AAEA,SAAS,WAAW,EAAE,SAAS,QAAQ,UAAgF;AACrH,QAAM,OAAO,MAAM,QAAQ,CAAC,SAAS,WAAW,MAAM,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAA,EAAM,CAAC;AAC/F,8BACG,MAAA,EAAI,GAAG,EAAE,CAAC,QAAQ,MAAM,EAAE,GAAG,GAAA,GAAM,WAAW,GAAG,oBAAoB,UAAU,YAAY,GACzF,UAAA;AAAA,IAAA,KAAK,WAAW,KAAK,oBAAC,MAAA,EAAG,WAAU,yBAAwB,UAAA,WAAO;AAAA,IAClE,KAAK,IAAI,CAAC,EAAE,MAAM,QAAQ,QAAA,MACzB,qBAAC,MAAA,EAAkC,eAAa,MAAM,WAAU,0BAC9D,UAAA;AAAA,MAAA,oBAAC,cAAW,OAAO,aAAa,IAAI,GAAG,WAAU,SAAQ;AAAA,MACzD,oBAAC,QAAA,EAAK,WAAU,iBAAiB,UAAA,MAAK;AAAA,MACtC,qBAAC,OAAA,EAAI,WAAU,oDACZ,UAAA;AAAA,QAAA,WAAW,UACV,oBAAC,QAAA,EAAK,eAAY,IAAG,WAAU,yBAC5B,UAAA,OAAA,CACH;AAAA,QAED,QAAQ,IAAI,CAAC,WACZ,oBAAC,QAAA,EAAkB,eAAY,IAAG,WAAU,yBACzC,UAAA,OAAA,GADQ,MAEX,CACD;AAAA,MAAA,EAAA,CACH;AAAA,IAAA,EAAA,GAdO,GAAG,IAAI,GAAG,UAAU,EAAE,EAe/B,CACD;AAAA,EAAA,GACH;AAEJ;AAKA,SAAS,WAAW,MAA2B,SAAkE;AAC/G,MAAI,SAAS,MAAO,QAAO,cAAc,OAAO,QAAQ,QAAQ,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,KAAK,KAAK,UAAU,KAAK,CAAC,EAAE,CAAC,CAAC;AACrI,MAAI,SAAS,SAAS;AACpB,WAAO;AAAA,MACL,OAAO,QAAQ,QAAQ,SAAS,CAAA,CAAE,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAAA,QACxD;AAAA,QACA,OAAO,QAAQ,KAAK,EACjB,IAAI,CAAC,CAAC,SAAS,KAAK,MAAM,GAAG,OAAO,KAAK,KAAK,UAAU,KAAK,CAAC,EAAE,EAChE,KAAK,IAAI;AAAA,MAAA,CACb;AAAA,IAAA;AAAA,EAEL;AACA,QAAM,UAAU,QAAQ,IAAI,KAAK,CAAA;AACjC,SAAO,QAAQ,SAAS,IAAI,CAAC,EAAE,QAAA,CAAS,IAAI,CAAA;AAC9C;AAEA,SAAS,cAAc,SAAsE;AAC3F,QAAM,8BAAc,IAAA;AACpB,aAAW,CAAC,KAAK,MAAM,KAAK,iBAAiB,IAAI,QAAQ,CAAC,GAAI,QAAQ,IAAI,MAAM,KAAK,CAAA,GAAK,GAAG,CAAC;AAC9F,SAAO,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC,CAAC,QAAQ,OAAO,OAAO,EAAE,QAAQ,UAAU;AACtE;AAEA,SAAS,WAAW,MAA8E;AAChG,MAAI,CAAC,KAAM,QAAO,CAAC,EAAE,OAAO,gBAAgB,QAAQ,MAAM,UAAU;AACpE,QAAM,EAAE,OAAO,YAAY,MAAM,YAAY,KAAK,MAAM,GAAG,KAAA,IAAS;AACpE,QAAM,MAAiD,CAAA;AACvD,MAAI,eAAe,OAAW,KAAI,KAAK,EAAE,OAAO,gBAAgB,OAAO,MAAM,KAAK,KAAK,UAAU,UAAU,CAAC,IAAI;AAChH,MAAI,eAAe,OAAW,KAAI,KAAK,EAAE,OAAO,gBAAgB,MAAM,MAAM,KAAK,KAAK,UAAU,UAAU,CAAC,IAAI;AAC/G,OAAI,2BAAK,WAAU,OAAW,KAAI,KAAK,EAAE,OAAO,gBAAgB,KAAK,MAAM,KAAK,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI;AAC7G,OAAI,2BAAK,UAAS,OAAW,KAAI,KAAK,EAAE,OAAO,gBAAgB,KAAK,MAAM,KAAK,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI;AAC3G,MAAI,OAAO,IAAI,UAAU,UAAa,IAAI,SAAS,YAAe,KAAK,EAAE,OAAO,gBAAgB,KAAK,MAAM,OAAO,KAAK,UAAU,GAAG,CAAC,IAAI;AACzI,MAAI,SAAS,OAAW,KAAI,KAAK,EAAE,OAAO,gBAAgB,MAAM,MAAM,QAAQ,IAAI,GAAA,CAAI;AACtF,MAAI,OAAO,KAAK,IAAI,EAAE,SAAS,EAAG,KAAI,KAAK,EAAE,OAAO,gBAAgB,QAAQ,MAAM,KAAK,UAAU,IAAI,GAAG;AACxG,SAAO;AACT;AAEA,SAAS,cAAc,MAAmC,SAAiC;AACzF,MAAI,CAAC,KAAM,QAAO;AAClB,QAAM,EAAE,MAAM,GAAG,UAAA,IAAc;AAC/B,MAAI,OAAO,KAAK,SAAS,EAAE,SAAS,GAAG;AACrC,UAAM,QAAQ,kBAAkB,WAAW,OAAO;AAClD,QAAI,UAAU,MAAO,QAAO;AAC5B,QAAI,UAAU,OAAW,QAAO;AAAA,EAClC;AACA,SAAO,SAAS,SAAY,SAAS;AACvC;"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const utils = require("../lib/utils.cjs");
5
+ const jsonSchemaFormDebugBadge = require("./json-schema-form-debug-badge.cjs");
6
+ function withFieldDebug(nodes, info) {
7
+ const hidden = info.hiddenReason !== void 0;
8
+ const badge = /* @__PURE__ */ jsxRuntime.jsx(jsonSchemaFormDebugBadge.FieldDebugBadge, { ...info });
9
+ const value = /* @__PURE__ */ jsxRuntime.jsxs(
10
+ "div",
11
+ {
12
+ "data-debug-field": info.fieldKey,
13
+ ...hidden ? { "data-debug-hidden": info.hiddenReason } : {},
14
+ className: utils.cn("min-w-0", hidden && "rounded-md opacity-60 outline-dashed outline-1 outline-offset-2 outline-muted-foreground/60"),
15
+ children: [
16
+ nodes.label === null ? badge : null,
17
+ nodes.value
18
+ ]
19
+ }
20
+ );
21
+ if (nodes.label === null) return { label: null, value };
22
+ return {
23
+ label: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: utils.cn("inline-flex min-w-0 items-center gap-1", hidden && "opacity-60"), children: [
24
+ nodes.label,
25
+ badge
26
+ ] }),
27
+ value
28
+ };
29
+ }
30
+ exports.withFieldDebug = withFieldDebug;
31
+ //# sourceMappingURL=json-schema-form-debug.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-debug.cjs","sources":["../../src/components/json-schema-form-debug.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { cn } from \"../lib/utils\";\nimport { FieldDebugBadge, type FieldDebugInfo } from \"./json-schema-form-debug-badge\";\n\n// Debug mode (the display-options menu's Debug) renders the fields the form\n// would hide, dimmed and outlined, and gives every field a badge whose hover\n// card says where it comes from: its key and instance path, the control it\n// resolved to, why it is hidden, and the schema keywords that source its\n// value, options and state.\n\nexport type { FieldDebugInfo };\n\n// withFieldDebug decorates a field's label/value nodes: the badge beside the\n// label (or atop the value when the field has no label), and the value marked\n// `data-debug-field` / `data-debug-hidden` and dimmed when the form would hide it.\nexport function withFieldDebug(nodes: { label: ReactNode; value: ReactNode }, info: FieldDebugInfo): { label: ReactNode; value: ReactNode } {\n const hidden = info.hiddenReason !== undefined;\n const badge = <FieldDebugBadge {...info} />;\n const value = (\n <div\n data-debug-field={info.fieldKey}\n {...(hidden ? { \"data-debug-hidden\": info.hiddenReason } : {})}\n className={cn(\"min-w-0\", hidden && \"rounded-md opacity-60 outline-dashed outline-1 outline-offset-2 outline-muted-foreground/60\")}\n >\n {nodes.label === null ? badge : null}\n {nodes.value}\n </div>\n );\n if (nodes.label === null) return { label: null, value };\n return {\n label: (\n <span className={cn(\"inline-flex min-w-0 items-center gap-1\", hidden && \"opacity-60\")}>\n {nodes.label}\n {badge}\n </span>\n ),\n value,\n };\n}\n"],"names":["jsx","FieldDebugBadge","jsxs","cn"],"mappings":";;;;;AAeO,SAAS,eAAe,OAA+C,MAA8D;AAC1I,QAAM,SAAS,KAAK,iBAAiB;AACrC,QAAM,QAAQA,2BAAAA,IAACC,yBAAAA,iBAAA,EAAiB,GAAG,KAAA,CAAM;AACzC,QAAM,QACJC,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,oBAAkB,KAAK;AAAA,MACtB,GAAI,SAAS,EAAE,qBAAqB,KAAK,aAAA,IAAiB,CAAA;AAAA,MAC3D,WAAWC,MAAAA,GAAG,WAAW,UAAU,6FAA6F;AAAA,MAE/H,UAAA;AAAA,QAAA,MAAM,UAAU,OAAO,QAAQ;AAAA,QAC/B,MAAM;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGX,MAAI,MAAM,UAAU,aAAa,EAAE,OAAO,MAAM,MAAA;AAChD,SAAO;AAAA,IACL,uCACG,QAAA,EAAK,WAAWA,SAAG,0CAA0C,UAAU,YAAY,GACjF,UAAA;AAAA,MAAA,MAAM;AAAA,MACN;AAAA,IAAA,GACH;AAAA,IAEF;AAAA,EAAA;AAEJ;;"}
@@ -0,0 +1,11 @@
1
+ import { ReactNode } from 'react';
2
+ import { FieldDebugInfo } from './json-schema-form-debug-badge.js';
3
+ export type { FieldDebugInfo };
4
+ export declare function withFieldDebug(nodes: {
5
+ label: ReactNode;
6
+ value: ReactNode;
7
+ }, info: FieldDebugInfo): {
8
+ label: ReactNode;
9
+ value: ReactNode;
10
+ };
11
+ //# sourceMappingURL=json-schema-form-debug.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-debug.d.ts","sourceRoot":"","sources":["../../src/components/json-schema-form-debug.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAQtF,YAAY,EAAE,cAAc,EAAE,CAAC;AAK/B,wBAAgB,cAAc,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,EAAE,IAAI,EAAE,cAAc,GAAG;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAuB1I"}
@@ -0,0 +1,31 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { cn } from "../lib/utils.js";
3
+ import { FieldDebugBadge } from "./json-schema-form-debug-badge.js";
4
+ function withFieldDebug(nodes, info) {
5
+ const hidden = info.hiddenReason !== void 0;
6
+ const badge = /* @__PURE__ */ jsx(FieldDebugBadge, { ...info });
7
+ const value = /* @__PURE__ */ jsxs(
8
+ "div",
9
+ {
10
+ "data-debug-field": info.fieldKey,
11
+ ...hidden ? { "data-debug-hidden": info.hiddenReason } : {},
12
+ className: cn("min-w-0", hidden && "rounded-md opacity-60 outline-dashed outline-1 outline-offset-2 outline-muted-foreground/60"),
13
+ children: [
14
+ nodes.label === null ? badge : null,
15
+ nodes.value
16
+ ]
17
+ }
18
+ );
19
+ if (nodes.label === null) return { label: null, value };
20
+ return {
21
+ label: /* @__PURE__ */ jsxs("span", { className: cn("inline-flex min-w-0 items-center gap-1", hidden && "opacity-60"), children: [
22
+ nodes.label,
23
+ badge
24
+ ] }),
25
+ value
26
+ };
27
+ }
28
+ export {
29
+ withFieldDebug
30
+ };
31
+ //# sourceMappingURL=json-schema-form-debug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-debug.js","sources":["../../src/components/json-schema-form-debug.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { cn } from \"../lib/utils\";\nimport { FieldDebugBadge, type FieldDebugInfo } from \"./json-schema-form-debug-badge\";\n\n// Debug mode (the display-options menu's Debug) renders the fields the form\n// would hide, dimmed and outlined, and gives every field a badge whose hover\n// card says where it comes from: its key and instance path, the control it\n// resolved to, why it is hidden, and the schema keywords that source its\n// value, options and state.\n\nexport type { FieldDebugInfo };\n\n// withFieldDebug decorates a field's label/value nodes: the badge beside the\n// label (or atop the value when the field has no label), and the value marked\n// `data-debug-field` / `data-debug-hidden` and dimmed when the form would hide it.\nexport function withFieldDebug(nodes: { label: ReactNode; value: ReactNode }, info: FieldDebugInfo): { label: ReactNode; value: ReactNode } {\n const hidden = info.hiddenReason !== undefined;\n const badge = <FieldDebugBadge {...info} />;\n const value = (\n <div\n data-debug-field={info.fieldKey}\n {...(hidden ? { \"data-debug-hidden\": info.hiddenReason } : {})}\n className={cn(\"min-w-0\", hidden && \"rounded-md opacity-60 outline-dashed outline-1 outline-offset-2 outline-muted-foreground/60\")}\n >\n {nodes.label === null ? badge : null}\n {nodes.value}\n </div>\n );\n if (nodes.label === null) return { label: null, value };\n return {\n label: (\n <span className={cn(\"inline-flex min-w-0 items-center gap-1\", hidden && \"opacity-60\")}>\n {nodes.label}\n {badge}\n </span>\n ),\n value,\n };\n}\n"],"names":[],"mappings":";;;AAeO,SAAS,eAAe,OAA+C,MAA8D;AAC1I,QAAM,SAAS,KAAK,iBAAiB;AACrC,QAAM,QAAQ,oBAAC,iBAAA,EAAiB,GAAG,KAAA,CAAM;AACzC,QAAM,QACJ;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,oBAAkB,KAAK;AAAA,MACtB,GAAI,SAAS,EAAE,qBAAqB,KAAK,aAAA,IAAiB,CAAA;AAAA,MAC3D,WAAW,GAAG,WAAW,UAAU,6FAA6F;AAAA,MAE/H,UAAA;AAAA,QAAA,MAAM,UAAU,OAAO,QAAQ;AAAA,QAC/B,MAAM;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGX,MAAI,MAAM,UAAU,aAAa,EAAE,OAAO,MAAM,MAAA;AAChD,SAAO;AAAA,IACL,4BACG,QAAA,EAAK,WAAW,GAAG,0CAA0C,UAAU,YAAY,GACjF,UAAA;AAAA,MAAA,MAAM;AAAA,MACN;AAAA,IAAA,GACH;AAAA,IAEF;AAAA,EAAA;AAEJ;"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const collections = require("../lib/collections.cjs");
4
+ const jsonSchemaFormConditionals = require("./json-schema-form-conditionals.cjs");
5
+ const jsonSchemaFormResolve = require("./json-schema-form-resolve.cjs");
6
+ function applySchemaDefaults(schema, value) {
7
+ return applyObjectDefaults(schema, value, /* @__PURE__ */ new Set());
8
+ }
9
+ function applyObjectDefaults(schema, value, ancestors) {
10
+ var _a;
11
+ if (ancestors.has(schema)) return value;
12
+ const nextAncestors = new Set(ancestors).add(schema);
13
+ let next = value;
14
+ const maxPasses = Math.min(
15
+ 100,
16
+ Object.keys(schema.properties ?? {}).length + (((_a = schema.allOf) == null ? void 0 : _a.length) ?? 0) + 2
17
+ );
18
+ for (let pass = 0; pass < maxPasses; pass += 1) {
19
+ const { properties } = jsonSchemaFormConditionals.effectiveProperties(schema, next);
20
+ let passChanged = false;
21
+ let passValue = next;
22
+ for (const [key, propertySchema] of Object.entries(properties)) {
23
+ const existing = passValue[key];
24
+ let fieldValue = existing;
25
+ let fieldChanged = false;
26
+ if (existing === void 0 && propertySchema.default !== void 0) {
27
+ fieldValue = cloneSchemaDefault(propertySchema.default);
28
+ fieldChanged = true;
29
+ }
30
+ const structuredObject = jsonSchemaFormResolve.schemaRendersAsObject(propertySchema);
31
+ if (structuredObject && !jsonSchemaFormResolve.isOpenStringMap(propertySchema)) {
32
+ const objectValue = collections.isPlainObject(fieldValue) ? fieldValue : {};
33
+ const defaultedObject = applyObjectDefaults(
34
+ propertySchema,
35
+ objectValue,
36
+ nextAncestors
37
+ );
38
+ if (defaultedObject !== objectValue) {
39
+ fieldValue = defaultedObject;
40
+ fieldChanged = true;
41
+ }
42
+ }
43
+ if (fieldChanged) {
44
+ if (!passChanged) passValue = { ...next };
45
+ passValue[key] = fieldValue;
46
+ passChanged = true;
47
+ }
48
+ }
49
+ if (!passChanged) break;
50
+ next = passValue;
51
+ }
52
+ return next;
53
+ }
54
+ function cloneSchemaDefault(value) {
55
+ if (Array.isArray(value)) return value.map(cloneSchemaDefault);
56
+ if (collections.isPlainObject(value)) {
57
+ return Object.fromEntries(
58
+ Object.entries(value).map(([key, entry]) => [
59
+ key,
60
+ cloneSchemaDefault(entry)
61
+ ])
62
+ );
63
+ }
64
+ return value;
65
+ }
66
+ exports.applySchemaDefaults = applySchemaDefaults;
67
+ exports.cloneSchemaDefault = cloneSchemaDefault;
68
+ //# sourceMappingURL=json-schema-form-defaults.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-defaults.cjs","sources":["../../src/components/json-schema-form-defaults.ts"],"sourcesContent":["import { isPlainObject } from \"../lib/collections\";\nimport type { JsonSchemaObject } from \"./json-schema-form-types\";\nimport { effectiveProperties } from \"./json-schema-form-conditionals\";\nimport { isOpenStringMap, schemaRendersAsObject } from \"./json-schema-form-resolve\";\n\n// applySchemaDefaults fills missing values from JSON Schema `default` keywords.\n// It walks fixed object properties recursively and re-evaluates `if`/`then`\n// branches after each pass, so a defaulted discriminator can activate defaults\n// in its selected branch. Existing values, including null and empty strings, are\n// never replaced. The original value is returned when no defaults apply.\nexport function applySchemaDefaults(\n schema: JsonSchemaObject,\n value: Record<string, unknown>,\n): Record<string, unknown> {\n return applyObjectDefaults(schema, value, new Set());\n}\n\nfunction applyObjectDefaults(\n schema: JsonSchemaObject,\n value: Record<string, unknown>,\n ancestors: Set<JsonSchemaObject>,\n): Record<string, unknown> {\n // Recursive schemas may point back to an ancestor after refs are hydrated.\n if (ancestors.has(schema)) return value;\n const nextAncestors = new Set(ancestors).add(schema);\n let next = value;\n\n // A default can select another conditional branch, so allow enough passes for\n // a chain of discriminator defaults while keeping malformed schemas bounded.\n const maxPasses = Math.min(\n 100,\n Object.keys(schema.properties ?? {}).length +\n (schema.allOf?.length ?? 0) +\n 2,\n );\n for (let pass = 0; pass < maxPasses; pass += 1) {\n const { properties } = effectiveProperties(schema, next);\n let passChanged = false;\n let passValue = next;\n\n for (const [key, propertySchema] of Object.entries(properties)) {\n const existing = passValue[key];\n let fieldValue = existing;\n let fieldChanged = false;\n\n if (existing === undefined && propertySchema.default !== undefined) {\n fieldValue = cloneSchemaDefault(propertySchema.default);\n fieldChanged = true;\n }\n\n const structuredObject = schemaRendersAsObject(propertySchema);\n if (structuredObject && !isOpenStringMap(propertySchema)) {\n const objectValue = isPlainObject(fieldValue)\n ? (fieldValue as Record<string, unknown>)\n : {};\n const defaultedObject = applyObjectDefaults(\n propertySchema as JsonSchemaObject,\n objectValue,\n nextAncestors,\n );\n if (defaultedObject !== objectValue) {\n fieldValue = defaultedObject;\n fieldChanged = true;\n }\n }\n\n if (fieldChanged) {\n if (!passChanged) passValue = { ...next };\n passValue[key] = fieldValue;\n passChanged = true;\n }\n }\n\n if (!passChanged) break;\n next = passValue;\n }\n return next;\n}\n\nexport function cloneSchemaDefault(value: unknown): unknown {\n if (Array.isArray(value)) return value.map(cloneSchemaDefault);\n if (isPlainObject(value)) {\n return Object.fromEntries(\n Object.entries(value as Record<string, unknown>).map(([key, entry]) => [\n key,\n cloneSchemaDefault(entry),\n ]),\n );\n }\n return value;\n}\n"],"names":["effectiveProperties","schemaRendersAsObject","isOpenStringMap","isPlainObject"],"mappings":";;;;;AAUO,SAAS,oBACd,QACA,OACyB;AACzB,SAAO,oBAAoB,QAAQ,OAAO,oBAAI,KAAK;AACrD;AAEA,SAAS,oBACP,QACA,OACA,WACyB;;AAEzB,MAAI,UAAU,IAAI,MAAM,EAAG,QAAO;AAClC,QAAM,gBAAgB,IAAI,IAAI,SAAS,EAAE,IAAI,MAAM;AACnD,MAAI,OAAO;AAIX,QAAM,YAAY,KAAK;AAAA,IACrB;AAAA,IACA,OAAO,KAAK,OAAO,cAAc,CAAA,CAAE,EAAE,YAClC,YAAO,UAAP,mBAAc,WAAU,KACzB;AAAA,EAAA;AAEJ,WAAS,OAAO,GAAG,OAAO,WAAW,QAAQ,GAAG;AAC9C,UAAM,EAAE,WAAA,IAAeA,+CAAoB,QAAQ,IAAI;AACvD,QAAI,cAAc;AAClB,QAAI,YAAY;AAEhB,eAAW,CAAC,KAAK,cAAc,KAAK,OAAO,QAAQ,UAAU,GAAG;AAC9D,YAAM,WAAW,UAAU,GAAG;AAC9B,UAAI,aAAa;AACjB,UAAI,eAAe;AAEnB,UAAI,aAAa,UAAa,eAAe,YAAY,QAAW;AAClE,qBAAa,mBAAmB,eAAe,OAAO;AACtD,uBAAe;AAAA,MACjB;AAEA,YAAM,mBAAmBC,sBAAAA,sBAAsB,cAAc;AAC7D,UAAI,oBAAoB,CAACC,sCAAgB,cAAc,GAAG;AACxD,cAAM,cAAcC,YAAAA,cAAc,UAAU,IACvC,aACD,CAAA;AACJ,cAAM,kBAAkB;AAAA,UACtB;AAAA,UACA;AAAA,UACA;AAAA,QAAA;AAEF,YAAI,oBAAoB,aAAa;AACnC,uBAAa;AACb,yBAAe;AAAA,QACjB;AAAA,MACF;AAEA,UAAI,cAAc;AAChB,YAAI,CAAC,YAAa,aAAY,EAAE,GAAG,KAAA;AACnC,kBAAU,GAAG,IAAI;AACjB,sBAAc;AAAA,MAChB;AAAA,IACF;AAEA,QAAI,CAAC,YAAa;AAClB,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEO,SAAS,mBAAmB,OAAyB;AAC1D,MAAI,MAAM,QAAQ,KAAK,EAAG,QAAO,MAAM,IAAI,kBAAkB;AAC7D,MAAIA,YAAAA,cAAc,KAAK,GAAG;AACxB,WAAO,OAAO;AAAA,MACZ,OAAO,QAAQ,KAAgC,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAAA,QACrE;AAAA,QACA,mBAAmB,KAAK;AAAA,MAAA,CACzB;AAAA,IAAA;AAAA,EAEL;AACA,SAAO;AACT;;;"}
@@ -0,0 +1,4 @@
1
+ import { JsonSchemaObject } from './json-schema-form-types.js';
2
+ export declare function applySchemaDefaults(schema: JsonSchemaObject, value: Record<string, unknown>): Record<string, unknown>;
3
+ export declare function cloneSchemaDefault(value: unknown): unknown;
4
+ //# sourceMappingURL=json-schema-form-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-defaults.d.ts","sourceRoot":"","sources":["../../src/components/json-schema-form-defaults.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AASjE,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzB;AAgED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAW1D"}
@@ -0,0 +1,68 @@
1
+ import { isPlainObject } from "../lib/collections.js";
2
+ import { effectiveProperties } from "./json-schema-form-conditionals.js";
3
+ import { schemaRendersAsObject, isOpenStringMap } from "./json-schema-form-resolve.js";
4
+ function applySchemaDefaults(schema, value) {
5
+ return applyObjectDefaults(schema, value, /* @__PURE__ */ new Set());
6
+ }
7
+ function applyObjectDefaults(schema, value, ancestors) {
8
+ var _a;
9
+ if (ancestors.has(schema)) return value;
10
+ const nextAncestors = new Set(ancestors).add(schema);
11
+ let next = value;
12
+ const maxPasses = Math.min(
13
+ 100,
14
+ Object.keys(schema.properties ?? {}).length + (((_a = schema.allOf) == null ? void 0 : _a.length) ?? 0) + 2
15
+ );
16
+ for (let pass = 0; pass < maxPasses; pass += 1) {
17
+ const { properties } = effectiveProperties(schema, next);
18
+ let passChanged = false;
19
+ let passValue = next;
20
+ for (const [key, propertySchema] of Object.entries(properties)) {
21
+ const existing = passValue[key];
22
+ let fieldValue = existing;
23
+ let fieldChanged = false;
24
+ if (existing === void 0 && propertySchema.default !== void 0) {
25
+ fieldValue = cloneSchemaDefault(propertySchema.default);
26
+ fieldChanged = true;
27
+ }
28
+ const structuredObject = schemaRendersAsObject(propertySchema);
29
+ if (structuredObject && !isOpenStringMap(propertySchema)) {
30
+ const objectValue = isPlainObject(fieldValue) ? fieldValue : {};
31
+ const defaultedObject = applyObjectDefaults(
32
+ propertySchema,
33
+ objectValue,
34
+ nextAncestors
35
+ );
36
+ if (defaultedObject !== objectValue) {
37
+ fieldValue = defaultedObject;
38
+ fieldChanged = true;
39
+ }
40
+ }
41
+ if (fieldChanged) {
42
+ if (!passChanged) passValue = { ...next };
43
+ passValue[key] = fieldValue;
44
+ passChanged = true;
45
+ }
46
+ }
47
+ if (!passChanged) break;
48
+ next = passValue;
49
+ }
50
+ return next;
51
+ }
52
+ function cloneSchemaDefault(value) {
53
+ if (Array.isArray(value)) return value.map(cloneSchemaDefault);
54
+ if (isPlainObject(value)) {
55
+ return Object.fromEntries(
56
+ Object.entries(value).map(([key, entry]) => [
57
+ key,
58
+ cloneSchemaDefault(entry)
59
+ ])
60
+ );
61
+ }
62
+ return value;
63
+ }
64
+ export {
65
+ applySchemaDefaults,
66
+ cloneSchemaDefault
67
+ };
68
+ //# sourceMappingURL=json-schema-form-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-defaults.js","sources":["../../src/components/json-schema-form-defaults.ts"],"sourcesContent":["import { isPlainObject } from \"../lib/collections\";\nimport type { JsonSchemaObject } from \"./json-schema-form-types\";\nimport { effectiveProperties } from \"./json-schema-form-conditionals\";\nimport { isOpenStringMap, schemaRendersAsObject } from \"./json-schema-form-resolve\";\n\n// applySchemaDefaults fills missing values from JSON Schema `default` keywords.\n// It walks fixed object properties recursively and re-evaluates `if`/`then`\n// branches after each pass, so a defaulted discriminator can activate defaults\n// in its selected branch. Existing values, including null and empty strings, are\n// never replaced. The original value is returned when no defaults apply.\nexport function applySchemaDefaults(\n schema: JsonSchemaObject,\n value: Record<string, unknown>,\n): Record<string, unknown> {\n return applyObjectDefaults(schema, value, new Set());\n}\n\nfunction applyObjectDefaults(\n schema: JsonSchemaObject,\n value: Record<string, unknown>,\n ancestors: Set<JsonSchemaObject>,\n): Record<string, unknown> {\n // Recursive schemas may point back to an ancestor after refs are hydrated.\n if (ancestors.has(schema)) return value;\n const nextAncestors = new Set(ancestors).add(schema);\n let next = value;\n\n // A default can select another conditional branch, so allow enough passes for\n // a chain of discriminator defaults while keeping malformed schemas bounded.\n const maxPasses = Math.min(\n 100,\n Object.keys(schema.properties ?? {}).length +\n (schema.allOf?.length ?? 0) +\n 2,\n );\n for (let pass = 0; pass < maxPasses; pass += 1) {\n const { properties } = effectiveProperties(schema, next);\n let passChanged = false;\n let passValue = next;\n\n for (const [key, propertySchema] of Object.entries(properties)) {\n const existing = passValue[key];\n let fieldValue = existing;\n let fieldChanged = false;\n\n if (existing === undefined && propertySchema.default !== undefined) {\n fieldValue = cloneSchemaDefault(propertySchema.default);\n fieldChanged = true;\n }\n\n const structuredObject = schemaRendersAsObject(propertySchema);\n if (structuredObject && !isOpenStringMap(propertySchema)) {\n const objectValue = isPlainObject(fieldValue)\n ? (fieldValue as Record<string, unknown>)\n : {};\n const defaultedObject = applyObjectDefaults(\n propertySchema as JsonSchemaObject,\n objectValue,\n nextAncestors,\n );\n if (defaultedObject !== objectValue) {\n fieldValue = defaultedObject;\n fieldChanged = true;\n }\n }\n\n if (fieldChanged) {\n if (!passChanged) passValue = { ...next };\n passValue[key] = fieldValue;\n passChanged = true;\n }\n }\n\n if (!passChanged) break;\n next = passValue;\n }\n return next;\n}\n\nexport function cloneSchemaDefault(value: unknown): unknown {\n if (Array.isArray(value)) return value.map(cloneSchemaDefault);\n if (isPlainObject(value)) {\n return Object.fromEntries(\n Object.entries(value as Record<string, unknown>).map(([key, entry]) => [\n key,\n cloneSchemaDefault(entry),\n ]),\n );\n }\n return value;\n}\n"],"names":[],"mappings":";;;AAUO,SAAS,oBACd,QACA,OACyB;AACzB,SAAO,oBAAoB,QAAQ,OAAO,oBAAI,KAAK;AACrD;AAEA,SAAS,oBACP,QACA,OACA,WACyB;;AAEzB,MAAI,UAAU,IAAI,MAAM,EAAG,QAAO;AAClC,QAAM,gBAAgB,IAAI,IAAI,SAAS,EAAE,IAAI,MAAM;AACnD,MAAI,OAAO;AAIX,QAAM,YAAY,KAAK;AAAA,IACrB;AAAA,IACA,OAAO,KAAK,OAAO,cAAc,CAAA,CAAE,EAAE,YAClC,YAAO,UAAP,mBAAc,WAAU,KACzB;AAAA,EAAA;AAEJ,WAAS,OAAO,GAAG,OAAO,WAAW,QAAQ,GAAG;AAC9C,UAAM,EAAE,WAAA,IAAe,oBAAoB,QAAQ,IAAI;AACvD,QAAI,cAAc;AAClB,QAAI,YAAY;AAEhB,eAAW,CAAC,KAAK,cAAc,KAAK,OAAO,QAAQ,UAAU,GAAG;AAC9D,YAAM,WAAW,UAAU,GAAG;AAC9B,UAAI,aAAa;AACjB,UAAI,eAAe;AAEnB,UAAI,aAAa,UAAa,eAAe,YAAY,QAAW;AAClE,qBAAa,mBAAmB,eAAe,OAAO;AACtD,uBAAe;AAAA,MACjB;AAEA,YAAM,mBAAmB,sBAAsB,cAAc;AAC7D,UAAI,oBAAoB,CAAC,gBAAgB,cAAc,GAAG;AACxD,cAAM,cAAc,cAAc,UAAU,IACvC,aACD,CAAA;AACJ,cAAM,kBAAkB;AAAA,UACtB;AAAA,UACA;AAAA,UACA;AAAA,QAAA;AAEF,YAAI,oBAAoB,aAAa;AACnC,uBAAa;AACb,yBAAe;AAAA,QACjB;AAAA,MACF;AAEA,UAAI,cAAc;AAChB,YAAI,CAAC,YAAa,aAAY,EAAE,GAAG,KAAA;AACnC,kBAAU,GAAG,IAAI;AACjB,sBAAc;AAAA,MAChB;AAAA,IACF;AAEA,QAAI,CAAC,YAAa;AAClB,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEO,SAAS,mBAAmB,OAAyB;AAC1D,MAAI,MAAM,QAAQ,KAAK,EAAG,QAAO,MAAM,IAAI,kBAAkB;AAC7D,MAAI,cAAc,KAAK,GAAG;AACxB,WAAO,OAAO;AAAA,MACZ,OAAO,QAAQ,KAAgC,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAAA,QACrE;AAAA,QACA,mBAAmB,KAAK;AAAA,MAAA,CACzB;AAAA,IAAA;AAAA,EAEL;AACA,SAAO;AACT;"}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const utils = require("../lib/utils.cjs");
5
+ const SegmentedControl = require("./SegmentedControl.cjs");
6
+ const jsonSchemaFormSize = require("./json-schema-form-size.cjs");
7
+ const DEFAULT_MARKER = "default";
8
+ function schemaDefaultChoice(schema, options) {
9
+ const fallback = schema.default;
10
+ if (typeof fallback !== "string" && typeof fallback !== "number" && typeof fallback !== "boolean") {
11
+ return void 0;
12
+ }
13
+ const choice = String(fallback);
14
+ return options.some((opt) => opt.value === choice) ? choice : void 0;
15
+ }
16
+ function optionTitle(opt, isDefault) {
17
+ const parts = [opt.description, isDefault ? `(${DEFAULT_MARKER})` : void 0].filter(Boolean);
18
+ return parts.length > 0 ? parts.join(" ") : void 0;
19
+ }
20
+ const SEGMENTED_SIZE = {
21
+ xs: "sm",
22
+ sm: "sm",
23
+ md: "md",
24
+ lg: "lg",
25
+ xl: "lg"
26
+ };
27
+ function SegmentedEnumControl({ field, fieldId, readOnly, options, value, size }) {
28
+ const hasDescription = options.some((opt) => opt.description);
29
+ const segSize = hasDescription ? "lg" : SEGMENTED_SIZE[size];
30
+ const defaultChoice = schemaDefaultChoice(field.schema, options);
31
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { id: fieldId, "data-jsf-input": true, className: utils.cn(field.inputClassName), children: /* @__PURE__ */ jsxRuntime.jsx(
32
+ SegmentedControl.SegmentedControl,
33
+ {
34
+ "aria-label": field.label,
35
+ value,
36
+ onChange: (next) => field.onChange(next),
37
+ size: segSize,
38
+ wrap: true,
39
+ options: options.map((opt) => {
40
+ const isDefault = opt.value === defaultChoice;
41
+ const title = optionTitle(opt, isDefault);
42
+ return {
43
+ id: opt.value,
44
+ label: opt.label,
45
+ // x-enum-icons resolves to a runtime name string; SegmentedControl
46
+ // renders that via <Icon name>. Non-string (pre-extension) icons are
47
+ // dropped here since the segmented option type only takes name/component.
48
+ ...typeof opt.icon === "string" ? { icon: opt.icon } : {},
49
+ ...opt.description ? { description: opt.description } : {},
50
+ ...title ? { title } : {},
51
+ ...isDefault ? { marker: DEFAULT_MARKER, implied: true } : {},
52
+ ...readOnly ? { disabled: true } : {}
53
+ };
54
+ })
55
+ }
56
+ ) });
57
+ }
58
+ function RadioGroupControl({ field, fieldId, readOnly, options, value, size }) {
59
+ const defaultChoice = schemaDefaultChoice(field.schema, options);
60
+ const impliedChoice = value === "" ? defaultChoice : void 0;
61
+ return /* @__PURE__ */ jsxRuntime.jsx(
62
+ "div",
63
+ {
64
+ role: "radiogroup",
65
+ "aria-label": field.label,
66
+ id: fieldId,
67
+ "data-jsf-input": true,
68
+ className: utils.cn(
69
+ "inline-flex flex-wrap items-center gap-1 rounded-md border border-input bg-background p-0.5",
70
+ field.inputClassName
71
+ ),
72
+ children: options.map((opt) => {
73
+ const checked = opt.value === value;
74
+ const implied = opt.value === impliedChoice;
75
+ const isDefault = opt.value === defaultChoice;
76
+ const markerId = isDefault ? `${fieldId}-default` : void 0;
77
+ return /* @__PURE__ */ jsxRuntime.jsxs(
78
+ "label",
79
+ {
80
+ title: optionTitle(opt, isDefault),
81
+ "data-implied": implied ? "true" : void 0,
82
+ className: utils.cn(
83
+ "inline-flex cursor-pointer select-none items-center rounded px-2.5 py-1",
84
+ jsonSchemaFormSize.labelSizeClass[size],
85
+ checked ? "bg-primary text-primary-foreground" : implied ? "text-foreground outline-dashed outline-1 -outline-offset-1 outline-primary/60 hover:bg-accent" : "text-muted-foreground hover:bg-accent hover:text-foreground",
86
+ readOnly && "cursor-not-allowed opacity-60"
87
+ ),
88
+ children: [
89
+ /* @__PURE__ */ jsxRuntime.jsx(
90
+ "input",
91
+ {
92
+ type: "radio",
93
+ name: fieldId,
94
+ className: "sr-only",
95
+ value: opt.value,
96
+ checked,
97
+ disabled: readOnly,
98
+ "aria-describedby": markerId,
99
+ onChange: () => field.onChange(opt.value)
100
+ }
101
+ ),
102
+ opt.label,
103
+ isDefault && /* @__PURE__ */ jsxRuntime.jsx("span", { id: markerId, "aria-hidden": "true", className: "ml-1.5 text-[11px] font-normal opacity-70", children: DEFAULT_MARKER })
104
+ ]
105
+ },
106
+ opt.value
107
+ );
108
+ })
109
+ }
110
+ );
111
+ }
112
+ exports.RadioGroupControl = RadioGroupControl;
113
+ exports.SegmentedEnumControl = SegmentedEnumControl;
114
+ //# sourceMappingURL=json-schema-form-enum-choice.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-enum-choice.cjs","sources":["../../src/components/json-schema-form-enum-choice.tsx"],"sourcesContent":["import { cn } from \"../lib/utils\";\nimport { SegmentedControl, type SegmentedSize } from \"./SegmentedControl\";\nimport type { FieldControl, FieldOption, JsonSchemaProperty } from \"./json-schema-form-types\";\nimport { labelSizeClass, type FormSize } from \"./json-schema-form-size\";\n\nconst DEFAULT_MARKER = \"default\";\n\n// schemaDefaultChoice returns the option value named by the schema's scalar\n// `default`, or undefined when there is none or it matches no option.\nfunction schemaDefaultChoice(schema: JsonSchemaProperty, options: FieldOption[]): string | undefined {\n const fallback = schema.default;\n if (typeof fallback !== \"string\" && typeof fallback !== \"number\" && typeof fallback !== \"boolean\") {\n return undefined;\n }\n const choice = String(fallback);\n return options.some((opt) => opt.value === choice) ? choice : undefined;\n}\n\n// optionTitle is the native tooltip for one choice: its x-enum-descriptions\n// entry, suffixed with \"(default)\" when it is the schema default.\nfunction optionTitle(opt: FieldOption, isDefault: boolean): string | undefined {\n const parts = [opt.description, isDefault ? `(${DEFAULT_MARKER})` : undefined].filter(Boolean);\n return parts.length > 0 ? parts.join(\" \") : undefined;\n}\n\ntype EnumChoiceProps = {\n field: FieldControl;\n fieldId: string;\n readOnly: boolean;\n options: FieldOption[];\n value: string;\n size: FormSize;\n};\n\n// The FormSize scale is wider than SegmentedControl's; map the extremes down.\nconst SEGMENTED_SIZE: Record<FormSize, SegmentedSize> = {\n xs: \"sm\",\n sm: \"sm\",\n md: \"md\",\n lg: \"lg\",\n xl: \"lg\",\n};\n\n// SegmentedEnumControl renders an enum (x-enum-display: \"segmented\") with the\n// shared SegmentedControl. Icons come from x-enum-icons, descriptions from\n// x-enum-descriptions (which promote it to the large card layout, and double as\n// the segment tooltip). The schema default carries a \"default\" marker and, while\n// the value is unset, the implied style. The wrapper carries the field id +\n// data-jsf-input so the JSF field contract holds.\nexport function SegmentedEnumControl({ field, fieldId, readOnly, options, value, size }: EnumChoiceProps) {\n const hasDescription = options.some((opt) => opt.description);\n const segSize: SegmentedSize = hasDescription ? \"lg\" : SEGMENTED_SIZE[size];\n const defaultChoice = schemaDefaultChoice(field.schema, options);\n return (\n <div id={fieldId} data-jsf-input className={cn(field.inputClassName)}>\n <SegmentedControl\n aria-label={field.label}\n value={value}\n onChange={(next) => field.onChange(next)}\n size={segSize}\n wrap\n options={options.map((opt) => {\n const isDefault = opt.value === defaultChoice;\n const title = optionTitle(opt, isDefault);\n return {\n id: opt.value,\n label: opt.label,\n // x-enum-icons resolves to a runtime name string; SegmentedControl\n // renders that via <Icon name>. Non-string (pre-extension) icons are\n // dropped here since the segmented option type only takes name/component.\n ...(typeof opt.icon === \"string\" ? { icon: opt.icon } : {}),\n ...(opt.description ? { description: opt.description } : {}),\n ...(title ? { title } : {}),\n ...(isDefault ? { marker: DEFAULT_MARKER, implied: true } : {}),\n ...(readOnly ? { disabled: true } : {}),\n };\n })}\n />\n </div>\n );\n}\n\n// RadioGroupControl renders a small fixed enum as a segmented radio-button group\n// instead of a dropdown. It shares EnumControl's option list (any out-of-enum\n// value is already prepended, so a token still shows). One `radiogroup` role +\n// native radios keep it keyboard-navigable; the visible chip is a styled label\n// whose title is the option's description. The schema default carries a muted\n// \"default\" marker (the radio's accessible description) and, while the value is\n// unset, a dashed primary outline — distinct from the filled selection, and\n// never `checked`, because nothing is selected.\nexport function RadioGroupControl({ field, fieldId, readOnly, options, value, size }: EnumChoiceProps) {\n const defaultChoice = schemaDefaultChoice(field.schema, options);\n const impliedChoice = value === \"\" ? defaultChoice : undefined;\n return (\n <div\n role=\"radiogroup\"\n aria-label={field.label}\n id={fieldId}\n data-jsf-input\n className={cn(\n \"inline-flex flex-wrap items-center gap-1 rounded-md border border-input bg-background p-0.5\",\n field.inputClassName,\n )}\n >\n {options.map((opt) => {\n const checked = opt.value === value;\n const implied = opt.value === impliedChoice;\n const isDefault = opt.value === defaultChoice;\n const markerId = isDefault ? `${fieldId}-default` : undefined;\n return (\n <label\n key={opt.value}\n title={optionTitle(opt, isDefault)}\n data-implied={implied ? \"true\" : undefined}\n className={cn(\n \"inline-flex cursor-pointer select-none items-center rounded px-2.5 py-1\",\n labelSizeClass[size],\n checked\n ? \"bg-primary text-primary-foreground\"\n : implied\n ? \"text-foreground outline-dashed outline-1 -outline-offset-1 outline-primary/60 hover:bg-accent\"\n : \"text-muted-foreground hover:bg-accent hover:text-foreground\",\n readOnly && \"cursor-not-allowed opacity-60\",\n )}\n >\n <input\n type=\"radio\"\n name={fieldId}\n className=\"sr-only\"\n value={opt.value}\n checked={checked}\n disabled={readOnly}\n aria-describedby={markerId}\n onChange={() => field.onChange(opt.value)}\n />\n {opt.label}\n {isDefault && (\n <span id={markerId} aria-hidden=\"true\" className=\"ml-1.5 text-[11px] font-normal opacity-70\">\n {DEFAULT_MARKER}\n </span>\n )}\n </label>\n );\n })}\n </div>\n );\n}\n"],"names":["jsx","cn","SegmentedControl","jsxs","labelSizeClass"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { FieldControl, FieldOption } from './json-schema-form-types.js';
2
+ import { FormSize } from './json-schema-form-size.js';
3
+ type EnumChoiceProps = {
4
+ field: FieldControl;
5
+ fieldId: string;
6
+ readOnly: boolean;
7
+ options: FieldOption[];
8
+ value: string;
9
+ size: FormSize;
10
+ };
11
+ export declare function SegmentedEnumControl({ field, fieldId, readOnly, options, value, size }: EnumChoiceProps): import("react").JSX.Element;
12
+ export declare function RadioGroupControl({ field, fieldId, readOnly, options, value, size }: EnumChoiceProps): import("react").JSX.Element;
13
+ export {};
14
+ //# sourceMappingURL=json-schema-form-enum-choice.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema-form-enum-choice.d.ts","sourceRoot":"","sources":["../../src/components/json-schema-form-enum-choice.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAsB,MAAM,0BAA0B,CAAC;AAC9F,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAsBxE,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAiBF,wBAAgB,oBAAoB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,eAAe,+BA+BvG;AAUD,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,eAAe,+BAwDpG"}