@elytracms/core 0.0.6

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 (521) hide show
  1. package/LICENSE +21 -0
  2. package/dist/clipboard/build.d.ts +77 -0
  3. package/dist/clipboard/build.js +128 -0
  4. package/dist/clipboard/build.js.map +1 -0
  5. package/dist/clipboard/clipboard.d.ts +33 -0
  6. package/dist/clipboard/clipboard.js +45 -0
  7. package/dist/clipboard/clipboard.js.map +1 -0
  8. package/dist/clipboard/fragment.d.ts +112 -0
  9. package/dist/clipboard/fragment.js +79 -0
  10. package/dist/clipboard/fragment.js.map +1 -0
  11. package/dist/clipboard/html.d.ts +26 -0
  12. package/dist/clipboard/html.js +82 -0
  13. package/dist/clipboard/html.js.map +1 -0
  14. package/dist/clipboard/index.d.ts +15 -0
  15. package/dist/clipboard/index.js +16 -0
  16. package/dist/clipboard/index.js.map +1 -0
  17. package/dist/clipboard/references.d.ts +50 -0
  18. package/dist/clipboard/references.js +0 -0
  19. package/dist/clipboard/references.js.map +1 -0
  20. package/dist/clipboard/serialize.d.ts +69 -0
  21. package/dist/clipboard/serialize.js +130 -0
  22. package/dist/clipboard/serialize.js.map +1 -0
  23. package/dist/cms-core/collections.d.ts +82 -0
  24. package/dist/cms-core/collections.js +187 -0
  25. package/dist/cms-core/collections.js.map +1 -0
  26. package/dist/cms-core/documents.d.ts +71 -0
  27. package/dist/cms-core/documents.js +67 -0
  28. package/dist/cms-core/documents.js.map +1 -0
  29. package/dist/cms-core/envelopes.d.ts +80 -0
  30. package/dist/cms-core/envelopes.js +124 -0
  31. package/dist/cms-core/envelopes.js.map +1 -0
  32. package/dist/cms-core/fields.d.ts +220 -0
  33. package/dist/cms-core/fields.js +250 -0
  34. package/dist/cms-core/fields.js.map +1 -0
  35. package/dist/cms-core/fixtures.d.ts +92 -0
  36. package/dist/cms-core/fixtures.js +357 -0
  37. package/dist/cms-core/fixtures.js.map +1 -0
  38. package/dist/cms-core/hierarchy.d.ts +113 -0
  39. package/dist/cms-core/hierarchy.js +223 -0
  40. package/dist/cms-core/hierarchy.js.map +1 -0
  41. package/dist/cms-core/index.d.ts +25 -0
  42. package/dist/cms-core/index.js +26 -0
  43. package/dist/cms-core/index.js.map +1 -0
  44. package/dist/cms-core/infer.d.ts +103 -0
  45. package/dist/cms-core/infer.js +57 -0
  46. package/dist/cms-core/infer.js.map +1 -0
  47. package/dist/cms-core/issues.d.ts +92 -0
  48. package/dist/cms-core/issues.js +74 -0
  49. package/dist/cms-core/issues.js.map +1 -0
  50. package/dist/cms-core/json-schema.d.ts +25 -0
  51. package/dist/cms-core/json-schema.js +110 -0
  52. package/dist/cms-core/json-schema.js.map +1 -0
  53. package/dist/cms-core/localization.d.ts +51 -0
  54. package/dist/cms-core/localization.js +89 -0
  55. package/dist/cms-core/localization.js.map +1 -0
  56. package/dist/cms-core/routes.d.ts +76 -0
  57. package/dist/cms-core/routes.js +220 -0
  58. package/dist/cms-core/routes.js.map +1 -0
  59. package/dist/cms-core/self-type.d.ts +41 -0
  60. package/dist/cms-core/self-type.js +191 -0
  61. package/dist/cms-core/self-type.js.map +1 -0
  62. package/dist/cms-core/url-for-document.d.ts +39 -0
  63. package/dist/cms-core/url-for-document.js +138 -0
  64. package/dist/cms-core/url-for-document.js.map +1 -0
  65. package/dist/cms-core/validate-document.d.ts +121 -0
  66. package/dist/cms-core/validate-document.js +871 -0
  67. package/dist/cms-core/validate-document.js.map +1 -0
  68. package/dist/cms-core/versions.d.ts +75 -0
  69. package/dist/cms-core/versions.js +97 -0
  70. package/dist/cms-core/versions.js.map +1 -0
  71. package/dist/collaboration/approval.d.ts +68 -0
  72. package/dist/collaboration/approval.js +104 -0
  73. package/dist/collaboration/approval.js.map +1 -0
  74. package/dist/collaboration/collaboration.d.ts +49 -0
  75. package/dist/collaboration/collaboration.js +56 -0
  76. package/dist/collaboration/collaboration.js.map +1 -0
  77. package/dist/collaboration/comments.d.ts +72 -0
  78. package/dist/collaboration/comments.js +118 -0
  79. package/dist/collaboration/comments.js.map +1 -0
  80. package/dist/collaboration/core.d.ts +25 -0
  81. package/dist/collaboration/core.js +26 -0
  82. package/dist/collaboration/core.js.map +1 -0
  83. package/dist/collaboration/index.d.ts +14 -0
  84. package/dist/collaboration/index.js +15 -0
  85. package/dist/collaboration/index.js.map +1 -0
  86. package/dist/collaboration/presence.d.ts +62 -0
  87. package/dist/collaboration/presence.js +85 -0
  88. package/dist/collaboration/presence.js.map +1 -0
  89. package/dist/collaboration/publishing.d.ts +60 -0
  90. package/dist/collaboration/publishing.js +93 -0
  91. package/dist/collaboration/publishing.js.map +1 -0
  92. package/dist/collaboration/versions.d.ts +52 -0
  93. package/dist/collaboration/versions.js +81 -0
  94. package/dist/collaboration/versions.js.map +1 -0
  95. package/dist/component-registry/index.d.ts +3 -0
  96. package/dist/component-registry/index.js +4 -0
  97. package/dist/component-registry/index.js.map +1 -0
  98. package/dist/component-registry/issues.d.ts +6 -0
  99. package/dist/component-registry/issues.js +2 -0
  100. package/dist/component-registry/issues.js.map +1 -0
  101. package/dist/component-registry/manifest.d.ts +164 -0
  102. package/dist/component-registry/manifest.js +129 -0
  103. package/dist/component-registry/manifest.js.map +1 -0
  104. package/dist/component-registry/registry.d.ts +33 -0
  105. package/dist/component-registry/registry.js +90 -0
  106. package/dist/component-registry/registry.js.map +1 -0
  107. package/dist/content/__fixtures__/filterable-collections.d.ts +14 -0
  108. package/dist/content/__fixtures__/filterable-collections.js +15 -0
  109. package/dist/content/__fixtures__/filterable-collections.js.map +1 -0
  110. package/dist/content/__fixtures__/sample-accessor-types.d.ts +56 -0
  111. package/dist/content/__fixtures__/sample-accessor-types.js +5 -0
  112. package/dist/content/__fixtures__/sample-accessor-types.js.map +1 -0
  113. package/dist/content/__fixtures__/sample-delivery-types.d.ts +122 -0
  114. package/dist/content/__fixtures__/sample-delivery-types.js +5 -0
  115. package/dist/content/__fixtures__/sample-delivery-types.js.map +1 -0
  116. package/dist/content/assets.d.ts +53 -0
  117. package/dist/content/assets.js +38 -0
  118. package/dist/content/assets.js.map +1 -0
  119. package/dist/content/binding-sources.d.ts +53 -0
  120. package/dist/content/binding-sources.js +73 -0
  121. package/dist/content/binding-sources.js.map +1 -0
  122. package/dist/content/client.d.ts +90 -0
  123. package/dist/content/client.js +383 -0
  124. package/dist/content/client.js.map +1 -0
  125. package/dist/content/codegen.d.ts +54 -0
  126. package/dist/content/codegen.js +305 -0
  127. package/dist/content/codegen.js.map +1 -0
  128. package/dist/content/context.d.ts +38 -0
  129. package/dist/content/context.js +21 -0
  130. package/dist/content/context.js.map +1 -0
  131. package/dist/content/cursor.d.ts +33 -0
  132. package/dist/content/cursor.js +104 -0
  133. package/dist/content/cursor.js.map +1 -0
  134. package/dist/content/index.d.ts +28 -0
  135. package/dist/content/index.js +29 -0
  136. package/dist/content/index.js.map +1 -0
  137. package/dist/content/locale.d.ts +30 -0
  138. package/dist/content/locale.js +26 -0
  139. package/dist/content/locale.js.map +1 -0
  140. package/dist/content/perspective.d.ts +29 -0
  141. package/dist/content/perspective.js +31 -0
  142. package/dist/content/perspective.js.map +1 -0
  143. package/dist/content/populate.d.ts +25 -0
  144. package/dist/content/populate.js +22 -0
  145. package/dist/content/populate.js.map +1 -0
  146. package/dist/content/query.d.ts +122 -0
  147. package/dist/content/query.js +257 -0
  148. package/dist/content/query.js.map +1 -0
  149. package/dist/content/raw.d.ts +13 -0
  150. package/dist/content/raw.js +14 -0
  151. package/dist/content/raw.js.map +1 -0
  152. package/dist/content/resolve.d.ts +97 -0
  153. package/dist/content/resolve.js +261 -0
  154. package/dist/content/resolve.js.map +1 -0
  155. package/dist/content/serialize.d.ts +30 -0
  156. package/dist/content/serialize.js +57 -0
  157. package/dist/content/serialize.js.map +1 -0
  158. package/dist/content/tags.d.ts +54 -0
  159. package/dist/content/tags.js +40 -0
  160. package/dist/content/tags.js.map +1 -0
  161. package/dist/data-binding/fixtures.d.ts +20 -0
  162. package/dist/data-binding/fixtures.js +47 -0
  163. package/dist/data-binding/fixtures.js.map +1 -0
  164. package/dist/data-binding/index.d.ts +14 -0
  165. package/dist/data-binding/index.js +15 -0
  166. package/dist/data-binding/index.js.map +1 -0
  167. package/dist/data-binding/issues.d.ts +45 -0
  168. package/dist/data-binding/issues.js +46 -0
  169. package/dist/data-binding/issues.js.map +1 -0
  170. package/dist/data-binding/resolve.d.ts +87 -0
  171. package/dist/data-binding/resolve.js +204 -0
  172. package/dist/data-binding/resolve.js.map +1 -0
  173. package/dist/data-binding/sample.d.ts +21 -0
  174. package/dist/data-binding/sample.js +23 -0
  175. package/dist/data-binding/sample.js.map +1 -0
  176. package/dist/data-binding/sources.d.ts +225 -0
  177. package/dist/data-binding/sources.js +154 -0
  178. package/dist/data-binding/sources.js.map +1 -0
  179. package/dist/data-binding/tokens.d.ts +62 -0
  180. package/dist/data-binding/tokens.js +150 -0
  181. package/dist/data-binding/tokens.js.map +1 -0
  182. package/dist/design-tokens/css.d.ts +34 -0
  183. package/dist/design-tokens/css.js +51 -0
  184. package/dist/design-tokens/css.js.map +1 -0
  185. package/dist/design-tokens/index.d.ts +10 -0
  186. package/dist/design-tokens/index.js +11 -0
  187. package/dist/design-tokens/index.js.map +1 -0
  188. package/dist/design-tokens/style-guide.d.ts +30 -0
  189. package/dist/design-tokens/style-guide.js +31 -0
  190. package/dist/design-tokens/style-guide.js.map +1 -0
  191. package/dist/design-tokens/tokens.d.ts +89 -0
  192. package/dist/design-tokens/tokens.js +112 -0
  193. package/dist/design-tokens/tokens.js.map +1 -0
  194. package/dist/export-sync/builder-source.d.ts +85 -0
  195. package/dist/export-sync/builder-source.js +124 -0
  196. package/dist/export-sync/builder-source.js.map +1 -0
  197. package/dist/export-sync/check.d.ts +61 -0
  198. package/dist/export-sync/check.js +126 -0
  199. package/dist/export-sync/check.js.map +1 -0
  200. package/dist/export-sync/cli.d.ts +89 -0
  201. package/dist/export-sync/cli.js +323 -0
  202. package/dist/export-sync/cli.js.map +1 -0
  203. package/dist/export-sync/core.d.ts +58 -0
  204. package/dist/export-sync/core.js +41 -0
  205. package/dist/export-sync/core.js.map +1 -0
  206. package/dist/export-sync/eject.d.ts +28 -0
  207. package/dist/export-sync/eject.js +21 -0
  208. package/dist/export-sync/eject.js.map +1 -0
  209. package/dist/export-sync/fixtures.d.ts +25 -0
  210. package/dist/export-sync/fixtures.js +87 -0
  211. package/dist/export-sync/fixtures.js.map +1 -0
  212. package/dist/export-sync/generate.d.ts +7 -0
  213. package/dist/export-sync/generate.js +505 -0
  214. package/dist/export-sync/generate.js.map +1 -0
  215. package/dist/export-sync/index.d.ts +37 -0
  216. package/dist/export-sync/index.js +39 -0
  217. package/dist/export-sync/index.js.map +1 -0
  218. package/dist/export-sync/init.d.ts +123 -0
  219. package/dist/export-sync/init.js +234 -0
  220. package/dist/export-sync/init.js.map +1 -0
  221. package/dist/export-sync/manifest-host.d.ts +48 -0
  222. package/dist/export-sync/manifest-host.js +73 -0
  223. package/dist/export-sync/manifest-host.js.map +1 -0
  224. package/dist/export-sync/node.d.ts +20 -0
  225. package/dist/export-sync/node.js +101 -0
  226. package/dist/export-sync/node.js.map +1 -0
  227. package/dist/export-sync/push.d.ts +76 -0
  228. package/dist/export-sync/push.js +197 -0
  229. package/dist/export-sync/push.js.map +1 -0
  230. package/dist/export-sync/registry-sync-client.d.ts +59 -0
  231. package/dist/export-sync/registry-sync-client.js +97 -0
  232. package/dist/export-sync/registry-sync-client.js.map +1 -0
  233. package/dist/export-sync/sync.d.ts +47 -0
  234. package/dist/export-sync/sync.js +47 -0
  235. package/dist/export-sync/sync.js.map +1 -0
  236. package/dist/export-sync/typegen.d.ts +40 -0
  237. package/dist/export-sync/typegen.js +45 -0
  238. package/dist/export-sync/typegen.js.map +1 -0
  239. package/dist/export-sync/validate.d.ts +19 -0
  240. package/dist/export-sync/validate.js +102 -0
  241. package/dist/export-sync/validate.js.map +1 -0
  242. package/dist/export-sync/watch.d.ts +66 -0
  243. package/dist/export-sync/watch.js +70 -0
  244. package/dist/export-sync/watch.js.map +1 -0
  245. package/dist/operations/assets.d.ts +198 -0
  246. package/dist/operations/assets.js +75 -0
  247. package/dist/operations/assets.js.map +1 -0
  248. package/dist/operations/authorization.d.ts +49 -0
  249. package/dist/operations/authorization.js +128 -0
  250. package/dist/operations/authorization.js.map +1 -0
  251. package/dist/operations/changesets.d.ts +160 -0
  252. package/dist/operations/changesets.js +442 -0
  253. package/dist/operations/changesets.js.map +1 -0
  254. package/dist/operations/client.d.ts +49 -0
  255. package/dist/operations/client.js +57 -0
  256. package/dist/operations/client.js.map +1 -0
  257. package/dist/operations/core.d.ts +238 -0
  258. package/dist/operations/core.js +269 -0
  259. package/dist/operations/core.js.map +1 -0
  260. package/dist/operations/documents.d.ts +432 -0
  261. package/dist/operations/documents.js +344 -0
  262. package/dist/operations/documents.js.map +1 -0
  263. package/dist/operations/graph.d.ts +138 -0
  264. package/dist/operations/graph.js +78 -0
  265. package/dist/operations/graph.js.map +1 -0
  266. package/dist/operations/index.d.ts +19 -0
  267. package/dist/operations/index.js +20 -0
  268. package/dist/operations/index.js.map +1 -0
  269. package/dist/operations/members.d.ts +87 -0
  270. package/dist/operations/members.js +56 -0
  271. package/dist/operations/members.js.map +1 -0
  272. package/dist/operations/publishing.d.ts +89 -0
  273. package/dist/operations/publishing.js +57 -0
  274. package/dist/operations/publishing.js.map +1 -0
  275. package/dist/operations/references.d.ts +222 -0
  276. package/dist/operations/references.js +177 -0
  277. package/dist/operations/references.js.map +1 -0
  278. package/dist/operations/schema.d.ts +413 -0
  279. package/dist/operations/schema.js +138 -0
  280. package/dist/operations/schema.js.map +1 -0
  281. package/dist/operations/tokens.d.ts +79 -0
  282. package/dist/operations/tokens.js +102 -0
  283. package/dist/operations/tokens.js.map +1 -0
  284. package/dist/persistence/adapter.d.ts +79 -0
  285. package/dist/persistence/adapter.js +55 -0
  286. package/dist/persistence/adapter.js.map +1 -0
  287. package/dist/persistence/assets.d.ts +120 -0
  288. package/dist/persistence/assets.js +141 -0
  289. package/dist/persistence/assets.js.map +1 -0
  290. package/dist/persistence/backend-validation.d.ts +43 -0
  291. package/dist/persistence/backend-validation.js +57 -0
  292. package/dist/persistence/backend-validation.js.map +1 -0
  293. package/dist/persistence/cli-tokens.d.ts +50 -0
  294. package/dist/persistence/cli-tokens.js +66 -0
  295. package/dist/persistence/cli-tokens.js.map +1 -0
  296. package/dist/persistence/cms.d.ts +148 -0
  297. package/dist/persistence/cms.js +232 -0
  298. package/dist/persistence/cms.js.map +1 -0
  299. package/dist/persistence/contract-scenarios.d.ts +73 -0
  300. package/dist/persistence/contract-scenarios.js +496 -0
  301. package/dist/persistence/contract-scenarios.js.map +1 -0
  302. package/dist/persistence/core.d.ts +96 -0
  303. package/dist/persistence/core.js +110 -0
  304. package/dist/persistence/core.js.map +1 -0
  305. package/dist/persistence/graph.d.ts +61 -0
  306. package/dist/persistence/graph.js +98 -0
  307. package/dist/persistence/graph.js.map +1 -0
  308. package/dist/persistence/index.d.ts +22 -0
  309. package/dist/persistence/index.js +23 -0
  310. package/dist/persistence/index.js.map +1 -0
  311. package/dist/persistence/members.d.ts +70 -0
  312. package/dist/persistence/members.js +0 -0
  313. package/dist/persistence/members.js.map +1 -0
  314. package/dist/persistence/publishing.d.ts +59 -0
  315. package/dist/persistence/publishing.js +95 -0
  316. package/dist/persistence/publishing.js.map +1 -0
  317. package/dist/persistence/reference-extraction.d.ts +44 -0
  318. package/dist/persistence/reference-extraction.js +204 -0
  319. package/dist/persistence/reference-extraction.js.map +1 -0
  320. package/dist/persistence/reference-indexing.d.ts +68 -0
  321. package/dist/persistence/reference-indexing.js +112 -0
  322. package/dist/persistence/reference-indexing.js.map +1 -0
  323. package/dist/persistence/references.d.ts +257 -0
  324. package/dist/persistence/references.js +0 -0
  325. package/dist/persistence/references.js.map +1 -0
  326. package/dist/persistence/seed.d.ts +55 -0
  327. package/dist/persistence/seed.js +102 -0
  328. package/dist/persistence/seed.js.map +1 -0
  329. package/dist/persistence/self-maintaining-adapter.d.ts +41 -0
  330. package/dist/persistence/self-maintaining-adapter.js +79 -0
  331. package/dist/persistence/self-maintaining-adapter.js.map +1 -0
  332. package/dist/plugins/asset-storage.d.ts +76 -0
  333. package/dist/plugins/asset-storage.js +104 -0
  334. package/dist/plugins/asset-storage.js.map +1 -0
  335. package/dist/plugins/component-package.d.ts +54 -0
  336. package/dist/plugins/component-package.js +92 -0
  337. package/dist/plugins/component-package.js.map +1 -0
  338. package/dist/plugins/data-sources.d.ts +78 -0
  339. package/dist/plugins/data-sources.js +99 -0
  340. package/dist/plugins/data-sources.js.map +1 -0
  341. package/dist/plugins/examples.d.ts +47 -0
  342. package/dist/plugins/examples.js +205 -0
  343. package/dist/plugins/examples.js.map +1 -0
  344. package/dist/plugins/export-targets.d.ts +47 -0
  345. package/dist/plugins/export-targets.js +78 -0
  346. package/dist/plugins/export-targets.js.map +1 -0
  347. package/dist/plugins/field-types.d.ts +86 -0
  348. package/dist/plugins/field-types.js +93 -0
  349. package/dist/plugins/field-types.js.map +1 -0
  350. package/dist/plugins/hooks.d.ts +60 -0
  351. package/dist/plugins/hooks.js +94 -0
  352. package/dist/plugins/hooks.js.map +1 -0
  353. package/dist/plugins/index.d.ts +27 -0
  354. package/dist/plugins/index.js +28 -0
  355. package/dist/plugins/index.js.map +1 -0
  356. package/dist/plugins/marketplace.d.ts +90 -0
  357. package/dist/plugins/marketplace.js +110 -0
  358. package/dist/plugins/marketplace.js.map +1 -0
  359. package/dist/plugins/plugin.d.ts +107 -0
  360. package/dist/plugins/plugin.js +122 -0
  361. package/dist/plugins/plugin.js.map +1 -0
  362. package/dist/plugins/templates.d.ts +66 -0
  363. package/dist/plugins/templates.js +74 -0
  364. package/dist/plugins/templates.js.map +1 -0
  365. package/dist/project-graph/binding.d.ts +68 -0
  366. package/dist/project-graph/binding.js +39 -0
  367. package/dist/project-graph/binding.js.map +1 -0
  368. package/dist/project-graph/container.d.ts +126 -0
  369. package/dist/project-graph/container.js +221 -0
  370. package/dist/project-graph/container.js.map +1 -0
  371. package/dist/project-graph/edit.d.ts +66 -0
  372. package/dist/project-graph/edit.js +201 -0
  373. package/dist/project-graph/edit.js.map +1 -0
  374. package/dist/project-graph/fixtures.d.ts +51 -0
  375. package/dist/project-graph/fixtures.js +224 -0
  376. package/dist/project-graph/fixtures.js.map +1 -0
  377. package/dist/project-graph/ids.d.ts +17 -0
  378. package/dist/project-graph/ids.js +19 -0
  379. package/dist/project-graph/ids.js.map +1 -0
  380. package/dist/project-graph/index.d.ts +12 -0
  381. package/dist/project-graph/index.js +13 -0
  382. package/dist/project-graph/index.js.map +1 -0
  383. package/dist/project-graph/issues.d.ts +61 -0
  384. package/dist/project-graph/issues.js +44 -0
  385. package/dist/project-graph/issues.js.map +1 -0
  386. package/dist/project-graph/json.d.ts +6 -0
  387. package/dist/project-graph/json.js +10 -0
  388. package/dist/project-graph/json.js.map +1 -0
  389. package/dist/project-graph/node.d.ts +48 -0
  390. package/dist/project-graph/node.js +42 -0
  391. package/dist/project-graph/node.js.map +1 -0
  392. package/dist/project-graph/normalize.d.ts +17 -0
  393. package/dist/project-graph/normalize.js +110 -0
  394. package/dist/project-graph/normalize.js.map +1 -0
  395. package/dist/project-graph/serialize.d.ts +36 -0
  396. package/dist/project-graph/serialize.js +51 -0
  397. package/dist/project-graph/serialize.js.map +1 -0
  398. package/dist/project-graph/structure.d.ts +40 -0
  399. package/dist/project-graph/structure.js +36 -0
  400. package/dist/project-graph/structure.js.map +1 -0
  401. package/dist/project-graph/validate.d.ts +84 -0
  402. package/dist/project-graph/validate.js +158 -0
  403. package/dist/project-graph/validate.js.map +1 -0
  404. package/dist/rich-text/adapter.d.ts +43 -0
  405. package/dist/rich-text/adapter.js +24 -0
  406. package/dist/rich-text/adapter.js.map +1 -0
  407. package/dist/rich-text/dom-editor.d.ts +101 -0
  408. package/dist/rich-text/dom-editor.js +482 -0
  409. package/dist/rich-text/dom-editor.js.map +1 -0
  410. package/dist/rich-text/embed.d.ts +70 -0
  411. package/dist/rich-text/embed.js +70 -0
  412. package/dist/rich-text/embed.js.map +1 -0
  413. package/dist/rich-text/fixtures.d.ts +25 -0
  414. package/dist/rich-text/fixtures.js +115 -0
  415. package/dist/rich-text/fixtures.js.map +1 -0
  416. package/dist/rich-text/html.d.ts +5 -0
  417. package/dist/rich-text/html.js +309 -0
  418. package/dist/rich-text/html.js.map +1 -0
  419. package/dist/rich-text/index.d.ts +19 -0
  420. package/dist/rich-text/index.js +20 -0
  421. package/dist/rich-text/index.js.map +1 -0
  422. package/dist/rich-text/markdown.d.ts +7 -0
  423. package/dist/rich-text/markdown.js +235 -0
  424. package/dist/rich-text/markdown.js.map +1 -0
  425. package/dist/rich-text/portable-text.d.ts +50 -0
  426. package/dist/rich-text/portable-text.js +223 -0
  427. package/dist/rich-text/portable-text.js.map +1 -0
  428. package/dist/rich-text/registry.d.ts +48 -0
  429. package/dist/rich-text/registry.js +16 -0
  430. package/dist/rich-text/registry.js.map +1 -0
  431. package/dist/rich-text/render.d.ts +69 -0
  432. package/dist/rich-text/render.js +205 -0
  433. package/dist/rich-text/render.js.map +1 -0
  434. package/dist/rich-text/schema.d.ts +86 -0
  435. package/dist/rich-text/schema.js +80 -0
  436. package/dist/rich-text/schema.js.map +1 -0
  437. package/dist/rich-text/test-support.d.ts +7 -0
  438. package/dist/rich-text/test-support.js +8 -0
  439. package/dist/rich-text/test-support.js.map +1 -0
  440. package/dist/runtime-renderer/client.d.ts +14 -0
  441. package/dist/runtime-renderer/client.js +15 -0
  442. package/dist/runtime-renderer/client.js.map +1 -0
  443. package/dist/runtime-renderer/condition.d.ts +8 -0
  444. package/dist/runtime-renderer/condition.js +48 -0
  445. package/dist/runtime-renderer/condition.js.map +1 -0
  446. package/dist/runtime-renderer/content-client.d.ts +62 -0
  447. package/dist/runtime-renderer/content-client.js +37 -0
  448. package/dist/runtime-renderer/content-client.js.map +1 -0
  449. package/dist/runtime-renderer/context.d.ts +185 -0
  450. package/dist/runtime-renderer/context.js +7 -0
  451. package/dist/runtime-renderer/context.js.map +1 -0
  452. package/dist/runtime-renderer/fallback.d.ts +39 -0
  453. package/dist/runtime-renderer/fallback.js +45 -0
  454. package/dist/runtime-renderer/fallback.js.map +1 -0
  455. package/dist/runtime-renderer/index.d.ts +13 -0
  456. package/dist/runtime-renderer/index.js +13 -0
  457. package/dist/runtime-renderer/index.js.map +1 -0
  458. package/dist/runtime-renderer/primitives.d.ts +85 -0
  459. package/dist/runtime-renderer/primitives.js +442 -0
  460. package/dist/runtime-renderer/primitives.js.map +1 -0
  461. package/dist/runtime-renderer/render.d.ts +138 -0
  462. package/dist/runtime-renderer/render.js +825 -0
  463. package/dist/runtime-renderer/render.js.map +1 -0
  464. package/dist/runtime-renderer/rich-text.d.ts +26 -0
  465. package/dist/runtime-renderer/rich-text.js +113 -0
  466. package/dist/runtime-renderer/rich-text.js.map +1 -0
  467. package/dist/starter-kits/index.d.ts +13 -0
  468. package/dist/starter-kits/index.js +14 -0
  469. package/dist/starter-kits/index.js.map +1 -0
  470. package/dist/starter-kits/instantiate.d.ts +29 -0
  471. package/dist/starter-kits/instantiate.js +24 -0
  472. package/dist/starter-kits/instantiate.js.map +1 -0
  473. package/dist/starter-kits/kit.d.ts +61 -0
  474. package/dist/starter-kits/kit.js +37 -0
  475. package/dist/starter-kits/kit.js.map +1 -0
  476. package/dist/starter-kits/kits.d.ts +7 -0
  477. package/dist/starter-kits/kits.js +201 -0
  478. package/dist/starter-kits/kits.js.map +1 -0
  479. package/dist/starter-kits/manifests.d.ts +7 -0
  480. package/dist/starter-kits/manifests.js +111 -0
  481. package/dist/starter-kits/manifests.js.map +1 -0
  482. package/dist/starter-kits/upgrade.d.ts +39 -0
  483. package/dist/starter-kits/upgrade.js +54 -0
  484. package/dist/starter-kits/upgrade.js.map +1 -0
  485. package/dist/starter-kits/validate.d.ts +16 -0
  486. package/dist/starter-kits/validate.js +77 -0
  487. package/dist/starter-kits/validate.js.map +1 -0
  488. package/dist/studio-core/context.d.ts +27 -0
  489. package/dist/studio-core/context.js +44 -0
  490. package/dist/studio-core/context.js.map +1 -0
  491. package/dist/studio-core/errors.d.ts +58 -0
  492. package/dist/studio-core/errors.js +74 -0
  493. package/dist/studio-core/errors.js.map +1 -0
  494. package/dist/studio-core/fixtures.d.ts +18 -0
  495. package/dist/studio-core/fixtures.js +83 -0
  496. package/dist/studio-core/fixtures.js.map +1 -0
  497. package/dist/studio-core/ids.d.ts +22 -0
  498. package/dist/studio-core/ids.js +33 -0
  499. package/dist/studio-core/ids.js.map +1 -0
  500. package/dist/studio-core/index.d.ts +11 -0
  501. package/dist/studio-core/index.js +12 -0
  502. package/dist/studio-core/index.js.map +1 -0
  503. package/dist/studio-core/issues.d.ts +50 -0
  504. package/dist/studio-core/issues.js +33 -0
  505. package/dist/studio-core/issues.js.map +1 -0
  506. package/dist/studio-core/metadata.d.ts +109 -0
  507. package/dist/studio-core/metadata.js +74 -0
  508. package/dist/studio-core/metadata.js.map +1 -0
  509. package/dist/studio-core/repository.d.ts +73 -0
  510. package/dist/studio-core/repository.js +202 -0
  511. package/dist/studio-core/repository.js.map +1 -0
  512. package/dist/studio-core/sections.d.ts +73 -0
  513. package/dist/studio-core/sections.js +68 -0
  514. package/dist/studio-core/sections.js.map +1 -0
  515. package/dist/studio-core/validate.d.ts +15 -0
  516. package/dist/studio-core/validate.js +119 -0
  517. package/dist/studio-core/validate.js.map +1 -0
  518. package/dist/studio-core/workspace-config.d.ts +587 -0
  519. package/dist/studio-core/workspace-config.js +434 -0
  520. package/dist/studio-core/workspace-config.js.map +1 -0
  521. package/package.json +104 -0
