@questpie/admin 1.1.1 → 2.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 (965) hide show
  1. package/README.md +245 -474
  2. package/dist/_virtual/rolldown_runtime.mjs +18 -0
  3. package/dist/augmentation.d.mts +315 -0
  4. package/dist/augmentation.d.mts.map +1 -0
  5. package/dist/client/blocks/block-registry.d.mts +199 -0
  6. package/dist/client/blocks/block-registry.d.mts.map +1 -0
  7. package/dist/client/blocks/block-registry.mjs +88 -0
  8. package/dist/client/blocks/block-registry.mjs.map +1 -0
  9. package/dist/client/blocks/block-renderer.d.mts +52 -0
  10. package/dist/client/blocks/block-renderer.d.mts.map +1 -0
  11. package/dist/client/blocks/block-renderer.mjs +71 -0
  12. package/dist/client/blocks/block-renderer.mjs.map +1 -0
  13. package/dist/client/blocks/index.d.mts +4 -0
  14. package/dist/client/blocks/prefetch.d.mts +45 -0
  15. package/dist/client/blocks/prefetch.d.mts.map +1 -0
  16. package/dist/client/blocks/prefetch.mjs +26 -0
  17. package/dist/client/blocks/prefetch.mjs.map +1 -0
  18. package/dist/client/blocks/types.d.mts +69 -0
  19. package/dist/client/blocks/types.d.mts.map +1 -0
  20. package/dist/client/blocks/types.mjs +20 -0
  21. package/dist/client/blocks/types.mjs.map +1 -0
  22. package/dist/client/builder/admin-builder.d.mts +112 -0
  23. package/dist/client/builder/admin-builder.d.mts.map +1 -0
  24. package/dist/client/builder/admin-builder.mjs +185 -0
  25. package/dist/client/builder/admin-builder.mjs.map +1 -0
  26. package/dist/client/builder/admin-types.d.mts +73 -0
  27. package/dist/client/builder/admin-types.d.mts.map +1 -0
  28. package/dist/client/builder/admin.d.mts +121 -0
  29. package/dist/client/builder/admin.d.mts.map +1 -0
  30. package/dist/client/builder/admin.mjs +160 -0
  31. package/dist/client/builder/admin.mjs.map +1 -0
  32. package/dist/client/builder/defaults/components.mjs +20 -0
  33. package/dist/client/builder/defaults/components.mjs.map +1 -0
  34. package/dist/client/builder/defaults/core.d.mts +354 -0
  35. package/dist/client/builder/defaults/core.d.mts.map +1 -0
  36. package/dist/client/builder/defaults/core.mjs +49 -0
  37. package/dist/client/builder/defaults/core.mjs.map +1 -0
  38. package/dist/client/builder/defaults/fields.mjs +328 -0
  39. package/dist/client/builder/defaults/fields.mjs.map +1 -0
  40. package/dist/client/builder/defaults/pages.mjs +58 -0
  41. package/dist/client/builder/defaults/pages.mjs.map +1 -0
  42. package/dist/client/builder/defaults/starter.d.mts +351 -0
  43. package/dist/client/builder/defaults/starter.d.mts.map +1 -0
  44. package/dist/client/builder/defaults/starter.mjs +28 -0
  45. package/dist/client/builder/defaults/starter.mjs.map +1 -0
  46. package/dist/client/builder/defaults/views.mjs +27 -0
  47. package/dist/client/builder/defaults/views.mjs.map +1 -0
  48. package/dist/client/builder/defaults/widgets.mjs +31 -0
  49. package/dist/client/builder/defaults/widgets.mjs.map +1 -0
  50. package/dist/client/builder/field/field.d.mts +229 -0
  51. package/dist/client/builder/field/field.d.mts.map +1 -0
  52. package/dist/client/builder/field/field.mjs +83 -0
  53. package/dist/client/builder/field/field.mjs.map +1 -0
  54. package/dist/client/builder/index.d.mts +36 -0
  55. package/dist/client/builder/index.d.mts.map +1 -0
  56. package/dist/client/builder/page/page.d.mts +36 -0
  57. package/dist/client/builder/page/page.d.mts.map +1 -0
  58. package/dist/client/builder/page/page.mjs +27 -0
  59. package/dist/client/builder/page/page.mjs.map +1 -0
  60. package/dist/client/builder/proxies.d.mts +2 -0
  61. package/dist/client/builder/proxies.mjs +24 -0
  62. package/dist/client/builder/proxies.mjs.map +1 -0
  63. package/dist/client/builder/qa.d.mts +50 -0
  64. package/dist/client/builder/qa.d.mts.map +1 -0
  65. package/dist/client/builder/qa.mjs +42 -0
  66. package/dist/client/builder/qa.mjs.map +1 -0
  67. package/dist/client/builder/registry.d.mts +70 -0
  68. package/dist/client/builder/registry.d.mts.map +1 -0
  69. package/dist/client/builder/types/action-registry.d.mts +2 -0
  70. package/dist/client/builder/types/action-registry.mjs +142 -0
  71. package/dist/client/builder/types/action-registry.mjs.map +1 -0
  72. package/dist/client/builder/types/action-types.d.mts +253 -0
  73. package/dist/client/builder/types/action-types.d.mts.map +1 -0
  74. package/dist/client/builder/types/collection-types.d.mts +199 -0
  75. package/dist/client/builder/types/collection-types.d.mts.map +1 -0
  76. package/dist/client/builder/types/collection-types.mjs +11 -0
  77. package/dist/client/builder/types/collection-types.mjs.map +1 -0
  78. package/dist/client/builder/types/common.d.mts +60 -0
  79. package/dist/client/builder/types/common.d.mts.map +1 -0
  80. package/dist/client/builder/types/field-types.d.mts +593 -0
  81. package/dist/client/builder/types/field-types.d.mts.map +1 -0
  82. package/dist/client/builder/types/field-types.mjs +19 -0
  83. package/dist/client/builder/types/field-types.mjs.map +1 -0
  84. package/dist/client/builder/types/global-types.d.mts +22 -0
  85. package/dist/client/builder/types/global-types.d.mts.map +1 -0
  86. package/dist/client/builder/types/ui-config.d.mts +160 -0
  87. package/dist/client/builder/types/ui-config.d.mts.map +1 -0
  88. package/dist/client/builder/types/views.d.mts +89 -0
  89. package/dist/client/builder/types/views.d.mts.map +1 -0
  90. package/dist/client/builder/types/widget-types.d.mts +563 -0
  91. package/dist/client/builder/types/widget-types.d.mts.map +1 -0
  92. package/dist/client/builder/validation.d.mts +3 -0
  93. package/dist/client/builder/validation.mjs +208 -0
  94. package/dist/client/builder/validation.mjs.map +1 -0
  95. package/dist/client/builder/view/view.d.mts +129 -0
  96. package/dist/client/builder/view/view.d.mts.map +1 -0
  97. package/dist/client/builder/view/view.mjs +109 -0
  98. package/dist/client/builder/view/view.mjs.map +1 -0
  99. package/dist/client/builder/widget/widget.d.mts +33 -0
  100. package/dist/client/builder/widget/widget.d.mts.map +1 -0
  101. package/dist/client/builder/widget/widget.mjs +26 -0
  102. package/dist/client/builder/widget/widget.mjs.map +1 -0
  103. package/dist/client/components/actions/action-button.d.mts +2 -0
  104. package/dist/client/components/actions/action-button.mjs +135 -0
  105. package/dist/client/components/actions/action-button.mjs.map +1 -0
  106. package/dist/client/components/actions/action-dialog.d.mts +2 -0
  107. package/dist/client/components/actions/action-dialog.mjs +264 -0
  108. package/dist/client/components/actions/action-dialog.mjs.map +1 -0
  109. package/dist/client/components/actions/confirmation-dialog.d.mts +2 -0
  110. package/dist/client/components/actions/confirmation-dialog.mjs +82 -0
  111. package/dist/client/components/actions/confirmation-dialog.mjs.map +1 -0
  112. package/dist/client/components/actions/header-actions.d.mts +2 -0
  113. package/dist/client/components/actions/header-actions.mjs +117 -0
  114. package/dist/client/components/actions/header-actions.mjs.map +1 -0
  115. package/dist/client/components/actions/index.d.mts +4 -0
  116. package/dist/client/components/admin-link.d.mts +67 -0
  117. package/dist/client/components/admin-link.d.mts.map +1 -0
  118. package/dist/client/components/admin-link.mjs +92 -0
  119. package/dist/client/components/admin-link.mjs.map +1 -0
  120. package/dist/client/components/auth/auth-guard.d.mts +51 -0
  121. package/dist/client/components/auth/auth-guard.d.mts.map +1 -0
  122. package/dist/client/components/auth/auth-guard.mjs +60 -0
  123. package/dist/client/components/auth/auth-guard.mjs.map +1 -0
  124. package/dist/client/components/auth/auth-loading.d.mts +36 -0
  125. package/dist/client/components/auth/auth-loading.d.mts.map +1 -0
  126. package/dist/client/components/auth/auth-loading.mjs +27 -0
  127. package/dist/client/components/auth/auth-loading.mjs.map +1 -0
  128. package/dist/client/components/auth/index.d.mts +2 -0
  129. package/dist/client/components/blocks/block-canvas.mjs +90 -0
  130. package/dist/client/components/blocks/block-canvas.mjs.map +1 -0
  131. package/dist/client/components/blocks/block-editor-context.mjs +58 -0
  132. package/dist/client/components/blocks/block-editor-context.mjs.map +1 -0
  133. package/dist/client/components/blocks/block-editor-layout.mjs +82 -0
  134. package/dist/client/components/blocks/block-editor-layout.mjs.map +1 -0
  135. package/dist/client/components/blocks/block-editor-provider.mjs +155 -0
  136. package/dist/client/components/blocks/block-editor-provider.mjs.map +1 -0
  137. package/dist/client/components/blocks/block-fields-renderer.mjs +70 -0
  138. package/dist/client/components/blocks/block-fields-renderer.mjs.map +1 -0
  139. package/dist/client/components/blocks/block-insert-button.mjs +72 -0
  140. package/dist/client/components/blocks/block-insert-button.mjs.map +1 -0
  141. package/dist/client/components/blocks/block-item-menu.mjs +161 -0
  142. package/dist/client/components/blocks/block-item-menu.mjs.map +1 -0
  143. package/dist/client/components/blocks/block-item.mjs +187 -0
  144. package/dist/client/components/blocks/block-item.mjs.map +1 -0
  145. package/dist/client/components/blocks/block-library-sidebar.mjs +190 -0
  146. package/dist/client/components/blocks/block-library-sidebar.mjs.map +1 -0
  147. package/dist/client/components/blocks/block-tree.mjs +45 -0
  148. package/dist/client/components/blocks/block-tree.mjs.map +1 -0
  149. package/dist/client/components/blocks/block-type-icon.mjs +50 -0
  150. package/dist/client/components/blocks/block-type-icon.mjs.map +1 -0
  151. package/dist/client/components/blocks/utils/tree-utils.mjs +186 -0
  152. package/dist/client/components/blocks/utils/tree-utils.mjs.map +1 -0
  153. package/dist/client/components/component-renderer.d.mts +125 -0
  154. package/dist/client/components/component-renderer.d.mts.map +1 -0
  155. package/dist/client/components/component-renderer.mjs +145 -0
  156. package/dist/client/components/component-renderer.mjs.map +1 -0
  157. package/dist/client/components/error-boundary.mjs +92 -0
  158. package/dist/client/components/error-boundary.mjs.map +1 -0
  159. package/dist/client/components/fields/array-field.d.mts +44 -0
  160. package/dist/client/components/fields/array-field.d.mts.map +1 -0
  161. package/dist/client/components/fields/array-field.mjs +231 -0
  162. package/dist/client/components/fields/array-field.mjs.map +1 -0
  163. package/dist/client/components/fields/asset-preview-field.d.mts +52 -0
  164. package/dist/client/components/fields/asset-preview-field.d.mts.map +1 -0
  165. package/dist/client/components/fields/asset-preview-field.mjs +60 -0
  166. package/dist/client/components/fields/asset-preview-field.mjs.map +1 -0
  167. package/dist/client/components/fields/blocks-field/blocks-field.d.mts +41 -0
  168. package/dist/client/components/fields/blocks-field/blocks-field.d.mts.map +1 -0
  169. package/dist/client/components/fields/blocks-field/blocks-field.mjs +101 -0
  170. package/dist/client/components/fields/blocks-field/blocks-field.mjs.map +1 -0
  171. package/dist/client/components/fields/blocks-field/index.d.mts +1 -0
  172. package/dist/client/components/fields/boolean-field.d.mts +30 -0
  173. package/dist/client/components/fields/boolean-field.d.mts.map +1 -0
  174. package/dist/client/components/fields/boolean-field.mjs +47 -0
  175. package/dist/client/components/fields/boolean-field.mjs.map +1 -0
  176. package/dist/client/components/fields/custom-field.d.mts +3 -0
  177. package/dist/client/components/fields/date-field.d.mts +22 -0
  178. package/dist/client/components/fields/date-field.d.mts.map +1 -0
  179. package/dist/client/components/fields/date-field.mjs +42 -0
  180. package/dist/client/components/fields/date-field.mjs.map +1 -0
  181. package/dist/client/components/fields/datetime-field.d.mts +23 -0
  182. package/dist/client/components/fields/datetime-field.d.mts.map +1 -0
  183. package/dist/client/components/fields/datetime-field.mjs +43 -0
  184. package/dist/client/components/fields/datetime-field.mjs.map +1 -0
  185. package/dist/client/components/fields/email-field.d.mts +19 -0
  186. package/dist/client/components/fields/email-field.d.mts.map +1 -0
  187. package/dist/client/components/fields/email-field.mjs +38 -0
  188. package/dist/client/components/fields/email-field.mjs.map +1 -0
  189. package/dist/client/components/fields/embedded-collection.d.mts +3 -0
  190. package/dist/client/components/fields/field-types.d.mts +571 -0
  191. package/dist/client/components/fields/field-types.d.mts.map +1 -0
  192. package/dist/client/components/fields/field-utils.d.mts +1 -0
  193. package/dist/client/components/fields/field-utils.mjs +65 -0
  194. package/dist/client/components/fields/field-utils.mjs.map +1 -0
  195. package/dist/client/components/fields/field-wrapper.d.mts +3 -0
  196. package/dist/client/components/fields/field-wrapper.mjs +49 -0
  197. package/dist/client/components/fields/field-wrapper.mjs.map +1 -0
  198. package/dist/client/components/fields/index.d.mts +33 -0
  199. package/dist/client/components/fields/json-field.d.mts +84 -0
  200. package/dist/client/components/fields/json-field.d.mts.map +1 -0
  201. package/dist/client/components/fields/json-field.mjs +248 -0
  202. package/dist/client/components/fields/json-field.mjs.map +1 -0
  203. package/dist/client/components/fields/locale-badge.d.mts +1 -0
  204. package/dist/client/components/fields/locale-badge.mjs +17 -0
  205. package/dist/client/components/fields/locale-badge.mjs.map +1 -0
  206. package/dist/client/components/fields/number-field.d.mts +23 -0
  207. package/dist/client/components/fields/number-field.d.mts.map +1 -0
  208. package/dist/client/components/fields/number-field.mjs +40 -0
  209. package/dist/client/components/fields/number-field.mjs.map +1 -0
  210. package/dist/client/components/fields/object-array-field.d.mts +2 -0
  211. package/dist/client/components/fields/object-array-field.mjs +313 -0
  212. package/dist/client/components/fields/object-array-field.mjs.map +1 -0
  213. package/dist/client/components/fields/object-field.d.mts +32 -0
  214. package/dist/client/components/fields/object-field.d.mts.map +1 -0
  215. package/dist/client/components/fields/object-field.mjs +128 -0
  216. package/dist/client/components/fields/object-field.mjs.map +1 -0
  217. package/dist/client/components/fields/relation/displays/cards-display.d.mts +2 -0
  218. package/dist/client/components/fields/relation/displays/cards-display.mjs +140 -0
  219. package/dist/client/components/fields/relation/displays/cards-display.mjs.map +1 -0
  220. package/dist/client/components/fields/relation/displays/chips-display.d.mts +2 -0
  221. package/dist/client/components/fields/relation/displays/chips-display.mjs +100 -0
  222. package/dist/client/components/fields/relation/displays/chips-display.mjs.map +1 -0
  223. package/dist/client/components/fields/relation/displays/grid-display.d.mts +2 -0
  224. package/dist/client/components/fields/relation/displays/grid-display.mjs +114 -0
  225. package/dist/client/components/fields/relation/displays/grid-display.mjs.map +1 -0
  226. package/dist/client/components/fields/relation/displays/index.d.mts +6 -0
  227. package/dist/client/components/fields/relation/displays/list-display.d.mts +2 -0
  228. package/dist/client/components/fields/relation/displays/list-display.mjs +128 -0
  229. package/dist/client/components/fields/relation/displays/list-display.mjs.map +1 -0
  230. package/dist/client/components/fields/relation/displays/table-display.d.mts +2 -0
  231. package/dist/client/components/fields/relation/displays/table-display.mjs +134 -0
  232. package/dist/client/components/fields/relation/displays/table-display.mjs.map +1 -0
  233. package/dist/client/components/fields/relation/displays/types.d.mts +22 -0
  234. package/dist/client/components/fields/relation/displays/types.d.mts.map +1 -0
  235. package/dist/client/components/fields/relation/displays/types.mjs +73 -0
  236. package/dist/client/components/fields/relation/displays/types.mjs.map +1 -0
  237. package/dist/client/components/fields/relation/index.d.mts +3 -0
  238. package/dist/client/components/fields/relation/relation-items-display.d.mts +5 -0
  239. package/dist/client/components/fields/relation/relation-items-display.mjs +47 -0
  240. package/dist/client/components/fields/relation/relation-items-display.mjs.map +1 -0
  241. package/dist/client/components/fields/relation-field.d.mts +134 -0
  242. package/dist/client/components/fields/relation-field.d.mts.map +1 -0
  243. package/dist/client/components/fields/relation-field.mjs +106 -0
  244. package/dist/client/components/fields/relation-field.mjs.map +1 -0
  245. package/dist/client/components/fields/relation-picker.d.mts +4 -0
  246. package/dist/client/components/fields/relation-picker.mjs +301 -0
  247. package/dist/client/components/fields/relation-picker.mjs.map +1 -0
  248. package/dist/client/components/fields/relation-select.d.mts +3 -0
  249. package/dist/client/components/fields/relation-select.mjs +219 -0
  250. package/dist/client/components/fields/relation-select.mjs.map +1 -0
  251. package/dist/client/components/fields/reverse-relation-field.d.mts +2 -0
  252. package/dist/client/components/fields/rich-text-editor/bubble-menu.mjs +56 -0
  253. package/dist/client/components/fields/rich-text-editor/bubble-menu.mjs.map +1 -0
  254. package/dist/client/components/fields/rich-text-editor/extensions.mjs +118 -0
  255. package/dist/client/components/fields/rich-text-editor/extensions.mjs.map +1 -0
  256. package/dist/client/components/fields/rich-text-editor/image-popover.mjs +196 -0
  257. package/dist/client/components/fields/rich-text-editor/image-popover.mjs.map +1 -0
  258. package/dist/client/components/fields/rich-text-editor/index.d.mts +4 -0
  259. package/dist/client/components/fields/rich-text-editor/index.mjs +187 -0
  260. package/dist/client/components/fields/rich-text-editor/index.mjs.map +1 -0
  261. package/dist/client/components/fields/rich-text-editor/link-popover.mjs +86 -0
  262. package/dist/client/components/fields/rich-text-editor/link-popover.mjs.map +1 -0
  263. package/dist/client/components/fields/rich-text-editor/presets.d.mts +11 -0
  264. package/dist/client/components/fields/rich-text-editor/presets.d.mts.map +1 -0
  265. package/dist/client/components/fields/rich-text-editor/presets.mjs +124 -0
  266. package/dist/client/components/fields/rich-text-editor/presets.mjs.map +1 -0
  267. package/dist/client/components/fields/rich-text-editor/slash-commands.mjs +145 -0
  268. package/dist/client/components/fields/rich-text-editor/slash-commands.mjs.map +1 -0
  269. package/dist/client/components/fields/rich-text-editor/table-controls.mjs +124 -0
  270. package/dist/client/components/fields/rich-text-editor/table-controls.mjs.map +1 -0
  271. package/dist/client/components/fields/rich-text-editor/toolbar.mjs +280 -0
  272. package/dist/client/components/fields/rich-text-editor/toolbar.mjs.map +1 -0
  273. package/dist/client/components/fields/rich-text-editor/types.d.mts +78 -0
  274. package/dist/client/components/fields/rich-text-editor/types.d.mts.map +1 -0
  275. package/dist/client/components/fields/rich-text-editor/types.mjs +31 -0
  276. package/dist/client/components/fields/rich-text-editor/types.mjs.map +1 -0
  277. package/dist/client/components/fields/rich-text-editor/utils.mjs +51 -0
  278. package/dist/client/components/fields/rich-text-editor/utils.mjs.map +1 -0
  279. package/dist/client/components/fields/rich-text-editor/variants.d.mts +2 -0
  280. package/dist/client/components/fields/rich-text-field.d.mts +14 -0
  281. package/dist/client/components/fields/rich-text-field.d.mts.map +1 -0
  282. package/dist/client/components/fields/rich-text-field.mjs +26 -0
  283. package/dist/client/components/fields/rich-text-field.mjs.map +1 -0
  284. package/dist/client/components/fields/select-field.d.mts +25 -0
  285. package/dist/client/components/fields/select-field.d.mts.map +1 -0
  286. package/dist/client/components/fields/select-field.mjs +53 -0
  287. package/dist/client/components/fields/select-field.mjs.map +1 -0
  288. package/dist/client/components/fields/status-field.d.mts +2 -0
  289. package/dist/client/components/fields/text-field.d.mts +22 -0
  290. package/dist/client/components/fields/text-field.d.mts.map +1 -0
  291. package/dist/client/components/fields/text-field.mjs +39 -0
  292. package/dist/client/components/fields/text-field.mjs.map +1 -0
  293. package/dist/client/components/fields/textarea-field.d.mts +22 -0
  294. package/dist/client/components/fields/textarea-field.d.mts.map +1 -0
  295. package/dist/client/components/fields/textarea-field.mjs +39 -0
  296. package/dist/client/components/fields/textarea-field.mjs.map +1 -0
  297. package/dist/client/components/fields/time-field.d.mts +20 -0
  298. package/dist/client/components/fields/time-field.d.mts.map +1 -0
  299. package/dist/client/components/fields/time-field.mjs +39 -0
  300. package/dist/client/components/fields/time-field.mjs.map +1 -0
  301. package/dist/client/components/fields/upload-field.d.mts +97 -0
  302. package/dist/client/components/fields/upload-field.d.mts.map +1 -0
  303. package/dist/client/components/fields/upload-field.mjs +497 -0
  304. package/dist/client/components/fields/upload-field.mjs.map +1 -0
  305. package/dist/client/components/filter-builder/columns-tab.d.mts +1 -0
  306. package/dist/client/components/filter-builder/columns-tab.mjs +131 -0
  307. package/dist/client/components/filter-builder/columns-tab.mjs.map +1 -0
  308. package/dist/client/components/filter-builder/filter-builder-sheet.d.mts +1 -0
  309. package/dist/client/components/filter-builder/filter-builder-sheet.mjs +157 -0
  310. package/dist/client/components/filter-builder/filter-builder-sheet.mjs.map +1 -0
  311. package/dist/client/components/filter-builder/filters-tab.d.mts +1 -0
  312. package/dist/client/components/filter-builder/filters-tab.mjs +380 -0
  313. package/dist/client/components/filter-builder/filters-tab.mjs.map +1 -0
  314. package/dist/client/components/filter-builder/index.d.mts +5 -0
  315. package/dist/client/components/filter-builder/saved-views-tab.d.mts +1 -0
  316. package/dist/client/components/filter-builder/saved-views-tab.mjs +125 -0
  317. package/dist/client/components/filter-builder/saved-views-tab.mjs.map +1 -0
  318. package/dist/client/components/index.d.mts +80 -0
  319. package/dist/client/components/locale-switcher.d.mts +2 -0
  320. package/dist/client/components/locale-switcher.mjs +128 -0
  321. package/dist/client/components/locale-switcher.mjs.map +1 -0
  322. package/dist/client/components/media/media-grid.mjs +139 -0
  323. package/dist/client/components/media/media-grid.mjs.map +1 -0
  324. package/dist/client/components/media/media-picker-dialog.mjs +255 -0
  325. package/dist/client/components/media/media-picker-dialog.mjs.map +1 -0
  326. package/dist/client/components/preview/live-preview-mode.mjs +211 -0
  327. package/dist/client/components/preview/live-preview-mode.mjs.map +1 -0
  328. package/dist/client/components/preview/preview-pane.mjs +179 -0
  329. package/dist/client/components/preview/preview-pane.mjs.map +1 -0
  330. package/dist/client/components/primitives/asset-preview.mjs +363 -0
  331. package/dist/client/components/primitives/asset-preview.mjs.map +1 -0
  332. package/dist/client/components/primitives/checkbox-input.mjs +33 -0
  333. package/dist/client/components/primitives/checkbox-input.mjs.map +1 -0
  334. package/dist/client/components/primitives/date-input.mjs +218 -0
  335. package/dist/client/components/primitives/date-input.mjs.map +1 -0
  336. package/dist/client/components/primitives/dropzone.mjs +239 -0
  337. package/dist/client/components/primitives/dropzone.mjs.map +1 -0
  338. package/dist/client/components/primitives/number-input.mjs +113 -0
  339. package/dist/client/components/primitives/number-input.mjs.map +1 -0
  340. package/dist/client/components/primitives/select-multi.mjs +256 -0
  341. package/dist/client/components/primitives/select-multi.mjs.map +1 -0
  342. package/dist/client/components/primitives/select-single.mjs +183 -0
  343. package/dist/client/components/primitives/select-single.mjs.map +1 -0
  344. package/dist/client/components/primitives/text-input.mjs +40 -0
  345. package/dist/client/components/primitives/text-input.mjs.map +1 -0
  346. package/dist/client/components/primitives/textarea-input.mjs +38 -0
  347. package/dist/client/components/primitives/textarea-input.mjs.map +1 -0
  348. package/dist/client/components/primitives/time-input.mjs +72 -0
  349. package/dist/client/components/primitives/time-input.mjs.map +1 -0
  350. package/dist/client/components/primitives/toggle-input.mjs +31 -0
  351. package/dist/client/components/primitives/toggle-input.mjs.map +1 -0
  352. package/dist/client/components/primitives/types.d.mts +14 -0
  353. package/dist/client/components/primitives/types.d.mts.map +1 -0
  354. package/dist/client/components/primitives/types.mjs +13 -0
  355. package/dist/client/components/primitives/types.mjs.map +1 -0
  356. package/dist/client/components/sheets/index.d.mts +1 -0
  357. package/dist/client/components/sheets/resource-sheet.d.mts +1 -0
  358. package/dist/client/components/sheets/resource-sheet.mjs +78 -0
  359. package/dist/client/components/sheets/resource-sheet.mjs.map +1 -0
  360. package/dist/client/components/ui/accordion.d.mts +2 -0
  361. package/dist/client/components/ui/accordion.mjs +50 -0
  362. package/dist/client/components/ui/accordion.mjs.map +1 -0
  363. package/dist/client/components/ui/alert.mjs +32 -0
  364. package/dist/client/components/ui/alert.mjs.map +1 -0
  365. package/dist/client/components/ui/avatar.d.mts +3 -0
  366. package/dist/client/components/ui/badge.d.mts +3 -0
  367. package/dist/client/components/ui/badge.mjs +35 -0
  368. package/dist/client/components/ui/badge.mjs.map +1 -0
  369. package/dist/client/components/ui/button.d.mts +3 -0
  370. package/dist/client/components/ui/button.mjs +49 -0
  371. package/dist/client/components/ui/button.mjs.map +1 -0
  372. package/dist/client/components/ui/card.d.mts +2 -0
  373. package/dist/{card-BKHjBQfw.mjs → client/components/ui/card.mjs} +3 -10
  374. package/dist/{card-BKHjBQfw.mjs.map → client/components/ui/card.mjs.map} +1 -1
  375. package/dist/client/components/ui/checkbox.d.mts +2 -0
  376. package/dist/client/components/ui/checkbox.mjs +27 -0
  377. package/dist/client/components/ui/checkbox.mjs.map +1 -0
  378. package/dist/client/components/ui/combobox.d.mts +3 -0
  379. package/dist/client/components/ui/command.mjs +69 -0
  380. package/dist/client/components/ui/command.mjs.map +1 -0
  381. package/dist/client/components/ui/dialog.d.mts +3 -0
  382. package/dist/client/components/ui/dialog.mjs +83 -0
  383. package/dist/client/components/ui/dialog.mjs.map +1 -0
  384. package/dist/client/components/ui/drawer.mjs +75 -0
  385. package/dist/client/components/ui/drawer.mjs.map +1 -0
  386. package/dist/client/components/ui/dropdown-menu.d.mts +3 -0
  387. package/dist/client/components/ui/dropdown-menu.mjs +89 -0
  388. package/dist/client/components/ui/dropdown-menu.mjs.map +1 -0
  389. package/dist/client/components/ui/empty-state.mjs +53 -0
  390. package/dist/client/components/ui/empty-state.mjs.map +1 -0
  391. package/dist/client/components/ui/field.d.mts +3 -0
  392. package/dist/client/components/ui/field.mjs +78 -0
  393. package/dist/client/components/ui/field.mjs.map +1 -0
  394. package/dist/client/components/ui/input-group.d.mts +4 -0
  395. package/dist/client/components/ui/input-group.mjs +68 -0
  396. package/dist/client/components/ui/input-group.mjs.map +1 -0
  397. package/dist/client/components/ui/input.d.mts +2 -0
  398. package/dist/client/components/ui/input.mjs +17 -0
  399. package/dist/client/components/ui/input.mjs.map +1 -0
  400. package/dist/client/components/ui/kbd.mjs +24 -0
  401. package/dist/client/components/ui/kbd.mjs.map +1 -0
  402. package/dist/client/components/ui/label.d.mts +2 -0
  403. package/dist/client/components/ui/label.mjs +15 -0
  404. package/dist/client/components/ui/label.mjs.map +1 -0
  405. package/dist/client/components/ui/popover.d.mts +3 -0
  406. package/dist/client/components/ui/popover.mjs +49 -0
  407. package/dist/client/components/ui/popover.mjs.map +1 -0
  408. package/dist/client/components/ui/responsive-dialog.mjs +102 -0
  409. package/dist/client/components/ui/responsive-dialog.mjs.map +1 -0
  410. package/dist/client/components/ui/scroll-area.d.mts +2 -0
  411. package/dist/client/components/ui/search-input.mjs +74 -0
  412. package/dist/client/components/ui/search-input.mjs.map +1 -0
  413. package/dist/client/components/ui/select.d.mts +3 -0
  414. package/dist/client/components/ui/select.mjs +85 -0
  415. package/dist/client/components/ui/select.mjs.map +1 -0
  416. package/dist/client/components/ui/separator.d.mts +2 -0
  417. package/dist/client/components/ui/separator.mjs +17 -0
  418. package/dist/client/components/ui/separator.mjs.map +1 -0
  419. package/dist/client/components/ui/sheet.d.mts +3 -0
  420. package/dist/client/components/ui/sheet.mjs +78 -0
  421. package/dist/client/components/ui/sheet.mjs.map +1 -0
  422. package/dist/client/components/ui/sidebar.d.mts +8 -0
  423. package/dist/client/components/ui/sidebar.mjs +256 -0
  424. package/dist/client/components/ui/sidebar.mjs.map +1 -0
  425. package/dist/client/components/ui/skeleton.d.mts +1 -0
  426. package/dist/client/components/ui/skeleton.mjs +15 -0
  427. package/dist/client/components/ui/skeleton.mjs.map +1 -0
  428. package/dist/client/components/ui/sonner.d.mts +14 -0
  429. package/dist/client/components/ui/sonner.d.mts.map +1 -0
  430. package/dist/client/components/ui/sonner.mjs +55 -0
  431. package/dist/client/components/ui/sonner.mjs.map +1 -0
  432. package/dist/client/components/ui/spinner.d.mts +1 -0
  433. package/dist/client/components/ui/spinner.mjs +18 -0
  434. package/dist/client/components/ui/spinner.mjs.map +1 -0
  435. package/dist/client/components/ui/switch.d.mts +2 -0
  436. package/dist/client/components/ui/switch.mjs +23 -0
  437. package/dist/client/components/ui/switch.mjs.map +1 -0
  438. package/dist/client/components/ui/table.d.mts +2 -0
  439. package/dist/client/components/ui/table.mjs +66 -0
  440. package/dist/client/components/ui/table.mjs.map +1 -0
  441. package/dist/client/components/ui/tabs.d.mts +3 -0
  442. package/dist/client/components/ui/tabs.mjs +49 -0
  443. package/dist/client/components/ui/tabs.mjs.map +1 -0
  444. package/dist/client/components/ui/textarea.d.mts +2 -0
  445. package/dist/client/components/ui/textarea.mjs +15 -0
  446. package/dist/client/components/ui/textarea.mjs.map +1 -0
  447. package/dist/client/components/ui/toolbar.mjs +54 -0
  448. package/dist/client/components/ui/toolbar.mjs.map +1 -0
  449. package/dist/client/components/ui/tooltip.d.mts +2 -0
  450. package/dist/client/components/ui/tooltip.mjs +45 -0
  451. package/dist/client/components/ui/tooltip.mjs.map +1 -0
  452. package/dist/client/components/widgets/chart-widget.d.mts +57 -0
  453. package/dist/client/components/widgets/chart-widget.d.mts.map +1 -0
  454. package/dist/client/components/widgets/chart-widget.mjs +282 -0
  455. package/dist/client/components/widgets/chart-widget.mjs.map +1 -0
  456. package/dist/client/components/widgets/progress-widget.d.mts +41 -0
  457. package/dist/client/components/widgets/progress-widget.d.mts.map +1 -0
  458. package/dist/client/components/widgets/progress-widget.mjs +110 -0
  459. package/dist/client/components/widgets/progress-widget.mjs.map +1 -0
  460. package/dist/client/components/widgets/quick-actions-widget.d.mts +29 -0
  461. package/dist/client/components/widgets/quick-actions-widget.d.mts.map +1 -0
  462. package/dist/client/components/widgets/quick-actions-widget.mjs +121 -0
  463. package/dist/client/components/widgets/quick-actions-widget.mjs.map +1 -0
  464. package/dist/client/components/widgets/recent-items-widget.d.mts +51 -0
  465. package/dist/client/components/widgets/recent-items-widget.d.mts.map +1 -0
  466. package/dist/client/components/widgets/recent-items-widget.mjs +101 -0
  467. package/dist/client/components/widgets/recent-items-widget.mjs.map +1 -0
  468. package/dist/client/components/widgets/stats-widget.d.mts +55 -0
  469. package/dist/client/components/widgets/stats-widget.d.mts.map +1 -0
  470. package/dist/client/components/widgets/stats-widget.mjs +150 -0
  471. package/dist/client/components/widgets/stats-widget.mjs.map +1 -0
  472. package/dist/client/components/widgets/table-widget.d.mts +31 -0
  473. package/dist/client/components/widgets/table-widget.d.mts.map +1 -0
  474. package/dist/client/components/widgets/table-widget.mjs +139 -0
  475. package/dist/client/components/widgets/table-widget.mjs.map +1 -0
  476. package/dist/client/components/widgets/timeline-widget.d.mts +51 -0
  477. package/dist/client/components/widgets/timeline-widget.d.mts.map +1 -0
  478. package/dist/client/components/widgets/timeline-widget.mjs +168 -0
  479. package/dist/client/components/widgets/timeline-widget.mjs.map +1 -0
  480. package/dist/client/components/widgets/value-widget.d.mts +39 -0
  481. package/dist/client/components/widgets/value-widget.d.mts.map +1 -0
  482. package/dist/client/components/widgets/value-widget.mjs +111 -0
  483. package/dist/client/components/widgets/value-widget.mjs.map +1 -0
  484. package/dist/client/components/widgets/widget-skeletons.mjs +145 -0
  485. package/dist/client/components/widgets/widget-skeletons.mjs.map +1 -0
  486. package/dist/client/context/focus-context.d.mts +88 -0
  487. package/dist/client/context/focus-context.d.mts.map +1 -0
  488. package/dist/client/context/focus-context.mjs +178 -0
  489. package/dist/client/context/focus-context.mjs.map +1 -0
  490. package/dist/client/contexts/breadcrumb-context.mjs +32 -0
  491. package/dist/client/contexts/breadcrumb-context.mjs.map +1 -0
  492. package/dist/client/hooks/typed-hooks.d.mts +84 -0
  493. package/dist/client/hooks/typed-hooks.d.mts.map +1 -0
  494. package/dist/client/hooks/typed-hooks.mjs +272 -0
  495. package/dist/client/hooks/typed-hooks.mjs.map +1 -0
  496. package/dist/client/hooks/use-action.mjs +201 -0
  497. package/dist/client/hooks/use-action.mjs.map +1 -0
  498. package/dist/client/hooks/use-admin-config.mjs +40 -0
  499. package/dist/client/hooks/use-admin-config.mjs.map +1 -0
  500. package/dist/client/hooks/use-admin-preferences.mjs +68 -0
  501. package/dist/client/hooks/use-admin-preferences.mjs.map +1 -0
  502. package/dist/client/hooks/use-admin-routes.mjs +97 -0
  503. package/dist/client/hooks/use-admin-routes.mjs.map +1 -0
  504. package/dist/client/hooks/use-auth.d.mts +98 -0
  505. package/dist/client/hooks/use-auth.d.mts.map +1 -0
  506. package/dist/{use-auth-BoLmWtmU.mjs → client/hooks/use-auth.mjs} +3 -3
  507. package/dist/client/hooks/use-auth.mjs.map +1 -0
  508. package/dist/client/hooks/use-collection-fields.mjs +32 -0
  509. package/dist/client/hooks/use-collection-fields.mjs.map +1 -0
  510. package/dist/client/hooks/use-collection-meta.mjs +121 -0
  511. package/dist/client/hooks/use-collection-meta.mjs.map +1 -0
  512. package/dist/client/hooks/use-collection-schema.mjs +67 -0
  513. package/dist/client/hooks/use-collection-schema.mjs.map +1 -0
  514. package/dist/client/hooks/use-collection-validation.mjs +74 -0
  515. package/dist/client/hooks/use-collection-validation.mjs.map +1 -0
  516. package/dist/client/hooks/use-collection.d.mts +86 -0
  517. package/dist/client/hooks/use-collection.d.mts.map +1 -0
  518. package/dist/client/hooks/use-collection.mjs +214 -0
  519. package/dist/client/hooks/use-collection.mjs.map +1 -0
  520. package/dist/client/hooks/use-current-user.d.mts +57 -0
  521. package/dist/client/hooks/use-current-user.d.mts.map +1 -0
  522. package/dist/client/hooks/use-current-user.mjs +79 -0
  523. package/dist/client/hooks/use-current-user.mjs.map +1 -0
  524. package/dist/client/hooks/use-field-hooks.mjs +191 -0
  525. package/dist/client/hooks/use-field-hooks.mjs.map +1 -0
  526. package/dist/client/hooks/use-field-options.d.mts +90 -0
  527. package/dist/client/hooks/use-field-options.d.mts.map +1 -0
  528. package/dist/client/hooks/use-field-options.mjs +184 -0
  529. package/dist/client/hooks/use-field-options.mjs.map +1 -0
  530. package/dist/client/hooks/use-global-fields.mjs +27 -0
  531. package/dist/client/hooks/use-global-fields.mjs.map +1 -0
  532. package/dist/client/hooks/use-global-meta.mjs +59 -0
  533. package/dist/client/hooks/use-global-meta.mjs.map +1 -0
  534. package/dist/client/hooks/use-global-schema.mjs +33 -0
  535. package/dist/client/hooks/use-global-schema.mjs.map +1 -0
  536. package/dist/client/hooks/use-global.d.mts +40 -0
  537. package/dist/client/hooks/use-global.d.mts.map +1 -0
  538. package/dist/client/hooks/use-global.mjs +74 -0
  539. package/dist/client/hooks/use-global.mjs.map +1 -0
  540. package/dist/client/hooks/use-locks.mjs +245 -0
  541. package/dist/client/hooks/use-locks.mjs.map +1 -0
  542. package/dist/client/hooks/use-media-query.d.mts +23 -0
  543. package/dist/client/hooks/use-media-query.d.mts.map +1 -0
  544. package/dist/client/hooks/use-media-query.mjs +62 -0
  545. package/dist/client/hooks/use-media-query.mjs.map +1 -0
  546. package/dist/client/hooks/use-prefill-params.mjs +47 -0
  547. package/dist/client/hooks/use-prefill-params.mjs.map +1 -0
  548. package/dist/client/hooks/use-questpie-query-options.mjs +28 -0
  549. package/dist/client/hooks/use-questpie-query-options.mjs.map +1 -0
  550. package/dist/client/hooks/use-reactive-fields.d.mts +75 -0
  551. package/dist/client/hooks/use-reactive-fields.d.mts.map +1 -0
  552. package/dist/client/hooks/use-reactive-fields.mjs +164 -0
  553. package/dist/client/hooks/use-reactive-fields.mjs.map +1 -0
  554. package/dist/client/hooks/use-realtime-highlight.mjs +96 -0
  555. package/dist/client/hooks/use-realtime-highlight.mjs.map +1 -0
  556. package/dist/client/hooks/use-saved-views.mjs +65 -0
  557. package/dist/client/hooks/use-saved-views.mjs.map +1 -0
  558. package/dist/client/hooks/use-search.mjs +147 -0
  559. package/dist/client/hooks/use-search.mjs.map +1 -0
  560. package/dist/client/hooks/use-server-validation.mjs +199 -0
  561. package/dist/client/hooks/use-server-validation.mjs.map +1 -0
  562. package/dist/client/hooks/use-server-widget-data.d.mts +26 -0
  563. package/dist/client/hooks/use-server-widget-data.d.mts.map +1 -0
  564. package/dist/client/hooks/use-server-widget-data.mjs +40 -0
  565. package/dist/client/hooks/use-server-widget-data.mjs.map +1 -0
  566. package/dist/client/hooks/use-setup-status.d.mts +39 -0
  567. package/dist/client/hooks/use-setup-status.d.mts.map +1 -0
  568. package/dist/client/hooks/use-setup-status.mjs +50 -0
  569. package/dist/client/hooks/use-setup-status.mjs.map +1 -0
  570. package/dist/client/hooks/use-upload-collection.mjs +32 -0
  571. package/dist/client/hooks/use-upload-collection.mjs.map +1 -0
  572. package/dist/client/hooks/use-upload.d.mts +23 -0
  573. package/dist/client/hooks/use-upload.d.mts.map +1 -0
  574. package/dist/client/hooks/use-upload.mjs +145 -0
  575. package/dist/client/hooks/use-upload.mjs.map +1 -0
  576. package/dist/client/hooks/use-validation-error-map.mjs +53 -0
  577. package/dist/client/hooks/use-validation-error-map.mjs.map +1 -0
  578. package/dist/client/hooks/use-view-state.mjs +261 -0
  579. package/dist/client/hooks/use-view-state.mjs.map +1 -0
  580. package/dist/client/i18n/hooks.mjs +160 -0
  581. package/dist/client/i18n/hooks.mjs.map +1 -0
  582. package/dist/client/i18n/intl-cache.mjs +65 -0
  583. package/dist/client/i18n/intl-cache.mjs.map +1 -0
  584. package/dist/client/i18n/messages.mjs +7 -0
  585. package/dist/client/i18n/messages.mjs.map +1 -0
  586. package/dist/client/i18n/simple.d.mts +22 -0
  587. package/dist/client/i18n/simple.d.mts.map +1 -0
  588. package/dist/client/i18n/simple.mjs +157 -0
  589. package/dist/client/i18n/simple.mjs.map +1 -0
  590. package/dist/client/i18n/types.d.mts +110 -0
  591. package/dist/client/i18n/types.d.mts.map +1 -0
  592. package/dist/client/lib/utils.d.mts +1 -0
  593. package/dist/client/lib/utils.mjs +28 -0
  594. package/dist/client/lib/utils.mjs.map +1 -0
  595. package/dist/client/preview/block-scope-context.d.mts +74 -0
  596. package/dist/client/preview/block-scope-context.d.mts.map +1 -0
  597. package/dist/client/preview/block-scope-context.mjs +93 -0
  598. package/dist/client/preview/block-scope-context.mjs.map +1 -0
  599. package/dist/client/preview/index.d.mts +5 -0
  600. package/dist/client/preview/preview-banner.d.mts +46 -0
  601. package/dist/client/preview/preview-banner.d.mts.map +1 -0
  602. package/dist/client/preview/preview-banner.mjs +95 -0
  603. package/dist/client/preview/preview-banner.mjs.map +1 -0
  604. package/dist/client/preview/preview-field.d.mts +108 -0
  605. package/dist/client/preview/preview-field.d.mts.map +1 -0
  606. package/dist/client/preview/preview-field.mjs +125 -0
  607. package/dist/client/preview/preview-field.mjs.map +1 -0
  608. package/dist/client/preview/types.d.mts +115 -0
  609. package/dist/client/preview/types.d.mts.map +1 -0
  610. package/dist/client/preview/types.mjs +21 -0
  611. package/dist/client/preview/types.mjs.map +1 -0
  612. package/dist/client/preview/use-collection-preview.d.mts +71 -0
  613. package/dist/client/preview/use-collection-preview.d.mts.map +1 -0
  614. package/dist/client/preview/use-collection-preview.mjs +114 -0
  615. package/dist/client/preview/use-collection-preview.mjs.map +1 -0
  616. package/dist/client/runtime/content-locales-provider.d.mts +1 -0
  617. package/dist/client/runtime/content-locales-provider.mjs +85 -0
  618. package/dist/client/runtime/content-locales-provider.mjs.map +1 -0
  619. package/dist/client/runtime/index.d.mts +7 -0
  620. package/dist/client/runtime/index.mjs +8 -0
  621. package/dist/client/runtime/locale-scope.d.mts +2 -0
  622. package/dist/{runtime-6VZM878K.mjs → client/runtime/locale-scope.mjs} +3 -4
  623. package/dist/client/runtime/locale-scope.mjs.map +1 -0
  624. package/dist/client/runtime/provider.d.mts +10107 -0
  625. package/dist/client/runtime/provider.d.mts.map +1 -0
  626. package/dist/client/runtime/provider.mjs +229 -0
  627. package/dist/client/runtime/provider.mjs.map +1 -0
  628. package/dist/client/runtime/routes.d.mts +49 -0
  629. package/dist/client/runtime/routes.d.mts.map +1 -0
  630. package/dist/client/runtime/routes.mjs +107 -0
  631. package/dist/client/runtime/routes.mjs.map +1 -0
  632. package/dist/client/runtime/translations-provider.d.mts +2 -0
  633. package/dist/client/runtime/translations-provider.mjs +181 -0
  634. package/dist/client/runtime/translations-provider.mjs.map +1 -0
  635. package/dist/client/scope/index.d.mts +3 -0
  636. package/dist/client/scope/picker.d.mts +54 -0
  637. package/dist/client/scope/picker.d.mts.map +1 -0
  638. package/dist/client/scope/picker.mjs +161 -0
  639. package/dist/client/scope/picker.mjs.map +1 -0
  640. package/dist/client/scope/provider.d.mts +104 -0
  641. package/dist/client/scope/provider.d.mts.map +1 -0
  642. package/dist/client/scope/provider.mjs +159 -0
  643. package/dist/client/scope/provider.mjs.map +1 -0
  644. package/dist/client/scope/types.d.mts +112 -0
  645. package/dist/client/scope/types.d.mts.map +1 -0
  646. package/dist/client/styles/index.css +80 -0
  647. package/dist/client/utils/auto-expand-fields.mjs +65 -0
  648. package/dist/client/utils/auto-expand-fields.mjs.map +1 -0
  649. package/dist/client/utils/build-field-definitions-from-schema.mjs +256 -0
  650. package/dist/client/utils/build-field-definitions-from-schema.mjs.map +1 -0
  651. package/dist/client/utils/detect-relations.mjs +46 -0
  652. package/dist/client/utils/detect-relations.mjs.map +1 -0
  653. package/dist/client/utils/locale-to-flag.d.mts +118 -0
  654. package/dist/client/utils/locale-to-flag.d.mts.map +1 -0
  655. package/dist/client/utils/locale-to-flag.mjs +130 -0
  656. package/dist/client/utils/locale-to-flag.mjs.map +1 -0
  657. package/dist/client/utils/routes.mjs +196 -0
  658. package/dist/client/utils/routes.mjs.map +1 -0
  659. package/dist/client/views/auth/accept-invite-form.d.mts +73 -0
  660. package/dist/client/views/auth/accept-invite-form.d.mts.map +1 -0
  661. package/dist/client/views/auth/accept-invite-form.mjs +180 -0
  662. package/dist/client/views/auth/accept-invite-form.mjs.map +1 -0
  663. package/dist/client/views/auth/auth-layout.d.mts +44 -0
  664. package/dist/client/views/auth/auth-layout.d.mts.map +1 -0
  665. package/dist/client/views/auth/auth-layout.mjs +53 -0
  666. package/dist/client/views/auth/auth-layout.mjs.map +1 -0
  667. package/dist/client/views/auth/forgot-password-form.d.mts +59 -0
  668. package/dist/client/views/auth/forgot-password-form.d.mts.map +1 -0
  669. package/dist/{forgot-password-page-Bcp-An4Y.mjs → client/views/auth/forgot-password-form.mjs} +22 -89
  670. package/dist/client/views/auth/forgot-password-form.mjs.map +1 -0
  671. package/dist/client/views/auth/index.d.mts +7 -0
  672. package/dist/client/views/auth/invite-form.d.mts +1 -0
  673. package/dist/client/views/auth/invite-form.mjs +155 -0
  674. package/dist/client/views/auth/invite-form.mjs.map +1 -0
  675. package/dist/client/views/auth/login-form.d.mts +76 -0
  676. package/dist/client/views/auth/login-form.d.mts.map +1 -0
  677. package/dist/client/views/auth/login-form.mjs +167 -0
  678. package/dist/client/views/auth/login-form.mjs.map +1 -0
  679. package/dist/client/views/auth/reset-password-form.d.mts +66 -0
  680. package/dist/client/views/auth/reset-password-form.d.mts.map +1 -0
  681. package/dist/client/views/auth/reset-password-form.mjs +188 -0
  682. package/dist/client/views/auth/reset-password-form.mjs.map +1 -0
  683. package/dist/client/views/auth/setup-form.d.mts +61 -0
  684. package/dist/client/views/auth/setup-form.d.mts.map +1 -0
  685. package/dist/{setup-page-YAP_fzqh.mjs → client/views/auth/setup-form.mjs} +46 -124
  686. package/dist/client/views/auth/setup-form.mjs.map +1 -0
  687. package/dist/client/views/collection/auto-form-fields.d.mts +4 -0
  688. package/dist/client/views/collection/auto-form-fields.mjs +453 -0
  689. package/dist/client/views/collection/auto-form-fields.mjs.map +1 -0
  690. package/dist/client/views/collection/bulk-action-toolbar.mjs +291 -0
  691. package/dist/client/views/collection/bulk-action-toolbar.mjs.map +1 -0
  692. package/dist/client/views/collection/cells/complex-cells.d.mts +46 -0
  693. package/dist/client/views/collection/cells/complex-cells.d.mts.map +1 -0
  694. package/dist/client/views/collection/cells/complex-cells.mjs +327 -0
  695. package/dist/client/views/collection/cells/complex-cells.mjs.map +1 -0
  696. package/dist/client/views/collection/cells/index.d.mts +7 -0
  697. package/dist/client/views/collection/cells/primitive-cells.d.mts +76 -0
  698. package/dist/client/views/collection/cells/primitive-cells.d.mts.map +1 -0
  699. package/dist/client/views/collection/cells/primitive-cells.mjs +165 -0
  700. package/dist/client/views/collection/cells/primitive-cells.mjs.map +1 -0
  701. package/dist/client/views/collection/cells/relation-cells.d.mts +21 -0
  702. package/dist/client/views/collection/cells/relation-cells.d.mts.map +1 -0
  703. package/dist/client/views/collection/cells/relation-cells.mjs +105 -0
  704. package/dist/client/views/collection/cells/relation-cells.mjs.map +1 -0
  705. package/dist/client/views/collection/cells/shared/asset-thumbnail.d.mts +1 -0
  706. package/dist/client/views/collection/cells/shared/asset-thumbnail.mjs +189 -0
  707. package/dist/client/views/collection/cells/shared/asset-thumbnail.mjs.map +1 -0
  708. package/dist/client/views/collection/cells/shared/cell-helpers.d.mts +2 -0
  709. package/dist/client/views/collection/cells/shared/cell-helpers.mjs +78 -0
  710. package/dist/client/views/collection/cells/shared/cell-helpers.mjs.map +1 -0
  711. package/dist/client/views/collection/cells/shared/relation-chip.d.mts +1 -0
  712. package/dist/client/views/collection/cells/shared/relation-chip.mjs +37 -0
  713. package/dist/client/views/collection/cells/shared/relation-chip.mjs.map +1 -0
  714. package/dist/client/views/collection/cells/upload-cells.d.mts +25 -0
  715. package/dist/client/views/collection/cells/upload-cells.d.mts.map +1 -0
  716. package/dist/client/views/collection/cells/upload-cells.mjs +20 -0
  717. package/dist/client/views/collection/cells/upload-cells.mjs.map +1 -0
  718. package/dist/client/views/collection/columns/build-columns.d.mts +2 -0
  719. package/dist/client/views/collection/columns/build-columns.mjs +156 -0
  720. package/dist/client/views/collection/columns/build-columns.mjs.map +1 -0
  721. package/dist/client/views/collection/columns/column-defaults.d.mts +2 -0
  722. package/dist/client/views/collection/columns/column-defaults.mjs +108 -0
  723. package/dist/client/views/collection/columns/column-defaults.mjs.map +1 -0
  724. package/dist/client/views/collection/columns/index.d.mts +3 -0
  725. package/dist/client/views/collection/columns/types.d.mts +2 -0
  726. package/dist/client/views/collection/field-context.mjs +127 -0
  727. package/dist/client/views/collection/field-context.mjs.map +1 -0
  728. package/dist/client/views/collection/field-renderer.mjs +171 -0
  729. package/dist/client/views/collection/field-renderer.mjs.map +1 -0
  730. package/dist/client/views/collection/form-view.d.mts +112 -0
  731. package/dist/client/views/collection/form-view.d.mts.map +1 -0
  732. package/dist/client/views/collection/form-view.mjs +903 -0
  733. package/dist/client/views/collection/form-view.mjs.map +1 -0
  734. package/dist/client/views/collection/index.d.mts +9 -0
  735. package/dist/client/views/collection/table-view.d.mts +102 -0
  736. package/dist/client/views/collection/table-view.d.mts.map +1 -0
  737. package/dist/client/views/collection/table-view.mjs +695 -0
  738. package/dist/client/views/collection/table-view.mjs.map +1 -0
  739. package/dist/client/views/collection/view-skeletons.mjs +121 -0
  740. package/dist/client/views/collection/view-skeletons.mjs.map +1 -0
  741. package/dist/client/views/common/global-search.d.mts +1 -0
  742. package/dist/client/views/common/global-search.mjs +376 -0
  743. package/dist/client/views/common/global-search.mjs.map +1 -0
  744. package/dist/client/views/common/index.d.mts +1 -0
  745. package/dist/client/views/dashboard/dashboard-grid.mjs +385 -0
  746. package/dist/client/views/dashboard/dashboard-grid.mjs.map +1 -0
  747. package/dist/client/views/dashboard/dashboard-widget.mjs +178 -0
  748. package/dist/client/views/dashboard/dashboard-widget.mjs.map +1 -0
  749. package/dist/client/views/dashboard/widget-card.mjs +159 -0
  750. package/dist/client/views/dashboard/widget-card.mjs.map +1 -0
  751. package/dist/client/views/globals/global-form-view.d.mts +74 -0
  752. package/dist/client/views/globals/global-form-view.d.mts.map +1 -0
  753. package/dist/client/views/globals/global-form-view.mjs +181 -0
  754. package/dist/client/views/globals/global-form-view.mjs.map +1 -0
  755. package/dist/client/views/index.d.mts +28 -0
  756. package/dist/client/views/layout/admin-layout-provider.d.mts +140 -0
  757. package/dist/client/views/layout/admin-layout-provider.d.mts.map +1 -0
  758. package/dist/client/views/layout/admin-layout-provider.mjs +90 -0
  759. package/dist/client/views/layout/admin-layout-provider.mjs.map +1 -0
  760. package/dist/client/views/layout/admin-layout.d.mts +151 -0
  761. package/dist/client/views/layout/admin-layout.d.mts.map +1 -0
  762. package/dist/client/views/layout/admin-layout.mjs +144 -0
  763. package/dist/client/views/layout/admin-layout.mjs.map +1 -0
  764. package/dist/client/views/layout/admin-root.d.mts +7 -0
  765. package/dist/client/views/layout/admin-router.d.mts +125 -0
  766. package/dist/client/views/layout/admin-router.d.mts.map +1 -0
  767. package/dist/client/views/layout/admin-router.mjs +594 -0
  768. package/dist/client/views/layout/admin-router.mjs.map +1 -0
  769. package/dist/client/views/layout/admin-sidebar.d.mts +105 -0
  770. package/dist/client/views/layout/admin-sidebar.d.mts.map +1 -0
  771. package/dist/client/views/layout/admin-sidebar.mjs +550 -0
  772. package/dist/client/views/layout/admin-sidebar.mjs.map +1 -0
  773. package/dist/client/views/layout/admin-topbar.mjs +128 -0
  774. package/dist/client/views/layout/admin-topbar.mjs.map +1 -0
  775. package/dist/client/views/layout/index.d.mts +5 -0
  776. package/dist/client/views/pages/accept-invite-page.d.mts +67 -0
  777. package/dist/client/views/pages/accept-invite-page.d.mts.map +1 -0
  778. package/dist/client/views/pages/accept-invite-page.mjs +143 -0
  779. package/dist/client/views/pages/accept-invite-page.mjs.map +1 -0
  780. package/dist/client/views/pages/dashboard-page.d.mts +52 -0
  781. package/dist/client/views/pages/dashboard-page.d.mts.map +1 -0
  782. package/dist/client/views/pages/dashboard-page.mjs +45 -0
  783. package/dist/client/views/pages/dashboard-page.mjs.map +1 -0
  784. package/dist/client/views/pages/forgot-password-page.d.mts +59 -0
  785. package/dist/client/views/pages/forgot-password-page.d.mts.map +1 -0
  786. package/dist/client/views/pages/forgot-password-page.mjs +80 -0
  787. package/dist/client/views/pages/forgot-password-page.mjs.map +1 -0
  788. package/dist/client/views/pages/index.d.mts +7 -0
  789. package/dist/client/views/pages/invite-page.d.mts +71 -0
  790. package/dist/client/views/pages/invite-page.d.mts.map +1 -0
  791. package/dist/client/views/pages/invite-page.mjs +86 -0
  792. package/dist/client/views/pages/invite-page.mjs.map +1 -0
  793. package/dist/client/views/pages/login-page.d.mts +76 -0
  794. package/dist/client/views/pages/login-page.d.mts.map +1 -0
  795. package/dist/client/views/pages/login-page.mjs +98 -0
  796. package/dist/client/views/pages/login-page.mjs.map +1 -0
  797. package/dist/client/views/pages/reset-password-page.d.mts +66 -0
  798. package/dist/client/views/pages/reset-password-page.d.mts.map +1 -0
  799. package/dist/client/views/pages/reset-password-page.mjs +105 -0
  800. package/dist/client/views/pages/reset-password-page.mjs.map +1 -0
  801. package/dist/client/views/pages/setup-page.d.mts +64 -0
  802. package/dist/client/views/pages/setup-page.d.mts.map +1 -0
  803. package/dist/client/views/pages/setup-page.mjs +91 -0
  804. package/dist/client/views/pages/setup-page.mjs.map +1 -0
  805. package/dist/client.d.mts +92 -3
  806. package/dist/client.d.mts.map +1 -0
  807. package/dist/client.mjs +54 -12
  808. package/dist/components/rich-text/index.d.mts +1 -0
  809. package/dist/components/rich-text/rich-text-renderer.d.mts +104 -0
  810. package/dist/components/rich-text/rich-text-renderer.d.mts.map +1 -0
  811. package/dist/components/rich-text/rich-text-renderer.mjs +210 -0
  812. package/dist/components/rich-text/rich-text-renderer.mjs.map +1 -0
  813. package/dist/index.d.mts +62 -3
  814. package/dist/index.mjs +54 -12
  815. package/dist/server/adapters/nextjs.d.mts +121 -0
  816. package/dist/server/adapters/nextjs.d.mts.map +1 -0
  817. package/dist/server/adapters/nextjs.mjs +111 -0
  818. package/dist/server/adapters/nextjs.mjs.map +1 -0
  819. package/dist/server/adapters/tanstack.d.mts +133 -0
  820. package/dist/server/adapters/tanstack.d.mts.map +1 -0
  821. package/dist/server/adapters/tanstack.mjs +90 -0
  822. package/dist/server/adapters/tanstack.mjs.map +1 -0
  823. package/dist/server/augmentation.d.mts +1523 -0
  824. package/dist/server/augmentation.d.mts.map +1 -0
  825. package/dist/server/auth-helpers.d.mts +143 -0
  826. package/dist/server/auth-helpers.d.mts.map +1 -0
  827. package/dist/server/auth-helpers.mjs +108 -0
  828. package/dist/server/auth-helpers.mjs.map +1 -0
  829. package/dist/server/block/block-builder.d.mts +319 -0
  830. package/dist/server/block/block-builder.d.mts.map +1 -0
  831. package/dist/server/block/block-builder.mjs +217 -0
  832. package/dist/server/block/block-builder.mjs.map +1 -0
  833. package/dist/server/block/index.d.mts +3 -0
  834. package/dist/server/block/introspection.d.mts +84 -0
  835. package/dist/server/block/introspection.d.mts.map +1 -0
  836. package/dist/server/block/introspection.mjs +89 -0
  837. package/dist/server/block/introspection.mjs.map +1 -0
  838. package/dist/server/block/prefetch.d.mts +78 -0
  839. package/dist/server/block/prefetch.d.mts.map +1 -0
  840. package/dist/server/block/prefetch.mjs +240 -0
  841. package/dist/server/block/prefetch.mjs.map +1 -0
  842. package/dist/server/fields/blocks.d.mts +139 -0
  843. package/dist/server/fields/blocks.d.mts.map +1 -0
  844. package/dist/server/fields/blocks.mjs +192 -0
  845. package/dist/server/fields/blocks.mjs.map +1 -0
  846. package/dist/server/fields/index.d.mts +48 -0
  847. package/dist/server/fields/index.d.mts.map +1 -0
  848. package/dist/server/fields/index.mjs +16 -0
  849. package/dist/server/fields/index.mjs.map +1 -0
  850. package/dist/server/fields/rich-text.d.mts +135 -0
  851. package/dist/server/fields/rich-text.d.mts.map +1 -0
  852. package/dist/server/fields/rich-text.mjs +188 -0
  853. package/dist/server/fields/rich-text.mjs.map +1 -0
  854. package/dist/server/i18n/index.d.mts +16 -0
  855. package/dist/server/i18n/index.d.mts.map +1 -0
  856. package/dist/server/i18n/index.mjs +44 -0
  857. package/dist/server/i18n/index.mjs.map +1 -0
  858. package/dist/server/i18n/messages/cs.mjs +461 -0
  859. package/dist/server/i18n/messages/cs.mjs.map +1 -0
  860. package/dist/server/i18n/messages/de.mjs +461 -0
  861. package/dist/server/i18n/messages/de.mjs.map +1 -0
  862. package/dist/server/i18n/messages/en.mjs +493 -0
  863. package/dist/server/i18n/messages/en.mjs.map +1 -0
  864. package/dist/server/i18n/messages/es.mjs +461 -0
  865. package/dist/server/i18n/messages/es.mjs.map +1 -0
  866. package/dist/server/i18n/messages/fr.mjs +461 -0
  867. package/dist/server/i18n/messages/fr.mjs.map +1 -0
  868. package/dist/server/i18n/messages/index.mjs +24 -0
  869. package/dist/server/i18n/messages/index.mjs.map +1 -0
  870. package/dist/server/i18n/messages/pl.mjs +461 -0
  871. package/dist/server/i18n/messages/pl.mjs.map +1 -0
  872. package/dist/server/i18n/messages/pt.mjs +464 -0
  873. package/dist/server/i18n/messages/pt.mjs.map +1 -0
  874. package/dist/server/i18n/messages/sk.mjs +490 -0
  875. package/dist/server/i18n/messages/sk.mjs.map +1 -0
  876. package/dist/server/index.d.mts +20 -0
  877. package/dist/server/modules/admin/functions/admin-config.mjs +348 -0
  878. package/dist/server/modules/admin/functions/admin-config.mjs.map +1 -0
  879. package/dist/server/modules/admin/functions/execute-action.d.mts +107 -0
  880. package/dist/server/modules/admin/functions/execute-action.d.mts.map +1 -0
  881. package/dist/server/modules/admin/functions/execute-action.mjs +331 -0
  882. package/dist/server/modules/admin/functions/execute-action.mjs.map +1 -0
  883. package/dist/server/modules/admin/functions/locales.mjs +80 -0
  884. package/dist/server/modules/admin/functions/locales.mjs.map +1 -0
  885. package/dist/server/modules/admin/functions/preview.d.mts +70 -0
  886. package/dist/server/modules/admin/functions/preview.d.mts.map +1 -0
  887. package/dist/server/modules/admin/functions/preview.mjs +243 -0
  888. package/dist/server/modules/admin/functions/preview.mjs.map +1 -0
  889. package/dist/server/modules/admin/functions/reactive.d.mts +99 -0
  890. package/dist/server/modules/admin/functions/reactive.d.mts.map +1 -0
  891. package/dist/server/modules/admin/functions/reactive.mjs +378 -0
  892. package/dist/server/modules/admin/functions/reactive.mjs.map +1 -0
  893. package/dist/server/modules/admin/functions/setup.d.mts +84 -0
  894. package/dist/server/modules/admin/functions/setup.d.mts.map +1 -0
  895. package/dist/server/modules/admin/functions/setup.mjs +131 -0
  896. package/dist/server/modules/admin/functions/setup.mjs.map +1 -0
  897. package/dist/server/modules/admin/functions/translations.mjs +125 -0
  898. package/dist/server/modules/admin/functions/translations.mjs.map +1 -0
  899. package/dist/server/modules/admin/functions/widget-data.d.mts +33 -0
  900. package/dist/server/modules/admin/functions/widget-data.d.mts.map +1 -0
  901. package/dist/server/modules/admin/functions/widget-data.mjs +70 -0
  902. package/dist/server/modules/admin/functions/widget-data.mjs.map +1 -0
  903. package/dist/server/modules/admin/index.d.mts +16879 -0
  904. package/dist/server/modules/admin/index.d.mts.map +1 -0
  905. package/dist/server/modules/admin/index.mjs +249 -0
  906. package/dist/server/modules/admin/index.mjs.map +1 -0
  907. package/dist/server/modules/admin-preferences/collections/admin-preferences.collection.d.mts +3 -0
  908. package/dist/server/modules/admin-preferences/collections/admin-preferences.collection.mjs +48 -0
  909. package/dist/server/modules/admin-preferences/collections/admin-preferences.collection.mjs.map +1 -0
  910. package/dist/server/modules/admin-preferences/collections/locks.collection.d.mts +3 -0
  911. package/dist/server/modules/admin-preferences/collections/locks.collection.mjs +79 -0
  912. package/dist/server/modules/admin-preferences/collections/locks.collection.mjs.map +1 -0
  913. package/dist/server/modules/admin-preferences/collections/saved-views.collection.d.mts +1490 -0
  914. package/dist/server/modules/admin-preferences/collections/saved-views.collection.d.mts.map +1 -0
  915. package/dist/server/modules/admin-preferences/collections/saved-views.collection.mjs +57 -0
  916. package/dist/server/modules/admin-preferences/collections/saved-views.collection.mjs.map +1 -0
  917. package/dist/server/patch.d.mts +100 -0
  918. package/dist/server/patch.d.mts.map +1 -0
  919. package/dist/server/patch.mjs +1062 -0
  920. package/dist/server/patch.mjs.map +1 -0
  921. package/dist/server.d.mts +21 -250
  922. package/dist/server.mjs +19 -832
  923. package/dist/shared/preview-utils.d.mts +54 -0
  924. package/dist/shared/preview-utils.d.mts.map +1 -0
  925. package/dist/{preview-utils-BKQ9-TMa.mjs → shared/preview-utils.mjs} +2 -2
  926. package/dist/shared/preview-utils.mjs.map +1 -0
  927. package/dist/{saved-views.types-BMsz5mCy.d.mts → shared/types/saved-views.types.d.mts} +7 -2
  928. package/dist/shared/types/saved-views.types.d.mts.map +1 -0
  929. package/dist/shared.d.mts +3 -57
  930. package/dist/shared.mjs +1 -1
  931. package/package.json +12 -17
  932. package/dist/auth-layout-M8K8_q5R.mjs +0 -181
  933. package/dist/auth-layout-M8K8_q5R.mjs.map +0 -1
  934. package/dist/bulk-upload-dialog-D7w7W1Hl.mjs +0 -273
  935. package/dist/bulk-upload-dialog-D7w7W1Hl.mjs.map +0 -1
  936. package/dist/client-D1DqawtP.d.mts +0 -13403
  937. package/dist/client-D1DqawtP.d.mts.map +0 -1
  938. package/dist/client-njX1rZmi.mjs +0 -22612
  939. package/dist/client-njX1rZmi.mjs.map +0 -1
  940. package/dist/content-locales-provider-BXvuIgfg.mjs +0 -1650
  941. package/dist/content-locales-provider-BXvuIgfg.mjs.map +0 -1
  942. package/dist/dashboard-page-B4PGEdc2.mjs +0 -2500
  943. package/dist/dashboard-page-B4PGEdc2.mjs.map +0 -1
  944. package/dist/dashboard-page-mCY0pgZv.mjs +0 -3
  945. package/dist/dropzone-Do3awXKd.mjs +0 -634
  946. package/dist/dropzone-Do3awXKd.mjs.map +0 -1
  947. package/dist/forgot-password-page-Bcp-An4Y.mjs.map +0 -1
  948. package/dist/forgot-password-page-CEwsdLwn.mjs +0 -3
  949. package/dist/index-B4H3amCD.d.mts +0 -2753
  950. package/dist/index-B4H3amCD.d.mts.map +0 -1
  951. package/dist/login-page-BUnpCbCa.mjs +0 -3
  952. package/dist/login-page-CP4gA-dl.mjs +0 -298
  953. package/dist/login-page-CP4gA-dl.mjs.map +0 -1
  954. package/dist/preview-utils-BKQ9-TMa.mjs.map +0 -1
  955. package/dist/reset-password-page-BqfDmLxA.mjs +0 -281
  956. package/dist/reset-password-page-BqfDmLxA.mjs.map +0 -1
  957. package/dist/reset-password-page-CufHz3h3.mjs +0 -3
  958. package/dist/runtime-6VZM878K.mjs.map +0 -1
  959. package/dist/saved-views.types-BMsz5mCy.d.mts.map +0 -1
  960. package/dist/server.d.mts.map +0 -1
  961. package/dist/server.mjs.map +0 -1
  962. package/dist/setup-page-BNNzt_Z6.mjs +0 -3
  963. package/dist/setup-page-YAP_fzqh.mjs.map +0 -1
  964. package/dist/shared.d.mts.map +0 -1
  965. package/dist/use-auth-BoLmWtmU.mjs.map +0 -1
