@prismicio/types-internal 2.3.0 → 2.4.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/lib/content/Document.d.ts +10953 -5169
  2. package/lib/content/fields/GroupContent.d.ts +1594 -337
  3. package/lib/content/fields/WidgetContent.d.ts +10285 -4501
  4. package/lib/content/fields/nestable/ImageContent.d.ts +723 -0
  5. package/lib/content/fields/nestable/ImageContent.js +2 -0
  6. package/lib/content/fields/nestable/NestableContent.d.ts +946 -223
  7. package/lib/content/fields/nestable/RichTextContent/Blocks.d.ts +370 -507
  8. package/lib/content/fields/nestable/RichTextContent/Blocks.js +6 -73
  9. package/lib/content/fields/nestable/RichTextContent/TextBlock.d.ts +727 -0
  10. package/lib/content/fields/nestable/RichTextContent/TextBlock.js +80 -0
  11. package/lib/content/fields/nestable/RichTextContent/index.d.ts +491 -186
  12. package/lib/content/fields/nestable/RichTextContent/index.js +1 -0
  13. package/lib/content/fields/slices/Slice/CompositeSliceContent.d.ts +1994 -548
  14. package/lib/content/fields/slices/Slice/RepeatableContent.d.ts +638 -104
  15. package/lib/content/fields/slices/Slice/SharedSliceContent.d.ts +1996 -550
  16. package/lib/content/fields/slices/Slice/SimpleSliceContent.d.ts +2153 -707
  17. package/lib/content/fields/slices/Slice/index.d.ts +4949 -1745
  18. package/lib/content/fields/slices/SliceItem.d.ts +4841 -1637
  19. package/lib/content/fields/slices/SlicesContent.d.ts +7134 -2796
  20. package/lib/customtypes/CustomType.d.ts +14 -0
  21. package/lib/customtypes/Section.d.ts +14 -0
  22. package/lib/customtypes/diff/SharedSlice.d.ts +4 -0
  23. package/lib/customtypes/diff/Variation.d.ts +4 -0
  24. package/lib/customtypes/widgets/Group.d.ts +2 -0
  25. package/lib/customtypes/widgets/Widget.d.ts +16 -0
  26. package/lib/customtypes/widgets/nestable/Image.d.ts +2 -0
  27. package/lib/customtypes/widgets/nestable/Image.js +1 -0
  28. package/lib/customtypes/widgets/nestable/NestableWidget.d.ts +1 -0
  29. package/lib/customtypes/widgets/slices/CompositeSlice.d.ts +2 -0
  30. package/lib/customtypes/widgets/slices/LegacySlice.d.ts +2 -0
  31. package/lib/customtypes/widgets/slices/SharedSlice.d.ts +4 -0
  32. package/lib/customtypes/widgets/slices/Slices.d.ts +24 -0
  33. package/package.json +3 -3
  34. package/src/content/Document.ts +6 -4
  35. package/src/content/fields/nestable/ImageContent.ts +2 -0
  36. package/src/content/fields/nestable/RichTextContent/Blocks.ts +3 -101
  37. package/src/content/fields/nestable/RichTextContent/TextBlock.ts +118 -0
  38. package/src/content/fields/nestable/RichTextContent/index.ts +1 -0
  39. package/src/customtypes/widgets/nestable/Image.ts +1 -0
  40. package/lib/import/converters/Document.d.ts +0 -4
  41. package/lib/import/converters/Document.js +0 -21
  42. package/lib/import/converters/fields/Group.d.ts +0 -4
  43. package/lib/import/converters/fields/Group.js +0 -14
  44. package/lib/import/converters/fields/RepeatableZone.d.ts +0 -317
  45. package/lib/import/converters/fields/RepeatableZone.js +0 -15
  46. package/lib/import/converters/fields/RepeatableZoneItem.d.ts +0 -11
  47. package/lib/import/converters/fields/RepeatableZoneItem.js +0 -19
  48. package/lib/import/converters/fields/Slices/SharedSlice.d.ts +0 -4
  49. package/lib/import/converters/fields/Slices/SharedSlice.js +0 -19
  50. package/lib/import/converters/fields/Slices/SharedSliceContent.d.ts +0 -10
  51. package/lib/import/converters/fields/Slices/SharedSliceContent.js +0 -23
  52. package/lib/import/converters/fields/Slices/Slices.d.ts +0 -4
  53. package/lib/import/converters/fields/Slices/Slices.js +0 -16
  54. package/lib/import/converters/fields/Slices/index.d.ts +0 -1
  55. package/lib/import/converters/fields/Slices/index.js +0 -4
  56. package/lib/import/converters/fields/UID.d.ts +0 -3
  57. package/lib/import/converters/fields/UID.js +0 -10
  58. package/lib/import/converters/fields/index.d.ts +0 -4
  59. package/lib/import/converters/fields/index.js +0 -7
  60. package/lib/import/converters/fields/nestable/Boolean.d.ts +0 -3
  61. package/lib/import/converters/fields/nestable/Boolean.js +0 -12
  62. package/lib/import/converters/fields/nestable/Color.d.ts +0 -3
  63. package/lib/import/converters/fields/nestable/Color.js +0 -13
  64. package/lib/import/converters/fields/nestable/Date.d.ts +0 -3
  65. package/lib/import/converters/fields/nestable/Date.js +0 -15
  66. package/lib/import/converters/fields/nestable/Embed.d.ts +0 -4
  67. package/lib/import/converters/fields/nestable/Embed.js +0 -32
  68. package/lib/import/converters/fields/nestable/GeoPoint.d.ts +0 -3
  69. package/lib/import/converters/fields/nestable/GeoPoint.js +0 -15
  70. package/lib/import/converters/fields/nestable/Image.d.ts +0 -28
  71. package/lib/import/converters/fields/nestable/Image.js +0 -67
  72. package/lib/import/converters/fields/nestable/Link.d.ts +0 -4
  73. package/lib/import/converters/fields/nestable/Link.js +0 -70
  74. package/lib/import/converters/fields/nestable/Nestable.d.ts +0 -5
  75. package/lib/import/converters/fields/nestable/Nestable.js +0 -35
  76. package/lib/import/converters/fields/nestable/Number.d.ts +0 -3
  77. package/lib/import/converters/fields/nestable/Number.js +0 -13
  78. package/lib/import/converters/fields/nestable/RichText/embedBlock.d.ts +0 -4
  79. package/lib/import/converters/fields/nestable/RichText/embedBlock.js +0 -14
  80. package/lib/import/converters/fields/nestable/RichText/imageBlock.d.ts +0 -4
  81. package/lib/import/converters/fields/nestable/RichText/imageBlock.js +0 -12
  82. package/lib/import/converters/fields/nestable/RichText/index.d.ts +0 -4
  83. package/lib/import/converters/fields/nestable/RichText/index.js +0 -22
  84. package/lib/import/converters/fields/nestable/RichText/textBlock.d.ts +0 -4
  85. package/lib/import/converters/fields/nestable/RichText/textBlock.js +0 -54
  86. package/lib/import/converters/fields/nestable/Select.d.ts +0 -3
  87. package/lib/import/converters/fields/nestable/Select.js +0 -13
  88. package/lib/import/converters/fields/nestable/Text.d.ts +0 -3
  89. package/lib/import/converters/fields/nestable/Text.js +0 -13
  90. package/lib/import/converters/fields/nestable/Timestamp.d.ts +0 -3
  91. package/lib/import/converters/fields/nestable/Timestamp.js +0 -13
  92. package/lib/import/converters/fields/nestable/index.d.ts +0 -13
  93. package/lib/import/converters/fields/nestable/index.js +0 -16
  94. package/lib/import/converters/index.d.ts +0 -2
  95. package/lib/import/converters/index.js +0 -5
  96. package/lib/import/index.d.ts +0 -2
  97. package/lib/import/index.js +0 -5
  98. package/lib/import/validators/Document.d.ts +0 -6
  99. package/lib/import/validators/Document.js +0 -64
  100. package/lib/import/validators/fields/ImportContent.d.ts +0 -5
  101. package/lib/import/validators/fields/ImportContent.js +0 -21
  102. package/lib/import/validators/fields/ImportField.d.ts +0 -141
  103. package/lib/import/validators/fields/ImportField.js +0 -33
  104. package/lib/import/validators/fields/ImportGroup.d.ts +0 -345
  105. package/lib/import/validators/fields/ImportGroup.js +0 -27
  106. package/lib/import/validators/fields/ImportSlices/ImportSlices.d.ts +0 -8
  107. package/lib/import/validators/fields/ImportSlices/ImportSlices.js +0 -30
  108. package/lib/import/validators/fields/ImportSlices/SharedSlice/SharedSlice.d.ts +0 -16
  109. package/lib/import/validators/fields/ImportSlices/SharedSlice/SharedSlice.js +0 -61
  110. package/lib/import/validators/fields/ImportSlices/SharedSlice/errors.d.ts +0 -4
  111. package/lib/import/validators/fields/ImportSlices/SharedSlice/errors.js +0 -7
  112. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/OptionalSharedSliceId.d.ts +0 -2
  113. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/OptionalSharedSliceId.js +0 -15
  114. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/SharedSliceId.d.ts +0 -9
  115. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/SharedSliceId.js +0 -39
  116. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/SharedSliceType.d.ts +0 -11
  117. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/SharedSliceType.js +0 -24
  118. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/SharedSliceVariation.d.ts +0 -11
  119. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/SharedSliceVariation.js +0 -24
  120. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/index.d.ts +0 -4
  121. package/lib/import/validators/fields/ImportSlices/SharedSlice/fields/index.js +0 -7
  122. package/lib/import/validators/fields/ImportSlices/SharedSlice/index.d.ts +0 -3
  123. package/lib/import/validators/fields/ImportSlices/SharedSlice/index.js +0 -6
  124. package/lib/import/validators/fields/ImportSlices/SharedSlice/utils.d.ts +0 -342
  125. package/lib/import/validators/fields/ImportSlices/SharedSlice/utils.js +0 -11
  126. package/lib/import/validators/fields/ImportSlices/index.d.ts +0 -1
  127. package/lib/import/validators/fields/ImportSlices/index.js +0 -4
  128. package/lib/import/validators/fields/ImportSlices/utils.d.ts +0 -4
  129. package/lib/import/validators/fields/ImportSlices/utils.js +0 -35
  130. package/lib/import/validators/fields/RepeatableZone.d.ts +0 -11
  131. package/lib/import/validators/fields/RepeatableZone.js +0 -14
  132. package/lib/import/validators/fields/RepeatableZoneItem.d.ts +0 -11
  133. package/lib/import/validators/fields/RepeatableZoneItem.js +0 -39
  134. package/lib/import/validators/fields/UID.d.ts +0 -6
  135. package/lib/import/validators/fields/UID.js +0 -15
  136. package/lib/import/validators/fields/index.d.ts +0 -4
  137. package/lib/import/validators/fields/index.js +0 -7
  138. package/lib/import/validators/fields/nestable/Boolean.d.ts +0 -6
  139. package/lib/import/validators/fields/nestable/Boolean.js +0 -6
  140. package/lib/import/validators/fields/nestable/Color.d.ts +0 -6
  141. package/lib/import/validators/fields/nestable/Color.js +0 -15
  142. package/lib/import/validators/fields/nestable/Date.d.ts +0 -6
  143. package/lib/import/validators/fields/nestable/Date.js +0 -19
  144. package/lib/import/validators/fields/nestable/Embed.d.ts +0 -13
  145. package/lib/import/validators/fields/nestable/Embed.js +0 -31
  146. package/lib/import/validators/fields/nestable/GeoPoint.d.ts +0 -13
  147. package/lib/import/validators/fields/nestable/GeoPoint.js +0 -13
  148. package/lib/import/validators/fields/nestable/Image/default.d.ts +0 -22
  149. package/lib/import/validators/fields/nestable/Image/default.js +0 -19
  150. package/lib/import/validators/fields/nestable/Image/index.d.ts +0 -26
  151. package/lib/import/validators/fields/nestable/Image/index.js +0 -32
  152. package/lib/import/validators/fields/nestable/Image/merge.d.ts +0 -23
  153. package/lib/import/validators/fields/nestable/Image/merge.js +0 -44
  154. package/lib/import/validators/fields/nestable/Image/model.d.ts +0 -18
  155. package/lib/import/validators/fields/nestable/Image/model.js +0 -2
  156. package/lib/import/validators/fields/nestable/Image/validators.d.ts +0 -132
  157. package/lib/import/validators/fields/nestable/Image/validators.js +0 -43
  158. package/lib/import/validators/fields/nestable/ImportRichText/ImportBlock.d.ts +0 -6
  159. package/lib/import/validators/fields/nestable/ImportRichText/ImportBlock.js +0 -25
  160. package/lib/import/validators/fields/nestable/ImportRichText/ImportRichText.d.ts +0 -24
  161. package/lib/import/validators/fields/nestable/ImportRichText/ImportRichText.js +0 -32
  162. package/lib/import/validators/fields/nestable/ImportRichText/blocks/ImportBlockType.d.ts +0 -6
  163. package/lib/import/validators/fields/nestable/ImportRichText/blocks/ImportBlockType.js +0 -18
  164. package/lib/import/validators/fields/nestable/ImportRichText/blocks/ImportEmbedBlock.d.ts +0 -10
  165. package/lib/import/validators/fields/nestable/ImportRichText/blocks/ImportEmbedBlock.js +0 -11
  166. package/lib/import/validators/fields/nestable/ImportRichText/blocks/ImportImageBlock.d.ts +0 -22
  167. package/lib/import/validators/fields/nestable/ImportRichText/blocks/ImportImageBlock.js +0 -13
  168. package/lib/import/validators/fields/nestable/ImportRichText/blocks/ImportTextBlock.d.ts +0 -78
  169. package/lib/import/validators/fields/nestable/ImportRichText/blocks/ImportTextBlock.js +0 -43
  170. package/lib/import/validators/fields/nestable/ImportRichText/blocks/Span.d.ts +0 -79
  171. package/lib/import/validators/fields/nestable/ImportRichText/blocks/Span.js +0 -27
  172. package/lib/import/validators/fields/nestable/ImportRichText/blocks/index.d.ts +0 -4
  173. package/lib/import/validators/fields/nestable/ImportRichText/blocks/index.js +0 -7
  174. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/HyperlinkSpan.d.ts +0 -24
  175. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/HyperlinkSpan.js +0 -18
  176. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/LabelSpan.d.ts +0 -12
  177. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/LabelSpan.js +0 -16
  178. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/SpanLocation.d.ts +0 -5
  179. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/SpanLocation.js +0 -10
  180. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/TextSpan.d.ts +0 -15
  181. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/TextSpan.js +0 -20
  182. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/index.d.ts +0 -2
  183. package/lib/import/validators/fields/nestable/ImportRichText/blocks/spans/index.js +0 -5
  184. package/lib/import/validators/fields/nestable/ImportRichText/index.d.ts +0 -2
  185. package/lib/import/validators/fields/nestable/ImportRichText/index.js +0 -7
  186. package/lib/import/validators/fields/nestable/Link.d.ts +0 -53
  187. package/lib/import/validators/fields/nestable/Link.js +0 -35
  188. package/lib/import/validators/fields/nestable/Nestable.d.ts +0 -192
  189. package/lib/import/validators/fields/nestable/Nestable.js +0 -71
  190. package/lib/import/validators/fields/nestable/Number.d.ts +0 -17
  191. package/lib/import/validators/fields/nestable/Number.js +0 -17
  192. package/lib/import/validators/fields/nestable/Select.d.ts +0 -16
  193. package/lib/import/validators/fields/nestable/Select.js +0 -19
  194. package/lib/import/validators/fields/nestable/Text.d.ts +0 -6
  195. package/lib/import/validators/fields/nestable/Text.js +0 -6
  196. package/lib/import/validators/fields/nestable/Timestamp.d.ts +0 -7
  197. package/lib/import/validators/fields/nestable/Timestamp.js +0 -19
  198. package/lib/import/validators/fields/nestable/index.d.ts +0 -14
  199. package/lib/import/validators/fields/nestable/index.js +0 -19
  200. package/lib/import/validators/index.d.ts +0 -2
  201. package/lib/import/validators/index.js +0 -5
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TextBlockLegacy = exports.ParagraphBlock = exports.TextBlock = exports.ValidatedSpans = exports.SpanLegacy = exports.Span = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const Either_1 = require("fp-ts/lib/Either");
6
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
7
+ const io_ts_types_1 = require("io-ts-types");
8
+ const nestable_1 = require("../../../../customtypes/widgets/nestable");
9
+ const function_1 = require("../../../../validators/function");
10
+ const LinkContent_1 = require("../LinkContent");
11
+ const linkSpan = (linkCodec) => t.strict({
12
+ data: linkCodec,
13
+ start: t.number,
14
+ end: t.number,
15
+ type: t.literal(nestable_1.RichTextNodeType.hyperlink),
16
+ });
17
+ const labelSpan = t.strict({
18
+ data: (0, io_ts_types_1.withFallback)(t.string, ""),
19
+ start: t.number,
20
+ end: t.number,
21
+ type: t.literal("label"),
22
+ });
23
+ const basicSpan = t.strict({
24
+ start: t.number,
25
+ end: t.number,
26
+ type: t.keyof({
27
+ [nestable_1.RichTextNodeType.strong]: null,
28
+ [nestable_1.RichTextNodeType.em]: null,
29
+ "list-item": null, // legacy case that should not happen, we shouldn't support this in new page builder or migration API
30
+ }),
31
+ });
32
+ exports.Span = t.union([linkSpan(LinkContent_1.Link), labelSpan, basicSpan]);
33
+ exports.SpanLegacy = t.union([linkSpan(LinkContent_1.LinkLegacy), labelSpan, basicSpan]);
34
+ const ValidatedSpans = (spanCodec) => {
35
+ return new t.Type("ValidatedSpans", (spans) => Array.isArray(spans) && spans.every(spanCodec.is), (spans, c) => {
36
+ if (Array.isArray(spans)) {
37
+ const res = spans
38
+ .reduce((acc, maybeSpan) => {
39
+ const decodedSpan = spanCodec.decode(maybeSpan);
40
+ if ((0, Either_1.isLeft)(decodedSpan))
41
+ return acc;
42
+ return [...acc, decodedSpan.right];
43
+ }, [])
44
+ .sort((m1, m2) => m1.start - m2.start);
45
+ return t.success(res);
46
+ }
47
+ else
48
+ return t.failure(spans, c);
49
+ }, (m) => {
50
+ return m.reduce((acc, meta) => {
51
+ const encoded = spanCodec.encode(meta);
52
+ return [...acc, encoded];
53
+ }, []);
54
+ });
55
+ };
56
+ exports.ValidatedSpans = ValidatedSpans;
57
+ const TextBlockCodec = (spanCodec, nodeFilter) => t.exact(t.intersection([
58
+ t.type({
59
+ type: nodeFilter
60
+ ? (0, function_1.refineType)(nestable_1.RichTextNodeTypeCodec, `string which isn't ${nestable_1.RichTextNodeType.image} ${nestable_1.RichTextNodeType.embed}`, nodeFilter)
61
+ : nestable_1.RichTextNodeTypeCodec,
62
+ content: t.intersection([
63
+ t.type({
64
+ text: t.string,
65
+ }),
66
+ t.partial({
67
+ spans: (0, exports.ValidatedSpans)(spanCodec),
68
+ }),
69
+ ]),
70
+ }),
71
+ t.partial({
72
+ label: t.string,
73
+ direction: t.string,
74
+ }),
75
+ ]));
76
+ /* These Text block will decode codec A and encode from codec B to A */
77
+ exports.TextBlock = TextBlockCodec(exports.Span, (nodeType) => nodeType !== nestable_1.RichTextNodeType.image && nodeType !== nestable_1.RichTextNodeType.embed);
78
+ /** A paragraph Text block. Paragraphs may contain spans. */
79
+ exports.ParagraphBlock = TextBlockCodec(exports.Span, (nodeType) => nodeType === nestable_1.RichTextNodeType.paragraph);
80
+ exports.TextBlockLegacy = TextBlockCodec(exports.SpanLegacy);