@bettercms-ai/kit 1.0.0 → 2.0.0-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (619) hide show
  1. package/README.md +33 -0
  2. package/dist/adapters/dock-values.d.ts +28 -0
  3. package/dist/adapters/dock-values.js +41 -0
  4. package/dist/adapters/dock-values.js.map +1 -0
  5. package/{adapters → dist/adapters}/icons.js +2 -2
  6. package/dist/adapters/icons.js.map +1 -0
  7. package/{adapters → dist/adapters}/lossy.d.ts +94 -31
  8. package/dist/adapters/lossy.js +419 -0
  9. package/dist/adapters/lossy.js.map +1 -0
  10. package/{adapters → dist/adapters}/prod-types.d.ts +91 -26
  11. package/{adapters → dist/adapters}/prod-types.js +82 -13
  12. package/dist/adapters/prod-types.js.map +1 -0
  13. package/{adapters → dist/adapters}/schema.d.ts +40 -1
  14. package/{adapters → dist/adapters}/schema.js +1038 -204
  15. package/dist/adapters/schema.js.map +1 -0
  16. package/{adapters → dist/adapters}/values.d.ts +26 -5
  17. package/{adapters → dist/adapters}/values.js +87 -17
  18. package/dist/adapters/values.js.map +1 -0
  19. package/dist/brand/logo.js +96 -0
  20. package/dist/brand/logo.js.map +1 -0
  21. package/{context.d.ts → dist/context.d.ts} +131 -2
  22. package/{context.js → dist/context.js} +44 -2
  23. package/dist/context.js.map +1 -0
  24. package/{controls → dist/controls}/button.d.ts +19 -5
  25. package/{controls → dist/controls}/button.js +125 -54
  26. package/dist/controls/button.js.map +1 -0
  27. package/{controls → dist/controls}/c1.js +1 -1
  28. package/dist/controls/c1.js.map +1 -0
  29. package/{controls → dist/controls}/c2.js +1 -1
  30. package/dist/controls/c2.js.map +1 -0
  31. package/{controls → dist/controls}/choice.d.ts +7 -2
  32. package/{controls → dist/controls}/choice.js +71 -18
  33. package/dist/controls/choice.js.map +1 -0
  34. package/{controls → dist/controls}/code-register.js +1 -1
  35. package/dist/controls/code-register.js.map +1 -0
  36. package/{controls → dist/controls}/code.js +10 -9
  37. package/dist/controls/code.js.map +1 -0
  38. package/{controls → dist/controls}/color.js +8 -8
  39. package/dist/controls/color.js.map +1 -0
  40. package/{controls → dist/controls}/component-services.d.ts +42 -0
  41. package/dist/controls/component-services.js +7 -0
  42. package/dist/controls/component-services.js.map +1 -0
  43. package/{controls → dist/controls}/date-register.js +1 -1
  44. package/dist/controls/date-register.js.map +1 -0
  45. package/{controls → dist/controls}/date-zone.js +8 -2
  46. package/dist/controls/date-zone.js.map +1 -0
  47. package/{controls → dist/controls}/date.js +32 -24
  48. package/dist/controls/date.js.map +1 -0
  49. package/dist/controls/form-picker-register.d.ts +7 -0
  50. package/{controls → dist/controls}/form-picker-register.js +2 -6
  51. package/dist/controls/form-picker-register.js.map +1 -0
  52. package/{controls → dist/controls}/form-picker.js +11 -9
  53. package/dist/controls/form-picker.js.map +1 -0
  54. package/{controls → dist/controls}/icon-register.js +1 -1
  55. package/dist/controls/icon-register.js.map +1 -0
  56. package/{controls → dist/controls}/icon.d.ts +4 -2
  57. package/{controls → dist/controls}/icon.js +32 -27
  58. package/dist/controls/icon.js.map +1 -0
  59. package/{controls → dist/controls}/index.d.ts +1 -1
  60. package/{controls → dist/controls}/index.js +4 -3
  61. package/dist/controls/index.js.map +1 -0
  62. package/{controls → dist/controls}/json-register.js +1 -1
  63. package/dist/controls/json-register.js.map +1 -0
  64. package/{controls → dist/controls}/json.js +13 -3
  65. package/dist/controls/json.js.map +1 -0
  66. package/{controls → dist/controls}/link.js +116 -200
  67. package/dist/controls/link.js.map +1 -0
  68. package/{controls → dist/controls}/location-register.js +1 -1
  69. package/dist/controls/location-register.js.map +1 -0
  70. package/{controls → dist/controls}/location.js +59 -40
  71. package/dist/controls/location.js.map +1 -0
  72. package/{controls → dist/controls}/media-register.js +1 -1
  73. package/dist/controls/media-register.js.map +1 -0
  74. package/{controls → dist/controls}/media-services.d.ts +6 -0
  75. package/dist/controls/media-services.js +0 -0
  76. package/{controls → dist/controls}/media.d.ts +21 -4
  77. package/{controls → dist/controls}/media.js +407 -130
  78. package/dist/controls/media.js.map +1 -0
  79. package/{controls → dist/controls}/number.js +10 -9
  80. package/dist/controls/number.js.map +1 -0
  81. package/{controls → dist/controls}/reference-register.js +1 -1
  82. package/dist/controls/reference-register.js.map +1 -0
  83. package/{controls → dist/controls}/reference-services.d.ts +4 -0
  84. package/dist/controls/reference-services.js +0 -0
  85. package/{controls → dist/controls}/reference.d.ts +1 -1
  86. package/{controls → dist/controls}/reference.js +93 -77
  87. package/dist/controls/reference.js.map +1 -0
  88. package/dist/controls/rich-text/article-shell.d.ts +145 -0
  89. package/dist/controls/rich-text/article-shell.js +510 -0
  90. package/dist/controls/rich-text/article-shell.js.map +1 -0
  91. package/dist/controls/rich-text/author.d.ts +25 -0
  92. package/dist/controls/rich-text/author.js +104 -0
  93. package/dist/controls/rich-text/author.js.map +1 -0
  94. package/dist/controls/rich-text/blocks.d.ts +60 -0
  95. package/{controls → dist/controls}/rich-text/blocks.js +164 -389
  96. package/dist/controls/rich-text/blocks.js.map +1 -0
  97. package/dist/controls/rich-text/button.d.ts +23 -0
  98. package/dist/controls/rich-text/button.js +85 -0
  99. package/dist/controls/rich-text/button.js.map +1 -0
  100. package/{controls → dist/controls}/rich-text/catalog.d.ts +7 -4
  101. package/{controls → dist/controls}/rich-text/catalog.js +94 -68
  102. package/dist/controls/rich-text/catalog.js.map +1 -0
  103. package/dist/controls/rich-text/checklist.d.ts +24 -0
  104. package/dist/controls/rich-text/checklist.js +115 -0
  105. package/dist/controls/rich-text/checklist.js.map +1 -0
  106. package/{controls → dist/controls}/rich-text/codec.d.ts +9 -1
  107. package/{controls → dist/controls}/rich-text/codec.js +7 -2
  108. package/dist/controls/rich-text/codec.js.map +1 -0
  109. package/dist/controls/rich-text/columns.d.ts +41 -0
  110. package/dist/controls/rich-text/columns.js +181 -0
  111. package/dist/controls/rich-text/columns.js.map +1 -0
  112. package/{controls → dist/controls}/rich-text/component-card.d.ts +1 -1
  113. package/{controls → dist/controls}/rich-text/component-card.js +417 -99
  114. package/dist/controls/rich-text/component-card.js.map +1 -0
  115. package/dist/controls/rich-text/component-panel.d.ts +47 -0
  116. package/dist/controls/rich-text/component-panel.js +141 -0
  117. package/dist/controls/rich-text/component-panel.js.map +1 -0
  118. package/{controls → dist/controls}/rich-text/control.d.ts +1 -2
  119. package/{controls → dist/controls}/rich-text/control.js +84 -42
  120. package/dist/controls/rich-text/control.js.map +1 -0
  121. package/{controls → dist/controls}/rich-text/dom.d.ts +53 -9
  122. package/{controls → dist/controls}/rich-text/dom.js +388 -50
  123. package/dist/controls/rich-text/dom.js.map +1 -0
  124. package/{controls → dist/controls}/rich-text/editor.d.ts +7 -0
  125. package/{controls → dist/controls}/rich-text/editor.js +226 -44
  126. package/dist/controls/rich-text/editor.js.map +1 -0
  127. package/dist/controls/rich-text/embed.d.ts +28 -0
  128. package/dist/controls/rich-text/embed.js +210 -0
  129. package/dist/controls/rich-text/embed.js.map +1 -0
  130. package/{controls → dist/controls}/rich-text/floating.d.ts +6 -1
  131. package/{controls → dist/controls}/rich-text/floating.js +35 -18
  132. package/dist/controls/rich-text/floating.js.map +1 -0
  133. package/dist/controls/rich-text/footnote.d.ts +41 -0
  134. package/dist/controls/rich-text/footnote.js +185 -0
  135. package/dist/controls/rich-text/footnote.js.map +1 -0
  136. package/dist/controls/rich-text/gallery.d.ts +28 -0
  137. package/dist/controls/rich-text/gallery.js +167 -0
  138. package/dist/controls/rich-text/gallery.js.map +1 -0
  139. package/{controls → dist/controls}/rich-text/index.js +1 -1
  140. package/dist/controls/rich-text/index.js.map +1 -0
  141. package/{controls → dist/controls}/rich-text/link-form.d.ts +3 -1
  142. package/dist/controls/rich-text/link-form.js +147 -0
  143. package/dist/controls/rich-text/link-form.js.map +1 -0
  144. package/{controls → dist/controls}/rich-text/markdown.js +4 -2
  145. package/dist/controls/rich-text/markdown.js.map +1 -0
  146. package/{controls → dist/controls}/rich-text/ops.js +17 -15
  147. package/dist/controls/rich-text/ops.js.map +1 -0
  148. package/dist/controls/rich-text/plain.d.ts +17 -0
  149. package/dist/controls/rich-text/plain.js +44 -0
  150. package/dist/controls/rich-text/plain.js.map +1 -0
  151. package/dist/controls/rich-text/related.d.ts +36 -0
  152. package/dist/controls/rich-text/related.js +213 -0
  153. package/dist/controls/rich-text/related.js.map +1 -0
  154. package/dist/controls/rich-text/toc.d.ts +46 -0
  155. package/dist/controls/rich-text/toc.js +161 -0
  156. package/dist/controls/rich-text/toc.js.map +1 -0
  157. package/{controls → dist/controls}/rich-text/toolbar.d.ts +6 -2
  158. package/{controls → dist/controls}/rich-text/toolbar.js +12 -7
  159. package/dist/controls/rich-text/toolbar.js.map +1 -0
  160. package/{controls → dist/controls}/scale.js +5 -5
  161. package/dist/controls/scale.js.map +1 -0
  162. package/dist/controls/slot-register.d.ts +6 -0
  163. package/{controls → dist/controls}/slot-register.js +2 -5
  164. package/dist/controls/slot-register.js.map +1 -0
  165. package/{controls → dist/controls}/slot-services.d.ts +25 -0
  166. package/dist/controls/slot-services.js +155 -0
  167. package/dist/controls/slot-services.js.map +1 -0
  168. package/{controls → dist/controls}/slot.js +42 -24
  169. package/dist/controls/slot.js.map +1 -0
  170. package/{controls → dist/controls}/table/index.js +1 -1
  171. package/dist/controls/table/index.js.map +1 -0
  172. package/{controls → dist/controls}/table/prod.js +3 -3
  173. package/dist/controls/table/prod.js.map +1 -0
  174. package/{controls → dist/controls}/table/refs.js +13 -2
  175. package/dist/controls/table/refs.js.map +1 -0
  176. package/{controls → dist/controls}/table/stored.js +1 -1
  177. package/dist/controls/table/stored.js.map +1 -0
  178. package/{controls → dist/controls}/table/table-editor.js +51 -48
  179. package/dist/controls/table/table-editor.js.map +1 -0
  180. package/{controls → dist/controls}/table/table-link.js +3 -3
  181. package/dist/controls/table/table-link.js.map +1 -0
  182. package/{controls → dist/controls}/table/table.js +3 -3
  183. package/dist/controls/table/table.js.map +1 -0
  184. package/{controls → dist/controls}/text.d.ts +2 -2
  185. package/{controls → dist/controls}/text.js +78 -43
  186. package/dist/controls/text.js.map +1 -0
  187. package/dist/controls/unknown-value.d.ts +17 -0
  188. package/dist/controls/unknown-value.js +66 -0
  189. package/dist/controls/unknown-value.js.map +1 -0
  190. package/dist/core/core.d.ts +70 -0
  191. package/dist/core/core.js +187 -0
  192. package/dist/core/core.js.map +1 -0
  193. package/dist/core/facets.d.ts +355 -0
  194. package/dist/core/facets.js +342 -0
  195. package/dist/core/facets.js.map +1 -0
  196. package/dist/core/index.d.ts +3 -0
  197. package/dist/core/index.js +3 -0
  198. package/{engine → dist/engine}/array.js +34 -21
  199. package/dist/engine/array.js.map +1 -0
  200. package/{engine → dist/engine}/bits.js +1 -1
  201. package/dist/engine/bits.js.map +1 -0
  202. package/{engine → dist/engine}/breadcrumb.d.ts +3 -3
  203. package/{engine → dist/engine}/breadcrumb.js +12 -36
  204. package/dist/engine/breadcrumb.js.map +1 -0
  205. package/{engine → dist/engine}/expand.d.ts +2 -4
  206. package/{engine → dist/engine}/expand.js +5 -22
  207. package/dist/engine/expand.js.map +1 -0
  208. package/{engine → dist/engine}/field-list.js +1 -1
  209. package/dist/engine/field-list.js.map +1 -0
  210. package/{engine → dist/engine}/field-shell.js +249 -121
  211. package/dist/engine/field-shell.js.map +1 -0
  212. package/{engine → dist/engine}/frame.d.ts +3 -1
  213. package/{engine → dist/engine}/frame.js +16 -14
  214. package/dist/engine/frame.js.map +1 -0
  215. package/{engine → dist/engine}/group-summary.d.ts +2 -1
  216. package/{engine → dist/engine}/group-summary.js +7 -3
  217. package/dist/engine/group-summary.js.map +1 -0
  218. package/{engine → dist/engine}/grouping.d.ts +19 -5
  219. package/{engine → dist/engine}/grouping.js +193 -21
  220. package/dist/engine/grouping.js.map +1 -0
  221. package/{engine → dist/engine}/item-list.d.ts +11 -1
  222. package/{engine → dist/engine}/item-list.js +35 -13
  223. package/dist/engine/item-list.js.map +1 -0
  224. package/{engine → dist/engine}/kit-field.js +45 -10
  225. package/dist/engine/kit-field.js.map +1 -0
  226. package/{engine → dist/engine}/schema-form.d.ts +27 -2
  227. package/{engine → dist/engine}/schema-form.js +182 -40
  228. package/dist/engine/schema-form.js.map +1 -0
  229. package/{engine → dist/engine}/slot.js +5 -15
  230. package/dist/engine/slot.js.map +1 -0
  231. package/dist/index.js +58 -0
  232. package/dist/index.js.map +1 -0
  233. package/{kit.css → dist/kit.css} +19 -0
  234. package/{lib → dist/lib}/cn.js +7 -4
  235. package/dist/lib/cn.js.map +1 -0
  236. package/{lib → dist/lib}/columns.js +4 -1
  237. package/dist/lib/columns.js.map +1 -0
  238. package/{lib → dist/lib}/frames.js +2 -2
  239. package/dist/lib/frames.js.map +1 -0
  240. package/dist/lib/icon-image.d.ts +10 -0
  241. package/dist/lib/icon-image.js +8 -0
  242. package/dist/lib/icon-image.js.map +1 -0
  243. package/{lib → dist/lib}/icons.js +4 -3
  244. package/dist/lib/icons.js.map +1 -0
  245. package/dist/lib/input-modality.d.ts +11 -0
  246. package/dist/lib/input-modality.js +47 -0
  247. package/dist/lib/input-modality.js.map +1 -0
  248. package/dist/lib/key-event.d.ts +11 -0
  249. package/dist/lib/key-event.js +16 -0
  250. package/dist/lib/key-event.js.map +1 -0
  251. package/{lib → dist/lib}/path.js +4 -2
  252. package/dist/lib/path.js.map +1 -0
  253. package/{lib → dist/lib}/schema.d.ts +34 -3
  254. package/{lib → dist/lib}/schema.js +110 -13
  255. package/dist/lib/schema.js.map +1 -0
  256. package/{lib → dist/lib}/utils.js +1 -1
  257. package/dist/lib/utils.js.map +1 -0
  258. package/{lib → dist/lib}/validate.d.ts +11 -1
  259. package/{lib → dist/lib}/validate.js +85 -11
  260. package/dist/lib/validate.js.map +1 -0
  261. package/dist/library/analysis.d.ts +23 -0
  262. package/dist/library/analysis.js +160 -0
  263. package/dist/library/analysis.js.map +1 -0
  264. package/dist/library/catalog.d.ts +57 -0
  265. package/dist/library/catalog.js +307 -0
  266. package/dist/library/catalog.js.map +1 -0
  267. package/dist/library/coreNotes.d.ts +8 -0
  268. package/dist/library/coreNotes.js +111 -0
  269. package/dist/library/coreNotes.js.map +1 -0
  270. package/dist/library/coverage.d.ts +40 -0
  271. package/dist/library/coverage.js +59 -0
  272. package/dist/library/coverage.js.map +1 -0
  273. package/dist/library/entries/advanced.entries.d.ts +2 -0
  274. package/dist/library/entries/advanced.entries.js +6579 -0
  275. package/dist/library/entries/advanced.entries.js.map +1 -0
  276. package/dist/library/entries/commerce.entries.d.ts +2 -0
  277. package/dist/library/entries/commerce.entries.js +4140 -0
  278. package/dist/library/entries/commerce.entries.js.map +1 -0
  279. package/dist/library/entries/company.entries.d.ts +2 -0
  280. package/dist/library/entries/company.entries.js +2731 -0
  281. package/dist/library/entries/company.entries.js.map +1 -0
  282. package/dist/library/entries/conversion.entries.d.ts +2 -0
  283. package/dist/library/entries/conversion.entries.js +3707 -0
  284. package/dist/library/entries/conversion.entries.js.map +1 -0
  285. package/dist/library/entries/data.entries.d.ts +7 -0
  286. package/dist/library/entries/data.entries.js +4613 -0
  287. package/dist/library/entries/data.entries.js.map +1 -0
  288. package/dist/library/entries/events.entries.d.ts +2 -0
  289. package/dist/library/entries/events.entries.js +3428 -0
  290. package/dist/library/entries/events.entries.js.map +1 -0
  291. package/dist/library/entries/features.entries.d.ts +2 -0
  292. package/dist/library/entries/features.entries.js +3157 -0
  293. package/dist/library/entries/features.entries.js.map +1 -0
  294. package/dist/library/entries/heroes.entries.d.ts +2 -0
  295. package/dist/library/entries/heroes.entries.js +3401 -0
  296. package/dist/library/entries/heroes.entries.js.map +1 -0
  297. package/dist/library/entries/index.d.ts +3 -0
  298. package/dist/library/entries/index.js +35 -0
  299. package/dist/library/entries/index.js.map +1 -0
  300. package/dist/library/entries/listings.entries.d.ts +2 -0
  301. package/dist/library/entries/listings.entries.js +2976 -0
  302. package/dist/library/entries/listings.entries.js.map +1 -0
  303. package/dist/library/entries/longform.entries.d.ts +2 -0
  304. package/dist/library/entries/longform.entries.js +4227 -0
  305. package/dist/library/entries/longform.entries.js.map +1 -0
  306. package/dist/library/entries/media.entries.d.ts +2 -0
  307. package/dist/library/entries/media.entries.js +2781 -0
  308. package/dist/library/entries/media.entries.js.map +1 -0
  309. package/dist/library/entries/navigation.entries.d.ts +2 -0
  310. package/dist/library/entries/navigation.entries.js +4011 -0
  311. package/dist/library/entries/navigation.entries.js.map +1 -0
  312. package/dist/library/entries/pricing.entries.d.ts +2 -0
  313. package/dist/library/entries/pricing.entries.js +2383 -0
  314. package/dist/library/entries/pricing.entries.js.map +1 -0
  315. package/dist/library/entries/social-proof.entries.d.ts +2 -0
  316. package/dist/library/entries/social-proof.entries.js +2297 -0
  317. package/dist/library/entries/social-proof.entries.js.map +1 -0
  318. package/dist/library/examples/bento.d.ts +92 -0
  319. package/dist/library/examples/bento.js +201 -0
  320. package/dist/library/examples/bento.js.map +1 -0
  321. package/dist/library/examples/blocks.d.ts +14 -0
  322. package/dist/library/examples/blocks.js +313 -0
  323. package/dist/library/examples/blocks.js.map +1 -0
  324. package/dist/library/examples/faq.d.ts +28 -0
  325. package/dist/library/examples/faq.js +230 -0
  326. package/dist/library/examples/faq.js.map +1 -0
  327. package/dist/library/examples/hero.d.ts +43 -0
  328. package/dist/library/examples/hero.js +222 -0
  329. package/dist/library/examples/hero.js.map +1 -0
  330. package/dist/library/examples/index.d.ts +36 -0
  331. package/dist/library/examples/index.js +109 -0
  332. package/dist/library/examples/index.js.map +1 -0
  333. package/dist/library/examples/journalStory.d.ts +93 -0
  334. package/dist/library/examples/journalStory.js +338 -0
  335. package/dist/library/examples/journalStory.js.map +1 -0
  336. package/dist/library/examples/megaMenu.d.ts +134 -0
  337. package/dist/library/examples/megaMenu.js +442 -0
  338. package/dist/library/examples/megaMenu.js.map +1 -0
  339. package/dist/library/examples/pricing.d.ts +103 -0
  340. package/dist/library/examples/pricing.js +479 -0
  341. package/dist/library/examples/pricing.js.map +1 -0
  342. package/dist/library/examples/tabs.d.ts +87 -0
  343. package/dist/library/examples/tabs.js +180 -0
  344. package/dist/library/examples/tabs.js.map +1 -0
  345. package/dist/library/export.d.ts +42 -0
  346. package/dist/library/export.js +80 -0
  347. package/dist/library/export.js.map +1 -0
  348. package/dist/library/index.d.ts +13 -0
  349. package/dist/library/index.js +6 -0
  350. package/dist/library/kit-catalog.json +1511 -0
  351. package/dist/library/types.d.ts +42 -0
  352. package/dist/library/types.js +0 -0
  353. package/{schema → dist/schema}/adapters.js +1 -2
  354. package/dist/schema/adapters.js.map +1 -0
  355. package/{schema → dist/schema}/help.d.ts +2 -0
  356. package/{schema → dist/schema}/help.js +6 -4
  357. package/dist/schema/help.js.map +1 -0
  358. package/{schema → dist/schema}/scale.js +1 -1
  359. package/dist/schema/scale.js.map +1 -0
  360. package/{schema → dist/schema}/sources.js +1 -1
  361. package/dist/schema/sources.js.map +1 -0
  362. package/{schema → dist/schema}/table.js +11 -10
  363. package/dist/schema/table.js.map +1 -0
  364. package/{schema → dist/schema}/types.d.ts +36 -1
  365. package/{schema → dist/schema}/types.js +1 -1
  366. package/dist/schema/types.js.map +1 -0
  367. package/dist/styles.css +2 -0
  368. package/dist/table/table-view.d.ts +14 -0
  369. package/dist/table/table-view.js +140 -0
  370. package/dist/table/table-view.js.map +1 -0
  371. package/dist/table/table.css +73 -0
  372. package/dist/testing/corpus.d.ts +63 -0
  373. package/dist/testing/corpus.js +129 -0
  374. package/dist/testing/corpus.js.map +1 -0
  375. package/dist/testing/test-form.d.ts +11 -0
  376. package/dist/testing/test-form.js +38 -0
  377. package/dist/testing/test-form.js.map +1 -0
  378. package/dist/theme.css +345 -0
  379. package/dist/theme.d.ts +22 -0
  380. package/dist/theme.js +43 -0
  381. package/dist/theme.js.map +1 -0
  382. package/dist/tokens.css +542 -0
  383. package/dist/types.js +0 -0
  384. package/{ui → dist/ui}/action-tray.d.ts +1 -1
  385. package/{ui → dist/ui}/action-tray.js +20 -19
  386. package/dist/ui/action-tray.js.map +1 -0
  387. package/dist/ui/autocomplete.d.ts +58 -0
  388. package/dist/ui/autocomplete.js +194 -0
  389. package/dist/ui/autocomplete.js.map +1 -0
  390. package/{ui → dist/ui}/button.d.ts +3 -3
  391. package/{ui → dist/ui}/button.js +8 -11
  392. package/dist/ui/button.js.map +1 -0
  393. package/{ui → dist/ui}/choice-switch.js +1 -1
  394. package/dist/ui/choice-switch.js.map +1 -0
  395. package/{ui → dist/ui}/controls.js +51 -39
  396. package/dist/ui/controls.js.map +1 -0
  397. package/{ui → dist/ui}/display.d.ts +10 -3
  398. package/{ui → dist/ui}/display.js +57 -46
  399. package/dist/ui/display.js.map +1 -0
  400. package/{ui → dist/ui}/expanded-editor-modal.d.ts +2 -2
  401. package/{ui → dist/ui}/expanded-editor-modal.js +6 -6
  402. package/dist/ui/expanded-editor-modal.js.map +1 -0
  403. package/{ui → dist/ui}/field-context.js +1 -1
  404. package/dist/ui/field-context.js.map +1 -0
  405. package/{ui → dist/ui}/floating-panel.d.ts +1 -1
  406. package/{ui → dist/ui}/floating-panel.js +28 -12
  407. package/dist/ui/floating-panel.js.map +1 -0
  408. package/{ui → dist/ui}/index.d.ts +4 -0
  409. package/dist/ui/index.js +18 -0
  410. package/{ui → dist/ui}/input.d.ts +1 -1
  411. package/{ui → dist/ui}/input.js +9 -9
  412. package/dist/ui/input.js.map +1 -0
  413. package/{ui → dist/ui}/mode-bar.js +3 -3
  414. package/dist/ui/mode-bar.js.map +1 -0
  415. package/{ui → dist/ui}/overlay.d.ts +77 -5
  416. package/dist/ui/overlay.js +697 -0
  417. package/dist/ui/overlay.js.map +1 -0
  418. package/{ui → dist/ui}/path-crumbs.js +37 -3
  419. package/dist/ui/path-crumbs.js.map +1 -0
  420. package/{ui → dist/ui}/presence.js +2 -2
  421. package/dist/ui/presence.js.map +1 -0
  422. package/{ui → dist/ui}/select.js +89 -87
  423. package/dist/ui/select.js.map +1 -0
  424. package/{ui → dist/ui}/shortcut-hint.js +1 -1
  425. package/dist/ui/shortcut-hint.js.map +1 -0
  426. package/dist/ui/spinner.d.ts +24 -0
  427. package/dist/ui/spinner.js +42 -0
  428. package/dist/ui/spinner.js.map +1 -0
  429. package/dist/ui/split-button.d.ts +32 -0
  430. package/dist/ui/split-button.js +60 -0
  431. package/dist/ui/split-button.js.map +1 -0
  432. package/{ui → dist/ui}/surfaces.js +1 -1
  433. package/dist/ui/surfaces.js.map +1 -0
  434. package/dist/ui/tab.d.ts +38 -0
  435. package/dist/ui/tab.js +87 -0
  436. package/dist/ui/tab.js.map +1 -0
  437. package/dist/ui/toast.d.ts +20 -0
  438. package/dist/ui/toast.js +115 -0
  439. package/dist/ui/toast.js.map +1 -0
  440. package/{ui → dist/ui}/tooltip-root.d.ts +4 -3
  441. package/{ui → dist/ui}/tooltip-root.js +9 -8
  442. package/dist/ui/tooltip-root.js.map +1 -0
  443. package/{ui → dist/ui}/variants.js +1 -1
  444. package/dist/ui/variants.js.map +1 -0
  445. package/package.json +83 -23
  446. package/adapters/icons.js.map +0 -1
  447. package/adapters/lossy.js +0 -233
  448. package/adapters/lossy.js.map +0 -1
  449. package/adapters/prod-types.js.map +0 -1
  450. package/adapters/schema.js.map +0 -1
  451. package/adapters/values.js.map +0 -1
  452. package/brand/logo.js +0 -9
  453. package/brand/logo.js.map +0 -1
  454. package/context.js.map +0 -1
  455. package/controls/button.js.map +0 -1
  456. package/controls/c1.js.map +0 -1
  457. package/controls/c2.js.map +0 -1
  458. package/controls/choice.js.map +0 -1
  459. package/controls/code-register.js.map +0 -1
  460. package/controls/code.js.map +0 -1
  461. package/controls/color.js.map +0 -1
  462. package/controls/date-register.js.map +0 -1
  463. package/controls/date-zone.js.map +0 -1
  464. package/controls/date.js.map +0 -1
  465. package/controls/form-picker-register.d.ts +0 -1
  466. package/controls/form-picker-register.js.map +0 -1
  467. package/controls/form-picker.js.map +0 -1
  468. package/controls/icon-register.js.map +0 -1
  469. package/controls/icon.js.map +0 -1
  470. package/controls/index.js.map +0 -1
  471. package/controls/json-register.js.map +0 -1
  472. package/controls/json.js.map +0 -1
  473. package/controls/link.js.map +0 -1
  474. package/controls/location-register.js.map +0 -1
  475. package/controls/location.js.map +0 -1
  476. package/controls/media-register.js.map +0 -1
  477. package/controls/media.js.map +0 -1
  478. package/controls/number.js.map +0 -1
  479. package/controls/reference-register.js.map +0 -1
  480. package/controls/reference.js.map +0 -1
  481. package/controls/rich-text/blocks.d.ts +0 -28
  482. package/controls/rich-text/blocks.js.map +0 -1
  483. package/controls/rich-text/catalog.js.map +0 -1
  484. package/controls/rich-text/codec.js.map +0 -1
  485. package/controls/rich-text/component-card.js.map +0 -1
  486. package/controls/rich-text/control.js.map +0 -1
  487. package/controls/rich-text/dom.js.map +0 -1
  488. package/controls/rich-text/editor.js.map +0 -1
  489. package/controls/rich-text/floating.js.map +0 -1
  490. package/controls/rich-text/index.js.map +0 -1
  491. package/controls/rich-text/link-form.js +0 -111
  492. package/controls/rich-text/link-form.js.map +0 -1
  493. package/controls/rich-text/markdown.js.map +0 -1
  494. package/controls/rich-text/ops.js.map +0 -1
  495. package/controls/rich-text/toolbar.js.map +0 -1
  496. package/controls/scale.js.map +0 -1
  497. package/controls/slot-register.d.ts +0 -1
  498. package/controls/slot-register.js.map +0 -1
  499. package/controls/slot-services.js +0 -38
  500. package/controls/slot-services.js.map +0 -1
  501. package/controls/slot.js.map +0 -1
  502. package/controls/table/index.js.map +0 -1
  503. package/controls/table/prod.js.map +0 -1
  504. package/controls/table/refs.js.map +0 -1
  505. package/controls/table/stored.js.map +0 -1
  506. package/controls/table/table-editor.js.map +0 -1
  507. package/controls/table/table-link.js.map +0 -1
  508. package/controls/table/table.js.map +0 -1
  509. package/controls/text.js.map +0 -1
  510. package/engine/array.js.map +0 -1
  511. package/engine/bits.js.map +0 -1
  512. package/engine/breadcrumb.js.map +0 -1
  513. package/engine/expand.js.map +0 -1
  514. package/engine/field-list.js.map +0 -1
  515. package/engine/field-shell.js.map +0 -1
  516. package/engine/frame.js.map +0 -1
  517. package/engine/group-summary.js.map +0 -1
  518. package/engine/grouping.js.map +0 -1
  519. package/engine/item-list.js.map +0 -1
  520. package/engine/kit-field.js.map +0 -1
  521. package/engine/schema-form.js.map +0 -1
  522. package/engine/slot.js.map +0 -1
  523. package/index.js +0 -55
  524. package/index.js.map +0 -1
  525. package/lib/cn.js.map +0 -1
  526. package/lib/columns.js.map +0 -1
  527. package/lib/frames.js.map +0 -1
  528. package/lib/icons.js.map +0 -1
  529. package/lib/path.js.map +0 -1
  530. package/lib/schema.js.map +0 -1
  531. package/lib/utils.js.map +0 -1
  532. package/lib/validate.js.map +0 -1
  533. package/schema/adapters.js.map +0 -1
  534. package/schema/help.js.map +0 -1
  535. package/schema/scale.js.map +0 -1
  536. package/schema/sources.js.map +0 -1
  537. package/schema/table.js.map +0 -1
  538. package/schema/types.js.map +0 -1
  539. package/ui/action-tray.js.map +0 -1
  540. package/ui/button.js.map +0 -1
  541. package/ui/choice-switch.js.map +0 -1
  542. package/ui/controls.js.map +0 -1
  543. package/ui/display.js.map +0 -1
  544. package/ui/expanded-editor-modal.js.map +0 -1
  545. package/ui/field-context.js.map +0 -1
  546. package/ui/floating-panel.js.map +0 -1
  547. package/ui/index.js +0 -13
  548. package/ui/input.js.map +0 -1
  549. package/ui/mode-bar.js.map +0 -1
  550. package/ui/overlay.js +0 -378
  551. package/ui/overlay.js.map +0 -1
  552. package/ui/path-crumbs.js.map +0 -1
  553. package/ui/presence.js.map +0 -1
  554. package/ui/select.js.map +0 -1
  555. package/ui/shortcut-hint.js.map +0 -1
  556. package/ui/surfaces.js.map +0 -1
  557. package/ui/tooltip-root.js.map +0 -1
  558. package/ui/variants.js.map +0 -1
  559. /package/{_virtual → dist/_virtual}/_rolldown/runtime.js +0 -0
  560. /package/{adapters → dist/adapters}/icons.d.ts +0 -0
  561. /package/{brand → dist/brand}/logo.d.ts +0 -0
  562. /package/{controls → dist/controls}/c1.d.ts +0 -0
  563. /package/{controls → dist/controls}/c2.d.ts +0 -0
  564. /package/{controls → dist/controls}/code-register.d.ts +0 -0
  565. /package/{controls → dist/controls}/code.d.ts +0 -0
  566. /package/{controls → dist/controls}/color.d.ts +0 -0
  567. /package/{controls → dist/controls}/date-register.d.ts +0 -0
  568. /package/{controls → dist/controls}/date-zone.d.ts +0 -0
  569. /package/{controls → dist/controls}/date.d.ts +0 -0
  570. /package/{controls → dist/controls}/form-picker.d.ts +0 -0
  571. /package/{controls → dist/controls}/icon-register.d.ts +0 -0
  572. /package/{controls → dist/controls}/json-register.d.ts +0 -0
  573. /package/{controls → dist/controls}/json.d.ts +0 -0
  574. /package/{controls → dist/controls}/link.d.ts +0 -0
  575. /package/{controls → dist/controls}/location-register.d.ts +0 -0
  576. /package/{controls → dist/controls}/location.d.ts +0 -0
  577. /package/{controls → dist/controls}/media-register.d.ts +0 -0
  578. /package/{controls → dist/controls}/number.d.ts +0 -0
  579. /package/{controls → dist/controls}/reference-register.d.ts +0 -0
  580. /package/{controls → dist/controls}/rich-text/index.d.ts +0 -0
  581. /package/{controls → dist/controls}/rich-text/markdown.d.ts +0 -0
  582. /package/{controls → dist/controls}/rich-text/ops.d.ts +0 -0
  583. /package/{controls → dist/controls}/scale.d.ts +0 -0
  584. /package/{controls → dist/controls}/slot.d.ts +0 -0
  585. /package/{controls → dist/controls}/table/index.d.ts +0 -0
  586. /package/{controls → dist/controls}/table/prod.d.ts +0 -0
  587. /package/{controls → dist/controls}/table/refs.d.ts +0 -0
  588. /package/{controls → dist/controls}/table/stored.d.ts +0 -0
  589. /package/{controls → dist/controls}/table/table-editor.d.ts +0 -0
  590. /package/{controls → dist/controls}/table/table-link.d.ts +0 -0
  591. /package/{controls → dist/controls}/table/table.d.ts +0 -0
  592. /package/{engine → dist/engine}/array.d.ts +0 -0
  593. /package/{engine → dist/engine}/bits.d.ts +0 -0
  594. /package/{engine → dist/engine}/field-list.d.ts +0 -0
  595. /package/{engine → dist/engine}/field-shell.d.ts +0 -0
  596. /package/{engine → dist/engine}/kit-field.d.ts +0 -0
  597. /package/{engine → dist/engine}/slot.d.ts +0 -0
  598. /package/{index.d.ts → dist/index.d.ts} +0 -0
  599. /package/{lib → dist/lib}/cn.d.ts +0 -0
  600. /package/{lib → dist/lib}/columns.d.ts +0 -0
  601. /package/{lib → dist/lib}/frames.d.ts +0 -0
  602. /package/{lib → dist/lib}/icons.d.ts +0 -0
  603. /package/{lib → dist/lib}/path.d.ts +0 -0
  604. /package/{lib → dist/lib}/utils.d.ts +0 -0
  605. /package/{schema → dist/schema}/adapters.d.ts +0 -0
  606. /package/{schema → dist/schema}/scale.d.ts +0 -0
  607. /package/{schema → dist/schema}/sources.d.ts +0 -0
  608. /package/{schema → dist/schema}/table.d.ts +0 -0
  609. /package/{types.d.ts → dist/types.d.ts} +0 -0
  610. /package/{ui → dist/ui}/choice-switch.d.ts +0 -0
  611. /package/{ui → dist/ui}/controls.d.ts +0 -0
  612. /package/{ui → dist/ui}/field-context.d.ts +0 -0
  613. /package/{ui → dist/ui}/mode-bar.d.ts +0 -0
  614. /package/{ui → dist/ui}/path-crumbs.d.ts +0 -0
  615. /package/{ui → dist/ui}/presence.d.ts +0 -0
  616. /package/{ui → dist/ui}/select.d.ts +0 -0
  617. /package/{ui → dist/ui}/shortcut-hint.d.ts +0 -0
  618. /package/{ui → dist/ui}/surfaces.d.ts +0 -0
  619. /package/{ui → dist/ui}/variants.d.ts +0 -0