@@ -0,0 +1,229 @@
1
+ import { BaseFieldConfigProps, BaseFieldProps, MaybeLazyComponent } from "../types/common.mjs";
2
+ import { FieldHookContext, SelectOption } from "../types/field-types.mjs";
3
+ import { SetProperty } from "questpie/shared";
4
+ import React from "react";
5
+ import { z } from "zod";
6
+
7
+ //#region src/client/builder/field/field.d.ts
8
+
9
+ /**
10
+ * Context provided to createZod callbacks for building nested schemas
11
+ */
12
+ interface ZodBuildContext {
13
+ /**
14
+ * Recursively builds a Zod schema for any field definition.
15
+ * Use this for nested fields in object/array types.
16
+ */
17
+ buildSchema: (fieldDef: FieldDefinition) => z.ZodTypeAny;
18
+ /**
19
+ * Field registry for resolving nested fields callbacks.
20
+ * Used to create the `r` proxy in `fields: ({ r }) => ({...})`
21
+ */
22
+ registry: Record<string, FieldBuilder<any>>;
23
+ }
24
+ /**
25
+ * Function type for creating Zod schema from field options
26
+ */
27
+ type CreateZodFn<TOptions = any> = (opts: TOptions, ctx: ZodBuildContext) => z.ZodTypeAny;
28
+ /**
29
+ * Field state options (readOnly, disabled, hidden)
30
+ */
31
+ interface FieldStateOptions {
32
+ /**
33
+ * Whether field is read-only (can be dynamic based on form values).
34
+ * Read-only fields look normal but cannot be edited.
35
+ * Note: Fields with `compute` are automatically read-only.
36
+ */
37
+ readOnly?: boolean | ((values: Record<string, any>) => boolean);
38
+ /**
39
+ * Whether field is disabled (can be dynamic based on form values).
40
+ * Disabled fields appear grayed out and cannot be edited.
41
+ */
42
+ disabled?: boolean | ((values: Record<string, any>) => boolean);
43
+ /**
44
+ * Whether field is hidden (can be dynamic based on form values).
45
+ * Hidden fields are not rendered. Default is false (visible).
46
+ *
47
+ * Note: undefined/false = visible, true = hidden
48
+ * This follows JavaScript falsy semantics for better DX.
49
+ */
50
+ hidden?: boolean | ((values: Record<string, any>) => boolean);
51
+ }
52
+ /**
53
+ * Hook options for field interactivity
54
+ */
55
+ interface FieldHookOptions {
56
+ /**
57
+ * Compute field value from other fields (proxy-tracked dependencies).
58
+ * Makes the field read-only and virtual (not submitted to backend).
59
+ *
60
+ * Dependencies are automatically detected via Proxy tracking.
61
+ * Works in both forms (reactive) and tables (static).
62
+ *
63
+ * @example
64
+ * ```ts
65
+ * pricePerMinute: r.number({
66
+ * compute: (values) => values.price / values.duration,
67
+ * })
68
+ * ```
69
+ */
70
+ compute?: (values: Record<string, any>) => any;
71
+ /**
72
+ * Called when field value changes.
73
+ * Use for side effects like updating other fields.
74
+ * Can be async for API calls.
75
+ *
76
+ * @example
77
+ * ```ts
78
+ * name: r.text({
79
+ * onChange: (value, { setValue }) => {
80
+ * setValue('slug', slugify(value));
81
+ * },
82
+ * })
83
+ * ```
84
+ */
85
+ onChange?: (value: any, ctx: FieldHookContext) => void | Promise<void>;
86
+ /**
87
+ * Dynamic default value for new records.
88
+ * Can be a static value, sync function, or async function.
89
+ * Only evaluated when creating new records (not on edit).
90
+ *
91
+ * @example
92
+ * ```ts
93
+ * status: r.select({
94
+ * defaultValue: 'draft',
95
+ * // or dynamic:
96
+ * defaultValue: async () => fetchDefaultStatus(),
97
+ * })
98
+ * ```
99
+ */
100
+ defaultValue?: any | ((values: Record<string, any>) => any) | ((values: Record<string, any>) => Promise<any>);
101
+ /**
102
+ * Async options loader for select-type fields.
103
+ * Dependencies are automatically detected via Proxy tracking.
104
+ *
105
+ * @example
106
+ * ```ts
107
+ * subcategory: r.select({
108
+ * loadOptions: async (values) => {
109
+ * // Automatically re-fetches when values.category changes
110
+ * return fetchSubcategories(values.category);
111
+ * },
112
+ * })
113
+ * ```
114
+ */
115
+ loadOptions?: (values: Record<string, any>) => Promise<SelectOption[]>;
116
+ }
117
+ /**
118
+ * UI options that can be set when defining a field in a collection.
119
+ * These are the "soft" options from BaseFieldProps that make sense in config.
120
+ */
121
+ type FieldUIOptions = Partial<Pick<BaseFieldConfigProps, "label" | "description" | "placeholder" | "required"> & Pick<BaseFieldProps, "localized">> & FieldStateOptions & FieldHookOptions;
122
+ /**
123
+ * Field definition - stored in admin registry
124
+ */
125
+ interface FieldDefinition<TName extends string = string, TOptions = any> {
126
+ readonly name: TName;
127
+ readonly "~options": TOptions;
128
+ field: {
129
+ component: MaybeLazyComponent;
130
+ };
131
+ cell?: {
132
+ component: MaybeLazyComponent;
133
+ };
134
+ /**
135
+ * Creates a Zod schema from field options.
136
+ * If not provided, a generic schema based on field type will be used.
137
+ */
138
+ createZod?: CreateZodFn<TOptions>;
139
+ }
140
+ /**
141
+ * Field builder state
142
+ */
143
+ interface FieldBuilderState {
144
+ readonly name: string;
145
+ readonly "~options": any;
146
+ readonly component: MaybeLazyComponent;
147
+ readonly cellComponent?: MaybeLazyComponent;
148
+ readonly createZod?: CreateZodFn;
149
+ }
150
+ /**
151
+ * Field builder class
152
+ *
153
+ * Also implements FieldDefinition interface so it can be used directly in registries.
154
+ */
155
+ declare class FieldBuilder<TState extends FieldBuilderState> implements FieldDefinition<TState["name"], TState["~options"]> {
156
+ readonly state: TState;
157
+ constructor(state: TState);
158
+ get name(): TState["name"];
159
+ get "~options"(): TState["~options"];
160
+ get field(): {
161
+ component: MaybeLazyComponent;
162
+ };
163
+ get cell(): {
164
+ component: MaybeLazyComponent;
165
+ } | undefined;
166
+ get createZod(): CreateZodFn<TState["~options"]> | undefined;
167
+ /**
168
+ * Override options - returns new builder with updated state
169
+ */
170
+ $options<TNewOptions>(options: TNewOptions): FieldBuilder<SetProperty<TState, "~options", TNewOptions>>;
171
+ /**
172
+ * Set cell component for table views
173
+ */
174
+ withCell<TNewCellComponent extends MaybeLazyComponent>(component: TNewCellComponent): FieldBuilder<SetProperty<TState, "cellComponent", TNewCellComponent>>;
175
+ }
176
+ /**
177
+ * Inferred options type for a field
178
+ */
179
+ type InferFieldOptions<TConfig extends Record<string, any>, TComponent extends MaybeLazyComponent> = [TConfig] extends [Record<string, never>] ? ExtractComponentOptions<TComponent> : TConfig & FieldUIOptions;
180
+ /**
181
+ * Create a field definition
182
+ *
183
+ * @param name - Field type name (e.g. "text", "relation")
184
+ * @param config - Component and optional config type
185
+ *
186
+ * @example
187
+ * ```ts
188
+ * // With explicit config type and createZod
189
+ * const relationField = field("relation", {
190
+ * component: RelationField,
191
+ * config: {} as RelationFieldConfig,
192
+ * createZod: (opts, ctx) => z.string(),
193
+ * });
194
+ *
195
+ * // Without config (infers from component props)
196
+ * const textField = field("text", {
197
+ * component: TextField,
198
+ * createZod: (opts) => {
199
+ * let schema = z.string();
200
+ * if (opts.maxLength) schema = schema.max(opts.maxLength);
201
+ * return opts.required ? schema : schema.optional().nullable();
202
+ * },
203
+ * });
204
+ * ```
205
+ */
206
+ declare function field<TName extends string, TConfig extends Record<string, any> = Record<string, never>, TComponent extends MaybeLazyComponent = MaybeLazyComponent, TCellComponent extends MaybeLazyComponent | undefined = undefined>(name: TName, options: {
207
+ component: TComponent;
208
+ cell?: TCellComponent;
209
+ config?: TConfig;
210
+ /**
211
+ * Creates a Zod schema from field options.
212
+ * Called during form validation schema generation.
213
+ */
214
+ createZod?: CreateZodFn<InferFieldOptions<TConfig, TComponent>>;
215
+ }): FieldBuilder<{
216
+ name: TName;
217
+ "~options": InferFieldOptions<TConfig, TComponent>;
218
+ component: TComponent;
219
+ cellComponent: TCellComponent;
220
+ createZod: typeof options.createZod;
221
+ }>;
222
+ /**
223
+ * Extract field-specific options from component props.
224
+ * Omits BaseFieldProps to get only field-specific config.
225
+ */
226
+ type ExtractComponentOptions<TComponent> = TComponent extends React.ComponentType<infer TProps> ? Omit<TProps, keyof BaseFieldProps> & FieldUIOptions : Record<string, never>;
227
+ //#endregion
228
+ export { CreateZodFn, FieldBuilder, FieldBuilderState, FieldDefinition, FieldHookOptions, FieldStateOptions, FieldUIOptions, ZodBuildContext, field };
229
+ //# sourceMappingURL=field.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.d.mts","names":[],"sources":["../../../../src/client/builder/field/field.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AAwCY,UAjBK,eAAA,CAiBM;EACf;;;;EAOS,WAAA,EAAA,CAAA,QAAiB,EApBR,eAoBQ,EAAA,GApBY,CAAA,CAAE,UAoBd;EAMD;;;;EAqBhB,QAAA,EAzCL,MAyCK,CAAA,MAAgB,EAzCN,YAyCM,CAAA,GAAA,CAAA,CAAA;;;;;AAkDjB,KArFJ,WAqFI,CAAA,WAAA,GAAA,CAAA,GAAA,CAAA,IAAA,EApFR,QAoFQ,EAAA,GAAA,EAnFT,eAmFS,EAAA,GAlFX,CAAA,CAAE,UAkFS;;;;AAgBiC,UA7FhC,iBAAA,CA6FgC;EAAO;AAOxD;;;;EAKI,QAAA,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,MAAA,EAnG6B,MAmG7B,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAA,CAAA;EALyB;;;;EAaZ,QAAA,CAAA,EAAA,OAAe,GAAA,CAAA,CAAA,MAAA,EArGC,MAqGD,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAA,CAAA;EAIf;;;;;;;EAcA,MAAA,CAAA,EAAA,OAAA,GAAA,CAAiB,CAAA,MAAA,EA9GH,MA8GG,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAA,CAAA;;;;;AAarB,UArHI,gBAAA,CAqHQ;EACR;;;;;;;;;;;;;;EAgCC,OAAA,CAAA,EAAA,CAAA,MAAA,EAvIG,MAuIH,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,GAAA,GAAA;EAAb;;;;;;;;;AAkBJ;;;;;EAS2B,QAAA,CAAA,EAAA,CAAA,KAAA,EAAA,GAAA,EAAA,GAAA,EAlJG,gBAkJH,EAAA,GAAA,IAAA,GAlJ+B,OAkJ/B,CAAA,IAAA,CAAA;EAAxB;;;;AA6BJ;;;;;;;;;;EAe8C,YAAA,CAAA,EAAA,GAAA,GAAA,CAAA,CAAA,MAAA,EA5K9B,MA4K8B,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,GAAA,GAAA,CAAA,GAAA,CAAA,CAAA,MAAA,EA3K9B,MA2K8B,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,GA3KN,OA2KM,CAAA,GAAA,CAAA,CAAA;EAAS;;;;;;;;;;;;AAgBtD;;EAOoB,WAAM,CAAA,EAAA,CAAA,MAAA,EAlLF,MAkLE,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,GAlLsB,OAkLtB,CAlL8B,YAkL9B,EAAA,CAAA;;;;;;AAEf,KA7KA,cAAA,GAAiB,OA6KjB,CA5KV,IA4KU,CA3KR,oBA2KQ,EAAA,OAAA,GAAA,aAAA,GAAA,aAAA,GAAA,UAAA,CAAA,GAxKR,IAwKQ,CAxKH,cAwKG,EAAA,WAAA,CAAA,CAAA,GAtKV,iBAsKU,GArKV,gBAqKU;;;;UAhKK;iBAIA;uBACM;;eACD;;;eACA;;;;;;cAKR,YAAY;;;;;UAMT,iBAAA;;;sBAGK;2BACK;uBACJ;;;;;;;cAQV,4BACI,8BACJ,gBAAgB,gBAAgB;kBACR;qBAAA;cAGvB;oBAIM;;;;;;;mBAcD,YAAY;;;;iCAQlB,cACR,aAAa,YAAY,oBAAoB;;;;qCAUb,+BACtB,oBACV,aAAa,YAAY,yBAAyB;;;;;KAWlD,kCACa,wCACG,uBAChB,kBAAkB,yBACnB,wBAAwB,cACxB,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA4BE,4CAEE,sBAAsB,0CACnB,qBAAqB,2CACjB,kDAEjB;aAEO;SACJ;WACE;;;;;cAKG,YAAY,kBAAkB,SAAS;IAEpD;QACK;cACM,kBAAkB,SAAS;aAC5B;iBACI;oBACG,OAAA,CAAQ;;;;;;KAevB,sCACH,mBAAmB,KAAA,CAAM,8BACrB,KAAK,cAAc,kBAAkB,iBACrC"}
@@ -0,0 +1,83 @@
1
+ //#region src/client/builder/field/field.ts
2
+ /**
3
+ * Field builder class
4
+ *
5
+ * Also implements FieldDefinition interface so it can be used directly in registries.
6
+ */
7
+ var FieldBuilder = class FieldBuilder {
8
+ constructor(state) {
9
+ this.state = state;
10
+ }
11
+ get name() {
12
+ return this.state.name;
13
+ }
14
+ get "~options"() {
15
+ return this.state["~options"];
16
+ }
17
+ get field() {
18
+ return { component: this.state.component };
19
+ }
20
+ get cell() {
21
+ return this.state.cellComponent ? { component: this.state.cellComponent } : void 0;
22
+ }
23
+ get createZod() {
24
+ return this.state.createZod;
25
+ }
26
+ /**
27
+ * Override options - returns new builder with updated state
28
+ */
29
+ $options(options) {
30
+ return new FieldBuilder({
31
+ ...this.state,
32
+ "~options": options
33
+ });
34
+ }
35
+ /**
36
+ * Set cell component for table views
37
+ */
38
+ withCell(component) {
39
+ return new FieldBuilder({
40
+ ...this.state,
41
+ cellComponent: component
42
+ });
43
+ }
44
+ };
45
+ /**
46
+ * Create a field definition
47
+ *
48
+ * @param name - Field type name (e.g. "text", "relation")
49
+ * @param config - Component and optional config type
50
+ *
51
+ * @example
52
+ * ```ts
53
+ * // With explicit config type and createZod
54
+ * const relationField = field("relation", {
55
+ * component: RelationField,
56
+ * config: {} as RelationFieldConfig,
57
+ * createZod: (opts, ctx) => z.string(),
58
+ * });
59
+ *
60
+ * // Without config (infers from component props)
61
+ * const textField = field("text", {
62
+ * component: TextField,
63
+ * createZod: (opts) => {
64
+ * let schema = z.string();
65
+ * if (opts.maxLength) schema = schema.max(opts.maxLength);
66
+ * return opts.required ? schema : schema.optional().nullable();
67
+ * },
68
+ * });
69
+ * ```
70
+ */
71
+ function field(name, options) {
72
+ return new FieldBuilder({
73
+ name,
74
+ "~options": {},
75
+ component: options.component,
76
+ cellComponent: options.cell,
77
+ createZod: options.createZod
78
+ });
79
+ }
80
+
81
+ //#endregion
82
+ export { FieldBuilder, field };
83
+ //# sourceMappingURL=field.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.mjs","names":["state: TState"],"sources":["../../../../src/client/builder/field/field.ts"],"sourcesContent":["/**\n * Field Builder\n *\n * Defines reusable field types with form and cell components.\n */\n\nimport type { SetProperty } from \"questpie/shared\";\nimport type React from \"react\";\nimport type { z } from \"zod\";\nimport type {\n BaseFieldConfigProps,\n BaseFieldProps,\n MaybeLazyComponent,\n} from \"../types/common\";\nimport type { FieldHookContext, SelectOption } from \"../types/field-types\";\n\n// ============================================================================\n// Zod Schema Building Context\n// ============================================================================\n\n/**\n * Context provided to createZod callbacks for building nested schemas\n */\nexport interface ZodBuildContext {\n /**\n * Recursively builds a Zod schema for any field definition.\n * Use this for nested fields in object/array types.\n */\n buildSchema: (fieldDef: FieldDefinition) => z.ZodTypeAny;\n\n /**\n * Field registry for resolving nested fields callbacks.\n * Used to create the `r` proxy in `fields: ({ r }) => ({...})`\n */\n registry: Record<string, FieldBuilder<any>>;\n}\n\n/**\n * Function type for creating Zod schema from field options\n */\nexport type CreateZodFn<TOptions = any> = (\n opts: TOptions,\n ctx: ZodBuildContext,\n) => z.ZodTypeAny;\n\n/**\n * Field state options (readOnly, disabled, hidden)\n */\nexport interface FieldStateOptions {\n /**\n * Whether field is read-only (can be dynamic based on form values).\n * Read-only fields look normal but cannot be edited.\n * Note: Fields with `compute` are automatically read-only.\n */\n readOnly?: boolean | ((values: Record<string, any>) => boolean);\n\n /**\n * Whether field is disabled (can be dynamic based on form values).\n * Disabled fields appear grayed out and cannot be edited.\n */\n disabled?: boolean | ((values: Record<string, any>) => boolean);\n\n /**\n * Whether field is hidden (can be dynamic based on form values).\n * Hidden fields are not rendered. Default is false (visible).\n *\n * Note: undefined/false = visible, true = hidden\n * This follows JavaScript falsy semantics for better DX.\n */\n hidden?: boolean | ((values: Record<string, any>) => boolean);\n}\n\n/**\n * Hook options for field interactivity\n */\nexport interface FieldHookOptions {\n /**\n * Compute field value from other fields (proxy-tracked dependencies).\n * Makes the field read-only and virtual (not submitted to backend).\n *\n * Dependencies are automatically detected via Proxy tracking.\n * Works in both forms (reactive) and tables (static).\n *\n * @example\n * ```ts\n * pricePerMinute: r.number({\n * compute: (values) => values.price / values.duration,\n * })\n * ```\n */\n compute?: (values: Record<string, any>) => any;\n\n /**\n * Called when field value changes.\n * Use for side effects like updating other fields.\n * Can be async for API calls.\n *\n * @example\n * ```ts\n * name: r.text({\n * onChange: (value, { setValue }) => {\n * setValue('slug', slugify(value));\n * },\n * })\n * ```\n */\n onChange?: (value: any, ctx: FieldHookContext) => void | Promise<void>;\n\n /**\n * Dynamic default value for new records.\n * Can be a static value, sync function, or async function.\n * Only evaluated when creating new records (not on edit).\n *\n * @example\n * ```ts\n * status: r.select({\n * defaultValue: 'draft',\n * // or dynamic:\n * defaultValue: async () => fetchDefaultStatus(),\n * })\n * ```\n */\n defaultValue?:\n | any\n | ((values: Record<string, any>) => any)\n | ((values: Record<string, any>) => Promise<any>);\n\n /**\n * Async options loader for select-type fields.\n * Dependencies are automatically detected via Proxy tracking.\n *\n * @example\n * ```ts\n * subcategory: r.select({\n * loadOptions: async (values) => {\n * // Automatically re-fetches when values.category changes\n * return fetchSubcategories(values.category);\n * },\n * })\n * ```\n */\n loadOptions?: (values: Record<string, any>) => Promise<SelectOption[]>;\n}\n\n/**\n * UI options that can be set when defining a field in a collection.\n * These are the \"soft\" options from BaseFieldProps that make sense in config.\n */\nexport type FieldUIOptions = Partial<\n Pick<\n BaseFieldConfigProps,\n \"label\" | \"description\" | \"placeholder\" | \"required\"\n > &\n Pick<BaseFieldProps, \"localized\">\n> &\n FieldStateOptions &\n FieldHookOptions;\n\n/**\n * Field definition - stored in admin registry\n */\nexport interface FieldDefinition<\n TName extends string = string,\n TOptions = any,\n> {\n readonly name: TName;\n readonly \"~options\": TOptions;\n field: { component: MaybeLazyComponent };\n cell?: { component: MaybeLazyComponent };\n /**\n * Creates a Zod schema from field options.\n * If not provided, a generic schema based on field type will be used.\n */\n createZod?: CreateZodFn<TOptions>;\n}\n\n/**\n * Field builder state\n */\nexport interface FieldBuilderState {\n readonly name: string;\n readonly \"~options\": any;\n readonly component: MaybeLazyComponent;\n readonly cellComponent?: MaybeLazyComponent;\n readonly createZod?: CreateZodFn;\n}\n\n/**\n * Field builder class\n *\n * Also implements FieldDefinition interface so it can be used directly in registries.\n */\nexport class FieldBuilder<\n TState extends FieldBuilderState,\n> implements FieldDefinition<TState[\"name\"], TState[\"~options\"]> {\n constructor(public readonly state: TState) {}\n\n // Implement FieldDefinition interface via getters\n get name(): TState[\"name\"] {\n return this.state.name;\n }\n\n get \"~options\"(): TState[\"~options\"] {\n return this.state[\"~options\"];\n }\n\n get field() {\n return { component: this.state.component };\n }\n\n get cell() {\n return this.state.cellComponent\n ? { component: this.state.cellComponent }\n : undefined;\n }\n\n get createZod(): CreateZodFn<TState[\"~options\"]> | undefined {\n return this.state.createZod;\n }\n\n /**\n * Override options - returns new builder with updated state\n */\n $options<TNewOptions>(\n options: TNewOptions,\n ): FieldBuilder<SetProperty<TState, \"~options\", TNewOptions>> {\n return new FieldBuilder({\n ...this.state,\n \"~options\": options,\n } as any);\n }\n\n /**\n * Set cell component for table views\n */\n withCell<TNewCellComponent extends MaybeLazyComponent>(\n component: TNewCellComponent,\n ): FieldBuilder<SetProperty<TState, \"cellComponent\", TNewCellComponent>> {\n return new FieldBuilder({\n ...this.state,\n cellComponent: component,\n } as any);\n }\n}\n\n/**\n * Inferred options type for a field\n */\ntype InferFieldOptions<\n TConfig extends Record<string, any>,\n TComponent extends MaybeLazyComponent,\n> = [TConfig] extends [Record<string, never>]\n ? ExtractComponentOptions<TComponent>\n : TConfig & FieldUIOptions;\n\n/**\n * Create a field definition\n *\n * @param name - Field type name (e.g. \"text\", \"relation\")\n * @param config - Component and optional config type\n *\n * @example\n * ```ts\n * // With explicit config type and createZod\n * const relationField = field(\"relation\", {\n * component: RelationField,\n * config: {} as RelationFieldConfig,\n * createZod: (opts, ctx) => z.string(),\n * });\n *\n * // Without config (infers from component props)\n * const textField = field(\"text\", {\n * component: TextField,\n * createZod: (opts) => {\n * let schema = z.string();\n * if (opts.maxLength) schema = schema.max(opts.maxLength);\n * return opts.required ? schema : schema.optional().nullable();\n * },\n * });\n * ```\n */\nexport function field<\n TName extends string,\n TConfig extends Record<string, any> = Record<string, never>,\n TComponent extends MaybeLazyComponent = MaybeLazyComponent,\n TCellComponent extends MaybeLazyComponent | undefined = undefined,\n>(\n name: TName,\n options: {\n component: TComponent;\n cell?: TCellComponent;\n config?: TConfig;\n /**\n * Creates a Zod schema from field options.\n * Called during form validation schema generation.\n */\n createZod?: CreateZodFn<InferFieldOptions<TConfig, TComponent>>;\n },\n): FieldBuilder<{\n name: TName;\n \"~options\": InferFieldOptions<TConfig, TComponent>;\n component: TComponent;\n cellComponent: TCellComponent;\n createZod: typeof options.createZod;\n}> {\n return new FieldBuilder({\n name,\n \"~options\": {} as any,\n component: options.component,\n cellComponent: options.cell,\n createZod: options.createZod,\n } as any);\n}\n\n/**\n * Extract field-specific options from component props.\n * Omits BaseFieldProps to get only field-specific config.\n */\ntype ExtractComponentOptions<TComponent> =\n TComponent extends React.ComponentType<infer TProps>\n ? Omit<TProps, keyof BaseFieldProps> & FieldUIOptions\n : Record<string, never>;\n"],"mappings":";;;;;;AAgMA,IAAa,eAAb,MAAa,aAEoD;CAC/D,YAAY,AAAgBA,OAAe;EAAf;;CAG5B,IAAI,OAAuB;AACzB,SAAO,KAAK,MAAM;;CAGpB,IAAI,aAAiC;AACnC,SAAO,KAAK,MAAM;;CAGpB,IAAI,QAAQ;AACV,SAAO,EAAE,WAAW,KAAK,MAAM,WAAW;;CAG5C,IAAI,OAAO;AACT,SAAO,KAAK,MAAM,gBACd,EAAE,WAAW,KAAK,MAAM,eAAe,GACvC;;CAGN,IAAI,YAAyD;AAC3D,SAAO,KAAK,MAAM;;;;;CAMpB,SACE,SAC4D;AAC5D,SAAO,IAAI,aAAa;GACtB,GAAG,KAAK;GACR,YAAY;GACb,CAAQ;;;;;CAMX,SACE,WACuE;AACvE,SAAO,IAAI,aAAa;GACtB,GAAG,KAAK;GACR,eAAe;GAChB,CAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCb,SAAgB,MAMd,MACA,SAgBC;AACD,QAAO,IAAI,aAAa;EACtB;EACA,YAAY,EAAE;EACd,WAAW,QAAQ;EACnB,eAAe,QAAQ;EACvB,WAAW,QAAQ;EACpB,CAAQ"}
@@ -0,0 +1,36 @@
1
+ import { I18nContext, I18nText } from "../i18n/types.mjs";
2
+ import { BaseFieldProps, IconComponent, MaybeLazyComponent } from "./types/common.mjs";
3
+ import { ActionContext, ActionDefinition, ActionDialogProps, ActionFormConfig, ActionHandler, ActionHelpers, ActionVariant, ActionsConfig, ApiHandler, ConfirmationConfig, CustomHandler, DialogHandler, FormHandler, HeaderActionsConfig, NavigateHandler } from "./types/action-types.mjs";
4
+ import { ArrayFieldConfig, ComponentRegistry, EmbeddedFieldConfig, FieldComponentProps, FieldHookContext, FieldLayoutItem, FieldUIConfig, FieldValidationConfig, FormSidebarConfig, FormViewConfig, LayoutMode, RelationFieldConfig, RichTextConfig, SectionLayout, SelectOption, TabConfig, TabsLayout, WrapperMode } from "./types/field-types.mjs";
5
+ import { CreateZodFn, FieldBuilder, FieldBuilderState, FieldDefinition as FieldDefinition$1, FieldHookOptions, FieldStateOptions, FieldUIOptions, ZodBuildContext, field as field$1 } from "./field/field.mjs";
6
+ import { PageBuilder, PageBuilderState, PageDefinition, page } from "./page/page.mjs";
7
+ import { AnyWidgetConfig, BaseWidgetConfig, ChartWidgetConfig, CustomWidgetConfig, GenericWidgetConfig, ProgressWidgetConfig, QuickActionItem, QuickActionsWidgetConfig, RecentItemsWidgetConfig, StatsWidgetConfig, TableWidgetColumn, TableWidgetColumnConfig, TableWidgetConfig, TimelineItem, TimelineWidgetConfig, ValueWidgetClassNames, ValueWidgetConfig, ValueWidgetResult, ValueWidgetTrend, WidgetAction, WidgetCardVariant, WidgetComponentProps, WidgetConfig, WidgetDataSource } from "./types/widget-types.mjs";
8
+ import { DashboardAction, DashboardConfig, DashboardLayoutItem, DashboardSection, DashboardTabConfig, DashboardTabs, LocaleConfig } from "./types/ui-config.mjs";
9
+ import { AutoSaveConfig, CollectionBuilderState, ColumnConfig, ColumnConfigObject, ListViewConfig, PreviewConfig } from "./types/collection-types.mjs";
10
+ import { DefaultViewsConfig } from "./types/views.mjs";
11
+ import { EditViewBuilder, EditViewBuilderState, EditViewDefinition, ListViewBuilder, ListViewBuilderState, ListViewDefinition, editView, listView } from "./view/view.mjs";
12
+ import { WidgetBuilder, WidgetBuilderState, WidgetDefinition, widget } from "./widget/widget.mjs";
13
+ import { AdminBuilderState } from "./admin-types.mjs";
14
+ import { AdminBuilder } from "./admin-builder.mjs";
15
+ import { AdminTypeRegistry, IsRegistered, RegisteredAdmin, RegisteredCMS, RegisteredCollectionNames, RegisteredGlobalNames } from "./registry.mjs";
16
+ import { Admin, AdminInput, AppAdmin, InferAdminCMS } from "./admin.mjs";
17
+ import "./types/action-registry.mjs";
18
+ import { GlobalBuilderState } from "./types/global-types.mjs";
19
+ import { qa } from "./qa.mjs";
20
+ import "./validation.mjs";
21
+ import { QuestpieClient } from "questpie/client";
22
+ import { CollectionInfer, Questpie } from "questpie";
23
+
24
+ //#region src/client/builder/index.d.ts
25
+
26
+ /**
27
+ * Extract collection names from backend Questpie app
28
+ */
29
+ type CollectionNames<TApp extends Questpie<any>> = keyof TApp["config"]["collections"] & string;
30
+ /**
31
+ * Extract global names from backend Questpie app
32
+ */
33
+ type GlobalNames<TApp extends Questpie<any>> = TApp extends Questpie<infer TConfig> ? keyof TConfig["globals"] & string : never;
34
+ //#endregion
35
+ export { CollectionNames, GlobalNames };
36
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/client/builder/index.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;KAqNY,6BAA6B,uBAClC;;;;KAIK,yBAAyB,iBACpC,aAAa,gCACJ"}
@@ -0,0 +1,36 @@
1
+ import { MaybeLazyComponent } from "../types/common.mjs";
2
+ import { SetProperty } from "questpie/shared";
3
+
4
+ //#region src/client/builder/page/page.d.ts
5
+
6
+ interface PageDefinition<TName extends string = string> {
7
+ readonly name: TName;
8
+ readonly component: any;
9
+ readonly path?: string;
10
+ }
11
+ interface PageBuilderState {
12
+ readonly name: string;
13
+ readonly component: any;
14
+ readonly path?: string;
15
+ readonly showInNav?: boolean;
16
+ }
17
+ declare class PageBuilder<TState extends PageBuilderState> {
18
+ readonly state: TState;
19
+ constructor(state: TState);
20
+ path(path: string): PageBuilder<SetProperty<TState, "path", string>>;
21
+ }
22
+ /**
23
+ * Create a custom page
24
+ */
25
+ declare function page<TName extends string, TComponent extends MaybeLazyComponent>(name: TName, config: {
26
+ component: TComponent;
27
+ showInNav?: boolean;
28
+ }): PageBuilder<{
29
+ name: TName;
30
+ component: TComponent;
31
+ path: undefined;
32
+ showInNav: boolean | undefined;
33
+ }>;
34
+ //#endregion
35
+ export { PageBuilder, PageBuilderState, PageDefinition, page };
36
+ //# sourceMappingURL=page.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page.d.mts","names":[],"sources":["../../../../src/client/builder/page/page.ts"],"sourcesContent":[],"mappings":";;;;;AAsBwC,UAbvB,cAauB,CAAA,cAAA,MAAA,GAAA,MAAA,CAAA,CAAA;EACH,SAAA,IAAA,EAbpB,KAaoB;EAAA,SAAA,SAAA,EAAA,GAAA;EAES,SAAA,IAAA,CAAA,EAAA,MAAA;;AAAxB,UAVL,gBAAA,CAUK;EAAW,SAAA,IAAA,EAAA,MAAA;EAWjB,SAAI,SAAA,EAAA,GAAA;EAEC,SAAA,IAAA,CAAA,EAAA,MAAA;EAEb,SAAA,SAAA,CAAA,EAAA,OAAA;;AAGA,cArBK,WAqBL,CAAA,eArBgC,gBAqBhC,CAAA,CAAA;EACK,SAAA,KAAA,EArBwB,MAqBxB;EAFV,WAAA,CAAA,KAAA,EAnBkC,MAmBlC;EAAW,IAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAjBQ,WAiBR,CAjBoB,WAiBpB,CAjBgC,MAiBhC,EAAA,MAAA,EAAA,MAAA,CAAA,CAAA;;;;;iBANE,8CAEK,0BAEb;aACe;;IACpB;QACK;aACK"}
@@ -0,0 +1,27 @@
1
+ //#region src/client/builder/page/page.ts
2
+ var PageBuilder = class PageBuilder {
3
+ constructor(state) {
4
+ this.state = state;
5
+ }
6
+ path(path) {
7
+ return new PageBuilder({
8
+ ...this.state,
9
+ path
10
+ });
11
+ }
12
+ };
13
+ /**
14
+ * Create a custom page
15
+ */
16
+ function page(name, config) {
17
+ return new PageBuilder({
18
+ name,
19
+ component: config.component,
20
+ path: void 0,
21
+ showInNav: config.showInNav
22
+ });
23
+ }
24
+
25
+ //#endregion
26
+ export { page };
27
+ //# sourceMappingURL=page.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page.mjs","names":["state: TState"],"sources":["../../../../src/client/builder/page/page.ts"],"sourcesContent":["/**\n * Page Builder\n *\n * Defines custom admin pages outside of collections/globals.\n */\n\nimport type { SetProperty } from \"questpie/shared\";\nimport type { MaybeLazyComponent } from \"../types/common\";\n\nexport interface PageDefinition<TName extends string = string> {\n readonly name: TName;\n readonly component: any;\n readonly path?: string;\n}\n\nexport interface PageBuilderState {\n readonly name: string;\n readonly component: any;\n readonly path?: string;\n readonly showInNav?: boolean;\n}\n\nexport class PageBuilder<TState extends PageBuilderState> {\n constructor(public readonly state: TState) {}\n\n path(path: string): PageBuilder<SetProperty<TState, \"path\", string>> {\n return new PageBuilder({\n ...this.state,\n path,\n } as any);\n }\n}\n\n/**\n * Create a custom page\n */\nexport function page<\n TName extends string,\n TComponent extends MaybeLazyComponent,\n>(\n name: TName,\n config: { component: TComponent; showInNav?: boolean },\n): PageBuilder<{\n name: TName;\n component: TComponent;\n path: undefined;\n showInNav: boolean | undefined;\n}> {\n return new PageBuilder({\n name,\n component: config.component,\n path: undefined,\n showInNav: config.showInNav,\n } as any);\n}\n"],"mappings":";AAsBA,IAAa,cAAb,MAAa,YAA6C;CACxD,YAAY,AAAgBA,OAAe;EAAf;;CAE5B,KAAK,MAAgE;AACnE,SAAO,IAAI,YAAY;GACrB,GAAG,KAAK;GACR;GACD,CAAQ;;;;;;AAOb,SAAgB,KAId,MACA,QAMC;AACD,QAAO,IAAI,YAAY;EACrB;EACA,WAAW,OAAO;EAClB,MAAM;EACN,WAAW,OAAO;EACnB,CAAQ"}
@@ -0,0 +1,2 @@
1
+ import "./field/field.mjs";
2
+ import "./view/view.mjs";
@@ -0,0 +1,24 @@
1
+ //#region src/client/builder/proxies.ts
2
+ /**
3
+ * Creates a field registry proxy at runtime
4
+ */
5
+ function createFieldRegistryProxy(fields) {
6
+ const proxy = {};
7
+ for (const key in fields) proxy[key] = (options) => {
8
+ const fieldDef = fields[key];
9
+ return {
10
+ name: fieldDef.name,
11
+ "~options": {
12
+ ...fieldDef["~options"],
13
+ ...options
14
+ },
15
+ field: fieldDef.field,
16
+ cell: fieldDef.cell
17
+ };
18
+ };
19
+ return proxy;
20
+ }
21
+
22
+ //#endregion
23
+ export { createFieldRegistryProxy };
24
+ //# sourceMappingURL=proxies.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxies.mjs","names":[],"sources":["../../../src/client/builder/proxies.ts"],"sourcesContent":["/**\n * Proxy Types for Type-Safe Builder APIs\n *\n * These provide autocomplete and type safety in builder callbacks.\n */\n\nimport type { FieldDefinition } from \"./field/field\";\nimport type { EditViewDefinition, ListViewDefinition } from \"./view/view\";\n\n// ============================================================================\n// Field Proxies\n// ============================================================================\n\n/**\n * Field Proxy - Maps field names to themselves for autocomplete\n *\n * Usage: ({ f }) => ({ columns: [f.name, f.email] })\n */\nexport type FieldProxy<TFields extends Record<string, any>> = {\n\t[K in keyof TFields]: K;\n};\n\n/**\n * Creates a field proxy at runtime\n */\nexport function createFieldProxy<TFields extends Record<string, any>>(\n\tfields?: TFields,\n): FieldProxy<TFields> {\n\tif (!fields || Object.keys(fields).length === 0) {\n\t\treturn new Proxy(\n\t\t\t{},\n\t\t\t{\n\t\t\t\tget: (_target, prop) => {\n\t\t\t\t\tif (typeof prop !== \"string\") return undefined;\n\t\t\t\t\treturn prop;\n\t\t\t\t},\n\t\t\t},\n\t\t) as FieldProxy<TFields>;\n\t}\n\n\tconst proxy = {} as any;\n\tfor (const key in fields) {\n\t\tproxy[key] = key;\n\t}\n\treturn proxy;\n}\n\n/**\n * Helper type to inject field registry into nested callbacks.\n *\n * When a config type has `fields` or `item` callbacks (like ObjectFieldConfig, ArrayFieldConfig),\n * this replaces the `any` or generic `r` parameter with the actual field registry type.\n * This enables type-safe autocomplete in nested field definitions.\n */\ntype InjectFieldRegistry<\n\tTConfig,\n\tTFields extends Record<string, FieldDefinition<any, any>>,\n> = TConfig extends {\n\tfields?: (ctx: { r: any }) => any;\n}\n\t? Omit<TConfig, \"fields\"> & {\n\t\t\tfields?: (ctx: {\n\t\t\t\tr: FieldRegistryProxy<TFields>;\n\t\t\t}) => ReturnType<NonNullable<TConfig[\"fields\"]>>;\n\t\t}\n\t: TConfig extends { item?: (ctx: { r: any }) => any }\n\t\t? Omit<TConfig, \"item\"> & {\n\t\t\t\titem?: (ctx: {\n\t\t\t\t\tr: FieldRegistryProxy<TFields>;\n\t\t\t\t}) => ReturnType<NonNullable<TConfig[\"item\"]>>;\n\t\t\t}\n\t\t: TConfig;\n\n/**\n * Field Registry Proxy - Type-safe field builder methods\n *\n * Usage: ({ r }) => ({ name: r.text({ maxLength: 100 }) })\n *\n * For fields with nested callbacks (object, array), the registry type\n * is automatically injected so nested `r` has full autocomplete.\n *\n * Note: Blocks are now server-only, so `allowedBlocks` is just string[]\n * without client-side type checking. Server validates block names.\n *\n * @typeParam TFields - Field definitions from admin registry\n */\nexport type FieldRegistryProxy<\n\tTFields extends Record<string, FieldDefinition<any, any>>,\n> = {\n\t[K in keyof TFields]: TFields[K] extends FieldDefinition<\n\t\tinfer TName,\n\t\tinfer TFieldOptions\n\t>\n\t\t? (\n\t\t\t\toptions?: InjectFieldRegistry<TFieldOptions, TFields>,\n\t\t\t) => FieldDefinition<TName, InjectFieldRegistry<TFieldOptions, TFields>>\n\t\t: never;\n};\n\n/**\n * Creates a field registry proxy at runtime\n */\nexport function createFieldRegistryProxy<\n\tTFields extends Record<string, FieldDefinition<any, any>>,\n>(fields: TFields): FieldRegistryProxy<TFields> {\n\tconst proxy = {} as any;\n\tfor (const key in fields) {\n\t\tproxy[key] = (options?: any) => {\n\t\t\tconst fieldDef = fields[key];\n\t\t\t// Important: Access getters explicitly to ensure they're evaluated\n\t\t\t// FieldBuilder uses getters for 'name', 'field', 'cell', '~options'\n\t\t\treturn {\n\t\t\t\tname: fieldDef.name,\n\t\t\t\t\"~options\": { ...fieldDef[\"~options\"], ...options },\n\t\t\t\tfield: fieldDef.field,\n\t\t\t\tcell: fieldDef.cell,\n\t\t\t} as FieldDefinition;\n\t\t};\n\t}\n\treturn proxy;\n}\n\n// ============================================================================\n// View Proxies\n// ============================================================================\n\n/**\n * Helper type to make config optional when it's unknown or empty object\n */\ntype ViewConfigArg<TConfig> = unknown extends TConfig\n\t? TConfig | undefined\n\t: TConfig;\n\n/**\n * View Registry Proxy - Type-safe view builder methods\n *\n * Usage: ({ v, f }) => v.table({ columns: [f.name] })\n *\n * The config parameter is typed based on what the view component expects.\n * If the component has `viewConfig?: TableViewConfig`, you get autocomplete\n * for `TableViewConfig` properties.\n *\n * @example\n * ```ts\n * .list(({ v, f }) => v.table({\n * columns: [f.name, f.email], // <- typed from TableViewConfig\n * searchable: true,\n * }))\n * ```\n */\nexport type ViewRegistryProxy<TViews extends Record<string, any>> = {\n\t[K in keyof TViews]: TViews[K] extends ListViewDefinition<\n\t\tany,\n\t\tinfer TListConfig\n\t>\n\t\t? (config?: ViewConfigArg<TListConfig>) => TViews[K]\n\t\t: TViews[K] extends EditViewDefinition<any, infer TEditConfig>\n\t\t\t? (config?: ViewConfigArg<TEditConfig>) => TViews[K]\n\t\t\t: never;\n};\n\n/**\n * Creates a view registry proxy at runtime\n */\nexport function createViewRegistryProxy<TViews extends Record<string, any>>(\n\tviews: TViews,\n): ViewRegistryProxy<TViews> {\n\tconst proxy = {} as any;\n\tfor (const key in views) {\n\t\tproxy[key] = (config?: any) => {\n\t\t\tconst view = views[key];\n\t\t\t// Access state directly to avoid getter issues with class instances\n\t\t\tconst existingConfig = view.state?.[\"~config\"] ?? view[\"~config\"] ?? {};\n\t\t\treturn {\n\t\t\t\tname: view.name,\n\t\t\t\tkind: view.kind,\n\t\t\t\tcomponent: view.component,\n\t\t\t\tstate: view.state,\n\t\t\t\t\"~config\": { ...existingConfig, ...config },\n\t\t\t};\n\t\t};\n\t}\n\treturn proxy;\n}\n"],"mappings":";;;;AAsGA,SAAgB,yBAEd,QAA8C;CAC/C,MAAM,QAAQ,EAAE;AAChB,MAAK,MAAM,OAAO,OACjB,OAAM,QAAQ,YAAkB;EAC/B,MAAM,WAAW,OAAO;AAGxB,SAAO;GACN,MAAM,SAAS;GACf,YAAY;IAAE,GAAG,SAAS;IAAa,GAAG;IAAS;GACnD,OAAO,SAAS;GAChB,MAAM,SAAS;GACf;;AAGH,QAAO"}
@@ -0,0 +1,50 @@
1
+ import { field } from "./field/field.mjs";
2
+ import { page } from "./page/page.mjs";
3
+ import { editView, listView } from "./view/view.mjs";
4
+ import { widget } from "./widget/widget.mjs";
5
+ import { AdminBuilder } from "./admin-builder.mjs";
6
+
7
+ //#region src/client/builder/qa.d.ts
8
+
9
+ /**
10
+ * Create admin builder (starts empty)
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * // Without backend types
15
+ * const admin = qa().use(coreAdminModule);
16
+ *
17
+ * // With backend types for autocomplete
18
+ * import type { AppCMS } from './server/cms';
19
+ * const admin = qa<AppCMS>().use(coreAdminModule);
20
+ * ```
21
+ */
22
+ declare function qaFactory<TApp = any>(): AdminBuilder<{
23
+ "~app": TApp;
24
+ fields: {};
25
+ components: {};
26
+ listViews: {};
27
+ editViews: {};
28
+ pages: {};
29
+ widgets: {};
30
+ blocks: {};
31
+ translations: {};
32
+ locale: {
33
+ default: string;
34
+ supported: string[];
35
+ };
36
+ defaultViews: {};
37
+ }>;
38
+ /**
39
+ * QA namespace with helpers
40
+ */
41
+ declare const qa: typeof qaFactory & {
42
+ field: typeof field;
43
+ listView: typeof listView;
44
+ editView: typeof editView;
45
+ widget: typeof widget;
46
+ page: typeof page;
47
+ };
48
+ //#endregion
49
+ export { qa };
50
+ //# sourceMappingURL=qa.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qa.d.mts","names":[],"sources":["../../../src/client/builder/qa.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;;;;;;;iBAyBS,yBAAoB;UAAX;;;;;;;;;;;;;;;;;;cAOL,WAAE"}
@@ -0,0 +1,42 @@
1
+ import { page } from "./page/page.mjs";
2
+ import { widget } from "./widget/widget.mjs";
3
+ import { AdminBuilder } from "./admin-builder.mjs";
4
+ import { field } from "./field/field.mjs";
5
+ import { editView, listView } from "./view/view.mjs";
6
+
7
+ //#region src/client/builder/qa.ts
8
+ /**
9
+ * QA Namespace
10
+ *
11
+ * Main entry point for admin builder API.
12
+ */
13
+ /**
14
+ * Create admin builder (starts empty)
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * // Without backend types
19
+ * const admin = qa().use(coreAdminModule);
20
+ *
21
+ * // With backend types for autocomplete
22
+ * import type { AppCMS } from './server/cms';
23
+ * const admin = qa<AppCMS>().use(coreAdminModule);
24
+ * ```
25
+ */
26
+ function qaFactory() {
27
+ return AdminBuilder.empty();
28
+ }
29
+ /**
30
+ * QA namespace with helpers
31
+ */
32
+ const qa = Object.assign(qaFactory, {
33
+ field,
34
+ listView,
35
+ editView,
36
+ widget,
37
+ page
38
+ });
39
+
40
+ //#endregion
41
+ export { qa };
42
+ //# sourceMappingURL=qa.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qa.mjs","names":[],"sources":["../../../src/client/builder/qa.ts"],"sourcesContent":["/**\n * QA Namespace\n *\n * Main entry point for admin builder API.\n */\n\nimport { AdminBuilder } from \"./admin-builder\";\nimport { field } from \"./field/field\";\nimport { page } from \"./page/page\";\nimport { editView, listView } from \"./view/view\";\nimport { widget } from \"./widget/widget\";\n\n/**\n * Create admin builder (starts empty)\n *\n * @example\n * ```ts\n * // Without backend types\n * const admin = qa().use(coreAdminModule);\n *\n * // With backend types for autocomplete\n * import type { AppCMS } from './server/cms';\n * const admin = qa<AppCMS>().use(coreAdminModule);\n * ```\n */\nfunction qaFactory<TApp = any>() {\n\treturn AdminBuilder.empty<TApp>();\n}\n\n/**\n * QA namespace with helpers\n */\nexport const qa = Object.assign(qaFactory, {\n\t// Primitive definition helpers (for advanced use)\n\tfield,\n\tlistView,\n\teditView,\n\twidget,\n\tpage,\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,SAAS,YAAwB;AAChC,QAAO,aAAa,OAAa;;;;;AAMlC,MAAa,KAAK,OAAO,OAAO,WAAW;CAE1C;CACA;CACA;CACA;CACA;CACA,CAAC"}