@prismicio/types-internal 0.1.1 → 0.2.3

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 (292) hide show
  1. package/README.md +13 -13
  2. package/{dist → lib}/customtypes/CustomType.d.ts +697 -715
  3. package/{dist → lib}/customtypes/CustomType.js +42 -52
  4. package/{dist → lib}/customtypes/Format.d.ts +0 -0
  5. package/{dist → lib}/customtypes/Format.js +0 -0
  6. package/{dist → lib}/customtypes/Section.d.ts +1035 -1062
  7. package/lib/customtypes/Section.js +21 -0
  8. package/lib/customtypes/index.d.ts +4 -0
  9. package/lib/customtypes/index.js +9 -0
  10. package/{dist → lib}/customtypes/widgets/Group.d.ts +45 -45
  11. package/lib/customtypes/widgets/Group.js +24 -0
  12. package/{dist → lib}/customtypes/widgets/UID.d.ts +4 -4
  13. package/lib/customtypes/widgets/UID.js +21 -0
  14. package/{dist → lib}/customtypes/widgets/Widget.d.ts +1036 -1063
  15. package/lib/customtypes/widgets/Widget.js +27 -0
  16. package/{dist → lib}/customtypes/widgets/WidgetTypes.d.ts +0 -0
  17. package/{dist → lib}/customtypes/widgets/WidgetTypes.js +0 -0
  18. package/lib/customtypes/widgets/index.d.ts +7 -0
  19. package/lib/customtypes/widgets/index.js +14 -0
  20. package/{dist → lib}/customtypes/widgets/nestable/BooleanField.d.ts +3 -3
  21. package/lib/customtypes/widgets/nestable/BooleanField.js +21 -0
  22. package/{dist → lib}/customtypes/widgets/nestable/Color.d.ts +4 -4
  23. package/lib/customtypes/widgets/nestable/Color.js +20 -0
  24. package/{dist → lib}/customtypes/widgets/nestable/Date.d.ts +4 -4
  25. package/lib/customtypes/widgets/nestable/Date.js +21 -0
  26. package/{dist → lib}/customtypes/widgets/nestable/Embed.d.ts +4 -4
  27. package/lib/customtypes/widgets/nestable/Embed.js +21 -0
  28. package/{dist → lib}/customtypes/widgets/nestable/GeoPoint.d.ts +4 -4
  29. package/lib/customtypes/widgets/nestable/GeoPoint.js +19 -0
  30. package/lib/customtypes/widgets/nestable/Image.d.ts +23 -0
  31. package/lib/customtypes/widgets/nestable/Image.js +29 -0
  32. package/{dist → lib}/customtypes/widgets/nestable/IntegrationField.d.ts +4 -4
  33. package/lib/customtypes/widgets/nestable/IntegrationField.js +21 -0
  34. package/{dist → lib}/customtypes/widgets/nestable/Link.d.ts +4 -4
  35. package/lib/customtypes/widgets/nestable/Link.js +54 -0
  36. package/{dist → lib}/customtypes/widgets/nestable/NestableWidget.d.ts +42 -42
  37. package/lib/customtypes/widgets/nestable/NestableWidget.js +37 -0
  38. package/{dist → lib}/customtypes/widgets/nestable/Number.d.ts +4 -4
  39. package/lib/customtypes/widgets/nestable/Number.js +24 -0
  40. package/{dist → lib}/customtypes/widgets/nestable/Range.d.ts +4 -4
  41. package/lib/customtypes/widgets/nestable/Range.js +24 -0
  42. package/{dist → lib}/customtypes/widgets/nestable/RichText.d.ts +6 -6
  43. package/lib/customtypes/widgets/nestable/RichText.js +111 -0
  44. package/lib/customtypes/widgets/nestable/Select.d.ts +15 -0
  45. package/lib/customtypes/widgets/nestable/Select.js +22 -0
  46. package/{dist → lib}/customtypes/widgets/nestable/Separator.d.ts +3 -3
  47. package/lib/customtypes/widgets/nestable/Separator.js +18 -0
  48. package/{dist → lib}/customtypes/widgets/nestable/Text.d.ts +4 -4
  49. package/lib/customtypes/widgets/nestable/Text.js +21 -0
  50. package/{dist → lib}/customtypes/widgets/nestable/Timestamp.d.ts +4 -4
  51. package/lib/customtypes/widgets/nestable/Timestamp.js +21 -0
  52. package/lib/customtypes/widgets/nestable/index.d.ts +15 -0
  53. package/{dist → lib}/customtypes/widgets/nestable/index.js +0 -0
  54. package/{dist → lib}/customtypes/widgets/shared/ImageConstraint.d.ts +3 -3
  55. package/lib/customtypes/widgets/shared/ImageConstraint.js +31 -0
  56. package/lib/customtypes/widgets/shared/index.d.ts +1 -0
  57. package/{dist → lib}/customtypes/widgets/shared/index.js +0 -0
  58. package/{dist → lib}/customtypes/widgets/slices/CompositeSlice.d.ts +87 -87
  59. package/lib/customtypes/widgets/slices/CompositeSlice.js +25 -0
  60. package/{dist → lib}/customtypes/widgets/slices/LegacySlice.d.ts +86 -95
  61. package/lib/customtypes/widgets/slices/LegacySlice.js +8 -0
  62. package/{dist → lib}/customtypes/widgets/slices/SharedSlice.d.ts +84 -84
  63. package/lib/customtypes/widgets/slices/SharedSlice.js +35 -0
  64. package/{dist → lib}/customtypes/widgets/slices/SharedSliceRef.d.ts +2 -2
  65. package/lib/customtypes/widgets/slices/SharedSliceRef.js +9 -0
  66. package/lib/customtypes/widgets/slices/Slice.d.ts +6 -0
  67. package/{dist → lib}/customtypes/widgets/slices/Slice.js +0 -0
  68. package/{dist → lib}/customtypes/widgets/slices/Slices.d.ts +1550 -1604
  69. package/lib/customtypes/widgets/slices/Slices.js +93 -0
  70. package/{dist → lib}/customtypes/widgets/slices/SlicesTypes.d.ts +0 -0
  71. package/{dist → lib}/customtypes/widgets/slices/SlicesTypes.js +0 -0
  72. package/lib/customtypes/widgets/slices/index.d.ts +7 -0
  73. package/lib/customtypes/widgets/slices/index.js +16 -0
  74. package/lib/documents/DocumentData.d.ts +8 -0
  75. package/lib/documents/DocumentData.js +28 -0
  76. package/lib/documents/index.d.ts +2 -0
  77. package/lib/documents/index.js +7 -0
  78. package/lib/documents/widgets/EmptyContent.d.ts +8 -0
  79. package/lib/documents/widgets/EmptyContent.js +9 -0
  80. package/lib/documents/widgets/GroupContent.d.ts +16 -0
  81. package/lib/documents/widgets/GroupContent.js +59 -0
  82. package/lib/documents/widgets/SimpleWidgetContent.d.ts +20 -0
  83. package/lib/documents/widgets/SimpleWidgetContent.js +75 -0
  84. package/lib/documents/widgets/StaticWidgetContent.d.ts +10 -0
  85. package/lib/documents/widgets/StaticWidgetContent.js +26 -0
  86. package/lib/documents/widgets/UIDContent.d.ts +7 -0
  87. package/lib/documents/widgets/UIDContent.js +10 -0
  88. package/lib/documents/widgets/index.d.ts +35 -0
  89. package/lib/documents/widgets/index.js +36 -0
  90. package/lib/documents/widgets/nestable/BooleanContent.d.ts +8 -0
  91. package/lib/documents/widgets/nestable/BooleanContent.js +11 -0
  92. package/lib/documents/widgets/nestable/EmbedContent.d.ts +40 -0
  93. package/lib/documents/widgets/nestable/EmbedContent.js +36 -0
  94. package/lib/documents/widgets/nestable/FieldContent.d.ts +12 -0
  95. package/lib/documents/widgets/nestable/FieldContent.js +37 -0
  96. package/lib/documents/widgets/nestable/GeoPointContent.d.ts +17 -0
  97. package/lib/documents/widgets/nestable/GeoPointContent.js +13 -0
  98. package/lib/documents/widgets/nestable/ImageContent.d.ts +127 -0
  99. package/lib/documents/widgets/nestable/ImageContent.js +41 -0
  100. package/lib/documents/widgets/nestable/IntegrationFieldsContent.d.ts +8 -0
  101. package/lib/documents/widgets/nestable/IntegrationFieldsContent.js +16 -0
  102. package/lib/documents/widgets/nestable/Link/DocumentLink.d.ts +12 -0
  103. package/lib/documents/widgets/nestable/Link/DocumentLink.js +13 -0
  104. package/lib/documents/widgets/nestable/Link/ExternalLink.d.ts +24 -0
  105. package/lib/documents/widgets/nestable/Link/ExternalLink.js +24 -0
  106. package/lib/documents/widgets/nestable/Link/FileLink.d.ts +22 -0
  107. package/lib/documents/widgets/nestable/Link/FileLink.js +24 -0
  108. package/lib/documents/widgets/nestable/Link/ImageLink.d.ts +28 -0
  109. package/lib/documents/widgets/nestable/Link/ImageLink.js +26 -0
  110. package/lib/documents/widgets/nestable/Link/LinkContent.d.ts +36 -0
  111. package/lib/documents/widgets/nestable/Link/LinkContent.js +13 -0
  112. package/lib/documents/widgets/nestable/Link/index.d.ts +89 -0
  113. package/lib/documents/widgets/nestable/Link/index.js +35 -0
  114. package/lib/documents/widgets/nestable/SeparatorContent.d.ts +7 -0
  115. package/lib/documents/widgets/nestable/SeparatorContent.js +10 -0
  116. package/lib/documents/widgets/nestable/StructuredTextContent/Block.d.ts +274 -0
  117. package/lib/documents/widgets/nestable/StructuredTextContent/Block.js +97 -0
  118. package/lib/documents/widgets/nestable/StructuredTextContent/index.d.ts +9 -0
  119. package/lib/documents/widgets/nestable/StructuredTextContent/index.js +14 -0
  120. package/lib/documents/widgets/nestable/index.d.ts +26 -0
  121. package/lib/documents/widgets/nestable/index.js +40 -0
  122. package/lib/documents/widgets/slices/CompositeSliceContent.d.ts +14 -0
  123. package/lib/documents/widgets/slices/CompositeSliceContent.js +50 -0
  124. package/lib/documents/widgets/slices/SharedSliceContent.d.ts +15 -0
  125. package/lib/documents/widgets/slices/SharedSliceContent.js +62 -0
  126. package/lib/documents/widgets/slices/SimpleSliceContent.d.ts +6 -0
  127. package/lib/documents/widgets/slices/SimpleSliceContent.js +6 -0
  128. package/lib/documents/widgets/slices/SliceWidgetContent.d.ts +8 -0
  129. package/lib/documents/widgets/slices/SliceWidgetContent.js +26 -0
  130. package/lib/documents/widgets/slices/SlicesContent.d.ts +17 -0
  131. package/lib/documents/widgets/slices/SlicesContent.js +51 -0
  132. package/lib/documents/widgets/slices/index.d.ts +5 -0
  133. package/lib/documents/widgets/slices/index.js +8 -0
  134. package/lib/index.d.ts +3 -0
  135. package/lib/index.js +7 -0
  136. package/lib/validators/DateFromString.d.ts +3 -0
  137. package/lib/validators/DateFromString.js +10 -0
  138. package/lib/validators/DateFromStringOrNumber.d.ts +3 -0
  139. package/lib/validators/DateFromStringOrNumber.js +10 -0
  140. package/lib/validators/DateFromTsMs.d.ts +3 -0
  141. package/lib/validators/DateFromTsMs.js +10 -0
  142. package/lib/validators/IntFromNumber.d.ts +5 -0
  143. package/lib/validators/IntFromNumber.js +14 -0
  144. package/lib/validators/IntFromPixels.d.ts +8 -0
  145. package/lib/validators/IntFromPixels.js +24 -0
  146. package/lib/validators/NonEmptyString.d.ts +3 -0
  147. package/lib/validators/NonEmptyString.js +6 -0
  148. package/lib/validators/NonEmptyStringOrNull.d.ts +3 -0
  149. package/lib/validators/NonEmptyStringOrNull.js +15 -0
  150. package/lib/validators/NumberOrNull.d.ts +3 -0
  151. package/lib/validators/NumberOrNull.js +6 -0
  152. package/lib/validators/StringFromBoolean.d.ts +5 -0
  153. package/lib/validators/StringFromBoolean.js +10 -0
  154. package/lib/validators/StringFromNumber.d.ts +5 -0
  155. package/lib/validators/StringFromNumber.js +10 -0
  156. package/lib/validators/StringOrNull.d.ts +3 -0
  157. package/lib/validators/StringOrNull.js +6 -0
  158. package/lib/validators/function.d.ts +14 -0
  159. package/lib/validators/function.js +60 -0
  160. package/lib/validators/index.d.ts +12 -0
  161. package/lib/validators/index.js +27 -0
  162. package/package.json +30 -18
  163. package/src/customtypes/CustomType.ts +173 -116
  164. package/src/customtypes/Format.ts +3 -3
  165. package/src/customtypes/Section.ts +26 -13
  166. package/src/customtypes/index.ts +4 -4
  167. package/src/customtypes/widgets/Group.ts +21 -20
  168. package/src/customtypes/widgets/UID.ts +18 -17
  169. package/src/customtypes/widgets/Widget.ts +22 -23
  170. package/src/customtypes/widgets/WidgetTypes.ts +21 -21
  171. package/src/customtypes/widgets/index.ts +7 -7
  172. package/src/customtypes/widgets/nestable/BooleanField.ts +19 -19
  173. package/src/customtypes/widgets/nestable/Color.ts +17 -16
  174. package/src/customtypes/widgets/nestable/Date.ts +19 -18
  175. package/src/customtypes/widgets/nestable/Embed.ts +19 -18
  176. package/src/customtypes/widgets/nestable/GeoPoint.ts +17 -16
  177. package/src/customtypes/widgets/nestable/Image.ts +26 -26
  178. package/src/customtypes/widgets/nestable/IntegrationField.ts +18 -17
  179. package/src/customtypes/widgets/nestable/Link.ts +80 -68
  180. package/src/customtypes/widgets/nestable/NestableWidget.ts +32 -32
  181. package/src/customtypes/widgets/nestable/Number.ts +22 -21
  182. package/src/customtypes/widgets/nestable/Range.ts +22 -21
  183. package/src/customtypes/widgets/nestable/RichText.ts +164 -134
  184. package/src/customtypes/widgets/nestable/Select.ts +22 -21
  185. package/src/customtypes/widgets/nestable/Separator.ts +15 -14
  186. package/src/customtypes/widgets/nestable/Text.ts +18 -17
  187. package/src/customtypes/widgets/nestable/Timestamp.ts +19 -18
  188. package/src/customtypes/widgets/nestable/index.ts +15 -15
  189. package/src/customtypes/widgets/shared/ImageConstraint.ts +31 -29
  190. package/src/customtypes/widgets/shared/index.ts +1 -1
  191. package/src/customtypes/widgets/slices/CompositeSlice.ts +21 -21
  192. package/src/customtypes/widgets/slices/LegacySlice.ts +5 -10
  193. package/src/customtypes/widgets/slices/SharedSlice.ts +33 -31
  194. package/src/customtypes/widgets/slices/SharedSliceRef.ts +6 -6
  195. package/src/customtypes/widgets/slices/Slice.ts +4 -4
  196. package/src/customtypes/widgets/slices/Slices.ts +95 -73
  197. package/src/customtypes/widgets/slices/SlicesTypes.ts +3 -3
  198. package/src/customtypes/widgets/slices/index.ts +7 -7
  199. package/src/documents/DocumentData.ts +54 -0
  200. package/src/documents/index.ts +2 -0
  201. package/src/documents/widgets/EmptyContent.ts +8 -0
  202. package/src/documents/widgets/GroupContent.ts +91 -0
  203. package/src/documents/widgets/SimpleWidgetContent.ts +96 -0
  204. package/src/documents/widgets/StaticWidgetContent.ts +46 -0
  205. package/src/documents/widgets/UIDContent.ts +18 -0
  206. package/src/documents/widgets/index.ts +56 -0
  207. package/src/documents/widgets/nestable/BooleanContent.ts +21 -0
  208. package/src/documents/widgets/nestable/EmbedContent.ts +54 -0
  209. package/src/documents/widgets/nestable/FieldContent.ts +45 -0
  210. package/src/documents/widgets/nestable/GeoPointContent.ts +18 -0
  211. package/src/documents/widgets/nestable/ImageContent.ts +51 -0
  212. package/src/documents/widgets/nestable/IntegrationFieldsContent.ts +26 -0
  213. package/src/documents/widgets/nestable/Link/DocumentLink.ts +18 -0
  214. package/src/documents/widgets/nestable/Link/ExternalLink.ts +31 -0
  215. package/src/documents/widgets/nestable/Link/FileLink.ts +29 -0
  216. package/src/documents/widgets/nestable/Link/ImageLink.ts +31 -0
  217. package/src/documents/widgets/nestable/Link/LinkContent.ts +22 -0
  218. package/src/documents/widgets/nestable/Link/index.ts +33 -0
  219. package/src/documents/widgets/nestable/SeparatorContent.ts +8 -0
  220. package/src/documents/widgets/nestable/StructuredTextContent/Block.ts +122 -0
  221. package/src/documents/widgets/nestable/StructuredTextContent/index.ts +25 -0
  222. package/src/documents/widgets/nestable/index.ts +35 -0
  223. package/src/documents/widgets/slices/CompositeSliceContent.ts +77 -0
  224. package/src/documents/widgets/slices/SharedSliceContent.ts +94 -0
  225. package/src/documents/widgets/slices/SimpleSliceContent.ts +4 -0
  226. package/src/documents/widgets/slices/SliceWidgetContent.ts +51 -0
  227. package/src/documents/widgets/slices/SlicesContent.ts +91 -0
  228. package/src/documents/widgets/slices/index.ts +5 -0
  229. package/src/index.ts +3 -1
  230. package/src/validators/DateFromString.ts +17 -0
  231. package/src/validators/DateFromStringOrNumber.ts +17 -0
  232. package/src/validators/DateFromTsMs.ts +17 -0
  233. package/src/validators/IntFromNumber.ts +22 -24
  234. package/src/validators/IntFromPixels.ts +27 -26
  235. package/src/validators/NonEmptyString.ts +9 -0
  236. package/src/validators/NonEmptyStringOrNull.ts +22 -0
  237. package/src/validators/NumberOrNull.ts +5 -0
  238. package/src/validators/StringFromBoolean.ts +17 -19
  239. package/src/validators/StringFromNumber.ts +17 -19
  240. package/src/validators/StringOrNull.ts +4 -2
  241. package/src/validators/function.ts +71 -0
  242. package/src/validators/index.ts +12 -0
  243. package/dist/customtypes/Section.js +0 -40
  244. package/dist/customtypes/index.d.ts +0 -4
  245. package/dist/customtypes/index.js +0 -30
  246. package/dist/customtypes/widgets/Group.js +0 -45
  247. package/dist/customtypes/widgets/UID.js +0 -42
  248. package/dist/customtypes/widgets/Widget.js +0 -51
  249. package/dist/customtypes/widgets/index.d.ts +0 -7
  250. package/dist/customtypes/widgets/index.js +0 -35
  251. package/dist/customtypes/widgets/nestable/BooleanField.js +0 -42
  252. package/dist/customtypes/widgets/nestable/Color.js +0 -41
  253. package/dist/customtypes/widgets/nestable/Date.js +0 -42
  254. package/dist/customtypes/widgets/nestable/Embed.js +0 -42
  255. package/dist/customtypes/widgets/nestable/GeoPoint.js +0 -40
  256. package/dist/customtypes/widgets/nestable/Image.d.ts +0 -23
  257. package/dist/customtypes/widgets/nestable/Image.js +0 -50
  258. package/dist/customtypes/widgets/nestable/IntegrationField.js +0 -42
  259. package/dist/customtypes/widgets/nestable/Link.js +0 -78
  260. package/dist/customtypes/widgets/nestable/NestableWidget.js +0 -58
  261. package/dist/customtypes/widgets/nestable/Number.js +0 -45
  262. package/dist/customtypes/widgets/nestable/Range.js +0 -45
  263. package/dist/customtypes/widgets/nestable/RichText.js +0 -134
  264. package/dist/customtypes/widgets/nestable/Select.d.ts +0 -15
  265. package/dist/customtypes/widgets/nestable/Select.js +0 -45
  266. package/dist/customtypes/widgets/nestable/Separator.js +0 -39
  267. package/dist/customtypes/widgets/nestable/Text.js +0 -42
  268. package/dist/customtypes/widgets/nestable/Timestamp.js +0 -42
  269. package/dist/customtypes/widgets/nestable/index.d.ts +0 -15
  270. package/dist/customtypes/widgets/shared/ImageConstraint.js +0 -48
  271. package/dist/customtypes/widgets/shared/index.d.ts +0 -1
  272. package/dist/customtypes/widgets/slices/CompositeSlice.js +0 -46
  273. package/dist/customtypes/widgets/slices/LegacySlice.js +0 -34
  274. package/dist/customtypes/widgets/slices/SharedSlice.js +0 -56
  275. package/dist/customtypes/widgets/slices/SharedSliceRef.js +0 -30
  276. package/dist/customtypes/widgets/slices/Slice.d.ts +0 -6
  277. package/dist/customtypes/widgets/slices/Slices.js +0 -106
  278. package/dist/customtypes/widgets/slices/index.d.ts +0 -7
  279. package/dist/customtypes/widgets/slices/index.js +0 -37
  280. package/dist/index.d.ts +0 -1
  281. package/dist/index.js +0 -23
  282. package/dist/index.js.map +0 -1
  283. package/dist/validators/IntFromNumber.d.ts +0 -7
  284. package/dist/validators/IntFromNumber.js +0 -35
  285. package/dist/validators/IntFromPixels.d.ts +0 -7
  286. package/dist/validators/IntFromPixels.js +0 -43
  287. package/dist/validators/StringFromBoolean.d.ts +0 -7
  288. package/dist/validators/StringFromBoolean.js +0 -31
  289. package/dist/validators/StringFromNumber.d.ts +0 -7
  290. package/dist/validators/StringFromNumber.js +0 -31
  291. package/dist/validators/StringOrNull.d.ts +0 -2
  292. package/dist/validators/StringOrNull.js +0 -24
