@prismicio/types-internal 4.0.0 → 4.1.0-canary.858108c

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 (127) hide show
  1. package/README.md +5 -5
  2. package/dist/content/boolean.d.ts.map +1 -1
  3. package/dist/content/boolean.js.map +1 -1
  4. package/dist/content/codec/link.js.map +1 -1
  5. package/dist/content/codec/nestable.js +4 -4
  6. package/dist/content/field.d.ts.map +1 -1
  7. package/dist/content/field.js +1 -1
  8. package/dist/content/field.js.map +1 -1
  9. package/dist/content/group.d.ts.map +1 -1
  10. package/dist/content/group.js.map +1 -1
  11. package/dist/content/image.d.ts +3 -1
  12. package/dist/content/image.d.ts.map +1 -1
  13. package/dist/content/image.js +3 -3
  14. package/dist/content/image.js.map +1 -1
  15. package/dist/content/legacy/boolean.d.ts +1 -0
  16. package/dist/content/legacy/embed.d.ts +1 -0
  17. package/dist/content/legacy/empty.d.ts +1 -0
  18. package/dist/content/legacy/field.d.ts +1 -0
  19. package/dist/content/legacy/geopoint.d.ts +1 -0
  20. package/dist/content/legacy/image.d.ts +28 -0
  21. package/dist/content/legacy/image.d.ts.map +1 -0
  22. package/dist/content/legacy/image.js +3 -3
  23. package/dist/content/legacy/image.js.map +1 -1
  24. package/dist/content/legacy/integrationField.d.ts +1 -0
  25. package/dist/content/legacy/link.d.ts +10 -10
  26. package/dist/content/legacy/link.js +23 -23
  27. package/dist/content/legacy/link.js.map +1 -1
  28. package/dist/content/legacy/nestable.d.ts +1 -0
  29. package/dist/content/legacy/nestable.js +1 -1
  30. package/dist/content/legacy/repeatable.d.ts +1 -0
  31. package/dist/content/legacy/richText.d.ts +9 -8
  32. package/dist/content/legacy/richText.d.ts.map +1 -1
  33. package/dist/content/legacy/richText.js +5 -5
  34. package/dist/content/legacy/richText.js.map +1 -1
  35. package/dist/content/legacy/separator.d.ts +1 -0
  36. package/dist/content/legacy/table.d.ts +1 -0
  37. package/dist/content/link.d.ts +62 -85
  38. package/dist/content/link.d.ts.map +1 -1
  39. package/dist/content/link.js +30 -27
  40. package/dist/content/link.js.map +1 -1
  41. package/dist/content/nestable.d.ts.map +1 -1
  42. package/dist/content/nestable.js +4 -4
  43. package/dist/content/nestable.js.map +1 -1
  44. package/dist/content/repeatable.d.ts +4 -69
  45. package/dist/content/repeatable.d.ts.map +1 -1
  46. package/dist/content/richText.d.ts +13 -13
  47. package/dist/content/richText.d.ts.map +1 -1
  48. package/dist/content/richText.js +9 -9
  49. package/dist/content/richText.js.map +1 -1
  50. package/dist/helpers/customTypeModel.d.ts +5 -5
  51. package/dist/helpers/customTypeModel.d.ts.map +1 -1
  52. package/dist/helpers/customTypeModel.js +30 -0
  53. package/dist/helpers/customTypeModel.js.map +1 -1
  54. package/dist/helpers/imageContent.d.ts +33 -0
  55. package/dist/helpers/imageContent.d.ts.map +1 -0
  56. package/dist/helpers/imageContent.js +55 -0
  57. package/dist/helpers/imageContent.js.map +1 -0
  58. package/dist/helpers/traverseContent.d.ts +4 -4
  59. package/dist/helpers/traverseContent.d.ts.map +1 -1
  60. package/dist/helpers/traverseContent.js +5 -3
  61. package/dist/helpers/traverseContent.js.map +1 -1
  62. package/dist/helpers/traverseContentWithModel.d.ts +4 -4
  63. package/dist/helpers/traverseContentWithModel.js +1 -1
  64. package/dist/helpers/withDefaultContent.d.ts +21 -0
  65. package/dist/helpers/withDefaultContent.d.ts.map +1 -0
  66. package/dist/helpers/withDefaultContent.js +120 -0
  67. package/dist/helpers/withDefaultContent.js.map +1 -0
  68. package/dist/index.d.ts +26 -24
  69. package/dist/index.js +6 -1
  70. package/dist/io-ts.d.ts +1275 -830
  71. package/dist/io-ts.d.ts.map +1 -1
  72. package/dist/io-ts.js +17 -12
  73. package/dist/io-ts.js.map +1 -1
  74. package/dist/model/customType.d.ts +9 -3
  75. package/dist/model/customType.d.ts.map +1 -1
  76. package/dist/model/customType.js +7 -4
  77. package/dist/model/customType.js.map +1 -1
  78. package/dist/model/richText.d.ts +20 -1
  79. package/dist/model/richText.d.ts.map +1 -1
  80. package/dist/model/richText.js +3 -3
  81. package/dist/model/richText.js.map +1 -1
  82. package/dist/model/slice.d.ts +1251 -643
  83. package/dist/model/slice.d.ts.map +1 -1
  84. package/dist/model/slice.js +4 -4
  85. package/dist/model/slice.js.map +1 -1
  86. package/dist/model/table.js +5 -5
  87. package/dist/model/table.js.map +1 -1
  88. package/dist/model/widget.d.ts +1 -3
  89. package/dist/model/widget.d.ts.map +1 -1
  90. package/dist/model/widget.js +5 -2
  91. package/dist/model/widget.js.map +1 -1
  92. package/dist/zod4.d.ts +2404 -1873
  93. package/dist/zod4.d.ts.map +1 -1
  94. package/dist/zod4.js +17 -12
  95. package/dist/zod4.js.map +1 -1
  96. package/package.json +19 -12
  97. package/src/content/boolean.ts +0 -13
  98. package/src/content/codec/link.ts +12 -12
  99. package/src/content/field.ts +0 -14
  100. package/src/content/group.ts +1 -54
  101. package/src/content/image.ts +3 -91
  102. package/src/content/legacy/image.ts +4 -4
  103. package/src/content/legacy/link.ts +46 -46
  104. package/src/content/legacy/richText.ts +18 -16
  105. package/src/content/link.ts +100 -89
  106. package/src/content/nestable.ts +1 -20
  107. package/src/content/richText.ts +23 -17
  108. package/src/helpers/customTypeModel.ts +51 -4
  109. package/src/helpers/imageContent.ts +84 -0
  110. package/src/helpers/traverseContent.ts +4 -1
  111. package/src/helpers/withDefaultContent.ts +180 -0
  112. package/src/index.ts +25 -7
  113. package/src/io-ts.ts +22 -10
  114. package/src/model/customType.ts +18 -7
  115. package/src/model/diff/sharedSlice.ts +2 -2
  116. package/src/model/diff/variation.ts +7 -7
  117. package/src/model/richText.ts +5 -2
  118. package/src/model/slice.ts +6 -8
  119. package/src/model/table.ts +5 -5
  120. package/src/model/widget.ts +6 -2
  121. package/src/zod4.ts +22 -10
  122. package/dist/model/section.d.ts +0 -11
  123. package/dist/model/section.d.ts.map +0 -1
  124. package/dist/model/section.js +0 -10
  125. package/dist/model/section.js.map +0 -1
  126. package/src/content/withDefaultValues.ts +0 -114
  127. package/src/model/section.ts +0 -12
package/README.md CHANGED
@@ -34,7 +34,7 @@ Non-breaking space:   are here on purpose to fix emoji rendering on certain
34
34
  ## Install
35
35
 
36
36
  ```bash
37
- npm install @prismicio/types-internal-2
37
+ npm install @prismicio/types-internal
38
38
  ```
39
39
 
40
40
  ## Documentation
@@ -92,7 +92,7 @@ limitations under the License.
92
92
 
93
93
  <!-- Badges -->
94
94
 