@@ -0,0 +1,355 @@
1
+ /**
2
+ * THE FACET TABLE (kit-facet-table.v3.md, G0b closed 2026-10-23): every V2 schema facet the adapter can name, with the
3
+ * ONE prod key per lane that stores it. `satisfies Record<V2Facet, FacetRow>` makes it total: a feature added to
4
+ * FEATURES or CATALOG (adapters/lossy.ts) without a row here fails tsc.
5
+ *
6
+ * Carriers are `value` (an explicit stored key) and `excluded` (owner-signed). A `bound` names the one shared constant
7
+ * the V2 authoring rule and the prod zod rule both read: a value inside it is carried, one outside it is refused with
8
+ * the facet's name. `status` is "landed" when the adapter carries the facet today, else the step that lands it.
9
+ * Prod-only keys V2 has no concept of are not facets: OUT_OF_DOMAIN, preserved on every write (PBT P8).
10
+ */
11
+ import type { CatalogFeature, LossyFeature } from "../adapters/lossy";
12
+ /** Prod keys with no V2 concept (facet table §B.1): never written from V2, carried through a write from the stored definition. */
13
+ export declare const OUT_OF_DOMAIN: {
14
+ readonly "prop target": "a prop's binding: props[].target (+ stale, origin)";
15
+ readonly "host config": "HOST_CONFIG_KEYS + SERVER_CONFIG_KEYS in a field's or prop's config (adapters/lossy.ts)";
16
+ };
17
+ export type OutOfDomainFeature = keyof typeof OUT_OF_DOMAIN;
18
+ export type V2Facet = Exclude<LossyFeature | CatalogFeature, OutOfDomainFeature>;
19
+ export interface FacetRow {
20
+ /** facet table v3: an A row number, or the B group */
21
+ row: string;
22
+ carrier: "value" | "excluded";
23
+ /** the prod key(s) per lane, one per shape the facet takes; [] = the facet does not arise in that lane */
24
+ props: readonly string[];
25
+ fields: readonly string[];
26
+ /** the shared constant: inside it the facet is carried, outside it the facet is refused by name */
27
+ bound?: string;
28
+ status: "landed" | `pending:${string}`;
29
+ /** a facet stored at another facet's key (kind:page is the shape facet's value "page") */
30
+ foldedInto?: V2Facet;
31
+ }
32
+ export declare const FACETS: {
33
+ readonly ai: {
34
+ readonly row: "A1";
35
+ readonly carrier: "value";
36
+ readonly props: readonly ["props[].ai"];
37
+ readonly fields: readonly ["fields[].ai"];
38
+ readonly status: "pending:C3";
39
+ };
40
+ readonly category: {
41
+ readonly row: "A2";
42
+ readonly carrier: "value";
43
+ readonly props: readonly ["components.category"];
44
+ readonly fields: readonly ["content_models.v2.category"];
45
+ readonly bound: "CATEGORY_ORDER";
46
+ readonly status: "pending:C3+C5";
47
+ };
48
+ readonly variants: {
49
+ readonly row: "A3";
50
+ readonly carrier: "value";
51
+ readonly props: readonly ["component_variant_groups (+ components.variant_group_id, variant_input_mappings; order/icon/description → component_variant_groups.v2.variants)"];
52
+ readonly fields: readonly ["fields[_variant] select + showIf {field:_variant}; content_models.v2.variants{slug → {icon, description}}"];
53
+ readonly status: "pending:C4";
54
+ };
55
+ readonly "block icon": {
56
+ readonly row: "A4";
57
+ readonly carrier: "value";
58
+ readonly props: readonly ["components.icon"];
59
+ readonly fields: readonly ["content_models.icon"];
60
+ readonly bound: "DOCK_ICON_NAMES";
61
+ readonly status: "pending:C1-model-settings";
62
+ };
63
+ readonly "document preview": {
64
+ readonly row: "A5";
65
+ readonly carrier: "value";
66
+ readonly props: readonly ["components.preview"];
67
+ readonly fields: readonly ["content_models.list_preview"];
68
+ readonly status: "pending:C3";
69
+ };
70
+ readonly "document preview path": {
71
+ readonly row: "B catalog";
72
+ readonly carrier: "value";
73
+ readonly props: readonly ["components.preview (path rule widened)"];
74
+ readonly fields: readonly [];
75
+ readonly status: "pending:C3";
76
+ };
77
+ readonly "kind:global": {
78
+ readonly row: "A6";
79
+ readonly carrier: "value";
80
+ readonly props: readonly ["components.v2.shape"];
81
+ readonly fields: readonly ["content_models.v2.shape"];
82
+ readonly status: "pending:C5";
83
+ };
84
+ readonly "kind:entry (props)": {
85
+ readonly row: "A6";
86
+ readonly carrier: "value";
87
+ readonly props: readonly ["components.v2.shape"];
88
+ readonly fields: readonly [];
89
+ readonly status: "pending:C5";
90
+ readonly foldedInto: "kind:global";
91
+ };
92
+ readonly "kind:block (fields)": {
93
+ readonly row: "A6";
94
+ readonly carrier: "value";
95
+ readonly props: readonly [];
96
+ readonly fields: readonly ["content_models.v2.shape"];
97
+ readonly status: "pending:C5";
98
+ readonly foldedInto: "kind:global";
99
+ };
100
+ readonly "kind:page": {
101
+ readonly row: "A22";
102
+ readonly carrier: "value";
103
+ readonly props: readonly [];
104
+ readonly fields: readonly ["content_models.v2.shape"];
105
+ readonly status: "pending:C5";
106
+ readonly foldedInto: "kind:global";
107
+ };
108
+ readonly "kind:object": {
109
+ readonly row: "A6";
110
+ readonly carrier: "value";
111
+ readonly props: readonly [];
112
+ readonly fields: readonly ["content_models.v2.shape"];
113
+ readonly status: "pending:C5";
114
+ readonly foldedInto: "kind:global";
115
+ };
116
+ readonly "groups>3": {
117
+ readonly row: "A7";
118
+ readonly carrier: "value";
119
+ readonly props: readonly ["components.tabs"];
120
+ readonly fields: readonly ["content_models.fieldsets[kind:tab]"];
121
+ readonly bound: "TAB_MAX";
122
+ readonly status: "pending:C3+C8";
123
+ };
124
+ readonly "item openMode": {
125
+ readonly row: "A8";
126
+ readonly carrier: "value";
127
+ readonly props: readonly ["config.item.openMode (object item)", "config.itemTypes[i].openMode (polymorphic)"];
128
+ readonly fields: readonly ["ui.blocks[slug].openMode (modular)"];
129
+ readonly status: "pending:C3";
130
+ };
131
+ readonly "reference target": {
132
+ readonly row: "A9";
133
+ readonly carrier: "value";
134
+ readonly props: readonly ["config.targets"];
135
+ readonly fields: readonly ["config.targets"];
136
+ readonly bound: "REF_TARGET_KINDS";
137
+ readonly status: "landed";
138
+ };
139
+ readonly "type:slot": {
140
+ readonly row: "A10";
141
+ readonly carrier: "value";
142
+ readonly props: readonly ["props[] type slot (config.allow)"];
143
+ readonly fields: readonly ["fields[] type slot (config.blockSlugs)"];
144
+ readonly bound: "SLOT_BLOCK_SLUGS_REQUIRED";
145
+ readonly status: "landed";
146
+ };
147
+ readonly "block model field": {
148
+ readonly row: "A11";
149
+ readonly carrier: "value";
150
+ readonly props: readonly [];
151
+ readonly fields: readonly ["kind:'block' model fields[]"];
152
+ readonly bound: "BLOCK_FIELD_TYPES";
153
+ readonly status: "pending:G7";
154
+ };
155
+ readonly "shopify reference": {
156
+ readonly row: "A12";
157
+ readonly carrier: "excluded";
158
+ readonly props: readonly [];
159
+ readonly fields: readonly [];
160
+ readonly status: "landed";
161
+ };
162
+ readonly "type:table": {
163
+ readonly row: "A13";
164
+ readonly carrier: "value";
165
+ readonly props: readonly ["props[] type table (config.mode data)"];
166
+ readonly fields: readonly ["fields[] type table"];
167
+ readonly status: "landed";
168
+ };
169
+ readonly "group (nested)": {
170
+ readonly row: "A14";
171
+ readonly carrier: "value";
172
+ readonly props: readonly ["ui.tab {id}"];
173
+ readonly fields: readonly ["ui.tab {id} (nested field)"];
174
+ readonly bound: "TAB_MAX";
175
+ readonly status: "landed";
176
+ };
177
+ readonly "fieldset collision": {
178
+ readonly row: "A15";
179
+ readonly carrier: "value";
180
+ readonly props: readonly ["ui.group {id}"];
181
+ readonly fields: readonly ["fieldsetId"];
182
+ readonly bound: "TAB_FIELDSET_ID_UNIQUE";
183
+ readonly status: "landed";
184
+ };
185
+ readonly "segmented fallback": {
186
+ readonly row: "A16";
187
+ readonly carrier: "value";
188
+ readonly props: readonly ["ui.control segmented"];
189
+ readonly fields: readonly ["ui.control segmented"];
190
+ readonly bound: "SEGMENTED_MAX";
191
+ readonly status: "pending:C3";
192
+ };
193
+ readonly "fieldset (derived)": {
194
+ readonly row: "A17";
195
+ readonly carrier: "value";
196
+ readonly props: readonly ["ui.group (prop group)"];
197
+ readonly fields: readonly ["content_models.fieldsets"];
198
+ readonly status: "landed";
199
+ };
200
+ readonly "itemNoun (derived)": {
201
+ readonly row: "A18";
202
+ readonly carrier: "value";
203
+ readonly props: readonly ["ui.itemLabel"];
204
+ readonly fields: readonly ["ui.itemTitle"];
205
+ readonly status: "landed";
206
+ };
207
+ readonly "reference filter": {
208
+ readonly row: "A19";
209
+ readonly carrier: "value";
210
+ readonly props: readonly ["config.filter"];
211
+ readonly fields: readonly ["config.filter"];
212
+ readonly bound: "REFERENCE_FILTER_MAX";
213
+ readonly status: "landed";
214
+ };
215
+ readonly condition: {
216
+ readonly row: "A20";
217
+ readonly carrier: "value";
218
+ readonly props: readonly ["showIf (+ scope)"];
219
+ readonly fields: readonly ["showIf (+ scope)"];
220
+ readonly bound: "SHOW_IF_SCOPES";
221
+ readonly status: "pending:C3";
222
+ };
223
+ readonly openMode: {
224
+ readonly row: "A21";
225
+ readonly carrier: "value";
226
+ readonly props: readonly ["props[].openMode"];
227
+ readonly fields: readonly ["fields[].openMode"];
228
+ readonly bound: "OPEN_MODE_TYPES";
229
+ readonly status: "pending:C9";
230
+ };
231
+ readonly "slot allow": {
232
+ readonly row: "A23";
233
+ readonly carrier: "value";
234
+ readonly props: readonly ["config.allow"];
235
+ readonly fields: readonly ["config.blockSlugs"];
236
+ readonly bound: "SLOT_ALLOW";
237
+ readonly status: "landed";
238
+ };
239
+ readonly "type:polymorphic-array": {
240
+ readonly row: "B structural";
241
+ readonly carrier: "value";
242
+ readonly props: readonly ["props[] type table (config.mode types)"];
243
+ readonly fields: readonly ["fields[] type modular"];
244
+ readonly status: "pending:C3";
245
+ };
246
+ readonly "item chrome (types)": {
247
+ readonly row: "B structural";
248
+ readonly carrier: "value";
249
+ readonly props: readonly ["config.itemTypes[i] {icon, preview}"];
250
+ readonly fields: readonly ["ui.blocks[slug] {icon, preview}"];
251
+ readonly status: "pending:C3";
252
+ };
253
+ readonly "type:primitive-array": {
254
+ readonly row: "B decided";
255
+ readonly carrier: "value";
256
+ readonly props: readonly ["config.itemType (widened)"];
257
+ readonly fields: readonly ["config.itemType (widened)"];
258
+ readonly status: "pending:C3";
259
+ };
260
+ readonly "depth>10": {
261
+ readonly row: "B decided";
262
+ readonly carrier: "value";
263
+ readonly props: readonly ["nesting"];
264
+ readonly fields: readonly ["nesting"];
265
+ readonly bound: "DEPTH_MAX";
266
+ readonly status: "landed";
267
+ };
268
+ readonly slotSettings: {
269
+ readonly row: "B decided (BUILD)";
270
+ readonly carrier: "value";
271
+ readonly props: readonly ["config.settings: FieldDef[]"];
272
+ readonly fields: readonly ["config.settings: FieldDef[]"];
273
+ readonly bound: "SLOT_SETTINGS_MAX";
274
+ readonly status: "pending:C3";
275
+ };
276
+ readonly "block placement": {
277
+ readonly row: "B catalog";
278
+ readonly carrier: "value";
279
+ readonly props: readonly ["components.v2.placement"];
280
+ readonly fields: readonly ["content_models.v2.placement"];
281
+ readonly status: "pending:C5";
282
+ };
283
+ readonly "seeded instance": {
284
+ readonly row: "B catalog";
285
+ readonly carrier: "excluded";
286
+ readonly props: readonly [];
287
+ readonly fields: readonly [];
288
+ readonly status: "landed";
289
+ };
290
+ readonly "not applicable (props)": {
291
+ readonly row: "B catalog";
292
+ readonly carrier: "excluded";
293
+ readonly props: readonly [];
294
+ readonly fields: readonly [];
295
+ readonly status: "landed";
296
+ };
297
+ readonly "type name": FacetRow;
298
+ readonly "group name>40": FacetRow;
299
+ readonly "group title": FacetRow;
300
+ readonly "group default": FacetRow;
301
+ readonly "group icon": FacetRow;
302
+ readonly "group name collision": FacetRow;
303
+ readonly "prop tab limit": FacetRow;
304
+ readonly "fieldset spans groups": FacetRow;
305
+ readonly "fieldset (props)": FacetRow;
306
+ readonly "fieldset name>limit": FacetRow;
307
+ readonly "duplicate name": FacetRow;
308
+ readonly "reserved name": {
309
+ readonly row: "B corpus-fix";
310
+ readonly carrier: "value";
311
+ readonly props: readonly [];
312
+ readonly fields: readonly ["fields[].key"];
313
+ readonly bound: "KEY_RESERVED + KEY_FORMAT";
314
+ readonly status: "landed";
315
+ };
316
+ readonly rows: FacetRow;
317
+ readonly synced: FacetRow;
318
+ readonly valueShape: FacetRow;
319
+ readonly "default value": FacetRow;
320
+ readonly icon: FacetRow;
321
+ readonly layout: FacetRow;
322
+ readonly "help>limit": FacetRow;
323
+ readonly "option icon": FacetRow;
324
+ readonly "option description": FacetRow;
325
+ readonly access: FacetRow;
326
+ readonly timezone: FacetRow;
327
+ readonly "reference order": FacetRow;
328
+ readonly "numeric unit": FacetRow;
329
+ readonly "rating bounds": FacetRow;
330
+ readonly "scale rules": FacetRow;
331
+ readonly "validation.patternMessage": FacetRow;
332
+ readonly "validation.pattern": FacetRow;
333
+ readonly "validation.length": FacetRow;
334
+ readonly "validation.items": FacetRow;
335
+ readonly "validation.unique": FacetRow;
336
+ readonly "validation.recommendedMax": FacetRow;
337
+ readonly "item identity": FacetRow;
338
+ readonly "item settings": FacetRow;
339
+ readonly itemNoun: FacetRow;
340
+ readonly "item icon": FacetRow;
341
+ readonly "preview icon": FacetRow;
342
+ readonly "preview path": FacetRow;
343
+ readonly "unsupported key": FacetRow;
344
+ readonly "richtext features": {
345
+ readonly row: "B RT0";
346
+ readonly carrier: "value";
347
+ readonly props: readonly ["config.features"];
348
+ readonly fields: readonly ["config.features"];
349
+ readonly bound: "RICHTEXT_FEATURES";
350
+ readonly status: "landed";
351
+ };
352
+ };
353
+ export declare const facetOf: (feature: string) => FacetRow | undefined;
354
+ /** The owner-signed exclusions: what may be lost by design (shopify until its pipeline, and two deliberate backend rules). */
355
+ export declare const EXCLUDED: readonly V2Facet[];
@@ -0,0 +1,342 @@
1
+ //#region src/core/facets.ts
2
+ /** Prod keys with no V2 concept (facet table §B.1): never written from V2, carried through a write from the stored definition. */
3
+ var OUT_OF_DOMAIN = {
4
+ "prop target": "a prop's binding: props[].target (+ stale, origin)",
5
+ "host config": "HOST_CONFIG_KEYS + SERVER_CONFIG_KEYS in a field's or prop's config (adapters/lossy.ts)"
6
+ };
7
+ var corpusFix = (props, fields, bound) => ({
8
+ row: "B corpus-fix",
9
+ carrier: "value",
10
+ props: [props],
11
+ fields: [fields],
12
+ bound,
13
+ status: "landed"
14
+ });
15
+ var FACETS = {
16
+ ai: {
17
+ row: "A1",
18
+ carrier: "value",
19
+ props: ["props[].ai"],
20
+ fields: ["fields[].ai"],
21
+ status: "pending:C3"
22
+ },
23
+ category: {
24
+ row: "A2",
25
+ carrier: "value",
26
+ props: ["components.category"],
27
+ fields: ["content_models.v2.category"],
28
+ bound: "CATEGORY_ORDER",
29
+ status: "pending:C3+C5"
30
+ },
31
+ variants: {
32
+ row: "A3",
33
+ carrier: "value",
34
+ props: ["component_variant_groups (+ components.variant_group_id, variant_input_mappings; order/icon/description → component_variant_groups.v2.variants)"],
35
+ fields: ["fields[_variant] select + showIf {field:_variant}; content_models.v2.variants{slug → {icon, description}}"],
36
+ status: "pending:C4"
37
+ },
38
+ "block icon": {
39
+ row: "A4",
40
+ carrier: "value",
41
+ props: ["components.icon"],
42
+ fields: ["content_models.icon"],
43
+ bound: "DOCK_ICON_NAMES",
44
+ status: "pending:C1-model-settings"
45
+ },
46
+ "document preview": {
47
+ row: "A5",
48
+ carrier: "value",
49
+ props: ["components.preview"],
50
+ fields: ["content_models.list_preview"],
51
+ status: "pending:C3"
52
+ },
53
+ "document preview path": {
54
+ row: "B catalog",
55
+ carrier: "value",
56
+ props: ["components.preview (path rule widened)"],
57
+ fields: [],
58
+ status: "pending:C3"
59
+ },
60
+ "kind:global": {
61
+ row: "A6",
62
+ carrier: "value",
63
+ props: ["components.v2.shape"],
64
+ fields: ["content_models.v2.shape"],
65
+ status: "pending:C5"
66
+ },
67
+ "kind:entry (props)": {
68
+ row: "A6",
69
+ carrier: "value",
70
+ props: ["components.v2.shape"],
71
+ fields: [],
72
+ status: "pending:C5",
73
+ foldedInto: "kind:global"
74
+ },
75
+ "kind:block (fields)": {
76
+ row: "A6",
77
+ carrier: "value",
78
+ props: [],
79
+ fields: ["content_models.v2.shape"],
80
+ status: "pending:C5",
81
+ foldedInto: "kind:global"
82
+ },
83
+ "kind:page": {
84
+ row: "A22",
85
+ carrier: "value",
86
+ props: [],
87
+ fields: ["content_models.v2.shape"],
88
+ status: "pending:C5",
89
+ foldedInto: "kind:global"
90
+ },
91
+ "kind:object": {
92
+ row: "A6",
93
+ carrier: "value",
94
+ props: [],
95
+ fields: ["content_models.v2.shape"],
96
+ status: "pending:C5",
97
+ foldedInto: "kind:global"
98
+ },
99
+ "groups>3": {
100
+ row: "A7",
101
+ carrier: "value",
102
+ props: ["components.tabs"],
103
+ fields: ["content_models.fieldsets[kind:tab]"],
104
+ bound: "TAB_MAX",
105
+ status: "pending:C3+C8"
106
+ },
107
+ "item openMode": {
108
+ row: "A8",
109
+ carrier: "value",
110
+ props: ["config.item.openMode (object item)", "config.itemTypes[i].openMode (polymorphic)"],
111
+ fields: ["ui.blocks[slug].openMode (modular)"],
112
+ status: "pending:C3"
113
+ },
114
+ "reference target": {
115
+ row: "A9",
116
+ carrier: "value",
117
+ props: ["config.targets"],
118
+ fields: ["config.targets"],
119
+ bound: "REF_TARGET_KINDS",
120
+ status: "landed"
121
+ },
122
+ "type:slot": {
123
+ row: "A10",
124
+ carrier: "value",
125
+ props: ["props[] type slot (config.allow)"],
126
+ fields: ["fields[] type slot (config.blockSlugs)"],
127
+ bound: "SLOT_BLOCK_SLUGS_REQUIRED",
128
+ status: "landed"
129
+ },
130
+ "block model field": {
131
+ row: "A11",
132
+ carrier: "value",
133
+ props: [],
134
+ fields: ["kind:'block' model fields[]"],
135
+ bound: "BLOCK_FIELD_TYPES",
136
+ status: "pending:G7"
137
+ },
138
+ "shopify reference": {
139
+ row: "A12",
140
+ carrier: "excluded",
141
+ props: [],
142
+ fields: [],
143
+ status: "landed"
144
+ },
145
+ "type:table": {
146
+ row: "A13",
147
+ carrier: "value",
148
+ props: ["props[] type table (config.mode data)"],
149
+ fields: ["fields[] type table"],
150
+ status: "landed"
151
+ },
152
+ "group (nested)": {
153
+ row: "A14",
154
+ carrier: "value",
155
+ props: ["ui.tab {id}"],
156
+ fields: ["ui.tab {id} (nested field)"],
157
+ bound: "TAB_MAX",
158
+ status: "landed"
159
+ },
160
+ "fieldset collision": {
161
+ row: "A15",
162
+ carrier: "value",
163
+ props: ["ui.group {id}"],
164
+ fields: ["fieldsetId"],
165
+ bound: "TAB_FIELDSET_ID_UNIQUE",
166
+ status: "landed"
167
+ },
168
+ "segmented fallback": {
169
+ row: "A16",
170
+ carrier: "value",
171
+ props: ["ui.control segmented"],
172
+ fields: ["ui.control segmented"],
173
+ bound: "SEGMENTED_MAX",
174
+ status: "pending:C3"
175
+ },
176
+ "fieldset (derived)": {
177
+ row: "A17",
178
+ carrier: "value",
179
+ props: ["ui.group (prop group)"],
180
+ fields: ["content_models.fieldsets"],
181
+ status: "landed"
182
+ },
183
+ "itemNoun (derived)": {
184
+ row: "A18",
185
+ carrier: "value",
186
+ props: ["ui.itemLabel"],
187
+ fields: ["ui.itemTitle"],
188
+ status: "landed"
189
+ },
190
+ "reference filter": {
191
+ row: "A19",
192
+ carrier: "value",
193
+ props: ["config.filter"],
194
+ fields: ["config.filter"],
195
+ bound: "REFERENCE_FILTER_MAX",
196
+ status: "landed"
197
+ },
198
+ condition: {
199
+ row: "A20",
200
+ carrier: "value",
201
+ props: ["showIf (+ scope)"],
202
+ fields: ["showIf (+ scope)"],
203
+ bound: "SHOW_IF_SCOPES",
204
+ status: "pending:C3"
205
+ },
206
+ openMode: {
207
+ row: "A21",
208
+ carrier: "value",
209
+ props: ["props[].openMode"],
210
+ fields: ["fields[].openMode"],
211
+ bound: "OPEN_MODE_TYPES",
212
+ status: "pending:C9"
213
+ },
214
+ "slot allow": {
215
+ row: "A23",
216
+ carrier: "value",
217
+ props: ["config.allow"],
218
+ fields: ["config.blockSlugs"],
219
+ bound: "SLOT_ALLOW",
220
+ status: "landed"
221
+ },
222
+ "type:polymorphic-array": {
223
+ row: "B structural",
224
+ carrier: "value",
225
+ props: ["props[] type table (config.mode types)"],
226
+ fields: ["fields[] type modular"],
227
+ status: "pending:C3"
228
+ },
229
+ "item chrome (types)": {
230
+ row: "B structural",
231
+ carrier: "value",
232
+ props: ["config.itemTypes[i] {icon, preview}"],
233
+ fields: ["ui.blocks[slug] {icon, preview}"],
234
+ status: "pending:C3"
235
+ },
236
+ "type:primitive-array": {
237
+ row: "B decided",
238
+ carrier: "value",
239
+ props: ["config.itemType (widened)"],
240
+ fields: ["config.itemType (widened)"],
241
+ status: "pending:C3"
242
+ },
243
+ "depth>10": {
244
+ row: "B decided",
245
+ carrier: "value",
246
+ props: ["nesting"],
247
+ fields: ["nesting"],
248
+ bound: "DEPTH_MAX",
249
+ status: "landed"
250
+ },
251
+ slotSettings: {
252
+ row: "B decided (BUILD)",
253
+ carrier: "value",
254
+ props: ["config.settings: FieldDef[]"],
255
+ fields: ["config.settings: FieldDef[]"],
256
+ bound: "SLOT_SETTINGS_MAX",
257
+ status: "pending:C3"
258
+ },
259
+ "block placement": {
260
+ row: "B catalog",
261
+ carrier: "value",
262
+ props: ["components.v2.placement"],
263
+ fields: ["content_models.v2.placement"],
264
+ status: "pending:C5"
265
+ },
266
+ "seeded instance": {
267
+ row: "B catalog",
268
+ carrier: "excluded",
269
+ props: [],
270
+ fields: [],
271
+ status: "landed"
272
+ },
273
+ "not applicable (props)": {
274
+ row: "B catalog",
275
+ carrier: "excluded",
276
+ props: [],
277
+ fields: [],
278
+ status: "landed"
279
+ },
280
+ "type name": corpusFix("components.slug", "content_models.slug", "SLUG_RE"),
281
+ "group name>40": corpusFix("components.tabs[].id", "content_models.fieldsets[].id", "TAB_NAME_MAX"),
282
+ "group title": corpusFix("components.tabs[].name", "content_models.fieldsets[].name", "TAB_TITLE"),
283
+ "group default": corpusFix("components.tabs[0]", "content_models.fieldsets[0]", "TAB_DEFAULT_FIRST"),
284
+ "group icon": corpusFix("components.tabs[].icon", "content_models.fieldsets[].icon", "DOCK_ICON_NAMES"),
285
+ "group name collision": corpusFix("components.tabs[].name", "content_models.fieldsets[].name", "TAB_NAME_UNIQUE"),
286
+ "prop tab limit": corpusFix("components.tabs", "content_models.fieldsets", "PROP_TAB_MAX"),
287
+ "fieldset spans groups": corpusFix("ui.group.tab", "fieldsets[].tab", "FIELDSET_ONE_TAB"),
288
+ "fieldset (props)": corpusFix("ui.group (first prop)", "content_models.fieldsets", "PROP_GROUP_DEFINED_ON_USE"),
289
+ "fieldset name>limit": corpusFix("ui.group.label", "content_models.fieldsets[].name", "FIELDSET_NAME_MAX"),
290
+ "duplicate name": corpusFix("props[].key", "fields[].key", "KEY_UNIQUE"),
291
+ "reserved name": {
292
+ row: "B corpus-fix",
293
+ carrier: "value",
294
+ props: [],
295
+ fields: ["fields[].key"],
296
+ bound: "KEY_RESERVED + KEY_FORMAT",
297
+ status: "landed"
298
+ },
299
+ rows: corpusFix("ui.rows", "ui.rows", "UI_ROWS_MAX"),
300
+ synced: corpusFix("ui.synced", "ui.synced", "SYNCED_FROM_MAX"),
301
+ valueShape: corpusFix("ui.valueShape", "ui.valueShape", "VALUE_SHAPE_TYPES"),
302
+ "default value": corpusFix("props[].defaultValue", "fields[].defaultValue", "VALUE_SCHEMAS"),
303
+ icon: corpusFix("ui.icon", "ui.icon", "DOCK_ICON_NAMES"),
304
+ layout: corpusFix("ui.control / ui.layout", "ui.control / ui.layout", "CONTROL_TYPES"),
305
+ "help>limit": corpusFix("helpText / placeholder / helpMore", "helpText / ui.placeholder / helpMore", "HELP_CAPS"),
306
+ "option icon": corpusFix("options[].icon", "options[].icon", "DOCK_ICON_NAMES"),
307
+ "option description": corpusFix("options[].description", "options[].description", "OPTION_DESCRIPTION_MAX"),
308
+ access: corpusFix("ui.access", "ui.access", "ACCESS_CAPS"),
309
+ timezone: corpusFix("config.timezone", "config.timezone", "TIMEZONE"),
310
+ "reference order": corpusFix("config.contentModelId|allowedModelSlugs, config.targets", "config.contentModelId|allowedModelSlugs, config.targets", "REFERENCE_TO_ORDER"),
311
+ "numeric unit": corpusFix("config.unit", "config.unit", "NUMBER_UNIT_MAX"),
312
+ "rating bounds": corpusFix("config.min/max/step (rating)", "config.min/max/step (rating)", "RATING_BOUNDS"),
313
+ "scale rules": corpusFix("config.scale", "config.scale", "SCALE_RULES"),
314
+ "validation.patternMessage": corpusFix("config.patternMessage", "config.patternMessage", "PATTERN_MESSAGE_MAX"),
315
+ "validation.pattern": corpusFix("config.pattern", "config.pattern", "PATTERN_MAX"),
316
+ "validation.length": corpusFix("config.minLength/maxLength", "config.minLength/maxLength", "LENGTH_TYPES"),
317
+ "validation.items": corpusFix("config.minItems/maxItems", "config.minItems/maxItems", "LIST_ITEMS_CAP"),
318
+ "validation.unique": corpusFix("props[].unique", "fields[].unique", "UNIQUE_TYPES"),
319
+ "validation.recommendedMax": corpusFix("props[].recommendedMax", "fields[].recommendedMax", "RECOMMENDED_MAX"),
320
+ "item identity": corpusFix("ui.itemName / ui.itemTitle", "ui.itemName / ui.itemTitle", "ITEM_NAME_RE"),
321
+ "item settings": corpusFix("config.item", "config.item", "ARRAY_ITEM_SETTINGS"),
322
+ itemNoun: corpusFix("ui.itemLabel", "ui.itemLabel", "ITEM_LABEL_MAX"),
323
+ "item icon": corpusFix("ui.icon (list)", "ui.icon (list)", "DOCK_ICON_NAMES"),
324
+ "preview icon": corpusFix("ui.preview.icon", "ui.preview.icon", "DOCK_ICON_NAMES"),
325
+ "preview path": corpusFix("ui.preview.{title,subtitle,media}", "ui.preview.{title,subtitle,media}", "PREVIEW_PATH"),
326
+ "unsupported key": corpusFix("—", "—", "V2_SCHEMA_KEYS"),
327
+ "richtext features": {
328
+ row: "B RT0",
329
+ carrier: "value",
330
+ props: ["config.features"],
331
+ fields: ["config.features"],
332
+ bound: "RICHTEXT_FEATURES",
333
+ status: "landed"
334
+ }
335
+ };
336
+ var facetOf = (feature) => FACETS[feature];
337
+ /** The owner-signed exclusions: what may be lost by design (shopify until its pipeline, and two deliberate backend rules). */
338
+ var EXCLUDED = Object.keys(FACETS).filter((f) => FACETS[f].carrier === "excluded");
339
+ //#endregion
340
+ export { EXCLUDED, FACETS, OUT_OF_DOMAIN, facetOf };
341
+
342
+ //# sourceMappingURL=facets.js.map