@prismicio/types-internal 3.16.0 → 3.16.1-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 (235) hide show
  1. package/lib/content/fields/RepeatableContent.d.ts +51 -123
  2. package/lib/content/fields/RepeatableContent.js +10 -14
  3. package/lib/content/fields/nestable/RichTextContent/Block.d.ts +1036 -0
  4. package/lib/content/fields/nestable/RichTextContent/Block.js +31 -0
  5. package/lib/content/fields/nestable/RichTextContent/EmbedBlock.d.ts +60 -0
  6. package/lib/content/fields/nestable/RichTextContent/EmbedBlock.js +53 -0
  7. package/lib/content/fields/nestable/RichTextContent/ImageBlock.d.ts +203 -0
  8. package/lib/content/fields/nestable/RichTextContent/ImageBlock.js +36 -0
  9. package/lib/content/fields/nestable/RichTextContent/TableBlock.d.ts +500 -0
  10. package/lib/content/fields/nestable/RichTextContent/TableBlock.js +21 -0
  11. package/lib/content/fields/nestable/RichTextContent/TextBlock.d.ts +590 -0
  12. package/lib/content/fields/nestable/RichTextContent/TextBlock.js +80 -0
  13. package/lib/scripts/release.d.ts +1 -0
  14. package/lib/scripts/release.js +34 -0
  15. package/lib/src/_internal/utils.d.ts +36 -0
  16. package/lib/src/_internal/utils.js +20 -0
  17. package/lib/src/common/Asset.d.ts +16 -0
  18. package/lib/src/common/Asset.js +11 -0
  19. package/lib/src/common/Embed.d.ts +15 -0
  20. package/lib/src/common/Embed.js +10 -0
  21. package/lib/src/common/HexaColorCode.d.ts +4 -0
  22. package/lib/src/common/HexaColorCode.js +7 -0
  23. package/lib/src/common/UUID.d.ts +6 -0
  24. package/lib/src/common/UUID.js +8 -0
  25. package/lib/src/common/WidgetKey.d.ts +3 -0
  26. package/lib/src/common/WidgetKey.js +8 -0
  27. package/lib/src/common/index.d.ts +3 -0
  28. package/lib/src/common/index.js +6 -0
  29. package/lib/src/content/Document.d.ts +11803 -0
  30. package/lib/src/content/Document.js +266 -0
  31. package/lib/src/content/LegacyContentCtx.d.ts +64 -0
  32. package/lib/src/content/LegacyContentCtx.js +130 -0
  33. package/lib/src/content/fields/EmptyContent.d.ts +16 -0
  34. package/lib/src/content/fields/EmptyContent.js +30 -0
  35. package/lib/src/content/fields/GroupContent.d.ts +42 -0
  36. package/lib/src/content/fields/GroupContent.js +208 -0
  37. package/lib/src/content/fields/UIDContent.d.ts +16 -0
  38. package/lib/src/content/fields/UIDContent.js +25 -0
  39. package/lib/src/content/fields/WidgetContent.d.ts +11749 -0
  40. package/lib/src/content/fields/WidgetContent.js +57 -0
  41. package/lib/src/content/fields/index.d.ts +6 -0
  42. package/lib/src/content/fields/index.js +9 -0
  43. package/lib/src/content/fields/nestable/BooleanContent.d.ts +18 -0
  44. package/lib/src/content/fields/nestable/BooleanContent.js +35 -0
  45. package/lib/src/content/fields/nestable/EmbedContent.d.ts +78 -0
  46. package/lib/src/content/fields/nestable/EmbedContent.js +56 -0
  47. package/lib/src/content/fields/nestable/FieldContent/ColorContent.d.ts +18 -0
  48. package/lib/src/content/fields/nestable/FieldContent/ColorContent.js +35 -0
  49. package/lib/src/content/fields/nestable/FieldContent/DateContent.d.ts +18 -0
  50. package/lib/src/content/fields/nestable/FieldContent/DateContent.js +35 -0
  51. package/lib/src/content/fields/nestable/FieldContent/NumberContent.d.ts +18 -0
  52. package/lib/src/content/fields/nestable/FieldContent/NumberContent.js +35 -0
  53. package/lib/src/content/fields/nestable/FieldContent/RangeContent.d.ts +18 -0
  54. package/lib/src/content/fields/nestable/FieldContent/RangeContent.js +35 -0
  55. package/lib/src/content/fields/nestable/FieldContent/SelectContent.d.ts +20 -0
  56. package/lib/src/content/fields/nestable/FieldContent/SelectContent.js +46 -0
  57. package/lib/src/content/fields/nestable/FieldContent/TextContent.d.ts +18 -0
  58. package/lib/src/content/fields/nestable/FieldContent/TextContent.js +35 -0
  59. package/lib/src/content/fields/nestable/FieldContent/TimestampContent.d.ts +18 -0
  60. package/lib/src/content/fields/nestable/FieldContent/TimestampContent.js +35 -0
  61. package/lib/src/content/fields/nestable/FieldContent/common.d.ts +1 -0
  62. package/lib/src/content/fields/nestable/FieldContent/common.js +4 -0
  63. package/lib/src/content/fields/nestable/FieldContent/index.d.ts +49 -0
  64. package/lib/src/content/fields/nestable/FieldContent/index.js +38 -0
  65. package/lib/src/content/fields/nestable/GeoPointContent.d.ts +33 -0
  66. package/lib/src/content/fields/nestable/GeoPointContent.js +31 -0
  67. package/lib/src/content/fields/nestable/ImageContent.d.ts +227 -0
  68. package/lib/src/content/fields/nestable/ImageContent.js +73 -0
  69. package/lib/src/content/fields/nestable/IntegrationFieldContent.d.ts +16 -0
  70. package/lib/src/content/fields/nestable/IntegrationFieldContent.js +28 -0
  71. package/lib/src/content/fields/nestable/LinkContent.d.ts +919 -0
  72. package/lib/src/content/fields/nestable/LinkContent.js +399 -0
  73. package/lib/src/content/fields/nestable/NestableContent.d.ts +1953 -0
  74. package/lib/src/content/fields/nestable/NestableContent.js +167 -0
  75. package/lib/src/content/fields/nestable/RepeatableContent.d.ts +176 -0
  76. package/lib/src/content/fields/nestable/RepeatableContent.js +104 -0
  77. package/lib/src/content/fields/nestable/RichTextContent/Blocks.d.ts +1261 -0
  78. package/lib/src/content/fields/nestable/RichTextContent/Blocks.js +170 -0
  79. package/lib/src/content/fields/nestable/RichTextContent/index.d.ts +1004 -0
  80. package/lib/src/content/fields/nestable/RichTextContent/index.js +28 -0
  81. package/lib/src/content/fields/nestable/SeparatorContent.d.ts +13 -0
  82. package/lib/src/content/fields/nestable/SeparatorContent.js +22 -0
  83. package/lib/src/content/fields/nestable/TableContent.d.ts +770 -0
  84. package/lib/src/content/fields/nestable/TableContent.js +121 -0
  85. package/lib/src/content/fields/nestable/index.d.ts +12 -0
  86. package/lib/src/content/fields/nestable/index.js +15 -0
  87. package/lib/src/content/fields/slices/Slice/CompositeSliceContent.d.ts +3934 -0
  88. package/lib/src/content/fields/slices/Slice/CompositeSliceContent.js +195 -0
  89. package/lib/src/content/fields/slices/Slice/RepeatableContent.d.ts +774 -0
  90. package/lib/src/content/fields/slices/Slice/RepeatableContent.js +21 -0
  91. package/lib/src/content/fields/slices/Slice/SharedSliceContent.d.ts +3937 -0
  92. package/lib/src/content/fields/slices/Slice/SharedSliceContent.js +215 -0
  93. package/lib/src/content/fields/slices/Slice/SimpleSliceContent.d.ts +1962 -0
  94. package/lib/src/content/fields/slices/Slice/SimpleSliceContent.js +130 -0
  95. package/lib/src/content/fields/slices/Slice/SlicePrimaryContent.d.ts +1952 -0
  96. package/lib/src/content/fields/slices/Slice/SlicePrimaryContent.js +30 -0
  97. package/lib/src/content/fields/slices/Slice/index.d.ts +6810 -0
  98. package/lib/src/content/fields/slices/Slice/index.js +45 -0
  99. package/lib/src/content/fields/slices/SliceItem.d.ts +6846 -0
  100. package/lib/src/content/fields/slices/SliceItem.js +116 -0
  101. package/lib/src/content/fields/slices/SlicesContent.d.ts +9809 -0
  102. package/lib/src/content/fields/slices/SlicesContent.js +187 -0
  103. package/lib/src/content/fields/slices/index.d.ts +3 -0
  104. package/lib/src/content/fields/slices/index.js +6 -0
  105. package/lib/src/content/fields/withDefaultValues.d.ts +9 -0
  106. package/lib/src/content/fields/withDefaultValues.js +79 -0
  107. package/lib/src/content/index.d.ts +3 -0
  108. package/lib/src/content/index.js +6 -0
  109. package/lib/src/content/utils.d.ts +14 -0
  110. package/lib/src/content/utils.js +33 -0
  111. package/lib/src/customtypes/CustomType.d.ts +3680 -0
  112. package/lib/src/customtypes/CustomType.js +184 -0
  113. package/lib/src/customtypes/Section.d.ts +3635 -0
  114. package/lib/src/customtypes/Section.js +66 -0
  115. package/lib/src/customtypes/diff/Changes.d.ts +17 -0
  116. package/lib/src/customtypes/diff/Changes.js +9 -0
  117. package/lib/src/customtypes/diff/SharedSlice.d.ts +1624 -0
  118. package/lib/src/customtypes/diff/SharedSlice.js +55 -0
  119. package/lib/src/customtypes/diff/Variation.d.ts +1605 -0
  120. package/lib/src/customtypes/diff/Variation.js +113 -0
  121. package/lib/src/customtypes/diff/Widgets.d.ts +11 -0
  122. package/lib/src/customtypes/diff/Widgets.js +2 -0
  123. package/lib/src/customtypes/diff/index.d.ts +4 -0
  124. package/lib/src/customtypes/diff/index.js +7 -0
  125. package/lib/src/customtypes/index.d.ts +4 -0
  126. package/lib/src/customtypes/index.js +7 -0
  127. package/lib/src/customtypes/widgets/Group.d.ts +1352 -0
  128. package/lib/src/customtypes/widgets/Group.js +92 -0
  129. package/lib/src/customtypes/widgets/UID.d.ts +19 -0
  130. package/lib/src/customtypes/widgets/UID.js +21 -0
  131. package/lib/src/customtypes/widgets/Widget.d.ts +4457 -0
  132. package/lib/src/customtypes/widgets/Widget.js +49 -0
  133. package/lib/src/customtypes/widgets/index.d.ts +6 -0
  134. package/lib/src/customtypes/widgets/index.js +9 -0
  135. package/lib/src/customtypes/widgets/nestable/BooleanField.d.ts +20 -0
  136. package/lib/src/customtypes/widgets/nestable/BooleanField.js +21 -0
  137. package/lib/src/customtypes/widgets/nestable/Color.d.ts +17 -0
  138. package/lib/src/customtypes/widgets/nestable/Color.js +20 -0
  139. package/lib/src/customtypes/widgets/nestable/Date.d.ts +19 -0
  140. package/lib/src/customtypes/widgets/nestable/Date.js +21 -0
  141. package/lib/src/customtypes/widgets/nestable/Embed.d.ts +19 -0
  142. package/lib/src/customtypes/widgets/nestable/Embed.js +21 -0
  143. package/lib/src/customtypes/widgets/nestable/GeoPoint.d.ts +15 -0
  144. package/lib/src/customtypes/widgets/nestable/GeoPoint.js +19 -0
  145. package/lib/src/customtypes/widgets/nestable/Image.d.ts +44 -0
  146. package/lib/src/customtypes/widgets/nestable/Image.js +29 -0
  147. package/lib/src/customtypes/widgets/nestable/IntegrationField.d.ts +19 -0
  148. package/lib/src/customtypes/widgets/nestable/IntegrationField.js +21 -0
  149. package/lib/src/customtypes/widgets/nestable/Link.d.ts +196 -0
  150. package/lib/src/customtypes/widgets/nestable/Link.js +167 -0
  151. package/lib/src/customtypes/widgets/nestable/NestableWidget.d.ts +217 -0
  152. package/lib/src/customtypes/widgets/nestable/NestableWidget.js +39 -0
  153. package/lib/src/customtypes/widgets/nestable/Number.d.ts +23 -0
  154. package/lib/src/customtypes/widgets/nestable/Number.js +24 -0
  155. package/lib/src/customtypes/widgets/nestable/Range.d.ts +23 -0
  156. package/lib/src/customtypes/widgets/nestable/Range.js +24 -0
  157. package/lib/src/customtypes/widgets/nestable/RichText.d.ts +73 -0
  158. package/lib/src/customtypes/widgets/nestable/RichText.js +131 -0
  159. package/lib/src/customtypes/widgets/nestable/Select.d.ts +21 -0
  160. package/lib/src/customtypes/widgets/nestable/Select.js +22 -0
  161. package/lib/src/customtypes/widgets/nestable/Separator.d.ts +14 -0
  162. package/lib/src/customtypes/widgets/nestable/Separator.js +18 -0
  163. package/lib/src/customtypes/widgets/nestable/Table.d.ts +21 -0
  164. package/lib/src/customtypes/widgets/nestable/Table.js +30 -0
  165. package/lib/src/customtypes/widgets/nestable/Text.d.ts +19 -0
  166. package/lib/src/customtypes/widgets/nestable/Text.js +21 -0
  167. package/lib/src/customtypes/widgets/nestable/Timestamp.d.ts +19 -0
  168. package/lib/src/customtypes/widgets/nestable/Timestamp.js +21 -0
  169. package/lib/src/customtypes/widgets/nestable/index.d.ts +17 -0
  170. package/lib/src/customtypes/widgets/nestable/index.js +20 -0
  171. package/lib/src/customtypes/widgets/shared/ImageConstraint.d.ts +7 -0
  172. package/lib/src/customtypes/widgets/shared/ImageConstraint.js +31 -0
  173. package/lib/src/customtypes/widgets/shared/index.d.ts +1 -0
  174. package/lib/src/customtypes/widgets/shared/index.js +8 -0
  175. package/lib/src/customtypes/widgets/slices/CompositeSlice.d.ts +455 -0
  176. package/lib/src/customtypes/widgets/slices/CompositeSlice.js +63 -0
  177. package/lib/src/customtypes/widgets/slices/LegacySlice.d.ts +442 -0
  178. package/lib/src/customtypes/widgets/slices/LegacySlice.js +12 -0
  179. package/lib/src/customtypes/widgets/slices/SharedSlice.d.ts +1807 -0
  180. package/lib/src/customtypes/widgets/slices/SharedSlice.js +118 -0
  181. package/lib/src/customtypes/widgets/slices/SharedSliceRef.d.ts +5 -0
  182. package/lib/src/customtypes/widgets/slices/SharedSliceRef.js +9 -0
  183. package/lib/src/customtypes/widgets/slices/Slice.d.ts +6 -0
  184. package/lib/src/customtypes/widgets/slices/Slice.js +2 -0
  185. package/lib/src/customtypes/widgets/slices/SlicePrimaryWidget.d.ts +1259 -0
  186. package/lib/src/customtypes/widgets/slices/SlicePrimaryWidget.js +10 -0
  187. package/lib/src/customtypes/widgets/slices/Slices.d.ts +5917 -0
  188. package/lib/src/customtypes/widgets/slices/Slices.js +146 -0
  189. package/lib/src/customtypes/widgets/slices/SlicesTypes.d.ts +6 -0
  190. package/lib/src/customtypes/widgets/slices/SlicesTypes.js +11 -0
  191. package/lib/src/customtypes/widgets/slices/index.d.ts +8 -0
  192. package/lib/src/customtypes/widgets/slices/index.js +11 -0
  193. package/lib/src/utils/Arrays.d.ts +1 -0
  194. package/lib/src/utils/Arrays.js +13 -0
  195. package/lib/src/utils/DocumentId.d.ts +2 -0
  196. package/lib/src/utils/DocumentId.js +7 -0
  197. package/lib/src/utils/Objects.d.ts +8 -0
  198. package/lib/src/utils/Objects.js +42 -0
  199. package/lib/src/utils/index.d.ts +3 -0
  200. package/lib/src/utils/index.js +7 -0
  201. package/lib/src/validators/BasicTypes.d.ts +10 -0
  202. package/lib/src/validators/BasicTypes.js +25 -0
  203. package/lib/src/validators/DateFromString.d.ts +3 -0
  204. package/lib/src/validators/DateFromString.js +11 -0
  205. package/lib/src/validators/DateFromStringOrNumber.d.ts +3 -0
  206. package/lib/src/validators/DateFromStringOrNumber.js +10 -0
  207. package/lib/src/validators/DateFromTsMs.d.ts +3 -0
  208. package/lib/src/validators/DateFromTsMs.js +10 -0
  209. package/lib/src/validators/DefaultOrElse.d.ts +5 -0
  210. package/lib/src/validators/DefaultOrElse.js +21 -0
  211. package/lib/src/validators/IntFromNumber.d.ts +5 -0
  212. package/lib/src/validators/IntFromNumber.js +14 -0
  213. package/lib/src/validators/IntFromPixels.d.ts +8 -0
  214. package/lib/src/validators/IntFromPixels.js +24 -0
  215. package/lib/src/validators/NonEmptyString.d.ts +3 -0
  216. package/lib/src/validators/NonEmptyString.js +6 -0
  217. package/lib/src/validators/NonEmptyStringOrNull.d.ts +3 -0
  218. package/lib/src/validators/NonEmptyStringOrNull.js +15 -0
  219. package/lib/src/validators/NumberOrNull.d.ts +3 -0
  220. package/lib/src/validators/NumberOrNull.js +6 -0
  221. package/lib/src/validators/NumberRange.d.ts +32 -0
  222. package/lib/src/validators/NumberRange.js +40 -0
  223. package/lib/src/validators/StringFromBoolean.d.ts +5 -0
  224. package/lib/src/validators/StringFromBoolean.js +10 -0
  225. package/lib/src/validators/StringFromNumber.d.ts +5 -0
  226. package/lib/src/validators/StringFromNumber.js +10 -0
  227. package/lib/src/validators/StringOrNull.d.ts +3 -0
  228. package/lib/src/validators/StringOrNull.js +6 -0
  229. package/lib/src/validators/TrimmedString.d.ts +5 -0
  230. package/lib/src/validators/TrimmedString.js +23 -0
  231. package/lib/src/validators/function.d.ts +34 -0
  232. package/lib/src/validators/function.js +100 -0
  233. package/lib/src/validators/index.d.ts +15 -0
  234. package/lib/src/validators/index.js +31 -0
  235. package/package.json +1 -1
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Block = exports.BlockLegacy = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
6
+ const EmbedBlock_1 = require("./EmbedBlock");
7
+ const ImageBlock_1 = require("./ImageBlock");
8
+ const TableBlock_1 = require("./TableBlock");
9
+ const TextBlock_1 = require("./TextBlock");
10
+ const legacyBlockCodec = t.union([
11
+ EmbedBlock_1.EmbedBlockLegacy,
12
+ ImageBlock_1.ImageBlockLegacy,
13
+ TextBlock_1.TextBlockLegacy,
14
+ TableBlock_1.TableBlockLegacy,
15
+ ]);
16
+ exports.BlockLegacy = new t.Type("BlockLegacy", (u) => EmbedBlock_1.EmbedBlockLegacy.is(u) ||
17
+ ImageBlock_1.ImageBlockLegacy.is(u) ||
18
+ TextBlock_1.TextBlockLegacy.is(u) ||
19
+ TableBlock_1.TableBlockLegacy.is(u), (legacyBlock) => legacyBlockCodec.decode(legacyBlock), (block) => {
20
+ return (() => {
21
+ if (ImageBlock_1.ImageBlock.is(block))
22
+ return ImageBlock_1.ImageBlockLegacy.encode(block);
23
+ else if (EmbedBlock_1.EmbedBlock.is(block))
24
+ return EmbedBlock_1.EmbedBlockLegacy.encode(block);
25
+ else if (TableBlock_1.TableBlock.is(block))
26
+ return TableBlock_1.TableBlockLegacy.encode(block);
27
+ else
28
+ return TextBlock_1.TextBlockLegacy.encode(block);
29
+ })();
30
+ });
31
+ exports.Block = t.union([ImageBlock_1.ImageBlock, EmbedBlock_1.EmbedBlock, TextBlock_1.TextBlock, TableBlock_1.TableBlock]);
@@ -0,0 +1,60 @@
1
+ import * as t from "io-ts";
2
+ import type { Block } from "./Block";
3
+ export declare const EmbedBlockLegacy: t.Type<{
4
+ type: "embed";
5
+ data: {
6
+ embed_url: string;
7
+ type: string;
8
+ } & {
9
+ version?: string | number | null;
10
+ title?: string | null | undefined;
11
+ author_name?: string | null | undefined;
12
+ author_url?: string | null | undefined;
13
+ provider_name?: string | null | undefined;
14
+ provider_url?: string | null | undefined;
15
+ cache_age?: string | number | null;
16
+ thumbnail_url?: string | null | undefined;
17
+ thumbnail_width?: number | null | undefined;
18
+ thumbnail_height?: number | null | undefined;
19
+ html?: string | null | undefined;
20
+ } & {
21
+ __TYPE__: "EmbedContent";
22
+ all: unknown;
23
+ };
24
+ } & {
25
+ label?: string | null | undefined;
26
+ direction?: string | null | undefined;
27
+ }, {
28
+ type: "embed";
29
+ data: unknown;
30
+ } & {
31
+ label?: string | null | undefined;
32
+ direction?: string | null | undefined;
33
+ }, unknown>;
34
+ export declare const EmbedBlock: t.ExactC<t.IntersectionC<[t.TypeC<{
35
+ type: t.LiteralC<"embed">;
36
+ data: t.IntersectionC<[t.ExactC<t.IntersectionC<[t.TypeC<{
37
+ embed_url: t.StringC;
38
+ type: t.StringC;
39
+ }>, t.PartialC<{
40
+ version: t.UnionC<[t.StringC, t.NumberC, t.NullC]>;
41
+ title: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
42
+ author_name: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
43
+ author_url: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
44
+ provider_name: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
45
+ provider_url: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
46
+ cache_age: t.UnionC<[t.StringC, t.NumberC, t.NullC]>;
47
+ thumbnail_url: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
48
+ thumbnail_width: t.UnionC<[t.Type<number, number, unknown>, t.NullC, t.UndefinedC]>;
49
+ thumbnail_height: t.UnionC<[t.Type<number, number, unknown>, t.NullC, t.UndefinedC]>;
50
+ html: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
51
+ }>]>>, t.ExactC<t.TypeC<{
52
+ __TYPE__: t.LiteralC<"EmbedContent">;
53
+ all: t.UnknownC;
54
+ }>>]>;
55
+ }>, t.PartialC<{
56
+ label: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
57
+ direction: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
58
+ }>]>>;
59
+ export declare type EmbedBlock = t.TypeOf<typeof EmbedBlock>;
60
+ export declare function checkEmbedBlock(block: Block): block is EmbedBlock;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkEmbedBlock = exports.EmbedBlock = exports.EmbedBlockLegacy = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const fp_ts_1 = require("fp-ts");
6
+ const function_1 = require("fp-ts/lib/function");
7
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
8
+ const nestable_1 = require("../../../../customtypes/widgets/nestable");
9
+ const validators_1 = require("../../../../validators");
10
+ const EmbedContent_1 = require("../EmbedContent");
11
+ const embedBlockLegacyCodec = t.exact(t.intersection([
12
+ t.type({
13
+ type: t.literal(nestable_1.RichTextNodeType.embed),
14
+ data: t.unknown,
15
+ }),
16
+ t.partial({
17
+ label: validators_1.StringOrNull,
18
+ direction: validators_1.StringOrNull,
19
+ }),
20
+ ]));
21
+ exports.EmbedBlockLegacy = new t.Type("EmbedBlockLegacy", (u) => u.type === "embed", (block) => (0, function_1.pipe)(embedBlockLegacyCodec.decode(block), fp_ts_1.either.chain((decodedBlock) => {
22
+ return fp_ts_1.either.map((decodedData) => {
23
+ return [decodedBlock, decodedData];
24
+ })(EmbedContent_1.EmbedContentLegacy.decode(decodedBlock.data));
25
+ }), fp_ts_1.either.map(([block, parsedData]) => {
26
+ return exports.EmbedBlock.encode({
27
+ ...block,
28
+ data: {
29
+ ...parsedData,
30
+ __TYPE__: EmbedContent_1.EmbedContentType,
31
+ all: block.data,
32
+ },
33
+ });
34
+ })), (embedBlock) => {
35
+ return {
36
+ ...embedBlockLegacyCodec.encode(embedBlock),
37
+ data: EmbedContent_1.EmbedContentLegacy.encode(embedBlock.data),
38
+ };
39
+ });
40
+ exports.EmbedBlock = t.exact(t.intersection([
41
+ t.type({
42
+ type: t.literal(nestable_1.RichTextNodeType.embed),
43
+ data: EmbedContent_1.EmbedContent,
44
+ }),
45
+ t.partial({
46
+ label: validators_1.StringOrNull,
47
+ direction: validators_1.StringOrNull,
48
+ }),
49
+ ]));
50
+ function checkEmbedBlock(block) {
51
+ return block.type === nestable_1.RichTextNodeType.embed;
52
+ }
53
+ exports.checkEmbedBlock = checkEmbedBlock;
@@ -0,0 +1,203 @@
1
+ import * as t from "io-ts";
2
+ import type { Block } from "./Block";
3
+ export declare const ImageBlock: t.ExactC<t.IntersectionC<[t.TypeC<{
4
+ type: t.LiteralC<"image">;
5
+ data: t.IntersectionC<[t.ExactC<t.IntersectionC<[t.TypeC<{
6
+ origin: t.ExactC<t.TypeC<{
7
+ id: t.StringC;
8
+ url: t.StringC;
9
+ width: t.NumberC;
10
+ height: t.NumberC;
11
+ }>>;
12
+ width: t.NumberC;
13
+ height: t.NumberC;
14
+ edit: t.TypeC<{
15
+ zoom: t.NumberC;
16
+ crop: t.TypeC<{
17
+ x: t.NumberC;
18
+ y: t.NumberC;
19
+ }>;
20
+ background: t.StringC;
21
+ }>;
22
+ }>, t.PartialC<{
23
+ url: t.StringC;
24
+ credits: t.Type<string | null, string | null, unknown>;
25
+ alt: t.Type<string | null, string | null, unknown>;
26
+ provider: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
27
+ }>]>>, t.PartialC<{
28
+ linkTo: t.UnionC<[t.Type<({
29
+ __TYPE__: "ImageLink";
30
+ } & {
31
+ kind: "image";
32
+ id: string;
33
+ url: string;
34
+ height: string;
35
+ width: string;
36
+ size: string;
37
+ name: string;
38
+ } & {
39
+ date?: string | null | undefined;
40
+ }) | ({
41
+ __TYPE__: "FileLink";
42
+ } & {
43
+ kind: "file";
44
+ id: string;
45
+ url: string;
46
+ name: string;
47
+ size: string;
48
+ } & {
49
+ date?: string | null | undefined;
50
+ }) | ({
51
+ __TYPE__: "DocumentLink";
52
+ } & {
53
+ id: string;
54
+ }) | ({
55
+ __TYPE__: "ExternalLink";
56
+ } & {
57
+ url: string;
58
+ } & {
59
+ kind?: "web";
60
+ target?: string | null | undefined;
61
+ preview?: {
62
+ title?: string;
63
+ } | null | undefined;
64
+ }), ({
65
+ __TYPE__: "ImageLink";
66
+ } & {
67
+ kind: "image";
68
+ id: string;
69
+ url: string;
70
+ height: string;
71
+ width: string;
72
+ size: string;
73
+ name: string;
74
+ } & {
75
+ date?: string | null | undefined;
76
+ }) | ({
77
+ __TYPE__: "FileLink";
78
+ } & {
79
+ kind: "file";
80
+ id: string;
81
+ url: string;
82
+ name: string;
83
+ size: string;
84
+ } & {
85
+ date?: string | null | undefined;
86
+ }) | ({
87
+ __TYPE__: "DocumentLink";
88
+ } & {
89
+ id: string;
90
+ }) | ({
91
+ __TYPE__: "ExternalLink";
92
+ } & {
93
+ url: string;
94
+ } & {
95
+ kind?: "web";
96
+ target?: string | null | undefined;
97
+ preview?: {
98
+ title?: string;
99
+ } | null | undefined;
100
+ }), unknown>, t.NullC, t.UndefinedC]>;
101
+ }>]>;
102
+ }>, t.PartialC<{
103
+ label: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
104
+ direction: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
105
+ }>]>>;
106
+ export declare type ImageBlock = t.TypeOf<typeof ImageBlock>;
107
+ export declare const ImageBlockLegacy: t.ExactC<t.IntersectionC<[t.TypeC<{
108
+ type: t.LiteralC<"image">;
109
+ data: t.IntersectionC<[t.ExactC<t.IntersectionC<[t.TypeC<{
110
+ origin: t.ExactC<t.TypeC<{
111
+ id: t.StringC;
112
+ url: t.StringC;
113
+ width: t.NumberC;
114
+ height: t.NumberC;
115
+ }>>;
116
+ width: t.NumberC;
117
+ height: t.NumberC;
118
+ edit: t.TypeC<{
119
+ zoom: t.NumberC;
120
+ crop: t.TypeC<{
121
+ x: t.NumberC;
122
+ y: t.NumberC;
123
+ }>;
124
+ background: t.StringC;
125
+ }>;
126
+ }>, t.PartialC<{
127
+ url: t.StringC;
128
+ credits: t.Type<string | null, string | null, unknown>;
129
+ alt: t.Type<string | null, string | null, unknown>;
130
+ provider: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
131
+ }>]>>, t.PartialC<{
132
+ linkTo: t.UnionC<[t.Type<({
133
+ __TYPE__: "ImageLink";
134
+ } & {
135
+ kind: "image";
136
+ id: string;
137
+ url: string;
138
+ height: string;
139
+ width: string;
140
+ size: string;
141
+ name: string;
142
+ } & {
143
+ date?: string | null | undefined;
144
+ }) | ({
145
+ __TYPE__: "FileLink";
146
+ } & {
147
+ kind: "file";
148
+ id: string;
149
+ url: string;
150
+ name: string;
151
+ size: string;
152
+ } & {
153
+ date?: string | null | undefined;
154
+ }) | ({
155
+ __TYPE__: "DocumentLink";
156
+ } & {
157
+ id: string;
158
+ }) | ({
159
+ __TYPE__: "ExternalLink";
160
+ } & {
161
+ url: string;
162
+ } & {
163
+ kind?: "web";
164
+ target?: string | null | undefined;
165
+ preview?: {
166
+ title?: string;
167
+ } | null | undefined;
168
+ }), ({
169
+ kind: "image";
170
+ id: string;
171
+ url: string;
172
+ height: string;
173
+ width: string;
174
+ size: string;
175
+ name: string;
176
+ } & {
177
+ date?: string | null | undefined;
178
+ }) | ({
179
+ kind: "file";
180
+ id: string;
181
+ url: string;
182
+ name: string;
183
+ size: string;
184
+ } & {
185
+ date?: string | null | undefined;
186
+ }) | {
187
+ id: string;
188
+ } | ({
189
+ url: string;
190
+ } & {
191
+ kind?: "web";
192
+ target?: string | null | undefined;
193
+ preview?: {
194
+ title?: string;
195
+ } | null | undefined;
196
+ }), unknown>, t.NullC, t.UndefinedC]>;
197
+ }>]>;
198
+ }>, t.PartialC<{
199
+ label: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
200
+ direction: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
201
+ }>]>>;
202
+ export declare type ImageBlockLegacy = t.TypeOf<typeof ImageBlockLegacy>;
203
+ export declare function checkImageBlock(block: Block): block is ImageBlock;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkImageBlock = exports.ImageBlockLegacy = exports.ImageBlock = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
6
+ const nestable_1 = require("../../../../customtypes/widgets/nestable");
7
+ const validators_1 = require("../../../../validators");
8
+ const function_1 = require("../../../../validators/function");
9
+ const ImageContent_1 = require("../ImageContent");
10
+ const LinkContent_1 = require("../LinkContent");
11
+ // We allow any codec here and let TypeScript infer the resulting codec.
12
+ // Typing it more precisely creates conflicts.
13
+ //
14
+ // Using `t.Mixed` rather than `t.Type<A, O>` causes `data.linkTo` to be
15
+ // typed as `any`. It seems to be an issue with the `nullable` helper.
16
+ const ImageBlockCodec = (linkCodec) => t.exact(t.intersection([
17
+ t.type({
18
+ type: t.literal(nestable_1.RichTextNodeType.image),
19
+ data: t.intersection([
20
+ ImageContent_1.ImageContentView,
21
+ t.partial({
22
+ linkTo: (0, function_1.nullable)(linkCodec),
23
+ }),
24
+ ]),
25
+ }),
26
+ t.partial({
27
+ label: validators_1.StringOrNull,
28
+ direction: validators_1.StringOrNull,
29
+ }),
30
+ ]));
31
+ exports.ImageBlock = ImageBlockCodec(LinkContent_1.FilledLink);
32
+ exports.ImageBlockLegacy = ImageBlockCodec(LinkContent_1.FilledLinkLegacy);
33
+ function checkImageBlock(block) {
34
+ return block.type === nestable_1.RichTextNodeType.image;
35
+ }
36
+ exports.checkImageBlock = checkImageBlock;