95
- [npm-version-src]: https://img.shields.io/npm/v/@prismicio/types-internal-2/latest.svg
96
- [npm-version-href]: https://npmjs.com/package/@prismicio/types-internal-2
97
- [npm-downloads-src]: https://img.shields.io/npm/dm/@prismicio/types-internal-2.svg
98
- [npm-downloads-href]: https://npmjs.com/package/@prismicio/types-internal-2
95
+ [npm-version-src]: https://img.shields.io/npm/v/@prismicio/types-internal/latest.svg
96
+ [npm-version-href]: https://npmjs.com/package/@prismicio/types-internal
97
+ [npm-downloads-src]: https://img.shields.io/npm/dm/@prismicio/types-internal.svg
98
+ [npm-downloads-href]: https://npmjs.com/package/@prismicio/types-internal
@@ -1 +1 @@
1
- {"version":3,"file":"boolean.d.ts","names":[],"sources":["../../src/content/boolean.ts"],"mappings":";;;cAMa,oBAAA,EAAoB,CAAA,CAAA,aAAA;;;;KAKrB,cAAA,GAAiB,CAAA,CAAE,KAAA,QAAa,oBAAA"}
1
+ {"version":3,"file":"boolean.d.ts","names":[],"sources":["../../src/content/boolean.ts"],"mappings":";;;cAIa,oBAAA,EAAoB,CAAA,CAAA,aAAA;;;;KAKrB,cAAA,GAAiB,CAAA,CAAE,KAAA,QAAa,oBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"boolean.js","names":[],"sources":["../../src/content/boolean.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nimport type { BooleanModel } from \"../model/boolean\"\n\nexport const BooleanContentType = \"BooleanContent\" as const\n\nexport const BooleanContentSchema = z.object({\n\t__TYPE__: z.literal(BooleanContentType),\n\tvalue: z.boolean(),\n})\n\nexport type BooleanContent = z.infer<typeof BooleanContentSchema>\n\n/**\n * Returns the default value for a Boolean field based on its configuration.\n */\nexport const BooleanContentDefaultValue = (field: BooleanModel): BooleanContent | undefined =>\n\tfield.config?.default_value !== undefined\n\t\t? {\n\t\t\t\t__TYPE__: BooleanContentType,\n\t\t\t\tvalue: field.config.default_value || false,\n\t\t\t}\n\t\t: undefined\n"],"mappings":";;AAIA,MAAa,qBAAqB;AAElC,MAAa,uBAAuB,EAAE,OAAO;CAC5C,UAAU,EAAE,QAAQ,mBAAmB;CACvC,OAAO,EAAE,SAAS;CAClB,CAAC"}
1
+ {"version":3,"file":"boolean.js","names":[],"sources":["../../src/content/boolean.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nexport const BooleanContentType = \"BooleanContent\" as const\n\nexport const BooleanContentSchema = z.object({\n\t__TYPE__: z.literal(BooleanContentType),\n\tvalue: z.boolean(),\n})\n\nexport type BooleanContent = z.infer<typeof BooleanContentSchema>\n"],"mappings":";;AAEA,MAAa,qBAAqB;AAElC,MAAa,uBAAuB,EAAE,OAAO;CAC5C,UAAU,EAAE,QAAQ,mBAAmB;CACvC,OAAO,EAAE,SAAS;CAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"link.js","names":[],"sources":["../../../src/content/codec/link.ts"],"sourcesContent":["import type {\n\tEmptyLinkValueLegacy,\n\tFilledLinkValueLegacy,\n\tLinkValueLegacy,\n\tLinkLegacy,\n} from \"../legacy/link\"\nimport { LinkKind, LinkType, LinkLegacySchema } from \"../legacy/link\"\nimport { LinkContentSchema, LinkContentType } from \"../link\"\nimport type {\n\tEmptyLinkValueContent,\n\tFilledLinkValueContent,\n\tLinkContent,\n\tLinkValueContent,\n} from \"../link\"\nimport type { LegacyContentCtx, LegacyCodec } from \"./legacyContentCtx\"\n\n// Also used by content/codec/richText\nexport function linkLegacyToValue(value: FilledLinkValueLegacy): FilledLinkValueContent\nexport function linkLegacyToValue(value: EmptyLinkValueLegacy): EmptyLinkValueContent\nexport function linkLegacyToValue(value: LinkValueLegacy): LinkValueContent\nexport function linkLegacyToValue(\n\tvalue: Omit<LinkLegacy, \"text\" | \"variant\" | \"key\">,\n): Omit<LinkContent[\"value\"], \"text\" | \"variant\"> {\n\tlet content: Omit<LinkContent[\"value\"], \"text\" | \"variant\">\n\tswitch (value.kind) {\n\t\tcase LinkKind.Image:\n\t\t\tcontent = { __TYPE__: LinkType.Image, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.File:\n\t\t\tcontent = { __TYPE__: LinkType.File, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.Document:\n\t\t\tcontent = { __TYPE__: LinkType.Document, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.External:\n\t\t\tcontent = { __TYPE__: LinkType.External, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.Media:\n\t\t\tcontent = { __TYPE__: LinkType.Media, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.Any:\n\t\tdefault:\n\t\t\tcontent = { __TYPE__: LinkType.Any, ...value }\n\t\t\tbreak\n\t}\n\n\treturn content\n}\n\n// Also used by content/codec/repeatable\nexport function linkLegacyToContent({ key, text, variant, ...legacy }: LinkLegacy): LinkContent {\n\treturn {\n\t\t__TYPE__: LinkContentType,\n\t\tkey,\n\t\tvalue: {\n\t\t\t...(text ? { text } : {}),\n\t\t\t...(variant ? { variant } : {}),\n\t\t\t...linkLegacyToValue(legacy),\n\t\t},\n\t}\n}\n\n// Also used by content/codec/richText\nexport function linkValueToLegacy(value: FilledLinkValueContent): FilledLinkValueLegacy\nexport function linkValueToLegacy(value: EmptyLinkValueContent): EmptyLinkValueLegacy\nexport function linkValueToLegacy(value: LinkValueContent): LinkValueLegacy {\n\tconst { __TYPE__, ...legacy } = value\n\treturn legacy\n}\n\nfunction linkContentToLegacy({ key, value }: LinkContent): LinkLegacy {\n\tconst { __TYPE__, ...legacy } = value\n\n\treturn { key, ...legacy }\n}\n\nexport const LinkLegacyCodec = (ctx: LegacyContentCtx): LegacyCodec<LinkContent, LinkLegacy> => ({\n\tname: \"LinkLegacy\",\n\n\tis(input): input is LinkContent {\n\t\treturn LinkContentSchema.safeParse(input).success\n\t},\n\n\ttoContent(input) {\n\t\tconst parsed = LinkLegacySchema.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: linkLegacyToContent(parsed.data),\n\t\t}\n\t},\n\n\tfromContent(input) {\n\t\treturn {\n\t\t\tcontent: linkContentToLegacy(input),\n\t\t\ttypes: { [ctx.keyOfType]: \"Link\" },\n\t\t\tkeys: {},\n\t\t}\n\t},\n})\n"],"mappings":";;;AAoBA,SAAgB,kBACf,OACiD;CACjD,IAAI;AACJ,SAAQ,MAAM,MAAd;EACC,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAO,GAAG;IAAO;AAChD;EACD,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAM,GAAG;IAAO;AAC/C;EACD,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAU,GAAG;IAAO;AACnD;EACD,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAU,GAAG;IAAO;AACnD;EACD,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAO,GAAG;IAAO;AAChD;EACD,KAAK,SAAS;EACd;AACC,aAAU;IAAE,UAAU,SAAS;IAAK,GAAG;IAAO;AAC9C;;AAGF,QAAO;;AAIR,SAAgB,oBAAoB,EAAE,KAAK,MAAM,SAAS,GAAG,UAAmC;AAC/F,QAAO;EACN,UAAU;EACV;EACA,OAAO;GACN,GAAI,OAAO,EAAE,MAAM,GAAG,EAAE;GACxB,GAAI,UAAU,EAAE,SAAS,GAAG,EAAE;GAC9B,GAAG,kBAAkB,OAAO;GAC5B;EACD;;AAMF,SAAgB,kBAAkB,OAA0C;CAC3E,MAAM,EAAE,UAAU,GAAG,WAAW;AAChC,QAAO;;AAGR,SAAS,oBAAoB,EAAE,KAAK,SAAkC;CACrE,MAAM,EAAE,UAAU,GAAG,WAAW;AAEhC,QAAO;EAAE;EAAK,GAAG;EAAQ;;AAG1B,MAAa,mBAAmB,SAAiE;CAChG,MAAM;CAEN,GAAG,OAA6B;AAC/B,SAAO,kBAAkB,UAAU,MAAM,CAAC;;CAG3C,UAAU,OAAO;EAChB,MAAM,SAAS,iBAAiB,UAAU,MAAM;AAChD,MAAI,CAAC,OAAO,QACX,QAAO;AAGR,SAAO;GACN,SAAS;GACT,MAAM,oBAAoB,OAAO,KAAK;GACtC;;CAGF,YAAY,OAAO;AAClB,SAAO;GACN,SAAS,oBAAoB,MAAM;GACnC,OAAO,GAAG,IAAI,YAAY,QAAQ;GAClC,MAAM,EAAE;GACR;;CAEF"}
1
+ {"version":3,"file":"link.js","names":[],"sources":["../../../src/content/codec/link.ts"],"sourcesContent":["import type {\n\tEmptyLinkLegacyValue,\n\tFilledLinkLegacyValue,\n\tLinkLegacyValue,\n\tLinkLegacy,\n} from \"../legacy/link\"\nimport { LinkKind, LinkType, LinkLegacySchema } from \"../legacy/link\"\nimport { LinkContentSchema, LinkContentType } from \"../link\"\nimport type {\n\tEmptyLinkContentValue,\n\tFilledLinkContentValue,\n\tLinkContent,\n\tLinkContentValue,\n} from \"../link\"\nimport type { LegacyContentCtx, LegacyCodec } from \"./legacyContentCtx\"\n\n// Also used by content/codec/richText\nexport function linkLegacyToValue(value: FilledLinkLegacyValue): FilledLinkContentValue\nexport function linkLegacyToValue(value: EmptyLinkLegacyValue): EmptyLinkContentValue\nexport function linkLegacyToValue(value: LinkLegacyValue): LinkContentValue\nexport function linkLegacyToValue(\n\tvalue: Omit<LinkLegacy, \"text\" | \"variant\" | \"key\">,\n): Omit<LinkContent[\"value\"], \"text\" | \"variant\"> {\n\tlet content: Omit<LinkContent[\"value\"], \"text\" | \"variant\">\n\tswitch (value.kind) {\n\t\tcase LinkKind.Image:\n\t\t\tcontent = { __TYPE__: LinkType.Image, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.File:\n\t\t\tcontent = { __TYPE__: LinkType.File, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.Document:\n\t\t\tcontent = { __TYPE__: LinkType.Document, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.External:\n\t\t\tcontent = { __TYPE__: LinkType.External, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.Media:\n\t\t\tcontent = { __TYPE__: LinkType.Media, ...value }\n\t\t\tbreak\n\t\tcase LinkKind.Any:\n\t\tdefault:\n\t\t\tcontent = { __TYPE__: LinkType.Any, ...value }\n\t\t\tbreak\n\t}\n\n\treturn content\n}\n\n// Also used by content/codec/repeatable\nexport function linkLegacyToContent({ key, text, variant, ...legacy }: LinkLegacy): LinkContent {\n\treturn {\n\t\t__TYPE__: LinkContentType,\n\t\tkey,\n\t\tvalue: {\n\t\t\t...(text ? { text } : {}),\n\t\t\t...(variant ? { variant } : {}),\n\t\t\t...linkLegacyToValue(legacy),\n\t\t},\n\t}\n}\n\n// Also used by content/codec/richText\nexport function linkValueToLegacy(value: FilledLinkContentValue): FilledLinkLegacyValue\nexport function linkValueToLegacy(value: EmptyLinkContentValue): EmptyLinkLegacyValue\nexport function linkValueToLegacy(value: LinkContentValue): LinkLegacyValue {\n\tconst { __TYPE__, ...legacy } = value\n\treturn legacy\n}\n\nfunction linkContentToLegacy({ key, value }: LinkContent): LinkLegacy {\n\tconst { __TYPE__, ...legacy } = value\n\n\treturn { key, ...legacy }\n}\n\nexport const LinkLegacyCodec = (ctx: LegacyContentCtx): LegacyCodec<LinkContent, LinkLegacy> => ({\n\tname: \"LinkLegacy\",\n\n\tis(input): input is LinkContent {\n\t\treturn LinkContentSchema.safeParse(input).success\n\t},\n\n\ttoContent(input) {\n\t\tconst parsed = LinkLegacySchema.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: linkLegacyToContent(parsed.data),\n\t\t}\n\t},\n\n\tfromContent(input) {\n\t\treturn {\n\t\t\tcontent: linkContentToLegacy(input),\n\t\t\ttypes: { [ctx.keyOfType]: \"Link\" },\n\t\t\tkeys: {},\n\t\t}\n\t},\n})\n"],"mappings":";;;AAoBA,SAAgB,kBACf,OACiD;CACjD,IAAI;AACJ,SAAQ,MAAM,MAAd;EACC,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAO,GAAG;IAAO;AAChD;EACD,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAM,GAAG;IAAO;AAC/C;EACD,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAU,GAAG;IAAO;AACnD;EACD,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAU,GAAG;IAAO;AACnD;EACD,KAAK,SAAS;AACb,aAAU;IAAE,UAAU,SAAS;IAAO,GAAG;IAAO;AAChD;EACD,KAAK,SAAS;EACd;AACC,aAAU;IAAE,UAAU,SAAS;IAAK,GAAG;IAAO;AAC9C;;AAGF,QAAO;;AAIR,SAAgB,oBAAoB,EAAE,KAAK,MAAM,SAAS,GAAG,UAAmC;AAC/F,QAAO;EACN,UAAU;EACV;EACA,OAAO;GACN,GAAI,OAAO,EAAE,MAAM,GAAG,EAAE;GACxB,GAAI,UAAU,EAAE,SAAS,GAAG,EAAE;GAC9B,GAAG,kBAAkB,OAAO;GAC5B;EACD;;AAMF,SAAgB,kBAAkB,OAA0C;CAC3E,MAAM,EAAE,UAAU,GAAG,WAAW;AAChC,QAAO;;AAGR,SAAS,oBAAoB,EAAE,KAAK,SAAkC;CACrE,MAAM,EAAE,UAAU,GAAG,WAAW;AAEhC,QAAO;EAAE;EAAK,GAAG;EAAQ;;AAG1B,MAAa,mBAAmB,SAAiE;CAChG,MAAM;CAEN,GAAG,OAA6B;AAC/B,SAAO,kBAAkB,UAAU,MAAM,CAAC;;CAG3C,UAAU,OAAO;EAChB,MAAM,SAAS,iBAAiB,UAAU,MAAM;AAChD,MAAI,CAAC,OAAO,QACX,QAAO;AAGR,SAAO;GACN,SAAS;GACT,MAAM,oBAAoB,OAAO,KAAK;GACtC;;CAGF,YAAY,OAAO;AAClB,SAAO;GACN,SAAS,oBAAoB,MAAM;GACnC,OAAO,GAAG,IAAI,YAAY,QAAQ;GAClC,MAAM,EAAE;GACR;;CAEF"}
@@ -1,13 +1,13 @@
1
- import { BooleanContentType } from "../boolean.js";
2
1
  import { EmbedContentType } from "../embed.js";
2
+ import { ImageContentType } from "../image.js";
3
+ import { LinkContentType } from "../link.js";
4
+ import { RichTextContentType } from "../richText.js";
5
+ import { BooleanContentType } from "../boolean.js";
3
6
  import { EmptyContentType } from "../empty.js";
4
7
  import { FieldContentType } from "../field.js";
5
8
  import { GeoPointContentType } from "../geopoint.js";
6
- import { ImageContentType } from "../image.js";
7
9
  import { IntegrationFieldContentType } from "../integrationField.js";
8
- import { LinkContentType } from "../link.js";
9
10
  import { RepeatableContentType } from "../repeatable.js";
10
- import { RichTextContentType } from "../richText.js";
11
11
  import { SeparatorContentType } from "../separator.js";
12
12
  import { TableContentType } from "../table.js";
13
13
  import { NestableContentSchema } from "../nestable.js";
