@velastack/cms 0.1.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 (327) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +644 -0
  3. package/dist/cms.d.ts +6 -0
  4. package/dist/cms.js +30 -0
  5. package/dist/components/admin-bar/admin-bar-internal.svelte +1697 -0
  6. package/dist/components/admin-bar/admin-bar-internal.svelte.d.ts +12 -0
  7. package/dist/components/admin-bar/admin-bar.css +5 -0
  8. package/dist/components/admin-bar/admin-bar.svelte +355 -0
  9. package/dist/components/admin-bar/admin-bar.svelte.d.ts +7 -0
  10. package/dist/components/admin-bar/click-outside.d.ts +8 -0
  11. package/dist/components/admin-bar/click-outside.js +17 -0
  12. package/dist/components/admin-bar/css-root.svelte +23 -0
  13. package/dist/components/admin-bar/css-root.svelte.d.ts +19 -0
  14. package/dist/components/admin-bar/delete-page-dialog.svelte +326 -0
  15. package/dist/components/admin-bar/delete-page-dialog.svelte.d.ts +32 -0
  16. package/dist/components/admin-bar/history-panel.svelte +264 -0
  17. package/dist/components/admin-bar/history-panel.svelte.d.ts +8 -0
  18. package/dist/components/admin-bar/icons/bold.svelte +13 -0
  19. package/dist/components/admin-bar/icons/bold.svelte.d.ts +3 -0
  20. package/dist/components/admin-bar/icons/check.svelte +11 -0
  21. package/dist/components/admin-bar/icons/check.svelte.d.ts +3 -0
  22. package/dist/components/admin-bar/icons/chevron-down.svelte +11 -0
  23. package/dist/components/admin-bar/icons/chevron-down.svelte.d.ts +3 -0
  24. package/dist/components/admin-bar/icons/chevron-right.svelte +11 -0
  25. package/dist/components/admin-bar/icons/chevron-right.svelte.d.ts +3 -0
  26. package/dist/components/admin-bar/icons/chevron-up.svelte +11 -0
  27. package/dist/components/admin-bar/icons/chevron-up.svelte.d.ts +3 -0
  28. package/dist/components/admin-bar/icons/code.svelte +14 -0
  29. package/dist/components/admin-bar/icons/code.svelte.d.ts +3 -0
  30. package/dist/components/admin-bar/icons/external-link.svelte +15 -0
  31. package/dist/components/admin-bar/icons/external-link.svelte.d.ts +3 -0
  32. package/dist/components/admin-bar/icons/file.svelte +19 -0
  33. package/dist/components/admin-bar/icons/file.svelte.d.ts +3 -0
  34. package/dist/components/admin-bar/icons/heading-2.svelte +16 -0
  35. package/dist/components/admin-bar/icons/heading-2.svelte.d.ts +3 -0
  36. package/dist/components/admin-bar/icons/heading-3.svelte +17 -0
  37. package/dist/components/admin-bar/icons/heading-3.svelte.d.ts +3 -0
  38. package/dist/components/admin-bar/icons/icon.svelte +41 -0
  39. package/dist/components/admin-bar/icons/icon.svelte.d.ts +21 -0
  40. package/dist/components/admin-bar/icons/images.svelte +16 -0
  41. package/dist/components/admin-bar/icons/images.svelte.d.ts +3 -0
  42. package/dist/components/admin-bar/icons/italic.svelte +15 -0
  43. package/dist/components/admin-bar/icons/italic.svelte.d.ts +3 -0
  44. package/dist/components/admin-bar/icons/link-2-off.svelte +16 -0
  45. package/dist/components/admin-bar/icons/link-2-off.svelte.d.ts +3 -0
  46. package/dist/components/admin-bar/icons/link.svelte +14 -0
  47. package/dist/components/admin-bar/icons/link.svelte.d.ts +3 -0
  48. package/dist/components/admin-bar/icons/list-ordered.svelte +18 -0
  49. package/dist/components/admin-bar/icons/list-ordered.svelte.d.ts +3 -0
  50. package/dist/components/admin-bar/icons/list.svelte +18 -0
  51. package/dist/components/admin-bar/icons/list.svelte.d.ts +3 -0
  52. package/dist/components/admin-bar/icons/loader-circle.svelte +11 -0
  53. package/dist/components/admin-bar/icons/loader-circle.svelte.d.ts +3 -0
  54. package/dist/components/admin-bar/icons/minus.svelte +11 -0
  55. package/dist/components/admin-bar/icons/minus.svelte.d.ts +3 -0
  56. package/dist/components/admin-bar/icons/quote.svelte +24 -0
  57. package/dist/components/admin-bar/icons/quote.svelte.d.ts +3 -0
  58. package/dist/components/admin-bar/icons/search.svelte +14 -0
  59. package/dist/components/admin-bar/icons/search.svelte.d.ts +3 -0
  60. package/dist/components/admin-bar/icons/trash-2.svelte +17 -0
  61. package/dist/components/admin-bar/icons/trash-2.svelte.d.ts +3 -0
  62. package/dist/components/admin-bar/icons/triangle-alert.svelte +15 -0
  63. package/dist/components/admin-bar/icons/triangle-alert.svelte.d.ts +3 -0
  64. package/dist/components/admin-bar/icons/types.d.ts +7 -0
  65. package/dist/components/admin-bar/icons/types.js +1 -0
  66. package/dist/components/admin-bar/icons/undo-2.svelte +14 -0
  67. package/dist/components/admin-bar/icons/undo-2.svelte.d.ts +3 -0
  68. package/dist/components/admin-bar/icons/upload.svelte +15 -0
  69. package/dist/components/admin-bar/icons/upload.svelte.d.ts +3 -0
  70. package/dist/components/admin-bar/icons/x.svelte +14 -0
  71. package/dist/components/admin-bar/icons/x.svelte.d.ts +3 -0
  72. package/dist/components/admin-bar/keyboard-shortcuts-dialog.svelte +96 -0
  73. package/dist/components/admin-bar/keyboard-shortcuts-dialog.svelte.d.ts +7 -0
  74. package/dist/components/admin-bar/locales-panel.svelte +137 -0
  75. package/dist/components/admin-bar/locales-panel.svelte.d.ts +9 -0
  76. package/dist/components/admin-bar/media-panel.svelte +282 -0
  77. package/dist/components/admin-bar/media-panel.svelte.d.ts +7 -0
  78. package/dist/components/admin-bar/new-page-chooser-dialog.svelte +56 -0
  79. package/dist/components/admin-bar/new-page-chooser-dialog.svelte.d.ts +10 -0
  80. package/dist/components/admin-bar/new-page-dialog.svelte +126 -0
  81. package/dist/components/admin-bar/new-page-dialog.svelte.d.ts +14 -0
  82. package/dist/components/admin-bar/page-config.d.ts +61 -0
  83. package/dist/components/admin-bar/page-config.js +24 -0
  84. package/dist/components/admin-bar/pages-panel.svelte +639 -0
  85. package/dist/components/admin-bar/pages-panel.svelte.d.ts +13 -0
  86. package/dist/components/admin-bar/panel-footer.svelte +21 -0
  87. package/dist/components/admin-bar/panel-footer.svelte.d.ts +8 -0
  88. package/dist/components/admin-bar/panel-header.svelte +29 -0
  89. package/dist/components/admin-bar/panel-header.svelte.d.ts +10 -0
  90. package/dist/components/admin-bar/panel.svelte +41 -0
  91. package/dist/components/admin-bar/panel.svelte.d.ts +10 -0
  92. package/dist/components/admin-bar/publish-dialog.svelte +387 -0
  93. package/dist/components/admin-bar/publish-dialog.svelte.d.ts +16 -0
  94. package/dist/components/admin-bar/resolve-route.d.ts +20 -0
  95. package/dist/components/admin-bar/resolve-route.js +50 -0
  96. package/dist/components/admin-bar/seo-panel.svelte +387 -0
  97. package/dist/components/admin-bar/seo-panel.svelte.d.ts +7 -0
  98. package/dist/components/admin-bar/share-preview-link-dialog.svelte +97 -0
  99. package/dist/components/admin-bar/share-preview-link-dialog.svelte.d.ts +9 -0
  100. package/dist/components/admin-bar/site-settings-panel.svelte +225 -0
  101. package/dist/components/admin-bar/site-settings-panel.svelte.d.ts +7 -0
  102. package/dist/components/admin-bar/status-pill.svelte +49 -0
  103. package/dist/components/admin-bar/status-pill.svelte.d.ts +11 -0
  104. package/dist/components/admin-bar/theme.svelte.d.ts +16 -0
  105. package/dist/components/admin-bar/theme.svelte.js +39 -0
  106. package/dist/components/admin-bar/ui/badge/badge.svelte +57 -0
  107. package/dist/components/admin-bar/ui/badge/badge.svelte.d.ts +16 -0
  108. package/dist/components/admin-bar/ui/badge/index.d.ts +4 -0
  109. package/dist/components/admin-bar/ui/badge/index.js +4 -0
  110. package/dist/components/admin-bar/ui/button/button.svelte +73 -0
  111. package/dist/components/admin-bar/ui/button/button.svelte.d.ts +16 -0
  112. package/dist/components/admin-bar/ui/button/index.d.ts +4 -0
  113. package/dist/components/admin-bar/ui/button/index.js +4 -0
  114. package/dist/components/admin-bar/ui/collapsible/collapsible-content.svelte +7 -0
  115. package/dist/components/admin-bar/ui/collapsible/collapsible-content.svelte.d.ts +4 -0
  116. package/dist/components/admin-bar/ui/collapsible/collapsible-trigger.svelte +7 -0
  117. package/dist/components/admin-bar/ui/collapsible/collapsible-trigger.svelte.d.ts +4 -0
  118. package/dist/components/admin-bar/ui/collapsible/collapsible.svelte +7 -0
  119. package/dist/components/admin-bar/ui/collapsible/collapsible.svelte.d.ts +4 -0
  120. package/dist/components/admin-bar/ui/collapsible/index.d.ts +4 -0
  121. package/dist/components/admin-bar/ui/collapsible/index.js +6 -0
  122. package/dist/components/admin-bar/ui/dialog/dialog-close.svelte +7 -0
  123. package/dist/components/admin-bar/ui/dialog/dialog-close.svelte.d.ts +4 -0
  124. package/dist/components/admin-bar/ui/dialog/dialog-content.svelte +46 -0
  125. package/dist/components/admin-bar/ui/dialog/dialog-content.svelte.d.ts +11 -0
  126. package/dist/components/admin-bar/ui/dialog/dialog-description.svelte +17 -0
  127. package/dist/components/admin-bar/ui/dialog/dialog-description.svelte.d.ts +4 -0
  128. package/dist/components/admin-bar/ui/dialog/dialog-footer.svelte +23 -0
  129. package/dist/components/admin-bar/ui/dialog/dialog-footer.svelte.d.ts +5 -0
  130. package/dist/components/admin-bar/ui/dialog/dialog-header.svelte +20 -0
  131. package/dist/components/admin-bar/ui/dialog/dialog-header.svelte.d.ts +5 -0
  132. package/dist/components/admin-bar/ui/dialog/dialog-overlay.svelte +20 -0
  133. package/dist/components/admin-bar/ui/dialog/dialog-overlay.svelte.d.ts +4 -0
  134. package/dist/components/admin-bar/ui/dialog/dialog-portal.svelte +7 -0
  135. package/dist/components/admin-bar/ui/dialog/dialog-portal.svelte.d.ts +3 -0
  136. package/dist/components/admin-bar/ui/dialog/dialog-title.svelte +17 -0
  137. package/dist/components/admin-bar/ui/dialog/dialog-title.svelte.d.ts +4 -0
  138. package/dist/components/admin-bar/ui/dialog/dialog-trigger.svelte +7 -0
  139. package/dist/components/admin-bar/ui/dialog/dialog-trigger.svelte.d.ts +4 -0
  140. package/dist/components/admin-bar/ui/dialog/dialog.svelte +7 -0
  141. package/dist/components/admin-bar/ui/dialog/dialog.svelte.d.ts +3 -0
  142. package/dist/components/admin-bar/ui/dialog/index.d.ts +11 -0
  143. package/dist/components/admin-bar/ui/dialog/index.js +13 -0
  144. package/dist/components/admin-bar/ui/input/index.d.ts +3 -0
  145. package/dist/components/admin-bar/ui/input/index.js +3 -0
  146. package/dist/components/admin-bar/ui/input/input.svelte +24 -0
  147. package/dist/components/admin-bar/ui/input/input.svelte.d.ts +5 -0
  148. package/dist/components/admin-bar/ui/kbd/index.d.ts +4 -0
  149. package/dist/components/admin-bar/ui/kbd/index.js +6 -0
  150. package/dist/components/admin-bar/ui/kbd/kbd-group.svelte +20 -0
  151. package/dist/components/admin-bar/ui/kbd/kbd-group.svelte.d.ts +5 -0
  152. package/dist/components/admin-bar/ui/kbd/kbd-shortcut.svelte +52 -0
  153. package/dist/components/admin-bar/ui/kbd/kbd-shortcut.svelte.d.ts +8 -0
  154. package/dist/components/admin-bar/ui/kbd/kbd.svelte +27 -0
  155. package/dist/components/admin-bar/ui/kbd/kbd.svelte.d.ts +5 -0
  156. package/dist/components/admin-bar/ui/label/index.d.ts +3 -0
  157. package/dist/components/admin-bar/ui/label/index.js +3 -0
  158. package/dist/components/admin-bar/ui/label/label.svelte +20 -0
  159. package/dist/components/admin-bar/ui/label/label.svelte.d.ts +4 -0
  160. package/dist/components/admin-bar/ui/menubar/index.d.ts +18 -0
  161. package/dist/components/admin-bar/ui/menubar/index.js +20 -0
  162. package/dist/components/admin-bar/ui/menubar/menubar-checkbox-item.svelte +46 -0
  163. package/dist/components/admin-bar/ui/menubar/menubar-checkbox-item.svelte.d.ts +10 -0
  164. package/dist/components/admin-bar/ui/menubar/menubar-content.svelte +28 -0
  165. package/dist/components/admin-bar/ui/menubar/menubar-content.svelte.d.ts +4 -0
  166. package/dist/components/admin-bar/ui/menubar/menubar-group-heading.svelte +25 -0
  167. package/dist/components/admin-bar/ui/menubar/menubar-group-heading.svelte.d.ts +8 -0
  168. package/dist/components/admin-bar/ui/menubar/menubar-group.svelte +12 -0
  169. package/dist/components/admin-bar/ui/menubar/menubar-group.svelte.d.ts +7 -0
  170. package/dist/components/admin-bar/ui/menubar/menubar-item.svelte +27 -0
  171. package/dist/components/admin-bar/ui/menubar/menubar-item.svelte.d.ts +8 -0
  172. package/dist/components/admin-bar/ui/menubar/menubar-label.svelte +25 -0
  173. package/dist/components/admin-bar/ui/menubar/menubar-label.svelte.d.ts +8 -0
  174. package/dist/components/admin-bar/ui/menubar/menubar-menu.svelte +7 -0
  175. package/dist/components/admin-bar/ui/menubar/menubar-menu.svelte.d.ts +3 -0
  176. package/dist/components/admin-bar/ui/menubar/menubar-portal.svelte +7 -0
  177. package/dist/components/admin-bar/ui/menubar/menubar-portal.svelte.d.ts +3 -0
  178. package/dist/components/admin-bar/ui/menubar/menubar-radio-group.svelte +11 -0
  179. package/dist/components/admin-bar/ui/menubar/menubar-radio-group.svelte.d.ts +4 -0
  180. package/dist/components/admin-bar/ui/menubar/menubar-radio-item.svelte +37 -0
  181. package/dist/components/admin-bar/ui/menubar/menubar-radio-item.svelte.d.ts +8 -0
  182. package/dist/components/admin-bar/ui/menubar/menubar-separator.svelte +17 -0
  183. package/dist/components/admin-bar/ui/menubar/menubar-separator.svelte.d.ts +4 -0
  184. package/dist/components/admin-bar/ui/menubar/menubar-shortcut.svelte +23 -0
  185. package/dist/components/admin-bar/ui/menubar/menubar-shortcut.svelte.d.ts +5 -0
  186. package/dist/components/admin-bar/ui/menubar/menubar-sub-content.svelte +20 -0
  187. package/dist/components/admin-bar/ui/menubar/menubar-sub-content.svelte.d.ts +4 -0
  188. package/dist/components/admin-bar/ui/menubar/menubar-sub-trigger.svelte +29 -0
  189. package/dist/components/admin-bar/ui/menubar/menubar-sub-trigger.svelte.d.ts +8 -0
  190. package/dist/components/admin-bar/ui/menubar/menubar-sub.svelte +7 -0
  191. package/dist/components/admin-bar/ui/menubar/menubar-sub.svelte.d.ts +4 -0
  192. package/dist/components/admin-bar/ui/menubar/menubar-trigger.svelte +20 -0
  193. package/dist/components/admin-bar/ui/menubar/menubar-trigger.svelte.d.ts +4 -0
  194. package/dist/components/admin-bar/ui/menubar/menubar.svelte +20 -0
  195. package/dist/components/admin-bar/ui/menubar/menubar.svelte.d.ts +4 -0
  196. package/dist/components/admin-bar/ui/select/index.d.ts +12 -0
  197. package/dist/components/admin-bar/ui/select/index.js +14 -0
  198. package/dist/components/admin-bar/ui/select/select-content.svelte +45 -0
  199. package/dist/components/admin-bar/ui/select/select-content.svelte.d.ts +11 -0
  200. package/dist/components/admin-bar/ui/select/select-group-heading.svelte +21 -0
  201. package/dist/components/admin-bar/ui/select/select-group-heading.svelte.d.ts +10 -0
  202. package/dist/components/admin-bar/ui/select/select-group.svelte +17 -0
  203. package/dist/components/admin-bar/ui/select/select-group.svelte.d.ts +4 -0
  204. package/dist/components/admin-bar/ui/select/select-item.svelte +40 -0
  205. package/dist/components/admin-bar/ui/select/select-item.svelte.d.ts +5 -0
  206. package/dist/components/admin-bar/ui/select/select-label.svelte +20 -0
  207. package/dist/components/admin-bar/ui/select/select-label.svelte.d.ts +6 -0
  208. package/dist/components/admin-bar/ui/select/select-portal.svelte +7 -0
  209. package/dist/components/admin-bar/ui/select/select-portal.svelte.d.ts +3 -0
  210. package/dist/components/admin-bar/ui/select/select-scroll-down-button.svelte +23 -0
  211. package/dist/components/admin-bar/ui/select/select-scroll-down-button.svelte.d.ts +5 -0
  212. package/dist/components/admin-bar/ui/select/select-scroll-up-button.svelte +23 -0
  213. package/dist/components/admin-bar/ui/select/select-scroll-up-button.svelte.d.ts +5 -0
  214. package/dist/components/admin-bar/ui/select/select-separator.svelte +21 -0
  215. package/dist/components/admin-bar/ui/select/select-separator.svelte.d.ts +4 -0
  216. package/dist/components/admin-bar/ui/select/select-trigger.svelte +31 -0
  217. package/dist/components/admin-bar/ui/select/select-trigger.svelte.d.ts +8 -0
  218. package/dist/components/admin-bar/ui/select/select.svelte +11 -0
  219. package/dist/components/admin-bar/ui/select/select.svelte.d.ts +3 -0
  220. package/dist/components/admin-bar/ui/separator/index.d.ts +2 -0
  221. package/dist/components/admin-bar/ui/separator/index.js +4 -0
  222. package/dist/components/admin-bar/ui/separator/separator.svelte +21 -0
  223. package/dist/components/admin-bar/ui/separator/separator.svelte.d.ts +4 -0
  224. package/dist/components/admin-bar/ui/textarea/index.d.ts +3 -0
  225. package/dist/components/admin-bar/ui/textarea/index.js +3 -0
  226. package/dist/components/admin-bar/ui/textarea/textarea.svelte +21 -0
  227. package/dist/components/admin-bar/ui/textarea/textarea.svelte.d.ts +5 -0
  228. package/dist/components/admin-bar/user-avatar.svelte +29 -0
  229. package/dist/components/admin-bar/user-avatar.svelte.d.ts +7 -0
  230. package/dist/components/admin-bar/utils.d.ts +10 -0
  231. package/dist/components/admin-bar/utils.js +46 -0
  232. package/dist/components/admin-bar/variants.d.ts +20 -0
  233. package/dist/components/admin-bar/variants.js +14 -0
  234. package/dist/components/cms/cms-boolean.svelte +102 -0
  235. package/dist/components/cms/cms-boolean.svelte.d.ts +10 -0
  236. package/dist/components/cms/cms-date-time-editable.svelte +66 -0
  237. package/dist/components/cms/cms-date-time-editable.svelte.d.ts +11 -0
  238. package/dist/components/cms/cms-date-time.svelte +67 -0
  239. package/dist/components/cms/cms-date-time.svelte.d.ts +19 -0
  240. package/dist/components/cms/cms-entries.svelte +24 -0
  241. package/dist/components/cms/cms-entries.svelte.d.ts +31 -0
  242. package/dist/components/cms/cms-image-editable.svelte +439 -0
  243. package/dist/components/cms/cms-image-editable.svelte.d.ts +11 -0
  244. package/dist/components/cms/cms-image.svelte +78 -0
  245. package/dist/components/cms/cms-image.svelte.d.ts +18 -0
  246. package/dist/components/cms/cms-link-editable.svelte +429 -0
  247. package/dist/components/cms/cms-link-editable.svelte.d.ts +13 -0
  248. package/dist/components/cms/cms-link.svelte +92 -0
  249. package/dist/components/cms/cms-link.svelte.d.ts +25 -0
  250. package/dist/components/cms/cms-markdown-editable.svelte +74 -0
  251. package/dist/components/cms/cms-markdown-editable.svelte.d.ts +9 -0
  252. package/dist/components/cms/cms-markdown.svelte +56 -0
  253. package/dist/components/cms/cms-markdown.svelte.d.ts +10 -0
  254. package/dist/components/cms/cms-media-picker.svelte +150 -0
  255. package/dist/components/cms/cms-media-picker.svelte.d.ts +8 -0
  256. package/dist/components/cms/cms-number-editable.svelte +77 -0
  257. package/dist/components/cms/cms-number-editable.svelte.d.ts +13 -0
  258. package/dist/components/cms/cms-number.svelte +63 -0
  259. package/dist/components/cms/cms-number.svelte.d.ts +16 -0
  260. package/dist/components/cms/cms-repeater-editable.svelte +137 -0
  261. package/dist/components/cms/cms-repeater-editable.svelte.d.ts +31 -0
  262. package/dist/components/cms/cms-repeater.svelte +55 -0
  263. package/dist/components/cms/cms-repeater.svelte.d.ts +30 -0
  264. package/dist/components/cms/cms-rich-text-editable.svelte +101 -0
  265. package/dist/components/cms/cms-rich-text-editable.svelte.d.ts +9 -0
  266. package/dist/components/cms/cms-rich-text-toolbar.svelte +246 -0
  267. package/dist/components/cms/cms-rich-text-toolbar.svelte.d.ts +9 -0
  268. package/dist/components/cms/cms-rich-text.svelte +74 -0
  269. package/dist/components/cms/cms-rich-text.svelte.d.ts +10 -0
  270. package/dist/components/cms/cms-store.svelte.d.ts +294 -0
  271. package/dist/components/cms/cms-store.svelte.js +625 -0
  272. package/dist/components/cms/cms-text.svelte +131 -0
  273. package/dist/components/cms/cms-text.svelte.d.ts +11 -0
  274. package/dist/components/cms/index.d.ts +13 -0
  275. package/dist/components/cms/index.js +11 -0
  276. package/dist/components/cms/install-scope.svelte.d.ts +7 -0
  277. package/dist/components/cms/install-scope.svelte.js +33 -0
  278. package/dist/components/cms/locale-merge.d.ts +41 -0
  279. package/dist/components/cms/locale-merge.js +77 -0
  280. package/dist/components/cms/overlay-sync.d.ts +82 -0
  281. package/dist/components/cms/overlay-sync.js +76 -0
  282. package/dist/components/cms/path.d.ts +30 -0
  283. package/dist/components/cms/path.js +156 -0
  284. package/dist/components/cms/scope.d.ts +120 -0
  285. package/dist/components/cms/scope.js +23 -0
  286. package/dist/index.d.ts +27 -0
  287. package/dist/index.js +28 -0
  288. package/dist/srv/README.md +341 -0
  289. package/dist/srv/api-adapter.d.ts +20 -0
  290. package/dist/srv/api-adapter.js +178 -0
  291. package/dist/srv/cms.d.ts +62 -0
  292. package/dist/srv/cms.js +35 -0
  293. package/dist/srv/index.d.ts +5 -0
  294. package/dist/srv/index.js +4 -0
  295. package/dist/srv/load-cms.d.ts +105 -0
  296. package/dist/srv/load-cms.js +227 -0
  297. package/dist/srv/mock-adapter.d.ts +96 -0
  298. package/dist/srv/mock-adapter.js +171 -0
  299. package/dist/srv/types.d.ts +114 -0
  300. package/dist/srv/types.js +1 -0
  301. package/package.json +116 -0
  302. package/plugin/README.md +137 -0
  303. package/plugin/dist/adapter.d.ts +35 -0
  304. package/plugin/dist/adapter.js +346 -0
  305. package/plugin/dist/adapter.js.map +1 -0
  306. package/plugin/dist/build-state.d.ts +10 -0
  307. package/plugin/dist/build-state.js +26 -0
  308. package/plugin/dist/build-state.js.map +1 -0
  309. package/plugin/dist/fallback-shim.js +194 -0
  310. package/plugin/dist/index.d.ts +56 -0
  311. package/plugin/dist/index.js +396 -0
  312. package/plugin/dist/index.js.map +1 -0
  313. package/plugin/dist/manifest.d.ts +76 -0
  314. package/plugin/dist/manifest.js +367 -0
  315. package/plugin/dist/manifest.js.map +1 -0
  316. package/plugin/dist/media.d.ts +36 -0
  317. package/plugin/dist/media.js +153 -0
  318. package/plugin/dist/media.js.map +1 -0
  319. package/plugin/dist/parse-svelte.d.ts +35 -0
  320. package/plugin/dist/parse-svelte.js +120 -0
  321. package/plugin/dist/parse-svelte.js.map +1 -0
  322. package/plugin/dist/route-tree.d.ts +27 -0
  323. package/plugin/dist/route-tree.js +69 -0
  324. package/plugin/dist/route-tree.js.map +1 -0
  325. package/plugin/dist/transforms.d.ts +42 -0
  326. package/plugin/dist/transforms.js +95 -0
  327. package/plugin/dist/transforms.js.map +1 -0
