@nixxie-cms/core 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (658) hide show
  1. package/CHANGELOG.md +3158 -0
  2. package/LICENSE +21 -0
  3. package/README.md +6 -0
  4. package/___internal-do-not-use-will-break-in-patch/admin-ui/id-field-view/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-id-field-view.cjs.d.ts +2 -0
  5. package/___internal-do-not-use-will-break-in-patch/admin-ui/id-field-view/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-id-field-view.cjs.js +244 -0
  6. package/___internal-do-not-use-will-break-in-patch/admin-ui/id-field-view/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-id-field-view.esm.js +235 -0
  7. package/___internal-do-not-use-will-break-in-patch/admin-ui/id-field-view/package.json +4 -0
  8. package/___internal-do-not-use-will-break-in-patch/admin-ui/next-config/package.json +4 -0
  9. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/App/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-App.cjs.d.ts +2 -0
  10. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/App/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-App.cjs.js +59 -0
  11. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/App/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-App.esm.js +55 -0
  12. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/App/package.json +4 -0
  13. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/CreateItemPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-CreateItemPage.cjs.d.ts +2 -0
  14. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/CreateItemPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-CreateItemPage.cjs.js +116 -0
  15. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/CreateItemPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-CreateItemPage.esm.js +112 -0
  16. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/CreateItemPage/package.json +4 -0
  17. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/HomePage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-HomePage.cjs.d.ts +2 -0
  18. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/HomePage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-HomePage.cjs.js +336 -0
  19. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/HomePage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-HomePage.esm.js +332 -0
  20. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/HomePage/package.json +4 -0
  21. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ItemPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-ItemPage.cjs.d.ts +2 -0
  22. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ItemPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-ItemPage.cjs.js +463 -0
  23. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ItemPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-ItemPage.esm.js +455 -0
  24. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ItemPage/package.json +4 -0
  25. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-ListPage.cjs.d.ts +2 -0
  26. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-ListPage.cjs.js +1195 -0
  27. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-ListPage.esm.js +1187 -0
  28. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/package.json +4 -0
  29. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/NoAccessPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-NoAccessPage.cjs.d.ts +2 -0
  30. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/NoAccessPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-NoAccessPage.cjs.js +40 -0
  31. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/NoAccessPage/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-admin-ui-pages-NoAccessPage.esm.js +35 -0
  32. package/___internal-do-not-use-will-break-in-patch/admin-ui/pages/NoAccessPage/package.json +4 -0
  33. package/___internal-do-not-use-will-break-in-patch/artifacts/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-artifacts.cjs.d.ts +2 -0
  34. package/___internal-do-not-use-will-break-in-patch/artifacts/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-artifacts.cjs.js +51 -0
  35. package/___internal-do-not-use-will-break-in-patch/artifacts/dist/nixxie-cms-core-___internal-do-not-use-will-break-in-patch-artifacts.esm.js +38 -0
  36. package/___internal-do-not-use-will-break-in-patch/artifacts/package.json +4 -0
  37. package/access/dist/nixxie-cms-core-access.cjs.d.ts +2 -0
  38. package/access/dist/nixxie-cms-core-access.cjs.js +26 -0
  39. package/access/dist/nixxie-cms-core-access.esm.js +19 -0
  40. package/access/package.json +4 -0
  41. package/admin-ui/apollo/dist/nixxie-cms-core-admin-ui-apollo.cjs.d.ts +2 -0
  42. package/admin-ui/apollo/dist/nixxie-cms-core-admin-ui-apollo.cjs.js +87 -0
  43. package/admin-ui/apollo/dist/nixxie-cms-core-admin-ui-apollo.esm.js +2 -0
  44. package/admin-ui/apollo/package.json +4 -0
  45. package/admin-ui/components/dist/nixxie-cms-core-admin-ui-components.cjs.d.ts +2 -0
  46. package/admin-ui/components/dist/nixxie-cms-core-admin-ui-components.cjs.js +77 -0
  47. package/admin-ui/components/dist/nixxie-cms-core-admin-ui-components.esm.js +58 -0
  48. package/admin-ui/components/package.json +4 -0
  49. package/admin-ui/context/dist/nixxie-cms-core-admin-ui-context.cjs.d.ts +2 -0
  50. package/admin-ui/context/dist/nixxie-cms-core-admin-ui-context.cjs.js +35 -0
  51. package/admin-ui/context/dist/nixxie-cms-core-admin-ui-context.esm.js +23 -0
  52. package/admin-ui/context/package.json +4 -0
  53. package/admin-ui/image/dist/nixxie-cms-core-admin-ui-image.cjs.d.ts +3 -0
  54. package/admin-ui/image/dist/nixxie-cms-core-admin-ui-image.cjs.js +18 -0
  55. package/admin-ui/image/dist/nixxie-cms-core-admin-ui-image.esm.js +2 -0
  56. package/admin-ui/image/package.json +4 -0
  57. package/admin-ui/router/dist/nixxie-cms-core-admin-ui-router.cjs.d.ts +2 -0
  58. package/admin-ui/router/dist/nixxie-cms-core-admin-ui-router.cjs.js +34 -0
  59. package/admin-ui/router/dist/nixxie-cms-core-admin-ui-router.esm.js +12 -0
  60. package/admin-ui/router/package.json +4 -0
  61. package/admin-ui/utils/dist/nixxie-cms-core-admin-ui-utils.cjs.d.ts +2 -0
  62. package/admin-ui/utils/dist/nixxie-cms-core-admin-ui-utils.cjs.js +45 -0
  63. package/admin-ui/utils/dist/nixxie-cms-core-admin-ui-utils.esm.js +22 -0
  64. package/admin-ui/utils/package.json +4 -0
  65. package/bin/cli.js +3 -0
  66. package/context/dist/nixxie-cms-core-context.cjs.d.ts +2 -0
  67. package/context/dist/nixxie-cms-core-context.cjs.js +31 -0
  68. package/context/dist/nixxie-cms-core-context.esm.js +23 -0
  69. package/context/package.json +4 -0
  70. package/dist/CreateItemDialog-33335548.esm.js +55 -0
  71. package/dist/CreateItemDialog-56cf59b7.cjs.js +57 -0
  72. package/dist/Errors-575adfa3.cjs.js +147 -0
  73. package/dist/Errors-bf24759e.esm.js +143 -0
  74. package/dist/Field-47f85161.esm.js +278 -0
  75. package/dist/Field-ed8d7627.cjs.js +287 -0
  76. package/dist/Fields-956d9a14.esm.js +203 -0
  77. package/dist/Fields-e2c28056.cjs.js +206 -0
  78. package/dist/GraphQLErrorNotice-cd74180d.cjs.js +57 -0
  79. package/dist/GraphQLErrorNotice-d9f0931b.esm.js +55 -0
  80. package/dist/NullableFieldWrapper-6ea48af3.esm.js +71 -0
  81. package/dist/NullableFieldWrapper-daa0a080.cjs.js +74 -0
  82. package/dist/PageContainer-27c27f10.cjs.js +1144 -0
  83. package/dist/PageContainer-7db73317.esm.js +1129 -0
  84. package/dist/actionData-64d4c37a.esm.js +28 -0
  85. package/dist/actionData-7858738d.cjs.js +32 -0
  86. package/dist/admin-meta-14c60fec.esm.js +210 -0
  87. package/dist/admin-meta-18d0c276.cjs.js +217 -0
  88. package/dist/admin-meta-graphql-6f7f5331.esm.js +142 -0
  89. package/dist/admin-meta-graphql-c8f926e9.cjs.js +144 -0
  90. package/dist/common-1a350e11.cjs.js +324 -0
  91. package/dist/common-29fc82e6.esm.js +315 -0
  92. package/dist/context-3132c3ed.esm.js +419 -0
  93. package/dist/context-e7a45152.cjs.js +432 -0
  94. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/id-field-view.d.ts +6 -0
  95. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/id-field-view.d.ts.map +1 -0
  96. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/App/index.d.ts +10 -0
  97. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/App/index.d.ts.map +1 -0
  98. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/CreateItemPage/index.d.ts +6 -0
  99. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/CreateItemPage/index.d.ts.map +1 -0
  100. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/HomePage/index.d.ts +2 -0
  101. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/HomePage/index.d.ts.map +1 -0
  102. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ItemPage/index.d.ts +6 -0
  103. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ItemPage/index.d.ts.map +1 -0
  104. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/index.d.ts +12 -0
  105. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/index.d.ts.map +1 -0
  106. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/NoAccessPage/index.d.ts +7 -0
  107. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/NoAccessPage/index.d.ts.map +1 -0
  108. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/artifacts.d.ts +6 -0
  109. package/dist/declarations/src/___internal-do-not-use-will-break-in-patch/artifacts.d.ts.map +1 -0
  110. package/dist/declarations/src/access.d.ts +12 -0
  111. package/dist/declarations/src/access.d.ts.map +1 -0
  112. package/dist/declarations/src/admin-ui/apollo.d.ts +8 -0
  113. package/dist/declarations/src/admin-ui/apollo.d.ts.map +1 -0
  114. package/dist/declarations/src/admin-ui/components/CellContainer.d.ts +5 -0
  115. package/dist/declarations/src/admin-ui/components/CellContainer.d.ts.map +1 -0
  116. package/dist/declarations/src/admin-ui/components/CreateItemDialog.d.ts +5 -0
  117. package/dist/declarations/src/admin-ui/components/CreateItemDialog.d.ts.map +1 -0
  118. package/dist/declarations/src/admin-ui/components/Errors.d.ts +28 -0
  119. package/dist/declarations/src/admin-ui/components/Errors.d.ts.map +1 -0
  120. package/dist/declarations/src/admin-ui/components/GraphQLErrorNotice.d.ts +6 -0
  121. package/dist/declarations/src/admin-ui/components/GraphQLErrorNotice.d.ts.map +1 -0
  122. package/dist/declarations/src/admin-ui/components/InlineCode.d.ts +3 -0
  123. package/dist/declarations/src/admin-ui/components/InlineCode.d.ts.map +1 -0
  124. package/dist/declarations/src/admin-ui/components/Logo.d.ts +2 -0
  125. package/dist/declarations/src/admin-ui/components/Logo.d.ts.map +1 -0
  126. package/dist/declarations/src/admin-ui/components/Navigation.d.ts +22 -0
  127. package/dist/declarations/src/admin-ui/components/Navigation.d.ts.map +1 -0
  128. package/dist/declarations/src/admin-ui/components/NullableFieldWrapper.d.ts +33 -0
  129. package/dist/declarations/src/admin-ui/components/NullableFieldWrapper.d.ts.map +1 -0
  130. package/dist/declarations/src/admin-ui/components/PageContainer.d.ts +10 -0
  131. package/dist/declarations/src/admin-ui/components/PageContainer.d.ts.map +1 -0
  132. package/dist/declarations/src/admin-ui/components/index.d.ts +11 -0
  133. package/dist/declarations/src/admin-ui/components/index.d.ts.map +1 -0
  134. package/dist/declarations/src/admin-ui/context.d.ts +50 -0
  135. package/dist/declarations/src/admin-ui/context.d.ts.map +1 -0
  136. package/dist/declarations/src/admin-ui/image.d.ts +3 -0
  137. package/dist/declarations/src/admin-ui/image.d.ts.map +1 -0
  138. package/dist/declarations/src/admin-ui/router.d.ts +15 -0
  139. package/dist/declarations/src/admin-ui/router.d.ts.map +1 -0
  140. package/dist/declarations/src/admin-ui/utils/Fields.d.ts +16 -0
  141. package/dist/declarations/src/admin-ui/utils/Fields.d.ts.map +1 -0
  142. package/dist/declarations/src/admin-ui/utils/filters.d.ts +10 -0
  143. package/dist/declarations/src/admin-ui/utils/filters.d.ts.map +1 -0
  144. package/dist/declarations/src/admin-ui/utils/index.d.ts +8 -0
  145. package/dist/declarations/src/admin-ui/utils/index.d.ts.map +1 -0
  146. package/dist/declarations/src/admin-ui/utils/useCreateItem.d.ts +24 -0
  147. package/dist/declarations/src/admin-ui/utils/useCreateItem.d.ts.map +1 -0
  148. package/dist/declarations/src/admin-ui/utils/utils.d.ts +8 -0
  149. package/dist/declarations/src/admin-ui/utils/utils.d.ts.map +1 -0
  150. package/dist/declarations/src/artifacts.d.ts +14 -0
  151. package/dist/declarations/src/artifacts.d.ts.map +1 -0
  152. package/dist/declarations/src/context.d.ts +2 -0
  153. package/dist/declarations/src/context.d.ts.map +1 -0
  154. package/dist/declarations/src/fields/filters/enum-filter.d.ts +27 -0
  155. package/dist/declarations/src/fields/filters/enum-filter.d.ts.map +1 -0
  156. package/dist/declarations/src/fields/filters/index.d.ts +2 -0
  157. package/dist/declarations/src/fields/filters/index.d.ts.map +1 -0
  158. package/dist/declarations/src/fields/filters/internal.d.ts +21 -0
  159. package/dist/declarations/src/fields/filters/internal.d.ts.map +1 -0
  160. package/dist/declarations/src/fields/filters/providers/mysql.d.ts +182 -0
  161. package/dist/declarations/src/fields/filters/providers/mysql.d.ts.map +1 -0
  162. package/dist/declarations/src/fields/filters/providers/postgresql.d.ts +182 -0
  163. package/dist/declarations/src/fields/filters/providers/postgresql.d.ts.map +1 -0
  164. package/dist/declarations/src/fields/filters/providers/sqlite.d.ts +179 -0
  165. package/dist/declarations/src/fields/filters/providers/sqlite.d.ts.map +1 -0
  166. package/dist/declarations/src/fields/index.d.ts +35 -0
  167. package/dist/declarations/src/fields/index.d.ts.map +1 -0
  168. package/dist/declarations/src/fields/types/bigInt/index.d.ts +20 -0
  169. package/dist/declarations/src/fields/types/bigInt/index.d.ts.map +1 -0
  170. package/dist/declarations/src/fields/types/bigInt/views/index.d.ts +24 -0
  171. package/dist/declarations/src/fields/types/bigInt/views/index.d.ts.map +1 -0
  172. package/dist/declarations/src/fields/types/bytes/index.d.ts +70 -0
  173. package/dist/declarations/src/fields/types/bytes/index.d.ts.map +1 -0
  174. package/dist/declarations/src/fields/types/bytes/views/index.d.ts +24 -0
  175. package/dist/declarations/src/fields/types/bytes/views/index.d.ts.map +1 -0
  176. package/dist/declarations/src/fields/types/calendarDay/index.d.ts +15 -0
  177. package/dist/declarations/src/fields/types/calendarDay/index.d.ts.map +1 -0
  178. package/dist/declarations/src/fields/types/calendarDay/views/index.d.ts +18 -0
  179. package/dist/declarations/src/fields/types/calendarDay/views/index.d.ts.map +1 -0
  180. package/dist/declarations/src/fields/types/checkbox/index.d.ts +11 -0
  181. package/dist/declarations/src/fields/types/checkbox/index.d.ts.map +1 -0
  182. package/dist/declarations/src/fields/types/checkbox/views/index.d.ts +9 -0
  183. package/dist/declarations/src/fields/types/checkbox/views/index.d.ts.map +1 -0
  184. package/dist/declarations/src/fields/types/decimal/index.d.ts +20 -0
  185. package/dist/declarations/src/fields/types/decimal/index.d.ts.map +1 -0
  186. package/dist/declarations/src/fields/types/decimal/views/index.d.ts +22 -0
  187. package/dist/declarations/src/fields/types/decimal/views/index.d.ts.map +1 -0
  188. package/dist/declarations/src/fields/types/file/index.d.ts +34 -0
  189. package/dist/declarations/src/fields/types/file/index.d.ts.map +1 -0
  190. package/dist/declarations/src/fields/types/file/views/Field.d.ts +17 -0
  191. package/dist/declarations/src/fields/types/file/views/Field.d.ts.map +1 -0
  192. package/dist/declarations/src/fields/types/file/views/index.d.ts +29 -0
  193. package/dist/declarations/src/fields/types/file/views/index.d.ts.map +1 -0
  194. package/dist/declarations/src/fields/types/float/index.d.ts +18 -0
  195. package/dist/declarations/src/fields/types/float/index.d.ts.map +1 -0
  196. package/dist/declarations/src/fields/types/float/views/index.d.ts +22 -0
  197. package/dist/declarations/src/fields/types/float/views/index.d.ts.map +1 -0
  198. package/dist/declarations/src/fields/types/image/index.d.ts +34 -0
  199. package/dist/declarations/src/fields/types/image/index.d.ts.map +1 -0
  200. package/dist/declarations/src/fields/types/image/utils.d.ts +2 -0
  201. package/dist/declarations/src/fields/types/image/utils.d.ts.map +1 -0
  202. package/dist/declarations/src/fields/types/image/views/Field.d.ts +4 -0
  203. package/dist/declarations/src/fields/types/image/views/Field.d.ts.map +1 -0
  204. package/dist/declarations/src/fields/types/image/views/index.d.ts +49 -0
  205. package/dist/declarations/src/fields/types/image/views/index.d.ts.map +1 -0
  206. package/dist/declarations/src/fields/types/integer/index.d.ts +20 -0
  207. package/dist/declarations/src/fields/types/integer/index.d.ts.map +1 -0
  208. package/dist/declarations/src/fields/types/integer/views/index.d.ts +23 -0
  209. package/dist/declarations/src/fields/types/integer/views/index.d.ts.map +1 -0
  210. package/dist/declarations/src/fields/types/json/index.d.ts +25 -0
  211. package/dist/declarations/src/fields/types/json/index.d.ts.map +1 -0
  212. package/dist/declarations/src/fields/types/json/views/index.d.ts +9 -0
  213. package/dist/declarations/src/fields/types/json/views/index.d.ts.map +1 -0
  214. package/dist/declarations/src/fields/types/multiselect/index.d.ts +50 -0
  215. package/dist/declarations/src/fields/types/multiselect/index.d.ts.map +1 -0
  216. package/dist/declarations/src/fields/types/multiselect/views/index.d.ts +26 -0
  217. package/dist/declarations/src/fields/types/multiselect/views/index.d.ts.map +1 -0
  218. package/dist/declarations/src/fields/types/password/index.d.ts +49 -0
  219. package/dist/declarations/src/fields/types/password/index.d.ts.map +1 -0
  220. package/dist/declarations/src/fields/types/password/views/index.d.ts +47 -0
  221. package/dist/declarations/src/fields/types/password/views/index.d.ts.map +1 -0
  222. package/dist/declarations/src/fields/types/relationship/index.d.ts +113 -0
  223. package/dist/declarations/src/fields/types/relationship/index.d.ts.map +1 -0
  224. package/dist/declarations/src/fields/types/relationship/views/ComboboxMany.d.ts +26 -0
  225. package/dist/declarations/src/fields/types/relationship/views/ComboboxMany.d.ts.map +1 -0
  226. package/dist/declarations/src/fields/types/relationship/views/ComboboxSingle.d.ts +24 -0
  227. package/dist/declarations/src/fields/types/relationship/views/ComboboxSingle.d.ts.map +1 -0
  228. package/dist/declarations/src/fields/types/relationship/views/index.d.ts +27 -0
  229. package/dist/declarations/src/fields/types/relationship/views/index.d.ts.map +1 -0
  230. package/dist/declarations/src/fields/types/relationship/views/types.d.ts +39 -0
  231. package/dist/declarations/src/fields/types/relationship/views/types.d.ts.map +1 -0
  232. package/dist/declarations/src/fields/types/select/index.d.ts +42 -0
  233. package/dist/declarations/src/fields/types/select/index.d.ts.map +1 -0
  234. package/dist/declarations/src/fields/types/select/views/index.d.ts +32 -0
  235. package/dist/declarations/src/fields/types/select/views/index.d.ts.map +1 -0
  236. package/dist/declarations/src/fields/types/text/index.d.ts +58 -0
  237. package/dist/declarations/src/fields/types/text/index.d.ts.map +1 -0
  238. package/dist/declarations/src/fields/types/text/views/index.d.ts +36 -0
  239. package/dist/declarations/src/fields/types/text/views/index.d.ts.map +1 -0
  240. package/dist/declarations/src/fields/types/timestamp/index.d.ts +19 -0
  241. package/dist/declarations/src/fields/types/timestamp/index.d.ts.map +1 -0
  242. package/dist/declarations/src/fields/types/timestamp/views/index.d.ts +14 -0
  243. package/dist/declarations/src/fields/types/timestamp/views/index.d.ts.map +1 -0
  244. package/dist/declarations/src/fields/types/timestamp/views/utils.d.ts +14 -0
  245. package/dist/declarations/src/fields/types/timestamp/views/utils.d.ts.map +1 -0
  246. package/dist/declarations/src/fields/types/virtual/index.d.ts +40 -0
  247. package/dist/declarations/src/fields/types/virtual/index.d.ts.map +1 -0
  248. package/dist/declarations/src/fields/types/virtual/views/index.d.ts +7 -0
  249. package/dist/declarations/src/fields/types/virtual/views/index.d.ts.map +1 -0
  250. package/dist/declarations/src/graphql-ts.d.ts +5 -0
  251. package/dist/declarations/src/graphql-ts.d.ts.map +1 -0
  252. package/dist/declarations/src/helpers.d.ts +121 -0
  253. package/dist/declarations/src/helpers.d.ts.map +1 -0
  254. package/dist/declarations/src/index.d.ts +6 -0
  255. package/dist/declarations/src/index.d.ts.map +1 -0
  256. package/dist/declarations/src/lib/admin-meta.d.ts +71 -0
  257. package/dist/declarations/src/lib/admin-meta.d.ts.map +1 -0
  258. package/dist/declarations/src/lib/core/access-control.d.ts +39 -0
  259. package/dist/declarations/src/lib/core/access-control.d.ts.map +1 -0
  260. package/dist/declarations/src/lib/core/initialise-lists.d.ts +131 -0
  261. package/dist/declarations/src/lib/core/initialise-lists.d.ts.map +1 -0
  262. package/dist/declarations/src/lib/core/resolve-relationships.d.ts +30 -0
  263. package/dist/declarations/src/lib/core/resolve-relationships.d.ts.map +1 -0
  264. package/dist/declarations/src/lib/core/where-inputs.d.ts +15 -0
  265. package/dist/declarations/src/lib/core/where-inputs.d.ts.map +1 -0
  266. package/dist/declarations/src/lib/express.d.ts +10 -0
  267. package/dist/declarations/src/lib/express.d.ts.map +1 -0
  268. package/dist/declarations/src/lib/migrations.d.ts +13 -0
  269. package/dist/declarations/src/lib/migrations.d.ts.map +1 -0
  270. package/dist/declarations/src/lib/system.d.ts +35 -0
  271. package/dist/declarations/src/lib/system.d.ts.map +1 -0
  272. package/dist/declarations/src/schema.d.ts +40 -0
  273. package/dist/declarations/src/schema.d.ts.map +1 -0
  274. package/dist/declarations/src/scripts/cli.d.ts +11 -0
  275. package/dist/declarations/src/scripts/cli.d.ts.map +1 -0
  276. package/dist/declarations/src/scripts/index.d.ts +2 -0
  277. package/dist/declarations/src/scripts/index.d.ts.map +1 -0
  278. package/dist/declarations/src/scripts/utils.d.ts +7 -0
  279. package/dist/declarations/src/scripts/utils.d.ts.map +1 -0
  280. package/dist/declarations/src/session.d.ts +86 -0
  281. package/dist/declarations/src/session.d.ts.map +1 -0
  282. package/dist/declarations/src/testing.d.ts +2 -0
  283. package/dist/declarations/src/testing.d.ts.map +1 -0
  284. package/dist/declarations/src/types/admin-meta.d.ts +190 -0
  285. package/dist/declarations/src/types/admin-meta.d.ts.map +1 -0
  286. package/dist/declarations/src/types/config/access-control.d.ts +108 -0
  287. package/dist/declarations/src/types/config/access-control.d.ts.map +1 -0
  288. package/dist/declarations/src/types/config/fields.d.ts +67 -0
  289. package/dist/declarations/src/types/config/fields.d.ts.map +1 -0
  290. package/dist/declarations/src/types/config/hooks.d.ts +441 -0
  291. package/dist/declarations/src/types/config/hooks.d.ts.map +1 -0
  292. package/dist/declarations/src/types/config/index.d.ts +283 -0
  293. package/dist/declarations/src/types/config/index.d.ts.map +1 -0
  294. package/dist/declarations/src/types/config/lists.d.ts +430 -0
  295. package/dist/declarations/src/types/config/lists.d.ts.map +1 -0
  296. package/dist/declarations/src/types/context.d.ts +458 -0
  297. package/dist/declarations/src/types/context.d.ts.map +1 -0
  298. package/dist/declarations/src/types/core.d.ts +9 -0
  299. package/dist/declarations/src/types/core.d.ts.map +1 -0
  300. package/dist/declarations/src/types/index.d.ts +9 -0
  301. package/dist/declarations/src/types/index.d.ts.map +1 -0
  302. package/dist/declarations/src/types/next-fields.d.ts +308 -0
  303. package/dist/declarations/src/types/next-fields.d.ts.map +1 -0
  304. package/dist/declarations/src/types/prisma.d.ts +13 -0
  305. package/dist/declarations/src/types/prisma.d.ts.map +1 -0
  306. package/dist/declarations/src/types/schema/g.d.ts +7 -0
  307. package/dist/declarations/src/types/schema/g.d.ts.map +1 -0
  308. package/dist/declarations/src/types/schema/gWithContext.d.ts +12 -0
  309. package/dist/declarations/src/types/schema/gWithContext.d.ts.map +1 -0
  310. package/dist/declarations/src/types/schema/index.d.ts +4 -0
  311. package/dist/declarations/src/types/schema/index.d.ts.map +1 -0
  312. package/dist/declarations/src/types/schema/legacy-alias.d.ts +28 -0
  313. package/dist/declarations/src/types/schema/scalars.d.ts +22 -0
  314. package/dist/declarations/src/types/schema/scalars.d.ts.map +1 -0
  315. package/dist/declarations/src/types/session.d.ts +28 -0
  316. package/dist/declarations/src/types/session.d.ts.map +1 -0
  317. package/dist/declarations/src/types/type-info.d.ts +35 -0
  318. package/dist/declarations/src/types/type-info.d.ts.map +1 -0
  319. package/dist/declarations/src/types/utils.d.ts +78 -0
  320. package/dist/declarations/src/types/utils.d.ts.map +1 -0
  321. package/dist/declarations/types/dist/nixxie-cms-core-types.cjs.d.ts +2 -0
  322. package/dist/express-6743b918.esm.js +476 -0
  323. package/dist/express-e9ed9a7d.cjs.js +495 -0
  324. package/dist/filters-8c8616f9.esm.js +89 -0
  325. package/dist/filters-b3e5eb50.cjs.js +96 -0
  326. package/dist/index-24b78415.esm.js +419 -0
  327. package/dist/index-ac01583b.cjs.js +425 -0
  328. package/dist/migrations-996e66a0.esm.js +76 -0
  329. package/dist/migrations-ab2e0fd4.cjs.js +78 -0
  330. package/dist/next-fields-49c025ef.cjs.js +251 -0
  331. package/dist/next-fields-9bf04ed8.esm.js +241 -0
  332. package/dist/nixxie-cms-core.cjs.d.ts +2 -0
  333. package/dist/nixxie-cms-core.cjs.js +522 -0
  334. package/dist/nixxie-cms-core.esm.js +504 -0
  335. package/dist/non-null-graphql-17b83ddc.cjs.js +72 -0
  336. package/dist/non-null-graphql-5315718c.esm.js +67 -0
  337. package/dist/pick-5fe45878.cjs.js +71 -0
  338. package/dist/pick-b7ef3115.esm.js +68 -0
  339. package/dist/resolve-hooks-17aafd37.esm.js +2026 -0
  340. package/dist/resolve-hooks-66fe8a8e.cjs.js +2043 -0
  341. package/dist/system-48c5f6df.cjs.js +4283 -0
  342. package/dist/system-dfec2f0a.esm.js +4273 -0
  343. package/dist/useCreateItem-1be4987e.cjs.js +160 -0
  344. package/dist/useCreateItem-1f94d252.esm.js +157 -0
  345. package/dist/useFilter-0b5a1ee6.esm.js +118 -0
  346. package/dist/useFilter-1a4e6900.cjs.js +120 -0
  347. package/dist/utils-0cc426c8.esm.js +19 -0
  348. package/dist/utils-1b632a8f.cjs.js +21 -0
  349. package/dist/utils-230cddb1.cjs.js +150 -0
  350. package/dist/utils-5e1d4d28.esm.js +138 -0
  351. package/dist/utils-b031e11c.cjs.js +49 -0
  352. package/dist/utils-e74e3527.cjs.js +87 -0
  353. package/dist/utils-ef2cd0f4.esm.js +80 -0
  354. package/dist/utils-f9556354.esm.js +41 -0
  355. package/fields/dist/nixxie-cms-core-fields.cjs.d.ts +2 -0
  356. package/fields/dist/nixxie-cms-core-fields.cjs.js +1808 -0
  357. package/fields/dist/nixxie-cms-core-fields.esm.js +1785 -0
  358. package/fields/package.json +4 -0
  359. package/fields/types/bigInt/views/dist/nixxie-cms-core-fields-types-bigInt-views.cjs.d.ts +2 -0
  360. package/fields/types/bigInt/views/dist/nixxie-cms-core-fields-types-bigInt-views.cjs.js +258 -0
  361. package/fields/types/bigInt/views/dist/nixxie-cms-core-fields-types-bigInt-views.esm.js +253 -0
  362. package/fields/types/bigInt/views/package.json +4 -0
  363. package/fields/types/bytes/dist/nixxie-cms-core-fields-types-bytes.cjs.d.ts +2 -0
  364. package/fields/types/bytes/dist/nixxie-cms-core-fields-types-bytes.cjs.js +221 -0
  365. package/fields/types/bytes/dist/nixxie-cms-core-fields-types-bytes.esm.js +216 -0
  366. package/fields/types/bytes/package.json +4 -0
  367. package/fields/types/bytes/views/dist/nixxie-cms-core-fields-types-bytes-views.cjs.d.ts +2 -0
  368. package/fields/types/bytes/views/dist/nixxie-cms-core-fields-types-bytes-views.cjs.js +239 -0
  369. package/fields/types/bytes/views/dist/nixxie-cms-core-fields-types-bytes-views.esm.js +234 -0
  370. package/fields/types/bytes/views/package.json +4 -0
  371. package/fields/types/calendarDay/views/dist/nixxie-cms-core-fields-types-calendarDay-views.cjs.d.ts +2 -0
  372. package/fields/types/calendarDay/views/dist/nixxie-cms-core-fields-types-calendarDay-views.cjs.js +147 -0
  373. package/fields/types/calendarDay/views/dist/nixxie-cms-core-fields-types-calendarDay-views.esm.js +141 -0
  374. package/fields/types/calendarDay/views/package.json +4 -0
  375. package/fields/types/checkbox/views/dist/nixxie-cms-core-fields-types-checkbox-views.cjs.d.ts +2 -0
  376. package/fields/types/checkbox/views/dist/nixxie-cms-core-fields-types-checkbox-views.cjs.js +126 -0
  377. package/fields/types/checkbox/views/dist/nixxie-cms-core-fields-types-checkbox-views.esm.js +120 -0
  378. package/fields/types/checkbox/views/package.json +4 -0
  379. package/fields/types/decimal/views/dist/nixxie-cms-core-fields-types-decimal-views.cjs.d.ts +2 -0
  380. package/fields/types/decimal/views/dist/nixxie-cms-core-fields-types-decimal-views.cjs.js +248 -0
  381. package/fields/types/decimal/views/dist/nixxie-cms-core-fields-types-decimal-views.esm.js +239 -0
  382. package/fields/types/decimal/views/package.json +4 -0
  383. package/fields/types/file/utils/package.json +4 -0
  384. package/fields/types/file/views/dist/nixxie-cms-core-fields-types-file-views.cjs.d.ts +2 -0
  385. package/fields/types/file/views/dist/nixxie-cms-core-fields-types-file-views.cjs.js +86 -0
  386. package/fields/types/file/views/dist/nixxie-cms-core-fields-types-file-views.esm.js +81 -0
  387. package/fields/types/file/views/package.json +4 -0
  388. package/fields/types/float/views/dist/nixxie-cms-core-fields-types-float-views.cjs.d.ts +2 -0
  389. package/fields/types/float/views/dist/nixxie-cms-core-fields-types-float-views.cjs.js +237 -0
  390. package/fields/types/float/views/dist/nixxie-cms-core-fields-types-float-views.esm.js +232 -0
  391. package/fields/types/float/views/package.json +4 -0
  392. package/fields/types/image/utils/dist/nixxie-cms-core-fields-types-image-utils.cjs.d.ts +2 -0
  393. package/fields/types/image/utils/dist/nixxie-cms-core-fields-types-image-utils.cjs.js +7 -0
  394. package/fields/types/image/utils/dist/nixxie-cms-core-fields-types-image-utils.esm.js +3 -0
  395. package/fields/types/image/utils/package.json +4 -0
  396. package/fields/types/image/views/dist/nixxie-cms-core-fields-types-image-views.cjs.d.ts +2 -0
  397. package/fields/types/image/views/dist/nixxie-cms-core-fields-types-image-views.cjs.js +361 -0
  398. package/fields/types/image/views/dist/nixxie-cms-core-fields-types-image-views.esm.js +354 -0
  399. package/fields/types/image/views/package.json +4 -0
  400. package/fields/types/integer/views/dist/nixxie-cms-core-fields-types-integer-views.cjs.d.ts +2 -0
  401. package/fields/types/integer/views/dist/nixxie-cms-core-fields-types-integer-views.cjs.js +254 -0
  402. package/fields/types/integer/views/dist/nixxie-cms-core-fields-types-integer-views.esm.js +249 -0
  403. package/fields/types/integer/views/package.json +4 -0
  404. package/fields/types/json/views/dist/nixxie-cms-core-fields-types-json-views.cjs.d.ts +2 -0
  405. package/fields/types/json/views/dist/nixxie-cms-core-fields-types-json-views.cjs.js +83 -0
  406. package/fields/types/json/views/dist/nixxie-cms-core-fields-types-json-views.esm.js +77 -0
  407. package/fields/types/json/views/package.json +4 -0
  408. package/fields/types/multiselect/views/dist/nixxie-cms-core-fields-types-multiselect-views.cjs.d.ts +2 -0
  409. package/fields/types/multiselect/views/dist/nixxie-cms-core-fields-types-multiselect-views.cjs.js +147 -0
  410. package/fields/types/multiselect/views/dist/nixxie-cms-core-fields-types-multiselect-views.esm.js +141 -0
  411. package/fields/types/multiselect/views/package.json +4 -0
  412. package/fields/types/password/dist/nixxie-cms-core-fields-types-password.cjs.d.ts +2 -0
  413. package/fields/types/password/dist/nixxie-cms-core-fields-types-password.cjs.js +206 -0
  414. package/fields/types/password/dist/nixxie-cms-core-fields-types-password.esm.js +196 -0
  415. package/fields/types/password/package.json +4 -0
  416. package/fields/types/password/views/dist/nixxie-cms-core-fields-types-password-views.cjs.d.ts +2 -0
  417. package/fields/types/password/views/dist/nixxie-cms-core-fields-types-password-views.cjs.js +330 -0
  418. package/fields/types/password/views/dist/nixxie-cms-core-fields-types-password-views.esm.js +320 -0
  419. package/fields/types/password/views/package.json +4 -0
  420. package/fields/types/relationship/views/RelationshipSelect/package.json +4 -0
  421. package/fields/types/relationship/views/dist/nixxie-cms-core-fields-types-relationship-views.cjs.d.ts +2 -0
  422. package/fields/types/relationship/views/dist/nixxie-cms-core-fields-types-relationship-views.cjs.js +1213 -0
  423. package/fields/types/relationship/views/dist/nixxie-cms-core-fields-types-relationship-views.esm.js +1201 -0
  424. package/fields/types/relationship/views/package.json +4 -0
  425. package/fields/types/select/views/dist/nixxie-cms-core-fields-types-select-views.cjs.d.ts +2 -0
  426. package/fields/types/select/views/dist/nixxie-cms-core-fields-types-select-views.cjs.js +422 -0
  427. package/fields/types/select/views/dist/nixxie-cms-core-fields-types-select-views.esm.js +416 -0
  428. package/fields/types/select/views/package.json +4 -0
  429. package/fields/types/text/views/dist/nixxie-cms-core-fields-types-text-views.cjs.d.ts +2 -0
  430. package/fields/types/text/views/dist/nixxie-cms-core-fields-types-text-views.cjs.js +316 -0
  431. package/fields/types/text/views/dist/nixxie-cms-core-fields-types-text-views.esm.js +311 -0
  432. package/fields/types/text/views/package.json +4 -0
  433. package/fields/types/timestamp/views/dist/nixxie-cms-core-fields-types-timestamp-views.cjs.d.ts +2 -0
  434. package/fields/types/timestamp/views/dist/nixxie-cms-core-fields-types-timestamp-views.cjs.js +285 -0
  435. package/fields/types/timestamp/views/dist/nixxie-cms-core-fields-types-timestamp-views.esm.js +279 -0
  436. package/fields/types/timestamp/views/package.json +4 -0
  437. package/fields/types/virtual/views/dist/nixxie-cms-core-fields-types-virtual-views.cjs.d.ts +2 -0
  438. package/fields/types/virtual/views/dist/nixxie-cms-core-fields-types-virtual-views.cjs.js +54 -0
  439. package/fields/types/virtual/views/dist/nixxie-cms-core-fields-types-virtual-views.esm.js +48 -0
  440. package/fields/types/virtual/views/package.json +4 -0
  441. package/graphql-ts/dist/nixxie-cms-core-graphql-ts.cjs.d.ts +2 -0
  442. package/graphql-ts/dist/nixxie-cms-core-graphql-ts.cjs.js +45 -0
  443. package/graphql-ts/dist/nixxie-cms-core-graphql-ts.esm.js +2 -0
  444. package/graphql-ts/package.json +4 -0
  445. package/package.json +339 -0
  446. package/schema/package.json +4 -0
  447. package/scripts/cli/dist/nixxie-cms-core-scripts-cli.cjs.d.ts +2 -0
  448. package/scripts/cli/dist/nixxie-cms-core-scripts-cli.cjs.js +1607 -0
  449. package/scripts/cli/dist/nixxie-cms-core-scripts-cli.esm.js +1586 -0
  450. package/scripts/cli/package.json +4 -0
  451. package/scripts/dist/nixxie-cms-core-scripts.cjs.d.ts +2 -0
  452. package/scripts/dist/nixxie-cms-core-scripts.cjs.js +73 -0
  453. package/scripts/dist/nixxie-cms-core-scripts.esm.js +71 -0
  454. package/scripts/package.json +4 -0
  455. package/session/dist/nixxie-cms-core-session.cjs.d.ts +2 -0
  456. package/session/dist/nixxie-cms-core-session.cjs.js +157 -0
  457. package/session/dist/nixxie-cms-core-session.esm.js +129 -0
  458. package/session/package.json +4 -0
  459. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/id-field-view.tsx +167 -0
  460. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/App/index.tsx +22 -0
  461. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/CreateItemPage/index.tsx +71 -0
  462. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/HomePage/index.tsx +333 -0
  463. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ItemPage/common.tsx +358 -0
  464. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ItemPage/index.tsx +483 -0
  465. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/FilterAdd.tsx +221 -0
  466. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/PaginationControls.tsx +170 -0
  467. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/Tag.tsx +72 -0
  468. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/ListPage/index.tsx +1006 -0
  469. package/src/___internal-do-not-use-will-break-in-patch/admin-ui/pages/NoAccessPage/index.tsx +24 -0
  470. package/src/___internal-do-not-use-will-break-in-patch/artifacts.ts +5 -0
  471. package/src/access.ts +25 -0
  472. package/src/admin-ui/admin-meta-graphql.ts +168 -0
  473. package/src/admin-ui/apollo.tsx +35 -0
  474. package/src/admin-ui/components/CellContainer.tsx +6 -0
  475. package/src/admin-ui/components/CommandPalette.tsx +431 -0
  476. package/src/admin-ui/components/Container.tsx +14 -0
  477. package/src/admin-ui/components/CreateButtonLink.tsx +46 -0
  478. package/src/admin-ui/components/CreateItemDialog.tsx +56 -0
  479. package/src/admin-ui/components/EmptyState.tsx +52 -0
  480. package/src/admin-ui/components/Errors.tsx +130 -0
  481. package/src/admin-ui/components/GraphQLErrorNotice.tsx +78 -0
  482. package/src/admin-ui/components/InlineCode.tsx +17 -0
  483. package/src/admin-ui/components/Logo.tsx +70 -0
  484. package/src/admin-ui/components/Navigation.tsx +385 -0
  485. package/src/admin-ui/components/NullableFieldWrapper.tsx +72 -0
  486. package/src/admin-ui/components/PageContainer.tsx +310 -0
  487. package/src/admin-ui/components/WelcomeDialog.tsx +119 -0
  488. package/src/admin-ui/components/index.ts +23 -0
  489. package/src/admin-ui/context.tsx +338 -0
  490. package/src/admin-ui/image.tsx +2 -0
  491. package/src/admin-ui/index.tsx +1 -0
  492. package/src/admin-ui/router.tsx +24 -0
  493. package/src/admin-ui/system/generateAdminUI.ts +155 -0
  494. package/src/admin-ui/system/index.ts +1 -0
  495. package/src/admin-ui/templates/app.ts +60 -0
  496. package/src/admin-ui/templates/create-item.ts +5 -0
  497. package/src/admin-ui/templates/home.ts +2 -0
  498. package/src/admin-ui/templates/index.ts +53 -0
  499. package/src/admin-ui/templates/item.tsx +5 -0
  500. package/src/admin-ui/templates/list.tsx +5 -0
  501. package/src/admin-ui/templates/next-config.ts +16 -0
  502. package/src/admin-ui/templates/no-access.ts +7 -0
  503. package/src/admin-ui/utils/Fields.tsx +241 -0
  504. package/src/admin-ui/utils/actionData.ts +36 -0
  505. package/src/admin-ui/utils/filters.ts +148 -0
  506. package/src/admin-ui/utils/index.ts +10 -0
  507. package/src/admin-ui/utils/pick.ts +12 -0
  508. package/src/admin-ui/utils/useCreateItem.ts +171 -0
  509. package/src/admin-ui/utils/usePreventNavigation.tsx +31 -0
  510. package/src/admin-ui/utils/utils.tsx +127 -0
  511. package/src/artifacts.ts +110 -0
  512. package/src/context.ts +1 -0
  513. package/src/fields/filters/enum-filter.ts +77 -0
  514. package/src/fields/filters/index.ts +1 -0
  515. package/src/fields/filters/internal.ts +89 -0
  516. package/src/fields/filters/providers/mysql.ts +450 -0
  517. package/src/fields/filters/providers/postgresql.ts +448 -0
  518. package/src/fields/filters/providers/sqlite.ts +442 -0
  519. package/src/fields/index.ts +34 -0
  520. package/src/fields/non-null-graphql.ts +115 -0
  521. package/src/fields/resolve-hooks.ts +61 -0
  522. package/src/fields/types/bigInt/index.ts +181 -0
  523. package/src/fields/types/bigInt/views/index.tsx +254 -0
  524. package/src/fields/types/bytes/index.ts +275 -0
  525. package/src/fields/types/bytes/views/index.tsx +190 -0
  526. package/src/fields/types/calendarDay/index.ts +194 -0
  527. package/src/fields/types/calendarDay/views/index.tsx +144 -0
  528. package/src/fields/types/checkbox/index.ts +76 -0
  529. package/src/fields/types/checkbox/views/index.tsx +97 -0
  530. package/src/fields/types/decimal/index.ts +182 -0
  531. package/src/fields/types/decimal/views/index.tsx +215 -0
  532. package/src/fields/types/file/index.ts +168 -0
  533. package/src/fields/types/file/views/Field.tsx +300 -0
  534. package/src/fields/types/file/views/index.tsx +74 -0
  535. package/src/fields/types/float/index.ts +133 -0
  536. package/src/fields/types/float/views/index.tsx +215 -0
  537. package/src/fields/types/image/index.ts +244 -0
  538. package/src/fields/types/image/internal-utils.ts +58 -0
  539. package/src/fields/types/image/utils.ts +1 -0
  540. package/src/fields/types/image/views/Field.tsx +295 -0
  541. package/src/fields/types/image/views/index.tsx +92 -0
  542. package/src/fields/types/integer/index.ts +156 -0
  543. package/src/fields/types/integer/views/index.tsx +255 -0
  544. package/src/fields/types/json/index.ts +77 -0
  545. package/src/fields/types/json/views/index.tsx +76 -0
  546. package/src/fields/types/multiselect/index.ts +212 -0
  547. package/src/fields/types/multiselect/views/index.tsx +151 -0
  548. package/src/fields/types/password/index.ts +241 -0
  549. package/src/fields/types/password/views/index.tsx +342 -0
  550. package/src/fields/types/relationship/index.ts +381 -0
  551. package/src/fields/types/relationship/views/ComboboxMany.tsx +110 -0
  552. package/src/fields/types/relationship/views/ComboboxSingle.tsx +115 -0
  553. package/src/fields/types/relationship/views/ContextualActions.tsx +139 -0
  554. package/src/fields/types/relationship/views/RelationshipTable.tsx +190 -0
  555. package/src/fields/types/relationship/views/index.tsx +492 -0
  556. package/src/fields/types/relationship/views/types.ts +46 -0
  557. package/src/fields/types/relationship/views/useApolloQuery.ts +185 -0
  558. package/src/fields/types/relationship/views/useFilter.tsx +109 -0
  559. package/src/fields/types/select/index.ts +226 -0
  560. package/src/fields/types/select/views/SegmentedControl.tsx +83 -0
  561. package/src/fields/types/select/views/index.tsx +318 -0
  562. package/src/fields/types/text/index.ts +207 -0
  563. package/src/fields/types/text/views/index.tsx +273 -0
  564. package/src/fields/types/timestamp/index.ts +116 -0
  565. package/src/fields/types/timestamp/views/__tests__/index.tsx +68 -0
  566. package/src/fields/types/timestamp/views/__tests__/utils.tsx +16 -0
  567. package/src/fields/types/timestamp/views/index.tsx +262 -0
  568. package/src/fields/types/timestamp/views/utils.ts +22 -0
  569. package/src/fields/types/virtual/index.ts +108 -0
  570. package/src/fields/types/virtual/views/index.tsx +53 -0
  571. package/src/graphql-ts.ts +32 -0
  572. package/src/helpers.ts +316 -0
  573. package/src/index.ts +20 -0
  574. package/src/lib/admin-meta-graphql.ts +407 -0
  575. package/src/lib/admin-meta.ts +369 -0
  576. package/src/lib/coerceAndValidateForGraphQLInput.ts +29 -0
  577. package/src/lib/context/api.ts +99 -0
  578. package/src/lib/context/createContext.ts +161 -0
  579. package/src/lib/context/graphql.ts +300 -0
  580. package/src/lib/core/access-control.ts +434 -0
  581. package/src/lib/core/field-assertions.ts +118 -0
  582. package/src/lib/core/filter-order-access.ts +48 -0
  583. package/src/lib/core/graphql-errors.ts +76 -0
  584. package/src/lib/core/hooks.ts +111 -0
  585. package/src/lib/core/initialise-lists.ts +1097 -0
  586. package/src/lib/core/mutations/index.ts +917 -0
  587. package/src/lib/core/mutations/nested-mutation-many-input-resolvers.ts +145 -0
  588. package/src/lib/core/mutations/nested-mutation-one-input-resolvers.ts +71 -0
  589. package/src/lib/core/prisma-schema-printer.ts +256 -0
  590. package/src/lib/core/queries/index.ts +66 -0
  591. package/src/lib/core/queries/output-field.ts +178 -0
  592. package/src/lib/core/queries/resolvers.ts +258 -0
  593. package/src/lib/core/resolve-relationships.ts +303 -0
  594. package/src/lib/core/utils.ts +56 -0
  595. package/src/lib/core/where-inputs.ts +130 -0
  596. package/src/lib/express.ts +109 -0
  597. package/src/lib/graphql.ts +83 -0
  598. package/src/lib/id-field.ts +214 -0
  599. package/src/lib/middleware.ts +68 -0
  600. package/src/lib/migrations.ts +90 -0
  601. package/src/lib/otel.ts +43 -0
  602. package/src/lib/prompts.ts +29 -0
  603. package/src/lib/system.ts +207 -0
  604. package/src/lib/telemetry.ts +342 -0
  605. package/src/lib/typescript-schema-printer.ts +227 -0
  606. package/src/lib/utils.ts +21 -0
  607. package/src/pkg-dir.ts +6 -0
  608. package/src/schema.ts +233 -0
  609. package/src/scripts/build.ts +64 -0
  610. package/src/scripts/cli.ts +124 -0
  611. package/src/scripts/dev.ts +452 -0
  612. package/src/scripts/esbuild.ts +120 -0
  613. package/src/scripts/index.ts +20 -0
  614. package/src/scripts/migrate.ts +214 -0
  615. package/src/scripts/prisma.ts +49 -0
  616. package/src/scripts/start.ts +76 -0
  617. package/src/scripts/telemetry.ts +37 -0
  618. package/src/scripts/utils.ts +22 -0
  619. package/src/session.ts +168 -0
  620. package/src/testing.ts +23 -0
  621. package/src/types/admin-meta.ts +218 -0
  622. package/src/types/config/access-control.ts +186 -0
  623. package/src/types/config/fields.ts +96 -0
  624. package/src/types/config/hooks.ts +529 -0
  625. package/src/types/config/index.ts +333 -0
  626. package/src/types/config/lists.ts +565 -0
  627. package/src/types/context.ts +530 -0
  628. package/src/types/core.ts +16 -0
  629. package/src/types/index.ts +8 -0
  630. package/src/types/next-fields.ts +499 -0
  631. package/src/types/prisma.ts +16 -0
  632. package/src/types/schema/g.ts +5 -0
  633. package/src/types/schema/gWithContext.ts +20 -0
  634. package/src/types/schema/index.ts +4 -0
  635. package/src/types/schema/legacy-alias.d.ts +28 -0
  636. package/src/types/schema/legacy-alias.js +1 -0
  637. package/src/types/schema/scalars.ts +220 -0
  638. package/src/types/session.ts +26 -0
  639. package/src/types/telemetry.ts +51 -0
  640. package/src/types/type-info.ts +38 -0
  641. package/src/types/type-tests.ts +21 -0
  642. package/src/types/utils.ts +108 -0
  643. package/static/admin-error.html +53 -0
  644. package/static/dev-loading.html +146 -0
  645. package/static/favicon.ico +0 -0
  646. package/static/favicon.svg +4 -0
  647. package/system/package.json +4 -0
  648. package/testing/dist/nixxie-cms-core-testing.cjs.d.ts +2 -0
  649. package/testing/dist/nixxie-cms-core-testing.cjs.js +29 -0
  650. package/testing/dist/nixxie-cms-core-testing.esm.js +21 -0
  651. package/testing/package.json +4 -0
  652. package/tests/conditional-filters.test.ts +326 -0
  653. package/tests/telemetry.test.ts +361 -0
  654. package/tsconfig.json +20 -0
  655. package/types/dist/nixxie-cms-core-types.cjs.d.ts +2 -0
  656. package/types/dist/nixxie-cms-core-types.cjs.js +29 -0
  657. package/types/dist/nixxie-cms-core-types.esm.js +9 -0
  658. package/types/package.json +4 -0