@@ -1 +1 @@
1
- {"version":3,"file":"field.d.ts","names":[],"sources":["../../src/content/field.ts"],"mappings":";;;cAQa,iBAAA,EAAiB,CAAA,CAAA,aAAA;;;;;cAOjB,kBAAA,EAAkB,CAAA,CAAA,aAAA;;;;;cAOlB,iBAAA,EAAiB,CAAA,CAAA,aAAA;;;;;cAOjB,sBAAA,EAAsB,CAAA,CAAA,aAAA;;;;;cAOtB,mBAAA,EAAmB,CAAA,CAAA,aAAA;;;;;cAOnB,kBAAA,EAAkB,CAAA,CAAA,aAAA;;;;;cAOlB,mBAAA,EAAmB,CAAA,CAAA,aAAA;;;;;KAiBpB,WAAA,GAAc,CAAA,CAAE,KAAA,QAAa,iBAAA;AAAA,KAC7B,YAAA,GAAe,CAAA,CAAE,KAAA,QAAa,kBAAA;AAAA,KAC9B,WAAA,GAAc,CAAA,CAAE,KAAA,QAAa,iBAAA;AAAA,KAC7B,gBAAA,GAAmB,CAAA,CAAE,KAAA,QAAa,sBAAA;AAAA,KAClC,aAAA,GAAgB,CAAA,CAAE,KAAA,QAAa,mBAAA;AAAA,KAC/B,YAAA,GAAe,CAAA,CAAE,KAAA,QAAa,kBAAA;AAAA,KAC9B,aAAA,GAAgB,CAAA,CAAE,KAAA,QAAa,mBAAA;AAAA,KAC/B,YAAA,GACT,WAAA,GACA,YAAA,GACA,WAAA,GACA,gBAAA,GACA,aAAA,GACA,YAAA,GACA,aAAA"}
1
+ {"version":3,"file":"field.d.ts","names":[],"sources":["../../src/content/field.ts"],"mappings":";;;cAMa,iBAAA,EAAiB,CAAA,CAAA,aAAA;;;;;cAOjB,kBAAA,EAAkB,CAAA,CAAA,aAAA;;;;;cAOlB,iBAAA,EAAiB,CAAA,CAAA,aAAA;;;;;cAOjB,sBAAA,EAAsB,CAAA,CAAA,aAAA;;;;;cAOtB,mBAAA,EAAmB,CAAA,CAAA,aAAA;;;;;cAOnB,kBAAA,EAAkB,CAAA,CAAA,aAAA;;;;;cAOlB,mBAAA,EAAmB,CAAA,CAAA,aAAA;;;;;KAiBpB,WAAA,GAAc,CAAA,CAAE,KAAA,QAAa,iBAAA;AAAA,KAC7B,YAAA,GAAe,CAAA,CAAE,KAAA,QAAa,kBAAA;AAAA,KAC9B,WAAA,GAAc,CAAA,CAAE,KAAA,QAAa,iBAAA;AAAA,KAC7B,gBAAA,GAAmB,CAAA,CAAE,KAAA,QAAa,sBAAA;AAAA,KAClC,aAAA,GAAgB,CAAA,CAAE,KAAA,QAAa,mBAAA;AAAA,KAC/B,YAAA,GAAe,CAAA,CAAE,KAAA,QAAa,kBAAA;AAAA,KAC9B,aAAA,GAAgB,CAAA,CAAE,KAAA,QAAa,mBAAA;AAAA,KAC/B,YAAA,GACT,WAAA,GACA,YAAA,GACA,WAAA,GACA,gBAAA,GACA,aAAA,GACA,YAAA,GACA,aAAA"}
@@ -47,6 +47,6 @@ const FieldContentSchema = z.union([
47
47
  SelectContentSchema
48
48
  ]);
49
49
  //#endregion
50
- export { ColorContentSchema, DateContentSchema, FieldContentSchema, FieldContentType, NumberContentSchema, RangeContentSchema, SelectContentSchema, TextContentSchema, TimestampContentSchema };
50
+ export { ColorContentSchema, DateContentSchema, FieldContentSchema, FieldContentType, NumberContentSchema, RangeContentSchema, SelectContentSchema, SelectFieldType, TextContentSchema, TimestampContentSchema };
51
51
 
52
52
  //# sourceMappingURL=field.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"field.js","names":[],"sources":["../../src/content/field.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nimport type { SelectModel } from \"../model/select\"\n\nexport const FieldContentType = \"FieldContent\" as const\nexport const SelectFieldType = \"Select\" as const\n\n// Text\nexport const TextContentSchema = z.object({\n\ttype: z.literal(\"Text\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Color\nexport const ColorContentSchema = z.object({\n\ttype: z.literal(\"Color\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Date\nexport const DateContentSchema = z.object({\n\ttype: z.literal(\"Date\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Timestamp\nexport const TimestampContentSchema = z.object({\n\ttype: z.literal(\"Timestamp\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Number\nexport const NumberContentSchema = z.object({\n\ttype: z.literal(\"Number\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Range\nexport const RangeContentSchema = z.object({\n\ttype: z.literal(\"Range\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Select\nexport const SelectContentSchema = z.object({\n\ttype: z.literal(SelectFieldType),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Fields\nexport const FieldContentSchema: z.ZodMiniType<FieldContent> = z.union([\n\tTextContentSchema,\n\tColorContentSchema,\n\tDateContentSchema,\n\tTimestampContentSchema,\n\tNumberContentSchema,\n\tRangeContentSchema,\n\tSelectContentSchema,\n])\n\nexport type TextContent = z.infer<typeof TextContentSchema>\nexport type ColorContent = z.infer<typeof ColorContentSchema>\nexport type DateContent = z.infer<typeof DateContentSchema>\nexport type TimestampContent = z.infer<typeof TimestampContentSchema>\nexport type NumberContent = z.infer<typeof NumberContentSchema>\nexport type RangeContent = z.infer<typeof RangeContentSchema>\nexport type SelectContent = z.infer<typeof SelectContentSchema>\nexport type FieldContent =\n\t| TextContent\n\t| ColorContent\n\t| DateContent\n\t| TimestampContent\n\t| NumberContent\n\t| RangeContent\n\t| SelectContent\n\n/**\n * Returns the default value for a Select field based on its configuration.\n */\nexport const SelectContentDefaultValue = (field: SelectModel): SelectContent | undefined =>\n\tfield.config?.default_value\n\t\t? {\n\t\t\t\t__TYPE__: FieldContentType,\n\t\t\t\ttype: SelectFieldType,\n\t\t\t\tvalue: field.config.default_value || \"\",\n\t\t\t}\n\t\t: undefined\n"],"mappings":";;AAIA,MAAa,mBAAmB;AAChC,MAAa,kBAAkB;AAG/B,MAAa,oBAAoB,EAAE,OAAO;CACzC,MAAM,EAAE,QAAQ,OAAO;CACvB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,qBAAqB,EAAE,OAAO;CAC1C,MAAM,EAAE,QAAQ,QAAQ;CACxB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,oBAAoB,EAAE,OAAO;CACzC,MAAM,EAAE,QAAQ,OAAO;CACvB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,yBAAyB,EAAE,OAAO;CAC9C,MAAM,EAAE,QAAQ,YAAY;CAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,sBAAsB,EAAE,OAAO;CAC3C,MAAM,EAAE,QAAQ,SAAS;CACzB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,qBAAqB,EAAE,OAAO;CAC1C,MAAM,EAAE,QAAQ,QAAQ;CACxB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,sBAAsB,EAAE,OAAO;CAC3C,MAAM,EAAE,QAAQ,gBAAgB;CAChC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,qBAAkD,EAAE,MAAM;CACtE;CACA;CACA;CACA;CACA;CACA;CACA;CACA,CAAC"}