@@ -0,0 +1,294 @@
1
+ import { type Tree } from './path.js';
2
+ import type { CmsEntry, CmsPagePointer, CmsScopeEntry } from './scope.js';
3
+ export type CmsScopeRef = {
4
+ scopeId: string;
5
+ routeId: string;
6
+ params: Record<string, string>;
7
+ };
8
+ type DraftBucket = {
9
+ scope: CmsScopeRef;
10
+ locale: string;
11
+ tree: Tree;
12
+ };
13
+ /**
14
+ * Outcome of a page-delete release item: omit for hard-delete (404 after
15
+ * publish), set to `gone` for permanent removal (410), or `redirect` to a
16
+ * target URL for a permanent redirect (308). The CMS server keeps the
17
+ * outcome on the published tombstone after the release is published.
18
+ */
19
+ export type PageDeleteOutcome = {
20
+ kind: 'gone';
21
+ } | {
22
+ kind: 'redirect';
23
+ to: string;
24
+ };
25
+ export type ReleaseItem = {
26
+ kind: 'page';
27
+ routeId: string;
28
+ params: Record<string, string>;
29
+ locale: string;
30
+ tree: Tree;
31
+ addedAt: string;
32
+ } | {
33
+ kind: 'layout';
34
+ routeId: string;
35
+ locale: string;
36
+ tree: Tree;
37
+ addedAt: string;
38
+ } | {
39
+ kind: 'site';
40
+ tree: Tree;
41
+ addedAt: string;
42
+ } | {
43
+ kind: 'page-delete';
44
+ routeId: string;
45
+ params: Record<string, string>;
46
+ locale: string;
47
+ outcome?: PageDeleteOutcome;
48
+ addedAt: string;
49
+ };
50
+ export type OpenRelease = {
51
+ userId: string;
52
+ name?: string;
53
+ createdAt: string;
54
+ preview_key: string;
55
+ items: ReleaseItem[];
56
+ };
57
+ /**
58
+ * Wire shape of a media library item, mirroring the server's `MediaItem`.
59
+ * `url` is the public path served by the static handler (e.g. `/uploads/abc.png`).
60
+ */
61
+ export type MediaItem = {
62
+ id: string;
63
+ filename: string;
64
+ originalName: string;
65
+ mime: string;
66
+ size: number;
67
+ url: string;
68
+ uploadedAt: string;
69
+ uploadedBy: string;
70
+ };
71
+ /**
72
+ * Origin where uploaded media files are served. The backend writes files to
73
+ * `static/uploads/` and returns relative paths like `/uploads/<slug>.png`; the
74
+ * frontend lives on a different origin in dev, so we prefix each URL here at
75
+ * the wire boundary so display components and persisted field values both get
76
+ * a fully-qualified URL.
77
+ */
78
+ export declare const MEDIA_URL_PREFIX = "https://velastack.dev";
79
+ declare class CmsStore {
80
+ isEditing: boolean;
81
+ drafts: Record<string, DraftBucket>;
82
+ openRelease: OpenRelease | null;
83
+ overlay: Record<string, Tree>;
84
+ /** Per-routeId entries overlay populated by `loadAndApplyEntriesOverlay`. */
85
+ entriesOverlay: Record<string, CmsEntry[]>;
86
+ /**
87
+ * Project-global site bucket. Not localized, not route-bound. `siteOverlay`
88
+ * holds the merged published+open-release tree fetched client-side from
89
+ * `${endpoint}/site`; `siteDraft` holds in-flight Site Settings panel
90
+ * edits awaiting save. `cmsStore.site` returns the merged read of base
91
+ * (load payload) ∪ overlay ∪ draft.
92
+ */
93
+ siteOverlay: Tree | undefined;
94
+ siteDraft: Tree;
95
+ /**
96
+ * Active editor preview locale, pushed in by the admin bar from the URL
97
+ * (`?locale=`). Falls back to `page.data.cms.locale` when unset (read-only
98
+ * consumer, or no override). Field components read/write through the
99
+ * default locale below, so editing in `?locale=es` keys drafts to `es`
100
+ * even if the consumer's `getLocale(url)` doesn't honor the param.
101
+ */
102
+ private _activeLocale;
103
+ private overlayFetchToken;
104
+ private entriesFetchToken;
105
+ toggleEdit(): void;
106
+ setActiveLocale(locale: string | null): void;
107
+ private effectiveLocale;
108
+ /** Base doc (server-rendered) for a scope. Already locale-resolved by `resolveCmsPayload`. */
109
+ private baseDoc;
110
+ /** Merged read tree: base ∪ overlay (∪ draft when editing) for the given locale. */
111
+ private mergedTree;
112
+ /** Read the merged value at `path`. Returns `undefined` if missing. */
113
+ getValue(scope: CmsScopeRef, path: string, locale?: string): unknown;
114
+ /** Whether the editor's draft tree contains a value at `path`. */
115
+ hasDraft(scope: CmsScopeRef, path: string, locale?: string): boolean;
116
+ /** Whether the client overlay (published+release) contains a value at `path`. */
117
+ hasOverlay(scope: CmsScopeRef, path: string, locale?: string): boolean;
118
+ /** Write a value at `path` into the draft tree. Creates the bucket if needed. */
119
+ setValue(scope: CmsScopeRef, path: string, value: unknown, locale?: string): void;
120
+ clearOverlay(): void;
121
+ /**
122
+ * Reactive merged site tree: base (load payload) ∪ overlay (client-fetched
123
+ * `/site` response with preview overlay) ∪ draft (Site Settings panel
124
+ * edits awaiting save). Reads update live, so a value typed in the panel
125
+ * appears on the page immediately.
126
+ *
127
+ * Drafts are always folded in here (no `isEditing` gate) — the panel
128
+ * commits to the draft via `setSiteValue` only on Save, so any value
129
+ * present is already an intentional staged change.
130
+ */
131
+ get site(): Record<string, unknown>;
132
+ getSiteValue(path: string): unknown;
133
+ setSiteValue(path: string, value: unknown): void;
134
+ hasSiteDraft(path?: string): boolean;
135
+ clearSiteDraft(): void;
136
+ /**
137
+ * Fetch the merged published+release site tree from `${endpoint}/site`
138
+ * and apply as a client-side overlay. With `previewKey` the response
139
+ * includes the user's open-release site item; without it (or with
140
+ * `versionKey`), the response is published-only / past-snapshot.
141
+ */
142
+ loadAndApplySiteOverlay(endpoint: string, previewKey: string | null, opts?: {
143
+ versionKey?: string | null;
144
+ }): Promise<void>;
145
+ /**
146
+ * Fetch merged published+release content for each scope on the current
147
+ * route via `${endpoint}/docs` and apply as a client-side overlay.
148
+ *
149
+ * `previewKey` selects the user's open release on the server; pass `null`
150
+ * to fetch published-only content (used post-publish to mask the now-stale
151
+ * `page.data.cms.docs` on static-export sites).
152
+ *
153
+ * `opts.versionKey` (mutually exclusive with `previewKey`) requests the
154
+ * snapshot at a published release's publish time — `?version=…`.
155
+ *
156
+ * `opts.locale` is the BCP-47 locale to request — required, scopes the
157
+ * overlay cache key so different locales don't collide.
158
+ *
159
+ * `opts.defaultLocale` (the consumer's `cms.locales[0]`) enables the
160
+ * fallback fetch: when `locale !== defaultLocale`, we fetch the default
161
+ * locale's content in parallel and `mergeLocaleDocs` it under the
162
+ * requested locale. Adapters return only what's stored for the requested
163
+ * locale (per the mock-adapter contract); the library composes the
164
+ * `requested → default → undefined` chain. Mirrors `resolveCmsPayload`.
165
+ *
166
+ * `opts.reset` replaces the overlay map wholesale (mount with release,
167
+ * post-publish, post-discard). Otherwise we merge — keeps unchanged-layout
168
+ * overlays applied during navigation while new-page scopes load.
169
+ */
170
+ loadAndApplyOverlay(endpoint: string, scopes: CmsScopeEntry[], previewKey: string | null, opts: {
171
+ reset?: boolean;
172
+ versionKey?: string | null;
173
+ locale: string;
174
+ defaultLocale?: string;
175
+ }): Promise<void>;
176
+ /**
177
+ * Refresh the per-routeId entries overlay used by `<CmsEntries>`. One fetch
178
+ * to `${endpoint}/pages?preview=…&locale=…` covers all `routeIds`; we
179
+ * filter the response per route. With `previewKey` set, draft and
180
+ * pending-delete entries are kept; with `previewKey === null`, they're
181
+ * filtered out — used post-publish to mask stale
182
+ * `page.data.cms.entries` on static-export sites.
183
+ *
184
+ * `opts.defaultLocale` enables the fallback fetch: when the requested
185
+ * locale isn't the default, we fetch the default locale's entries in
186
+ * parallel and union by params (requested-locale entries win on metadata
187
+ * for shared params; default-locale-only entries surface as fallbacks).
188
+ */
189
+ loadAndApplyEntriesOverlay(endpoint: string, routeIds: string[], previewKey: string | null, opts: {
190
+ reset?: boolean;
191
+ versionKey?: string | null;
192
+ locale: string;
193
+ defaultLocale?: string;
194
+ }): Promise<void>;
195
+ get isDirty(): boolean;
196
+ /**
197
+ * Counts distinct page identities and layout routes touched by the open
198
+ * release, NOT raw item count: a page edited in `en` and `es` registers
199
+ * as one. Powers the editor's "X pages draft" mental model — they think
200
+ * "one page is in progress", not "two storage rows exist". For per-locale
201
+ * breakdowns (locales panel "EN: 6, ES: 4"), use `workingCopyCountsByLocale`.
202
+ */
203
+ get workingCopyCounts(): {
204
+ pages: number;
205
+ layouts: number;
206
+ site: number;
207
+ total: number;
208
+ };
209
+ /**
210
+ * Per-locale breakdown of the open release's working-copy items. Powers
211
+ * the Locales panel ("default has 6 edits, es missing 2"). Locales with
212
+ * zero items don't appear in the map; the panel iterates `cms.locales` to
213
+ * surface them as "0 edits".
214
+ */
215
+ get workingCopyCountsByLocale(): Record<string, {
216
+ pages: number;
217
+ layouts: number;
218
+ total: number;
219
+ }>;
220
+ clearDrafts(): void;
221
+ setOpenRelease(release: OpenRelease | null): void;
222
+ fetchOpenRelease(endpoint: string): Promise<void>;
223
+ /**
224
+ * Atomically rename a page's slug: stage a draft `page` item at the new
225
+ * params copying content from the published entry, plus a `page-delete`
226
+ * with a redirect outcome on the old params pointing at the new URL. Both
227
+ * items go into the open release as a transactional pair, so undo removes
228
+ * them together. The backend composes this on `POST /pages/rename`.
229
+ */
230
+ renameSlug(endpoint: string, args: {
231
+ routeId: string;
232
+ fromParams: Record<string, string>;
233
+ toParams: Record<string, string>;
234
+ locale: string;
235
+ toUrl: string;
236
+ }): Promise<{
237
+ ok: boolean;
238
+ release?: OpenRelease;
239
+ }>;
240
+ /**
241
+ * Upload a media file to `${endpoint}/media` and return the full `MediaItem`.
242
+ * The library panel and inline picker both call this so newly-uploaded items
243
+ * can be prepended to local state without a re-list.
244
+ */
245
+ uploadMedia(endpoint: string, file: File): Promise<MediaItem>;
246
+ /** Back-compat wrapper around `uploadMedia` that returns just the URL. */
247
+ uploadImage(endpoint: string, file: File): Promise<string>;
248
+ listMedia(endpoint: string, params?: {
249
+ offset?: number;
250
+ limit?: number;
251
+ }): Promise<{
252
+ items: MediaItem[];
253
+ total: number;
254
+ }>;
255
+ deleteMedia(endpoint: string, id: string): Promise<void>;
256
+ /**
257
+ * Flush dirty drafts to the server's open release as one item per
258
+ * (scope, locale), each carrying a partial tree. The server deep-merges
259
+ * each tree into its matching item in the working copy without publishing.
260
+ */
261
+ save(endpoint: string): Promise<{
262
+ ok: boolean;
263
+ release?: OpenRelease;
264
+ }>;
265
+ }
266
+ export declare const cmsStore: CmsStore;
267
+ /**
268
+ * Public read view of the merged CMS payload: server-loaded `page.data.cms`
269
+ * with `cmsStore.overlay` applied on top, so authed editors see working-copy
270
+ * content without a server reload.
271
+ *
272
+ * Shape mirrors `CmsPayload` directly via getters (`cms.docs`, `cms.metadata`,
273
+ * `cms.page`, …). `metadata` is now a thin alias — it reads the page scope's
274
+ * `metadata` branch from the merged docs.
275
+ */
276
+ declare class Cms {
277
+ #private;
278
+ get locale(): string;
279
+ get locales(): string[];
280
+ get docs(): Record<string, Record<string, unknown>>;
281
+ get scopes(): Record<string, CmsScopeEntry>;
282
+ get metadata(): Record<string, unknown>;
283
+ get entries(): Record<string, CmsEntry[]>;
284
+ get endpoint(): string;
285
+ get page(): CmsPagePointer | null;
286
+ /**
287
+ * Project-wide site settings tree, merged through `cmsStore.site` so panel
288
+ * edits show up live in preview. Use this in display components instead of
289
+ * reading `data.cms.site.tree` directly — that's only the SSR seed.
290
+ */
291
+ get site(): Record<string, unknown>;
292
+ }
293
+ export declare const cms: Cms;
294
+ export {};