@bettercms-ai/kit 0.1.0 → 1.0.0

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 (947) hide show
  1. package/_virtual/_rolldown/runtime.js +13 -0
  2. package/adapters/icons.d.ts +15 -0
  3. package/adapters/icons.js +27 -0
  4. package/adapters/icons.js.map +1 -0
  5. package/adapters/lossy.d.ts +267 -0
  6. package/adapters/lossy.js +233 -0
  7. package/adapters/lossy.js.map +1 -0
  8. package/adapters/prod-types.d.ts +468 -0
  9. package/adapters/prod-types.js +646 -0
  10. package/adapters/prod-types.js.map +1 -0
  11. package/adapters/schema.d.ts +115 -0
  12. package/adapters/schema.js +2203 -0
  13. package/adapters/schema.js.map +1 -0
  14. package/adapters/values.d.ts +200 -0
  15. package/adapters/values.js +553 -0
  16. package/adapters/values.js.map +1 -0
  17. package/brand/logo.d.ts +17 -0
  18. package/brand/logo.js +9 -0
  19. package/brand/logo.js.map +1 -0
  20. package/context.d.ts +269 -0
  21. package/context.js +214 -0
  22. package/context.js.map +1 -0
  23. package/controls/button.d.ts +58 -0
  24. package/controls/button.js +507 -0
  25. package/controls/button.js.map +1 -0
  26. package/controls/c1.d.ts +11 -0
  27. package/controls/c1.js +24 -0
  28. package/controls/c1.js.map +1 -0
  29. package/controls/c2.d.ts +10 -0
  30. package/controls/c2.js +19 -0
  31. package/controls/c2.js.map +1 -0
  32. package/controls/choice.d.ts +39 -0
  33. package/controls/choice.js +410 -0
  34. package/controls/choice.js.map +1 -0
  35. package/controls/code-register.d.ts +1 -0
  36. package/controls/code-register.js +8 -0
  37. package/controls/code-register.js.map +1 -0
  38. package/controls/code.d.ts +42 -0
  39. package/controls/code.js +396 -0
  40. package/controls/code.js.map +1 -0
  41. package/controls/color.d.ts +5 -0
  42. package/controls/color.js +130 -0
  43. package/controls/color.js.map +1 -0
  44. package/controls/component-services.d.ts +114 -0
  45. package/controls/date-register.d.ts +1 -0
  46. package/controls/date-register.js +9 -0
  47. package/controls/date-register.js.map +1 -0
  48. package/controls/date-zone.d.ts +104 -0
  49. package/controls/date-zone.js +272 -0
  50. package/controls/date-zone.js.map +1 -0
  51. package/controls/date.d.ts +7 -0
  52. package/controls/date.js +458 -0
  53. package/controls/date.js.map +1 -0
  54. package/controls/form-picker-register.d.ts +1 -0
  55. package/controls/form-picker-register.js +19 -0
  56. package/controls/form-picker-register.js.map +1 -0
  57. package/controls/form-picker.d.ts +43 -0
  58. package/controls/form-picker.js +83 -0
  59. package/controls/form-picker.js.map +1 -0
  60. package/controls/icon-register.d.ts +1 -0
  61. package/controls/icon-register.js +8 -0
  62. package/controls/icon-register.js.map +1 -0
  63. package/controls/icon.d.ts +38 -0
  64. package/controls/icon.js +355 -0
  65. package/controls/icon.js.map +1 -0
  66. package/controls/index.d.ts +5 -0
  67. package/controls/index.js +37 -0
  68. package/controls/index.js.map +1 -0
  69. package/controls/json-register.d.ts +1 -0
  70. package/controls/json-register.js +8 -0
  71. package/controls/json-register.js.map +1 -0
  72. package/controls/json.d.ts +2 -0
  73. package/controls/json.js +72 -0
  74. package/controls/json.js.map +1 -0
  75. package/controls/link.d.ts +260 -0
  76. package/controls/link.js +1186 -0
  77. package/controls/link.js.map +1 -0
  78. package/controls/location-register.d.ts +1 -0
  79. package/controls/location-register.js +8 -0
  80. package/controls/location-register.js.map +1 -0
  81. package/controls/location.d.ts +16 -0
  82. package/controls/location.js +197 -0
  83. package/controls/location.js.map +1 -0
  84. package/controls/media-register.d.ts +1 -0
  85. package/controls/media-register.js +12 -0
  86. package/controls/media-register.js.map +1 -0
  87. package/controls/media-services.d.ts +40 -0
  88. package/controls/media.d.ts +73 -0
  89. package/controls/media.js +1076 -0
  90. package/controls/media.js.map +1 -0
  91. package/controls/number.d.ts +22 -0
  92. package/controls/number.js +195 -0
  93. package/controls/number.js.map +1 -0
  94. package/controls/reference-register.d.ts +1 -0
  95. package/controls/reference-register.js +10 -0
  96. package/controls/reference-register.js.map +1 -0
  97. package/controls/reference-services.d.ts +54 -0
  98. package/controls/reference.d.ts +23 -0
  99. package/controls/reference.js +761 -0
  100. package/controls/reference.js.map +1 -0
  101. package/controls/rich-text/blocks.d.ts +28 -0
  102. package/controls/rich-text/blocks.js +1532 -0
  103. package/controls/rich-text/blocks.js.map +1 -0
  104. package/controls/rich-text/catalog.d.ts +98 -0
  105. package/controls/rich-text/catalog.js +613 -0
  106. package/controls/rich-text/catalog.js.map +1 -0
  107. package/controls/rich-text/codec.d.ts +56 -0
  108. package/controls/rich-text/codec.js +32 -0
  109. package/controls/rich-text/codec.js.map +1 -0
  110. package/controls/rich-text/component-card.d.ts +14 -0
  111. package/controls/rich-text/component-card.js +706 -0
  112. package/controls/rich-text/component-card.js.map +1 -0
  113. package/controls/rich-text/control.d.ts +21 -0
  114. package/controls/rich-text/control.js +254 -0
  115. package/controls/rich-text/control.js.map +1 -0
  116. package/controls/rich-text/dom.d.ts +190 -0
  117. package/controls/rich-text/dom.js +690 -0
  118. package/controls/rich-text/dom.js.map +1 -0
  119. package/controls/rich-text/editor.d.ts +50 -0
  120. package/controls/rich-text/editor.js +1530 -0
  121. package/controls/rich-text/editor.js.map +1 -0
  122. package/controls/rich-text/floating.d.ts +23 -0
  123. package/controls/rich-text/floating.js +137 -0
  124. package/controls/rich-text/floating.js.map +1 -0
  125. package/controls/rich-text/index.d.ts +1 -0
  126. package/controls/rich-text/index.js +12 -0
  127. package/controls/rich-text/index.js.map +1 -0
  128. package/controls/rich-text/link-form.d.ts +13 -0
  129. package/controls/rich-text/link-form.js +111 -0
  130. package/controls/rich-text/link-form.js.map +1 -0
  131. package/controls/rich-text/markdown.d.ts +6 -0
  132. package/controls/rich-text/markdown.js +179 -0
  133. package/controls/rich-text/markdown.js.map +1 -0
  134. package/controls/rich-text/ops.d.ts +35 -0
  135. package/controls/rich-text/ops.js +314 -0
  136. package/controls/rich-text/ops.js.map +1 -0
  137. package/controls/rich-text/toolbar.d.ts +85 -0
  138. package/controls/rich-text/toolbar.js +338 -0
  139. package/controls/rich-text/toolbar.js.map +1 -0
  140. package/controls/scale.d.ts +56 -0
  141. package/controls/scale.js +563 -0
  142. package/controls/scale.js.map +1 -0
  143. package/controls/slot-register.d.ts +1 -0
  144. package/controls/slot-register.js +16 -0
  145. package/controls/slot-register.js.map +1 -0
  146. package/controls/slot-services.d.ts +97 -0
  147. package/controls/slot-services.js +38 -0
  148. package/controls/slot-services.js.map +1 -0
  149. package/controls/slot.d.ts +33 -0
  150. package/controls/slot.js +348 -0
  151. package/controls/slot.js.map +1 -0
  152. package/controls/table/index.d.ts +1 -0
  153. package/controls/table/index.js +12 -0
  154. package/controls/table/index.js.map +1 -0
  155. package/controls/table/prod.d.ts +21 -0
  156. package/controls/table/prod.js +79 -0
  157. package/controls/table/prod.js.map +1 -0
  158. package/controls/table/refs.d.ts +50 -0
  159. package/controls/table/refs.js +68 -0
  160. package/controls/table/refs.js.map +1 -0
  161. package/controls/table/stored.d.ts +15 -0
  162. package/controls/table/stored.js +44 -0
  163. package/controls/table/stored.js.map +1 -0
  164. package/controls/table/table-editor.d.ts +103 -0
  165. package/controls/table/table-editor.js +2722 -0
  166. package/controls/table/table-editor.js.map +1 -0
  167. package/controls/table/table-link.d.ts +24 -0
  168. package/controls/table/table-link.js +180 -0
  169. package/controls/table/table-link.js.map +1 -0
  170. package/controls/table/table.d.ts +9 -0
  171. package/controls/table/table.js +103 -0
  172. package/controls/table/table.js.map +1 -0
  173. package/controls/text.d.ts +17 -0
  174. package/controls/text.js +287 -0
  175. package/controls/text.js.map +1 -0
  176. package/engine/array.d.ts +101 -0
  177. package/engine/array.js +893 -0
  178. package/engine/array.js.map +1 -0
  179. package/engine/bits.d.ts +24 -0
  180. package/engine/bits.js +60 -0
  181. package/engine/bits.js.map +1 -0
  182. package/engine/breadcrumb.d.ts +45 -0
  183. package/engine/breadcrumb.js +87 -0
  184. package/engine/breadcrumb.js.map +1 -0
  185. package/engine/expand.d.ts +68 -0
  186. package/engine/expand.js +170 -0
  187. package/engine/expand.js.map +1 -0
  188. package/engine/field-list.d.ts +20 -0
  189. package/engine/field-list.js +19 -0
  190. package/engine/field-list.js.map +1 -0
  191. package/engine/field-shell.d.ts +49 -0
  192. package/engine/field-shell.js +860 -0
  193. package/engine/field-shell.js.map +1 -0
  194. package/engine/frame.d.ts +120 -0
  195. package/engine/frame.js +599 -0
  196. package/engine/frame.js.map +1 -0
  197. package/engine/group-summary.d.ts +4 -0
  198. package/engine/group-summary.js +66 -0
  199. package/engine/group-summary.js.map +1 -0
  200. package/engine/grouping.d.ts +224 -0
  201. package/engine/grouping.js +824 -0
  202. package/engine/grouping.js.map +1 -0
  203. package/engine/item-list.d.ts +89 -0
  204. package/engine/item-list.js +703 -0
  205. package/engine/item-list.js.map +1 -0
  206. package/engine/kit-field.d.ts +72 -0
  207. package/engine/kit-field.js +523 -0
  208. package/engine/kit-field.js.map +1 -0
  209. package/engine/schema-form.d.ts +91 -0
  210. package/engine/schema-form.js +320 -0
  211. package/engine/schema-form.js.map +1 -0
  212. package/engine/slot.d.ts +13 -0
  213. package/engine/slot.js +226 -0
  214. package/engine/slot.js.map +1 -0
  215. package/index.d.ts +46 -0
  216. package/index.js +55 -0
  217. package/index.js.map +1 -0
  218. package/kit.css +56 -0
  219. package/lib/cn.d.ts +4 -0
  220. package/lib/cn.js +53 -0
  221. package/lib/cn.js.map +1 -0
  222. package/lib/columns.d.ts +14 -0
  223. package/lib/columns.js +27 -0
  224. package/lib/columns.js.map +1 -0
  225. package/lib/frames.d.ts +36 -0
  226. package/lib/frames.js +214 -0
  227. package/lib/frames.js.map +1 -0
  228. package/lib/icons.d.ts +16 -0
  229. package/lib/icons.js +172 -0
  230. package/lib/icons.js.map +1 -0
  231. package/lib/path.d.ts +29 -0
  232. package/lib/path.js +64 -0
  233. package/lib/path.js.map +1 -0
  234. package/lib/schema.d.ts +49 -0
  235. package/lib/schema.js +287 -0
  236. package/lib/schema.js.map +1 -0
  237. package/lib/utils.d.ts +7 -0
  238. package/lib/utils.js +37 -0
  239. package/lib/utils.js.map +1 -0
  240. package/lib/validate.d.ts +20 -0
  241. package/lib/validate.js +150 -0
  242. package/lib/validate.js.map +1 -0
  243. package/package.json +31 -59
  244. package/schema/adapters.d.ts +28 -0
  245. package/schema/adapters.js +493 -0
  246. package/schema/adapters.js.map +1 -0
  247. package/schema/help.d.ts +25 -0
  248. package/schema/help.js +54 -0
  249. package/schema/help.js.map +1 -0
  250. package/schema/scale.d.ts +69 -0
  251. package/schema/scale.js +250 -0
  252. package/schema/scale.js.map +1 -0
  253. package/schema/sources.d.ts +103 -0
  254. package/schema/sources.js +65 -0
  255. package/schema/sources.js.map +1 -0
  256. package/schema/table.d.ts +319 -0
  257. package/schema/table.js +1198 -0
  258. package/schema/table.js.map +1 -0
  259. package/schema/types.d.ts +269 -0
  260. package/schema/types.js +14 -0
  261. package/schema/types.js.map +1 -0
  262. package/types.d.ts +17 -0
  263. package/ui/action-tray.d.ts +54 -0
  264. package/ui/action-tray.js +153 -0
  265. package/ui/action-tray.js.map +1 -0
  266. package/ui/button.d.ts +57 -0
  267. package/ui/button.js +202 -0
  268. package/ui/button.js.map +1 -0
  269. package/ui/choice-switch.d.ts +36 -0
  270. package/ui/choice-switch.js +57 -0
  271. package/ui/choice-switch.js.map +1 -0
  272. package/ui/controls.d.ts +83 -0
  273. package/ui/controls.js +319 -0
  274. package/ui/controls.js.map +1 -0
  275. package/ui/display.d.ts +156 -0
  276. package/ui/display.js +444 -0
  277. package/ui/display.js.map +1 -0
  278. package/ui/expanded-editor-modal.d.ts +26 -0
  279. package/ui/expanded-editor-modal.js +140 -0
  280. package/ui/expanded-editor-modal.js.map +1 -0
  281. package/ui/field-context.d.ts +12 -0
  282. package/ui/field-context.js +23 -0
  283. package/ui/field-context.js.map +1 -0
  284. package/ui/floating-panel.d.ts +152 -0
  285. package/ui/floating-panel.js +912 -0
  286. package/ui/floating-panel.js.map +1 -0
  287. package/ui/index.d.ts +12 -0
  288. package/ui/index.js +13 -0
  289. package/ui/input.d.ts +78 -0
  290. package/ui/input.js +250 -0
  291. package/ui/input.js.map +1 -0
  292. package/ui/mode-bar.d.ts +31 -0
  293. package/ui/mode-bar.js +65 -0
  294. package/ui/mode-bar.js.map +1 -0
  295. package/ui/overlay.d.ts +123 -0
  296. package/ui/overlay.js +378 -0
  297. package/ui/overlay.js.map +1 -0
  298. package/ui/path-crumbs.d.ts +90 -0
  299. package/ui/path-crumbs.js +532 -0
  300. package/ui/path-crumbs.js.map +1 -0
  301. package/ui/presence.d.ts +16 -0
  302. package/ui/presence.js +65 -0
  303. package/ui/presence.js.map +1 -0
  304. package/ui/select.d.ts +66 -0
  305. package/ui/select.js +405 -0
  306. package/ui/select.js.map +1 -0
  307. package/ui/shortcut-hint.d.ts +14 -0
  308. package/ui/shortcut-hint.js +35 -0
  309. package/ui/shortcut-hint.js.map +1 -0
  310. package/ui/surfaces.d.ts +23 -0
  311. package/ui/surfaces.js +26 -0
  312. package/ui/surfaces.js.map +1 -0
  313. package/ui/tooltip-root.d.ts +12 -0
  314. package/ui/tooltip-root.js +76 -0
  315. package/ui/tooltip-root.js.map +1 -0
  316. package/ui/variants.d.ts +15 -0
  317. package/ui/variants.js +14 -0
  318. package/ui/variants.js.map +1 -0
  319. package/LICENSE +0 -21
  320. package/README.md +0 -27
  321. package/dist/_chunks-cjs/_visual-editing.js +0 -5898
  322. package/dist/_chunks-cjs/refractor.js +0 -22
  323. package/dist/_chunks-es/_visual-editing.mjs +0 -5904
  324. package/dist/_chunks-es/refractor.mjs +0 -25
  325. package/dist/_color.d.mts +0 -119
  326. package/dist/_color.d.ts +0 -119
  327. package/dist/_color.js +0 -1412
  328. package/dist/_color.mjs +0 -1411
  329. package/dist/_visual-editing.d.mts +0 -1126
  330. package/dist/_visual-editing.d.ts +0 -1126
  331. package/dist/_visual-editing.js +0 -30
  332. package/dist/_visual-editing.mjs +0 -30
  333. package/dist/index.d.mts +0 -3140
  334. package/dist/index.d.ts +0 -3140
  335. package/dist/index.js +0 -2036
  336. package/dist/index.mjs +0 -2044
  337. package/dist/theme.d.mts +0 -1506
  338. package/dist/theme.d.ts +0 -1506
  339. package/dist/theme.js +0 -4126
  340. package/dist/theme.mjs +0 -4126
  341. package/exports/_visual-editing.ts +0 -31
  342. package/exports/index.ts +0 -1
  343. package/exports/theme.ts +0 -1
  344. package/src/color/index.d.mts +0 -119
  345. package/src/color/index.mjs +0 -1411
  346. package/src/core/__workshop__/constants.ts +0 -293
  347. package/src/core/_compat.ts +0 -264
  348. package/src/core/components/autocomplete/__mocks__/apiStore.ts +0 -49
  349. package/src/core/components/autocomplete/__mocks__/countries.ts +0 -245
  350. package/src/core/components/autocomplete/__workshop__/async.tsx +0 -156
  351. package/src/core/components/autocomplete/__workshop__/constrainedHeight.tsx +0 -137
  352. package/src/core/components/autocomplete/__workshop__/custom.tsx +0 -89
  353. package/src/core/components/autocomplete/__workshop__/example.tsx +0 -79
  354. package/src/core/components/autocomplete/__workshop__/focusAndBlur.tsx +0 -36
  355. package/src/core/components/autocomplete/__workshop__/fullscreen.tsx +0 -294
  356. package/src/core/components/autocomplete/__workshop__/index.ts +0 -39
  357. package/src/core/components/autocomplete/__workshop__/types.ts +0 -4
  358. package/src/core/components/autocomplete/autocomplete.styles.tsx +0 -39
  359. package/src/core/components/autocomplete/autocomplete.tsx +0 -767
  360. package/src/core/components/autocomplete/autocompleteOption.tsx +0 -45
  361. package/src/core/components/autocomplete/autocompleteReducer.ts +0 -47
  362. package/src/core/components/autocomplete/constants.ts +0 -28
  363. package/src/core/components/autocomplete/index.ts +0 -2
  364. package/src/core/components/autocomplete/types.ts +0 -108
  365. package/src/core/components/breadcrumbs/__workshop__/example.tsx +0 -62
  366. package/src/core/components/breadcrumbs/__workshop__/index.ts +0 -14
  367. package/src/core/components/breadcrumbs/breadcrumbs.styles.ts +0 -18
  368. package/src/core/components/breadcrumbs/breadcrumbs.test.tsx +0 -51
  369. package/src/core/components/breadcrumbs/breadcrumbs.tsx +0 -133
  370. package/src/core/components/breadcrumbs/index.ts +0 -1
  371. package/src/core/components/dialog/__workshop__/activate.tsx +0 -134
  372. package/src/core/components/dialog/__workshop__/autoFocus.tsx +0 -29
  373. package/src/core/components/dialog/__workshop__/index.ts +0 -19
  374. package/src/core/components/dialog/__workshop__/layering.tsx +0 -41
  375. package/src/core/components/dialog/__workshop__/nested.tsx +0 -72
  376. package/src/core/components/dialog/__workshop__/onScroll.tsx +0 -39
  377. package/src/core/components/dialog/__workshop__/panes.tsx +0 -82
  378. package/src/core/components/dialog/__workshop__/position.tsx +0 -30
  379. package/src/core/components/dialog/__workshop__/props.tsx +0 -75
  380. package/src/core/components/dialog/__workshop__/provider.tsx +0 -11
  381. package/src/core/components/dialog/__workshop__/wrapped.tsx +0 -76
  382. package/src/core/components/dialog/dialog.tsx +0 -430
  383. package/src/core/components/dialog/dialogContext.ts +0 -20
  384. package/src/core/components/dialog/dialogProvider.tsx +0 -35
  385. package/src/core/components/dialog/index.ts +0 -4
  386. package/src/core/components/dialog/styles.ts +0 -77
  387. package/src/core/components/dialog/useDialog.ts +0 -11
  388. package/src/core/components/hotkeys/__workshop__/index.ts +0 -14
  389. package/src/core/components/hotkeys/__workshop__/plain.tsx +0 -9
  390. package/src/core/components/hotkeys/hotkeys.test.tsx +0 -42
  391. package/src/core/components/hotkeys/hotkeys.tsx +0 -66
  392. package/src/core/components/hotkeys/index.ts +0 -1
  393. package/src/core/components/index.ts +0 -9
  394. package/src/core/components/menu/__workshop__/asComponent.tsx +0 -45
  395. package/src/core/components/menu/__workshop__/avatarMenu.tsx +0 -51
  396. package/src/core/components/menu/__workshop__/closableMenuButton.tsx +0 -46
  397. package/src/core/components/menu/__workshop__/constrainedInBoundary.tsx +0 -134
  398. package/src/core/components/menu/__workshop__/customMenuItem.tsx +0 -45
  399. package/src/core/components/menu/__workshop__/customSelectedState.tsx +0 -39
  400. package/src/core/components/menu/__workshop__/disableFocusOnClose.tsx +0 -40
  401. package/src/core/components/menu/__workshop__/groups.tsx +0 -156
  402. package/src/core/components/menu/__workshop__/index.ts +0 -89
  403. package/src/core/components/menu/__workshop__/menuButton.tsx +0 -80
  404. package/src/core/components/menu/__workshop__/menuGroupRight.tsx +0 -58
  405. package/src/core/components/menu/__workshop__/nestedMenu.tsx +0 -22
  406. package/src/core/components/menu/__workshop__/onCloseMenuButton.tsx +0 -41
  407. package/src/core/components/menu/__workshop__/selectedItem.tsx +0 -69
  408. package/src/core/components/menu/__workshop__/shouldFocus.tsx +0 -47
  409. package/src/core/components/menu/__workshop__/tones.tsx +0 -25
  410. package/src/core/components/menu/__workshop__/withoutArrow.tsx +0 -32
  411. package/src/core/components/menu/helpers.ts +0 -82
  412. package/src/core/components/menu/index.ts +0 -5
  413. package/src/core/components/menu/menu.spacing.test.tsx +0 -63
  414. package/src/core/components/menu/menu.test.tsx +0 -125
  415. package/src/core/components/menu/menu.tsx +0 -178
  416. package/src/core/components/menu/menuButton.tsx +0 -268
  417. package/src/core/components/menu/menuContext.ts +0 -18
  418. package/src/core/components/menu/menuDivider.ts +0 -23
  419. package/src/core/components/menu/menuGroup.spacing.test.tsx +0 -63
  420. package/src/core/components/menu/menuGroup.tsx +0 -233
  421. package/src/core/components/menu/menuItem.spacing.test.tsx +0 -59
  422. package/src/core/components/menu/menuItem.tsx +0 -197
  423. package/src/core/components/menu/useMenu.ts +0 -21
  424. package/src/core/components/menu/useMenuController.ts +0 -231
  425. package/src/core/components/skeleton/__workshop__/delay.tsx +0 -70
  426. package/src/core/components/skeleton/__workshop__/index.ts +0 -11
  427. package/src/core/components/skeleton/__workshop__/skeleton.tsx +0 -64
  428. package/src/core/components/skeleton/index.ts +0 -2
  429. package/src/core/components/skeleton/skeleton.tsx +0 -57
  430. package/src/core/components/skeleton/styles.ts +0 -50
  431. package/src/core/components/skeleton/textSkeleton.tsx +0 -122
  432. package/src/core/components/tab/__workshop__/example.tsx +0 -79
  433. package/src/core/components/tab/__workshop__/index.ts +0 -14
  434. package/src/core/components/tab/index.ts +0 -3
  435. package/src/core/components/tab/tab.tsx +0 -101
  436. package/src/core/components/tab/tabList.test.tsx +0 -48
  437. package/src/core/components/tab/tabList.tsx +0 -70
  438. package/src/core/components/tab/tabPanel.tsx +0 -39
  439. package/src/core/components/toast/__workshop__/hook.tsx +0 -71
  440. package/src/core/components/toast/__workshop__/index.ts +0 -19
  441. package/src/core/components/toast/__workshop__/toast.tsx +0 -26
  442. package/src/core/components/toast/index.ts +0 -4
  443. package/src/core/components/toast/styles.ts +0 -77
  444. package/src/core/components/toast/toast.test.tsx +0 -101
  445. package/src/core/components/toast/toast.tsx +0 -198
  446. package/src/core/components/toast/toastContext.ts +0 -7
  447. package/src/core/components/toast/toastLayer.tsx +0 -51
  448. package/src/core/components/toast/toastProvider.tsx +0 -113
  449. package/src/core/components/toast/toastState.ts +0 -6
  450. package/src/core/components/toast/types.ts +0 -26
  451. package/src/core/components/toast/useToast.ts +0 -25
  452. package/src/core/components/tree/__workshop__/basic.perf.ts +0 -19
  453. package/src/core/components/tree/__workshop__/basic.tsx +0 -105
  454. package/src/core/components/tree/__workshop__/index.ts +0 -21
  455. package/src/core/components/tree/__workshop__/tabFromElement.tsx +0 -84
  456. package/src/core/components/tree/helpers.ts +0 -105
  457. package/src/core/components/tree/index.ts +0 -4
  458. package/src/core/components/tree/style.ts +0 -105
  459. package/src/core/components/tree/tree.test.tsx +0 -55
  460. package/src/core/components/tree/tree.tsx +0 -240
  461. package/src/core/components/tree/treeContext.ts +0 -10
  462. package/src/core/components/tree/treeGroup.tsx +0 -28
  463. package/src/core/components/tree/treeItem.test.tsx +0 -65
  464. package/src/core/components/tree/treeItem.tsx +0 -224
  465. package/src/core/components/tree/types.ts +0 -25
  466. package/src/core/components/tree/useTree.ts +0 -17
  467. package/src/core/constants.ts +0 -79
  468. package/src/core/helpers/animation.ts +0 -27
  469. package/src/core/helpers/element.ts +0 -55
  470. package/src/core/helpers/focus.ts +0 -100
  471. package/src/core/helpers/index.ts +0 -4
  472. package/src/core/helpers/scroll.ts +0 -15
  473. package/src/core/hooks/index.ts +0 -12
  474. package/src/core/hooks/useArrayProp.ts +0 -17
  475. package/src/core/hooks/useClickOutside.test.tsx +0 -482
  476. package/src/core/hooks/useClickOutside.ts +0 -118
  477. package/src/core/hooks/useClickOutsideEvent.test.tsx +0 -115
  478. package/src/core/hooks/useClickOutsideEvent.ts +0 -73
  479. package/src/core/hooks/useCustomValidity.ts +0 -13
  480. package/src/core/hooks/useDelayed.test.ts +0 -88
  481. package/src/core/hooks/useDelayedState.ts +0 -36
  482. package/src/core/hooks/useElementRect/__workshop__/example.tsx +0 -32
  483. package/src/core/hooks/useElementRect/__workshop__/index.ts +0 -14
  484. package/src/core/hooks/useElementRect/index.ts +0 -1
  485. package/src/core/hooks/useElementRect/useElementRect.ts +0 -13
  486. package/src/core/hooks/useElementSize.ts +0 -19
  487. package/src/core/hooks/useForwardedRef.ts +0 -19
  488. package/src/core/hooks/useGlobalKeyDown.ts +0 -24
  489. package/src/core/hooks/useIsomorphicEffect.ts +0 -7
  490. package/src/core/hooks/useMatchMedia.ts +0 -28
  491. package/src/core/hooks/useMediaIndex/__workshop__/index.ts +0 -14
  492. package/src/core/hooks/useMediaIndex/__workshop__/test.tsx +0 -14
  493. package/src/core/hooks/useMediaIndex/index.ts +0 -1
  494. package/src/core/hooks/useMediaIndex/useMediaIndex.test.tsx +0 -36
  495. package/src/core/hooks/useMediaIndex/useMediaIndex.ts +0 -102
  496. package/src/core/hooks/useMounted.ts +0 -15
  497. package/src/core/hooks/usePrefersDark.hydration.test.tsx +0 -56
  498. package/src/core/hooks/usePrefersDark.test.tsx +0 -19
  499. package/src/core/hooks/usePrefersDark.ts +0 -16
  500. package/src/core/hooks/usePrefersReducedMotion.hydration.test.tsx +0 -56
  501. package/src/core/hooks/usePrefersReducedMotion.test.tsx +0 -19
  502. package/src/core/hooks/usePrefersReducedMotion.ts +0 -16
  503. package/src/core/index.ts +0 -10
  504. package/src/core/lib/createGlobalScopedContext.ts +0 -36
  505. package/src/core/lib/globalScope.ts +0 -19
  506. package/src/core/lib/isRecord.ts +0 -3
  507. package/src/core/middleware/origin.ts +0 -47
  508. package/src/core/observers/elementSizeObserver.ts +0 -116
  509. package/src/core/observers/index.ts +0 -2
  510. package/src/core/observers/resizeObserver.ts +0 -9
  511. package/src/core/primitives/_selectable/index.ts +0 -1
  512. package/src/core/primitives/_selectable/selectable.tsx +0 -15
  513. package/src/core/primitives/_selectable/style.ts +0 -115
  514. package/src/core/primitives/avatar/__workshop__/asButton.tsx +0 -14
  515. package/src/core/primitives/avatar/__workshop__/index.ts +0 -29
  516. package/src/core/primitives/avatar/__workshop__/stack.tsx +0 -25
  517. package/src/core/primitives/avatar/__workshop__/withinButton.tsx +0 -63
  518. package/src/core/primitives/avatar/__workshop__/withinMenuItem.tsx +0 -70
  519. package/src/core/primitives/avatar/avatar.tsx +0 -200
  520. package/src/core/primitives/avatar/avatarCounter.tsx +0 -91
  521. package/src/core/primitives/avatar/avatarStack.tsx +0 -100
  522. package/src/core/primitives/avatar/index.ts +0 -4
  523. package/src/core/primitives/avatar/styles.ts +0 -167
  524. package/src/core/primitives/avatar/types.ts +0 -17
  525. package/src/core/primitives/badge/__workshop__/index.ts +0 -19
  526. package/src/core/primitives/badge/__workshop__/props.tsx +0 -30
  527. package/src/core/primitives/badge/__workshop__/tones.tsx +0 -21
  528. package/src/core/primitives/badge/badge.test.tsx +0 -16
  529. package/src/core/primitives/badge/badge.tsx +0 -70
  530. package/src/core/primitives/badge/index.ts +0 -1
  531. package/src/core/primitives/badge/styles.ts +0 -20
  532. package/src/core/primitives/badge/types.ts +0 -8
  533. package/src/core/primitives/box/__workshop__/asComponent.tsx +0 -31
  534. package/src/core/primitives/box/__workshop__/index.ts +0 -24
  535. package/src/core/primitives/box/__workshop__/props.tsx +0 -20
  536. package/src/core/primitives/box/__workshop__/responsive.tsx +0 -20
  537. package/src/core/primitives/box/box.test.tsx +0 -142
  538. package/src/core/primitives/box/box.tsx +0 -154
  539. package/src/core/primitives/box/index.ts +0 -1
  540. package/src/core/primitives/button/__workshop__/custom.tsx +0 -51
  541. package/src/core/primitives/button/__workshop__/customIcons.tsx +0 -30
  542. package/src/core/primitives/button/__workshop__/disabled.tsx +0 -74
  543. package/src/core/primitives/button/__workshop__/index.ts +0 -59
  544. package/src/core/primitives/button/__workshop__/labelUploadButton.tsx +0 -36
  545. package/src/core/primitives/button/__workshop__/mixedChildren.tsx +0 -12
  546. package/src/core/primitives/button/__workshop__/props.tsx +0 -55
  547. package/src/core/primitives/button/__workshop__/stacked.tsx +0 -58
  548. package/src/core/primitives/button/__workshop__/styled1.tsx +0 -17
  549. package/src/core/primitives/button/__workshop__/styled2.tsx +0 -19
  550. package/src/core/primitives/button/__workshop__/uploadButton.tsx +0 -28
  551. package/src/core/primitives/button/button.test.tsx +0 -82
  552. package/src/core/primitives/button/button.tsx +0 -210
  553. package/src/core/primitives/button/index.ts +0 -1
  554. package/src/core/primitives/button/styles.ts +0 -117
  555. package/src/core/primitives/card/__workshop__/allTones.tsx +0 -25
  556. package/src/core/primitives/card/__workshop__/asButton.tsx +0 -107
  557. package/src/core/primitives/card/__workshop__/asComponent.tsx +0 -27
  558. package/src/core/primitives/card/__workshop__/checkered.tsx +0 -26
  559. package/src/core/primitives/card/__workshop__/index.ts +0 -18
  560. package/src/core/primitives/card/__workshop__/interactive.tsx +0 -30
  561. package/src/core/primitives/card/__workshop__/listNavigation.tsx +0 -80
  562. package/src/core/primitives/card/__workshop__/props.tsx +0 -53
  563. package/src/core/primitives/card/__workshop__/selected.tsx +0 -94
  564. package/src/core/primitives/card/__workshop__/styled.tsx +0 -14
  565. package/src/core/primitives/card/card.tsx +0 -128
  566. package/src/core/primitives/card/index.ts +0 -2
  567. package/src/core/primitives/card/styles.ts +0 -147
  568. package/src/core/primitives/card/types.ts +0 -11
  569. package/src/core/primitives/checkbox/__workshop__/example.tsx +0 -25
  570. package/src/core/primitives/checkbox/__workshop__/index.ts +0 -13
  571. package/src/core/primitives/checkbox/__workshop__/props.tsx +0 -33
  572. package/src/core/primitives/checkbox/__workshop__/readOnly.tsx +0 -16
  573. package/src/core/primitives/checkbox/__workshop__/tones.tsx +0 -28
  574. package/src/core/primitives/checkbox/checkbox.tsx +0 -73
  575. package/src/core/primitives/checkbox/index.ts +0 -1
  576. package/src/core/primitives/checkbox/styles.ts +0 -128
  577. package/src/core/primitives/code/__workshop__/index.ts +0 -19
  578. package/src/core/primitives/code/__workshop__/opticalAlignment.tsx +0 -48
  579. package/src/core/primitives/code/__workshop__/props.tsx +0 -21
  580. package/src/core/primitives/code/code.tsx +0 -55
  581. package/src/core/primitives/code/index.ts +0 -1
  582. package/src/core/primitives/code/refractor.tsx +0 -20
  583. package/src/core/primitives/code/styles.ts +0 -77
  584. package/src/core/primitives/container/__workshop__/example.tsx +0 -20
  585. package/src/core/primitives/container/__workshop__/index.ts +0 -8
  586. package/src/core/primitives/container/container.tsx +0 -54
  587. package/src/core/primitives/container/index.ts +0 -2
  588. package/src/core/primitives/container/styles.ts +0 -23
  589. package/src/core/primitives/container/types.ts +0 -6
  590. package/src/core/primitives/flex/__workshop__/example.tsx +0 -34
  591. package/src/core/primitives/flex/__workshop__/gap.tsx +0 -25
  592. package/src/core/primitives/flex/__workshop__/index.ts +0 -11
  593. package/src/core/primitives/flex/flex.tsx +0 -64
  594. package/src/core/primitives/flex/index.ts +0 -1
  595. package/src/core/primitives/grid/__workshop__/index.ts +0 -10
  596. package/src/core/primitives/grid/__workshop__/responsive.tsx +0 -54
  597. package/src/core/primitives/grid/grid.test.tsx +0 -80
  598. package/src/core/primitives/grid/grid.tsx +0 -74
  599. package/src/core/primitives/grid/index.ts +0 -1
  600. package/src/core/primitives/heading/__workshop__/index.ts +0 -19
  601. package/src/core/primitives/heading/__workshop__/opticalAlignment.tsx +0 -54
  602. package/src/core/primitives/heading/__workshop__/plain.tsx +0 -32
  603. package/src/core/primitives/heading/heading.tsx +0 -88
  604. package/src/core/primitives/heading/index.ts +0 -1
  605. package/src/core/primitives/heading/styles.ts +0 -64
  606. package/src/core/primitives/heading/types.ts +0 -7
  607. package/src/core/primitives/index.ts +0 -27
  608. package/src/core/primitives/inline/__workshop__/index.ts +0 -8
  609. package/src/core/primitives/inline/__workshop__/plain.tsx +0 -27
  610. package/src/core/primitives/inline/index.ts +0 -1
  611. package/src/core/primitives/inline/inline.test.tsx +0 -51
  612. package/src/core/primitives/inline/inline.tsx +0 -63
  613. package/src/core/primitives/inline/styles.ts +0 -32
  614. package/src/core/primitives/inline/types.ts +0 -6
  615. package/src/core/primitives/kbd/__workshop__/index.ts +0 -8
  616. package/src/core/primitives/kbd/__workshop__/plain.tsx +0 -9
  617. package/src/core/primitives/kbd/index.ts +0 -1
  618. package/src/core/primitives/kbd/kbd.tsx +0 -69
  619. package/src/core/primitives/label/__workshop__/index.ts +0 -19
  620. package/src/core/primitives/label/__workshop__/opticalAlignment.tsx +0 -48
  621. package/src/core/primitives/label/__workshop__/plain.tsx +0 -24
  622. package/src/core/primitives/label/index.ts +0 -1
  623. package/src/core/primitives/label/label.tsx +0 -87
  624. package/src/core/primitives/label/styles.ts +0 -45
  625. package/src/core/primitives/popover/__workshop__/AlignedStory.tsx +0 -77
  626. package/src/core/primitives/popover/__workshop__/MarginsStory.tsx +0 -31
  627. package/src/core/primitives/popover/__workshop__/MatchReferenceWidthStory.tsx +0 -32
  628. package/src/core/primitives/popover/__workshop__/OpenOnMountStory.tsx +0 -11
  629. package/src/core/primitives/popover/__workshop__/PlainStory.tsx +0 -71
  630. package/src/core/primitives/popover/__workshop__/RecursiveStory.tsx +0 -71
  631. package/src/core/primitives/popover/__workshop__/SidePanelStory.tsx +0 -89
  632. package/src/core/primitives/popover/__workshop__/TestStory.tsx +0 -97
  633. package/src/core/primitives/popover/__workshop__/index.ts +0 -49
  634. package/src/core/primitives/popover/constants.ts +0 -22
  635. package/src/core/primitives/popover/floating-ui/size.ts +0 -99
  636. package/src/core/primitives/popover/helpers.ts +0 -31
  637. package/src/core/primitives/popover/index.ts +0 -2
  638. package/src/core/primitives/popover/popover.tsx +0 -511
  639. package/src/core/primitives/popover/popoverCard.tsx +0 -166
  640. package/src/core/primitives/popover/types.ts +0 -7
  641. package/src/core/primitives/radio/__workshop__/example.tsx +0 -63
  642. package/src/core/primitives/radio/__workshop__/index.ts +0 -11
  643. package/src/core/primitives/radio/__workshop__/plain.tsx +0 -28
  644. package/src/core/primitives/radio/index.ts +0 -1
  645. package/src/core/primitives/radio/radio.tsx +0 -51
  646. package/src/core/primitives/radio/styles.ts +0 -117
  647. package/src/core/primitives/select/__workshop__/index.ts +0 -11
  648. package/src/core/primitives/select/__workshop__/plain.tsx +0 -27
  649. package/src/core/primitives/select/__workshop__/readOnly.tsx +0 -23
  650. package/src/core/primitives/select/index.ts +0 -1
  651. package/src/core/primitives/select/select.test.tsx +0 -52
  652. package/src/core/primitives/select/select.tsx +0 -94
  653. package/src/core/primitives/select/styles.ts +0 -166
  654. package/src/core/primitives/spinner/__workshop__/Props.tsx +0 -15
  655. package/src/core/primitives/spinner/__workshop__/index.ts +0 -14
  656. package/src/core/primitives/spinner/index.ts +0 -1
  657. package/src/core/primitives/spinner/spinner.tsx +0 -46
  658. package/src/core/primitives/stack/__workshop__/index.ts +0 -14
  659. package/src/core/primitives/stack/__workshop__/plain.tsx +0 -32
  660. package/src/core/primitives/stack/index.ts +0 -1
  661. package/src/core/primitives/stack/stack.test.tsx +0 -57
  662. package/src/core/primitives/stack/stack.tsx +0 -57
  663. package/src/core/primitives/stack/styles.ts +0 -32
  664. package/src/core/primitives/switch/__workshop__/example.tsx +0 -23
  665. package/src/core/primitives/switch/__workshop__/index.ts +0 -11
  666. package/src/core/primitives/switch/__workshop__/props.tsx +0 -21
  667. package/src/core/primitives/switch/index.ts +0 -1
  668. package/src/core/primitives/switch/styles.ts +0 -173
  669. package/src/core/primitives/switch/switch.tsx +0 -68
  670. package/src/core/primitives/text/__workshop__/colored.tsx +0 -30
  671. package/src/core/primitives/text/__workshop__/example.tsx +0 -39
  672. package/src/core/primitives/text/__workshop__/index.ts +0 -24
  673. package/src/core/primitives/text/__workshop__/opticalAlignment.tsx +0 -48
  674. package/src/core/primitives/text/index.ts +0 -1
  675. package/src/core/primitives/text/styles.ts +0 -74
  676. package/src/core/primitives/text/text.tsx +0 -89
  677. package/src/core/primitives/textArea/__workshop__/index.ts +0 -14
  678. package/src/core/primitives/textArea/__workshop__/plain.tsx +0 -50
  679. package/src/core/primitives/textArea/index.ts +0 -1
  680. package/src/core/primitives/textArea/textArea.tsx +0 -120
  681. package/src/core/primitives/textInput/__workshop__/clearButton.tsx +0 -30
  682. package/src/core/primitives/textInput/__workshop__/customValidity.tsx +0 -17
  683. package/src/core/primitives/textInput/__workshop__/index.ts +0 -44
  684. package/src/core/primitives/textInput/__workshop__/plain.tsx +0 -98
  685. package/src/core/primitives/textInput/__workshop__/readOnly.tsx +0 -9
  686. package/src/core/primitives/textInput/__workshop__/states.tsx +0 -53
  687. package/src/core/primitives/textInput/__workshop__/tones.tsx +0 -277
  688. package/src/core/primitives/textInput/__workshop__/typed.tsx +0 -23
  689. package/src/core/primitives/textInput/index.ts +0 -1
  690. package/src/core/primitives/textInput/textInput.test.tsx +0 -48
  691. package/src/core/primitives/textInput/textInput.tsx +0 -395
  692. package/src/core/primitives/tooltip/__workshop__/customPortal.tsx +0 -102
  693. package/src/core/primitives/tooltip/__workshop__/index.ts +0 -29
  694. package/src/core/primitives/tooltip/__workshop__/overflowingBoundary.tsx +0 -74
  695. package/src/core/primitives/tooltip/__workshop__/props.tsx +0 -107
  696. package/src/core/primitives/tooltip/__workshop__/resizableBoundary.tsx +0 -86
  697. package/src/core/primitives/tooltip/constants.ts +0 -23
  698. package/src/core/primitives/tooltip/index.ts +0 -2
  699. package/src/core/primitives/tooltip/tooltip.test.tsx +0 -452
  700. package/src/core/primitives/tooltip/tooltip.tsx +0 -495
  701. package/src/core/primitives/tooltip/tooltipCard.tsx +0 -109
  702. package/src/core/primitives/tooltip/tooltipDelayGroup/index.ts +0 -4
  703. package/src/core/primitives/tooltip/tooltipDelayGroup/tooltipDelayGroupContext.tsx +0 -11
  704. package/src/core/primitives/tooltip/tooltipDelayGroup/tooltipDelayGroupProvider.tsx +0 -57
  705. package/src/core/primitives/tooltip/tooltipDelayGroup/types.ts +0 -10
  706. package/src/core/primitives/tooltip/tooltipDelayGroup/useTooltipDelayGroup.ts +0 -13
  707. package/src/core/primitives/types.ts +0 -179
  708. package/src/core/styles/border/borderStyle.ts +0 -56
  709. package/src/core/styles/border/index.ts +0 -2
  710. package/src/core/styles/border/types.ts +0 -10
  711. package/src/core/styles/box/boxStyle.ts +0 -69
  712. package/src/core/styles/box/index.ts +0 -2
  713. package/src/core/styles/box/types.ts +0 -11
  714. package/src/core/styles/card/_cardColorStyle.ts +0 -108
  715. package/src/core/styles/card/index.ts +0 -1
  716. package/src/core/styles/flex/flexItemStyle.ts +0 -27
  717. package/src/core/styles/flex/flexStyle.ts +0 -70
  718. package/src/core/styles/flex/index.ts +0 -3
  719. package/src/core/styles/flex/types.ts +0 -25
  720. package/src/core/styles/focusRing/index.ts +0 -25
  721. package/src/core/styles/font/codeFontStyle.ts +0 -13
  722. package/src/core/styles/font/headingFontStyle.ts +0 -13
  723. package/src/core/styles/font/index.ts +0 -6
  724. package/src/core/styles/font/labelFontStyle.ts +0 -13
  725. package/src/core/styles/font/responsiveFont.ts +0 -103
  726. package/src/core/styles/font/textAlignStyle.ts +0 -19
  727. package/src/core/styles/font/textFontStyle.ts +0 -13
  728. package/src/core/styles/font/types.ts +0 -35
  729. package/src/core/styles/grid/gridItemStyle.ts +0 -82
  730. package/src/core/styles/grid/gridStyle.ts +0 -108
  731. package/src/core/styles/grid/index.ts +0 -3
  732. package/src/core/styles/grid/types.ts +0 -37
  733. package/src/core/styles/helpers.ts +0 -72
  734. package/src/core/styles/index.ts +0 -5
  735. package/src/core/styles/input/index.ts +0 -2
  736. package/src/core/styles/input/responsiveInputPaddingStyle.ts +0 -78
  737. package/src/core/styles/input/textInputStyle.ts +0 -263
  738. package/src/core/styles/internal.ts +0 -12
  739. package/src/core/styles/margin/index.ts +0 -2
  740. package/src/core/styles/margin/marginStyle.ts +0 -21
  741. package/src/core/styles/margin/marginsStyle.test.ts +0 -33
  742. package/src/core/styles/margin/types.ts +0 -9
  743. package/src/core/styles/padding/index.ts +0 -2
  744. package/src/core/styles/padding/paddingStyle.test.ts +0 -33
  745. package/src/core/styles/padding/paddingStyle.ts +0 -21
  746. package/src/core/styles/padding/types.ts +0 -12
  747. package/src/core/styles/radius/index.ts +0 -2
  748. package/src/core/styles/radius/radiusStyle.ts +0 -23
  749. package/src/core/styles/radius/types.ts +0 -8
  750. package/src/core/styles/shadow/index.ts +0 -2
  751. package/src/core/styles/shadow/shadowStyle.ts +0 -29
  752. package/src/core/styles/shadow/types.ts +0 -6
  753. package/src/core/styles/types.ts +0 -8
  754. package/src/core/theme/__workshop__/build/Root.tsx +0 -367
  755. package/src/core/theme/__workshop__/build/helpers.ts +0 -46
  756. package/src/core/theme/__workshop__/build/story.tsx +0 -465
  757. package/src/core/theme/__workshop__/canvas.tsx +0 -352
  758. package/src/core/theme/__workshop__/color.tsx +0 -62
  759. package/src/core/theme/__workshop__/debug/story.tsx +0 -408
  760. package/src/core/theme/__workshop__/index.ts +0 -39
  761. package/src/core/theme/__workshop__/layer.tsx +0 -78
  762. package/src/core/theme/__workshop__/nestedProvider.tsx +0 -15
  763. package/src/core/theme/index.ts +0 -5
  764. package/src/core/theme/theme.test.tsx +0 -73
  765. package/src/core/theme/themeColorProvider.tsx +0 -29
  766. package/src/core/theme/themeContext.ts +0 -10
  767. package/src/core/theme/themeProvider.tsx +0 -62
  768. package/src/core/theme/types.ts +0 -12
  769. package/src/core/theme/useRootTheme.ts +0 -17
  770. package/src/core/theme/useTheme.ts +0 -16
  771. package/src/core/types/avatar.ts +0 -14
  772. package/src/core/types/badge.ts +0 -12
  773. package/src/core/types/box.ts +0 -19
  774. package/src/core/types/button.ts +0 -21
  775. package/src/core/types/card.ts +0 -6
  776. package/src/core/types/component.ts +0 -32
  777. package/src/core/types/dialog.ts +0 -4
  778. package/src/core/types/flex.ts +0 -30
  779. package/src/core/types/grid.ts +0 -14
  780. package/src/core/types/gridItem.ts +0 -29
  781. package/src/core/types/index.ts +0 -15
  782. package/src/core/types/placement.ts +0 -18
  783. package/src/core/types/popover.ts +0 -4
  784. package/src/core/types/radius.ts +0 -4
  785. package/src/core/types/selectable.ts +0 -6
  786. package/src/core/types/text.ts +0 -4
  787. package/src/core/utils/arrow/arrow.tsx +0 -123
  788. package/src/core/utils/arrow/cmds.ts +0 -91
  789. package/src/core/utils/arrow/index.ts +0 -1
  790. package/src/core/utils/boundaryElement/__workshop__/index.ts +0 -14
  791. package/src/core/utils/boundaryElement/__workshop__/plain.tsx +0 -19
  792. package/src/core/utils/boundaryElement/boundaryElement.test.tsx +0 -100
  793. package/src/core/utils/boundaryElement/boundaryElementContext.ts +0 -7
  794. package/src/core/utils/boundaryElement/boundaryElementProvider.tsx +0 -24
  795. package/src/core/utils/boundaryElement/index.ts +0 -3
  796. package/src/core/utils/boundaryElement/types.ts +0 -7
  797. package/src/core/utils/boundaryElement/useBoundaryElement.ts +0 -26
  798. package/src/core/utils/conditionalWrapper/conditionalWrapper.tsx +0 -21
  799. package/src/core/utils/conditionalWrapper/index.ts +0 -1
  800. package/src/core/utils/elementQuery/__workshop__/customMedia.tsx +0 -30
  801. package/src/core/utils/elementQuery/__workshop__/index.ts +0 -14
  802. package/src/core/utils/elementQuery/elementQuery.tsx +0 -53
  803. package/src/core/utils/elementQuery/helpers.ts +0 -27
  804. package/src/core/utils/elementQuery/index.ts +0 -1
  805. package/src/core/utils/errorBoundary.tsx +0 -48
  806. package/src/core/utils/getElementRef.ts +0 -26
  807. package/src/core/utils/index.ts +0 -9
  808. package/src/core/utils/layer/__workshop__/_debug.tsx +0 -17
  809. package/src/core/utils/layer/__workshop__/index.ts +0 -24
  810. package/src/core/utils/layer/__workshop__/multipleRoots.tsx +0 -49
  811. package/src/core/utils/layer/__workshop__/nested.tsx +0 -98
  812. package/src/core/utils/layer/__workshop__/responsiveZOffset.tsx +0 -13
  813. package/src/core/utils/layer/getLayerContext.test.ts +0 -30
  814. package/src/core/utils/layer/getLayerContext.ts +0 -21
  815. package/src/core/utils/layer/index.ts +0 -4
  816. package/src/core/utils/layer/layer.test.tsx +0 -108
  817. package/src/core/utils/layer/layer.tsx +0 -98
  818. package/src/core/utils/layer/layerContext.ts +0 -7
  819. package/src/core/utils/layer/layerProvider.tsx +0 -111
  820. package/src/core/utils/layer/types.ts +0 -9
  821. package/src/core/utils/layer/useLayer.ts +0 -26
  822. package/src/core/utils/portal/__workshop__/index.ts +0 -14
  823. package/src/core/utils/portal/__workshop__/named.tsx +0 -63
  824. package/src/core/utils/portal/index.ts +0 -4
  825. package/src/core/utils/portal/portal.test.tsx +0 -103
  826. package/src/core/utils/portal/portal.ts +0 -32
  827. package/src/core/utils/portal/portalContext.ts +0 -31
  828. package/src/core/utils/portal/portalProvider.tsx +0 -47
  829. package/src/core/utils/portal/types.ts +0 -9
  830. package/src/core/utils/portal/usePortal.ts +0 -25
  831. package/src/core/utils/spanWithTextOverflow.tsx +0 -10
  832. package/src/core/utils/srOnly/index.ts +0 -1
  833. package/src/core/utils/srOnly/srOnly.tsx +0 -36
  834. package/src/core/utils/virtualList/__workshop__/changingProps.tsx +0 -36
  835. package/src/core/utils/virtualList/__workshop__/elementScroll.tsx +0 -24
  836. package/src/core/utils/virtualList/__workshop__/index.ts +0 -29
  837. package/src/core/utils/virtualList/__workshop__/infiniteList.tsx +0 -48
  838. package/src/core/utils/virtualList/__workshop__/windowScrolll.tsx +0 -22
  839. package/src/core/utils/virtualList/index.ts +0 -1
  840. package/src/core/utils/virtualList/virtualList.tsx +0 -200
  841. package/src/theme/build/_deprecated/color/_selectable/createSelectableTones.ts +0 -76
  842. package/src/theme/build/_deprecated/color/_solid/createSolidTones.ts +0 -54
  843. package/src/theme/build/_deprecated/color/button/createButtonModes.ts +0 -22
  844. package/src/theme/build/_deprecated/color/button/createButtonTones.ts +0 -55
  845. package/src/theme/build/_deprecated/color/card/createCardStates.ts +0 -60
  846. package/src/theme/build/_deprecated/color/color.test.ts +0 -63
  847. package/src/theme/build/_deprecated/color/defaults.ts +0 -390
  848. package/src/theme/build/_deprecated/color/factory.ts +0 -142
  849. package/src/theme/build/_deprecated/color/index.ts +0 -1
  850. package/src/theme/build/_deprecated/color/input/createInputModes.ts +0 -81
  851. package/src/theme/build/_deprecated/color/muted/createMuted.ts +0 -54
  852. package/src/theme/build/_deprecated/color/spot/createSpot.ts +0 -20
  853. package/src/theme/build/buildColorTheme.test.ts +0 -183
  854. package/src/theme/build/buildColorTheme.ts +0 -499
  855. package/src/theme/build/buildTheme.test.ts +0 -87
  856. package/src/theme/build/buildTheme.ts +0 -36
  857. package/src/theme/build/colorToken/colorToken.ts +0 -19
  858. package/src/theme/build/colorToken/compileColorToken.ts +0 -21
  859. package/src/theme/build/colorToken/index.ts +0 -2
  860. package/src/theme/build/colorToken/types.ts +0 -6
  861. package/src/theme/build/index.ts +0 -3
  862. package/src/theme/build/lib/color-fns/blend/index.ts +0 -3
  863. package/src/theme/build/lib/color-fns/blend/mix.ts +0 -21
  864. package/src/theme/build/lib/color-fns/blend/multiply.ts +0 -18
  865. package/src/theme/build/lib/color-fns/blend/screen.ts +0 -18
  866. package/src/theme/build/lib/color-fns/color-fns.test.ts +0 -68
  867. package/src/theme/build/lib/color-fns/contrastRatio.ts +0 -31
  868. package/src/theme/build/lib/color-fns/convert.ts +0 -150
  869. package/src/theme/build/lib/color-fns/index.ts +0 -6
  870. package/src/theme/build/lib/color-fns/parse.ts +0 -60
  871. package/src/theme/build/lib/color-fns/rgba.ts +0 -10
  872. package/src/theme/build/lib/color-fns/types.ts +0 -28
  873. package/src/theme/build/lib/isRecord.ts +0 -3
  874. package/src/theme/build/lib/lazy.ts +0 -30
  875. package/src/theme/build/lib/utils.ts +0 -19
  876. package/src/theme/build/merge.ts +0 -26
  877. package/src/theme/build/mixThemeColor.test.ts +0 -21
  878. package/src/theme/build/mixThemeColor.ts +0 -53
  879. package/src/theme/build/renderColorTheme.ts +0 -532
  880. package/src/theme/build/renderColorValue.ts +0 -85
  881. package/src/theme/build/resolveColorTokens.ts +0 -268
  882. package/src/theme/build/theme.test.ts +0 -27
  883. package/src/theme/config/helpers.ts +0 -55
  884. package/src/theme/config/index.ts +0 -4
  885. package/src/theme/config/system.ts +0 -115
  886. package/src/theme/config/tokens/color/index.ts +0 -1
  887. package/src/theme/config/tokens/color/types.ts +0 -133
  888. package/src/theme/config/tokens/index.ts +0 -4
  889. package/src/theme/config/tokens/parseTokenKey.test.ts +0 -64
  890. package/src/theme/config/tokens/parseTokenKey.ts +0 -67
  891. package/src/theme/config/tokens/parseTokenValue.test.ts +0 -42
  892. package/src/theme/config/tokens/parseTokenValue.ts +0 -133
  893. package/src/theme/config/tokens/types.ts +0 -53
  894. package/src/theme/config/types.ts +0 -46
  895. package/src/theme/defaults/colorPalette.ts +0 -5
  896. package/src/theme/defaults/colorTokens.ts +0 -648
  897. package/src/theme/defaults/config.ts +0 -84
  898. package/src/theme/defaults/fonts.ts +0 -227
  899. package/src/theme/getScopedTheme.ts +0 -98
  900. package/src/theme/index.ts +0 -5
  901. package/src/theme/system/avatar.ts +0 -14
  902. package/src/theme/system/color/_constants.ts +0 -45
  903. package/src/theme/system/color/_helpers.ts +0 -24
  904. package/src/theme/system/color/_system.ts +0 -40
  905. package/src/theme/system/color/avatar.ts +0 -15
  906. package/src/theme/system/color/badge.ts +0 -16
  907. package/src/theme/system/color/button.ts +0 -17
  908. package/src/theme/system/color/color.ts +0 -34
  909. package/src/theme/system/color/index.ts +0 -13
  910. package/src/theme/system/color/input.ts +0 -25
  911. package/src/theme/system/color/kbd.ts +0 -8
  912. package/src/theme/system/color/selectable.ts +0 -12
  913. package/src/theme/system/color/shadow.ts +0 -7
  914. package/src/theme/system/color/state.ts +0 -43
  915. package/src/theme/system/color/syntax.ts +0 -41
  916. package/src/theme/system/css.ts +0 -14
  917. package/src/theme/system/focusRing.ts +0 -7
  918. package/src/theme/system/font.ts +0 -52
  919. package/src/theme/system/index.ts +0 -11
  920. package/src/theme/system/input.ts +0 -33
  921. package/src/theme/system/layer.ts +0 -8
  922. package/src/theme/system/shadow.ts +0 -19
  923. package/src/theme/system/styles.ts +0 -13
  924. package/src/theme/system/theme.ts +0 -138
  925. package/src/theme/system/v0/avatar.ts +0 -10
  926. package/src/theme/system/v0/color/_generic.ts +0 -35
  927. package/src/theme/system/v0/color/_system.ts +0 -17
  928. package/src/theme/system/v0/color/base.ts +0 -21
  929. package/src/theme/system/v0/color/button.ts +0 -42
  930. package/src/theme/system/v0/color/card.ts +0 -19
  931. package/src/theme/system/v0/color/color.ts +0 -40
  932. package/src/theme/system/v0/color/index.ts +0 -11
  933. package/src/theme/system/v0/color/input.ts +0 -34
  934. package/src/theme/system/v0/color/muted.ts +0 -26
  935. package/src/theme/system/v0/color/selectable.ts +0 -31
  936. package/src/theme/system/v0/color/solid.ts +0 -26
  937. package/src/theme/system/v0/color/spot.ts +0 -13
  938. package/src/theme/system/v0/index.ts +0 -3
  939. package/src/theme/system/v0/input.ts +0 -23
  940. package/src/theme/versioning/getTheme_v2.ts +0 -57
  941. package/src/theme/versioning/index.ts +0 -5
  942. package/src/theme/versioning/is_v0.ts +0 -6
  943. package/src/theme/versioning/is_v2.ts +0 -6
  944. package/src/theme/versioning/themeColor_v0_v2.ts +0 -243
  945. package/src/theme/versioning/themeColor_v2_v2_9.ts +0 -49
  946. package/src/theme/versioning/v0_v2.ts +0 -94
  947. package/src/theme/versioning/v2_v0.ts +0 -135