@@ -0,0 +1,274 @@
1
+ import * as t from "io-ts";
2
+ import EmbedContent from "../EmbedContent";
3
+ export declare const Meta: t.ExactC<t.IntersectionC<[t.PartialC<{
4
+ data: t.UnknownC;
5
+ }>, t.TypeC<{
6
+ start: t.NumberC;
7
+ end: t.NumberC;
8
+ type: t.StringC;
9
+ }>]>>;
10
+ export declare const ValidatedMetas: t.Type<({
11
+ data?: unknown;
12
+ } & {
13
+ start: number;
14
+ end: number;
15
+ type: string;
16
+ })[], ({
17
+ data?: unknown;
18
+ } & {
19
+ start: number;
20
+ end: number;
21
+ type: string;
22
+ })[], unknown>;
23
+ export declare const ImageBlockType = "image";
24
+ export declare const ImageBlock: t.ExactC<t.IntersectionC<[t.TypeC<{
25
+ type: t.LiteralC<"image">;
26
+ data: t.IntersectionC<[t.ExactC<t.IntersectionC<[t.TypeC<{
27
+ origin: t.ExactC<t.TypeC<{
28
+ id: t.StringC;
29
+ url: t.StringC;
30
+ width: t.NumberC;
31
+ height: t.NumberC;
32
+ }>>;
33
+ width: t.NumberC;
34
+ height: t.NumberC;
35
+ edit: t.TypeC<{
36
+ zoom: t.NumberC;
37
+ crop: t.TypeC<{
38
+ x: t.NumberC;
39
+ y: t.NumberC;
40
+ }>;
41
+ background: t.StringC;
42
+ }>;
43
+ }>, t.PartialC<{
44
+ url: t.StringC;
45
+ credits: t.Type<string | null, string | null, unknown>;
46
+ alt: t.Type<string | null, string | null, unknown>;
47
+ provider: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
48
+ }>]>>, t.PartialC<{
49
+ linkTo: t.UnionC<[t.Type<{
50
+ id: string;
51
+ } | ({
52
+ url: string;
53
+ } & {
54
+ kind?: "web";
55
+ target?: string | null | undefined;
56
+ preview?: {
57
+ title?: string;
58
+ } | null | undefined;
59
+ }) | ({
60
+ id: string;
61
+ url: string;
62
+ name: string;
63
+ kind: string;
64
+ } & {
65
+ date?: string | null | undefined;
66
+ size?: string | null | undefined;
67
+ }) | ({
68
+ id: string;
69
+ url: string;
70
+ height: string;
71
+ width: string;
72
+ size: string;
73
+ name: string;
74
+ kind: string;
75
+ } & {
76
+ date?: string | null | undefined;
77
+ }), ({
78
+ id: string;
79
+ } & {
80
+ __TYPE__: "DocumentLink";
81
+ }) | ({
82
+ url: string;
83
+ } & {
84
+ kind?: "web";
85
+ target?: string | null | undefined;
86
+ preview?: {
87
+ title?: string;
88
+ } | null | undefined;
89
+ } & {
90
+ __TYPE__: "ExternalLink";
91
+ }) | {
92
+ readonly size: string;
93
+ readonly __TYPE__: "FileLink";
94
+ readonly id: string;
95
+ readonly url: string;
96
+ readonly name: string;
97
+ readonly kind: string;
98
+ readonly date?: string | null | undefined;
99
+ } | ({
100
+ id: string;
101
+ url: string;
102
+ height: string;
103
+ width: string;
104
+ size: string;
105
+ name: string;
106
+ kind: string;
107
+ } & {
108
+ date?: string | null | undefined;
109
+ } & {
110
+ __TYPE__: "ImageLink";
111
+ }), unknown>, t.NullC, t.UndefinedC]>;
112
+ }>]>;
113
+ }>, t.PartialC<{
114
+ label: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
115
+ direction: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
116
+ }>]>>;
117
+ export declare type ImageBlock = t.TypeOf<typeof ImageBlock>;
118
+ export declare function checkImageBlock(block: Block): block is ImageBlock;
119
+ export declare const EmbedBlockType = "embed";
120
+ export declare const EmbedBlock: t.ExactC<t.IntersectionC<[t.TypeC<{
121
+ type: t.LiteralC<"embed">;
122
+ data: t.Type<EmbedContent, unknown, unknown>;
123
+ }>, t.PartialC<{
124
+ label: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
125
+ direction: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
126
+ }>]>>;
127
+ export declare type EmbedBlock = t.TypeOf<typeof EmbedBlock>;
128
+ export declare function checkEmbedBlock(block: Block): block is EmbedBlock;
129
+ export declare const TextBlock: t.ExactC<t.IntersectionC<[t.TypeC<{
130
+ type: t.Type<string, string, unknown>;
131
+ content: t.IntersectionC<[t.TypeC<{
132
+ text: t.StringC;
133
+ }>, t.PartialC<{
134
+ spans: t.Type<({
135
+ data?: unknown;
136
+ } & {
137
+ start: number;
138
+ end: number;
139
+ type: string;
140
+ })[], ({
141
+ data?: unknown;
142
+ } & {
143
+ start: number;
144
+ end: number;
145
+ type: string;
146
+ })[], unknown>;
147
+ }>]>;
148
+ }>, t.PartialC<{
149
+ label: t.StringC;
150
+ direction: t.StringC;
151
+ }>]>>;
152
+ export declare type TextBlock = t.TypeOf<typeof TextBlock>;
153
+ export declare const Block: t.UnionC<[t.ExactC<t.IntersectionC<[t.TypeC<{
154
+ type: t.LiteralC<"image">;
155
+ data: t.IntersectionC<[t.ExactC<t.IntersectionC<[t.TypeC<{
156
+ origin: t.ExactC<t.TypeC<{
157
+ id: t.StringC;
158
+ url: t.StringC;
159
+ width: t.NumberC;
160
+ height: t.NumberC;
161
+ }>>;
162
+ width: t.NumberC;
163
+ height: t.NumberC;
164
+ edit: t.TypeC<{
165
+ zoom: t.NumberC;
166
+ crop: t.TypeC<{
167
+ x: t.NumberC;
168
+ y: t.NumberC;
169
+ }>;
170
+ background: t.StringC;
171
+ }>;
172
+ }>, t.PartialC<{
173
+ url: t.StringC;
174
+ credits: t.Type<string | null, string | null, unknown>;
175
+ alt: t.Type<string | null, string | null, unknown>;
176
+ provider: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
177
+ }>]>>, t.PartialC<{
178
+ linkTo: t.UnionC<[t.Type<{
179
+ id: string;
180
+ } | ({
181
+ url: string;
182
+ } & {
183
+ kind?: "web";
184
+ target?: string | null | undefined;
185
+ preview?: {
186
+ title?: string;
187
+ } | null | undefined;
188
+ }) | ({
189
+ id: string;
190
+ url: string;
191
+ name: string;
192
+ kind: string;
193
+ } & {
194
+ date?: string | null | undefined;
195
+ size?: string | null | undefined;
196
+ }) | ({
197
+ id: string;
198
+ url: string;
199
+ height: string;
200
+ width: string;
201
+ size: string;
202
+ name: string;
203
+ kind: string;
204
+ } & {
205
+ date?: string | null | undefined;
206
+ }), ({
207
+ id: string;
208
+ } & {
209
+ __TYPE__: "DocumentLink";
210
+ }) | ({
211
+ url: string;
212
+ } & {
213
+ kind?: "web";
214
+ target?: string | null | undefined;
215
+ preview?: {
216
+ title?: string;
217
+ } | null | undefined;
218
+ } & {
219
+ __TYPE__: "ExternalLink";
220
+ }) | {
221
+ readonly size: string;
222
+ readonly __TYPE__: "FileLink";
223
+ readonly id: string;
224
+ readonly url: string;
225
+ readonly name: string;
226
+ readonly kind: string;
227
+ readonly date?: string | null | undefined;
228
+ } | ({
229
+ id: string;
230
+ url: string;
231
+ height: string;
232
+ width: string;
233
+ size: string;
234
+ name: string;
235
+ kind: string;
236
+ } & {
237
+ date?: string | null | undefined;
238
+ } & {
239
+ __TYPE__: "ImageLink";
240
+ }), unknown>, t.NullC, t.UndefinedC]>;
241
+ }>]>;
242
+ }>, t.PartialC<{
243
+ label: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
244
+ direction: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
245
+ }>]>>, t.ExactC<t.IntersectionC<[t.TypeC<{
246
+ type: t.LiteralC<"embed">;
247
+ data: t.Type<EmbedContent, unknown, unknown>;
248
+ }>, t.PartialC<{
249
+ label: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
250
+ direction: t.UnionC<[t.Type<string, string, unknown>, t.NullC, t.UndefinedC]>;
251
+ }>]>>, t.ExactC<t.IntersectionC<[t.TypeC<{
252
+ type: t.Type<string, string, unknown>;
253
+ content: t.IntersectionC<[t.TypeC<{
254
+ text: t.StringC;
255
+ }>, t.PartialC<{
256
+ spans: t.Type<({
257
+ data?: unknown;
258
+ } & {
259
+ start: number;
260
+ end: number;
261
+ type: string;
262
+ })[], ({
263
+ data?: unknown;
264
+ } & {
265
+ start: number;
266
+ end: number;
267
+ type: string;
268
+ })[], unknown>;
269
+ }>]>;
270
+ }>, t.PartialC<{
271
+ label: t.StringC;
272
+ direction: t.StringC;
273
+ }>]>>]>;
274
+ export declare type Block = t.TypeOf<typeof Block>;
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Block = exports.TextBlock = exports.checkEmbedBlock = exports.EmbedBlock = exports.EmbedBlockType = exports.checkImageBlock = exports.ImageBlock = exports.ImageBlockType = exports.ValidatedMetas = exports.Meta = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const E = (0, tslib_1.__importStar)(require("fp-ts/lib/Either"));
6
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
7
+ const validators_1 = require("../../../../validators");
8
+ const function_1 = require("../../../../validators/function");
9
+ const EmbedContent_1 = (0, tslib_1.__importDefault)(require("../EmbedContent"));
10
+ const ImageContent_1 = require("../ImageContent");
11
+ const Link_1 = require("../Link");
12
+ exports.Meta = t.exact(t.intersection([
13
+ t.partial({
14
+ data: t.unknown,
15
+ }),
16
+ t.type({
17
+ start: t.number,
18
+ end: t.number,
19
+ type: t.string,
20
+ }),
21
+ ]));
22
+ exports.ValidatedMetas = new t.Type("ValidatedMetas", (metas) => Array.isArray(metas) && metas.every(exports.Meta.is), (metas, c) => {
23
+ if (Array.isArray(metas)) {
24
+ const res = metas
25
+ .reduce((acc, maybeMeta) => {
26
+ const maybeDecodedMeta = exports.Meta.decode(maybeMeta);
27
+ if (E.isRight(maybeDecodedMeta)) {
28
+ const meta = maybeDecodedMeta.right;
29
+ // if it's an hyperlink it should have data validated as link otherwise we don't care and keep the meta
30
+ if ((meta.data &&
31
+ meta.type === "hyperlink" &&
32
+ E.isRight(Link_1.Link.validate(meta.data, c))) ||
33
+ meta.type !== "hyperlink") {
34
+ return [...acc, meta];
35
+ }
36
+ }
37
+ return acc;
38
+ }, [])
39
+ .sort((m1, m2) => m1.start - m2.start);
40
+ return t.success(res);
41
+ }
42
+ else
43
+ return t.failure(metas, c);
44
+ }, (m) => t.array(exports.Meta).encode(m));
45
+ exports.ImageBlockType = "image";
46
+ exports.ImageBlock = t.exact(t.intersection([
47
+ t.type({
48
+ type: t.literal(exports.ImageBlockType),
49
+ data: t.intersection([
50
+ ImageContent_1.ImageContentView,
51
+ t.partial({
52
+ linkTo: (0, function_1.nullable)(Link_1.Link),
53
+ }),
54
+ ]),
55
+ }),
56
+ t.partial({
57
+ label: validators_1.StringOrNull,
58
+ direction: validators_1.StringOrNull,
59
+ }),
60
+ ]));
61
+ function checkImageBlock(block) {
62
+ return block.type === exports.ImageBlockType;
63
+ }
64
+ exports.checkImageBlock = checkImageBlock;
65
+ exports.EmbedBlockType = "embed";
66
+ exports.EmbedBlock = t.exact(t.intersection([
67
+ t.type({
68
+ type: t.literal(exports.EmbedBlockType),
69
+ data: EmbedContent_1.default,
70
+ }),
71
+ t.partial({
72
+ label: validators_1.StringOrNull,
73
+ direction: validators_1.StringOrNull,
74
+ }),
75
+ ]));
76
+ function checkEmbedBlock(block) {
77
+ return block.type === exports.EmbedBlockType;
78
+ }
79
+ exports.checkEmbedBlock = checkEmbedBlock;
80
+ exports.TextBlock = t.exact(t.intersection([
81
+ t.type({
82
+ type: (0, function_1.refineType)(t.string, `string which isn't ${exports.ImageBlockType} ${exports.EmbedBlockType}`, (s) => s !== exports.ImageBlockType && s !== exports.EmbedBlockType),
83
+ content: t.intersection([
84
+ t.type({
85
+ text: t.string,
86
+ }),
87
+ t.partial({
88
+ spans: exports.ValidatedMetas,
89
+ }),
90
+ ]),
91
+ }),
92
+ t.partial({
93
+ label: t.string,
94
+ direction: t.string,
95
+ }),
96
+ ]));
97
+ exports.Block = t.union([exports.ImageBlock, exports.EmbedBlock, exports.TextBlock]);
@@ -0,0 +1,9 @@
1
+ import * as t from "io-ts";
2
+ import { Block } from "./Block";
3
+ export declare const StructuredTextContentType = "StructuredTextContent";
4
+ export declare type StructuredTextContent = {
5
+ value: Block[];
6
+ __TYPE__: typeof StructuredTextContentType;
7
+ };
8
+ export declare const StructuredTextContent: t.Type<StructuredTextContent, string, unknown>;
9
+ export * as Blocks from "./Block";
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Blocks = exports.StructuredTextContent = exports.StructuredTextContentType = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const Either_1 = require("fp-ts/Either");
6
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
7
+ const Block_1 = require("./Block");
8
+ exports.StructuredTextContentType = "StructuredTextContent";
9
+ exports.StructuredTextContent = new t.Type(exports.StructuredTextContentType, (u) => u?.__TYPE__ === exports.StructuredTextContentType, (u, c) => Either_1.Chain.chain(t.array(Block_1.Block).validate(u, c), (u) => {
10
+ return t.success({ value: u, __TYPE__: exports.StructuredTextContentType });
11
+ }), () => {
12
+ throw new Error("NotImplementedError: Not relevant method");
13
+ });
14
+ exports.Blocks = (0, tslib_1.__importStar)(require("./Block"));
@@ -0,0 +1,26 @@
1
+ export { default as BooleanContent } from "./BooleanContent";
2
+ export { default as EmbedContent } from "./EmbedContent";
3
+ export { default as FieldContent } from "./FieldContent";
4
+ export { type GeoPointContentO, GeoPointContent } from "./GeoPointContent";
5
+ export { type ImageContentO, ImageContent, ImageContentView, } from "./ImageContent";
6
+ export { default as IntegrationFieldsContent } from "./IntegrationFieldsContent";
7
+ export * as Links from "./Link";
8
+ export * from "./SeparatorContent";
9
+ export * from "./StructuredTextContent";
10
+ export declare const NestableTypes: {
11
+ Links: {
12
+ DocumentLink: string;
13
+ FileLink: string;
14
+ ExternalLink: string;
15
+ ImageLink: string;
16
+ LinkContent: string;
17
+ };
18
+ StructuredText: string;
19
+ Boolean: string;
20
+ Embed: string;
21
+ Field: string;
22
+ GeoPoint: string;
23
+ Image: string;
24
+ IntegrationFields: string;
25
+ Separator: string;
26
+ };
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NestableTypes = exports.Links = exports.IntegrationFieldsContent = exports.ImageContentView = exports.ImageContent = exports.GeoPointContent = exports.FieldContent = exports.EmbedContent = exports.BooleanContent = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const BooleanContent_1 = require("./BooleanContent");
6
+ const EmbedContent_1 = require("./EmbedContent");
7
+ const FieldContent_1 = require("./FieldContent");
8
+ const GeoPointContent_1 = require("./GeoPointContent");
9
+ const ImageContent_1 = require("./ImageContent");
10
+ const IntegrationFieldsContent_1 = require("./IntegrationFieldsContent");
11
+ const Link_1 = require("./Link");
12
+ const SeparatorContent_1 = require("./SeparatorContent");
13
+ const StructuredTextContent_1 = require("./StructuredTextContent");
14
+ var BooleanContent_2 = require("./BooleanContent");
15
+ Object.defineProperty(exports, "BooleanContent", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(BooleanContent_2).default; } });
16
+ var EmbedContent_2 = require("./EmbedContent");
17
+ Object.defineProperty(exports, "EmbedContent", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(EmbedContent_2).default; } });
18
+ var FieldContent_2 = require("./FieldContent");
19
+ Object.defineProperty(exports, "FieldContent", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(FieldContent_2).default; } });
20
+ var GeoPointContent_2 = require("./GeoPointContent");
21
+ Object.defineProperty(exports, "GeoPointContent", { enumerable: true, get: function () { return GeoPointContent_2.GeoPointContent; } });
22
+ var ImageContent_2 = require("./ImageContent");
23
+ Object.defineProperty(exports, "ImageContent", { enumerable: true, get: function () { return ImageContent_2.ImageContent; } });
24
+ Object.defineProperty(exports, "ImageContentView", { enumerable: true, get: function () { return ImageContent_2.ImageContentView; } });
25
+ var IntegrationFieldsContent_2 = require("./IntegrationFieldsContent");
26
+ Object.defineProperty(exports, "IntegrationFieldsContent", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(IntegrationFieldsContent_2).default; } });
27
+ exports.Links = (0, tslib_1.__importStar)(require("./Link"));
28
+ (0, tslib_1.__exportStar)(require("./SeparatorContent"), exports);
29
+ (0, tslib_1.__exportStar)(require("./StructuredTextContent"), exports);
30
+ exports.NestableTypes = {
31
+ Links: Link_1.LinksTypes,
32
+ StructuredText: StructuredTextContent_1.StructuredTextContentType,
33
+ Boolean: BooleanContent_1.BooleanContentType,
34
+ Embed: EmbedContent_1.EmbedContentType,
35
+ Field: FieldContent_1.FieldContentType,
36
+ GeoPoint: GeoPointContent_1.GeoPointContentType,
37
+ Image: ImageContent_1.ImageContentType,
38
+ IntegrationFields: IntegrationFieldsContent_1.IntegrationFieldsContentType,
39
+ Separator: SeparatorContent_1.SeparatorContentType,
40
+ };
@@ -0,0 +1,14 @@
1
+ import * as O from "fp-ts/Option";
2
+ import type { GroupItemContent } from "../GroupContent";
3
+ import { SimpleWidgetContent } from "../index";
4
+ export declare const CompositeSliceContentType = "CompositeSliceContent";
5
+ export declare type CompositeSliceContent = {
6
+ repeat: GroupItemContent[];
7
+ nonRepeat: {
8
+ [key: string]: SimpleWidgetContent;
9
+ };
10
+ __TYPE__: typeof CompositeSliceContentType;
11
+ };
12
+ export declare const CompositeSliceContent: {
13
+ fromJson: (prefixes: Array<string>, key: string, value: unknown, fieldTypes: Map<string, string>, fieldPositions: Map<string, number>) => O.Option<CompositeSliceContent>;
14
+ };
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CompositeSliceContent = exports.CompositeSliceContentType = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const Either_1 = require("fp-ts/Either");
6
+ const O = (0, tslib_1.__importStar)(require("fp-ts/Option"));
7
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
8
+ const index_1 = require("../index");
9
+ exports.CompositeSliceContentType = "CompositeSliceContent";
10
+ const codec = t.exact(t.partial({
11
+ repeat: t.array(t.unknown),
12
+ "non-repeat": t.UnknownRecord,
13
+ }));
14
+ exports.CompositeSliceContent = {
15
+ fromJson: (prefixes, key, value, fieldTypes, fieldPositions) => {
16
+ const prefixedRepeatKey = Array.of(prefixes, [key, "repeat"])
17
+ .flat()
18
+ .join(".");
19
+ const decodedValue = codec.decode(value);
20
+ if ((0, Either_1.isRight)(decodedValue)) {
21
+ const repeatObj = decodedValue.right.repeat;
22
+ const nonRepeatObj = decodedValue.right["non-repeat"] ?? {};
23
+ const groupItemsContentsRepeat = index_1.GroupContent.itemsContentsFromJson(prefixedRepeatKey, repeatObj, fieldTypes, fieldPositions);
24
+ const sortedFields = Object.entries(nonRepeatObj).sort(([k1], [k2]) => {
25
+ const p1 = fieldPositions.get(`${Array.of(prefixes, [key]).flat().join(".")}.${k1}`) ?? 10000;
26
+ const p2 = fieldPositions.get(`${Array.of(prefixes, [key]).flat().join(".")}.${k2}`) ?? 10000;
27
+ return p1 - p2;
28
+ });
29
+ const nonRepeat = sortedFields.reduce((acc, [k, v]) => {
30
+ const kp = Array.of(prefixes, [key, "non-repeat", k]).flat().join(".");
31
+ const kind = fieldTypes.get(kp);
32
+ if (kind) {
33
+ const mWidgetContent = index_1.SimpleWidgetContent.from(kind, v);
34
+ if (O.isSome(mWidgetContent)) {
35
+ acc[k] = mWidgetContent.value;
36
+ }
37
+ }
38
+ return acc;
39
+ }, {});
40
+ return O.some({
41
+ repeat: groupItemsContentsRepeat,
42
+ nonRepeat,
43
+ __TYPE__: "CompositeSliceContent",
44
+ });
45
+ }
46
+ else {
47
+ return O.none;
48
+ }
49
+ },
50
+ };
@@ -0,0 +1,15 @@
1
+ import * as O from "fp-ts/Option";
2
+ import type { GroupItemContent } from "../GroupContent";
3
+ import { SimpleWidgetContent } from "../index";
4
+ export declare const SharedSliceContentType = "SharedSliceContent";
5
+ export declare type SharedSliceContent = {
6
+ variation: string;
7
+ primary: {
8
+ [key: string]: SimpleWidgetContent;
9
+ };
10
+ items: GroupItemContent[];
11
+ __TYPE__: typeof SharedSliceContentType;
12
+ };
13
+ export declare const SharedSliceContent: {
14
+ fromJson: (prefixes: Array<string>, key: string, value: unknown, fieldTypes: Map<string, string>, fieldPositions: Map<string, number>) => O.Option<SharedSliceContent>;
15
+ };
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SharedSliceContent = exports.SharedSliceContentType = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const Either_1 = require("fp-ts/Either");
6
+ const O = (0, tslib_1.__importStar)(require("fp-ts/Option"));
7
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
8
+ const io_ts_types_1 = require("io-ts-types");
9
+ const index_1 = require("../index");
10
+ exports.SharedSliceContentType = "SharedSliceContent";
11
+ const codec = t.exact(t.type({
12
+ variation: t.string,
13
+ items: (0, io_ts_types_1.withFallback)(t.array(t.unknown), []),
14
+ primary: (0, io_ts_types_1.withFallback)(t.UnknownRecord, {}),
15
+ }));
16
+ exports.SharedSliceContent = {
17
+ fromJson: (prefixes, key, value, fieldTypes, fieldPositions) => {
18
+ const r = (0, Either_1.map)((v) => {
19
+ const prefixedItemsKey = Array.of(prefixes, [
20
+ key,
21
+ "variations",
22
+ v.variation,
23
+ "items",
24
+ ])
25
+ .flat()
26
+ .join(".");
27
+ const groupItemsContents = index_1.GroupContent.itemsContentsFromJson(prefixedItemsKey, v.items, fieldTypes, fieldPositions);
28
+ const sortedFields = Object.entries(v.primary).sort(([k1], [k2]) => {
29
+ const p1 = fieldPositions.get(`${Array.of(prefixes, [key]).flat().join(".")}.${k1}`) ?? 10000;
30
+ const p2 = fieldPositions.get(`${Array.of(prefixes, [key]).flat().join(".")}.${k2}`) ?? 10000;
31
+ return p1 - p2;
32
+ });
33
+ const primary = sortedFields.reduce((acc, [k, w]) => {
34
+ const kp = Array.of(prefixes, [
35
+ key,
36
+ "variations",
37
+ v.variation,
38
+ "primary",
39
+ k,
40
+ ])
41
+ .flat()
42
+ .join(".");
43
+ const kind = fieldTypes.get(kp);
44
+ if (kind) {
45
+ const maybeWidgetContent = index_1.SimpleWidgetContent.from(kind, w);
46
+ if (O.isSome(maybeWidgetContent)) {
47
+ acc[k] = maybeWidgetContent.value;
48
+ }
49
+ }
50
+ return acc;
51
+ }, {});
52
+ const result = {
53
+ variation: v.variation,
54
+ primary,
55
+ items: groupItemsContents,
56
+ __TYPE__: "SharedSliceContent",
57
+ };
58
+ return result;
59
+ })(codec.decode(value));
60
+ return O.fromEither(r);
61
+ },
62
+ };
@@ -0,0 +1,6 @@
1
+ import StaticWidgetContent from "../StaticWidgetContent";
2
+ export declare type SimpleSliceContent = StaticWidgetContent;
3
+ export declare const SimpleSliceContent: {
4
+ fromJson: (prefixes: string[], key: string, value: unknown, fieldTypes: Map<string, string>, fieldPositions: Map<string, number>) => import("fp-ts/lib/Option").Option<StaticWidgetContent>;
5
+ is: (value: unknown) => value is StaticWidgetContent;
6
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimpleSliceContent = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const StaticWidgetContent_1 = (0, tslib_1.__importDefault)(require("../StaticWidgetContent"));
6
+ exports.SimpleSliceContent = StaticWidgetContent_1.default;
@@ -0,0 +1,8 @@
1
+ import * as O from "fp-ts/Option";
2
+ import { CompositeSliceContent } from "./CompositeSliceContent";
3
+ import { SharedSliceContent } from "./SharedSliceContent";
4
+ import type { SimpleSliceContent } from "./SimpleSliceContent";
5
+ export declare type SliceWidgetContent = SimpleSliceContent | CompositeSliceContent | SharedSliceContent;
6
+ export declare const SliceWidgetContent: {
7
+ fromJson: (prefixes: Array<string>, key: string, value: unknown, fieldTypes: Map<string, string>, fieldPositions: Map<string, number>) => O.Option<SliceWidgetContent>;
8
+ };
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SliceWidgetContent = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const O = (0, tslib_1.__importStar)(require("fp-ts/Option"));
6
+ const StaticWidgetContent_1 = (0, tslib_1.__importDefault)(require("../StaticWidgetContent"));
7
+ const CompositeSliceContent_1 = require("./CompositeSliceContent");
8
+ const SharedSliceContent_1 = require("./SharedSliceContent");
9
+ exports.SliceWidgetContent = {
10
+ fromJson: (prefixes, key, value, fieldTypes, fieldPositions) => {
11
+ const prefixedKey = Array.of(prefixes, [key]).flat().join(".");
12
+ const fieldType = fieldTypes.get(prefixedKey);
13
+ if (fieldType === "SharedSlice") {
14
+ return SharedSliceContent_1.SharedSliceContent.fromJson(prefixes, key, value, fieldTypes, fieldPositions);
15
+ }
16
+ else if (fieldType === "Slice") {
17
+ return CompositeSliceContent_1.CompositeSliceContent.fromJson(prefixes, key, value, fieldTypes, fieldPositions);
18
+ }
19
+ else if (fieldType) {
20
+ return StaticWidgetContent_1.default.fromJson(prefixes, key, value, fieldTypes, fieldPositions);
21
+ }
22
+ else {
23
+ return O.none;
24
+ }
25
+ },
26
+ };