1
+ {"version":3,"file":"field.js","names":[],"sources":["../../src/content/field.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nexport const FieldContentType = \"FieldContent\" as const\nexport const SelectFieldType = \"Select\" as const\n\n// Text\nexport const TextContentSchema = z.object({\n\ttype: z.literal(\"Text\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Color\nexport const ColorContentSchema = z.object({\n\ttype: z.literal(\"Color\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Date\nexport const DateContentSchema = z.object({\n\ttype: z.literal(\"Date\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Timestamp\nexport const TimestampContentSchema = z.object({\n\ttype: z.literal(\"Timestamp\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Number\nexport const NumberContentSchema = z.object({\n\ttype: z.literal(\"Number\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Range\nexport const RangeContentSchema = z.object({\n\ttype: z.literal(\"Range\"),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Select\nexport const SelectContentSchema = z.object({\n\ttype: z.literal(SelectFieldType),\n\tvalue: z.string().check(z.trim()),\n\t__TYPE__: z.literal(FieldContentType),\n})\n\n// Fields\nexport const FieldContentSchema: z.ZodMiniType<FieldContent> = z.union([\n\tTextContentSchema,\n\tColorContentSchema,\n\tDateContentSchema,\n\tTimestampContentSchema,\n\tNumberContentSchema,\n\tRangeContentSchema,\n\tSelectContentSchema,\n])\n\nexport type TextContent = z.infer<typeof TextContentSchema>\nexport type ColorContent = z.infer<typeof ColorContentSchema>\nexport type DateContent = z.infer<typeof DateContentSchema>\nexport type TimestampContent = z.infer<typeof TimestampContentSchema>\nexport type NumberContent = z.infer<typeof NumberContentSchema>\nexport type RangeContent = z.infer<typeof RangeContentSchema>\nexport type SelectContent = z.infer<typeof SelectContentSchema>\nexport type FieldContent =\n\t| TextContent\n\t| ColorContent\n\t| DateContent\n\t| TimestampContent\n\t| NumberContent\n\t| RangeContent\n\t| SelectContent\n"],"mappings":";;AAEA,MAAa,mBAAmB;AAChC,MAAa,kBAAkB;AAG/B,MAAa,oBAAoB,EAAE,OAAO;CACzC,MAAM,EAAE,QAAQ,OAAO;CACvB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,qBAAqB,EAAE,OAAO;CAC1C,MAAM,EAAE,QAAQ,QAAQ;CACxB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,oBAAoB,EAAE,OAAO;CACzC,MAAM,EAAE,QAAQ,OAAO;CACvB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,yBAAyB,EAAE,OAAO;CAC9C,MAAM,EAAE,QAAQ,YAAY;CAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,sBAAsB,EAAE,OAAO;CAC3C,MAAM,EAAE,QAAQ,SAAS;CACzB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,qBAAqB,EAAE,OAAO;CAC1C,MAAM,EAAE,QAAQ,QAAQ;CACxB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,sBAAsB,EAAE,OAAO;CAC3C,MAAM,EAAE,QAAQ,gBAAgB;CAChC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACjC,UAAU,EAAE,QAAQ,iBAAiB;CACrC,CAAC;AAGF,MAAa,qBAAkD,EAAE,MAAM;CACtE;CACA;CACA;CACA;CACA;CACA;CACA;CACA,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","names":[],"sources":["../../src/content/group.ts"],"mappings":";;;;cAOa,oBAAA;AAAA,KAkBD,gBAAA;EACX,QAAA,SAAiB,oBAAA;EACjB,GAAA;EACA,KAAA,WAAgB,eAAA,GAAkB,YAAA;AAAA;AAAA,cAMtB,kBAAA,EAAkB,CAAA,CAAA,aAAA;;;;KAKnB,YAAA,GAAe,CAAA,CAAE,KAAA,QAAa,kBAAA;AAAA,KAO9B,uBAAA,GAA0B,eAAA,GAAkB,YAAA"}
1
+ {"version":3,"file":"group.d.ts","names":[],"sources":["../../src/content/group.ts"],"mappings":";;;;cAMa,oBAAA;AAAA,KAkBD,gBAAA;EACX,QAAA,SAAiB,oBAAA;EACjB,GAAA;EACA,KAAA,WAAgB,eAAA,GAAkB,YAAA;AAAA;AAAA,cAMtB,kBAAA,EAAkB,CAAA,CAAA,aAAA;;;;KAKnB,YAAA,GAAe,CAAA,CAAE,KAAA,QAAa,kBAAA;AAAA,KAO9B,uBAAA,GAA0B,eAAA,GAAkB,YAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"group.js","names":[],"sources":["../../src/content/group.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nimport type { GroupModel } from \"../model/group\"\nimport { NestableContentDefaultValue, NestableContentSchema } from \"./nestable\"\nimport type { NestableContent } from \"./nestable\"\n\n// Item\nexport const GroupItemContentType = \"GroupItemContent\" as const\n\nexport const GroupItemContentSchema: z.ZodMiniType<GroupItemContent> = z.object({\n\t__TYPE__: z.literal(GroupItemContentType),\n\tkey: z.string(),\n\tvalue: z.array(\n\t\tz.tuple([\n\t\t\tz.string(),\n\t\t\tz.union([\n\t\t\t\tNestableContentSchema,\n\t\t\t\t// `lazy` is used to handle circular dependency on GroupContentSchema\n\t\t\t\tz.lazy(() => GroupContentSchema),\n\t\t\t]),\n\t\t]),\n\t),\n})\n\n// Manual type definition to handle circular dependency on GroupItemContentSchema\nexport type GroupItemContent = {\n\t__TYPE__: typeof GroupItemContentType\n\tkey: string\n\tvalue: [string, NestableContent | GroupContent][]\n}\n\n// Group\nexport const GroupContentType = \"GroupContentType\" as const\n\nexport const GroupContentSchema = z.object({\n\t__TYPE__: z.literal(GroupContentType),\n\tvalue: z.array(GroupItemContentSchema),\n})\n\nexport type GroupContent = z.infer<typeof GroupContentSchema>\n\nexport const NestableAndGroupContentSchema: z.ZodMiniType<NestableAndGroupContent> = z.union([\n\tNestableContentSchema,\n\tGroupContentSchema,\n])\n\nexport type NestableAndGroupContent = NestableContent | GroupContent\n\n// Default values for GroupContent\nexport function groupContentWithDefaultValues(\n\tcustomType: GroupModel,\n\tcontent: GroupContent,\n): GroupContent {\n\tconst fields = customType.config?.fields\n\tif (!fields) return content\n\n\treturn {\n\t\t...content,\n\t\tvalue: content.value.map((groupItem) => {\n\t\t\tconst updatedValue = Object.entries(fields).reduce<GroupItemContent[\"value\"]>(\n\t\t\t\t(acc, [fieldKey, fieldDef]) => {\n\t\t\t\t\tconst existingField = groupItem.value.find(([key]) => key === fieldKey)\n\n\t\t\t\t\tif (existingField) {\n\t\t\t\t\t\treturn [...acc, existingField]\n\t\t\t\t\t}\n\n\t\t\t\t\t// Field is missing, check if we can add a default value\n\t\t\t\t\tif (fieldDef.type === \"Group\") {\n\t\t\t\t\t\t// Recursively apply defaults to nested groups\n\t\t\t\t\t\treturn [\n\t\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\tfieldKey,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t__TYPE__: GroupContentType,\n\t\t\t\t\t\t\t\t\tvalue: [],\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\n\t\t\t\t\tconst defaultValue = NestableContentDefaultValue(fieldDef)\n\t\t\t\t\tif (defaultValue) {\n\t\t\t\t\t\treturn [...acc, [fieldKey, defaultValue]]\n\t\t\t\t\t}\n\n\t\t\t\t\treturn acc\n\t\t\t\t},\n\t\t\t\t[],\n\t\t\t)\n\n\t\t\treturn {\n\t\t\t\t...groupItem,\n\t\t\t\tvalue: updatedValue,\n\t\t\t}\n\t\t}),\n\t}\n}\n"],"mappings":";;;AAOA,MAAa,uBAAuB;AAEpC,MAAa,yBAA0D,EAAE,OAAO;CAC/E,UAAU,EAAE,QAAQ,qBAAqB;CACzC,KAAK,EAAE,QAAQ;CACf,OAAO,EAAE,MACR,EAAE,MAAM,CACP,EAAE,QAAQ,EACV,EAAE,MAAM,CACP,uBAEA,EAAE,WAAW,mBAAmB,CAChC,CAAC,CACF,CAAC,CACF;CACD,CAAC;AAUF,MAAa,mBAAmB;AAEhC,MAAa,qBAAqB,EAAE,OAAO;CAC1C,UAAU,EAAE,QAAQ,iBAAiB;CACrC,OAAO,EAAE,MAAM,uBAAuB;CACtC,CAAC;AAIF,MAAa,gCAAwE,EAAE,MAAM,CAC5F,uBACA,mBACA,CAAC"}
1
+ {"version":3,"file":"group.js","names":[],"sources":["../../src/content/group.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nimport { NestableContentSchema } from \"./nestable\"\nimport type { NestableContent } from \"./nestable\"\n\n// Item\nexport const GroupItemContentType = \"GroupItemContent\" as const\n\nexport const GroupItemContentSchema: z.ZodMiniType<GroupItemContent> = z.object({\n\t__TYPE__: z.literal(GroupItemContentType),\n\tkey: z.string(),\n\tvalue: z.array(\n\t\tz.tuple([\n\t\t\tz.string(),\n\t\t\tz.union([\n\t\t\t\tNestableContentSchema,\n\t\t\t\t// `lazy` is used to handle circular dependency on GroupContentSchema\n\t\t\t\tz.lazy(() => GroupContentSchema),\n\t\t\t]),\n\t\t]),\n\t),\n})\n\n// Manual type definition to handle circular dependency on GroupItemContentSchema\nexport type GroupItemContent = {\n\t__TYPE__: typeof GroupItemContentType\n\tkey: string\n\tvalue: [string, NestableContent | GroupContent][]\n}\n\n// Group\nexport const GroupContentType = \"GroupContentType\" as const\n\nexport const GroupContentSchema = z.object({\n\t__TYPE__: z.literal(GroupContentType),\n\tvalue: z.array(GroupItemContentSchema),\n})\n\nexport type GroupContent = z.infer<typeof GroupContentSchema>\n\nexport const NestableAndGroupContentSchema: z.ZodMiniType<NestableAndGroupContent> = z.union([\n\tNestableContentSchema,\n\tGroupContentSchema,\n])\n\nexport type NestableAndGroupContent = NestableContent | GroupContent\n"],"mappings":";;;AAMA,MAAa,uBAAuB;AAEpC,MAAa,yBAA0D,EAAE,OAAO;CAC/E,UAAU,EAAE,QAAQ,qBAAqB;CACzC,KAAK,EAAE,QAAQ;CACf,OAAO,EAAE,MACR,EAAE,MAAM,CACP,EAAE,QAAQ,EACV,EAAE,MAAM,CACP,uBAEA,EAAE,WAAW,mBAAmB,CAChC,CAAC,CACF,CAAC,CACF;CACD,CAAC;AAUF,MAAa,mBAAmB;AAEhC,MAAa,qBAAqB,EAAE,OAAO;CAC1C,UAAU,EAAE,QAAQ,iBAAiB;CACrC,OAAO,EAAE,MAAM,uBAAuB;CACtC,CAAC;AAIF,MAAa,gCAAwE,EAAE,MAAM,CAC5F,uBACA,mBACA,CAAC"}
@@ -1,6 +1,8 @@
1
+ import { ImageLegacyViewSchema } from "./legacy/image.js";
1
2
  import { z } from "zod/mini";
2
3
 
3
4
  //#region src/content/image.d.ts