@@ -0,0 +1,89 @@
1
+ import type { WorkspaceConfigHost, WorkspaceProvisioningClient } from './init';
2
+ import type { ManifestHost } from './manifest-host';
3
+ import type { ExportSource, FileIO, PullOptions } from './sync';
4
+ import type { Scheduler, WatchDriver } from './watch';
5
+ /**
6
+ * The `builder` CLI surface (EC-147 push; EC-148 typegen + check; EC-149 eject; EC-110–112
7
+ * validate + the deprecated export-era pull). Pure and injectable: `runCli` takes argv, an
8
+ * {@link ExportSource}, a {@link FileIO}, and (for `push`/`check`) the sync dependencies, and
9
+ * returns an exit code — so the whole CLI is unit-testable offline. The real `bin` is a thin
10
+ * wrapper that wires Node `fs`, the Convex source, the Node manifest host, and the HTTP sync
11
+ * client. Exit code 0 = success, 1 = failure (validation error / drift with --fail-on-error /
12
+ * any push validation failure / any check error).
13
+ */
14
+ /** Push flags (EC-147). `root` is the host-repo scan root for `*.manifest.ts(x)` modules. */
15
+ export interface PushCliFlags {
16
+ root: string;
17
+ ci: boolean;
18
+ watch: boolean;
19
+ }
20
+ /** Eject flags (EC-149). */
21
+ export interface EjectCliFlags {
22
+ /** Import specifier for the host repo's components module (default: {@link DEFAULT_COMPONENTS_IMPORT}). */
23
+ componentsImport?: string;
24
+ }
25
+ /** Typegen flags (EC-148). */
26
+ export interface TypegenCliFlags {
27
+ /** Output path for the generated types module (default: {@link DEFAULT_TYPEGEN_PATH}). */
28
+ out?: string;
29
+ }
30
+ /** Check flags (EC-148). Check is always non-interactive; `--ci` is accepted as a no-op. */
31
+ export interface CheckCliFlags {
32
+ /** Host-repo scan root for `*.manifest.ts(x)` modules. */
33
+ root: string;
34
+ /** Typegen output path to drift-check (default: {@link DEFAULT_TYPEGEN_PATH}). */
35
+ out?: string;
36
+ token?: string;
37
+ }
38
+ /** Init flags (EC-154). `root` is the host-repo root holding `elytra.config.ts`. */
39
+ export interface InitCliFlags {
40
+ root: string;
41
+ /** Slug of the configured project to provision; omitted = scaffold a starter config. */
42
+ project?: string;
43
+ }
44
+ export interface ParsedCli {
45
+ command: 'pull' | 'validate' | 'push' | 'eject' | 'typegen' | 'check' | 'init' | 'help' | 'unknown';
46
+ options: PullOptions;
47
+ /** Present when `command` is `init`. */
48
+ init?: InitCliFlags;
49
+ /** Present when `command` is `push`. */
50
+ push?: PushCliFlags;
51
+ /** Present when `command` is `eject`. */
52
+ eject?: EjectCliFlags;
53
+ /** Present when `command` is `typegen`. */
54
+ typegen?: TypegenCliFlags;
55
+ /** Present when `command` is `check`. */
56
+ check?: CheckCliFlags;
57
+ /** Set when argv is malformed (unknown command/flag value) — runCli exits non-zero. */
58
+ error?: string;
59
+ }
60
+ /**
61
+ * Parse argv (without node/script) into a command + options. An unrecognized command or an
62
+ * invalid flag value is reported via `error` so the CLI fails loudly (it is a CI gate).
63
+ */
64
+ export declare function parseCli(argv: readonly string[]): ParsedCli;
65
+ /**
66
+ * What the real bin wires for `push` (EC-147) and `check` (EC-148): manifest discovery
67
+ * and — for `--watch` — an fs event driver. Injected so the push/check CLI is testable
68
+ * without fs or process state. The `check` content source (the builder snapshot) is the
69
+ * injected {@link ExportSource}.
70
+ */
71
+ export interface PushCliDeps {
72
+ host: ManifestHost;
73
+ /** Required for `--watch` (the bin passes `createFsWatchDriver()`). */
74
+ watchDriver?: WatchDriver;
75
+ debounceMs?: number;
76
+ scheduler?: Scheduler;
77
+ }
78
+ /**
79
+ * What the real bin wires for `init` (EC-154): config discovery (dynamic import,
80
+ * like manifest discovery) and the backend provisioning seam. Injected so the
81
+ * init CLI is testable with in-memory operations — no live Convex.
82
+ */
83
+ export interface InitCliDeps {
84
+ configHost: WorkspaceConfigHost;
85
+ /** Required for `--project`; scaffold mode runs without a backend. */
86
+ client?: WorkspaceProvisioningClient;
87
+ }
88
+ /** Run the CLI. Returns a process exit code; never throws. 0 = success, 1 = failure. */
89
+ export declare function runCli(argv: readonly string[], source: ExportSource, io: FileIO, pushDeps?: PushCliDeps, initDeps?: InitCliDeps): Promise<number>;
@@ -0,0 +1,323 @@
1
+ import { runCheck } from './check';
2
+ import { DEFAULT_COMPONENTS_IMPORT } from './core';
3
+ import { runEject } from './eject';
4
+ import { runInit } from './init';
5
+ import { runPush } from './push';
6
+ import { SYNC_TOKEN_ENV } from './registry-sync-client';
7
+ import { runPull } from './sync';
8
+ import { DEFAULT_TYPEGEN_PATH, runTypegen } from './typegen';
9
+ import { runWatch } from './watch';
10
+ const HELP = `builder — Elytra CLI
11
+
12
+ The embedded runtime is the default delivery: your app renders the canonical graph through the
13
+ published @elytracms runtime packages. Component manifests are code-owned (defined in TS next to
14
+ the components); \`push\` validates them, \`check\` is the CI gate, and \`eject\` is the exit
15
+ guarantee — leave anytime with a standalone, working Next.js app.
16
+
17
+ Usage:
18
+ builder init [options] Scaffold elytra.config.ts / provision a configured project
19
+ builder push [options] Validate the component manifests declared in this repo
20
+ builder typegen [options] Generate delivery + accessor types from the collection schemas
21
+ builder check [options] CI gate: manifest validation, graph↔code coverage, type drift, validation
22
+ builder eject [options] Generate a standalone Next.js app from builder state (exit path)
23
+ builder validate [options] Validate the project; write nothing
24
+ builder pull [options] [deprecated] Export-era sync — use eject (exit) or push (validate)
25
+ builder help Show this help
26
+
27
+ Init options:
28
+ --project <slug> Provision the configured project with this slug (creates the
29
+ backend project from elytra.config.ts and seeds its collection
30
+ schema when the entry references a schema module). Idempotent.
31
+ --dir <path> Host-repo root holding elytra.config.ts (default: .)
32
+ Without --project, init scaffolds a starter elytra.config.ts (never overwrites one).
33
+
34
+ Push options:
35
+ --dir <path> Root to scan for *.manifest.ts(x) modules (default: .)
36
+ --watch Re-validate on manifest changes (local development)
37
+ --ci Non-interactive: any validation failure exits 1
38
+
39
+ Typegen options:
40
+ --out <path> Output file (default: ${DEFAULT_TYPEGEN_PATH}); commit it
41
+ --mode <published|draft> Schema state to generate from (default: published)
42
+
43
+ Check options:
44
+ --dir <path> Root to scan for *.manifest.ts(x) modules (default: .)
45
+ --out <path> Typegen output file to drift-check (default: ${DEFAULT_TYPEGEN_PATH})
46
+ --mode <published|draft> Content state to check (default: published)
47
+ --token <token> Sync auth token (or ${SYNC_TOKEN_ENV}); required over http
48
+ Check is always non-interactive (--ci is a no-op) and exits 1 on any error-severity issue.
49
+
50
+ Eject options:
51
+ --mode <published|draft> Content state to snapshot (default: published)
52
+ --components <specifier> Import specifier for your components module — it must export
53
+ projectManifests + projectImplementations
54
+ (default: ${DEFAULT_COMPONENTS_IMPORT}, relative to lib/registry.ts)
55
+ Eject always validates first and writes nothing on a validation error.
56
+
57
+ Pull options (deprecated):
58
+ --mode <published|draft> Content state to pull (default: published)
59
+ --check-drift Report files out of sync; write nothing
60
+ --fail-on-error Exit non-zero on a validation error (or drift, with --check-drift)
61
+ `;
62
+ /**
63
+ * Parse argv (without node/script) into a command + options. An unrecognized command or an
64
+ * invalid flag value is reported via `error` so the CLI fails loudly (it is a CI gate).
65
+ */
66
+ export function parseCli(argv) {
67
+ const [raw, ...rest] = argv;
68
+ const command = raw === 'pull'
69
+ ? 'pull'
70
+ : raw === 'validate'
71
+ ? 'validate'
72
+ : raw === 'push'
73
+ ? 'push'
74
+ : raw === 'eject'
75
+ ? 'eject'
76
+ : raw === 'typegen'
77
+ ? 'typegen'
78
+ : raw === 'check'
79
+ ? 'check'
80
+ : raw === 'init'
81
+ ? 'init'
82
+ : raw === undefined || raw === 'help'
83
+ ? 'help'
84
+ : 'unknown';
85
+ let error = command === 'unknown' ? `Unknown command "${raw}".` : undefined;
86
+ if (command === 'init') {
87
+ const init = { root: '.' };
88
+ for (let i = 0; i < rest.length; i++) {
89
+ const arg = rest[i];
90
+ if (arg === '--dir') {
91
+ const value = rest[++i];
92
+ if (value)
93
+ init.root = value;
94
+ else
95
+ error ??= 'Missing value for --dir.';
96
+ }
97
+ else if (arg === '--project') {
98
+ const value = rest[++i];
99
+ if (value)
100
+ init.project = value;
101
+ else
102
+ error ??= 'Missing value for --project.';
103
+ }
104
+ }
105
+ return { command, ...(error ? { error } : {}), init, options: { mode: 'published' } };
106
+ }
107
+ if (command === 'push') {
108
+ const push = { root: '.', ci: false, watch: false };
109
+ for (let i = 0; i < rest.length; i++) {
110
+ const arg = rest[i];
111
+ if (arg === '--dir') {
112
+ const value = rest[++i];
113
+ if (value)
114
+ push.root = value;
115
+ else
116
+ error ??= 'Missing value for --dir.';
117
+ }
118
+ else if (arg === '--ci') {
119
+ push.ci = true;
120
+ }
121
+ else if (arg === '--watch') {
122
+ push.watch = true;
123
+ }
124
+ }
125
+ if (push.ci && push.watch)
126
+ error ??= '--watch is interactive and cannot be combined with --ci.';
127
+ return {
128
+ command,
129
+ ...(error ? { error } : {}),
130
+ push,
131
+ options: { mode: 'published' },
132
+ };
133
+ }
134
+ if (command === 'typegen') {
135
+ const typegen = {};
136
+ let mode = 'published';
137
+ for (let i = 0; i < rest.length; i++) {
138
+ const arg = rest[i];
139
+ if (arg === '--out') {
140
+ const value = rest[++i];
141
+ if (value)
142
+ typegen.out = value;
143
+ else
144
+ error ??= 'Missing value for --out.';
145
+ }
146
+ else if (arg === '--mode') {
147
+ const value = rest[++i];
148
+ if (value === 'draft' || value === 'published')
149
+ mode = value;
150
+ else
151
+ error ??= `Invalid --mode "${value ?? ''}" (expected published|draft).`;
152
+ }
153
+ }
154
+ return { command, ...(error ? { error } : {}), typegen, options: { mode } };
155
+ }
156
+ if (command === 'check') {
157
+ const check = { root: '.' };
158
+ let mode = 'published';
159
+ for (let i = 0; i < rest.length; i++) {
160
+ const arg = rest[i];
161
+ if (arg === '--dir') {
162
+ const value = rest[++i];
163
+ if (value)
164
+ check.root = value;
165
+ else
166
+ error ??= 'Missing value for --dir.';
167
+ }
168
+ else if (arg === '--out') {
169
+ const value = rest[++i];
170
+ if (value)
171
+ check.out = value;
172
+ else
173
+ error ??= 'Missing value for --out.';
174
+ }
175
+ else if (arg === '--token') {
176
+ const value = rest[++i];
177
+ if (value)
178
+ check.token = value;
179
+ else
180
+ error ??= 'Missing value for --token.';
181
+ }
182
+ else if (arg === '--mode') {
183
+ const value = rest[++i];
184
+ if (value === 'draft' || value === 'published')
185
+ mode = value;
186
+ else
187
+ error ??= `Invalid --mode "${value ?? ''}" (expected published|draft).`;
188
+ }
189
+ // `--ci` is accepted as a no-op: check is always non-interactive.
190
+ }
191
+ return { command, ...(error ? { error } : {}), check, options: { mode } };
192
+ }
193
+ if (command === 'eject') {
194
+ const eject = {};
195
+ let mode = 'published';
196
+ for (let i = 0; i < rest.length; i++) {
197
+ const arg = rest[i];
198
+ if (arg === '--mode') {
199
+ const value = rest[++i];
200
+ if (value === 'draft' || value === 'published')
201
+ mode = value;
202
+ else
203
+ error ??= `Invalid --mode "${value ?? ''}" (expected published|draft).`;
204
+ }
205
+ else if (arg === '--components') {
206
+ const value = rest[++i];
207
+ if (value)
208
+ eject.componentsImport = value;
209
+ else
210
+ error ??= 'Missing value for --components.';
211
+ }
212
+ }
213
+ return {
214
+ command,
215
+ ...(error ? { error } : {}),
216
+ eject,
217
+ // Eject is always validation-gated; runEject implies failOnError.
218
+ options: { mode, failOnError: true },
219
+ };
220
+ }
221
+ let mode = 'published';
222
+ let checkDrift = false;
223
+ let failOnError = false;
224
+ for (let i = 0; i < rest.length; i++) {
225
+ const arg = rest[i];
226
+ if (arg === '--mode') {
227
+ const value = rest[++i];
228
+ if (value === 'draft' || value === 'published')
229
+ mode = value;
230
+ else
231
+ error ??= `Invalid --mode "${value ?? ''}" (expected published|draft).`;
232
+ }
233
+ else if (arg === '--check-drift') {
234
+ checkDrift = true;
235
+ }
236
+ else if (arg === '--fail-on-error') {
237
+ failOnError = true;
238
+ }
239
+ }
240
+ return {
241
+ command,
242
+ ...(error ? { error } : {}),
243
+ options: { mode, checkDrift, failOnError, validateOnly: command === 'validate' },
244
+ };
245
+ }
246
+ /** Run the CLI. Returns a process exit code; never throws. 0 = success, 1 = failure. */
247
+ export async function runCli(argv, source, io, pushDeps, initDeps) {
248
+ const { command, options, push, eject, typegen, check, init, error } = parseCli(argv);
249
+ if (error) {
250
+ io.log(`error: ${error}`);
251
+ io.log(HELP);
252
+ return 1;
253
+ }
254
+ if (command === 'help') {
255
+ io.log(HELP);
256
+ return 0;
257
+ }
258
+ if (command === 'init') {
259
+ if (!initDeps || !init) {
260
+ io.log('error: init is not configured (no workspace config host wired).');
261
+ return 1;
262
+ }
263
+ const result = await runInit({ host: initDeps.configHost, ...(initDeps.client ? { client: initDeps.client } : {}) }, io, { root: init.root, ...(init.project !== undefined ? { project: init.project } : {}) });
264
+ return result.ok ? 0 : 1;
265
+ }
266
+ if (command === 'push') {
267
+ if (!pushDeps || !push) {
268
+ io.log('error: push is not configured (no manifest host wired).');
269
+ return 1;
270
+ }
271
+ if (push.watch) {
272
+ if (!pushDeps.watchDriver) {
273
+ io.log('error: --watch is not available (no watch driver wired).');
274
+ return 1;
275
+ }
276
+ await runWatch(pushDeps.host, io, pushDeps.watchDriver, {
277
+ root: push.root,
278
+ ...(pushDeps.debounceMs !== undefined ? { debounceMs: pushDeps.debounceMs } : {}),
279
+ ...(pushDeps.scheduler ? { scheduler: pushDeps.scheduler } : {}),
280
+ });
281
+ return 0;
282
+ }
283
+ const result = await runPush(pushDeps.host, io, {
284
+ root: push.root,
285
+ ci: push.ci,
286
+ });
287
+ return result.ok ? 0 : 1;
288
+ }
289
+ if (command === 'typegen') {
290
+ const result = await runTypegen(source, io, {
291
+ mode: options.mode,
292
+ ...(typegen?.out ? { out: typegen.out } : {}),
293
+ });
294
+ return result.ok ? 0 : 1;
295
+ }
296
+ if (command === 'check') {
297
+ if (!pushDeps || !check) {
298
+ io.log('error: check is not configured (no manifest host wired).');
299
+ return 1;
300
+ }
301
+ const result = await runCheck(source, pushDeps.host, io, {
302
+ root: check.root,
303
+ mode: options.mode,
304
+ ...(check.out ? { out: check.out } : {}),
305
+ });
306
+ return result.ok ? 0 : 1;
307
+ }
308
+ if (command === 'eject') {
309
+ const result = await runEject(source, io, {
310
+ mode: options.mode,
311
+ ...(eject?.componentsImport ? { componentsImport: eject.componentsImport } : {}),
312
+ });
313
+ return result.ok ? 0 : 1;
314
+ }
315
+ // Export-era surface (EC-110–112), demoted by EC-149: still works, but the embedded runtime
316
+ // is the default delivery — `push` (+ typegen) is the day-to-day workflow, `eject` the exit.
317
+ if (command === 'pull') {
318
+ io.log('deprecated: `builder pull` is the export-era workflow. Use `builder eject` to leave with a standalone app, or `builder push` to sync component manifests up to the builder.');
319
+ }
320
+ const result = await runPull(source, io, options);
321
+ return result.ok ? 0 : 1;
322
+ }
323
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/export-sync/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import type { ComponentManifest } from '@elytracms/core/component-registry';
2
+ import type { CollectionDef, LocaleConfig, RedirectRecord, RouteRecord } from '@elytracms/core/cms-core';
3
+ import type { DataSource } from '@elytracms/core/data-binding';
4
+ import type { ProjectGraph } from '@elytracms/core/project-graph';
5
+ /**
6
+ * @elytracms/export-sync core model (brief §4.9, Phase 9; reframed by EC-149 / vision AD-1).
7
+ * The embedded runtime is the default delivery; generation survives as the **eject path** —
8
+ * a pure function from the canonical project model to a standalone Next.js App Router app.
9
+ * The same input always produces the same output (deterministic), so ejected output is
10
+ * reviewable, diffable, and drift-checkable.
11
+ */
12
+ /** A single generated file: a repo-relative path and its full contents. */
13
+ export interface GeneratedFile {
14
+ /** Path relative to the export root, POSIX-separated, e.g. `app/layout.tsx`. */
15
+ path: string;
16
+ contents: string;
17
+ }
18
+ /** Everything the generator needs from the canonical model to produce an app. */
19
+ export interface ExportInput {
20
+ /** Human project name (drives package name, titles). */
21
+ projectName: string;
22
+ /** Stable slug used for the generated package name. */
23
+ slug: string;
24
+ graph: ProjectGraph;
25
+ routes: RouteRecord[];
26
+ redirects: RedirectRecord[];
27
+ collections: CollectionDef[];
28
+ /** Component manifests to wire into the exported registry (ids + namespaces). */
29
+ manifests: ComponentManifest[];
30
+ sources: DataSource[];
31
+ localeConfig: LocaleConfig;
32
+ /** The design-token CSS (from `@elytracms/core/design-tokens` `emitTokensCss()`). */
33
+ tokensCss: string;
34
+ /**
35
+ * Import specifier for the host repo's components module (EC-149, vision AD-2): the module
36
+ * that exports `projectManifests` and `projectImplementations` — the project's REAL component
37
+ * code, which lives in the host repo and is never generated. Relative specifiers resolve from
38
+ * `lib/registry.ts`; bare specifiers must be a dependency of the ejected app. Defaults to
39
+ * {@link DEFAULT_COMPONENTS_IMPORT}. Only used when the project has non-primitive components.
40
+ */
41
+ componentsImport?: string;
42
+ }
43
+ /**
44
+ * Default host-components import specifier: a `components/` module at the ejected app root
45
+ * (relative to the generated `lib/registry.ts`). Point `eject --components <specifier>` at your
46
+ * real components module to override.
47
+ */
48
+ export declare const DEFAULT_COMPONENTS_IMPORT = "../components";
49
+ /** Which content state the exported app reads (brief §4.9 — published vs draft). */
50
+ export type ExportMode = 'published' | 'draft';
51
+ /** A namespaced banner all generated files carry, so ejected code is clearly identifiable. */
52
+ export declare function generatedBanner(path: string): string;
53
+ /** Stable JSON serialization (sorted keys) so generated data files are diff-stable. */
54
+ export declare function stableJson(value: unknown): string;
55
+ /** Sort generated files by path for deterministic ordering. */
56
+ export declare function sortFiles(files: GeneratedFile[]): GeneratedFile[];
57
+ /** Convert a route pattern (`/blog/:slug`) into a Next.js App Router segment path. */
58
+ export declare function routeToAppPath(pattern: string): string;
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Default host-components import specifier: a `components/` module at the ejected app root
3
+ * (relative to the generated `lib/registry.ts`). Point `eject --components <specifier>` at your
4
+ * real components module to override.
5
+ */
6
+ export const DEFAULT_COMPONENTS_IMPORT = '../components';
7
+ /** A namespaced banner all generated files carry, so ejected code is clearly identifiable. */
8
+ export function generatedBanner(path) {
9
+ return `/* Generated by \`builder eject\` (@elytracms/export-sync) — ${path}.
10
+ * Yours after eject: no builder-only runtime dependencies, safe to edit and own.
11
+ * Re-running \`builder eject\` overwrites generated files with the current builder state. */`;
12
+ }
13
+ /** Stable JSON serialization (sorted keys) so generated data files are diff-stable. */
14
+ export function stableJson(value) {
15
+ return JSON.stringify(value, sortedReplacer(), 2);
16
+ }
17
+ function sortedReplacer() {
18
+ return (_key, value) => {
19
+ if (value && typeof value === 'object' && !Array.isArray(value)) {
20
+ const out = {};
21
+ for (const k of Object.keys(value).sort()) {
22
+ out[k] = value[k];
23
+ }
24
+ return out;
25
+ }
26
+ return value;
27
+ };
28
+ }
29
+ /** Sort generated files by path for deterministic ordering. */
30
+ export function sortFiles(files) {
31
+ return [...files].sort((a, b) => (a.path < b.path ? -1 : a.path > b.path ? 1 : 0));
32
+ }
33
+ /** Convert a route pattern (`/blog/:slug`) into a Next.js App Router segment path. */
34
+ export function routeToAppPath(pattern) {
35
+ const segments = pattern
36
+ .split('/')
37
+ .filter((s) => s.length > 0)
38
+ .map((seg) => (seg.startsWith(':') ? `[${seg.slice(1)}]` : seg));
39
+ return segments.length === 0 ? '' : segments.join('/');
40
+ }
41
+ //# sourceMappingURL=core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/export-sync/core.ts"],"names":[],"mappings":"AA8CA;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,eAAe,CAAA;AAKxD,8FAA8F;AAC9F,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,gEAAgE,IAAI;;8FAEiB,CAAA;AAC9F,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACrB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,MAAM,GAAG,GAA4B,EAAE,CAAA;YACvC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAgC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACrE,GAAG,CAAC,CAAC,CAAC,GAAI,KAAiC,CAAC,CAAC,CAAC,CAAA;YAChD,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;AACH,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,SAAS,CAAC,KAAsB;IAC9C,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACpF,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,MAAM,QAAQ,GAAG,OAAO;SACrB,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;SAC3B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAClE,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACxD,CAAC"}
@@ -0,0 +1,28 @@
1
+ import type { ExportMode } from './core';
2
+ import type { ExportSource, FileIO, PullResult } from './sync';
3
+ /**
4
+ * `builder eject` (EC-149, vision AD-1). The embedded runtime is the default delivery; eject is
5
+ * the **exit guarantee** — generate a standalone, buildable Next.js app from the current builder
6
+ * state, with the canonical model snapshotted into the repo (zero runtime dependency on the
7
+ * builder backend) and the host repo's REAL components imported by the generated registry
8
+ * (vision AD-2 — no stubs are generated).
9
+ *
10
+ * Eject reuses the deterministic EC-101–113 pipeline via {@link runPull} and is always
11
+ * validation-gated: an eject never writes a broken app, so `--fail-on-error` is implied.
12
+ */
13
+ export interface EjectOptions {
14
+ /** Content state to snapshot (default: published). */
15
+ mode: ExportMode;
16
+ /**
17
+ * Import specifier the generated registry uses for the host repo's components module (the
18
+ * module exporting `projectManifests` + `projectImplementations`). Defaults to
19
+ * {@link DEFAULT_COMPONENTS_IMPORT}.
20
+ */
21
+ componentsImport?: string;
22
+ }
23
+ /** The structured eject result — the underlying pull result plus the resolved components import. */
24
+ export interface EjectResult extends PullResult {
25
+ componentsImport: string;
26
+ }
27
+ /** Run an eject. Returns a structured result and never throws; validation issues are data. */
28
+ export declare function runEject(source: ExportSource, io: FileIO, options: EjectOptions): Promise<EjectResult>;
@@ -0,0 +1,21 @@
1
+ import { DEFAULT_COMPONENTS_IMPORT } from './core';
2
+ import { runPull } from './sync';
3
+ /** Run an eject. Returns a structured result and never throws; validation issues are data. */
4
+ export async function runEject(source, io, options) {
5
+ const componentsImport = options.componentsImport ?? DEFAULT_COMPONENTS_IMPORT;
6
+ // Inject the components-import wiring into the canonical input; everything else is the
7
+ // provider's published/draft state, snapshotted as-is.
8
+ const ejectSource = {
9
+ loadInput: async (mode) => ({ ...(await source.loadInput(mode)), componentsImport }),
10
+ };
11
+ io.log(`Eject (${options.mode}): generating a standalone Next.js app (components from ${componentsImport}).`);
12
+ const result = await runPull(ejectSource, io, { mode: options.mode, failOnError: true });
13
+ if (result.ok) {
14
+ io.log('Eject complete: the app builds from its content snapshot — no builder backend required.');
15
+ }
16
+ else {
17
+ io.log('Eject aborted: fix the validation errors above — an eject never writes a broken app.');
18
+ }
19
+ return { ...result, componentsImport };
20
+ }
21
+ //# sourceMappingURL=eject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eject.js","sourceRoot":"","sources":["../../src/export-sync/eject.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AA8BhC,8FAA8F;AAC9F,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAoB,EACpB,EAAU,EACV,OAAqB;IAErB,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,yBAAyB,CAAA;IAE9E,uFAAuF;IACvF,uDAAuD;IACvD,MAAM,WAAW,GAAiB;QAChC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC;KACrF,CAAA;IAED,EAAE,CAAC,GAAG,CAAC,UAAU,OAAO,CAAC,IAAI,2DAA2D,gBAAgB,IAAI,CAAC,CAAA;IAC7G,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;IACxF,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,EAAE,CAAC,GAAG,CAAC,yFAAyF,CAAC,CAAA;IACnG,CAAC;SAAM,CAAC;QACN,EAAE,CAAC,GAAG,CAAC,sFAAsF,CAAC,CAAA;IAChG,CAAC;IACD,OAAO,EAAE,GAAG,MAAM,EAAE,gBAAgB,EAAE,CAAA;AACxC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { ComponentManifest } from '@elytracms/core/component-registry';
2
+ import type { RedirectRecord, RouteRecord } from '@elytracms/core/cms-core';
3
+ import type { ExportInput } from './core';
4
+ /**
5
+ * A deterministic reference export input (EC-113), assembled from the canonical sample fixtures.
6
+ * Used to test generation determinism and as a worked example — NOT a production seed.
7
+ *
8
+ * The component manifests are defined inline (rather than imported from the React renderer) so
9
+ * this logic package stays free of UI/React deps; they mirror the base primitives the sample
10
+ * graph uses, with prop/slot shapes the graph validator checks against. Props are field-defs
11
+ * (EC-190 "props as fields"): the record key is the prop name; each value is a `FieldDef` minus
12
+ * `name`, with `context: 'prop'`.
13
+ */
14
+ /** The base primitives the reference graph (validSampleGraph) actually uses. */
15
+ export declare const referenceManifests: ComponentManifest[];
16
+ /**
17
+ * Routes that all bind to a renderable document (EC-187): `/` → the `page/home`
18
+ * document (composition), `/blog/:slug` → a `post` document by slug. So the
19
+ * export validates and every route renders. `r-post` carries a dynamic `:slug`
20
+ * param to exercise param routing.
21
+ */
22
+ export declare const referenceRoutes: RouteRecord[];
23
+ export declare const referenceRedirects: RedirectRecord[];
24
+ /** The full reference export input — deterministic. */
25
+ export declare const referenceInput: ExportInput;