@@ -0,0 +1,13 @@
1
+ //#region \0rolldown/runtime.js
2
+ var __defProp = Object.defineProperty;
3
+ var __exportAll = (all, no_symbols) => {
4
+ let target = {};
5
+ for (var name in all) __defProp(target, name, {
6
+ get: all[name],
7
+ enumerable: true
8
+ });
9
+ if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
10
+ return target;
11
+ };
12
+ //#endregion
13
+ export { __exportAll };
@@ -0,0 +1,15 @@
1
+ /**
2
+ * ICONS — the kit's Tabler names ↔ the dock's closed icon vocabulary (DOCK_ICON_NAMES).
3
+ *
4
+ * Since e126bf33d the dock vocabulary carries every distinct V2 corpus icon under its own Tabler name, so a Tabler name
5
+ * that is a dock name is stored as itself. The one exception is `map` (a reserved subpath in the icons package), stored
6
+ * as `earth-americas`, the nearest dock glyph. The map stays ONE-TO-ONE so the read side names the Tabler icon back
7
+ * exactly: a dock name some row maps onto reads back as that row's Tabler name, never as itself. A Tabler name with no
8
+ * row and no dock name of its own has no prod form.
9
+ */
10
+ import { type DockIconName } from "./prod-types";
11
+ export declare const TABLER_TO_DOCK: Readonly<Record<string, DockIconName>>;
12
+ /** The dock name a Tabler icon is stored as, or undefined when it has none. */
13
+ export declare function dockIconOf(tabler: string | undefined): DockIconName | undefined;
14
+ /** The Tabler name a stored dock icon reads back as (a dock name with no row reads as itself). */
15
+ export declare const tablerIconOf: (dock: string) => string;
@@ -0,0 +1,27 @@
1
+ import { DOCK_ICON_NAME_SET } from "./prod-types.js";
2
+ //#region src/kit/adapters/icons.ts
3
+ /**
4
+ * ICONS — the kit's Tabler names ↔ the dock's closed icon vocabulary (DOCK_ICON_NAMES).
5
+ *
6
+ * Since e126bf33d the dock vocabulary carries every distinct V2 corpus icon under its own Tabler name, so a Tabler name
7
+ * that is a dock name is stored as itself. The one exception is `map` (a reserved subpath in the icons package), stored
8
+ * as `earth-americas`, the nearest dock glyph. The map stays ONE-TO-ONE so the read side names the Tabler icon back
9
+ * exactly: a dock name some row maps onto reads back as that row's Tabler name, never as itself. A Tabler name with no
10
+ * row and no dock name of its own has no prod form.
11
+ */
12
+ var TABLER_TO_DOCK = Object.freeze({ map: "earth-americas" });
13
+ /** dock name → the one Tabler name that maps to it. */
14
+ var DOCK_TO_TABLER = new Map(Object.entries(TABLER_TO_DOCK).map(([t, d]) => [d, t]));
15
+ /** The dock name a Tabler icon is stored as, or undefined when it has none. */
16
+ function dockIconOf(tabler) {
17
+ if (tabler === void 0) return void 0;
18
+ const mapped = TABLER_TO_DOCK[tabler];
19
+ if (mapped) return mapped;
20
+ return DOCK_ICON_NAME_SET.has(tabler) && !DOCK_TO_TABLER.has(tabler) ? tabler : void 0;
21
+ }
22
+ /** The Tabler name a stored dock icon reads back as (a dock name with no row reads as itself). */
23
+ var tablerIconOf = (dock) => DOCK_TO_TABLER.get(dock) ?? dock;
24
+ //#endregion
25
+ export { dockIconOf, tablerIconOf };
26
+
27
+ //# sourceMappingURL=icons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.js","names":[],"sources":["../../src/kit/adapters/icons.ts"],"sourcesContent":["/**\n * ICONS — the kit's Tabler names ↔ the dock's closed icon vocabulary (DOCK_ICON_NAMES).\n *\n * Since e126bf33d the dock vocabulary carries every distinct V2 corpus icon under its own Tabler name, so a Tabler name\n * that is a dock name is stored as itself. The one exception is `map` (a reserved subpath in the icons package), stored\n * as `earth-americas`, the nearest dock glyph. The map stays ONE-TO-ONE so the read side names the Tabler icon back\n * exactly: a dock name some row maps onto reads back as that row's Tabler name, never as itself. A Tabler name with no\n * row and no dock name of its own has no prod form.\n */\nimport { DOCK_ICON_NAME_SET, type DockIconName } from \"./prod-types\";\n\nexport const TABLER_TO_DOCK: Readonly<Record<string, DockIconName>> = Object.freeze({\n map: \"earth-americas\", // approximate: `map` is a reserved subpath of @bettercms-ai/icons\n});\n\n/** dock name → the one Tabler name that maps to it. */\nconst DOCK_TO_TABLER: ReadonlyMap<string, string> = new Map(Object.entries(TABLER_TO_DOCK).map(([t, d]) => [d, t]));\n\n/** The dock name a Tabler icon is stored as, or undefined when it has none. */\nexport function dockIconOf(tabler: string | undefined): DockIconName | undefined {\n if (tabler === undefined) return undefined;\n const mapped = TABLER_TO_DOCK[tabler];\n if (mapped) return mapped;\n // a Tabler name that is also a dock name is kept as itself, unless a mapped name already reads back from it\n return DOCK_ICON_NAME_SET.has(tabler) && !DOCK_TO_TABLER.has(tabler) ? (tabler as DockIconName) : undefined;\n}\n\n/** The Tabler name a stored dock icon reads back as (a dock name with no row reads as itself). */\nexport const tablerIconOf = (dock: string): string => DOCK_TO_TABLER.get(dock) ?? dock;\n"],"mappings":";;;;;;;;;;;AAWA,IAAa,iBAAyD,OAAO,OAAO,EAClF,KAAK,kBACN,CAAC;;AAGF,IAAM,iBAA8C,IAAI,IAAI,OAAO,QAAQ,eAAe,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;;AAGnH,SAAgB,WAAW,QAAsD;AAC/E,KAAI,WAAW,KAAA,EAAW,QAAO,KAAA;CACjC,MAAM,SAAS,eAAe;AAC9B,KAAI,OAAQ,QAAO;AAEnB,QAAO,mBAAmB,IAAI,OAAO,IAAI,CAAC,eAAe,IAAI,OAAO,GAAI,SAA0B,KAAA;;;AAIpG,IAAa,gBAAgB,SAAyB,eAAe,IAAI,KAAK,IAAI"}
@@ -0,0 +1,267 @@
1
+ /**
2
+ * LOSSY ITEMS — every V2 schema feature the production language cannot hold is named, never dropped silently.
3
+ * CATALOG ITEMS (below) are the V2 metadata a host sets at seeding time, which the dock never stores.
4
+ *
5
+ * `path` is a JSON pointer into the V2 TypeSchema ("/fields/3/of/0/fields/1/localized"). `feature` is a stable name
6
+ * from FEATURES (what the lossy ledger counts), `reason` says why prod cannot keep it, and FEATURES[feature].backlog
7
+ * names what removes the loss.
8
+ */
9
+ export interface LossyItem {
10
+ path: string;
11
+ feature: LossyFeature;
12
+ reason: string;
13
+ }
14
+ /**
15
+ * What removes a lossy feature: a named backend backlog item (its receipt is this feature's lossy count reaching 0), or
16
+ * an explicit disposition that is not backend work: `corpus-fix` (the V2 schema breaks a prod rule the author can
17
+ * satisfy: rename, shorten, reorder, drop a key the type cannot use), `dashboard:F12` (prod stores it; only the dock's
18
+ * DockFieldTabs drops it, and the kit's GroupTabs replaces that at the dock cutover), `wontfix:depth` (a prod rule kept
19
+ * on purpose: the backend refuses an 11th level with field_depth_exceeded), `wontfix:item-config` (the backend refuses
20
+ * per-item config on a list of scalars on purpose, array_config_key_unknown). corpus-fix items are V2 corpus defects, an
21
+ * owner note for the demo repo: the sandbox renders them from the V2 schema, seeding skips them.
22
+ *
23
+ * Landed on origin/dev and mapped here, so they name no feature any more: prop-reference (73a120c50), validation-parity
24
+ * (dd021ceba), option-meta (ab15fe893), chrome-keys (98e48b9e3, 324580b2e), adapter:icons (the V2 icon vocabulary,
25
+ * e126bf33d), localized-flag (279a10490). What those keys still cannot hold is a value the backend refuses, named
26
+ * below as corpus-fix.
27
+ */
28
+ export type Backlog = "reference-targets" | "table" | "slot" | "block-model-fields" | "corpus-fix" | "dashboard:F12" | "wontfix:depth" | "wontfix:item-config";
29
+ export declare const FEATURES: {
30
+ readonly "type:table": {
31
+ readonly backlog: "table";
32
+ readonly reason: "Prod has no table field type (BE: a new type): the TableValue is stored verbatim in a json field.";
33
+ };
34
+ readonly "type:slot": {
35
+ readonly backlog: "slot";
36
+ readonly reason: "Blocks inside a block have no field: modular needs separate block models and stores {__id,__type,data}. Stored as json.";
37
+ };
38
+ readonly "type:polymorphic-array": {
39
+ readonly backlog: "slot";
40
+ readonly reason: "An array of several item types: a model stores it as modular (item types of object only), props have no modular. Stored as json.";
41
+ };
42
+ readonly "type:primitive-array": {
43
+ readonly backlog: "wontfix:item-config";
44
+ readonly reason: "A list of this item type has no prod array form: config.itemType is text, number, date, image, link or richtext. Stored as json.";
45
+ };
46
+ readonly "depth>10": {
47
+ readonly backlog: "wontfix:depth";
48
+ readonly reason: "Prod allows 10 field levels: the object at level 10 that would nest an 11th is stored as json.";
49
+ };
50
+ readonly "type name": {
51
+ readonly backlog: "corpus-fix";
52
+ readonly reason: "The schema name is stored as a kebab-case slug, which does not read back as this name.";
53
+ };
54
+ readonly "group name>20": {
55
+ readonly backlog: "corpus-fix";
56
+ readonly reason: "A tab name is at most 20 characters; truncated.";
57
+ };
58
+ readonly "group default": {
59
+ readonly backlog: "corpus-fix";
60
+ readonly reason: "The default tab is always the first one in prod.";
61
+ };
62
+ readonly "group icon": {
63
+ readonly backlog: "corpus-fix";
64
+ readonly reason: "A tab icon is a dock icon name (DOCK_ICON_NAMES); this name is not one.";
65
+ };
66
+ readonly "group (nested)": {
67
+ readonly backlog: "corpus-fix";
68
+ readonly reason: "Only top-level fields can sit in a tab.";
69
+ };
70
+ readonly "groups>3": {
71
+ readonly backlog: "dashboard:F12";
72
+ readonly reason: "The dock shows at most 3 tabs (DockFieldTabs), so the adapter keeps 3 until the kit GroupTabs replaces DockFieldTabs at the dock cutover: later groups' fields land in the default tab meanwhile.";
73
+ };
74
+ readonly "group name collision": {
75
+ readonly backlog: "corpus-fix";
76
+ readonly reason: "Two tabs share an id, or a stored name (the first 20 characters, trimmed, any case): the backend refuses that (tab_name, fieldset ids), so the later tab is not stored.";
77
+ };
78
+ readonly "group (props)": {
79
+ readonly backlog: "dashboard:F12";
80
+ readonly reason: "The dock shows no prop tabs today; the kit GroupTabs renders prop groups as tabs at the dock cutover.";
81
+ };
82
+ readonly "fieldset spans groups": {
83
+ readonly backlog: "corpus-fix";
84
+ readonly reason: "A prod fieldset sits in one tab; this field's tab differs from its fieldset's.";
85
+ };
86
+ readonly "fieldset (props)": {
87
+ readonly backlog: "corpus-fix";
88
+ readonly reason: "A prop group is defined on the first prop that uses it: a fieldset no prop uses is not stored (and the ones after it move up a place).";
89
+ };
90
+ readonly "fieldset name>limit": {
91
+ readonly backlog: "corpus-fix";
92
+ readonly reason: "A fieldset name is at most 60 characters (a prop group label 32); truncated.";
93
+ };
94
+ readonly "fieldset collision": {
95
+ readonly backlog: "corpus-fix";
96
+ readonly reason: "A fieldset shares its id with a group, or this field names a fieldset the schema does not define.";
97
+ };
98
+ readonly "duplicate name": {
99
+ readonly backlog: "corpus-fix";
100
+ readonly reason: "Two sibling fields share a name; prod keys are unique per level, so the later one is renamed.";
101
+ };
102
+ readonly rows: {
103
+ readonly backlog: "corpus-fix";
104
+ readonly reason: "ui.rows is a whole number from 1 to 40, on a text or long text field only.";
105
+ };
106
+ readonly synced: {
107
+ readonly backlog: "corpus-fix";
108
+ readonly reason: "ui.synced names its global in 1–64 characters (trimmed).";
109
+ };
110
+ readonly valueShape: {
111
+ readonly backlog: "corpus-fix";
112
+ readonly reason: "ui.valueShape is for a link, image or button field only.";
113
+ };
114
+ readonly "default value": {
115
+ readonly backlog: "corpus-fix";
116
+ readonly reason: "This initial value holds what the prod value cannot keep (named under it): a crop preset with no image size, a datetime without seconds, a button icon outside the dock vocabulary…";
117
+ };
118
+ readonly slotSettings: {
119
+ readonly backlog: "slot";
120
+ readonly reason: "Per-child slot settings belong to the slot, which prod cannot hold.";
121
+ };
122
+ readonly icon: {
123
+ readonly backlog: "corpus-fix";
124
+ readonly reason: "A field icon is ui.icon, a dock icon name, on a nesting field only (an object, a list of objects, a modular list); this field is a leaf, or the name is not a dock icon.";
125
+ };
126
+ readonly layout: {
127
+ readonly backlog: "corpus-fix";
128
+ readonly reason: "This layout does not fit the field in prod: ui.control is dropdown / radio / grid on a select, cards on a select or multiselect, checkbox on a boolean or multiselect, switch on a boolean, segmented on a select of 2–4 options, slider on a number with min < max (≤ 1000 stops); a list of scalars or entries lays out as rows or a gallery.";
129
+ };
130
+ readonly "segmented>4": {
131
+ readonly backlog: "corpus-fix";
132
+ readonly reason: "Prod's segmented control holds 2–4 options (control_segmented): a segmented select with 5 or 6 is stored as radio, with more as dropdown (which V2 itself draws, since it does not fit).";
133
+ };
134
+ readonly "help>limit": {
135
+ readonly backlog: "corpus-fix";
136
+ readonly reason: "Help text is at most 500 characters on a field and 200 on a prop (a placeholder 120, a prop group description 200); truncated.";
137
+ };
138
+ readonly "option icon": {
139
+ readonly backlog: "corpus-fix";
140
+ readonly reason: "Option icons are dock icon names, all or none per list: an icon in this list is not a dock name, so the list stores none (option_icon_unknown).";
141
+ };
142
+ readonly "option description": {
143
+ readonly backlog: "corpus-fix";
144
+ readonly reason: "An option description is one line of 1–140 characters (option_description_invalid).";
145
+ };
146
+ readonly condition: {
147
+ readonly backlog: "corpus-fix";
148
+ readonly reason: "This condition has no prod showIf form: it names something that is not a sibling (the block's _variant is one only for a top-level prop: show_if_variant_field), or tests a value showIf cannot.";
149
+ };
150
+ readonly access: {
151
+ readonly backlog: "corpus-fix";
152
+ readonly reason: "ui.access takes view \"schema.view\" and edit \"schema.manage\" only (access_cap_unknown), and a developer lock (readOnly \"developer\") is not also a plain read-only flag.";
153
+ };
154
+ readonly timezone: {
155
+ readonly backlog: "corpus-fix";
156
+ readonly reason: "A field's time zone is true, false, \"site\" or an IANA zone name, on a date or datetime.";
157
+ };
158
+ readonly "reference target": {
159
+ readonly backlog: "reference-targets";
160
+ readonly reason: "Prod references point at content models only (no page, form, shopify or collection targets); a reference prop with none of them is stored as json.";
161
+ };
162
+ readonly "reference filter": {
163
+ readonly backlog: "reference-targets";
164
+ readonly reason: "Prod references have no filter.";
165
+ };
166
+ readonly "numeric unit": {
167
+ readonly backlog: "corpus-fix";
168
+ readonly reason: "config.unit is a number's (1–24 characters); a rating has no unit.";
169
+ };
170
+ readonly "rating bounds": {
171
+ readonly backlog: "corpus-fix";
172
+ readonly reason: "A prod rating runs from config.min (≥ 0) to config.max (a whole 1–10) in steps of config.step, min < max and at most 100 whole steps apart.";
173
+ };
174
+ readonly "scale rules": {
175
+ readonly backlog: "corpus-fix";
176
+ readonly reason: "This scale breaks prod's scale rules: token values 1–32 characters and distinct, labels 1–24, at most 50 steps and 20 presets, a token preset naming a step, a { value, unit } preset needing allowCustom.";
177
+ };
178
+ readonly "validation.patternMessage": {
179
+ readonly backlog: "corpus-fix";
180
+ readonly reason: "A pattern message needs a stored pattern and is 1–200 characters.";
181
+ };
182
+ readonly "validation.pattern": {
183
+ readonly backlog: "corpus-fix";
184
+ readonly reason: "A pattern is kept on text, long text and url values, a regex of at most 200 characters that compiles.";
185
+ };
186
+ readonly "validation.length": {
187
+ readonly backlog: "corpus-fix";
188
+ readonly reason: "Length limits are whole numbers ≥ 0, on text, long text, url and rich text values.";
189
+ };
190
+ readonly "validation.items": {
191
+ readonly backlog: "corpus-fix";
192
+ readonly reason: "Item limits are whole numbers ≥ 0 on a list, min ≤ max: a tags max 1–500 and min 0–500, a prop's own list (table, array) at most 50 (SLOT_ITEMS_CAP).";
193
+ };
194
+ readonly "validation.unique": {
195
+ readonly backlog: "corpus-fix";
196
+ readonly reason: "unique is for text, long text, slug, email, phone, link, number, select, date and single-model reference fields, and lists; a polymorphic reference has no one id to compare.";
197
+ };
198
+ readonly "validation.recommendedMax": {
199
+ readonly backlog: "corpus-fix";
200
+ readonly reason: "A soft limit is a positive whole number in prod.";
201
+ };
202
+ readonly "item identity": {
203
+ readonly backlog: "corpus-fix";
204
+ readonly reason: "A list item's name is an identifier (a letter, then letters, digits or _; ≤ 64) and its title 1–60 characters (ui.itemName / ui.itemTitle); an object item keeps no other key.";
205
+ };
206
+ readonly "item settings": {
207
+ readonly backlog: "wontfix:item-config";
208
+ readonly reason: "A list of scalars stores its item type only (config.itemType): the item's own validation, description, localized flag or multi-line variant has no prod key (array_config_key_unknown).";
209
+ };
210
+ readonly itemNoun: {
211
+ readonly backlog: "corpus-fix";
212
+ readonly reason: "The item noun is ui.itemLabel, capitalised, at most 24 characters.";
213
+ };
214
+ readonly "block model field": {
215
+ readonly backlog: "block-model-fields";
216
+ readonly reason: "A modular item type is a kind:'block' model, which holds only fields a block primitive renders (text, long text, rich text, image, link, slug, email, phone, color, select, number, rating, date, datetime, boolean): this field is not stored.";
217
+ };
218
+ readonly "item icon": {
219
+ readonly backlog: "corpus-fix";
220
+ readonly reason: "Prod keeps one icon per list (ui.icon, a dock name): the list has its own icon, or this name is not a dock icon.";
221
+ };
222
+ readonly "preview icon": {
223
+ readonly backlog: "corpus-fix";
224
+ readonly reason: "A row preview's icon is a dock icon name.";
225
+ };
226
+ readonly "preview path": {
227
+ readonly backlog: "corpus-fix";
228
+ readonly reason: "A row preview names a child key, or a dotted path whose later segments are children or keys of an image, video, link, button, file, location, json, code or reference value (preview_path_unknown).";
229
+ };
230
+ readonly openMode: {
231
+ readonly backlog: "corpus-fix";
232
+ readonly reason: "openMode is for object, array and table fields only.";
233
+ };
234
+ readonly "unsupported key": {
235
+ readonly backlog: "corpus-fix";
236
+ readonly reason: "This V2 key has no prod mapping.";
237
+ };
238
+ };
239
+ export type LossyFeature = keyof typeof FEATURES;
240
+ /**
241
+ * CATALOG ITEMS — V2 metadata the dock never stores, set when a schema is seeded or placed by its host: not a loss of
242
+ * stored content. Reported apart from LossyItem so the lossy ledger counts only what prod drops.
243
+ */
244
+ export interface CatalogItem {
245
+ path: string;
246
+ feature: CatalogFeature;
247
+ reason: string;
248
+ }
249
+ export declare const CATALOG: {
250
+ readonly "block icon": "The block picker's icon belongs to the catalog entry; models and components carry none.";
251
+ readonly category: "The block picker's category is catalog metadata. A component takes the nearest prod category (CATEGORY_TO_PROD) when there is one; a model has none.";
252
+ readonly "document preview": "The document-level preview is catalog metadata; models and components carry none.";
253
+ readonly "kind:block (fields)": "A section's fields are stored as a model (kind model): which host places it is set at seeding.";
254
+ readonly "kind:global": "A global (synced) block is a host-level placement; its fields are stored as a model or a component.";
255
+ readonly "kind:page": "A page schema is stored as a model; the host makes it a page.";
256
+ readonly "kind:object": "An object type is stored as a model.";
257
+ readonly "kind:entry (props)": "Only blocks become components; the host decides what an entry schema is placed as.";
258
+ readonly variants: "Variants are separate components sharing a sectionType in prod: the host seeds one per variant.";
259
+ readonly ai: "The AI-assist sparkle is a host setting, not stored on the field.";
260
+ readonly "item openMode": "Prod keeps one openMode per list, the array's own; the V2 engine reads only that one too (lib/schema.ts itemOpenMode ignores the item's), so the item's changes nothing the dock shows.";
261
+ readonly "itemNoun (derived)": "A list with no itemNoun whose item title is not the field title's singular: ui.itemLabel keeps the item title, and the read side names the noun from it, which is the noun the V2 engine already falls back to (lib/schema.ts itemNoun).";
262
+ readonly "prop target": "A V2 prop has no binding path, so fromTypeSchema('props') returns none: seeding binds each prop to its target. Not a loss.";
263
+ readonly "block placement": "Where a block fits (inline / section / page) is the host's: the block picker and a body's Insert menu place it; a model or component carries none.";
264
+ readonly "seeded instance": "A starting value the host writes into a new instance when it seeds or places one: a schema-level initialValue, or a reference prop's default (a definition holds none: reference_in_definition).";
265
+ readonly "not applicable (props)": "unique on a scalar prop, or on a sub-field outside a table: each placement holds its own value, so there is nothing to be unique across (unique_prop_scope). The instance is the whole document.";
266
+ };
267
+ export type CatalogFeature = keyof typeof CATALOG;
@@ -0,0 +1,233 @@
1
+ //#region src/kit/adapters/lossy.ts
2
+ var FEATURES = {
3
+ "type:table": {
4
+ backlog: "table",
5
+ reason: "Prod has no table field type (BE: a new type): the TableValue is stored verbatim in a json field."
6
+ },
7
+ "type:slot": {
8
+ backlog: "slot",
9
+ reason: "Blocks inside a block have no field: modular needs separate block models and stores {__id,__type,data}. Stored as json."
10
+ },
11
+ "type:polymorphic-array": {
12
+ backlog: "slot",
13
+ reason: "An array of several item types: a model stores it as modular (item types of object only), props have no modular. Stored as json."
14
+ },
15
+ "type:primitive-array": {
16
+ backlog: "wontfix:item-config",
17
+ reason: "A list of this item type has no prod array form: config.itemType is text, number, date, image, link or richtext. Stored as json."
18
+ },
19
+ "depth>10": {
20
+ backlog: "wontfix:depth",
21
+ reason: "Prod allows 10 field levels: the object at level 10 that would nest an 11th is stored as json."
22
+ },
23
+ "type name": {
24
+ backlog: "corpus-fix",
25
+ reason: "The schema name is stored as a kebab-case slug, which does not read back as this name."
26
+ },
27
+ "group name>20": {
28
+ backlog: "corpus-fix",
29
+ reason: "A tab name is at most 20 characters; truncated."
30
+ },
31
+ "group default": {
32
+ backlog: "corpus-fix",
33
+ reason: "The default tab is always the first one in prod."
34
+ },
35
+ "group icon": {
36
+ backlog: "corpus-fix",
37
+ reason: "A tab icon is a dock icon name (DOCK_ICON_NAMES); this name is not one."
38
+ },
39
+ "group (nested)": {
40
+ backlog: "corpus-fix",
41
+ reason: "Only top-level fields can sit in a tab."
42
+ },
43
+ "groups>3": {
44
+ backlog: "dashboard:F12",
45
+ reason: "The dock shows at most 3 tabs (DockFieldTabs), so the adapter keeps 3 until the kit GroupTabs replaces DockFieldTabs at the dock cutover: later groups' fields land in the default tab meanwhile."
46
+ },
47
+ "group name collision": {
48
+ backlog: "corpus-fix",
49
+ reason: "Two tabs share an id, or a stored name (the first 20 characters, trimmed, any case): the backend refuses that (tab_name, fieldset ids), so the later tab is not stored."
50
+ },
51
+ "group (props)": {
52
+ backlog: "dashboard:F12",
53
+ reason: "The dock shows no prop tabs today; the kit GroupTabs renders prop groups as tabs at the dock cutover."
54
+ },
55
+ "fieldset spans groups": {
56
+ backlog: "corpus-fix",
57
+ reason: "A prod fieldset sits in one tab; this field's tab differs from its fieldset's."
58
+ },
59
+ "fieldset (props)": {
60
+ backlog: "corpus-fix",
61
+ reason: "A prop group is defined on the first prop that uses it: a fieldset no prop uses is not stored (and the ones after it move up a place)."
62
+ },
63
+ "fieldset name>limit": {
64
+ backlog: "corpus-fix",
65
+ reason: "A fieldset name is at most 60 characters (a prop group label 32); truncated."
66
+ },
67
+ "fieldset collision": {
68
+ backlog: "corpus-fix",
69
+ reason: "A fieldset shares its id with a group, or this field names a fieldset the schema does not define."
70
+ },
71
+ "duplicate name": {
72
+ backlog: "corpus-fix",
73
+ reason: "Two sibling fields share a name; prod keys are unique per level, so the later one is renamed."
74
+ },
75
+ rows: {
76
+ backlog: "corpus-fix",
77
+ reason: "ui.rows is a whole number from 1 to 40, on a text or long text field only."
78
+ },
79
+ synced: {
80
+ backlog: "corpus-fix",
81
+ reason: "ui.synced names its global in 1–64 characters (trimmed)."
82
+ },
83
+ valueShape: {
84
+ backlog: "corpus-fix",
85
+ reason: "ui.valueShape is for a link, image or button field only."
86
+ },
87
+ "default value": {
88
+ backlog: "corpus-fix",
89
+ reason: "This initial value holds what the prod value cannot keep (named under it): a crop preset with no image size, a datetime without seconds, a button icon outside the dock vocabulary…"
90
+ },
91
+ slotSettings: {
92
+ backlog: "slot",
93
+ reason: "Per-child slot settings belong to the slot, which prod cannot hold."
94
+ },
95
+ icon: {
96
+ backlog: "corpus-fix",
97
+ reason: "A field icon is ui.icon, a dock icon name, on a nesting field only (an object, a list of objects, a modular list); this field is a leaf, or the name is not a dock icon."
98
+ },
99
+ layout: {
100
+ backlog: "corpus-fix",
101
+ reason: "This layout does not fit the field in prod: ui.control is dropdown / radio / grid on a select, cards on a select or multiselect, checkbox on a boolean or multiselect, switch on a boolean, segmented on a select of 2–4 options, slider on a number with min < max (≤ 1000 stops); a list of scalars or entries lays out as rows or a gallery."
102
+ },
103
+ "segmented>4": {
104
+ backlog: "corpus-fix",
105
+ reason: "Prod's segmented control holds 2–4 options (control_segmented): a segmented select with 5 or 6 is stored as radio, with more as dropdown (which V2 itself draws, since it does not fit)."
106
+ },
107
+ "help>limit": {
108
+ backlog: "corpus-fix",
109
+ reason: "Help text is at most 500 characters on a field and 200 on a prop (a placeholder 120, a prop group description 200); truncated."
110
+ },
111
+ "option icon": {
112
+ backlog: "corpus-fix",
113
+ reason: "Option icons are dock icon names, all or none per list: an icon in this list is not a dock name, so the list stores none (option_icon_unknown)."
114
+ },
115
+ "option description": {
116
+ backlog: "corpus-fix",
117
+ reason: "An option description is one line of 1–140 characters (option_description_invalid)."
118
+ },
119
+ condition: {
120
+ backlog: "corpus-fix",
121
+ reason: "This condition has no prod showIf form: it names something that is not a sibling (the block's _variant is one only for a top-level prop: show_if_variant_field), or tests a value showIf cannot."
122
+ },
123
+ access: {
124
+ backlog: "corpus-fix",
125
+ reason: "ui.access takes view \"schema.view\" and edit \"schema.manage\" only (access_cap_unknown), and a developer lock (readOnly \"developer\") is not also a plain read-only flag."
126
+ },
127
+ timezone: {
128
+ backlog: "corpus-fix",
129
+ reason: "A field's time zone is true, false, \"site\" or an IANA zone name, on a date or datetime."
130
+ },
131
+ "reference target": {
132
+ backlog: "reference-targets",
133
+ reason: "Prod references point at content models only (no page, form, shopify or collection targets); a reference prop with none of them is stored as json."
134
+ },
135
+ "reference filter": {
136
+ backlog: "reference-targets",
137
+ reason: "Prod references have no filter."
138
+ },
139
+ "numeric unit": {
140
+ backlog: "corpus-fix",
141
+ reason: "config.unit is a number's (1–24 characters); a rating has no unit."
142
+ },
143
+ "rating bounds": {
144
+ backlog: "corpus-fix",
145
+ reason: "A prod rating runs from config.min (≥ 0) to config.max (a whole 1–10) in steps of config.step, min < max and at most 100 whole steps apart."
146
+ },
147
+ "scale rules": {
148
+ backlog: "corpus-fix",
149
+ reason: "This scale breaks prod's scale rules: token values 1–32 characters and distinct, labels 1–24, at most 50 steps and 20 presets, a token preset naming a step, a { value, unit } preset needing allowCustom."
150
+ },
151
+ "validation.patternMessage": {
152
+ backlog: "corpus-fix",
153
+ reason: "A pattern message needs a stored pattern and is 1–200 characters."
154
+ },
155
+ "validation.pattern": {
156
+ backlog: "corpus-fix",
157
+ reason: "A pattern is kept on text, long text and url values, a regex of at most 200 characters that compiles."
158
+ },
159
+ "validation.length": {
160
+ backlog: "corpus-fix",
161
+ reason: "Length limits are whole numbers ≥ 0, on text, long text, url and rich text values."
162
+ },
163
+ "validation.items": {
164
+ backlog: "corpus-fix",
165
+ reason: "Item limits are whole numbers ≥ 0 on a list, min ≤ max: a tags max 1–500 and min 0–500, a prop's own list (table, array) at most 50 (SLOT_ITEMS_CAP)."
166
+ },
167
+ "validation.unique": {
168
+ backlog: "corpus-fix",
169
+ reason: "unique is for text, long text, slug, email, phone, link, number, select, date and single-model reference fields, and lists; a polymorphic reference has no one id to compare."
170
+ },
171
+ "validation.recommendedMax": {
172
+ backlog: "corpus-fix",
173
+ reason: "A soft limit is a positive whole number in prod."
174
+ },
175
+ "item identity": {
176
+ backlog: "corpus-fix",
177
+ reason: "A list item's name is an identifier (a letter, then letters, digits or _; ≤ 64) and its title 1–60 characters (ui.itemName / ui.itemTitle); an object item keeps no other key."
178
+ },
179
+ "item settings": {
180
+ backlog: "wontfix:item-config",
181
+ reason: "A list of scalars stores its item type only (config.itemType): the item's own validation, description, localized flag or multi-line variant has no prod key (array_config_key_unknown)."
182
+ },
183
+ itemNoun: {
184
+ backlog: "corpus-fix",
185
+ reason: "The item noun is ui.itemLabel, capitalised, at most 24 characters."
186
+ },
187
+ "block model field": {
188
+ backlog: "block-model-fields",
189
+ reason: "A modular item type is a kind:'block' model, which holds only fields a block primitive renders (text, long text, rich text, image, link, slug, email, phone, color, select, number, rating, date, datetime, boolean): this field is not stored."
190
+ },
191
+ "item icon": {
192
+ backlog: "corpus-fix",
193
+ reason: "Prod keeps one icon per list (ui.icon, a dock name): the list has its own icon, or this name is not a dock icon."
194
+ },
195
+ "preview icon": {
196
+ backlog: "corpus-fix",
197
+ reason: "A row preview's icon is a dock icon name."
198
+ },
199
+ "preview path": {
200
+ backlog: "corpus-fix",
201
+ reason: "A row preview names a child key, or a dotted path whose later segments are children or keys of an image, video, link, button, file, location, json, code or reference value (preview_path_unknown)."
202
+ },
203
+ openMode: {
204
+ backlog: "corpus-fix",
205
+ reason: "openMode is for object, array and table fields only."
206
+ },
207
+ "unsupported key": {
208
+ backlog: "corpus-fix",
209
+ reason: "This V2 key has no prod mapping."
210
+ }
211
+ };
212
+ var CATALOG = {
213
+ "block icon": "The block picker's icon belongs to the catalog entry; models and components carry none.",
214
+ category: "The block picker's category is catalog metadata. A component takes the nearest prod category (CATEGORY_TO_PROD) when there is one; a model has none.",
215
+ "document preview": "The document-level preview is catalog metadata; models and components carry none.",
216
+ "kind:block (fields)": "A section's fields are stored as a model (kind model): which host places it is set at seeding.",
217
+ "kind:global": "A global (synced) block is a host-level placement; its fields are stored as a model or a component.",
218
+ "kind:page": "A page schema is stored as a model; the host makes it a page.",
219
+ "kind:object": "An object type is stored as a model.",
220
+ "kind:entry (props)": "Only blocks become components; the host decides what an entry schema is placed as.",
221
+ variants: "Variants are separate components sharing a sectionType in prod: the host seeds one per variant.",
222
+ ai: "The AI-assist sparkle is a host setting, not stored on the field.",
223
+ "item openMode": "Prod keeps one openMode per list, the array's own; the V2 engine reads only that one too (lib/schema.ts itemOpenMode ignores the item's), so the item's changes nothing the dock shows.",
224
+ "itemNoun (derived)": "A list with no itemNoun whose item title is not the field title's singular: ui.itemLabel keeps the item title, and the read side names the noun from it, which is the noun the V2 engine already falls back to (lib/schema.ts itemNoun).",
225
+ "prop target": "A V2 prop has no binding path, so fromTypeSchema('props') returns none: seeding binds each prop to its target. Not a loss.",
226
+ "block placement": "Where a block fits (inline / section / page) is the host's: the block picker and a body's Insert menu place it; a model or component carries none.",
227
+ "seeded instance": "A starting value the host writes into a new instance when it seeds or places one: a schema-level initialValue, or a reference prop's default (a definition holds none: reference_in_definition).",
228
+ "not applicable (props)": "unique on a scalar prop, or on a sub-field outside a table: each placement holds its own value, so there is nothing to be unique across (unique_prop_scope). The instance is the whole document."
229
+ };
230
+ //#endregion
231
+ export { CATALOG, FEATURES };
232
+
233
+ //# sourceMappingURL=lossy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lossy.js","names":[],"sources":["../../src/kit/adapters/lossy.ts"],"sourcesContent":["/**\n * LOSSY ITEMS — every V2 schema feature the production language cannot hold is named, never dropped silently.\n * CATALOG ITEMS (below) are the V2 metadata a host sets at seeding time, which the dock never stores.\n *\n * `path` is a JSON pointer into the V2 TypeSchema (\"/fields/3/of/0/fields/1/localized\"). `feature` is a stable name\n * from FEATURES (what the lossy ledger counts), `reason` says why prod cannot keep it, and FEATURES[feature].backlog\n * names what removes the loss.\n */\nexport interface LossyItem {\n path: string;\n feature: LossyFeature;\n reason: string;\n}\n\n/**\n * What removes a lossy feature: a named backend backlog item (its receipt is this feature's lossy count reaching 0), or\n * an explicit disposition that is not backend work: `corpus-fix` (the V2 schema breaks a prod rule the author can\n * satisfy: rename, shorten, reorder, drop a key the type cannot use), `dashboard:F12` (prod stores it; only the dock's\n * DockFieldTabs drops it, and the kit's GroupTabs replaces that at the dock cutover), `wontfix:depth` (a prod rule kept\n * on purpose: the backend refuses an 11th level with field_depth_exceeded), `wontfix:item-config` (the backend refuses\n * per-item config on a list of scalars on purpose, array_config_key_unknown). corpus-fix items are V2 corpus defects, an\n * owner note for the demo repo: the sandbox renders them from the V2 schema, seeding skips them.\n *\n * Landed on origin/dev and mapped here, so they name no feature any more: prop-reference (73a120c50), validation-parity\n * (dd021ceba), option-meta (ab15fe893), chrome-keys (98e48b9e3, 324580b2e), adapter:icons (the V2 icon vocabulary,\n * e126bf33d), localized-flag (279a10490). What those keys still cannot hold is a value the backend refuses, named\n * below as corpus-fix.\n */\nexport type Backlog =\n | \"reference-targets\"\n | \"table\"\n | \"slot\"\n | \"block-model-fields\"\n | \"corpus-fix\"\n | \"dashboard:F12\"\n | \"wontfix:depth\"\n | \"wontfix:item-config\";\n\nexport const FEATURES = {\n /* field types prod has no home for (the value is kept in a json field, or a near type) */\n \"type:table\": { backlog: \"table\", reason: \"Prod has no table field type (BE: a new type): the TableValue is stored verbatim in a json field.\" },\n \"type:slot\": { backlog: \"slot\", reason: \"Blocks inside a block have no field: modular needs separate block models and stores {__id,__type,data}. Stored as json.\" },\n \"type:polymorphic-array\": { backlog: \"slot\", reason: \"An array of several item types: a model stores it as modular (item types of object only), props have no modular. Stored as json.\" },\n \"type:primitive-array\": { backlog: \"wontfix:item-config\", reason: \"A list of this item type has no prod array form: config.itemType is text, number, date, image, link or richtext. Stored as json.\" },\n \"depth>10\": { backlog: \"wontfix:depth\", reason: \"Prod allows 10 field levels: the object at level 10 that would nest an 11th is stored as json.\" },\n /* document level */\n \"type name\": { backlog: \"corpus-fix\", reason: \"The schema name is stored as a kebab-case slug, which does not read back as this name.\" },\n /* tabs and sections */\n \"group name>20\": { backlog: \"corpus-fix\", reason: \"A tab name is at most 20 characters; truncated.\" },\n \"group default\": { backlog: \"corpus-fix\", reason: \"The default tab is always the first one in prod.\" },\n \"group icon\": { backlog: \"corpus-fix\", reason: \"A tab icon is a dock icon name (DOCK_ICON_NAMES); this name is not one.\" },\n \"group (nested)\": { backlog: \"corpus-fix\", reason: \"Only top-level fields can sit in a tab.\" },\n \"groups>3\": { backlog: \"dashboard:F12\", reason: \"The dock shows at most 3 tabs (DockFieldTabs), so the adapter keeps 3 until the kit GroupTabs replaces DockFieldTabs at the dock cutover: later groups' fields land in the default tab meanwhile.\" },\n \"group name collision\": { backlog: \"corpus-fix\", reason: \"Two tabs share an id, or a stored name (the first 20 characters, trimmed, any case): the backend refuses that (tab_name, fieldset ids), so the later tab is not stored.\" },\n \"group (props)\": { backlog: \"dashboard:F12\", reason: \"The dock shows no prop tabs today; the kit GroupTabs renders prop groups as tabs at the dock cutover.\" },\n \"fieldset spans groups\": { backlog: \"corpus-fix\", reason: \"A prod fieldset sits in one tab; this field's tab differs from its fieldset's.\" },\n \"fieldset (props)\": { backlog: \"corpus-fix\", reason: \"A prop group is defined on the first prop that uses it: a fieldset no prop uses is not stored (and the ones after it move up a place).\" },\n \"fieldset name>limit\": { backlog: \"corpus-fix\", reason: \"A fieldset name is at most 60 characters (a prop group label 32); truncated.\" },\n \"fieldset collision\": { backlog: \"corpus-fix\", reason: \"A fieldset shares its id with a group, or this field names a fieldset the schema does not define.\" },\n /* field chrome and rules */\n \"duplicate name\": { backlog: \"corpus-fix\", reason: \"Two sibling fields share a name; prod keys are unique per level, so the later one is renamed.\" },\n rows: { backlog: \"corpus-fix\", reason: \"ui.rows is a whole number from 1 to 40, on a text or long text field only.\" },\n synced: { backlog: \"corpus-fix\", reason: \"ui.synced names its global in 1–64 characters (trimmed).\" },\n valueShape: { backlog: \"corpus-fix\", reason: \"ui.valueShape is for a link, image or button field only.\" },\n \"default value\": { backlog: \"corpus-fix\", reason: \"This initial value holds what the prod value cannot keep (named under it): a crop preset with no image size, a datetime without seconds, a button icon outside the dock vocabulary…\" },\n slotSettings: { backlog: \"slot\", reason: \"Per-child slot settings belong to the slot, which prod cannot hold.\" },\n icon: { backlog: \"corpus-fix\", reason: \"A field icon is ui.icon, a dock icon name, on a nesting field only (an object, a list of objects, a modular list); this field is a leaf, or the name is not a dock icon.\" },\n layout: { backlog: \"corpus-fix\", reason: \"This layout does not fit the field in prod: ui.control is dropdown / radio / grid on a select, cards on a select or multiselect, checkbox on a boolean or multiselect, switch on a boolean, segmented on a select of 2–4 options, slider on a number with min < max (≤ 1000 stops); a list of scalars or entries lays out as rows or a gallery.\" },\n \"segmented>4\": { backlog: \"corpus-fix\", reason: \"Prod's segmented control holds 2–4 options (control_segmented): a segmented select with 5 or 6 is stored as radio, with more as dropdown (which V2 itself draws, since it does not fit).\" },\n \"help>limit\": { backlog: \"corpus-fix\", reason: \"Help text is at most 500 characters on a field and 200 on a prop (a placeholder 120, a prop group description 200); truncated.\" },\n \"option icon\": { backlog: \"corpus-fix\", reason: \"Option icons are dock icon names, all or none per list: an icon in this list is not a dock name, so the list stores none (option_icon_unknown).\" },\n \"option description\": { backlog: \"corpus-fix\", reason: \"An option description is one line of 1–140 characters (option_description_invalid).\" },\n condition: { backlog: \"corpus-fix\", reason: \"This condition has no prod showIf form: it names something that is not a sibling (the block's _variant is one only for a top-level prop: show_if_variant_field), or tests a value showIf cannot.\" },\n access: { backlog: \"corpus-fix\", reason: \"ui.access takes view \\\"schema.view\\\" and edit \\\"schema.manage\\\" only (access_cap_unknown), and a developer lock (readOnly \\\"developer\\\") is not also a plain read-only flag.\" },\n timezone: { backlog: \"corpus-fix\", reason: \"A field's time zone is true, false, \\\"site\\\" or an IANA zone name, on a date or datetime.\" },\n \"reference target\": { backlog: \"reference-targets\", reason: \"Prod references point at content models only (no page, form, shopify or collection targets); a reference prop with none of them is stored as json.\" },\n \"reference filter\": { backlog: \"reference-targets\", reason: \"Prod references have no filter.\" },\n \"numeric unit\": { backlog: \"corpus-fix\", reason: \"config.unit is a number's (1–24 characters); a rating has no unit.\" },\n \"rating bounds\": { backlog: \"corpus-fix\", reason: \"A prod rating runs from config.min (≥ 0) to config.max (a whole 1–10) in steps of config.step, min < max and at most 100 whole steps apart.\" },\n \"scale rules\": { backlog: \"corpus-fix\", reason: \"This scale breaks prod's scale rules: token values 1–32 characters and distinct, labels 1–24, at most 50 steps and 20 presets, a token preset naming a step, a { value, unit } preset needing allowCustom.\" },\n \"validation.patternMessage\": { backlog: \"corpus-fix\", reason: \"A pattern message needs a stored pattern and is 1–200 characters.\" },\n \"validation.pattern\": { backlog: \"corpus-fix\", reason: \"A pattern is kept on text, long text and url values, a regex of at most 200 characters that compiles.\" },\n \"validation.length\": { backlog: \"corpus-fix\", reason: \"Length limits are whole numbers ≥ 0, on text, long text, url and rich text values.\" },\n \"validation.items\": { backlog: \"corpus-fix\", reason: \"Item limits are whole numbers ≥ 0 on a list, min ≤ max: a tags max 1–500 and min 0–500, a prop's own list (table, array) at most 50 (SLOT_ITEMS_CAP).\" },\n \"validation.unique\": { backlog: \"corpus-fix\", reason: \"unique is for text, long text, slug, email, phone, link, number, select, date and single-model reference fields, and lists; a polymorphic reference has no one id to compare.\" },\n \"validation.recommendedMax\": { backlog: \"corpus-fix\", reason: \"A soft limit is a positive whole number in prod.\" },\n \"item identity\": { backlog: \"corpus-fix\", reason: \"A list item's name is an identifier (a letter, then letters, digits or _; ≤ 64) and its title 1–60 characters (ui.itemName / ui.itemTitle); an object item keeps no other key.\" },\n \"item settings\": { backlog: \"wontfix:item-config\", reason: \"A list of scalars stores its item type only (config.itemType): the item's own validation, description, localized flag or multi-line variant has no prod key (array_config_key_unknown).\" },\n itemNoun: { backlog: \"corpus-fix\", reason: \"The item noun is ui.itemLabel, capitalised, at most 24 characters.\" },\n \"block model field\": { backlog: \"block-model-fields\", reason: \"A modular item type is a kind:'block' model, which holds only fields a block primitive renders (text, long text, rich text, image, link, slug, email, phone, color, select, number, rating, date, datetime, boolean): this field is not stored.\" },\n \"item icon\": { backlog: \"corpus-fix\", reason: \"Prod keeps one icon per list (ui.icon, a dock name): the list has its own icon, or this name is not a dock icon.\" },\n \"preview icon\": { backlog: \"corpus-fix\", reason: \"A row preview's icon is a dock icon name.\" },\n \"preview path\": { backlog: \"corpus-fix\", reason: \"A row preview names a child key, or a dotted path whose later segments are children or keys of an image, video, link, button, file, location, json, code or reference value (preview_path_unknown).\" },\n openMode: { backlog: \"corpus-fix\", reason: \"openMode is for object, array and table fields only.\" },\n \"unsupported key\": { backlog: \"corpus-fix\", reason: \"This V2 key has no prod mapping.\" },\n} as const satisfies Record<string, { reason: string; backlog: Backlog }>;\n\nexport type LossyFeature = keyof typeof FEATURES;\n\n/**\n * CATALOG ITEMS — V2 metadata the dock never stores, set when a schema is seeded or placed by its host: not a loss of\n * stored content. Reported apart from LossyItem so the lossy ledger counts only what prod drops.\n */\nexport interface CatalogItem {\n path: string;\n feature: CatalogFeature;\n reason: string;\n}\n\nexport const CATALOG = {\n \"block icon\": \"The block picker's icon belongs to the catalog entry; models and components carry none.\",\n category: \"The block picker's category is catalog metadata. A component takes the nearest prod category (CATEGORY_TO_PROD) when there is one; a model has none.\",\n \"document preview\": \"The document-level preview is catalog metadata; models and components carry none.\",\n \"kind:block (fields)\": \"A section's fields are stored as a model (kind model): which host places it is set at seeding.\",\n \"kind:global\": \"A global (synced) block is a host-level placement; its fields are stored as a model or a component.\",\n \"kind:page\": \"A page schema is stored as a model; the host makes it a page.\",\n \"kind:object\": \"An object type is stored as a model.\",\n \"kind:entry (props)\": \"Only blocks become components; the host decides what an entry schema is placed as.\",\n variants: \"Variants are separate components sharing a sectionType in prod: the host seeds one per variant.\",\n ai: \"The AI-assist sparkle is a host setting, not stored on the field.\",\n \"item openMode\": \"Prod keeps one openMode per list, the array's own; the V2 engine reads only that one too (lib/schema.ts itemOpenMode ignores the item's), so the item's changes nothing the dock shows.\",\n \"itemNoun (derived)\": \"A list with no itemNoun whose item title is not the field title's singular: ui.itemLabel keeps the item title, and the read side names the noun from it, which is the noun the V2 engine already falls back to (lib/schema.ts itemNoun).\",\n \"prop target\": \"A V2 prop has no binding path, so fromTypeSchema('props') returns none: seeding binds each prop to its target. Not a loss.\",\n \"block placement\": \"Where a block fits (inline / section / page) is the host's: the block picker and a body's Insert menu place it; a model or component carries none.\",\n \"seeded instance\": \"A starting value the host writes into a new instance when it seeds or places one: a schema-level initialValue, or a reference prop's default (a definition holds none: reference_in_definition).\",\n \"not applicable (props)\": \"unique on a scalar prop, or on a sub-field outside a table: each placement holds its own value, so there is nothing to be unique across (unique_prop_scope). The instance is the whole document.\",\n} as const;\n\nexport type CatalogFeature = keyof typeof CATALOG;\n"],"mappings":";AAsCA,IAAa,WAAW;CAEtB,cAAc;EAAE,SAAS;EAAS,QAAQ;EAAqG;CAC/I,aAAa;EAAE,SAAS;EAAQ,QAAQ;EAA2H;CACnK,0BAA0B;EAAE,SAAS;EAAQ,QAAQ;EAAoI;CACzL,wBAAwB;EAAE,SAAS;EAAuB,QAAQ;EAAoI;CACtM,YAAY;EAAE,SAAS;EAAiB,QAAQ;EAAkG;CAElJ,aAAa;EAAE,SAAS;EAAc,QAAQ;EAA0F;CAExI,iBAAiB;EAAE,SAAS;EAAc,QAAQ;EAAmD;CACrG,iBAAiB;EAAE,SAAS;EAAc,QAAQ;EAAoD;CACtG,cAAc;EAAE,SAAS;EAAc,QAAQ;EAA2E;CAC1H,kBAAkB;EAAE,SAAS;EAAc,QAAQ;EAA2C;CAC9F,YAAY;EAAE,SAAS;EAAiB,QAAQ;EAAqM;CACrP,wBAAwB;EAAE,SAAS;EAAc,QAAQ;EAA2K;CACpO,iBAAiB;EAAE,SAAS;EAAiB,QAAQ;EAAyG;CAC9J,yBAAyB;EAAE,SAAS;EAAc,QAAQ;EAAkF;CAC5I,oBAAoB;EAAE,SAAS;EAAc,QAAQ;EAA0I;CAC/L,uBAAuB;EAAE,SAAS;EAAc,QAAQ;EAAgF;CACxI,sBAAsB;EAAE,SAAS;EAAc,QAAQ;EAAqG;CAE5J,kBAAkB;EAAE,SAAS;EAAc,QAAQ;EAAiG;CACpJ,MAAM;EAAE,SAAS;EAAc,QAAQ;EAA8E;CACrH,QAAQ;EAAE,SAAS;EAAc,QAAQ;EAA4D;CACrG,YAAY;EAAE,SAAS;EAAc,QAAQ;EAA4D;CACzG,iBAAiB;EAAE,SAAS;EAAc,QAAQ;EAAuL;CACzO,cAAc;EAAE,SAAS;EAAQ,QAAQ;EAAuE;CAChH,MAAM;EAAE,SAAS;EAAc,QAAQ;EAA4K;CACnN,QAAQ;EAAE,SAAS;EAAc,QAAQ;EAAmV;CAC5X,eAAe;EAAE,SAAS;EAAc,QAAQ;EAA4L;CAC5O,cAAc;EAAE,SAAS;EAAc,QAAQ;EAAkI;CACjL,eAAe;EAAE,SAAS;EAAc,QAAQ;EAAmJ;CACnM,sBAAsB;EAAE,SAAS;EAAc,QAAQ;EAAuF;CAC9I,WAAW;EAAE,SAAS;EAAc,QAAQ;EAAoM;CAChP,QAAQ;EAAE,SAAS;EAAc,QAAQ;EAAgL;CACzN,UAAU;EAAE,SAAS;EAAc,QAAQ;EAA6F;CACxI,oBAAoB;EAAE,SAAS;EAAqB,QAAQ;EAAsJ;CAClN,oBAAoB;EAAE,SAAS;EAAqB,QAAQ;EAAmC;CAC/F,gBAAgB;EAAE,SAAS;EAAc,QAAQ;EAAsE;CACvH,iBAAiB;EAAE,SAAS;EAAc,QAAQ;EAA+I;CACjM,eAAe;EAAE,SAAS;EAAc,QAAQ;EAA8M;CAC9P,6BAA6B;EAAE,SAAS;EAAc,QAAQ;EAAqE;CACnI,sBAAsB;EAAE,SAAS;EAAc,QAAQ;EAAyG;CAChK,qBAAqB;EAAE,SAAS;EAAc,QAAQ;EAAsF;CAC5I,oBAAoB;EAAE,SAAS;EAAc,QAAQ;EAAyJ;CAC9M,qBAAqB;EAAE,SAAS;EAAc,QAAQ;EAAiL;CACvO,6BAA6B;EAAE,SAAS;EAAc,QAAQ;EAAoD;CAClH,iBAAiB;EAAE,SAAS;EAAc,QAAQ;EAAkL;CACpO,iBAAiB;EAAE,SAAS;EAAuB,QAAQ;EAA2L;CACtP,UAAU;EAAE,SAAS;EAAc,QAAQ;EAAsE;CACjH,qBAAqB;EAAE,SAAS;EAAsB,QAAQ;EAAmP;CACjT,aAAa;EAAE,SAAS;EAAc,QAAQ;EAAoH;CAClK,gBAAgB;EAAE,SAAS;EAAc,QAAQ;EAA6C;CAC9F,gBAAgB;EAAE,SAAS;EAAc,QAAQ;EAAuM;CACxP,UAAU;EAAE,SAAS;EAAc,QAAQ;EAAwD;CACnG,mBAAmB;EAAE,SAAS;EAAc,QAAQ;EAAoC;CACzF;AAcD,IAAa,UAAU;CACrB,cAAc;CACd,UAAU;CACV,oBAAoB;CACpB,uBAAuB;CACvB,eAAe;CACf,aAAa;CACb,eAAe;CACf,sBAAsB;CACtB,UAAU;CACV,IAAI;CACJ,iBAAiB;CACjB,sBAAsB;CACtB,eAAe;CACf,mBAAmB;CACnB,mBAAmB;CACnB,0BAA0B;CAC3B"}