@prismicio/types-internal 3.17.0 → 4.0.0-canary.72def6d

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 (709) hide show
  1. package/README.md +41 -25
  2. package/dist/common/asset.d.ts +22 -0
  3. package/dist/common/asset.d.ts.map +1 -0
  4. package/dist/common/asset.js +21 -0
  5. package/dist/common/asset.js.map +1 -0
  6. package/dist/common/embed.d.ts +21 -0
  7. package/dist/common/embed.d.ts.map +1 -0
  8. package/dist/common/embed.js +20 -0
  9. package/dist/common/embed.js.map +1 -0
  10. package/dist/common/hexaColorCode.d.ts +8 -0
  11. package/dist/common/hexaColorCode.d.ts.map +1 -0
  12. package/dist/common/hexaColorCode.js +8 -0
  13. package/dist/common/hexaColorCode.js.map +1 -0
  14. package/dist/common/nonEmptyString.d.ts +8 -0
  15. package/dist/common/nonEmptyString.d.ts.map +1 -0
  16. package/dist/common/nonEmptyString.js +7 -0
  17. package/dist/common/nonEmptyString.js.map +1 -0
  18. package/dist/common/widgetKey.d.ts +8 -0
  19. package/dist/common/widgetKey.d.ts.map +1 -0
  20. package/dist/common/widgetKey.js +8 -0
  21. package/dist/common/widgetKey.js.map +1 -0
  22. package/dist/content/boolean.d.ts +11 -0
  23. package/dist/content/boolean.d.ts.map +1 -0
  24. package/dist/content/boolean.js +11 -0
  25. package/dist/content/boolean.js.map +1 -0
  26. package/dist/content/codec/boolean.js +31 -0
  27. package/dist/content/codec/boolean.js.map +1 -0
  28. package/dist/content/codec/document.js +49 -0
  29. package/dist/content/codec/document.js.map +1 -0
  30. package/dist/content/codec/embed.js +42 -0
  31. package/dist/content/codec/embed.js.map +1 -0
  32. package/dist/content/codec/empty.js +35 -0
  33. package/dist/content/codec/empty.js.map +1 -0
  34. package/dist/content/codec/field.js +41 -0
  35. package/dist/content/codec/field.js.map +1 -0
  36. package/dist/content/codec/geopoint.js +32 -0
  37. package/dist/content/codec/geopoint.js.map +1 -0
  38. package/dist/content/codec/group.js +127 -0
  39. package/dist/content/codec/group.js.map +1 -0
  40. package/dist/content/codec/image.js +44 -0
  41. package/dist/content/codec/image.js.map +1 -0
  42. package/dist/content/codec/integrationField.js +31 -0
  43. package/dist/content/codec/integrationField.js.map +1 -0
  44. package/dist/content/codec/legacyContentCtx.d.ts +72 -0
  45. package/dist/content/codec/legacyContentCtx.d.ts.map +1 -0
  46. package/dist/content/codec/legacyContentCtx.js +76 -0
  47. package/dist/content/codec/legacyContentCtx.js.map +1 -0
  48. package/dist/content/codec/link.js +93 -0
  49. package/dist/content/codec/link.js.map +1 -0
  50. package/dist/content/codec/nestable.js +91 -0
  51. package/dist/content/codec/nestable.js.map +1 -0
  52. package/dist/content/codec/repeatable.js +56 -0
  53. package/dist/content/codec/repeatable.js.map +1 -0
  54. package/dist/content/codec/richText.js +87 -0
  55. package/dist/content/codec/richText.js.map +1 -0
  56. package/dist/content/codec/separator.js +26 -0
  57. package/dist/content/codec/separator.js.map +1 -0
  58. package/dist/content/codec/slice.js +220 -0
  59. package/dist/content/codec/slice.js.map +1 -0
  60. package/dist/content/codec/slices.js +106 -0
  61. package/dist/content/codec/slices.js.map +1 -0
  62. package/dist/content/codec/table.js +56 -0
  63. package/dist/content/codec/table.js.map +1 -0
  64. package/dist/content/codec/uid.js +31 -0
  65. package/dist/content/codec/uid.js.map +1 -0
  66. package/dist/content/codec/widget.js +39 -0
  67. package/dist/content/codec/widget.js.map +1 -0
  68. package/dist/content/document.d.ts +3026 -0
  69. package/dist/content/document.d.ts.map +1 -0
  70. package/dist/content/document.js +9 -0
  71. package/dist/content/document.js.map +1 -0
  72. package/dist/content/embed.d.ts +24 -0
  73. package/dist/content/embed.d.ts.map +1 -0
  74. package/dist/content/embed.js +12 -0
  75. package/dist/content/embed.js.map +1 -0
  76. package/dist/content/empty.d.ts +11 -0
  77. package/dist/content/empty.d.ts.map +1 -0
  78. package/dist/content/empty.js +11 -0
  79. package/dist/content/empty.js.map +1 -0
  80. package/dist/content/field.d.ts +78 -0
  81. package/dist/content/field.d.ts.map +1 -0
  82. package/dist/content/field.js +52 -0
  83. package/dist/content/field.js.map +1 -0
  84. package/dist/content/geopoint.d.ts +14 -0
  85. package/dist/content/geopoint.d.ts.map +1 -0
  86. package/dist/content/geopoint.js +9 -0
  87. package/dist/content/geopoint.js.map +1 -0
  88. package/dist/content/group.d.ts +18 -0
  89. package/dist/content/group.d.ts.map +1 -0
  90. package/dist/content/group.js +19 -0
  91. package/dist/content/group.js.map +1 -0
  92. package/dist/content/image.d.ts +52 -0
  93. package/dist/content/image.d.ts.map +1 -0
  94. package/dist/content/image.js +10 -0
  95. package/dist/content/image.js.map +1 -0
  96. package/dist/content/integrationField.d.ts +11 -0
  97. package/dist/content/integrationField.d.ts.map +1 -0
  98. package/dist/content/integrationField.js +11 -0
  99. package/dist/content/integrationField.js.map +1 -0
  100. package/dist/content/legacy/boolean.js +7 -0
  101. package/dist/content/legacy/boolean.js.map +1 -0
  102. package/dist/content/legacy/document.js +15 -0
  103. package/dist/content/legacy/document.js.map +1 -0
  104. package/dist/content/legacy/embed.js +23 -0
  105. package/dist/content/legacy/embed.js.map +1 -0
  106. package/dist/content/legacy/empty.js +7 -0
  107. package/dist/content/legacy/empty.js.map +1 -0
  108. package/dist/content/legacy/field.js +7 -0
  109. package/dist/content/legacy/field.js.map +1 -0
  110. package/dist/content/legacy/geopoint.js +10 -0
  111. package/dist/content/legacy/geopoint.js.map +1 -0
  112. package/dist/content/legacy/group.js +10 -0
  113. package/dist/content/legacy/group.js.map +1 -0
  114. package/dist/content/legacy/image.d.ts +1 -0
  115. package/dist/content/legacy/image.js +33 -0
  116. package/dist/content/legacy/image.js.map +1 -0
  117. package/dist/content/legacy/integrationField.js +7 -0
  118. package/dist/content/legacy/integrationField.js.map +1 -0
  119. package/dist/content/legacy/link.js +88 -0
  120. package/dist/content/legacy/link.js.map +1 -0
  121. package/dist/content/legacy/nestable.js +32 -0
  122. package/dist/content/legacy/nestable.js.map +1 -0
  123. package/dist/content/legacy/repeatable.js +13 -0
  124. package/dist/content/legacy/repeatable.js.map +1 -0
  125. package/dist/content/legacy/richText.js +100 -0
  126. package/dist/content/legacy/richText.js.map +1 -0
  127. package/dist/content/legacy/separator.js +7 -0
  128. package/dist/content/legacy/separator.js.map +1 -0
  129. package/dist/content/legacy/slice.js +23 -0
  130. package/dist/content/legacy/slice.js.map +1 -0
  131. package/dist/content/legacy/slices.js +13 -0
  132. package/dist/content/legacy/slices.js.map +1 -0
  133. package/dist/content/legacy/table.js +19 -0
  134. package/dist/content/legacy/table.js.map +1 -0
  135. package/dist/content/legacy/uid.js +7 -0
  136. package/dist/content/legacy/uid.js.map +1 -0
  137. package/dist/content/link.d.ts +188 -0
  138. package/dist/content/link.d.ts.map +1 -0
  139. package/dist/content/link.js +50 -0
  140. package/dist/content/link.js.map +1 -0
  141. package/dist/content/nestable.d.ts +755 -0
  142. package/dist/content/nestable.d.ts.map +1 -0
  143. package/dist/content/nestable.js +38 -0
  144. package/dist/content/nestable.js.map +1 -0
  145. package/dist/content/repeatable.d.ts +192 -0
  146. package/dist/content/repeatable.d.ts.map +1 -0
  147. package/dist/content/repeatable.js +13 -0
  148. package/dist/content/repeatable.js.map +1 -0
  149. package/dist/content/richText.d.ts +141 -0
  150. package/dist/content/richText.d.ts.map +1 -0
  151. package/dist/content/richText.js +23 -0
  152. package/dist/content/richText.js.map +1 -0
  153. package/dist/content/separator.d.ts +10 -0
  154. package/dist/content/separator.d.ts.map +1 -0
  155. package/dist/content/separator.js +8 -0
  156. package/dist/content/separator.js.map +1 -0
  157. package/dist/content/slice.d.ts +4527 -0
  158. package/dist/content/slice.d.ts.map +1 -0
  159. package/dist/content/slice.js +27 -0
  160. package/dist/content/slice.js.map +1 -0
  161. package/dist/content/slices.d.ts +4536 -0
  162. package/dist/content/slices.d.ts.map +1 -0
  163. package/dist/content/slices.js +18 -0
  164. package/dist/content/slices.js.map +1 -0
  165. package/dist/content/table.d.ts +153 -0
  166. package/dist/content/table.d.ts.map +1 -0
  167. package/dist/content/table.js +13 -0
  168. package/dist/content/table.js.map +1 -0
  169. package/dist/content/uid.d.ts +11 -0
  170. package/dist/content/uid.d.ts.map +1 -0
  171. package/dist/content/uid.js +11 -0
  172. package/dist/content/uid.js.map +1 -0
  173. package/dist/content/widget.d.ts +3026 -0
  174. package/dist/content/widget.d.ts.map +1 -0
  175. package/dist/content/widget.js +16 -0
  176. package/dist/content/widget.js.map +1 -0
  177. package/dist/index.d.ts +50 -0
  178. package/dist/index.js +2 -0
  179. package/dist/io-ts.d.ts +68728 -0
  180. package/dist/io-ts.d.ts.map +1 -0
  181. package/dist/io-ts.js +215 -0
  182. package/dist/io-ts.js.map +1 -0
  183. package/dist/model/boolean.d.ts +16 -0
  184. package/dist/model/boolean.d.ts.map +1 -0
  185. package/dist/model/boolean.js +16 -0
  186. package/dist/model/boolean.js.map +1 -0
  187. package/dist/model/color.d.ts +15 -0
  188. package/dist/model/color.d.ts.map +1 -0
  189. package/dist/model/color.js +15 -0
  190. package/dist/model/color.js.map +1 -0
  191. package/dist/model/customType.d.ts +3357 -0
  192. package/dist/model/customType.d.ts.map +1 -0
  193. package/dist/model/customType.js +18 -0
  194. package/dist/model/customType.js.map +1 -0
  195. package/dist/model/date.d.ts +16 -0
  196. package/dist/model/date.d.ts.map +1 -0
  197. package/dist/model/date.js +16 -0
  198. package/dist/model/date.js.map +1 -0
  199. package/dist/model/embed.d.ts +16 -0
  200. package/dist/model/embed.d.ts.map +1 -0
  201. package/dist/model/embed.js +16 -0
  202. package/dist/model/embed.js.map +1 -0
  203. package/dist/model/geopoint.d.ts +14 -0
  204. package/dist/model/geopoint.d.ts.map +1 -0
  205. package/dist/model/geopoint.js +12 -0
  206. package/dist/model/geopoint.js.map +1 -0
  207. package/dist/model/group.d.ts +568 -0
  208. package/dist/model/group.d.ts.map +1 -0
  209. package/dist/model/group.js +23 -0
  210. package/dist/model/group.js.map +1 -0
  211. package/dist/model/image.d.ts +24 -0
  212. package/dist/model/image.d.ts.map +1 -0
  213. package/dist/model/image.js +41 -0
  214. package/dist/model/image.js.map +1 -0
  215. package/dist/model/integrationField.d.ts +16 -0
  216. package/dist/model/integrationField.d.ts.map +1 -0
  217. package/dist/model/integrationField.js +16 -0
  218. package/dist/model/integrationField.js.map +1 -0
  219. package/dist/model/link.d.ts +48 -0
  220. package/dist/model/link.d.ts.map +1 -0
  221. package/dist/model/link.js +94 -0
  222. package/dist/model/link.js.map +1 -0
  223. package/dist/model/nestable.d.ts +184 -0
  224. package/dist/model/nestable.d.ts.map +1 -0
  225. package/dist/model/nestable.js +40 -0
  226. package/dist/model/nestable.js.map +1 -0
  227. package/dist/model/number.d.ts +18 -0
  228. package/dist/model/number.d.ts.map +1 -0
  229. package/dist/model/number.js +19 -0
  230. package/dist/model/number.js.map +1 -0
  231. package/dist/model/range.d.ts +18 -0
  232. package/dist/model/range.d.ts.map +1 -0
  233. package/dist/model/range.js +19 -0
  234. package/dist/model/range.js.map +1 -0
  235. package/dist/model/richText.d.ts +28 -0
  236. package/dist/model/richText.d.ts.map +1 -0
  237. package/dist/model/richText.js +72 -0
  238. package/dist/model/richText.js.map +1 -0
  239. package/dist/model/section.d.ts +3337 -0
  240. package/dist/model/section.d.ts.map +1 -0
  241. package/dist/model/section.js +10 -0
  242. package/dist/model/section.js.map +1 -0
  243. package/dist/model/select.d.ts +17 -0
  244. package/dist/model/select.d.ts.map +1 -0
  245. package/dist/model/select.js +22 -0
  246. package/dist/model/select.js.map +1 -0
  247. package/dist/model/separator.d.ts +13 -0
  248. package/dist/model/separator.d.ts.map +1 -0
  249. package/dist/model/separator.js +11 -0
  250. package/dist/model/separator.js.map +1 -0
  251. package/dist/model/slice.d.ts +3681 -0
  252. package/dist/model/slice.d.ts.map +1 -0
  253. package/dist/model/slice.js +54 -0
  254. package/dist/model/slice.js.map +1 -0
  255. package/dist/model/slices.d.ts +2225 -0
  256. package/dist/model/slices.d.ts.map +1 -0
  257. package/dist/model/slices.js +29 -0
  258. package/dist/model/slices.js.map +1 -0
  259. package/dist/model/table.d.ts +13 -0
  260. package/dist/model/table.d.ts.map +1 -0
  261. package/dist/model/table.js +17 -0
  262. package/dist/model/table.js.map +1 -0
  263. package/dist/model/text.d.ts +16 -0
  264. package/dist/model/text.d.ts.map +1 -0
  265. package/dist/model/text.js +16 -0
  266. package/dist/model/text.js.map +1 -0
  267. package/dist/model/timestamp.d.ts +16 -0
  268. package/dist/model/timestamp.d.ts.map +1 -0
  269. package/dist/model/timestamp.js +16 -0
  270. package/dist/model/timestamp.js.map +1 -0
  271. package/dist/model/uid.d.ts +16 -0
  272. package/dist/model/uid.d.ts.map +1 -0
  273. package/dist/model/uid.js +16 -0
  274. package/dist/model/uid.js.map +1 -0
  275. package/dist/model/widget.d.ts +3360 -0
  276. package/dist/model/widget.d.ts.map +1 -0
  277. package/dist/model/widget.js +44 -0
  278. package/dist/model/widget.js.map +1 -0
  279. package/dist/zod4.d.ts +33521 -0
  280. package/dist/zod4.d.ts.map +1 -0
  281. package/dist/zod4.js +127 -0
  282. package/dist/zod4.js.map +1 -0
  283. package/package.json +54 -58
  284. package/src/common/asset.ts +29 -0
  285. package/src/common/embed.ts +27 -0
  286. package/src/common/hexaColorCode.ts +11 -0
  287. package/src/common/nonEmptyString.ts +9 -0
  288. package/src/common/widgetKey.ts +11 -0
  289. package/src/content/boolean.ts +23 -0
  290. package/src/content/codec/boolean.ts +38 -0
  291. package/src/content/codec/document.ts +60 -0
  292. package/src/content/codec/embed.ts +55 -0
  293. package/src/content/codec/empty.ts +49 -0
  294. package/src/content/codec/field.ts +96 -0
  295. package/src/content/codec/geopoint.ts +40 -0
  296. package/src/content/codec/group.ts +163 -0
  297. package/src/content/codec/image.ts +50 -0
  298. package/src/content/codec/integrationField.ts +38 -0
  299. package/src/content/{LegacyContentCtx.ts → codec/legacyContentCtx.ts} +25 -15
  300. package/src/content/codec/link.ts +103 -0
  301. package/src/content/codec/nestable.ts +146 -0
  302. package/src/content/codec/repeatable.ts +68 -0
  303. package/src/content/codec/richText.ts +113 -0
  304. package/src/content/codec/separator.ts +33 -0
  305. package/src/content/codec/slice.ts +274 -0
  306. package/src/content/codec/slices.ts +130 -0
  307. package/src/content/codec/table.ts +65 -0
  308. package/src/content/codec/uid.ts +36 -0
  309. package/src/content/codec/widget.ts +58 -0
  310. package/src/content/document.ts +8 -0
  311. package/src/content/embed.ts +12 -0
  312. package/src/content/empty.ts +10 -0
  313. package/src/content/field.ts +87 -0
  314. package/src/content/geopoint.ts +11 -0
  315. package/src/content/group.ts +96 -0
  316. package/src/content/image.ts +103 -0
  317. package/src/content/integrationField.ts +10 -0
  318. package/src/content/legacy/boolean.ts +5 -0
  319. package/src/content/legacy/document.ts +25 -0
  320. package/src/content/legacy/embed.ts +23 -0
  321. package/src/content/legacy/empty.ts +10 -0
  322. package/src/content/legacy/field.ts +8 -0
  323. package/src/content/legacy/geopoint.ts +10 -0
  324. package/src/content/legacy/group.ts +15 -0
  325. package/src/content/legacy/image.ts +43 -0
  326. package/src/content/legacy/integrationField.ts +5 -0
  327. package/src/content/legacy/link.ts +171 -0
  328. package/src/content/legacy/nestable.ts +31 -0
  329. package/src/content/legacy/repeatable.ts +20 -0
  330. package/src/content/legacy/richText.ts +165 -0
  331. package/src/content/legacy/separator.ts +6 -0
  332. package/src/content/legacy/slice.ts +37 -0
  333. package/src/content/legacy/slices.ts +17 -0
  334. package/src/content/legacy/table.ts +39 -0
  335. package/src/content/legacy/uid.ts +6 -0
  336. package/src/content/legacy/widget.ts +15 -0
  337. package/src/content/link.ts +131 -0
  338. package/src/content/nestable.ts +64 -0
  339. package/src/content/repeatable.ts +13 -0
  340. package/src/content/richText.ts +32 -0
  341. package/src/content/separator.ts +9 -0
  342. package/src/content/slice.ts +41 -0
  343. package/src/content/slices.ts +23 -0
  344. package/src/content/table.ts +14 -0
  345. package/src/content/uid.ts +10 -0
  346. package/src/content/utils.ts +37 -105
  347. package/src/content/widget.ts +17 -0
  348. package/src/content/{fields/withDefaultValues.ts → withDefaultValues.ts} +34 -39
  349. package/src/index.ts +78 -0
  350. package/src/io-ts.ts +313 -0
  351. package/src/model/boolean.ts +15 -0
  352. package/src/model/color.ts +14 -0
  353. package/src/model/customType.ts +26 -0
  354. package/src/model/date.ts +15 -0
  355. package/src/model/diff/index.ts +4 -0
  356. package/src/{customtypes/diff/SharedSlice.ts → model/diff/sharedSlice.ts} +16 -18
  357. package/src/model/diff/utils.ts +45 -0
  358. package/src/model/diff/variation.ts +152 -0
  359. package/src/model/diff/widgets.ts +15 -0
  360. package/src/model/embed.ts +15 -0
  361. package/src/model/geopoint.ts +13 -0
  362. package/src/model/group.ts +36 -0
  363. package/src/model/image.ts +54 -0
  364. package/src/model/integrationField.ts +15 -0
  365. package/src/model/link.ts +147 -0
  366. package/src/model/nestable.ts +39 -0
  367. package/src/model/number.ts +26 -0
  368. package/src/model/range.ts +26 -0
  369. package/src/model/richText.ts +106 -0
  370. package/src/model/section.ts +12 -0
  371. package/src/model/select.ts +30 -0
  372. package/src/model/separator.ts +12 -0
  373. package/src/model/slice.ts +94 -0
  374. package/src/model/slices.ts +54 -0
  375. package/src/model/table.ts +20 -0
  376. package/src/model/text.ts +15 -0
  377. package/src/model/timestamp.ts +15 -0
  378. package/src/model/uid.ts +15 -0
  379. package/src/model/widget.ts +52 -0
  380. package/src/zod4.ts +153 -0
  381. package/lib/common/Asset.d.ts +0 -16
  382. package/lib/common/Asset.js +0 -11
  383. package/lib/common/Embed.d.ts +0 -15
  384. package/lib/common/Embed.js +0 -10
  385. package/lib/common/HexaColorCode.d.ts +0 -4
  386. package/lib/common/HexaColorCode.js +0 -7
  387. package/lib/common/UUID.d.ts +0 -6
  388. package/lib/common/UUID.js +0 -8
  389. package/lib/common/WidgetKey.d.ts +0 -3
  390. package/lib/common/WidgetKey.js +0 -8
  391. package/lib/common/index.d.ts +0 -3
  392. package/lib/common/index.js +0 -6
  393. package/lib/content/Document.d.ts +0 -11813
  394. package/lib/content/Document.js +0 -364
  395. package/lib/content/LegacyContentCtx.d.ts +0 -64
  396. package/lib/content/LegacyContentCtx.js +0 -130
  397. package/lib/content/fields/EmptyContent.d.ts +0 -16
  398. package/lib/content/fields/EmptyContent.js +0 -30
  399. package/lib/content/fields/GroupContent.d.ts +0 -53
  400. package/lib/content/fields/GroupContent.js +0 -307
  401. package/lib/content/fields/UIDContent.d.ts +0 -16
  402. package/lib/content/fields/UIDContent.js +0 -25
  403. package/lib/content/fields/WidgetContent.d.ts +0 -11749
  404. package/lib/content/fields/WidgetContent.js +0 -57
  405. package/lib/content/fields/index.d.ts +0 -6
  406. package/lib/content/fields/index.js +0 -9
  407. package/lib/content/fields/nestable/BooleanContent.d.ts +0 -18
  408. package/lib/content/fields/nestable/BooleanContent.js +0 -35
  409. package/lib/content/fields/nestable/EmbedContent.d.ts +0 -78
  410. package/lib/content/fields/nestable/EmbedContent.js +0 -56
  411. package/lib/content/fields/nestable/FieldContent/ColorContent.d.ts +0 -18
  412. package/lib/content/fields/nestable/FieldContent/ColorContent.js +0 -35
  413. package/lib/content/fields/nestable/FieldContent/DateContent.d.ts +0 -18
  414. package/lib/content/fields/nestable/FieldContent/DateContent.js +0 -35
  415. package/lib/content/fields/nestable/FieldContent/NumberContent.d.ts +0 -18
  416. package/lib/content/fields/nestable/FieldContent/NumberContent.js +0 -35
  417. package/lib/content/fields/nestable/FieldContent/RangeContent.d.ts +0 -18
  418. package/lib/content/fields/nestable/FieldContent/RangeContent.js +0 -35
  419. package/lib/content/fields/nestable/FieldContent/SelectContent.d.ts +0 -20
  420. package/lib/content/fields/nestable/FieldContent/SelectContent.js +0 -46
  421. package/lib/content/fields/nestable/FieldContent/TextContent.d.ts +0 -18
  422. package/lib/content/fields/nestable/FieldContent/TextContent.js +0 -35
  423. package/lib/content/fields/nestable/FieldContent/TimestampContent.d.ts +0 -18
  424. package/lib/content/fields/nestable/FieldContent/TimestampContent.js +0 -35
  425. package/lib/content/fields/nestable/FieldContent/common.d.ts +0 -1
  426. package/lib/content/fields/nestable/FieldContent/common.js +0 -4
  427. package/lib/content/fields/nestable/FieldContent/index.d.ts +0 -49
  428. package/lib/content/fields/nestable/FieldContent/index.js +0 -38
  429. package/lib/content/fields/nestable/GeoPointContent.d.ts +0 -33
  430. package/lib/content/fields/nestable/GeoPointContent.js +0 -31
  431. package/lib/content/fields/nestable/ImageContent.d.ts +0 -252
  432. package/lib/content/fields/nestable/ImageContent.js +0 -122
  433. package/lib/content/fields/nestable/IntegrationFieldContent.d.ts +0 -16
  434. package/lib/content/fields/nestable/IntegrationFieldContent.js +0 -28
  435. package/lib/content/fields/nestable/LinkContent.d.ts +0 -919
  436. package/lib/content/fields/nestable/LinkContent.js +0 -399
  437. package/lib/content/fields/nestable/NestableContent.d.ts +0 -1953
  438. package/lib/content/fields/nestable/NestableContent.js +0 -167
  439. package/lib/content/fields/nestable/RepeatableContent.d.ts +0 -182
  440. package/lib/content/fields/nestable/RepeatableContent.js +0 -146
  441. package/lib/content/fields/nestable/RichTextContent/Blocks.d.ts +0 -1261
  442. package/lib/content/fields/nestable/RichTextContent/Blocks.js +0 -170
  443. package/lib/content/fields/nestable/RichTextContent/index.d.ts +0 -1004
  444. package/lib/content/fields/nestable/RichTextContent/index.js +0 -28
  445. package/lib/content/fields/nestable/SeparatorContent.d.ts +0 -13
  446. package/lib/content/fields/nestable/SeparatorContent.js +0 -22
  447. package/lib/content/fields/nestable/TableContent.d.ts +0 -776
  448. package/lib/content/fields/nestable/TableContent.js +0 -167
  449. package/lib/content/fields/nestable/index.d.ts +0 -12
  450. package/lib/content/fields/nestable/index.js +0 -15
  451. package/lib/content/fields/slices/Slice/CompositeSliceContent.d.ts +0 -3934
  452. package/lib/content/fields/slices/Slice/CompositeSliceContent.js +0 -195
  453. package/lib/content/fields/slices/Slice/RepeatableContent.d.ts +0 -774
  454. package/lib/content/fields/slices/Slice/RepeatableContent.js +0 -21
  455. package/lib/content/fields/slices/Slice/SharedSliceContent.d.ts +0 -3937
  456. package/lib/content/fields/slices/Slice/SharedSliceContent.js +0 -215
  457. package/lib/content/fields/slices/Slice/SimpleSliceContent.d.ts +0 -1962
  458. package/lib/content/fields/slices/Slice/SimpleSliceContent.js +0 -130
  459. package/lib/content/fields/slices/Slice/SlicePrimaryContent.d.ts +0 -1952
  460. package/lib/content/fields/slices/Slice/SlicePrimaryContent.js +0 -30
  461. package/lib/content/fields/slices/Slice/index.d.ts +0 -6810
  462. package/lib/content/fields/slices/Slice/index.js +0 -45
  463. package/lib/content/fields/slices/SliceItem.d.ts +0 -6846
  464. package/lib/content/fields/slices/SliceItem.js +0 -116
  465. package/lib/content/fields/slices/SlicesContent.d.ts +0 -9827
  466. package/lib/content/fields/slices/SlicesContent.js +0 -465
  467. package/lib/content/fields/slices/index.d.ts +0 -3
  468. package/lib/content/fields/slices/index.js +0 -6
  469. package/lib/content/fields/withDefaultValues.d.ts +0 -9
  470. package/lib/content/fields/withDefaultValues.js +0 -79
  471. package/lib/content/helpers.d.ts +0 -9
  472. package/lib/content/helpers.js +0 -22
  473. package/lib/content/index.d.ts +0 -4
  474. package/lib/content/index.js +0 -7
  475. package/lib/content/utils.d.ts +0 -50
  476. package/lib/content/utils.js +0 -35
  477. package/lib/customtypes/CustomType.d.ts +0 -3680
  478. package/lib/customtypes/CustomType.js +0 -184
  479. package/lib/customtypes/Section.d.ts +0 -3635
  480. package/lib/customtypes/Section.js +0 -66
  481. package/lib/customtypes/diff/Changes.d.ts +0 -17
  482. package/lib/customtypes/diff/Changes.js +0 -9
  483. package/lib/customtypes/diff/SharedSlice.d.ts +0 -1624
  484. package/lib/customtypes/diff/SharedSlice.js +0 -55
  485. package/lib/customtypes/diff/Variation.d.ts +0 -1605
  486. package/lib/customtypes/diff/Variation.js +0 -113
  487. package/lib/customtypes/diff/Widgets.d.ts +0 -11
  488. package/lib/customtypes/diff/Widgets.js +0 -2
  489. package/lib/customtypes/diff/index.d.ts +0 -4
  490. package/lib/customtypes/diff/index.js +0 -7
  491. package/lib/customtypes/index.d.ts +0 -4
  492. package/lib/customtypes/index.js +0 -7
  493. package/lib/customtypes/widgets/Group.d.ts +0 -1352
  494. package/lib/customtypes/widgets/Group.js +0 -92
  495. package/lib/customtypes/widgets/UID.d.ts +0 -19
  496. package/lib/customtypes/widgets/UID.js +0 -21
  497. package/lib/customtypes/widgets/Widget.d.ts +0 -4457
  498. package/lib/customtypes/widgets/Widget.js +0 -49
  499. package/lib/customtypes/widgets/index.d.ts +0 -6
  500. package/lib/customtypes/widgets/index.js +0 -9
  501. package/lib/customtypes/widgets/nestable/BooleanField.d.ts +0 -20
  502. package/lib/customtypes/widgets/nestable/BooleanField.js +0 -21
  503. package/lib/customtypes/widgets/nestable/Color.d.ts +0 -17
  504. package/lib/customtypes/widgets/nestable/Color.js +0 -20
  505. package/lib/customtypes/widgets/nestable/Date.d.ts +0 -19
  506. package/lib/customtypes/widgets/nestable/Date.js +0 -21
  507. package/lib/customtypes/widgets/nestable/Embed.d.ts +0 -19
  508. package/lib/customtypes/widgets/nestable/Embed.js +0 -21
  509. package/lib/customtypes/widgets/nestable/GeoPoint.d.ts +0 -15
  510. package/lib/customtypes/widgets/nestable/GeoPoint.js +0 -19
  511. package/lib/customtypes/widgets/nestable/Image.d.ts +0 -44
  512. package/lib/customtypes/widgets/nestable/Image.js +0 -29
  513. package/lib/customtypes/widgets/nestable/IntegrationField.d.ts +0 -19
  514. package/lib/customtypes/widgets/nestable/IntegrationField.js +0 -21
  515. package/lib/customtypes/widgets/nestable/Link.d.ts +0 -196
  516. package/lib/customtypes/widgets/nestable/Link.js +0 -167
  517. package/lib/customtypes/widgets/nestable/NestableWidget.d.ts +0 -217
  518. package/lib/customtypes/widgets/nestable/NestableWidget.js +0 -39
  519. package/lib/customtypes/widgets/nestable/Number.d.ts +0 -23
  520. package/lib/customtypes/widgets/nestable/Number.js +0 -24
  521. package/lib/customtypes/widgets/nestable/Range.d.ts +0 -23
  522. package/lib/customtypes/widgets/nestable/Range.js +0 -24
  523. package/lib/customtypes/widgets/nestable/RichText.d.ts +0 -73
  524. package/lib/customtypes/widgets/nestable/RichText.js +0 -131
  525. package/lib/customtypes/widgets/nestable/Select.d.ts +0 -21
  526. package/lib/customtypes/widgets/nestable/Select.js +0 -22
  527. package/lib/customtypes/widgets/nestable/Separator.d.ts +0 -14
  528. package/lib/customtypes/widgets/nestable/Separator.js +0 -18
  529. package/lib/customtypes/widgets/nestable/Table.d.ts +0 -21
  530. package/lib/customtypes/widgets/nestable/Table.js +0 -30
  531. package/lib/customtypes/widgets/nestable/Text.d.ts +0 -19
  532. package/lib/customtypes/widgets/nestable/Text.js +0 -21
  533. package/lib/customtypes/widgets/nestable/Timestamp.d.ts +0 -19
  534. package/lib/customtypes/widgets/nestable/Timestamp.js +0 -21
  535. package/lib/customtypes/widgets/nestable/index.d.ts +0 -17
  536. package/lib/customtypes/widgets/nestable/index.js +0 -20
  537. package/lib/customtypes/widgets/shared/ImageConstraint.d.ts +0 -7
  538. package/lib/customtypes/widgets/shared/ImageConstraint.js +0 -31
  539. package/lib/customtypes/widgets/shared/index.d.ts +0 -1
  540. package/lib/customtypes/widgets/shared/index.js +0 -8
  541. package/lib/customtypes/widgets/slices/CompositeSlice.d.ts +0 -455
  542. package/lib/customtypes/widgets/slices/CompositeSlice.js +0 -63
  543. package/lib/customtypes/widgets/slices/LegacySlice.d.ts +0 -442
  544. package/lib/customtypes/widgets/slices/LegacySlice.js +0 -12
  545. package/lib/customtypes/widgets/slices/SharedSlice.d.ts +0 -1807
  546. package/lib/customtypes/widgets/slices/SharedSlice.js +0 -118
  547. package/lib/customtypes/widgets/slices/SharedSliceRef.d.ts +0 -5
  548. package/lib/customtypes/widgets/slices/SharedSliceRef.js +0 -9
  549. package/lib/customtypes/widgets/slices/Slice.d.ts +0 -6
  550. package/lib/customtypes/widgets/slices/Slice.js +0 -2
  551. package/lib/customtypes/widgets/slices/SlicePrimaryWidget.d.ts +0 -1259
  552. package/lib/customtypes/widgets/slices/SlicePrimaryWidget.js +0 -10
  553. package/lib/customtypes/widgets/slices/Slices.d.ts +0 -5917
  554. package/lib/customtypes/widgets/slices/Slices.js +0 -146
  555. package/lib/customtypes/widgets/slices/SlicesTypes.d.ts +0 -6
  556. package/lib/customtypes/widgets/slices/SlicesTypes.js +0 -11
  557. package/lib/customtypes/widgets/slices/index.d.ts +0 -8
  558. package/lib/customtypes/widgets/slices/index.js +0 -11
  559. package/lib/utils/Arrays.d.ts +0 -1
  560. package/lib/utils/Arrays.js +0 -13
  561. package/lib/utils/DocumentId.d.ts +0 -2
  562. package/lib/utils/DocumentId.js +0 -7
  563. package/lib/utils/Fields.d.ts +0 -6
  564. package/lib/utils/Fields.js +0 -2
  565. package/lib/utils/Objects.d.ts +0 -8
  566. package/lib/utils/Objects.js +0 -42
  567. package/lib/utils/index.d.ts +0 -4
  568. package/lib/utils/index.js +0 -8
  569. package/lib/validators/BasicTypes.d.ts +0 -10
  570. package/lib/validators/BasicTypes.js +0 -25
  571. package/lib/validators/DateFromString.d.ts +0 -3
  572. package/lib/validators/DateFromString.js +0 -11
  573. package/lib/validators/DateFromStringOrNumber.d.ts +0 -3
  574. package/lib/validators/DateFromStringOrNumber.js +0 -10
  575. package/lib/validators/DateFromTsMs.d.ts +0 -3
  576. package/lib/validators/DateFromTsMs.js +0 -10
  577. package/lib/validators/DefaultOrElse.d.ts +0 -5
  578. package/lib/validators/DefaultOrElse.js +0 -21
  579. package/lib/validators/IntFromNumber.d.ts +0 -5
  580. package/lib/validators/IntFromNumber.js +0 -14
  581. package/lib/validators/IntFromPixels.d.ts +0 -8
  582. package/lib/validators/IntFromPixels.js +0 -24
  583. package/lib/validators/NonEmptyString.d.ts +0 -3
  584. package/lib/validators/NonEmptyString.js +0 -6
  585. package/lib/validators/NonEmptyStringOrNull.d.ts +0 -3
  586. package/lib/validators/NonEmptyStringOrNull.js +0 -15
  587. package/lib/validators/NumberOrNull.d.ts +0 -3
  588. package/lib/validators/NumberOrNull.js +0 -6
  589. package/lib/validators/NumberRange.d.ts +0 -32
  590. package/lib/validators/NumberRange.js +0 -40
  591. package/lib/validators/StringFromBoolean.d.ts +0 -5
  592. package/lib/validators/StringFromBoolean.js +0 -10
  593. package/lib/validators/StringFromNumber.d.ts +0 -5
  594. package/lib/validators/StringFromNumber.js +0 -10
  595. package/lib/validators/StringOrNull.d.ts +0 -3
  596. package/lib/validators/StringOrNull.js +0 -6
  597. package/lib/validators/TrimmedString.d.ts +0 -5
  598. package/lib/validators/TrimmedString.js +0 -23
  599. package/lib/validators/function.d.ts +0 -34
  600. package/lib/validators/function.js +0 -100
  601. package/lib/validators/index.d.ts +0 -15
  602. package/lib/validators/index.js +0 -31
  603. package/src/common/Asset.ts +0 -25
  604. package/src/common/Embed.ts +0 -22
  605. package/src/common/HexaColorCode.ts +0 -11
  606. package/src/common/UUID.ts +0 -19
  607. package/src/common/WidgetKey.ts +0 -13
  608. package/src/common/index.ts +0 -3
  609. package/src/content/Document.ts +0 -539
  610. package/src/content/fields/EmptyContent.ts +0 -45
  611. package/src/content/fields/GroupContent.ts +0 -466
  612. package/src/content/fields/UIDContent.ts +0 -42
  613. package/src/content/fields/WidgetContent.ts +0 -76
  614. package/src/content/fields/index.ts +0 -6
  615. package/src/content/fields/nestable/BooleanContent.ts +0 -52
  616. package/src/content/fields/nestable/EmbedContent.ts +0 -74
  617. package/src/content/fields/nestable/FieldContent/ColorContent.ts +0 -49
  618. package/src/content/fields/nestable/FieldContent/DateContent.ts +0 -49
  619. package/src/content/fields/nestable/FieldContent/NumberContent.ts +0 -49
  620. package/src/content/fields/nestable/FieldContent/RangeContent.ts +0 -49
  621. package/src/content/fields/nestable/FieldContent/SelectContent.ts +0 -60
  622. package/src/content/fields/nestable/FieldContent/TextContent.ts +0 -49
  623. package/src/content/fields/nestable/FieldContent/TimestampContent.ts +0 -49
  624. package/src/content/fields/nestable/FieldContent/common.ts +0 -1
  625. package/src/content/fields/nestable/FieldContent/index.ts +0 -40
  626. package/src/content/fields/nestable/GeoPointContent.ts +0 -48
  627. package/src/content/fields/nestable/ImageContent.ts +0 -196
  628. package/src/content/fields/nestable/IntegrationFieldContent.ts +0 -51
  629. package/src/content/fields/nestable/LinkContent.ts +0 -651
  630. package/src/content/fields/nestable/NestableContent.ts +0 -241
  631. package/src/content/fields/nestable/RepeatableContent.ts +0 -224
  632. package/src/content/fields/nestable/RichTextContent/Blocks.ts +0 -238
  633. package/src/content/fields/nestable/RichTextContent/index.ts +0 -42
  634. package/src/content/fields/nestable/SeparatorContent.ts +0 -34
  635. package/src/content/fields/nestable/TableContent.ts +0 -234
  636. package/src/content/fields/nestable/index.ts +0 -12
  637. package/src/content/fields/slices/Slice/CompositeSliceContent.ts +0 -293
  638. package/src/content/fields/slices/Slice/RepeatableContent.ts +0 -29
  639. package/src/content/fields/slices/Slice/SharedSliceContent.ts +0 -305
  640. package/src/content/fields/slices/Slice/SimpleSliceContent.ts +0 -180
  641. package/src/content/fields/slices/Slice/SlicePrimaryContent.ts +0 -40
  642. package/src/content/fields/slices/Slice/index.ts +0 -52
  643. package/src/content/fields/slices/SliceItem.ts +0 -184
  644. package/src/content/fields/slices/SlicesContent.ts +0 -677
  645. package/src/content/fields/slices/index.ts +0 -3
  646. package/src/content/helpers.ts +0 -25
  647. package/src/content/index.ts +0 -4
  648. package/src/customtypes/CustomType.ts +0 -280
  649. package/src/customtypes/Section.ts +0 -98
  650. package/src/customtypes/diff/Variation.ts +0 -167
  651. package/src/customtypes/diff/Widgets.ts +0 -17
  652. package/src/customtypes/diff/index.ts +0 -4
  653. package/src/customtypes/index.ts +0 -4
  654. package/src/customtypes/widgets/Group.ts +0 -120
  655. package/src/customtypes/widgets/UID.ts +0 -27
  656. package/src/customtypes/widgets/Widget.ts +0 -83
  657. package/src/customtypes/widgets/index.ts +0 -6
  658. package/src/customtypes/widgets/nestable/BooleanField.ts +0 -29
  659. package/src/customtypes/widgets/nestable/Color.ts +0 -25
  660. package/src/customtypes/widgets/nestable/Date.ts +0 -27
  661. package/src/customtypes/widgets/nestable/Embed.ts +0 -27
  662. package/src/customtypes/widgets/nestable/GeoPoint.ts +0 -25
  663. package/src/customtypes/widgets/nestable/Image.ts +0 -39
  664. package/src/customtypes/widgets/nestable/IntegrationField.ts +0 -26
  665. package/src/customtypes/widgets/nestable/Link.ts +0 -313
  666. package/src/customtypes/widgets/nestable/NestableWidget.ts +0 -40
  667. package/src/customtypes/widgets/nestable/Number.ts +0 -30
  668. package/src/customtypes/widgets/nestable/Range.ts +0 -30
  669. package/src/customtypes/widgets/nestable/RichText.ts +0 -215
  670. package/src/customtypes/widgets/nestable/Select.ts +0 -34
  671. package/src/customtypes/widgets/nestable/Separator.ts +0 -24
  672. package/src/customtypes/widgets/nestable/Table.ts +0 -38
  673. package/src/customtypes/widgets/nestable/Text.ts +0 -27
  674. package/src/customtypes/widgets/nestable/Timestamp.ts +0 -27
  675. package/src/customtypes/widgets/nestable/index.ts +0 -17
  676. package/src/customtypes/widgets/shared/ImageConstraint.ts +0 -41
  677. package/src/customtypes/widgets/shared/index.ts +0 -1
  678. package/src/customtypes/widgets/slices/CompositeSlice.ts +0 -79
  679. package/src/customtypes/widgets/slices/LegacySlice.ts +0 -15
  680. package/src/customtypes/widgets/slices/SharedSlice.ts +0 -152
  681. package/src/customtypes/widgets/slices/SharedSliceRef.ts +0 -10
  682. package/src/customtypes/widgets/slices/Slice.ts +0 -7
  683. package/src/customtypes/widgets/slices/SlicePrimaryWidget.ts +0 -12
  684. package/src/customtypes/widgets/slices/Slices.ts +0 -184
  685. package/src/customtypes/widgets/slices/SlicesTypes.ts +0 -11
  686. package/src/customtypes/widgets/slices/index.ts +0 -8
  687. package/src/utils/Arrays.ts +0 -12
  688. package/src/utils/DocumentId.ts +0 -8
  689. package/src/utils/Fields.ts +0 -4
  690. package/src/utils/Objects.ts +0 -53
  691. package/src/utils/index.ts +0 -4
  692. package/src/validators/BasicTypes.ts +0 -55
  693. package/src/validators/DateFromString.ts +0 -19
  694. package/src/validators/DateFromStringOrNumber.ts +0 -17
  695. package/src/validators/DateFromTsMs.ts +0 -17
  696. package/src/validators/DefaultOrElse.ts +0 -24
  697. package/src/validators/IntFromNumber.ts +0 -22
  698. package/src/validators/IntFromPixels.ts +0 -32
  699. package/src/validators/NonEmptyString.ts +0 -8
  700. package/src/validators/NonEmptyStringOrNull.ts +0 -22
  701. package/src/validators/NumberOrNull.ts +0 -5
  702. package/src/validators/NumberRange.ts +0 -51
  703. package/src/validators/StringFromBoolean.ts +0 -19
  704. package/src/validators/StringFromNumber.ts +0 -19
  705. package/src/validators/StringOrNull.ts +0 -5
  706. package/src/validators/TrimmedString.ts +0 -33
  707. package/src/validators/function.ts +0 -115
  708. package/src/validators/index.ts +0 -15
  709. /package/src/{customtypes/diff/Changes.ts → model/diff/changes.ts} +0 -0