@@ -0,0 +1,1129 @@
1
+ import NextHead from 'next/head';
2
+ import { useState, useRef, useMemo, useEffect } from 'react';
3
+ import { css } from '@keystar/ui/style';
4
+ import NextLink from 'next/link';
5
+ import { u as useNixxie } from './context-3132c3ed.esm.js';
6
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
+ import { useRouter } from 'next/router';
8
+
9
+ function Logo() {
10
+ var _adminConfig$componen;
11
+ const {
12
+ adminConfig
13
+ } = useNixxie();
14
+ if (adminConfig !== null && adminConfig !== void 0 && (_adminConfig$componen = adminConfig.components) !== null && _adminConfig$componen !== void 0 && _adminConfig$componen.Logo) return /*#__PURE__*/jsx(adminConfig.components.Logo, {});
15
+ return /*#__PURE__*/jsx(DefaultLogo, {});
16
+ }
17
+ function DefaultLogo() {
18
+ return /*#__PURE__*/jsxs(NextLink, {
19
+ href: "/",
20
+ className: css({
21
+ display: 'flex',
22
+ alignItems: 'center',
23
+ gap: '9px',
24
+ textDecoration: 'none',
25
+ outline: 0,
26
+ flexShrink: 0,
27
+ '&:focus-visible': {
28
+ outline: '2px solid #000',
29
+ outlineOffset: 3,
30
+ borderRadius: 4
31
+ }
32
+ }),
33
+ children: [/*#__PURE__*/jsx("span", {
34
+ className: css({
35
+ display: 'inline-flex',
36
+ alignItems: 'center',
37
+ justifyContent: 'center',
38
+ width: 28,
39
+ height: 28,
40
+ borderRadius: 6,
41
+ backgroundColor: '#000000',
42
+ flexShrink: 0
43
+ }),
44
+ children: /*#__PURE__*/jsx("svg", {
45
+ width: "13",
46
+ height: "13",
47
+ viewBox: "0 0 14 14",
48
+ fill: "none",
49
+ children: /*#__PURE__*/jsx("path", {
50
+ d: "M2.5 11V3L11.5 11V3",
51
+ stroke: "white",
52
+ strokeWidth: "1.8",
53
+ strokeLinecap: "round",
54
+ strokeLinejoin: "round"
55
+ })
56
+ })
57
+ }), /*#__PURE__*/jsx("span", {
58
+ className: css({
59
+ fontSize: 14,
60
+ fontWeight: 600,
61
+ letterSpacing: '-0.03em',
62
+ color: '#0a0a0a',
63
+ lineHeight: 1,
64
+ fontFamily: "'Inter', -apple-system, BlinkMacSystemFont, sans-serif"
65
+ }),
66
+ children: "Nixxie"
67
+ })]
68
+ });
69
+ }
70
+
71
+ function getHrefFromList(list) {
72
+ return `/${list.path}${list.isSingleton ? '/1' : ''}`;
73
+ }
74
+
75
+ // ================================================================
76
+ // Nav Item — minimal, text-only, precise
77
+ // ================================================================
78
+
79
+ function NavItem({
80
+ href,
81
+ children,
82
+ onClick,
83
+ indent
84
+ }) {
85
+ const router = useRouter();
86
+ const segment = href.split('/')[1];
87
+ const isActive = router.pathname === href || segment && router.pathname.split('/')[1] === segment && href !== '/';
88
+ return /*#__PURE__*/jsxs("a", {
89
+ href: href,
90
+ onClick: e => {
91
+ e.preventDefault();
92
+ onClick === null || onClick === void 0 || onClick();
93
+ router.push(href);
94
+ },
95
+ "aria-current": isActive ? 'page' : undefined,
96
+ className: css({
97
+ position: 'relative',
98
+ display: 'flex',
99
+ alignItems: 'center',
100
+ paddingInline: indent ? '32px 16px' : '16px',
101
+ paddingBlock: '7px',
102
+ fontSize: 13,
103
+ fontWeight: isActive ? 500 : 400,
104
+ color: isActive ? '#0a0a0a' : '#636363',
105
+ backgroundColor: isActive ? '#f5f5f5' : 'transparent',
106
+ textDecoration: 'none',
107
+ borderRadius: '0 6px 6px 0',
108
+ marginRight: '12px',
109
+ lineHeight: '1.4',
110
+ cursor: 'pointer',
111
+ userSelect: 'none',
112
+ transition: 'color 120ms, background-color 120ms',
113
+ '&:hover': {
114
+ color: '#0a0a0a',
115
+ backgroundColor: '#f5f5f5'
116
+ }
117
+ }),
118
+ children: [isActive && /*#__PURE__*/jsx("span", {
119
+ className: css({
120
+ position: 'absolute',
121
+ left: 0,
122
+ top: '20%',
123
+ bottom: '20%',
124
+ width: 2,
125
+ borderRadius: '0 2px 2px 0',
126
+ backgroundColor: '#000000'
127
+ })
128
+ }), /*#__PURE__*/jsx("span", {
129
+ className: css({
130
+ overflow: 'hidden',
131
+ textOverflow: 'ellipsis',
132
+ whiteSpace: 'nowrap'
133
+ }),
134
+ children: children
135
+ })]
136
+ });
137
+ }
138
+
139
+ // ================================================================
140
+ // Section label
141
+ // ================================================================
142
+
143
+ function SectionLabel({
144
+ children,
145
+ action
146
+ }) {
147
+ return /*#__PURE__*/jsxs("div", {
148
+ className: css({
149
+ display: 'flex',
150
+ alignItems: 'center',
151
+ justifyContent: 'space-between',
152
+ paddingInline: '16px 12px',
153
+ paddingBlock: '12px 4px'
154
+ }),
155
+ children: [/*#__PURE__*/jsx("span", {
156
+ className: css({
157
+ fontSize: 10,
158
+ fontWeight: 600,
159
+ letterSpacing: '0.10em',
160
+ textTransform: 'uppercase',
161
+ color: '#b8b8b8'
162
+ }),
163
+ children: children
164
+ }), action]
165
+ });
166
+ }
167
+
168
+ // ================================================================
169
+ // Divider
170
+ // ================================================================
171
+
172
+ function NavDivider() {
173
+ return /*#__PURE__*/jsx("div", {
174
+ className: css({
175
+ height: 1,
176
+ marginInline: '16px',
177
+ marginBlock: '6px',
178
+ backgroundColor: '#f2f2f2'
179
+ })
180
+ });
181
+ }
182
+
183
+ // ================================================================
184
+ // Search shortcut — Cmd+K trigger
185
+ // ================================================================
186
+
187
+ function SearchTrigger({
188
+ onClick
189
+ }) {
190
+ return /*#__PURE__*/jsxs("button", {
191
+ onClick: onClick,
192
+ className: css({
193
+ display: 'flex',
194
+ alignItems: 'center',
195
+ gap: 8,
196
+ width: 'calc(100% - 24px)',
197
+ marginInline: '12px',
198
+ marginBottom: '8px',
199
+ paddingInline: '10px',
200
+ paddingBlock: '7px',
201
+ borderRadius: 6,
202
+ border: '1px solid #ebebeb',
203
+ backgroundColor: '#f5f5f5',
204
+ color: '#a3a3a3',
205
+ fontSize: 12.5,
206
+ cursor: 'pointer',
207
+ textAlign: 'left',
208
+ transition: 'border-color 140ms, background 140ms, color 140ms',
209
+ '&:hover': {
210
+ borderColor: '#dedede',
211
+ backgroundColor: '#efefef',
212
+ color: '#737373'
213
+ },
214
+ '&:focus-visible': {
215
+ outline: '2px solid #000',
216
+ outlineOffset: 2
217
+ }
218
+ }),
219
+ children: [/*#__PURE__*/jsxs("svg", {
220
+ width: "12",
221
+ height: "12",
222
+ viewBox: "0 0 12 12",
223
+ fill: "none",
224
+ style: {
225
+ flexShrink: 0
226
+ },
227
+ children: [/*#__PURE__*/jsx("circle", {
228
+ cx: "5",
229
+ cy: "5",
230
+ r: "3.5",
231
+ stroke: "currentColor",
232
+ strokeWidth: "1.25"
233
+ }), /*#__PURE__*/jsx("path", {
234
+ d: "M8 8L10.5 10.5",
235
+ stroke: "currentColor",
236
+ strokeWidth: "1.25",
237
+ strokeLinecap: "round"
238
+ })]
239
+ }), /*#__PURE__*/jsx("span", {
240
+ className: css({
241
+ flex: 1
242
+ }),
243
+ children: "Search\u2026"
244
+ }), /*#__PURE__*/jsx("kbd", {
245
+ className: css({
246
+ fontSize: 10.5,
247
+ color: '#c8c8c8',
248
+ fontFamily: 'inherit',
249
+ letterSpacing: '0.02em'
250
+ }),
251
+ children: "\u2318K"
252
+ })]
253
+ });
254
+ }
255
+
256
+ // ================================================================
257
+ // List filter — inline nav search
258
+ // ================================================================
259
+
260
+ function NavSearch({
261
+ value,
262
+ onChange
263
+ }) {
264
+ return /*#__PURE__*/jsx("div", {
265
+ className: css({
266
+ paddingInline: '16px 12px',
267
+ paddingBottom: '4px'
268
+ }),
269
+ children: /*#__PURE__*/jsx("input", {
270
+ type: "search",
271
+ value: value,
272
+ onChange: e => onChange(e.target.value),
273
+ placeholder: "Filter\u2026",
274
+ className: css({
275
+ width: '100%',
276
+ paddingInline: '10px',
277
+ paddingBlock: '5px',
278
+ fontSize: 12.5,
279
+ border: '1px solid #ebebeb',
280
+ borderRadius: 5,
281
+ backgroundColor: '#f5f5f5',
282
+ color: '#0a0a0a',
283
+ outline: 'none',
284
+ boxSizing: 'border-box',
285
+ transition: 'border-color 140ms',
286
+ '&:focus': {
287
+ borderColor: '#b0b0b0'
288
+ },
289
+ '&::placeholder': {
290
+ color: '#c8c8c8'
291
+ },
292
+ '&::-webkit-search-cancel-button': {
293
+ display: 'none'
294
+ }
295
+ })
296
+ })
297
+ });
298
+ }
299
+
300
+ // ================================================================
301
+ // Collections section
302
+ // ================================================================
303
+
304
+ function CollectionsSection({
305
+ lists,
306
+ onNavItemClick
307
+ }) {
308
+ const [search, setSearch] = useState('');
309
+ const filtered = search.trim() ? lists.filter(l => l.label.toLowerCase().includes(search.toLowerCase())) : lists;
310
+ return /*#__PURE__*/jsxs(Fragment, {
311
+ children: [/*#__PURE__*/jsx(SectionLabel, {
312
+ children: "Collections"
313
+ }), lists.length > 6 && /*#__PURE__*/jsx(NavSearch, {
314
+ value: search,
315
+ onChange: setSearch
316
+ }), filtered.length === 0 ? /*#__PURE__*/jsx("p", {
317
+ className: css({
318
+ margin: '4px 16px',
319
+ fontSize: 12.5,
320
+ color: '#c8c8c8'
321
+ }),
322
+ children: "No results"
323
+ }) : filtered.map(list => /*#__PURE__*/jsxs(NavItem, {
324
+ href: getHrefFromList(list),
325
+ onClick: onNavItemClick,
326
+ children: [list.label, list.isSingleton && /*#__PURE__*/jsx("span", {
327
+ className: css({
328
+ marginLeft: 6,
329
+ fontSize: 10,
330
+ fontWeight: 500,
331
+ color: '#c8c8c8',
332
+ letterSpacing: '0.04em',
333
+ textTransform: 'uppercase'
334
+ }),
335
+ children: "Single"
336
+ })]
337
+ }, list.key))]
338
+ });
339
+ }
340
+
341
+ // ================================================================
342
+ // Root Navigation
343
+ // ================================================================
344
+
345
+ function Navigation({
346
+ onNavItemClick,
347
+ onCmdK
348
+ }) {
349
+ var _adminConfig$componen;
350
+ const {
351
+ adminConfig,
352
+ lists: allLists,
353
+ apiPath
354
+ } = useNixxie();
355
+ const visibleLists = Object.values(allLists).filter(x => !x.hideNavigation);
356
+ if (adminConfig !== null && adminConfig !== void 0 && (_adminConfig$componen = adminConfig.components) !== null && _adminConfig$componen !== void 0 && _adminConfig$componen.Navigation) {
357
+ return /*#__PURE__*/jsx(adminConfig.components.Navigation, {
358
+ lists: visibleLists
359
+ });
360
+ }
361
+ return /*#__PURE__*/jsxs("nav", {
362
+ "aria-label": "Main navigation",
363
+ className: css({
364
+ display: 'flex',
365
+ flexDirection: 'column',
366
+ height: '100%'
367
+ }),
368
+ children: [/*#__PURE__*/jsx("div", {
369
+ className: css({
370
+ paddingTop: '10px'
371
+ }),
372
+ children: /*#__PURE__*/jsx(SearchTrigger, {
373
+ onClick: onCmdK
374
+ })
375
+ }), /*#__PURE__*/jsx(NavItem, {
376
+ href: "/",
377
+ onClick: onNavItemClick,
378
+ children: "Dashboard"
379
+ }), /*#__PURE__*/jsx(NavDivider, {}), /*#__PURE__*/jsxs("div", {
380
+ className: css({
381
+ flex: 1,
382
+ overflowY: 'auto',
383
+ overflowX: 'hidden',
384
+ paddingBottom: '8px'
385
+ }),
386
+ children: [visibleLists.length > 0 ? /*#__PURE__*/jsx(CollectionsSection, {
387
+ lists: visibleLists,
388
+ onNavItemClick: onNavItemClick
389
+ }) : /*#__PURE__*/jsx("p", {
390
+ className: css({
391
+ margin: '8px 16px',
392
+ fontSize: 12.5,
393
+ color: '#c8c8c8'
394
+ }),
395
+ children: "No collections"
396
+ }), process.env.NODE_ENV !== 'production' && apiPath && /*#__PURE__*/jsxs(Fragment, {
397
+ children: [/*#__PURE__*/jsx(NavDivider, {}), /*#__PURE__*/jsx(SectionLabel, {
398
+ children: "Developer"
399
+ }), /*#__PURE__*/jsx(NavItem, {
400
+ href: apiPath,
401
+ onClick: onNavItemClick,
402
+ children: "API Explorer"
403
+ })]
404
+ })]
405
+ })]
406
+ });
407
+ }
408
+
409
+ // ================================================================
410
+ // Legacy public exports (used by @nixxie-cms/auth and custom navigations)
411
+ // ================================================================
412
+
413
+ function NavList({
414
+ children
415
+ }) {
416
+ return /*#__PURE__*/jsx(Fragment, {
417
+ children: children
418
+ });
419
+ }
420
+ function NavContainer({
421
+ children
422
+ }) {
423
+ return /*#__PURE__*/jsx("div", {
424
+ className: css({
425
+ display: 'flex',
426
+ flexDirection: 'column',
427
+ height: '100%',
428
+ paddingBlock: '8px'
429
+ }),
430
+ children: children
431
+ });
432
+ }
433
+ function NavFooter({
434
+ children
435
+ }) {
436
+ return /*#__PURE__*/jsx("div", {
437
+ className: css({
438
+ paddingInline: '12px',
439
+ paddingBlock: '10px',
440
+ borderTop: '1px solid #f2f2f2',
441
+ marginTop: 'auto'
442
+ }),
443
+ children: children
444
+ });
445
+ }
446
+
447
+ /** @deprecated */
448
+ function DeveloperResourcesMenu() {
449
+ return null;
450
+ }
451
+
452
+ function useCommands() {
453
+ const {
454
+ lists
455
+ } = useNixxie();
456
+ return useMemo(() => {
457
+ const cmds = [{
458
+ id: 'nav-dashboard',
459
+ label: 'Go to Dashboard',
460
+ category: 'Navigate',
461
+ icon: '◼',
462
+ href: '/'
463
+ }];
464
+ for (const list of Object.values(lists)) {
465
+ if (list.hideNavigation) continue;
466
+ cmds.push({
467
+ id: `nav-${list.key}`,
468
+ label: list.label,
469
+ description: `Open ${list.label} list`,
470
+ category: 'Navigate',
471
+ icon: '≡',
472
+ href: getHrefFromList(list)
473
+ });
474
+ if (!list.hideCreate && !list.isSingleton) {
475
+ cmds.push({
476
+ id: `create-${list.key}`,
477
+ label: `New ${list.singular}`,
478
+ description: `Create a new ${list.singular.toLowerCase()}`,
479
+ category: 'Create',
480
+ icon: '+',
481
+ href: `/${list.path}/create`
482
+ });
483
+ }
484
+ }
485
+ return cmds;
486
+ }, [lists]);
487
+ }
488
+ function CommandPalette({
489
+ isOpen,
490
+ onClose
491
+ }) {
492
+ const router = useRouter();
493
+ const [query, setQuery] = useState('');
494
+ const [activeIndex, setActiveIndex] = useState(0);
495
+ const inputRef = useRef(null);
496
+ const listRef = useRef(null);
497
+ const commands = useCommands();
498
+ const filtered = useMemo(() => {
499
+ if (!query.trim()) return commands;
500
+ const q = query.toLowerCase();
501
+ return commands.filter(c => {
502
+ var _c$description;
503
+ return c.label.toLowerCase().includes(q) || ((_c$description = c.description) === null || _c$description === void 0 ? void 0 : _c$description.toLowerCase().includes(q)) || c.category.toLowerCase().includes(q);
504
+ });
505
+ }, [commands, query]);
506
+
507
+ // Group by category
508
+ const grouped = useMemo(() => {
509
+ const map = new Map();
510
+ for (const cmd of filtered) {
511
+ if (!map.has(cmd.category)) map.set(cmd.category, []);
512
+ map.get(cmd.category).push(cmd);
513
+ }
514
+ return map;
515
+ }, [filtered]);
516
+
517
+ // Flat list for keyboard navigation
518
+ const flatList = useMemo(() => filtered, [filtered]);
519
+ useEffect(() => {
520
+ if (isOpen) {
521
+ setQuery('');
522
+ setActiveIndex(0);
523
+ setTimeout(() => {
524
+ var _inputRef$current;
525
+ return (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
526
+ }, 10);
527
+ }
528
+ }, [isOpen]);
529
+ useEffect(() => {
530
+ setActiveIndex(0);
531
+ }, [query]);
532
+
533
+ // Scroll active item into view
534
+ useEffect(() => {
535
+ var _listRef$current;
536
+ const el = (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.querySelector(`[data-active="true"]`);
537
+ el === null || el === void 0 || el.scrollIntoView({
538
+ block: 'nearest'
539
+ });
540
+ }, [activeIndex]);
541
+ function runCommand(cmd) {
542
+ onClose();
543
+ if (cmd.href) {
544
+ router.push(cmd.href);
545
+ } else if (cmd.action) {
546
+ cmd.action();
547
+ }
548
+ }
549
+ function onKeyDown(e) {
550
+ if (e.key === 'ArrowDown') {
551
+ e.preventDefault();
552
+ setActiveIndex(i => Math.min(i + 1, flatList.length - 1));
553
+ } else if (e.key === 'ArrowUp') {
554
+ e.preventDefault();
555
+ setActiveIndex(i => Math.max(i - 1, 0));
556
+ } else if (e.key === 'Enter') {
557
+ e.preventDefault();
558
+ const cmd = flatList[activeIndex];
559
+ if (cmd) runCommand(cmd);
560
+ } else if (e.key === 'Escape') {
561
+ onClose();
562
+ }
563
+ }
564
+
565
+ // Pre-compute flat index for each command ID
566
+ const cmdFlatIndex = useMemo(() => {
567
+ const map = new Map();
568
+ filtered.forEach((cmd, i) => map.set(cmd.id, i));
569
+ return map;
570
+ }, [filtered]);
571
+ if (!isOpen) return null;
572
+ return /*#__PURE__*/jsxs(Fragment, {
573
+ children: [/*#__PURE__*/jsx("div", {
574
+ onClick: onClose,
575
+ className: css({
576
+ position: 'fixed',
577
+ inset: 0,
578
+ backgroundColor: 'rgba(0,0,0,0.45)',
579
+ zIndex: 200,
580
+ backdropFilter: 'blur(3px)'
581
+ })
582
+ }), /*#__PURE__*/jsxs("div", {
583
+ role: "dialog",
584
+ "aria-modal": "true",
585
+ "aria-label": "Command palette",
586
+ className: css({
587
+ position: 'fixed',
588
+ top: '14vh',
589
+ left: '50%',
590
+ transform: 'translateX(-50%)',
591
+ width: '90vw',
592
+ maxWidth: 560,
593
+ maxHeight: '62vh',
594
+ display: 'flex',
595
+ flexDirection: 'column',
596
+ backgroundColor: '#ffffff',
597
+ borderRadius: 10,
598
+ boxShadow: '0 24px 64px rgba(0,0,0,0.22), 0 0 0 1px rgba(0,0,0,0.07)',
599
+ zIndex: 201,
600
+ overflow: 'hidden'
601
+ }),
602
+ children: [/*#__PURE__*/jsxs("div", {
603
+ className: css({
604
+ display: 'flex',
605
+ alignItems: 'center',
606
+ gap: 10,
607
+ padding: '12px 16px',
608
+ borderBottom: '1px solid #f0f0f0'
609
+ }),
610
+ children: [/*#__PURE__*/jsxs("svg", {
611
+ width: "15",
612
+ height: "15",
613
+ viewBox: "0 0 15 15",
614
+ fill: "none",
615
+ style: {
616
+ flexShrink: 0,
617
+ color: '#a3a3a3'
618
+ },
619
+ children: [/*#__PURE__*/jsx("circle", {
620
+ cx: "6.5",
621
+ cy: "6.5",
622
+ r: "4.5",
623
+ stroke: "currentColor",
624
+ strokeWidth: "1.4"
625
+ }), /*#__PURE__*/jsx("line", {
626
+ x1: "9.9",
627
+ y1: "9.9",
628
+ x2: "13.2",
629
+ y2: "13.2",
630
+ stroke: "currentColor",
631
+ strokeWidth: "1.4",
632
+ strokeLinecap: "round"
633
+ })]
634
+ }), /*#__PURE__*/jsx("input", {
635
+ ref: inputRef,
636
+ value: query,
637
+ onChange: e => setQuery(e.target.value),
638
+ onKeyDown: onKeyDown,
639
+ placeholder: "Search commands, lists, actions\u2026",
640
+ className: css({
641
+ flex: 1,
642
+ border: 'none',
643
+ outline: 'none',
644
+ fontSize: 14.5,
645
+ color: '#0a0a0a',
646
+ background: 'transparent',
647
+ fontFamily: "'Inter', -apple-system, BlinkMacSystemFont, sans-serif",
648
+ '&::placeholder': {
649
+ color: '#b8b8b8'
650
+ }
651
+ })
652
+ }), /*#__PURE__*/jsx("kbd", {
653
+ className: css({
654
+ display: 'inline-flex',
655
+ alignItems: 'center',
656
+ gap: 2,
657
+ padding: '2px 7px',
658
+ backgroundColor: '#f5f5f5',
659
+ border: '1px solid #e8e8e8',
660
+ borderRadius: 5,
661
+ fontSize: 11,
662
+ color: '#a3a3a3',
663
+ fontFamily: 'inherit',
664
+ flexShrink: 0
665
+ }),
666
+ children: "Esc"
667
+ })]
668
+ }), /*#__PURE__*/jsx("ul", {
669
+ ref: listRef,
670
+ role: "listbox",
671
+ className: css({
672
+ flex: 1,
673
+ overflowY: 'auto',
674
+ padding: '6px 0',
675
+ margin: 0,
676
+ listStyle: 'none',
677
+ '&::-webkit-scrollbar': {
678
+ width: 4
679
+ },
680
+ '&::-webkit-scrollbar-thumb': {
681
+ background: '#e8e8e8',
682
+ borderRadius: 4
683
+ }
684
+ }),
685
+ children: grouped.size === 0 ? /*#__PURE__*/jsxs("li", {
686
+ className: css({
687
+ padding: '28px 16px',
688
+ textAlign: 'center',
689
+ color: '#a3a3a3',
690
+ fontSize: 13.5
691
+ }),
692
+ children: ["No results for \u201C", query, "\u201D"]
693
+ }) : Array.from(grouped.entries()).map(([category, items]) => /*#__PURE__*/jsxs("li", {
694
+ role: "none",
695
+ children: [/*#__PURE__*/jsx("p", {
696
+ className: css({
697
+ margin: 0,
698
+ padding: '8px 16px 3px',
699
+ fontSize: 10,
700
+ fontWeight: 600,
701
+ letterSpacing: '0.10em',
702
+ textTransform: 'uppercase',
703
+ color: '#b8b8b8'
704
+ }),
705
+ children: category
706
+ }), /*#__PURE__*/jsx("ul", {
707
+ role: "group",
708
+ className: css({
709
+ listStyle: 'none',
710
+ margin: 0,
711
+ padding: 0
712
+ }),
713
+ children: items.map(cmd => {
714
+ var _cmdFlatIndex$get;
715
+ const idx = (_cmdFlatIndex$get = cmdFlatIndex.get(cmd.id)) !== null && _cmdFlatIndex$get !== void 0 ? _cmdFlatIndex$get : 0;
716
+ const isActive = idx === activeIndex;
717
+ return /*#__PURE__*/jsxs("li", {
718
+ role: "option",
719
+ "aria-selected": isActive,
720
+ "data-active": isActive,
721
+ onClick: () => runCommand(cmd),
722
+ onMouseEnter: () => setActiveIndex(idx),
723
+ className: css({
724
+ display: 'flex',
725
+ alignItems: 'center',
726
+ gap: 10,
727
+ padding: '7px 16px',
728
+ cursor: 'pointer',
729
+ backgroundColor: isActive ? '#0a0a0a' : 'transparent',
730
+ transition: 'background 100ms',
731
+ '&:hover': {
732
+ backgroundColor: isActive ? '#0a0a0a' : '#f5f5f5'
733
+ }
734
+ }),
735
+ children: [/*#__PURE__*/jsx("span", {
736
+ className: css({
737
+ display: 'inline-flex',
738
+ alignItems: 'center',
739
+ justifyContent: 'center',
740
+ width: 28,
741
+ height: 28,
742
+ borderRadius: 6,
743
+ backgroundColor: isActive ? '#2a2a2a' : '#f0f0f0',
744
+ fontSize: 12,
745
+ fontWeight: 500,
746
+ color: isActive ? '#ffffff' : '#636363',
747
+ flexShrink: 0,
748
+ transition: 'background 100ms, color 100ms',
749
+ fontFamily: 'monospace'
750
+ }),
751
+ children: cmd.icon
752
+ }), /*#__PURE__*/jsxs("span", {
753
+ className: css({
754
+ flex: 1,
755
+ minWidth: 0
756
+ }),
757
+ children: [/*#__PURE__*/jsx("span", {
758
+ className: css({
759
+ display: 'block',
760
+ fontSize: 13.5,
761
+ fontWeight: 500,
762
+ color: isActive ? '#ffffff' : '#0a0a0a',
763
+ whiteSpace: 'nowrap',
764
+ overflow: 'hidden',
765
+ textOverflow: 'ellipsis',
766
+ transition: 'color 100ms'
767
+ }),
768
+ children: cmd.label
769
+ }), cmd.description && /*#__PURE__*/jsx("span", {
770
+ className: css({
771
+ display: 'block',
772
+ fontSize: 12,
773
+ color: isActive ? 'rgba(255,255,255,0.5)' : '#a3a3a3',
774
+ whiteSpace: 'nowrap',
775
+ overflow: 'hidden',
776
+ textOverflow: 'ellipsis',
777
+ transition: 'color 100ms'
778
+ }),
779
+ children: cmd.description
780
+ })]
781
+ }), isActive && /*#__PURE__*/jsx("kbd", {
782
+ className: css({
783
+ fontSize: 11,
784
+ color: 'rgba(255,255,255,0.6)',
785
+ background: '#2a2a2a',
786
+ border: '1px solid #3a3a3a',
787
+ borderRadius: 4,
788
+ padding: '2px 6px',
789
+ fontFamily: 'inherit',
790
+ flexShrink: 0
791
+ }),
792
+ children: "\u21B5"
793
+ })]
794
+ }, cmd.id);
795
+ })
796
+ })]
797
+ }, category))
798
+ }), /*#__PURE__*/jsxs("div", {
799
+ className: css({
800
+ display: 'flex',
801
+ alignItems: 'center',
802
+ gap: 14,
803
+ padding: '8px 16px',
804
+ borderTop: '1px solid #f0f0f0',
805
+ fontSize: 11,
806
+ color: '#b8b8b8'
807
+ }),
808
+ children: [/*#__PURE__*/jsxs("span", {
809
+ children: [/*#__PURE__*/jsx("kbd", {
810
+ className: css({
811
+ fontFamily: 'inherit'
812
+ }),
813
+ children: "\u2191\u2193"
814
+ }), " navigate"]
815
+ }), /*#__PURE__*/jsxs("span", {
816
+ children: [/*#__PURE__*/jsx("kbd", {
817
+ className: css({
818
+ fontFamily: 'inherit'
819
+ }),
820
+ children: "\u21B5"
821
+ }), " open"]
822
+ }), /*#__PURE__*/jsxs("span", {
823
+ children: [/*#__PURE__*/jsx("kbd", {
824
+ className: css({
825
+ fontFamily: 'inherit'
826
+ }),
827
+ children: "Esc"
828
+ }), " close"]
829
+ }), /*#__PURE__*/jsxs("span", {
830
+ style: {
831
+ marginInlineStart: 'auto'
832
+ },
833
+ children: [/*#__PURE__*/jsx("kbd", {
834
+ className: css({
835
+ fontFamily: 'inherit'
836
+ }),
837
+ children: "\u2318K"
838
+ }), " toggle"]
839
+ })]
840
+ })]
841
+ })]
842
+ });
843
+ }
844
+
845
+ const SIDEBAR_WIDTH = 256;
846
+ const TOPBAR_HEIGHT = 52;
847
+ function PageWrapper(props) {
848
+ return /*#__PURE__*/jsx("div", {
849
+ className: css({
850
+ display: 'flex',
851
+ height: '100vh',
852
+ overflow: 'hidden',
853
+ backgroundColor: '#fafafa',
854
+ fontFamily: "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif"
855
+ }),
856
+ ...props
857
+ });
858
+ }
859
+
860
+ // ---- Mobile overlay ----
861
+ function Backdrop({
862
+ isVisible,
863
+ onClick
864
+ }) {
865
+ return /*#__PURE__*/jsx("div", {
866
+ onClick: onClick,
867
+ "aria-hidden": !isVisible,
868
+ className: css({
869
+ position: 'fixed',
870
+ inset: 0,
871
+ backgroundColor: 'rgba(10,10,10,0.35)',
872
+ zIndex: 40,
873
+ transition: 'opacity 200ms',
874
+ opacity: isVisible ? 1 : 0,
875
+ pointerEvents: isVisible ? 'auto' : 'none',
876
+ backdropFilter: 'blur(2px)',
877
+ '@media (min-width: 768px)': {
878
+ display: 'none'
879
+ }
880
+ })
881
+ });
882
+ }
883
+
884
+ // ---- Sidebar — pure white, precise ----
885
+ function Sidebar({
886
+ isOpen,
887
+ onClose,
888
+ onCmdK
889
+ }) {
890
+ return /*#__PURE__*/jsxs(Fragment, {
891
+ children: [/*#__PURE__*/jsx(Backdrop, {
892
+ isVisible: isOpen,
893
+ onClick: onClose
894
+ }), /*#__PURE__*/jsxs("aside", {
895
+ className: css({
896
+ position: 'fixed',
897
+ top: 0,
898
+ left: 0,
899
+ bottom: 0,
900
+ width: SIDEBAR_WIDTH,
901
+ zIndex: 50,
902
+ display: 'flex',
903
+ flexDirection: 'column',
904
+ backgroundColor: '#ffffff',
905
+ borderRight: '1px solid #ebebeb',
906
+ transform: isOpen ? 'translateX(0)' : `translateX(-${SIDEBAR_WIDTH}px)`,
907
+ transition: 'transform 220ms cubic-bezier(0.4,0,0.2,1)',
908
+ '@media (min-width: 768px)': {
909
+ position: 'relative',
910
+ transform: 'translateX(0)',
911
+ flexShrink: 0
912
+ }
913
+ }),
914
+ children: [/*#__PURE__*/jsx("div", {
915
+ className: css({
916
+ display: 'flex',
917
+ alignItems: 'center',
918
+ height: TOPBAR_HEIGHT,
919
+ paddingInline: '16px',
920
+ borderBottom: '1px solid #f2f2f2',
921
+ flexShrink: 0
922
+ }),
923
+ children: /*#__PURE__*/jsx(Logo, {})
924
+ }), /*#__PURE__*/jsx("div", {
925
+ className: css({
926
+ flex: 1,
927
+ overflowY: 'auto',
928
+ overflowX: 'hidden',
929
+ WebkitOverflowScrolling: 'touch',
930
+ '&::-webkit-scrollbar': {
931
+ width: 3
932
+ },
933
+ '&::-webkit-scrollbar-thumb': {
934
+ background: '#ebebeb',
935
+ borderRadius: 3
936
+ }
937
+ }),
938
+ children: /*#__PURE__*/jsx(Navigation, {
939
+ onNavItemClick: onClose,
940
+ onCmdK: onCmdK
941
+ })
942
+ })]
943
+ })]
944
+ });
945
+ }
946
+
947
+ // ---- Top bar ----
948
+ function TopBar({
949
+ header,
950
+ onMenuClick,
951
+ isSidebarOpen
952
+ }) {
953
+ return /*#__PURE__*/jsxs("header", {
954
+ className: css({
955
+ display: 'flex',
956
+ alignItems: 'center',
957
+ height: TOPBAR_HEIGHT,
958
+ paddingInline: '24px',
959
+ gap: '14px',
960
+ backgroundColor: '#ffffff',
961
+ borderBottom: '1px solid #ebebeb',
962
+ flexShrink: 0,
963
+ zIndex: 30
964
+ }),
965
+ children: [/*#__PURE__*/jsx("button", {
966
+ onClick: onMenuClick,
967
+ "aria-label": isSidebarOpen ? 'Close menu' : 'Open menu',
968
+ "aria-expanded": isSidebarOpen,
969
+ className: css({
970
+ display: 'inline-flex',
971
+ alignItems: 'center',
972
+ justifyContent: 'center',
973
+ width: 32,
974
+ height: 32,
975
+ borderRadius: 6,
976
+ border: '1px solid #ebebeb',
977
+ background: 'transparent',
978
+ cursor: 'pointer',
979
+ flexShrink: 0,
980
+ color: '#a3a3a3',
981
+ transition: 'color 130ms, background 130ms',
982
+ '&:hover': {
983
+ background: '#f5f5f5',
984
+ color: '#0a0a0a'
985
+ },
986
+ '@media (min-width: 768px)': {
987
+ display: 'none'
988
+ }
989
+ }),
990
+ children: /*#__PURE__*/jsx("svg", {
991
+ width: "15",
992
+ height: "15",
993
+ viewBox: "0 0 15 15",
994
+ fill: "none",
995
+ children: isSidebarOpen ? /*#__PURE__*/jsx("path", {
996
+ d: "M3 3L12 12M12 3L3 12",
997
+ stroke: "currentColor",
998
+ strokeWidth: "1.4",
999
+ strokeLinecap: "round"
1000
+ }) : /*#__PURE__*/jsxs(Fragment, {
1001
+ children: [/*#__PURE__*/jsx("line", {
1002
+ x1: "2",
1003
+ y1: "4.5",
1004
+ x2: "13",
1005
+ y2: "4.5",
1006
+ stroke: "currentColor",
1007
+ strokeWidth: "1.4",
1008
+ strokeLinecap: "round"
1009
+ }), /*#__PURE__*/jsx("line", {
1010
+ x1: "2",
1011
+ y1: "7.5",
1012
+ x2: "13",
1013
+ y2: "7.5",
1014
+ stroke: "currentColor",
1015
+ strokeWidth: "1.4",
1016
+ strokeLinecap: "round"
1017
+ }), /*#__PURE__*/jsx("line", {
1018
+ x1: "2",
1019
+ y1: "10.5",
1020
+ x2: "13",
1021
+ y2: "10.5",
1022
+ stroke: "currentColor",
1023
+ strokeWidth: "1.4",
1024
+ strokeLinecap: "round"
1025
+ })]
1026
+ })
1027
+ })
1028
+ }), /*#__PURE__*/jsx("div", {
1029
+ className: css({
1030
+ display: 'flex',
1031
+ alignItems: 'center',
1032
+ justifyContent: 'space-between',
1033
+ flex: 1,
1034
+ minWidth: 0,
1035
+ gap: '12px'
1036
+ }),
1037
+ children: header
1038
+ })]
1039
+ });
1040
+ }
1041
+
1042
+ // ---- Main content area ----
1043
+ function MainContent(props) {
1044
+ return /*#__PURE__*/jsx("main", {
1045
+ className: css({
1046
+ flex: 1,
1047
+ display: 'flex',
1048
+ flexDirection: 'column',
1049
+ overflow: 'hidden',
1050
+ minWidth: 0,
1051
+ minHeight: 0
1052
+ }),
1053
+ ...props
1054
+ });
1055
+ }
1056
+ function ContentScroller(props) {
1057
+ return /*#__PURE__*/jsx("div", {
1058
+ "data-nixxie-content": "",
1059
+ className: css({
1060
+ flex: 1,
1061
+ overflowY: 'auto',
1062
+ overflowX: 'hidden',
1063
+ WebkitOverflowScrolling: 'touch',
1064
+ '&::-webkit-scrollbar': {
1065
+ width: 5
1066
+ },
1067
+ '&::-webkit-scrollbar-thumb': {
1068
+ background: '#e8e8e8',
1069
+ borderRadius: 4
1070
+ },
1071
+ '&::-webkit-scrollbar-thumb:hover': {
1072
+ background: '#d4d4d4'
1073
+ }
1074
+ }),
1075
+ ...props
1076
+ });
1077
+ }
1078
+
1079
+ // ---- Public API ----
1080
+
1081
+ function PageContainer({
1082
+ children,
1083
+ header,
1084
+ title
1085
+ }) {
1086
+ const [isSidebarOpen, setSidebarOpen] = useState(false);
1087
+ const [cmdOpen, setCmdOpen] = useState(false);
1088
+ useEffect(() => {
1089
+ function onResize() {
1090
+ if (window.innerWidth >= 768) setSidebarOpen(false);
1091
+ }
1092
+ window.addEventListener('resize', onResize);
1093
+ return () => window.removeEventListener('resize', onResize);
1094
+ }, []);
1095
+ useEffect(() => {
1096
+ function onKeyDown(e) {
1097
+ if ((e.metaKey || e.ctrlKey) && e.key === 'k') {
1098
+ e.preventDefault();
1099
+ setCmdOpen(v => !v);
1100
+ }
1101
+ }
1102
+ window.addEventListener('keydown', onKeyDown);
1103
+ return () => window.removeEventListener('keydown', onKeyDown);
1104
+ }, []);
1105
+ return /*#__PURE__*/jsxs(PageWrapper, {
1106
+ children: [/*#__PURE__*/jsx(NextHead, {
1107
+ children: /*#__PURE__*/jsx("title", {
1108
+ children: title ? `Nixxie – ${title}` : 'Nixxie'
1109
+ }, "title")
1110
+ }), /*#__PURE__*/jsx(Sidebar, {
1111
+ isOpen: isSidebarOpen,
1112
+ onClose: () => setSidebarOpen(false),
1113
+ onCmdK: () => setCmdOpen(v => !v)
1114
+ }), /*#__PURE__*/jsxs(MainContent, {
1115
+ children: [/*#__PURE__*/jsx(TopBar, {
1116
+ header: header,
1117
+ onMenuClick: () => setSidebarOpen(v => !v),
1118
+ isSidebarOpen: isSidebarOpen
1119
+ }), /*#__PURE__*/jsx(ContentScroller, {
1120
+ children: children
1121
+ })]
1122
+ }), /*#__PURE__*/jsx(CommandPalette, {
1123
+ isOpen: cmdOpen,
1124
+ onClose: () => setCmdOpen(false)
1125
+ })]
1126
+ });
1127
+ }
1128
+
1129
+ export { DeveloperResourcesMenu as D, Logo as L, NavContainer as N, PageContainer as P, NavFooter as a, NavItem as b, NavList as c, PageWrapper as d, getHrefFromList as g };