5
+ type ImageContentView = z.infer<typeof ImageLegacyViewSchema>;
4
6
  declare const ImageContentSchema: z.ZodMiniObject<{
5
7
  origin: z.ZodMiniObject<{
6
8
  id: z.ZodMiniString<string>;
@@ -48,5 +50,5 @@ declare const ImageContentSchema: z.ZodMiniObject<{
48
50
  }, z.core.$strip>;
49
51
  type ImageContent = z.infer<typeof ImageContentSchema>;
50
52
  //#endregion
51
- export { ImageContent };
53
+ export { ImageContent, ImageContentView };
52
54
  //# sourceMappingURL=image.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"image.d.ts","names":[],"sources":["../../src/content/image.ts"],"mappings":";;;cAUa,kBAAA,EAAkB,CAAA,CAAA,aAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAInB,YAAA,GAAe,CAAA,CAAE,KAAA,QAAa,kBAAA"}
1
+ {"version":3,"file":"image.d.ts","names":[],"sources":["../../src/content/image.ts"],"mappings":";;;;KAQY,gBAAA,GAAmB,CAAA,CAAE,KAAA,QAAa,qBAAA;AAAA,cAEjC,kBAAA,EAAkB,CAAA,CAAA,aAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAInB,YAAA,GAAe,CAAA,CAAE,KAAA,QAAa,kBAAA"}
@@ -1,10 +1,10 @@
1
- import { ImageLegacySchema, ImageViewLegacySchema } from "./legacy/image.js";
1
+ import { ImageLegacySchema, ImageLegacyViewSchema } from "./legacy/image.js";
2
2
  import { z } from "zod/mini";
3
3
  //#region src/content/image.ts
4
4
  const ImageContentType = "ImageContent";
5
- const ImageViewContentSchema = ImageViewLegacySchema;
5
+ const ImageContentViewSchema = ImageLegacyViewSchema;
6
6
  const ImageContentSchema = z.extend(ImageLegacySchema, { __TYPE__: z.literal(ImageContentType) });
7
7
  //#endregion
8
- export { ImageContentSchema, ImageContentType, ImageViewContentSchema };
8
+ export { ImageContentSchema, ImageContentType, ImageContentViewSchema };
9
9
 
10
10
  //# sourceMappingURL=image.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"image.js","names":[],"sources":["../../src/content/image.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nimport { ImageViewLegacySchema, ImageLegacySchema } from \"./legacy/image\"\n\nexport const ImageContentType = \"ImageContent\" as const\n\nexport const ImageViewContentSchema = ImageViewLegacySchema\n\ntype ImageViewContent = z.infer<typeof ImageViewLegacySchema>\n\nexport const ImageContentSchema = z.extend(ImageLegacySchema, {\n\t__TYPE__: z.literal(ImageContentType),\n})\n\nexport type ImageContent = z.infer<typeof ImageContentSchema>\n\n// Helpers\n\nexport interface CroppedImage {\n\tzoom: number\n\t/** X coordinate of the crop rect on the original image */\n\tx: number\n\t/** Y coordinate of the crop rect on the original image */\n\ty: number\n\n\t/** The width of the crop rect over the original image */\n\tcropWidth: number\n\t/** The height of the crop rect over the original image */\n\tcropHeight: number\n\n\t/** Final (user defined via W input) width of the image */\n\twidth: number\n\t/** Final (user defined via H input) height of the image */\n\theight: number\n}\n\ninterface BuildCropUrlArgs {\n\torigin: ImageContent[\"origin\"]\n\t/** Image crop parameters */\n\tcroppedImage: CroppedImage\n}\n\nexport function buildCropUrl(args: BuildCropUrlArgs): string {\n\tconst { origin, croppedImage } = args\n\tconst { x, y, width, height, cropHeight, cropWidth } = croppedImage\n\n\tconst url = new URL(origin.url)\n\n\tconst hasResize = origin.height !== height || origin.width !== width\n\n\tconst hasCrop = x !== 0 || y !== 0 || cropHeight !== origin.height || cropWidth !== origin.width\n\n\tif (hasCrop) {\n\t\tconst crop = [x, y, cropWidth, cropHeight].map(Math.round).join(\",\")\n\n\t\turl.searchParams.set(\"rect\", crop)\n\t\turl.searchParams.set(\"w\", width.toString())\n\t\turl.searchParams.set(\"h\", height.toString())\n\t}\n\n\tif (hasResize) {\n\t\turl.searchParams.set(\"w\", width.toString())\n\t\turl.searchParams.set(\"h\", height.toString())\n\t}\n\n\treturn url.toString()\n}\n\nexport function getCroppedImage({ contentView }: { contentView: ImageViewContent }): CroppedImage {\n\tconst {\n\t\tedit: {\n\t\t\tcrop: { x, y },\n\t\t\tzoom,\n\t\t},\n\t\twidth,\n\t\theight,\n\t\torigin: { width: originWidth, height: originHeight },\n\t} = contentView\n\n\tlet cropWidth\n\tlet cropHeight\n\tconst originAspect = originWidth / originHeight\n\tconst cropAspect = width / height\n\tif (cropAspect >= originAspect) {\n\t\t// crop and origin image would be the same width if zoom was equal to 1\n\t\tcropWidth = originWidth / zoom\n\t\tcropHeight = cropWidth / cropAspect\n\t} else {\n\t\t// crop and origin image would be the same height if zoom was equal to 1\n\t\tcropHeight = originHeight / zoom\n\t\tcropWidth = cropHeight * cropAspect\n\t}\n\n\treturn {\n\t\tx,\n\t\ty,\n\t\twidth,\n\t\theight,\n\t\tzoom,\n\t\tcropWidth,\n\t\tcropHeight,\n\t}\n}\n"],"mappings":";;;AAIA,MAAa,mBAAmB;AAEhC,MAAa,yBAAyB;AAItC,MAAa,qBAAqB,EAAE,OAAO,mBAAmB,EAC7D,UAAU,EAAE,QAAQ,iBAAiB,EACrC,CAAC"}
1
+ {"version":3,"file":"image.js","names":[],"sources":["../../src/content/image.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nimport { ImageLegacyViewSchema, ImageLegacySchema } from \"./legacy/image\"\n\nexport const ImageContentType = \"ImageContent\" as const\n\nexport const ImageContentViewSchema = ImageLegacyViewSchema\n\nexport type ImageContentView = z.infer<typeof ImageLegacyViewSchema>\n\nexport const ImageContentSchema = z.extend(ImageLegacySchema, {\n\t__TYPE__: z.literal(ImageContentType),\n})\n\nexport type ImageContent = z.infer<typeof ImageContentSchema>\n"],"mappings":";;;AAIA,MAAa,mBAAmB;AAEhC,MAAa,yBAAyB;AAItC,MAAa,qBAAqB,EAAE,OAAO,mBAAmB,EAC7D,UAAU,EAAE,QAAQ,iBAAiB,EACrC,CAAC"}
@@ -0,0 +1 @@
1
+ import { z } from "zod/mini";
@@ -0,0 +1 @@
1
+ import { z } from "zod/mini";
@@ -0,0 +1 @@
1
+ import { z } from "zod/mini";
@@ -0,0 +1 @@
1
+ import { z } from "zod/mini";
@@ -0,0 +1 @@
1
+ import { z } from "zod/mini";
@@ -0,0 +1,28 @@
1
+ import { z } from "zod/mini";
2
+
3
+ //#region src/content/legacy/image.d.ts
4
+ declare const ImageLegacyViewSchema: z.ZodMiniObject<{
5
+ origin: z.ZodMiniObject<{
6
+ id: z.ZodMiniString<string>;
7
+ url: z.ZodMiniString<string>;
8
+ width: z.ZodMiniNumber<number>;
9
+ height: z.ZodMiniNumber<number>;
10
+ }, z.core.$strip>;
11
+ width: z.ZodMiniNumber<number>;
12
+ height: z.ZodMiniNumber<number>;
13
+ edit: z.ZodMiniObject<{
14
+ zoom: z.ZodMiniNumber<number>;
15
+ crop: z.ZodMiniObject<{
16
+ x: z.ZodMiniNumber<number>;
17
+ y: z.ZodMiniNumber<number>;
18
+ }, z.core.$strip>;
19
+ background: z.ZodMiniString<string>;
20
+ }, z.core.$strip>;
21
+ url: z.ZodMiniOptional<z.ZodMiniString<string>>;
22
+ credits: z.ZodMiniOptional<z.ZodMiniPipe<z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>, z.ZodMiniTransform<string | null, string | null | undefined>>>;
23
+ alt: z.ZodMiniOptional<z.ZodMiniPipe<z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>, z.ZodMiniTransform<string | null, string | null | undefined>>>;
24
+ provider: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
25
+ }, z.core.$strip>;
26
+ //#endregion
27
+ export { ImageLegacyViewSchema };
28
+ //# sourceMappingURL=image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","names":[],"sources":["../../../src/content/legacy/image.ts"],"mappings":";;;cAyBa,qBAAA,EAAqB,CAAA,CAAA,aAAA"}
@@ -16,7 +16,7 @@ const EditSchema = z.object({
16
16
  background: z.string()
17
17
  });
18
18
  const NonEmptyStringOrNullSchema = z.pipe(z.nullish(z.string()), z.transform((value) => typeof value === "string" && value.length > 0 ? value : null));
19
- const ImageViewLegacySchema = z.object({
19
+ const ImageLegacyViewSchema = z.object({
20
20
  origin: OriginSchema,
21
21
  width: z.number(),
22
22
  height: z.number(),
@@ -26,8 +26,8 @@ const ImageViewLegacySchema = z.object({
26
26
  alt: z.optional(NonEmptyStringOrNullSchema),
27
27
  provider: z.nullish(z.string())
28
28
  });
29
- const ImageLegacySchema = z.extend(ImageViewLegacySchema, { thumbnails: z.optional(z.record(z.string(), ImageViewLegacySchema)) });
29
+ const ImageLegacySchema = z.extend(ImageLegacyViewSchema, { thumbnails: z.optional(z.record(z.string(), ImageLegacyViewSchema)) });
30
30
  //#endregion
31
- export { ImageLegacySchema, ImageViewLegacySchema };
31
+ export { ImageLegacySchema, ImageLegacyViewSchema };
32
32
 
33
33
  //# sourceMappingURL=image.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"image.js","names":[],"sources":["../../../src/content/legacy/image.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nconst OriginSchema = z.object({\n\tid: z.string(),\n\turl: z.string(),\n\twidth: z.number(),\n\theight: z.number(),\n})\n\nconst CropSchema = z.object({\n\tx: z.number(),\n\ty: z.number(),\n})\n\nconst EditSchema = z.object({\n\tzoom: z.number(),\n\tcrop: CropSchema,\n\tbackground: z.string(),\n})\n\nconst NonEmptyStringOrNullSchema = z.pipe(\n\tz.nullish(z.string()),\n\tz.transform((value) => (typeof value === \"string\" && value.length > 0 ? value : null)),\n)\n\nexport const ImageViewLegacySchema = z.object({\n\torigin: OriginSchema,\n\twidth: z.number(),\n\theight: z.number(),\n\tedit: EditSchema,\n\turl: z.optional(z.string()),\n\tcredits: z.optional(NonEmptyStringOrNullSchema),\n\talt: z.optional(NonEmptyStringOrNullSchema),\n\tprovider: z.nullish(z.string()),\n})\n\nexport type ImageLegacyView = z.infer<typeof ImageViewLegacySchema>\n\nexport const ImageLegacySchema = z.extend(ImageViewLegacySchema, {\n\tthumbnails: z.optional(z.record(z.string(), ImageViewLegacySchema)),\n})\n\nexport type ImageLegacy = z.infer<typeof ImageLegacySchema>\n"],"mappings":";;AAEA,MAAM,eAAe,EAAE,OAAO;CAC7B,IAAI,EAAE,QAAQ;CACd,KAAK,EAAE,QAAQ;CACf,OAAO,EAAE,QAAQ;CACjB,QAAQ,EAAE,QAAQ;CAClB,CAAC;AAEF,MAAM,aAAa,EAAE,OAAO;CAC3B,GAAG,EAAE,QAAQ;CACb,GAAG,EAAE,QAAQ;CACb,CAAC;AAEF,MAAM,aAAa,EAAE,OAAO;CAC3B,MAAM,EAAE,QAAQ;CAChB,MAAM;CACN,YAAY,EAAE,QAAQ;CACtB,CAAC;AAEF,MAAM,6BAA6B,EAAE,KACpC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EACrB,EAAE,WAAW,UAAW,OAAO,UAAU,YAAY,MAAM,SAAS,IAAI,QAAQ,KAAM,CACtF;AAED,MAAa,wBAAwB,EAAE,OAAO;CAC7C,QAAQ;CACR,OAAO,EAAE,QAAQ;CACjB,QAAQ,EAAE,QAAQ;CAClB,MAAM;CACN,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC;CAC3B,SAAS,EAAE,SAAS,2BAA2B;CAC/C,KAAK,EAAE,SAAS,2BAA2B;CAC3C,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC;CAC/B,CAAC;AAIF,MAAa,oBAAoB,EAAE,OAAO,uBAAuB,EAChE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,sBAAsB,CAAC,EACnE,CAAC"}
1
+ {"version":3,"file":"image.js","names":[],"sources":["../../../src/content/legacy/image.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nconst OriginSchema = z.object({\n\tid: z.string(),\n\turl: z.string(),\n\twidth: z.number(),\n\theight: z.number(),\n})\n\nconst CropSchema = z.object({\n\tx: z.number(),\n\ty: z.number(),\n})\n\nconst EditSchema = z.object({\n\tzoom: z.number(),\n\tcrop: CropSchema,\n\tbackground: z.string(),\n})\n\nconst NonEmptyStringOrNullSchema = z.pipe(\n\tz.nullish(z.string()),\n\tz.transform((value) => (typeof value === \"string\" && value.length > 0 ? value : null)),\n)\n\nexport const ImageLegacyViewSchema = z.object({\n\torigin: OriginSchema,\n\twidth: z.number(),\n\theight: z.number(),\n\tedit: EditSchema,\n\turl: z.optional(z.string()),\n\tcredits: z.optional(NonEmptyStringOrNullSchema),\n\talt: z.optional(NonEmptyStringOrNullSchema),\n\tprovider: z.nullish(z.string()),\n})\n\nexport type ImageLegacyView = z.infer<typeof ImageLegacyViewSchema>\n\nexport const ImageLegacySchema = z.extend(ImageLegacyViewSchema, {\n\tthumbnails: z.optional(z.record(z.string(), ImageLegacyViewSchema)),\n})\n\nexport type ImageLegacy = z.infer<typeof ImageLegacySchema>\n"],"mappings":";;AAEA,MAAM,eAAe,EAAE,OAAO;CAC7B,IAAI,EAAE,QAAQ;CACd,KAAK,EAAE,QAAQ;CACf,OAAO,EAAE,QAAQ;CACjB,QAAQ,EAAE,QAAQ;CAClB,CAAC;AAEF,MAAM,aAAa,EAAE,OAAO;CAC3B,GAAG,EAAE,QAAQ;CACb,GAAG,EAAE,QAAQ;CACb,CAAC;AAEF,MAAM,aAAa,EAAE,OAAO;CAC3B,MAAM,EAAE,QAAQ;CAChB,MAAM;CACN,YAAY,EAAE,QAAQ;CACtB,CAAC;AAEF,MAAM,6BAA6B,EAAE,KACpC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EACrB,EAAE,WAAW,UAAW,OAAO,UAAU,YAAY,MAAM,SAAS,IAAI,QAAQ,KAAM,CACtF;AAED,MAAa,wBAAwB,EAAE,OAAO;CAC7C,QAAQ;CACR,OAAO,EAAE,QAAQ;CACjB,QAAQ,EAAE,QAAQ;CAClB,MAAM;CACN,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC;CAC3B,SAAS,EAAE,SAAS,2BAA2B;CAC/C,KAAK,EAAE,SAAS,2BAA2B;CAC3C,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC;CAC/B,CAAC;AAIF,MAAa,oBAAoB,EAAE,OAAO,uBAAuB,EAChE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,sBAAsB,CAAC,EACnE,CAAC"}
@@ -0,0 +1 @@
1
+ import { z } from "zod/mini";
@@ -1,7 +1,7 @@
1
1
  import { z } from "zod/mini";
2
2
 
3
3
  //#region src/content/legacy/link.d.ts
4
- declare const FilledImageLinkValueLegacySchema: z.ZodMiniObject<{
4
+ declare const FilledImageLinkLegacyValueSchema: z.ZodMiniObject<{
5
5
  kind: z.ZodMiniPipe<z.ZodMiniString<string>, z.ZodMiniTransform<"image", string>>;
6
6
  id: z.ZodMiniString<string>;
7
7
  url: z.ZodMiniString<string>;
@@ -11,7 +11,7 @@ declare const FilledImageLinkValueLegacySchema: z.ZodMiniObject<{
11
11
  name: z.ZodMiniString<string>;
12
12
  date: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
13
13
  }, z.core.$strict>;
14
- declare const FilledFileLinkValueLegacySchema: z.ZodMiniObject<{
14
+ declare const FilledFileLinkLegacyValueSchema: z.ZodMiniObject<{
15
15
  kind: z.ZodMiniPipe<z.ZodMiniString<string>, z.ZodMiniTransform<"file", string>>;
16
16
  id: z.ZodMiniString<string>;
17
17
  url: z.ZodMiniString<string>;
@@ -19,11 +19,11 @@ declare const FilledFileLinkValueLegacySchema: z.ZodMiniObject<{
19
19
  size: z.ZodMiniTransform<string, unknown>;
20
20
  date: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
21
21
  }, z.core.$strict>;
22
- declare const FilledDocumentLinkValueLegacySchema: z.ZodMiniObject<{
22
+ declare const FilledDocumentLinkLegacyValueSchema: z.ZodMiniObject<{
23
23
  kind: z.ZodMiniPipe<z.ZodMiniOptional<z.ZodMiniLiteral<"document">>, z.ZodMiniTransform<"document", "document" | undefined>>;
24
24
  id: z.ZodMiniString<string>;
25
25
  }, z.core.$strict>;
26
- declare const FilledExternalLinkValueLegacySchema: z.ZodMiniObject<{
26
+ declare const FilledExternalLinkLegacyValueSchema: z.ZodMiniObject<{
27
27
  kind: z.ZodMiniPipe<z.ZodMiniOptional<z.ZodMiniLiteral<"web">>, z.ZodMiniTransform<"web", "web" | undefined>>;
28
28
  url: z.ZodMiniString<string>;
29
29
  target: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
@@ -31,11 +31,11 @@ declare const FilledExternalLinkValueLegacySchema: z.ZodMiniObject<{
31
31
  title: z.ZodMiniOptional<z.ZodMiniString<string>>;
32
32
  }, z.core.$strict>>>;
33
33
  }, z.core.$strict>;
34
- type FilledImageLinkValueLegacy = z.infer<typeof FilledImageLinkValueLegacySchema>;
35
- type FilledFileLinkValueLegacy = z.infer<typeof FilledFileLinkValueLegacySchema>;
36
- type FilledDocumentLinkValueLegacy = z.infer<typeof FilledDocumentLinkValueLegacySchema>;
37
- type FilledExternalLinkValueLegacy = z.infer<typeof FilledExternalLinkValueLegacySchema>;
38
- type FilledLinkValueLegacy = FilledImageLinkValueLegacy | FilledFileLinkValueLegacy | FilledDocumentLinkValueLegacy | FilledExternalLinkValueLegacy;
34
+ type FilledImageLinkLegacyValue = z.infer<typeof FilledImageLinkLegacyValueSchema>;
35
+ type FilledFileLinkLegacyValue = z.infer<typeof FilledFileLinkLegacyValueSchema>;
36
+ type FilledDocumentLinkLegacyValue = z.infer<typeof FilledDocumentLinkLegacyValueSchema>;
37
+ type FilledExternalLinkLegacyValue = z.infer<typeof FilledExternalLinkLegacyValueSchema>;
38
+ type FilledLinkLegacyValue = FilledImageLinkLegacyValue | FilledFileLinkLegacyValue | FilledDocumentLinkLegacyValue | FilledExternalLinkLegacyValue;
39
39
  //#endregion
40
- export { FilledLinkValueLegacy };
40
+ export { FilledLinkLegacyValue };
41
41
  //# sourceMappingURL=link.d.ts.map
@@ -17,7 +17,7 @@ const LinkType = {
17
17
  Media: "MediaLink",
18
18
  Any: "AnyLink"
19
19
  };
20
- const FilledImageLinkValueLegacySchema = z.strictObject({
20
+ const FilledImageLinkLegacyValueSchema = z.strictObject({
21
21
  kind: z.pipe(z.string(), z.transform(() => LinkKind.Image)),
22
22
  id: z.string(),
23
23
  url: z.string(),
@@ -27,8 +27,8 @@ const FilledImageLinkValueLegacySchema = z.strictObject({
27
27
  name: z.string(),
28
28
  date: z.nullish(z.string())
29
29
  });
30
- const EmptyImageLinkValueLegacySchema = z.strictObject({ kind: z.literal(LinkKind.Image) });
31
- const FilledFileLinkValueLegacySchema = z.strictObject({
30
+ const EmptyImageLinkLegacyValueSchema = z.strictObject({ kind: z.literal(LinkKind.Image) });
31
+ const FilledFileLinkLegacyValueSchema = z.strictObject({
32
32
  kind: z.pipe(z.string(), z.transform(() => LinkKind.File)),
33
33
  id: z.string(),
34
34
  url: z.string(),
@@ -36,36 +36,36 @@ const FilledFileLinkValueLegacySchema = z.strictObject({
36
36
  size: z.transform((value) => typeof value === "string" ? value : "0"),
37
37
  date: z.nullish(z.string())
38
38
  });
39
- const EmptyFileLinkValueLegacySchema = z.strictObject({ kind: z.literal(LinkKind.File) });
40
- const EmptyMediaLinkValueLegacySchema = z.strictObject({ kind: z.literal(LinkKind.Media) });
41
- const FilledDocumentLinkValueLegacySchema = z.strictObject({
39
+ const EmptyFileLinkLegacyValueSchema = z.strictObject({ kind: z.literal(LinkKind.File) });
40
+ const EmptyMediaLinkLegacyValueSchema = z.strictObject({ kind: z.literal(LinkKind.Media) });
41
+ const FilledDocumentLinkLegacyValueSchema = z.strictObject({
42
42
  kind: z.pipe(z.optional(z.literal(LinkKind.Document)), z.transform(() => LinkKind.Document)),
43
43
  id: NonEmptyStringSchema
44
44
  });
45
- const EmptyDocumentLinkValueLegacySchema = z.strictObject({ kind: z.literal(LinkKind.Document) });
46
- const FilledExternalLinkValueLegacySchema = z.strictObject({
45
+ const EmptyDocumentLinkLegacyValueSchema = z.strictObject({ kind: z.literal(LinkKind.Document) });
46
+ const FilledExternalLinkLegacyValueSchema = z.strictObject({
47
47
  kind: z.pipe(z.optional(z.literal(LinkKind.External)), z.transform(() => LinkKind.External)),
48
48
  url: z.string(),
49
49
  target: z.nullish(z.string()),
50
50
  preview: z.nullish(z.strictObject({ title: z.optional(z.string()) }))
51
51
  });
52
- const EmptyExternalLinkValueLegacySchema = z.strictObject({ kind: z.literal(LinkKind.External) });
52
+ const EmptyExternalLinkLegacyValueSchema = z.strictObject({ kind: z.literal(LinkKind.External) });
53
53
  const AnyLinkLegacySchema = z.strictObject({ kind: z.transform(() => LinkKind.Any) });
54
- const FilledLinkValueLegacySchema = z.union([
55
- FilledImageLinkValueLegacySchema,
56
- FilledFileLinkValueLegacySchema,
57
- FilledDocumentLinkValueLegacySchema,
58
- FilledExternalLinkValueLegacySchema
54
+ const FilledLinkLegacyValueSchema = z.union([
55
+ FilledImageLinkLegacyValueSchema,
56
+ FilledFileLinkLegacyValueSchema,
57
+ FilledDocumentLinkLegacyValueSchema,
58
+ FilledExternalLinkLegacyValueSchema
59
59
  ]);
60
- const EmptyLinkValueLegacySchema = z.union([
61
- EmptyImageLinkValueLegacySchema,
62
- EmptyFileLinkValueLegacySchema,
63
- EmptyMediaLinkValueLegacySchema,
64
- EmptyDocumentLinkValueLegacySchema,
65
- EmptyExternalLinkValueLegacySchema,
60
+ const EmptyLinkLegacyValueSchema = z.union([
61
+ EmptyImageLinkLegacyValueSchema,
62
+ EmptyFileLinkLegacyValueSchema,
63
+ EmptyMediaLinkLegacyValueSchema,
64
+ EmptyDocumentLinkLegacyValueSchema,
65
+ EmptyExternalLinkLegacyValueSchema,
66
66
  AnyLinkLegacySchema
67
67
  ]);
68
- const LinkValueLegacySchema = z.union([FilledLinkValueLegacySchema, EmptyLinkValueLegacySchema]);
68
+ const LinkLegacyValueSchema = z.union([FilledLinkLegacyValueSchema, EmptyLinkLegacyValueSchema]);
69
69
  const LinkLegacySchema = z.pipe(z.pipe(z.pipe(z.record(z.string(), z.unknown()), z.transform(({ key, text, variant, ...value }) => ({
70
70
  key,
71
71
  text,
@@ -75,7 +75,7 @@ const LinkLegacySchema = z.pipe(z.pipe(z.pipe(z.record(z.string(), z.unknown()),
75
75
  key: z.optional(z.string()),
76
76
  text: z.optional(z.string()),
77
77
  variant: z.optional(z.string()),
78
- value: LinkValueLegacySchema
78
+ value: LinkLegacyValueSchema
79
79
  })), z.transform(({ key, text, variant, value }) => ({
80
80
  key: z.uuidv4().safeParse(key).data ?? crypto.randomUUID(),
81
81
  ...text ? { text } : {},
@@ -83,6 +83,6 @@ const LinkLegacySchema = z.pipe(z.pipe(z.pipe(z.record(z.string(), z.unknown()),
83
83
  ...value
84
84
  })));
85
85
  //#endregion
86
- export { AnyLinkLegacySchema, EmptyDocumentLinkValueLegacySchema, EmptyExternalLinkValueLegacySchema, EmptyFileLinkValueLegacySchema, EmptyImageLinkValueLegacySchema, EmptyMediaLinkValueLegacySchema, FilledDocumentLinkValueLegacySchema, FilledExternalLinkValueLegacySchema, FilledFileLinkValueLegacySchema, FilledImageLinkValueLegacySchema, FilledLinkValueLegacySchema, LinkKind, LinkLegacySchema, LinkType };
86
+ export { AnyLinkLegacySchema, EmptyDocumentLinkLegacyValueSchema, EmptyExternalLinkLegacyValueSchema, EmptyFileLinkLegacyValueSchema, EmptyImageLinkLegacyValueSchema, EmptyMediaLinkLegacyValueSchema, FilledDocumentLinkLegacyValueSchema, FilledExternalLinkLegacyValueSchema, FilledFileLinkLegacyValueSchema, FilledImageLinkLegacyValueSchema, FilledLinkLegacyValueSchema, LinkKind, LinkLegacySchema, LinkType };
87
87
 
88
88
  //# sourceMappingURL=link.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"link.js","names":[],"sources":["../../../src/content/legacy/link.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nimport { NonEmptyStringSchema } from \"../../common/nonEmptyString\"\n\nexport const LinkKind = {\n\tImage: \"image\",\n\tFile: \"file\",\n\tMedia: \"media\",\n\tDocument: \"document\",\n\tExternal: \"web\",\n\tAny: \"any\",\n} as const\n\nexport const LinkType = {\n\tImage: \"ImageLink\",\n\tFile: \"FileLink\",\n\tDocument: \"DocumentLink\",\n\tExternal: \"ExternalLink\",\n\tMedia: \"MediaLink\",\n\tAny: \"AnyLink\",\n} as const\n\n// Image\nexport const FilledImageLinkValueLegacySchema = z.strictObject({\n\t// `kind` was normalized to the literal (legacy behavior)\n\tkind: z.pipe(\n\t\tz.string(),\n\t\tz.transform(() => LinkKind.Image),\n\t),\n\tid: z.string(),\n\turl: z.string(),\n\theight: z.string(),\n\twidth: z.string(),\n\tsize: z.string(),\n\tname: z.string(),\n\tdate: z.nullish(z.string()),\n})\n\nexport const EmptyImageLinkValueLegacySchema = z.strictObject({\n\tkind: z.literal(LinkKind.Image),\n})\n\n// File\nexport const FilledFileLinkValueLegacySchema = z.strictObject({\n\t// `kind` was normalized to the literal (legacy behavior)\n\tkind: z.pipe(\n\t\tz.string(),\n\t\tz.transform(() => LinkKind.File),\n\t),\n\tid: z.string(),\n\turl: z.string(),\n\tname: z.string(),\n\tsize: z.transform((value) => (typeof value === \"string\" ? value : \"0\")),\n\tdate: z.nullish(z.string()),\n})\n\nexport const EmptyFileLinkValueLegacySchema = z.strictObject({\n\tkind: z.literal(LinkKind.File),\n})\n\n// Media\n\n// Media link only represent the empty state as they turn into\n// file or image links when they filled.\nexport const EmptyMediaLinkValueLegacySchema = z.strictObject({\n\tkind: z.literal(LinkKind.Media),\n})\n\n// Document\nexport const FilledDocumentLinkValueLegacySchema = z.strictObject({\n\t// `kind` is not part of the filled schema... (legacy behavior)\n\t// We transform it to the literal for consistency.\n\tkind: z.pipe(\n\t\tz.optional(z.literal(LinkKind.Document)),\n\t\tz.transform(() => LinkKind.Document),\n\t),\n\tid: NonEmptyStringSchema,\n})\n\nexport const EmptyDocumentLinkValueLegacySchema = z.strictObject({\n\tkind: z.literal(LinkKind.Document),\n})\n\n// External\nexport const FilledExternalLinkValueLegacySchema = z.strictObject({\n\t// It's odd that `kind` is optional here... (legacy behavior)\n\t// We transform it to the literal for consistency.\n\tkind: z.pipe(\n\t\tz.optional(z.literal(LinkKind.External)),\n\t\tz.transform(() => LinkKind.External),\n\t),\n\turl: z.string(),\n\ttarget: z.nullish(z.string()),\n\tpreview: z.nullish(\n\t\tz.strictObject({\n\t\t\ttitle: z.optional(z.string()),\n\t\t}),\n\t),\n})\n\nexport const EmptyExternalLinkValueLegacySchema = z.strictObject({\n\tkind: z.literal(LinkKind.External),\n})\n\n// Any\nexport const AnyLinkLegacySchema = z.strictObject({\n\tkind: z.transform(() => LinkKind.Any),\n})\n\n// All\n\nexport const FilledLinkValueLegacySchema: z.ZodMiniType<FilledLinkValueLegacy> = z.union([\n\tFilledImageLinkValueLegacySchema,\n\tFilledFileLinkValueLegacySchema,\n\tFilledDocumentLinkValueLegacySchema,\n\tFilledExternalLinkValueLegacySchema,\n])\n\ntype FilledImageLinkValueLegacy = z.infer<typeof FilledImageLinkValueLegacySchema>\ntype FilledFileLinkValueLegacy = z.infer<typeof FilledFileLinkValueLegacySchema>\ntype FilledDocumentLinkValueLegacy = z.infer<typeof FilledDocumentLinkValueLegacySchema>\ntype FilledExternalLinkValueLegacy = z.infer<typeof FilledExternalLinkValueLegacySchema>\nexport type FilledLinkValueLegacy =\n\t| FilledImageLinkValueLegacy\n\t| FilledFileLinkValueLegacy\n\t| FilledDocumentLinkValueLegacy\n\t| FilledExternalLinkValueLegacy\n\nconst EmptyLinkValueLegacySchema: z.ZodMiniType<EmptyLinkValueLegacy> = z.union([\n\tEmptyImageLinkValueLegacySchema,\n\tEmptyFileLinkValueLegacySchema,\n\tEmptyMediaLinkValueLegacySchema,\n\tEmptyDocumentLinkValueLegacySchema,\n\tEmptyExternalLinkValueLegacySchema,\n\tAnyLinkLegacySchema,\n])\n\ntype EmptyImageLinkValueLegacy = z.infer<typeof EmptyImageLinkValueLegacySchema>\ntype EmptyFileLinkValueLegacy = z.infer<typeof EmptyFileLinkValueLegacySchema>\ntype EmptyMediaLinkValueLegacy = z.infer<typeof EmptyMediaLinkValueLegacySchema>\ntype EmptyDocumentLinkValueLegacy = z.infer<typeof EmptyDocumentLinkValueLegacySchema>\ntype EmptyExternalLinkValueLegacy = z.infer<typeof EmptyExternalLinkValueLegacySchema>\ntype AnyLinkLegacy = z.infer<typeof AnyLinkLegacySchema>\nexport type EmptyLinkValueLegacy =\n\t| EmptyImageLinkValueLegacy\n\t| EmptyFileLinkValueLegacy\n\t| EmptyMediaLinkValueLegacy\n\t| EmptyDocumentLinkValueLegacy\n\t| EmptyExternalLinkValueLegacy\n\t| AnyLinkLegacy\n\nconst LinkValueLegacySchema: z.ZodMiniType<LinkValueLegacy> = z.union([\n\tFilledLinkValueLegacySchema,\n\tEmptyLinkValueLegacySchema,\n])\n\nexport type LinkValueLegacy = FilledLinkValueLegacy | EmptyLinkValueLegacy\n\n// We cannot use z.extend here because we're working with unions.\n// z.intersection wouldn't work also for the same reason.\nexport const LinkLegacySchema = z.pipe(\n\tz.pipe(\n\t\tz.pipe(\n\t\t\tz.record(z.string(), z.unknown()),\n\t\t\tz.transform(\n\t\t\t\t({\n\t\t\t\t\tkey,\n\t\t\t\t\ttext,\n\t\t\t\t\tvariant,\n\t\t\t\t\t...value\n\t\t\t\t}): {\n\t\t\t\t\tkey?: unknown\n\t\t\t\t\ttext?: unknown\n\t\t\t\t\tvariant?: unknown\n\t\t\t\t\tvalue: Record<string, unknown>\n\t\t\t\t} => ({ key, text, variant, value }),\n\t\t\t),\n\t\t),\n\t\tz.object({\n\t\t\tkey: z.optional(z.string()),\n\t\t\ttext: z.optional(z.string()),\n\t\t\tvariant: z.optional(z.string()),\n\t\t\tvalue: LinkValueLegacySchema as z.ZodMiniType<LinkValueLegacy, Record<string, unknown>>,\n\t\t}),\n\t),\n\tz.transform(({ key, text, variant, value }) => ({\n\t\tkey: z.uuidv4().safeParse(key).data ?? crypto.randomUUID(),\n\t\t...(text ? { text } : {}),\n\t\t...(variant ? { variant } : {}),\n\t\t...value,\n\t})),\n)\n\nexport type LinkLegacy = z.infer<typeof LinkLegacySchema>\n"],"mappings":"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"}
1
+ {"version":3,"file":"link.js","names":[],"sources":["../../../src/content/legacy/link.ts"],"sourcesContent":["import { z } from \"zod/mini\"\n\nimport { NonEmptyStringSchema } from \"../../common/nonEmptyString\"\n\nexport const LinkKind = {\n\tImage: \"image\",\n\tFile: \"file\",\n\tMedia: \"media\",\n\tDocument: \"document\",\n\tExternal: \"web\",\n\tAny: \"any\",\n} as const\n\nexport const LinkType = {\n\tImage: \"ImageLink\",\n\tFile: \"FileLink\",\n\tDocument: \"DocumentLink\",\n\tExternal: \"ExternalLink\",\n\tMedia: \"MediaLink\",\n\tAny: \"AnyLink\",\n} as const\n\n// Image\nexport const FilledImageLinkLegacyValueSchema = z.strictObject({\n\t// `kind` was normalized to the literal (legacy behavior)\n\tkind: z.pipe(\n\t\tz.string(),\n\t\tz.transform(() => LinkKind.Image),\n\t),\n\tid: z.string(),\n\turl: z.string(),\n\theight: z.string(),\n\twidth: z.string(),\n\tsize: z.string(),\n\tname: z.string(),\n\tdate: z.nullish(z.string()),\n})\n\nexport const EmptyImageLinkLegacyValueSchema = z.strictObject({\n\tkind: z.literal(LinkKind.Image),\n})\n\n// File\nexport const FilledFileLinkLegacyValueSchema = z.strictObject({\n\t// `kind` was normalized to the literal (legacy behavior)\n\tkind: z.pipe(\n\t\tz.string(),\n\t\tz.transform(() => LinkKind.File),\n\t),\n\tid: z.string(),\n\turl: z.string(),\n\tname: z.string(),\n\tsize: z.transform((value) => (typeof value === \"string\" ? value : \"0\")),\n\tdate: z.nullish(z.string()),\n})\n\nexport const EmptyFileLinkLegacyValueSchema = z.strictObject({\n\tkind: z.literal(LinkKind.File),\n})\n\n// Media\n\n// Media link only represent the empty state as they turn into\n// file or image links when they filled.\nexport const EmptyMediaLinkLegacyValueSchema = z.strictObject({\n\tkind: z.literal(LinkKind.Media),\n})\n\n// Document\nexport const FilledDocumentLinkLegacyValueSchema = z.strictObject({\n\t// `kind` is not part of the filled schema... (legacy behavior)\n\t// We transform it to the literal for consistency.\n\tkind: z.pipe(\n\t\tz.optional(z.literal(LinkKind.Document)),\n\t\tz.transform(() => LinkKind.Document),\n\t),\n\tid: NonEmptyStringSchema,\n})\n\nexport const EmptyDocumentLinkLegacyValueSchema = z.strictObject({\n\tkind: z.literal(LinkKind.Document),\n})\n\n// External\nexport const FilledExternalLinkLegacyValueSchema = z.strictObject({\n\t// It's odd that `kind` is optional here... (legacy behavior)\n\t// We transform it to the literal for consistency.\n\tkind: z.pipe(\n\t\tz.optional(z.literal(LinkKind.External)),\n\t\tz.transform(() => LinkKind.External),\n\t),\n\turl: z.string(),\n\ttarget: z.nullish(z.string()),\n\tpreview: z.nullish(\n\t\tz.strictObject({\n\t\t\ttitle: z.optional(z.string()),\n\t\t}),\n\t),\n})\n\nexport const EmptyExternalLinkLegacyValueSchema = z.strictObject({\n\tkind: z.literal(LinkKind.External),\n})\n\n// Any\nexport const AnyLinkLegacySchema = z.strictObject({\n\tkind: z.transform(() => LinkKind.Any),\n})\n\n// All\n\nexport const FilledLinkLegacyValueSchema: z.ZodMiniType<FilledLinkLegacyValue> = z.union([\n\tFilledImageLinkLegacyValueSchema,\n\tFilledFileLinkLegacyValueSchema,\n\tFilledDocumentLinkLegacyValueSchema,\n\tFilledExternalLinkLegacyValueSchema,\n])\n\ntype FilledImageLinkLegacyValue = z.infer<typeof FilledImageLinkLegacyValueSchema>\ntype FilledFileLinkLegacyValue = z.infer<typeof FilledFileLinkLegacyValueSchema>\ntype FilledDocumentLinkLegacyValue = z.infer<typeof FilledDocumentLinkLegacyValueSchema>\ntype FilledExternalLinkLegacyValue = z.infer<typeof FilledExternalLinkLegacyValueSchema>\nexport type FilledLinkLegacyValue =\n\t| FilledImageLinkLegacyValue\n\t| FilledFileLinkLegacyValue\n\t| FilledDocumentLinkLegacyValue\n\t| FilledExternalLinkLegacyValue\n\nconst EmptyLinkLegacyValueSchema: z.ZodMiniType<EmptyLinkLegacyValue> = z.union([\n\tEmptyImageLinkLegacyValueSchema,\n\tEmptyFileLinkLegacyValueSchema,\n\tEmptyMediaLinkLegacyValueSchema,\n\tEmptyDocumentLinkLegacyValueSchema,\n\tEmptyExternalLinkLegacyValueSchema,\n\tAnyLinkLegacySchema,\n])\n\ntype EmptyImageLinkLegacyValue = z.infer<typeof EmptyImageLinkLegacyValueSchema>\ntype EmptyFileLinkLegacyValue = z.infer<typeof EmptyFileLinkLegacyValueSchema>\ntype EmptyMediaLinkLegacyValue = z.infer<typeof EmptyMediaLinkLegacyValueSchema>\ntype EmptyDocumentLinkLegacyValue = z.infer<typeof EmptyDocumentLinkLegacyValueSchema>\ntype EmptyExternalLinkLegacyValue = z.infer<typeof EmptyExternalLinkLegacyValueSchema>\ntype AnyLinkLegacy = z.infer<typeof AnyLinkLegacySchema>\nexport type EmptyLinkLegacyValue =\n\t| EmptyImageLinkLegacyValue\n\t| EmptyFileLinkLegacyValue\n\t| EmptyMediaLinkLegacyValue\n\t| EmptyDocumentLinkLegacyValue\n\t| EmptyExternalLinkLegacyValue\n\t| AnyLinkLegacy\n\nconst LinkLegacyValueSchema: z.ZodMiniType<LinkLegacyValue> = z.union([\n\tFilledLinkLegacyValueSchema,\n\tEmptyLinkLegacyValueSchema,\n])\n\nexport type LinkLegacyValue = FilledLinkLegacyValue | EmptyLinkLegacyValue\n\n// We cannot use z.extend here because we're working with unions.\n// z.intersection wouldn't work also for the same reason.\nexport const LinkLegacySchema = z.pipe(\n\tz.pipe(\n\t\tz.pipe(\n\t\t\tz.record(z.string(), z.unknown()),\n\t\t\tz.transform(\n\t\t\t\t({\n\t\t\t\t\tkey,\n\t\t\t\t\ttext,\n\t\t\t\t\tvariant,\n\t\t\t\t\t...value\n\t\t\t\t}): {\n\t\t\t\t\tkey?: unknown\n\t\t\t\t\ttext?: unknown\n\t\t\t\t\tvariant?: unknown\n\t\t\t\t\tvalue: Record<string, unknown>\n\t\t\t\t} => ({ key, text, variant, value }),\n\t\t\t),\n\t\t),\n\t\tz.object({\n\t\t\tkey: z.optional(z.string()),\n\t\t\ttext: z.optional(z.string()),\n\t\t\tvariant: z.optional(z.string()),\n\t\t\tvalue: LinkLegacyValueSchema as z.ZodMiniType<LinkLegacyValue, Record<string, unknown>>,\n\t\t}),\n\t),\n\tz.transform(({ key, text, variant, value }) => ({\n\t\tkey: z.uuidv4().safeParse(key).data ?? crypto.randomUUID(),\n\t\t...(text ? { text } : {}),\n\t\t...(variant ? { variant } : {}),\n\t\t...value,\n\t})),\n)\n\nexport type LinkLegacy = z.infer<typeof LinkLegacySchema>\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ import { z } from "zod/mini";
@@ -1,8 +1,8 @@
1
1
  import { EmbedLegacyLooseSchema } from "./embed.js";
2
- import { GeoPointLegacySchema } from "./geopoint.js";
3
2
  import { ImageLegacySchema } from "./image.js";
4
3
  import { LinkLegacySchema } from "./link.js";
5
4
  import { RichTextLegacySchema } from "./richText.js";
5
+ import { GeoPointLegacySchema } from "./geopoint.js";
6
6
  import { TableLegacySchema } from "./table.js";
7
7
  import { BooleanLegacySchema } from "./boolean.js";
8
8
  import { EmptyLegacySchema } from "./empty.js";
@@ -0,0 +1 @@
1
+ import { z } from "zod/mini";
@@ -1,16 +1,16 @@
1
- import { FilledLinkValueContent } from "../link.js";
2
- import { FilledLinkValueLegacy } from "./link.js";
1
+ import { FilledLinkContentValue } from "../link.js";
2
+ import { FilledLinkLegacyValue } from "./link.js";
3
3
  import { z } from "zod/mini";
4
4
 
5
5
  //#region src/content/legacy/richText.d.ts
6
6
  declare const RichTextNodeType: {
7
- readonly paragraph: "paragraph";
8
7
  readonly heading1: "heading1";
9
8
  readonly heading2: "heading2";
10
9
  readonly heading3: "heading3";
11
10
  readonly heading4: "heading4";
12
11
  readonly heading5: "heading5";
13
12
  readonly heading6: "heading6";
13
+ readonly paragraph: "paragraph";
14
14
  readonly preformatted: "preformatted";
15
15
  readonly oListItem: "o-list-item";
16
16
  readonly listItem: "list-item";
@@ -20,7 +20,8 @@ declare const RichTextNodeType: {
20
20
  readonly strong: "strong";
21
21
  readonly em: "em";
22
22
  };
23
- type HyperlinkSpan<TData extends FilledLinkValueLegacy | FilledLinkValueContent> = {
23
+ type RichTextNodeTypes = (typeof RichTextNodeType)[keyof typeof RichTextNodeType];
24
+ type HyperlinkSpan<TData extends FilledLinkLegacyValue | FilledLinkContentValue> = {
24
25
  type: typeof RichTextNodeType.hyperlink;
25
26
  start: number;
26
27
  end: number;
@@ -37,7 +38,7 @@ type BasicSpan = {
37
38
  start: number;
38
39
  end: number;
39
40
  };
40
- type Span<TLink extends FilledLinkValueLegacy | FilledLinkValueContent> = HyperlinkSpan<TLink> | LabelSpan | BasicSpan;
41
+ type Span<TLink extends FilledLinkLegacyValue | FilledLinkContentValue> = HyperlinkSpan<TLink> | LabelSpan | BasicSpan;
41
42
  declare const TextBlockLegacySchema: z.ZodMiniObject<{
42
43
  type: z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"paragraph">, z.ZodMiniLiteral<"heading1">, z.ZodMiniLiteral<"heading2">, z.ZodMiniLiteral<"heading3">, z.ZodMiniLiteral<"heading4">, z.ZodMiniLiteral<"heading5">, z.ZodMiniLiteral<"heading6">, z.ZodMiniLiteral<"preformatted">, z.ZodMiniLiteral<"o-list-item">, z.ZodMiniLiteral<"list-item">]>;
43
44
  content: z.ZodMiniObject<{
@@ -46,7 +47,7 @@ declare const TextBlockLegacySchema: z.ZodMiniObject<{
46
47
  type: "hyperlink";
47
48
  start: number;
48
49
  end: number;
49
- data: FilledLinkValueLegacy;
50
+ data: FilledLinkLegacyValue;
50
51
  })[], unknown[]>>>;
51
52
  }, z.core.$strip>;
52
53
  label: z.ZodMiniOptional<z.ZodMiniString<string>>;
@@ -76,7 +77,7 @@ declare const ImageBlockLegacySchema: z.ZodMiniObject<{
76
77
  credits: z.ZodMiniOptional<z.ZodMiniPipe<z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>, z.ZodMiniTransform<string | null, string | null | undefined>>>;
77
78
  alt: z.ZodMiniOptional<z.ZodMiniPipe<z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>, z.ZodMiniTransform<string | null, string | null | undefined>>>;
78
79
  provider: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
79
- linkTo: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniType<FilledLinkValueLegacy, unknown, z.core.$ZodTypeInternals<FilledLinkValueLegacy, unknown>>>>;
80
+ linkTo: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniType<FilledLinkLegacyValue, unknown, z.core.$ZodTypeInternals<FilledLinkLegacyValue, unknown>>>>;
80
81
  }, z.core.$strip>;
81
82
  label: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
82
83
  direction: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
@@ -105,5 +106,5 @@ declare const EmbedBlockLegacySchema: z.ZodMiniObject<{
105
106
  type EmbedBlockLegacy = z.infer<typeof EmbedBlockLegacySchema>;
106
107
  type RichTextLegacyBlock = TextBlockLegacy | ImageBlockLegacy | EmbedBlockLegacy;
107
108
  //#endregion
108
- export { RichTextLegacyBlock, Span };
109
+ export { RichTextLegacyBlock, RichTextNodeType, RichTextNodeTypes, Span };
109
110
  //# sourceMappingURL=richText.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"richText.d.ts","names":[],"sources":["../../../src/content/legacy/richText.ts"],"mappings":";;;;;cAYa,gBAAA;EAAA;;;;;;;;;;;;;;;;KAmBR,aAAA,eAA4B,qBAAA,GAAwB,sBAAA;EACxD,IAAA,SAAa,gBAAA,CAAiB,SAAA;EAC9B,KAAA;EACA,GAAA;EACA,IAAA,EAAM,KAAA;AAAA;AAAA,KAeF,SAAA;EACJ,IAAA;EACA,KAAA;EACA,GAAA;EACA,IAAA;AAAA;AAAA,KAaI,SAAA;EACJ,IAAA,SAAa,gBAAA,CAAiB,MAAA,UAAgB,gBAAA,CAAiB,EAAA;EAC/D,KAAA;EACA,GAAA;AAAA;AAAA,KAaW,IAAA,eAAmB,qBAAA,GAAwB,sBAAA,IACpD,aAAA,CAAc,KAAA,IACd,SAAA,GACA,SAAA;AAAA,cAsDG,qBAAA,EAAqB,CAAA,CAAA,aAAA;;;;;;;;;;;;;;KAEtB,eAAA,GAAkB,CAAA,CAAE,KAAA,QAAa,qBAAA;AAAA,cAmBhC,sBAAA,EAAsB,CAAA,CAAA,aAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAKvB,gBAAA,GAAmB,CAAA,CAAE,KAAA,QAAa,sBAAA;AAAA,cAgBjC,sBAAA,EAAsB,CAAA,CAAA,aAAA;;;;;;;;;;;;;;;;;;;;KAEvB,gBAAA,GAAmB,CAAA,CAAE,KAAA,QAAa,sBAAA;AAAA,KAS3B,mBAAA,GAAsB,eAAA,GAAkB,gBAAA,GAAmB,gBAAA"}
1
+ {"version":3,"file":"richText.d.ts","names":[],"sources":["../../../src/content/legacy/richText.ts"],"mappings":";;;;;cAYa,gBAAA;EAAA;;;;;;;;;;;;;;;;KAkBD,iBAAA,WAA4B,gBAAA,eAA+B,gBAAA;AAAA,KAGlE,aAAA,eAA4B,qBAAA,GAAwB,sBAAA;EACxD,IAAA,SAAa,gBAAA,CAAiB,SAAA;EAC9B,KAAA;EACA,GAAA;EACA,IAAA,EAAM,KAAA;AAAA;AAAA,KAeF,SAAA;EACJ,IAAA;EACA,KAAA;EACA,GAAA;EACA,IAAA;AAAA;AAAA,KAaI,SAAA;EACJ,IAAA,SAAa,gBAAA,CAAiB,MAAA,UAAgB,gBAAA,CAAiB,EAAA;EAC/D,KAAA;EACA,GAAA;AAAA;AAAA,KAaW,IAAA,eAAmB,qBAAA,GAAwB,sBAAA,IACpD,aAAA,CAAc,KAAA,IACd,SAAA,GACA,SAAA;AAAA,cAsDG,qBAAA,EAAqB,CAAA,CAAA,aAAA;;;;;;;;;;;;;;KAEtB,eAAA,GAAkB,CAAA,CAAE,KAAA,QAAa,qBAAA;AAAA,cAmBhC,sBAAA,EAAsB,CAAA,CAAA,aAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAKvB,gBAAA,GAAmB,CAAA,CAAE,KAAA,QAAa,sBAAA;AAAA,cAgBjC,sBAAA,EAAsB,CAAA,CAAA,aAAA;;;;;;;;;;;;;;;;;;;;KAEvB,gBAAA,GAAmB,CAAA,CAAE,KAAA,QAAa,sBAAA;AAAA,KAS3B,mBAAA,GAAsB,eAAA,GAAkB,gBAAA,GAAmB,gBAAA"}
@@ -1,16 +1,16 @@
1
1
  import { EmbedLegacyLooseSchema } from "./embed.js";
2
- import { ImageViewLegacySchema } from "./image.js";
3
- import { FilledLinkValueLegacySchema } from "./link.js";
2
+ import { ImageLegacyViewSchema } from "./image.js";
3
+ import { FilledLinkLegacyValueSchema } from "./link.js";
4
4
  import { z } from "zod/mini";
5
5
  //#region src/content/legacy/richText.ts
6
6
  const RichTextNodeType = {
7
- paragraph: "paragraph",
8
7
  heading1: "heading1",
9
8
  heading2: "heading2",
10
9
  heading3: "heading3",
11
10
  heading4: "heading4",
12
11
  heading5: "heading5",
13
12
  heading6: "heading6",
13
+ paragraph: "paragraph",
14
14
  preformatted: "preformatted",
15
15
  oListItem: "o-list-item",
16
16
  listItem: "list-item",
@@ -73,14 +73,14 @@ const getTextBlockSchema = (linkSchema) => z.object({
73
73
  label: z.optional(z.string()),
74
74
  direction: z.optional(z.string())
75
75
  });
76
- const TextBlockLegacySchema = getTextBlockSchema(FilledLinkValueLegacySchema);
76
+ const TextBlockLegacySchema = getTextBlockSchema(FilledLinkLegacyValueSchema);
77
77
  const getImageBlockSchema = (data, linkTo) => z.object({
78
78
  type: z.literal(RichTextNodeType.image),
79
79
  data: z.extend(data, { linkTo: z.nullish(linkTo) }),
80
80
  label: z.nullish(z.string()),
81
81
  direction: z.nullish(z.string())
82
82
  });
83
- const ImageBlockLegacySchema = getImageBlockSchema(ImageViewLegacySchema, FilledLinkValueLegacySchema);
83
+ const ImageBlockLegacySchema = getImageBlockSchema(ImageLegacyViewSchema, FilledLinkLegacyValueSchema);
84
84
  const getEmbedBlockSchema = (data) => z.object({
85
85
  type: z.literal(RichTextNodeType.embed),
86
86
  data,