@@ -0,0 +1,56 @@
1
+ import { LinkLegacySchema } from "../legacy/link.js";
2
+ import { RepeatableContentSchema, RepeatableContentType } from "../repeatable.js";
3
+ import { RepeatableLegacySchema } from "../legacy/repeatable.js";
4
+ import { LinkLegacyCodec, linkLegacyToContent } from "./link.js";
5
+ //#region src/content/codec/repeatable.ts
6
+ const RepeatableLegacyCodec = (ctx, fieldType) => ({
7
+ name: "RepeatableLegacy",
8
+ is(input) {
9
+ return RepeatableContentSchema.safeParse(input).success;
10
+ },
11
+ decode(input) {
12
+ const parsed = RepeatableLegacySchema.safeParse(input);
13
+ if (!parsed.success) return parsed;
14
+ return {
15
+ success: true,
16
+ data: {
17
+ __TYPE__: RepeatableContentType,
18
+ type: fieldType,
19
+ value: parsed.data.flatMap((item) => {
20
+ try {
21
+ switch (fieldType) {
22
+ case "Link": return [linkLegacyToContent(LinkLegacySchema.parse(item))];
23
+ default: return [];
24
+ }
25
+ } catch {
26
+ return [];
27
+ }
28
+ })
29
+ }
30
+ };
31
+ },
32
+ encode(input) {
33
+ const legacy = {
34
+ content: [],
35
+ types: { [ctx.keyOfType]: `Repeatable.${fieldType}` },
36
+ keys: {}
37
+ };
38
+ for (const item of input.value) try {
39
+ switch (fieldType) {
40
+ case "Link":
41
+ const result = LinkLegacyCodec(ctx).encode(item);
42
+ legacy.content.push(result.content);
43
+ legacy.keys = {
44
+ ...legacy.keys,
45
+ ...result.keys
46
+ };
47
+ break;
48
+ }
49
+ } catch {}
50
+ return legacy;
51
+ }
52
+ });
53
+ //#endregion
54
+ export { RepeatableLegacyCodec };
55
+
56
+ //# sourceMappingURL=repeatable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repeatable.js","names":[],"sources":["../../../src/content/codec/repeatable.ts"],"sourcesContent":["import { LinkLegacySchema } from \"../legacy/link\"\nimport { RepeatableLegacySchema } from \"../legacy/repeatable\"\nimport type { RepeatableLegacy } from \"../legacy/repeatable\"\nimport { RepeatableContentSchema, RepeatableContentType } from \"../repeatable\"\nimport type { RepeatableContent } from \"../repeatable\"\nimport type { LegacyCodec, LegacyContentCtx } from \"./legacyContentCtx\"\nimport { LinkLegacyCodec, linkLegacyToContent } from \"./link\"\n\nexport const RepeatableLegacyCodec = (\n\tctx: LegacyContentCtx,\n\tfieldType: \"Link\",\n): LegacyCodec<RepeatableContent, RepeatableLegacy> => ({\n\tname: \"RepeatableLegacy\",\n\n\tis(input): input is RepeatableContent {\n\t\treturn RepeatableContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tconst parsed = RepeatableLegacySchema.safeParse(input)\n\t\tif (!parsed.success) {\n\t\t\treturn parsed\n\t\t}\n\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: {\n\t\t\t\t__TYPE__: RepeatableContentType,\n\t\t\t\ttype: fieldType,\n\t\t\t\tvalue: parsed.data.flatMap((item) => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tswitch (fieldType) {\n\t\t\t\t\t\t\tcase \"Link\":\n\t\t\t\t\t\t\t\treturn [linkLegacyToContent(LinkLegacySchema.parse(item))]\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\treturn []\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch {\n\t\t\t\t\t\treturn []\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t},\n\t\t}\n\t},\n\n\tencode(input) {\n\t\tconst legacy: ReturnType<LegacyCodec<RepeatableContent, RepeatableLegacy>[\"encode\"]> = {\n\t\t\tcontent: [],\n\t\t\ttypes: { [ctx.keyOfType]: `Repeatable.${fieldType}` },\n\t\t\tkeys: {},\n\t\t}\n\n\t\tfor (const item of input.value) {\n\t\t\ttry {\n\t\t\t\tswitch (fieldType) {\n\t\t\t\t\tcase \"Link\":\n\t\t\t\t\t\tconst result = LinkLegacyCodec(ctx).encode(item)\n\t\t\t\t\t\tlegacy.content.push(result.content)\n\t\t\t\t\t\tlegacy.keys = { ...legacy.keys, ...result.keys }\n\t\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\t// noop, continue\n\t\t\t}\n\t\t}\n\t\treturn legacy\n\t},\n})\n"],"mappings":";;;;;AAQA,MAAa,yBACZ,KACA,eACuD;CACvD,MAAM;CAEN,GAAG,OAAmC;AACrC,SAAO,wBAAwB,UAAU,MAAM,CAAC;;CAGjD,OAAO,OAAO;EACb,MAAM,SAAS,uBAAuB,UAAU,MAAM;AACtD,MAAI,CAAC,OAAO,QACX,QAAO;AAGR,SAAO;GACN,SAAS;GACT,MAAM;IACL,UAAU;IACV,MAAM;IACN,OAAO,OAAO,KAAK,SAAS,SAAS;AACpC,SAAI;AACH,cAAQ,WAAR;OACC,KAAK,OACJ,QAAO,CAAC,oBAAoB,iBAAiB,MAAM,KAAK,CAAC,CAAC;OAC3D,QACC,QAAO,EAAE;;aAEJ;AACP,aAAO,EAAE;;MAET;IACF;GACD;;CAGF,OAAO,OAAO;EACb,MAAM,SAAiF;GACtF,SAAS,EAAE;GACX,OAAO,GAAG,IAAI,YAAY,cAAc,aAAa;GACrD,MAAM,EAAE;GACR;AAED,OAAK,MAAM,QAAQ,MAAM,MACxB,KAAI;AACH,WAAQ,WAAR;IACC,KAAK;KACJ,MAAM,SAAS,gBAAgB,IAAI,CAAC,OAAO,KAAK;AAChD,YAAO,QAAQ,KAAK,OAAO,QAAQ;AACnC,YAAO,OAAO;MAAE,GAAG,OAAO;MAAM,GAAG,OAAO;MAAM;AAChD;;UAEK;AAIT,SAAO;;CAER"}
@@ -0,0 +1,87 @@
1
+ import { BlockLegacySchema, RichTextLegacySchema, RichTextNodeType } from "../legacy/richText.js";
2
+ import { RichTextContentSchema, RichTextContentType } from "../richText.js";
3
+ import { embedContentToLegacy, embedLegacyToContent } from "./embed.js";
4
+ import { imageLegacyToContent } from "./image.js";
5
+ import { linkLegacyToValue, linkValueToLegacy } from "./link.js";
6
+ //#region src/content/codec/richText.ts
7
+ function blockLegacyToValue(block) {
8
+ if (block.type === RichTextNodeType.embed) return {
9
+ ...block,
10
+ data: embedLegacyToContent(block.data)
11
+ };
12
+ if (block.type === RichTextNodeType.image) return {
13
+ ...block,
14
+ data: {
15
+ ...imageLegacyToContent(block.data),
16
+ ...block.data.linkTo ? { linkTo: linkLegacyToValue(block.data.linkTo) } : {}
17
+ }
18
+ };
19
+ return {
20
+ ...block,
21
+ content: {
22
+ ...block.content,
23
+ spans: block.content.spans?.map((span) => {
24
+ if (span.type === RichTextNodeType.hyperlink) return {
25
+ ...span,
26
+ data: linkLegacyToValue(span.data)
27
+ };
28
+ return span;
29
+ })
30
+ }
31
+ };
32
+ }
33
+ function blockValueToLegacy(block) {
34
+ if (block.type === RichTextNodeType.embed) return {
35
+ ...block,
36
+ data: embedContentToLegacy(block.data)
37
+ };
38
+ if (block.type === RichTextNodeType.image) return {
39
+ ...block,
40
+ data: {
41
+ ...block.data,
42
+ ...block.data.linkTo ? { linkTo: linkValueToLegacy(block.data.linkTo) } : {}
43
+ }
44
+ };
45
+ if ("content" in block) return {
46
+ ...block,
47
+ content: {
48
+ ...block.content,
49
+ spans: block.content.spans?.map((span) => {
50
+ if (span.type === RichTextNodeType.hyperlink) return {
51
+ ...span,
52
+ data: linkValueToLegacy(span.data)
53
+ };
54
+ return span;
55
+ })
56
+ }
57
+ };
58
+ return BlockLegacySchema.parse(block);
59
+ }
60
+ const RichTextLegacyCodec = (ctx) => ({
61
+ name: "RichTextLegacy",
62
+ is(input) {
63
+ return RichTextContentSchema.safeParse(input).success;
64
+ },
65
+ decode(input) {
66
+ const parsed = RichTextLegacySchema.safeParse(input);
67
+ if (!parsed.success) return parsed;
68
+ return {
69
+ success: true,
70
+ data: {
71
+ value: parsed.data.map((block) => blockLegacyToValue(block)),
72
+ __TYPE__: RichTextContentType
73
+ }
74
+ };
75
+ },
76
+ encode(input) {
77
+ return {
78
+ content: input.value.map((block) => blockValueToLegacy(block)),
79
+ types: { [ctx.keyOfType]: "StructuredText" },
80
+ keys: {}
81
+ };
82
+ }
83
+ });
84
+ //#endregion
85
+ export { RichTextLegacyCodec, blockLegacyToValue, blockValueToLegacy };
86
+
87
+ //# sourceMappingURL=richText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"richText.js","names":[],"sources":["../../../src/content/codec/richText.ts"],"sourcesContent":["import type { BlockLegacy, RichTextLegacy } from \"../legacy/richText\"\nimport { BlockLegacySchema, RichTextLegacySchema, RichTextNodeType } from \"../legacy/richText\"\nimport type { BlockValue, RichTextContent } from \"../richText\"\nimport { RichTextContentSchema, RichTextContentType } from \"../richText\"\nimport { embedLegacyToContent, embedContentToLegacy } from \"./embed\"\nimport { imageLegacyToContent } from \"./image\"\nimport type { LegacyCodec, LegacyContentCtx } from \"./legacyContentCtx\"\nimport { linkLegacyToValue, linkValueToLegacy } from \"./link\"\n\n// Also used by content/codec/table\nexport function blockLegacyToValue(block: BlockLegacy): BlockValue {\n\tif (block.type === RichTextNodeType.embed) {\n\t\treturn {\n\t\t\t...block,\n\t\t\tdata: embedLegacyToContent(block.data),\n\t\t}\n\t}\n\n\tif (block.type === RichTextNodeType.image) {\n\t\treturn {\n\t\t\t...block,\n\t\t\tdata: {\n\t\t\t\t...imageLegacyToContent(block.data),\n\t\t\t\t...(block.data.linkTo ? { linkTo: linkLegacyToValue(block.data.linkTo) } : {}),\n\t\t\t},\n\t\t}\n\t}\n\n\treturn {\n\t\t...block,\n\t\tcontent: {\n\t\t\t...block.content,\n\t\t\tspans: block.content.spans?.map((span) => {\n\t\t\t\tif (span.type === RichTextNodeType.hyperlink) {\n\t\t\t\t\treturn { ...span, data: linkLegacyToValue(span.data) }\n\t\t\t\t}\n\n\t\t\t\treturn span\n\t\t\t}),\n\t\t},\n\t}\n}\n\n// Also used by content/codec/table\nexport function blockValueToLegacy(block: BlockValue): BlockLegacy {\n\tif (block.type === RichTextNodeType.embed) {\n\t\treturn {\n\t\t\t...block,\n\t\t\tdata: embedContentToLegacy(block.data),\n\t\t}\n\t}\n\n\tif (block.type === RichTextNodeType.image) {\n\t\treturn {\n\t\t\t...block,\n\t\t\tdata: {\n\t\t\t\t...block.data,\n\t\t\t\t...(block.data.linkTo ? { linkTo: linkValueToLegacy(block.data.linkTo) } : {}),\n\t\t\t},\n\t\t}\n\t}\n\n\tif (\"content\" in block) {\n\t\treturn {\n\t\t\t...block,\n\t\t\tcontent: {\n\t\t\t\t...block.content,\n\t\t\t\tspans: block.content.spans?.map((span) => {\n\t\t\t\t\tif (span.type === RichTextNodeType.hyperlink) {\n\t\t\t\t\t\treturn { ...span, data: linkValueToLegacy(span.data) }\n\t\t\t\t\t}\n\n\t\t\t\t\treturn span\n\t\t\t\t}),\n\t\t\t},\n\t\t}\n\t}\n\n\treturn BlockLegacySchema.parse(block)\n}\n\nexport const RichTextLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<RichTextContent, RichTextLegacy> => ({\n\tname: \"RichTextLegacy\",\n\n\tis(input): input is RichTextContent {\n\t\treturn RichTextContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tconst parsed = RichTextLegacySchema.safeParse(input)\n\t\tif (!parsed.success) {\n\t\t\treturn parsed\n\t\t}\n\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: {\n\t\t\t\tvalue: parsed.data.map((block) => blockLegacyToValue(block)),\n\t\t\t\t__TYPE__: RichTextContentType,\n\t\t\t},\n\t\t}\n\t},\n\n\tencode(input) {\n\t\treturn {\n\t\t\tcontent: input.value.map((block) => blockValueToLegacy(block)),\n\t\t\ttypes: { [ctx.keyOfType]: \"StructuredText\" },\n\t\t\tkeys: {},\n\t\t}\n\t},\n})\n"],"mappings":";;;;;;AAUA,SAAgB,mBAAmB,OAAgC;AAClE,KAAI,MAAM,SAAS,iBAAiB,MACnC,QAAO;EACN,GAAG;EACH,MAAM,qBAAqB,MAAM,KAAK;EACtC;AAGF,KAAI,MAAM,SAAS,iBAAiB,MACnC,QAAO;EACN,GAAG;EACH,MAAM;GACL,GAAG,qBAAqB,MAAM,KAAK;GACnC,GAAI,MAAM,KAAK,SAAS,EAAE,QAAQ,kBAAkB,MAAM,KAAK,OAAO,EAAE,GAAG,EAAE;GAC7E;EACD;AAGF,QAAO;EACN,GAAG;EACH,SAAS;GACR,GAAG,MAAM;GACT,OAAO,MAAM,QAAQ,OAAO,KAAK,SAAS;AACzC,QAAI,KAAK,SAAS,iBAAiB,UAClC,QAAO;KAAE,GAAG;KAAM,MAAM,kBAAkB,KAAK,KAAK;KAAE;AAGvD,WAAO;KACN;GACF;EACD;;AAIF,SAAgB,mBAAmB,OAAgC;AAClE,KAAI,MAAM,SAAS,iBAAiB,MACnC,QAAO;EACN,GAAG;EACH,MAAM,qBAAqB,MAAM,KAAK;EACtC;AAGF,KAAI,MAAM,SAAS,iBAAiB,MACnC,QAAO;EACN,GAAG;EACH,MAAM;GACL,GAAG,MAAM;GACT,GAAI,MAAM,KAAK,SAAS,EAAE,QAAQ,kBAAkB,MAAM,KAAK,OAAO,EAAE,GAAG,EAAE;GAC7E;EACD;AAGF,KAAI,aAAa,MAChB,QAAO;EACN,GAAG;EACH,SAAS;GACR,GAAG,MAAM;GACT,OAAO,MAAM,QAAQ,OAAO,KAAK,SAAS;AACzC,QAAI,KAAK,SAAS,iBAAiB,UAClC,QAAO;KAAE,GAAG;KAAM,MAAM,kBAAkB,KAAK,KAAK;KAAE;AAGvD,WAAO;KACN;GACF;EACD;AAGF,QAAO,kBAAkB,MAAM,MAAM;;AAGtC,MAAa,uBACZ,SACmD;CACnD,MAAM;CAEN,GAAG,OAAiC;AACnC,SAAO,sBAAsB,UAAU,MAAM,CAAC;;CAG/C,OAAO,OAAO;EACb,MAAM,SAAS,qBAAqB,UAAU,MAAM;AACpD,MAAI,CAAC,OAAO,QACX,QAAO;AAGR,SAAO;GACN,SAAS;GACT,MAAM;IACL,OAAO,OAAO,KAAK,KAAK,UAAU,mBAAmB,MAAM,CAAC;IAC5D,UAAU;IACV;GACD;;CAGF,OAAO,OAAO;AACb,SAAO;GACN,SAAS,MAAM,MAAM,KAAK,UAAU,mBAAmB,MAAM,CAAC;GAC9D,OAAO,GAAG,IAAI,YAAY,kBAAkB;GAC5C,MAAM,EAAE;GACR;;CAEF"}
@@ -0,0 +1,26 @@
1
+ import { SeparatorContentSchema } from "../separator.js";
2
+ //#region src/content/codec/separator.ts
3
+ const SeparatorContentType = "SeparatorContent";
4
+ const SeparatorLegacyCodec = (ctx) => ({
5
+ name: "SeparatorLegacy",
6
+ is(input) {
7
+ return SeparatorContentSchema.safeParse(input).success;
8
+ },
9
+ decode(_input) {
10
+ return {
11
+ success: true,
12
+ data: { __TYPE__: SeparatorContentType }
13
+ };
14
+ },
15
+ encode() {
16
+ return {
17
+ content: {},
18
+ types: { [ctx.keyOfType]: "Separator" },
19
+ keys: {}
20
+ };
21
+ }
22
+ });
23
+ //#endregion
24
+ export { SeparatorLegacyCodec };
25
+
26
+ //# sourceMappingURL=separator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"separator.js","names":[],"sources":["../../../src/content/codec/separator.ts"],"sourcesContent":["import type { SeparatorLegacy } from \"../legacy/separator\"\nimport { SeparatorContentSchema } from \"../separator\"\nimport type { SeparatorContent } from \"../separator\"\nimport type { LegacyContentCtx, LegacyCodec } from \"./legacyContentCtx\"\n\nconst SeparatorContentType = \"SeparatorContent\"\n\nexport const SeparatorLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<SeparatorContent, SeparatorLegacy> => ({\n\tname: \"SeparatorLegacy\",\n\n\tis(input): input is SeparatorContent {\n\t\treturn SeparatorContentSchema.safeParse(input).success\n\t},\n\n\tdecode(_input) {\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: {\n\t\t\t\t__TYPE__: SeparatorContentType,\n\t\t\t},\n\t\t}\n\t},\n\n\tencode() {\n\t\treturn {\n\t\t\tcontent: {},\n\t\t\ttypes: { [ctx.keyOfType]: \"Separator\" },\n\t\t\tkeys: {},\n\t\t}\n\t},\n})\n"],"mappings":";;AAKA,MAAM,uBAAuB;AAE7B,MAAa,wBACZ,SACqD;CACrD,MAAM;CAEN,GAAG,OAAkC;AACpC,SAAO,uBAAuB,UAAU,MAAM,CAAC;;CAGhD,OAAO,QAAQ;AACd,SAAO;GACN,SAAS;GACT,MAAM,EACL,UAAU,sBACV;GACD;;CAGF,SAAS;AACR,SAAO;GACN,SAAS,EAAE;GACX,OAAO,GAAG,IAAI,YAAY,aAAa;GACvC,MAAM,EAAE;GACR;;CAEF"}
@@ -0,0 +1,220 @@
1
+ import { getFieldCtx } from "./legacyContentCtx.js";
2
+ import { CompositeSliceContentSchema, CompositeSliceContentType, SharedSliceContentSchema, SharedSliceContentType, SimpleSliceContentSchema, SliceContentSchema } from "../slice.js";
3
+ import { NestableLegacyCodec } from "./nestable.js";
4
+ import { GroupItemLegacyCodec, NestableAndGroupLegacyCodec } from "./group.js";
5
+ import { CompositeSliceLegacySchema, SharedSliceLegacySchema } from "../legacy/slice.js";
6
+ //#region src/content/codec/slice.ts
7
+ const SimpleSliceLegacyCodec = (ctx) => ({
8
+ name: "SimpleSliceLegacy",
9
+ is(input) {
10
+ return SimpleSliceContentSchema.safeParse(input).success;
11
+ },
12
+ decode(input) {
13
+ return NestableAndGroupLegacyCodec(ctx).decode(input);
14
+ },
15
+ encode(input) {
16
+ return NestableAndGroupLegacyCodec(ctx).encode(input);
17
+ }
18
+ });
19
+ const CompositeSliceLegacyCodec = (ctx) => ({
20
+ name: "CompositeSliceLegacy",
21
+ is(input) {
22
+ return CompositeSliceContentSchema.safeParse(input).success;
23
+ },
24
+ decode(input) {
25
+ const parsed = CompositeSliceLegacySchema.safeParse(input);
26
+ if (!parsed.success) return parsed;
27
+ const nonRepeat = {};
28
+ for (const [key, legacy] of Object.entries(parsed.data["non-repeat"] || {})) {
29
+ const result = NestableLegacyCodec(getFieldCtx({
30
+ fieldKey: key,
31
+ ctx,
32
+ prefixes: ["non-repeat"]
33
+ })).decode(legacy);
34
+ if (!result.success) continue;
35
+ nonRepeat[key] = result.data;
36
+ }
37
+ const repeat = [];
38
+ for (let index = 0; index < (parsed.data.repeat?.length || 0); index++) {
39
+ const item = parsed.data.repeat?.[index];
40
+ const result = GroupItemLegacyCodec(getFieldCtx({
41
+ fieldKey: "repeat",
42
+ ctx
43
+ }), index).decode(item);
44
+ if (!result.success) continue;
45
+ repeat.push(result.data);
46
+ }
47
+ return {
48
+ success: true,
49
+ data: {
50
+ __TYPE__: CompositeSliceContentType,
51
+ nonRepeat,
52
+ repeat
53
+ }
54
+ };
55
+ },
56
+ encode(input) {
57
+ const legacy = {
58
+ content: {
59
+ "non-repeat": {},
60
+ repeat: []
61
+ },
62
+ types: { [ctx.keyOfType]: "Slice" },
63
+ keys: {}
64
+ };
65
+ for (const [key, content] of Object.entries(input.nonRepeat)) {
66
+ const result = NestableLegacyCodec(getFieldCtx({
67
+ fieldKey: key,
68
+ ctx,
69
+ prefixes: ["non-repeat"]
70
+ })).encode(content);
71
+ if (!result) continue;
72
+ legacy.content["non-repeat"][key] = result.content;
73
+ legacy.types = {
74
+ ...legacy.types,
75
+ ...result.types
76
+ };
77
+ legacy.keys = {
78
+ ...legacy.keys,
79
+ ...result.keys
80
+ };
81
+ }
82
+ const repeatCtx = getFieldCtx({
83
+ fieldKey: "repeat",
84
+ ctx
85
+ });
86
+ for (let index = 0; index < input.repeat.length; index++) {
87
+ const item = input.repeat[index];
88
+ const result = GroupItemLegacyCodec(repeatCtx, index).encode(item);
89
+ legacy.content.repeat.push(result.content);
90
+ legacy.types = {
91
+ ...legacy.types,
92
+ ...result.types
93
+ };
94
+ legacy.keys = {
95
+ ...legacy.keys,
96
+ ...result.keys
97
+ };
98
+ }
99
+ return legacy;
100
+ }
101
+ });
102
+ const SharedSliceLegacyCodec = (ctx) => ({
103
+ name: "SharedSliceLegacy",
104
+ is(input) {
105
+ return SharedSliceContentSchema.safeParse(input).success;
106
+ },
107
+ decode(input) {
108
+ const parsed = SharedSliceLegacySchema.safeParse(input);
109
+ if (!parsed.success) return parsed;
110
+ const primary = {};
111
+ for (const [key, legacy] of Object.entries(parsed.data["primary"])) {
112
+ const result = NestableAndGroupLegacyCodec(getFieldCtx({
113
+ fieldKey: key,
114
+ ctx,
115
+ prefixes: [
116
+ "variations",
117
+ parsed.data.variation,
118
+ "primary"
119
+ ]
120
+ })).decode(legacy);
121
+ if (!result.success) continue;
122
+ primary[key] = result.data;
123
+ }
124
+ const items = [];
125
+ for (let index = 0; index < parsed.data.items.length; index++) {
126
+ const item = parsed.data.items[index];
127
+ const result = GroupItemLegacyCodec(getFieldCtx({
128
+ fieldKey: "items",
129
+ ctx,
130
+ prefixes: ["variations", parsed.data.variation]
131
+ }), index).decode(item);
132
+ if (!result.success) continue;
133
+ items.push(result.data);
134
+ }
135
+ return {
136
+ success: true,
137
+ data: {
138
+ __TYPE__: SharedSliceContentType,
139
+ variation: parsed.data.variation,
140
+ primary,
141
+ items
142
+ }
143
+ };
144
+ },
145
+ encode(input) {
146
+ const legacy = {
147
+ content: {
148
+ primary: {},
149
+ items: [],
150
+ variation: input.variation
151
+ },
152
+ types: { [ctx.keyOfType]: "SharedSlice" },
153
+ keys: {}
154
+ };
155
+ for (const [key, content] of Object.entries(input.primary)) {
156
+ const result = NestableAndGroupLegacyCodec(getFieldCtx({
157
+ fieldKey: key,
158
+ ctx,
159
+ prefixes: [
160
+ "variations",
161
+ input.variation,
162
+ "primary"
163
+ ]
164
+ })).encode(content);
165
+ if (!result) continue;
166
+ legacy.content.primary[key] = result.content;
167
+ legacy.types = {
168
+ ...legacy.types,
169
+ ...result.types
170
+ };
171
+ legacy.keys = {
172
+ ...legacy.keys,
173
+ ...result.keys
174
+ };
175
+ }
176
+ const repeatCtx = getFieldCtx({
177
+ fieldKey: "items",
178
+ ctx,
179
+ prefixes: ["variations", input.variation]
180
+ });
181
+ for (let index = 0; index < input.items.length; index++) {
182
+ const item = input.items[index];
183
+ const result = GroupItemLegacyCodec(repeatCtx, index).encode(item);
184
+ legacy.content.items.push(result.content);
185
+ legacy.types = {
186
+ ...legacy.types,
187
+ ...result.types
188
+ };
189
+ legacy.keys = {
190
+ ...legacy.keys,
191
+ ...result.keys
192
+ };
193
+ }
194
+ return legacy;
195
+ }
196
+ });
197
+ const SliceLegacyCodec = (ctx) => ({
198
+ name: "SliceLegacy",
199
+ is(input) {
200
+ return SliceContentSchema.safeParse(input).success;
201
+ },
202
+ decode(input) {
203
+ switch (ctx.fieldType) {
204
+ case "Slice": return CompositeSliceLegacyCodec(ctx).decode(input);
205
+ case "SharedSlice": return SharedSliceLegacyCodec(ctx).decode(input);
206
+ default: return SimpleSliceLegacyCodec(ctx).decode(input);
207
+ }
208
+ },
209
+ encode(input) {
210
+ switch (input.__TYPE__) {
211
+ case CompositeSliceContentType: return CompositeSliceLegacyCodec(ctx).encode(input);
212
+ case SharedSliceContentType: return SharedSliceLegacyCodec(ctx).encode(input);
213
+ default: return SimpleSliceLegacyCodec(ctx).encode(input);
214
+ }
215
+ }
216
+ });
217
+ //#endregion
218
+ export { CompositeSliceLegacyCodec, SharedSliceLegacyCodec, SimpleSliceLegacyCodec, SliceLegacyCodec };
219
+
220
+ //# sourceMappingURL=slice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slice.js","names":[],"sources":["../../../src/content/codec/slice.ts"],"sourcesContent":["import { CompositeSliceLegacySchema, SharedSliceLegacySchema } from \"../legacy/slice\"\nimport type {\n\tCompositeSliceLegacy,\n\tSharedSliceLegacy,\n\tSimpleSliceLegacy,\n\tSliceLegacy,\n} from \"../legacy/slice\"\nimport {\n\tCompositeSliceContentSchema,\n\tCompositeSliceContentType,\n\tSharedSliceContentSchema,\n\tSharedSliceContentType,\n\tSimpleSliceContentSchema,\n\tSliceContentSchema,\n} from \"../slice\"\nimport type {\n\tCompositeSliceContent,\n\tSharedSliceContent,\n\tSimpleSliceContent,\n\tSliceContent,\n} from \"../slice\"\nimport { GroupItemLegacyCodec, NestableAndGroupLegacyCodec } from \"./group\"\nimport { getFieldCtx, type LegacyCodec, type LegacyContentCtx } from \"./legacyContentCtx\"\nimport { NestableLegacyCodec } from \"./nestable\"\n\n// Simple (before 2020)\nexport const SimpleSliceLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<SimpleSliceContent, SimpleSliceLegacy, true> => ({\n\tname: \"SimpleSliceLegacy\",\n\n\tis(input): input is SimpleSliceContent {\n\t\treturn SimpleSliceContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\treturn NestableAndGroupLegacyCodec(ctx).decode(input)\n\t},\n\n\tencode(input) {\n\t\treturn NestableAndGroupLegacyCodec(ctx).encode(input)\n\t},\n})\n\n// Composite (2020 to 2021)\nexport const CompositeSliceLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<CompositeSliceContent, CompositeSliceLegacy> => ({\n\tname: \"CompositeSliceLegacy\",\n\n\tis(input): input is CompositeSliceContent {\n\t\treturn CompositeSliceContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tconst parsed = CompositeSliceLegacySchema.safeParse(input)\n\t\tif (!parsed.success) {\n\t\t\treturn parsed\n\t\t}\n\n\t\tconst nonRepeat: CompositeSliceContent[\"nonRepeat\"] = {}\n\t\tfor (const [key, legacy] of Object.entries(parsed.data[\"non-repeat\"] || {})) {\n\t\t\tconst fieldCtx = getFieldCtx({\n\t\t\t\tfieldKey: key,\n\t\t\t\tctx,\n\t\t\t\tprefixes: [\"non-repeat\"],\n\t\t\t})\n\n\t\t\tconst result = NestableLegacyCodec(fieldCtx).decode(legacy)\n\t\t\tif (!result.success) continue\n\n\t\t\tnonRepeat[key] = result.data\n\t\t}\n\n\t\tconst repeat: CompositeSliceContent[\"repeat\"] = []\n\t\tfor (let index = 0; index < (parsed.data.repeat?.length || 0); index++) {\n\t\t\tconst item = parsed.data.repeat?.[index]\n\t\t\tconst itemCtx = getFieldCtx({ fieldKey: \"repeat\", ctx })\n\n\t\t\tconst result = GroupItemLegacyCodec(itemCtx, index).decode(item)\n\t\t\tif (!result.success) continue\n\n\t\t\trepeat.push(result.data)\n\t\t}\n\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: {\n\t\t\t\t__TYPE__: CompositeSliceContentType,\n\t\t\t\tnonRepeat,\n\t\t\t\trepeat,\n\t\t\t},\n\t\t}\n\t},\n\n\tencode(input) {\n\t\tconst legacy: ReturnType<LegacyCodec<CompositeSliceContent, CompositeSliceLegacy>[\"encode\"]> = {\n\t\t\tcontent: {\n\t\t\t\t\"non-repeat\": {},\n\t\t\t\trepeat: [],\n\t\t\t},\n\t\t\ttypes: {\n\t\t\t\t[ctx.keyOfType]: \"Slice\",\n\t\t\t},\n\t\t\tkeys: {},\n\t\t}\n\n\t\t// Non-repeat\n\t\tfor (const [key, content] of Object.entries(input.nonRepeat)) {\n\t\t\tconst fieldCtx = getFieldCtx({\n\t\t\t\tfieldKey: key,\n\t\t\t\tctx,\n\t\t\t\tprefixes: [\"non-repeat\"],\n\t\t\t})\n\n\t\t\tconst result = NestableLegacyCodec(fieldCtx).encode(content)\n\t\t\tif (!result) continue\n\n\t\t\tlegacy.content[\"non-repeat\"]![key] = result.content\n\t\t\tlegacy.types = { ...legacy.types, ...result.types }\n\t\t\tlegacy.keys = { ...legacy.keys, ...result.keys }\n\t\t}\n\n\t\t// Repeat\n\t\tconst repeatCtx = getFieldCtx({ fieldKey: \"repeat\", ctx })\n\t\tfor (let index = 0; index < input.repeat.length; index++) {\n\t\t\tconst item = input.repeat[index]\n\t\t\tconst result = GroupItemLegacyCodec(repeatCtx, index).encode(item)\n\n\t\t\tlegacy.content.repeat!.push(result.content)\n\t\t\tlegacy.types = { ...legacy.types, ...result.types }\n\t\t\tlegacy.keys = { ...legacy.keys, ...result.keys }\n\t\t}\n\n\t\treturn legacy\n\t},\n})\n\n// Shared (2021 to present)\nexport const SharedSliceLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<SharedSliceContent, SharedSliceLegacy> => ({\n\tname: \"SharedSliceLegacy\",\n\n\tis(input): input is SharedSliceContent {\n\t\treturn SharedSliceContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tconst parsed = SharedSliceLegacySchema.safeParse(input)\n\t\tif (!parsed.success) {\n\t\t\treturn parsed\n\t\t}\n\n\t\tconst primary: SharedSliceContent[\"primary\"] = {}\n\t\tfor (const [key, legacy] of Object.entries(parsed.data[\"primary\"])) {\n\t\t\tconst fieldCtx = getFieldCtx({\n\t\t\t\tfieldKey: key,\n\t\t\t\tctx,\n\t\t\t\tprefixes: [\"variations\", parsed.data.variation, \"primary\"],\n\t\t\t})\n\n\t\t\tconst result = NestableAndGroupLegacyCodec(fieldCtx).decode(legacy)\n\t\t\tif (!result.success) continue\n\n\t\t\tprimary[key] = result.data\n\t\t}\n\n\t\tconst items: SharedSliceContent[\"items\"] = []\n\t\tfor (let index = 0; index < parsed.data.items.length; index++) {\n\t\t\tconst item = parsed.data.items[index]\n\t\t\tconst itemCtx = getFieldCtx({\n\t\t\t\tfieldKey: \"items\",\n\t\t\t\tctx,\n\t\t\t\tprefixes: [\"variations\", parsed.data.variation],\n\t\t\t})\n\n\t\t\tconst result = GroupItemLegacyCodec(itemCtx, index).decode(item)\n\t\t\tif (!result.success) continue\n\n\t\t\titems.push(result.data)\n\t\t}\n\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: {\n\t\t\t\t__TYPE__: SharedSliceContentType,\n\t\t\t\tvariation: parsed.data.variation,\n\t\t\t\tprimary,\n\t\t\t\titems,\n\t\t\t},\n\t\t}\n\t},\n\n\tencode(input) {\n\t\tconst legacy: ReturnType<LegacyCodec<SharedSliceContent, SharedSliceLegacy>[\"encode\"]> = {\n\t\t\tcontent: {\n\t\t\t\tprimary: {},\n\t\t\t\titems: [],\n\t\t\t\tvariation: input.variation,\n\t\t\t},\n\t\t\ttypes: {\n\t\t\t\t[ctx.keyOfType]: \"SharedSlice\",\n\t\t\t},\n\t\t\tkeys: {},\n\t\t}\n\n\t\t// Primary\n\t\tfor (const [key, content] of Object.entries(input.primary)) {\n\t\t\tconst fieldCtx = getFieldCtx({\n\t\t\t\tfieldKey: key,\n\t\t\t\tctx,\n\t\t\t\tprefixes: [\"variations\", input.variation, \"primary\"],\n\t\t\t})\n\n\t\t\tconst result = NestableAndGroupLegacyCodec(fieldCtx).encode(content)\n\t\t\tif (!result) continue\n\n\t\t\tlegacy.content.primary[key] = result.content\n\t\t\tlegacy.types = { ...legacy.types, ...result.types }\n\t\t\tlegacy.keys = { ...legacy.keys, ...result.keys }\n\t\t}\n\n\t\t// Items\n\t\tconst repeatCtx = getFieldCtx({\n\t\t\tfieldKey: \"items\",\n\t\t\tctx,\n\t\t\tprefixes: [\"variations\", input.variation],\n\t\t})\n\t\tfor (let index = 0; index < input.items.length; index++) {\n\t\t\tconst item = input.items[index]\n\t\t\tconst result = GroupItemLegacyCodec(repeatCtx, index).encode(item)\n\n\t\t\tlegacy.content.items.push(result.content)\n\t\t\tlegacy.types = { ...legacy.types, ...result.types }\n\t\t\tlegacy.keys = { ...legacy.keys, ...result.keys }\n\t\t}\n\n\t\treturn legacy\n\t},\n})\n\n// All\nexport const SliceLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<SliceContent, SliceLegacy, true> => ({\n\tname: \"SliceLegacy\",\n\n\tis(input): input is SliceContent {\n\t\treturn SliceContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tswitch (ctx.fieldType) {\n\t\t\tcase \"Slice\":\n\t\t\t\treturn CompositeSliceLegacyCodec(ctx).decode(input)\n\t\t\tcase \"SharedSlice\":\n\t\t\t\treturn SharedSliceLegacyCodec(ctx).decode(input)\n\t\t\tdefault:\n\t\t\t\treturn SimpleSliceLegacyCodec(ctx).decode(input)\n\t\t}\n\t},\n\n\tencode(input) {\n\t\tswitch (input.__TYPE__) {\n\t\t\tcase CompositeSliceContentType:\n\t\t\t\treturn CompositeSliceLegacyCodec(ctx).encode(input)\n\t\t\tcase SharedSliceContentType:\n\t\t\t\treturn SharedSliceLegacyCodec(ctx).encode(input)\n\t\t\tdefault:\n\t\t\t\treturn SimpleSliceLegacyCodec(ctx).encode(input)\n\t\t}\n\t},\n})\n"],"mappings":"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"}
@@ -0,0 +1,106 @@
1
+ import { getFieldCtx } from "./legacyContentCtx.js";
2
+ import { SliceItemContentSchema, SlicesContentSchema, SlicesContentType } from "../slices.js";
3
+ import { SliceItemLegacySchema, SlicesLegacySchema } from "../legacy/slices.js";
4
+ import { SliceLegacyCodec } from "./slice.js";
5
+ //#region src/content/codec/slices.ts
6
+ const SliceItemLegacyCodec = (ctx) => ({
7
+ name: "SlicesItemLegacy",
8
+ is(input) {
9
+ return SliceItemContentSchema.safeParse(input).success;
10
+ },
11
+ decode(input) {
12
+ const parsed = SliceItemLegacySchema.safeParse(input);
13
+ if (!parsed.success) return parsed;
14
+ const sliceName = parsed.data.key.split("$")[0];
15
+ const result = SliceLegacyCodec(getFieldCtx({
16
+ fieldKey: sliceName,
17
+ contentKey: parsed.data.key,
18
+ ctx
19
+ })).decode(parsed.data.value);
20
+ if (!result.success) return result;
21
+ return {
22
+ success: true,
23
+ data: {
24
+ key: parsed.data.key,
25
+ name: sliceName,
26
+ maybeLabel: parsed.data.label || void 0,
27
+ widget: result.data
28
+ }
29
+ };
30
+ },
31
+ encode(input) {
32
+ const result = SliceLegacyCodec(getFieldCtx({
33
+ fieldKey: input.name,
34
+ contentKey: input.key,
35
+ ctx
36
+ })).encode(input.widget);
37
+ if (!result) return {
38
+ content: {
39
+ key: input.key,
40
+ label: input.maybeLabel,
41
+ value: {}
42
+ },
43
+ types: {},
44
+ keys: {}
45
+ };
46
+ return {
47
+ content: {
48
+ key: input.key,
49
+ label: input.maybeLabel,
50
+ value: result.content
51
+ },
52
+ types: result.types,
53
+ keys: result.keys
54
+ };
55
+ }
56
+ });
57
+ const SlicesLegacyCodec = (ctx) => ({
58
+ name: "SlicesLegacy",
59
+ is(input) {
60
+ return SlicesContentSchema.safeParse(input).success;
61
+ },
62
+ decode(input) {
63
+ const parsed = SlicesLegacySchema.safeParse(input);
64
+ if (!parsed.success) return parsed;
65
+ const value = [];
66
+ for (let index = 0; index < parsed.data.length; index++) {
67
+ const item = parsed.data[index];
68
+ const result = SliceItemLegacyCodec(ctx).decode(item);
69
+ if (!result.success) return result;
70
+ value.push(result.data);
71
+ }
72
+ return {
73
+ success: true,
74
+ data: {
75
+ __TYPE__: SlicesContentType,
76
+ value
77
+ }
78
+ };
79
+ },
80
+ encode(input) {
81
+ const legacy = {
82
+ content: [],
83
+ types: { [ctx.keyOfType]: "Slices" },
84
+ keys: {}
85
+ };
86
+ for (let index = 0; index < input.value.length; index++) {
87
+ const item = input.value[index];
88
+ const result = SliceItemLegacyCodec(ctx).encode(item);
89
+ if (!result) continue;
90
+ legacy.content.push(result.content);
91
+ legacy.types = {
92
+ ...legacy.types,
93
+ ...result.types
94
+ };
95
+ legacy.keys = {
96
+ ...legacy.keys,
97
+ ...result.keys
98
+ };
99
+ }
100
+ return legacy;
101
+ }
102
+ });
103
+ //#endregion
104
+ export { SliceItemLegacyCodec, SlicesLegacyCodec };
105
+
106
+ //# sourceMappingURL=slices.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slices.js","names":[],"sources":["../../../src/content/codec/slices.ts"],"sourcesContent":["import { SliceItemLegacySchema, SlicesLegacySchema } from \"../legacy/slices\"\nimport type { SliceItemLegacy, SlicesLegacy } from \"../legacy/slices\"\nimport { SliceItemContentSchema, SlicesContentSchema, SlicesContentType } from \"../slices\"\nimport type { SliceItemContent, SlicesContent } from \"../slices\"\nimport { type LegacyContentCtx, type LegacyCodec, getFieldCtx } from \"./legacyContentCtx\"\nimport { SliceLegacyCodec } from \"./slice\"\n\n// Item\nexport const SliceItemLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<SliceItemContent, SliceItemLegacy> => ({\n\tname: \"SlicesItemLegacy\",\n\n\tis(input): input is SliceItemContent {\n\t\treturn SliceItemContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tconst parsed = SliceItemLegacySchema.safeParse(input)\n\t\tif (!parsed.success) {\n\t\t\treturn parsed\n\t\t}\n\n\t\tconst sliceName = parsed.data.key.split(\"$\")[0]\n\t\tconst itemCtx = getFieldCtx({\n\t\t\tfieldKey: sliceName,\n\t\t\tcontentKey: parsed.data.key,\n\t\t\tctx,\n\t\t})\n\t\tconst result = SliceLegacyCodec(itemCtx).decode(parsed.data.value)\n\n\t\tif (!result.success) {\n\t\t\treturn result\n\t\t}\n\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: {\n\t\t\t\tkey: parsed.data.key,\n\t\t\t\tname: sliceName,\n\t\t\t\tmaybeLabel: parsed.data.label || undefined,\n\t\t\t\twidget: result.data,\n\t\t\t},\n\t\t}\n\t},\n\n\tencode(input) {\n\t\tconst itemCtx = getFieldCtx({\n\t\t\tfieldKey: input.name,\n\t\t\tcontentKey: input.key,\n\t\t\tctx,\n\t\t})\n\t\tconst result = SliceLegacyCodec(itemCtx).encode(input.widget)\n\n\t\tif (!result) {\n\t\t\treturn {\n\t\t\t\tcontent: {\n\t\t\t\t\tkey: input.key,\n\t\t\t\t\tlabel: input.maybeLabel,\n\t\t\t\t\tvalue: {},\n\t\t\t\t},\n\t\t\t\ttypes: {},\n\t\t\t\tkeys: {},\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tcontent: {\n\t\t\t\tkey: input.key,\n\t\t\t\tlabel: input.maybeLabel,\n\t\t\t\tvalue: result.content,\n\t\t\t},\n\t\t\ttypes: result.types,\n\t\t\tkeys: result.keys,\n\t\t}\n\t},\n})\n\n// Slices\nexport const SlicesLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<SlicesContent, SlicesLegacy> => ({\n\tname: \"SlicesLegacy\",\n\n\tis(input): input is SlicesContent {\n\t\treturn SlicesContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tconst parsed = SlicesLegacySchema.safeParse(input)\n\t\tif (!parsed.success) {\n\t\t\treturn parsed\n\t\t}\n\n\t\tconst value: SlicesContent[\"value\"] = []\n\t\tfor (let index = 0; index < parsed.data.length; index++) {\n\t\t\tconst item = parsed.data[index]\n\t\t\tconst result = SliceItemLegacyCodec(ctx).decode(item)\n\t\t\tif (!result.success) {\n\t\t\t\treturn result\n\t\t\t}\n\t\t\tvalue.push(result.data)\n\t\t}\n\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: { __TYPE__: SlicesContentType, value },\n\t\t}\n\t},\n\n\tencode(input) {\n\t\tconst legacy: ReturnType<LegacyCodec<SlicesContent, SlicesLegacy>[\"encode\"]> = {\n\t\t\tcontent: [],\n\t\t\ttypes: { [ctx.keyOfType]: \"Slices\" },\n\t\t\tkeys: {},\n\t\t}\n\n\t\tfor (let index = 0; index < input.value.length; index++) {\n\t\t\tconst item = input.value[index]\n\t\t\tconst result = SliceItemLegacyCodec(ctx).encode(item)\n\t\t\tif (!result) continue\n\n\t\t\tlegacy.content.push(result.content)\n\t\t\tlegacy.types = { ...legacy.types, ...result.types }\n\t\t\tlegacy.keys = { ...legacy.keys, ...result.keys }\n\t\t}\n\n\t\treturn legacy\n\t},\n})\n"],"mappings":";;;;;AAQA,MAAa,wBACZ,SACqD;CACrD,MAAM;CAEN,GAAG,OAAkC;AACpC,SAAO,uBAAuB,UAAU,MAAM,CAAC;;CAGhD,OAAO,OAAO;EACb,MAAM,SAAS,sBAAsB,UAAU,MAAM;AACrD,MAAI,CAAC,OAAO,QACX,QAAO;EAGR,MAAM,YAAY,OAAO,KAAK,IAAI,MAAM,IAAI,CAAC;EAM7C,MAAM,SAAS,iBALC,YAAY;GAC3B,UAAU;GACV,YAAY,OAAO,KAAK;GACxB;GACA,CAAC,CACsC,CAAC,OAAO,OAAO,KAAK,MAAM;AAElE,MAAI,CAAC,OAAO,QACX,QAAO;AAGR,SAAO;GACN,SAAS;GACT,MAAM;IACL,KAAK,OAAO,KAAK;IACjB,MAAM;IACN,YAAY,OAAO,KAAK,SAAS,KAAA;IACjC,QAAQ,OAAO;IACf;GACD;;CAGF,OAAO,OAAO;EAMb,MAAM,SAAS,iBALC,YAAY;GAC3B,UAAU,MAAM;GAChB,YAAY,MAAM;GAClB;GACA,CAAC,CACsC,CAAC,OAAO,MAAM,OAAO;AAE7D,MAAI,CAAC,OACJ,QAAO;GACN,SAAS;IACR,KAAK,MAAM;IACX,OAAO,MAAM;IACb,OAAO,EAAE;IACT;GACD,OAAO,EAAE;GACT,MAAM,EAAE;GACR;AAGF,SAAO;GACN,SAAS;IACR,KAAK,MAAM;IACX,OAAO,MAAM;IACb,OAAO,OAAO;IACd;GACD,OAAO,OAAO;GACd,MAAM,OAAO;GACb;;CAEF;AAGD,MAAa,qBACZ,SAC+C;CAC/C,MAAM;CAEN,GAAG,OAA+B;AACjC,SAAO,oBAAoB,UAAU,MAAM,CAAC;;CAG7C,OAAO,OAAO;EACb,MAAM,SAAS,mBAAmB,UAAU,MAAM;AAClD,MAAI,CAAC,OAAO,QACX,QAAO;EAGR,MAAM,QAAgC,EAAE;AACxC,OAAK,IAAI,QAAQ,GAAG,QAAQ,OAAO,KAAK,QAAQ,SAAS;GACxD,MAAM,OAAO,OAAO,KAAK;GACzB,MAAM,SAAS,qBAAqB,IAAI,CAAC,OAAO,KAAK;AACrD,OAAI,CAAC,OAAO,QACX,QAAO;AAER,SAAM,KAAK,OAAO,KAAK;;AAGxB,SAAO;GACN,SAAS;GACT,MAAM;IAAE,UAAU;IAAmB;IAAO;GAC5C;;CAGF,OAAO,OAAO;EACb,MAAM,SAAyE;GAC9E,SAAS,EAAE;GACX,OAAO,GAAG,IAAI,YAAY,UAAU;GACpC,MAAM,EAAE;GACR;AAED,OAAK,IAAI,QAAQ,GAAG,QAAQ,MAAM,MAAM,QAAQ,SAAS;GACxD,MAAM,OAAO,MAAM,MAAM;GACzB,MAAM,SAAS,qBAAqB,IAAI,CAAC,OAAO,KAAK;AACrD,OAAI,CAAC,OAAQ;AAEb,UAAO,QAAQ,KAAK,OAAO,QAAQ;AACnC,UAAO,QAAQ;IAAE,GAAG,OAAO;IAAO,GAAG,OAAO;IAAO;AACnD,UAAO,OAAO;IAAE,GAAG,OAAO;IAAM,GAAG,OAAO;IAAM;;AAGjD,SAAO;;CAER"}
@@ -0,0 +1,56 @@
1
+ import { RichTextContentType } from "../richText.js";
2
+ import { TableLegacySchema } from "../legacy/table.js";
3
+ import { TableContentSchema, TableContentType } from "../table.js";
4
+ import { blockLegacyToValue, blockValueToLegacy } from "./richText.js";
5
+ //#region src/content/codec/table.ts
6
+ const TableLegacyCodec = (ctx) => ({
7
+ name: "TableLegacy",
8
+ is(input) {
9
+ return TableContentSchema.safeParse(input).success;
10
+ },
11
+ decode(input) {
12
+ const parsed = TableLegacySchema.safeParse(input);
13
+ if (!parsed.success) return parsed;
14
+ return {
15
+ success: true,
16
+ data: {
17
+ __TYPE__: TableContentType,
18
+ content: parsed.data.content.map((row) => {
19
+ return {
20
+ ...row,
21
+ content: row.content.map((cell) => {
22
+ return {
23
+ ...cell,
24
+ content: {
25
+ __TYPE__: RichTextContentType,
26
+ value: cell.content.map((block) => blockLegacyToValue(block))
27
+ }
28
+ };
29
+ })
30
+ };
31
+ })
32
+ }
33
+ };
34
+ },
35
+ encode(input) {
36
+ return {
37
+ content: { content: input.content.map((row) => {
38
+ return {
39
+ ...row,
40
+ content: row.content.map((cell) => {
41
+ return {
42
+ ...cell,
43
+ content: cell.content.value.map((block) => blockValueToLegacy(block))
44
+ };
45
+ })
46
+ };
47
+ }) },
48
+ types: { [ctx.keyOfType]: "Table" },
49
+ keys: {}
50
+ };
51
+ }
52
+ });
53
+ //#endregion
54
+ export { TableLegacyCodec };
55
+
56
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.js","names":[],"sources":["../../../src/content/codec/table.ts"],"sourcesContent":["import { TableLegacySchema } from \"../legacy/table\"\nimport type { TableLegacy } from \"../legacy/table\"\nimport { RichTextContentType } from \"../richText\"\nimport { TableContentSchema, TableContentType } from \"../table\"\nimport type { TableContent } from \"../table\"\nimport type { LegacyContentCtx, LegacyCodec } from \"./legacyContentCtx\"\nimport { blockLegacyToValue, blockValueToLegacy } from \"./richText\"\n\nexport const TableLegacyCodec = (\n\tctx: LegacyContentCtx,\n): LegacyCodec<TableContent, TableLegacy> => ({\n\tname: \"TableLegacy\",\n\n\tis(input): input is TableContent {\n\t\treturn TableContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tconst parsed = TableLegacySchema.safeParse(input)\n\t\tif (!parsed.success) {\n\t\t\treturn parsed\n\t\t}\n\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: {\n\t\t\t\t__TYPE__: TableContentType,\n\t\t\t\tcontent: parsed.data.content.map((row) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...row,\n\t\t\t\t\t\tcontent: row.content.map((cell) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...cell,\n\t\t\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\t\t\t__TYPE__: RichTextContentType,\n\t\t\t\t\t\t\t\t\tvalue: cell.content.map((block) => blockLegacyToValue(block)),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t},\n\t\t}\n\t},\n\n\tencode(input) {\n\t\treturn {\n\t\t\tcontent: {\n\t\t\t\tcontent: input.content.map((row) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...row,\n\t\t\t\t\t\tcontent: row.content.map((cell) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...cell,\n\t\t\t\t\t\t\t\tcontent: cell.content.value.map((block) => blockValueToLegacy(block)),\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t},\n\t\t\ttypes: { [ctx.keyOfType]: \"Table\" },\n\t\t\tkeys: {},\n\t\t}\n\t},\n})\n"],"mappings":";;;;;AAQA,MAAa,oBACZ,SAC6C;CAC7C,MAAM;CAEN,GAAG,OAA8B;AAChC,SAAO,mBAAmB,UAAU,MAAM,CAAC;;CAG5C,OAAO,OAAO;EACb,MAAM,SAAS,kBAAkB,UAAU,MAAM;AACjD,MAAI,CAAC,OAAO,QACX,QAAO;AAGR,SAAO;GACN,SAAS;GACT,MAAM;IACL,UAAU;IACV,SAAS,OAAO,KAAK,QAAQ,KAAK,QAAQ;AACzC,YAAO;MACN,GAAG;MACH,SAAS,IAAI,QAAQ,KAAK,SAAS;AAClC,cAAO;QACN,GAAG;QACH,SAAS;SACR,UAAU;SACV,OAAO,KAAK,QAAQ,KAAK,UAAU,mBAAmB,MAAM,CAAC;SAC7D;QACD;QACA;MACF;MACA;IACF;GACD;;CAGF,OAAO,OAAO;AACb,SAAO;GACN,SAAS,EACR,SAAS,MAAM,QAAQ,KAAK,QAAQ;AACnC,WAAO;KACN,GAAG;KACH,SAAS,IAAI,QAAQ,KAAK,SAAS;AAClC,aAAO;OACN,GAAG;OACH,SAAS,KAAK,QAAQ,MAAM,KAAK,UAAU,mBAAmB,MAAM,CAAC;OACrE;OACA;KACF;KACA,EACF;GACD,OAAO,GAAG,IAAI,YAAY,SAAS;GACnC,MAAM,EAAE;GACR;;CAEF"}
@@ -0,0 +1,31 @@
1
+ import { UIDContentSchema, UIDContentType } from "../uid.js";
2
+ import { UIDLegacySchema } from "../legacy/uid.js";
3
+ //#region src/content/codec/uid.ts
4
+ const UIDLegacyCodec = (ctx) => ({
5
+ name: "UIDLegacy",
6
+ is(input) {
7
+ return UIDContentSchema.safeParse(input).success;
8
+ },
9
+ decode(input) {
10
+ const parsed = UIDLegacySchema.safeParse(input);
11
+ if (!parsed.success) return parsed;
12
+ return {
13
+ success: true,
14
+ data: {
15
+ __TYPE__: UIDContentType,
16
+ value: parsed.data
17
+ }
18
+ };
19
+ },
20
+ encode(input) {
21
+ return {
22
+ content: input.value,
23
+ types: { [ctx.keyOfType]: "UID" },
24
+ keys: {}
25
+ };
26
+ }
27
+ });
28
+ //#endregion
29
+ export { UIDLegacyCodec };
30
+
31
+ //# sourceMappingURL=uid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uid.js","names":[],"sources":["../../../src/content/codec/uid.ts"],"sourcesContent":["import { UIDLegacySchema } from \"../legacy/uid\"\nimport type { UIDLegacy } from \"../legacy/uid\"\nimport { UIDContentSchema, UIDContentType } from \"../uid\"\nimport type { UIDContent } from \"../uid\"\nimport type { LegacyContentCtx, LegacyCodec } from \"./legacyContentCtx\"\n\nexport const UIDLegacyCodec = (ctx: LegacyContentCtx): LegacyCodec<UIDContent, UIDLegacy> => ({\n\tname: \"UIDLegacy\",\n\n\tis(input): input is UIDContent {\n\t\treturn UIDContentSchema.safeParse(input).success\n\t},\n\n\tdecode(input) {\n\t\tconst parsed = UIDLegacySchema.safeParse(input)\n\t\tif (!parsed.success) {\n\t\t\treturn parsed\n\t\t}\n\n\t\treturn {\n\t\t\tsuccess: true,\n\t\t\tdata: {\n\t\t\t\t__TYPE__: UIDContentType,\n\t\t\t\tvalue: parsed.data,\n\t\t\t},\n\t\t}\n\t},\n\n\tencode(input) {\n\t\treturn {\n\t\t\tcontent: input.value,\n\t\t\ttypes: { [ctx.keyOfType]: \"UID\" },\n\t\t\tkeys: {},\n\t\t}\n\t},\n})\n"],"mappings":";;;AAMA,MAAa,kBAAkB,SAA+D;CAC7F,MAAM;CAEN,GAAG,OAA4B;AAC9B,SAAO,iBAAiB,UAAU,MAAM,CAAC;;CAG1C,OAAO,OAAO;EACb,MAAM,SAAS,gBAAgB,UAAU,MAAM;AAC/C,MAAI,CAAC,OAAO,QACX,QAAO;AAGR,SAAO;GACN,SAAS;GACT,MAAM;IACL,UAAU;IACV,OAAO,OAAO;IACd;GACD;;CAGF,OAAO,OAAO;AACb,SAAO;GACN,SAAS,MAAM;GACf,OAAO,GAAG,IAAI,YAAY,OAAO;GACjC,MAAM,EAAE;GACR;;CAEF"}