@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,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Slices = exports.DynamicSlices = exports.StaticSlices = exports.slicesReader = exports.DynamicSlicesConfig = exports.StaticSlicesConfig = exports.slicesConfigReader = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
6
+ const validators_1 = require("../../../validators");
7
+ const Format_1 = require("../../Format");
8
+ const WidgetTypes_1 = (0, tslib_1.__importDefault)(require("../WidgetTypes"));
9
+ const CompositeSlice_1 = (0, tslib_1.__importDefault)(require("./CompositeSlice"));
10
+ const LegacySlice_1 = (0, tslib_1.__importDefault)(require("./LegacySlice"));
11
+ const SharedSlice_1 = (0, tslib_1.__importDefault)(require("./SharedSlice"));
12
+ const SharedSliceRef_1 = (0, tslib_1.__importDefault)(require("./SharedSliceRef"));
13
+ const SlicesTypes_1 = (0, tslib_1.__importDefault)(require("./SlicesTypes"));
14
+ const SlicesLabels = t.union([
15
+ t.record(t.string, t.array(t.exact(t.intersection([
16
+ t.type({
17
+ name: t.string,
18
+ }),
19
+ t.partial({
20
+ display: t.string,
21
+ }),
22
+ ])))),
23
+ t.null,
24
+ ]);
25
+ function slicesConfigReader(format) {
26
+ return t.exact(t.partial({
27
+ label: validators_1.StringOrNull,
28
+ labels: SlicesLabels,
29
+ choices: t.record(t.string, t.union([
30
+ LegacySlice_1.default,
31
+ CompositeSlice_1.default,
32
+ (() => {
33
+ switch (format) {
34
+ case Format_1.Format.Static:
35
+ return SharedSlice_1.default;
36
+ case Format_1.Format.Dynamic:
37
+ return SharedSliceRef_1.default;
38
+ default:
39
+ throw new Error(`Invalid Format Exception: ${format} doesn't exist`);
40
+ }
41
+ })(),
42
+ ])),
43
+ }));
44
+ }
45
+ exports.slicesConfigReader = slicesConfigReader;
46
+ exports.StaticSlicesConfig = slicesConfigReader(Format_1.Format.Static);
47
+ exports.DynamicSlicesConfig = slicesConfigReader(Format_1.Format.Dynamic);
48
+ const SlicesConfig = {
49
+ toStatic(config, sharedSlices) {
50
+ const choices = Object.entries(config.choices || {}).reduce((acc, [ref, slice]) => {
51
+ if (slice.type === SlicesTypes_1.default.SharedSlice) {
52
+ const sharedSlice = sharedSlices.get(ref);
53
+ if (sharedSlice)
54
+ return { ...acc, [ref]: sharedSlice };
55
+ else
56
+ return acc;
57
+ }
58
+ else {
59
+ return { ...acc, [ref]: slice };
60
+ }
61
+ }, {});
62
+ return { ...config, choices };
63
+ },
64
+ };
65
+ function slicesReader(format) {
66
+ return t.exact(t.intersection([
67
+ t.type({
68
+ type: t.union([
69
+ t.literal(WidgetTypes_1.default.Slices),
70
+ t.literal(WidgetTypes_1.default.LegacySlices),
71
+ ]),
72
+ }),
73
+ t.partial({
74
+ fieldset: validators_1.StringOrNull,
75
+ config: slicesConfigReader(format),
76
+ }),
77
+ ]));
78
+ }
79
+ exports.slicesReader = slicesReader;
80
+ exports.StaticSlices = slicesReader(Format_1.Format.Static);
81
+ exports.DynamicSlices = slicesReader(Format_1.Format.Dynamic);
82
+ exports.Slices = {
83
+ toStatic(slices, sharedSlices) {
84
+ if (!slices.config)
85
+ return slices;
86
+ else {
87
+ return {
88
+ ...slices,
89
+ config: SlicesConfig.toStatic(slices.config, sharedSlices),
90
+ };
91
+ }
92
+ },
93
+ };
@@ -0,0 +1,7 @@
1
+ export { default as CompositeSlice } from "./CompositeSlice";
2
+ export { default as LegacySlice } from "./LegacySlice";
3
+ export { default as SharedSlice } from "./SharedSlice";
4
+ export { default as SharedSliceRef } from "./SharedSliceRef";
5
+ export * as Slice from "./Slice";
6
+ export * as SliceZone from "./Slices";
7
+ export { default as SlicesTypes } from "./SlicesTypes";
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SlicesTypes = exports.SliceZone = exports.Slice = exports.SharedSliceRef = exports.SharedSlice = exports.LegacySlice = exports.CompositeSlice = void 0;
4
+ const tslib_1 = require("tslib");
5
+ var CompositeSlice_1 = require("./CompositeSlice");
6
+ Object.defineProperty(exports, "CompositeSlice", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(CompositeSlice_1).default; } });
7
+ var LegacySlice_1 = require("./LegacySlice");
8
+ Object.defineProperty(exports, "LegacySlice", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(LegacySlice_1).default; } });
9
+ var SharedSlice_1 = require("./SharedSlice");
10
+ Object.defineProperty(exports, "SharedSlice", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(SharedSlice_1).default; } });
11
+ var SharedSliceRef_1 = require("./SharedSliceRef");
12
+ Object.defineProperty(exports, "SharedSliceRef", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(SharedSliceRef_1).default; } });
13
+ exports.Slice = (0, tslib_1.__importStar)(require("./Slice"));
14
+ exports.SliceZone = (0, tslib_1.__importStar)(require("./Slices"));
15
+ var SlicesTypes_1 = require("./SlicesTypes");
16
+ Object.defineProperty(exports, "SlicesTypes", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(SlicesTypes_1).default; } });
@@ -0,0 +1,8 @@
1
+ import * as O from "fp-ts/lib/Option";
2
+ import { type WidgetContent, type WidgetKey } from "./widgets";
3
+ declare type DocumentData = Map<WidgetKey, O.Option<WidgetContent>>;
4
+ declare const DocumentData: {
5
+ getWidget(key: WidgetKey, widgets: Map<WidgetKey, unknown>, widgetTypes: Map<WidgetKey, string>, widgetPositions: Map<WidgetKey, number>, parsed: Map<string, O.Option<WidgetContent>>): O.Option<WidgetContent>;
6
+ fromJson(widgets: Map<WidgetKey, unknown>, widgetTypes: Map<WidgetKey, string>, widgetPositions: Map<WidgetKey, number>): DocumentData;
7
+ };
8
+ export default DocumentData;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const O = (0, tslib_1.__importStar)(require("fp-ts/lib/Option"));
5
+ const widgets_1 = require("./widgets");
6
+ function computeWidget(key, widgets, widgetTypes, widgetPositions) {
7
+ const widget = widgets.get(key);
8
+ if (widget === undefined) {
9
+ return O.none;
10
+ }
11
+ return widgets_1.Widget.fromJson(key, widget, widgetTypes, widgetPositions);
12
+ }
13
+ const DocumentData = {
14
+ getWidget(key, widgets, widgetTypes, widgetPositions, parsed) {
15
+ const widget = parsed.get(key);
16
+ if (widget === undefined) {
17
+ return computeWidget(key, widgets, widgetTypes, widgetPositions);
18
+ }
19
+ return widget;
20
+ },
21
+ fromJson(widgets, widgetTypes, widgetPositions) {
22
+ return Array.from(widgets.keys()).reduce((acc, widgetKey) => {
23
+ const parsedWidget = this.getWidget(widgetKey, widgets, widgetTypes, widgetPositions, acc);
24
+ return new Map([...Array.from(acc.entries()), [widgetKey, parsedWidget]]);
25
+ }, new Map());
26
+ },
27
+ };
28
+ exports.default = DocumentData;
@@ -0,0 +1,2 @@
1
+ export { default as DocumentData } from "./DocumentData";
2
+ export * as Widgets from "./widgets";
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Widgets = exports.DocumentData = void 0;
4
+ const tslib_1 = require("tslib");
5
+ var DocumentData_1 = require("./DocumentData");
6
+ Object.defineProperty(exports, "DocumentData", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(DocumentData_1).default; } });
7
+ exports.Widgets = (0, tslib_1.__importStar)(require("./widgets"));
@@ -0,0 +1,8 @@
1
+ export declare const EmptyContentType = "EmptyContent";
2
+ export declare type EmptyContent = {
3
+ type: string;
4
+ __TYPE__: typeof EmptyContentType;
5
+ };
6
+ export declare const EmptyContent: {
7
+ is: (value: unknown) => value is EmptyContent;
8
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EmptyContent = exports.EmptyContentType = void 0;
4
+ exports.EmptyContentType = "EmptyContent";
5
+ exports.EmptyContent = {
6
+ is: (value) => {
7
+ return value.__TYPE__ === exports.EmptyContentType;
8
+ },
9
+ };
@@ -0,0 +1,16 @@
1
+ import * as O from "fp-ts/Option";
2
+ import { SimpleWidgetContent } from "./SimpleWidgetContent";
3
+ export declare const GroupItemContentType = "GroupItemContent";
4
+ export interface GroupItemContent {
5
+ __TYPE__: typeof GroupItemContentType;
6
+ value: Array<[string, SimpleWidgetContent]>;
7
+ }
8
+ export declare const GroupContentType = "GroupContentType";
9
+ export interface GroupContent {
10
+ __TYPE__: typeof GroupContentType;
11
+ value: GroupItemContent[];
12
+ }
13
+ export declare const GroupContent: Readonly<{
14
+ itemsContentsFromJson: (prefixedKey: string, jsItems: Array<unknown> | undefined, fieldTypes: Map<string, string>, fieldPositions: Map<string, number>) => Array<GroupItemContent>;
15
+ fromJson: (prefixes: Array<string>, key: string, value: unknown, fieldTypes: Map<string, string>, fieldPositions: Map<string, number>) => O.Option<GroupContent>;
16
+ }>;
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GroupContent = exports.GroupContentType = exports.GroupItemContentType = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const A = (0, tslib_1.__importStar)(require("fp-ts/Array"));
6
+ const O = (0, tslib_1.__importStar)(require("fp-ts/Option"));
7
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
8
+ const SimpleWidgetContent_1 = require("./SimpleWidgetContent");
9
+ exports.GroupItemContentType = "GroupItemContent";
10
+ exports.GroupContentType = "GroupContentType";
11
+ exports.GroupContent = Object.freeze({
12
+ itemsContentsFromJson: (prefixedKey, jsItems, fieldTypes, fieldPositions) => {
13
+ if (jsItems) {
14
+ return jsItems.map((jsItem) => {
15
+ if (typeof jsItem === "object" && jsItem !== null) {
16
+ const sorted = Object.entries(jsItem).sort(([k1], [k2]) => {
17
+ const p1 = fieldPositions.get(`${prefixedKey}.${k1}`) ?? 10000;
18
+ const p2 = fieldPositions.get(`${prefixedKey}.${k2}`) ?? 10000;
19
+ return p1 - p2;
20
+ });
21
+ const w = sorted.map(([k, v]) => {
22
+ const kind = fieldTypes.get(`${prefixedKey}.${k}`);
23
+ if (kind) {
24
+ return O.map((content) => {
25
+ return [k, content];
26
+ })(SimpleWidgetContent_1.SimpleWidgetContent.from(kind, v));
27
+ }
28
+ else {
29
+ return O.none;
30
+ }
31
+ });
32
+ return {
33
+ __TYPE__: "GroupItemContent",
34
+ value: A.compact(w),
35
+ };
36
+ }
37
+ else {
38
+ return {
39
+ __TYPE__: "GroupItemContent",
40
+ value: [],
41
+ };
42
+ }
43
+ });
44
+ }
45
+ else {
46
+ return [];
47
+ }
48
+ },
49
+ fromJson: (prefixes, key, value, fieldTypes, fieldPositions) => {
50
+ const prefixedKey = Array.of(prefixes, [key]).flat().join(".");
51
+ const maybeJsItems = O.fromEither(t.array(t.unknown).decode(value));
52
+ return O.map((items) => {
53
+ return {
54
+ value: exports.GroupContent.itemsContentsFromJson(prefixedKey, items, fieldTypes, fieldPositions),
55
+ __TYPE__: exports.GroupContentType,
56
+ };
57
+ })(maybeJsItems);
58
+ },
59
+ });
@@ -0,0 +1,20 @@
1
+ import * as O from "fp-ts/Option";
2
+ import type { EmptyContent } from "./EmptyContent";
3
+ import BooleanContent from "./nestable/BooleanContent";
4
+ import EmbedContent from "./nestable/EmbedContent";
5
+ import FieldContent from "./nestable/FieldContent";
6
+ import { GeoPointContentO } from "./nestable/GeoPointContent";
7
+ import { ImageContentO } from "./nestable/ImageContent";
8
+ import IntegrationFieldsContent from "./nestable/IntegrationFieldsContent";
9
+ import { LinkContent } from "./nestable/Link";
10
+ import type { SeparatorContent } from "./nestable/SeparatorContent";
11
+ import { StructuredTextContent } from "./nestable/StructuredTextContent";
12
+ import { UIDContent } from "./UIDContent";
13
+ export declare const SimpleWidgetContentType: string[];
14
+ export declare type NonEmptySimpleWidgetContent = IntegrationFieldsContent | StructuredTextContent | ImageContentO | GeoPointContentO | EmbedContent | LinkContent | UIDContent | SeparatorContent | FieldContent | BooleanContent;
15
+ export declare type SimpleWidgetContent = NonEmptySimpleWidgetContent | EmptyContent;
16
+ export declare function is(value: unknown): value is SimpleWidgetContent;
17
+ export declare const SimpleWidgetContent: {
18
+ from: (type: string, content: unknown) => O.Option<SimpleWidgetContent>;
19
+ is: (value: unknown) => value is SimpleWidgetContent;
20
+ };
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimpleWidgetContent = exports.is = exports.SimpleWidgetContentType = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const function_1 = require("fp-ts/function");
6
+ const O = (0, tslib_1.__importStar)(require("fp-ts/Option"));
7
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
8
+ const BooleanContent_1 = (0, tslib_1.__importDefault)(require("./nestable/BooleanContent"));
9
+ const EmbedContent_1 = (0, tslib_1.__importDefault)(require("./nestable/EmbedContent"));
10
+ const FieldContent_1 = (0, tslib_1.__importDefault)(require("./nestable/FieldContent"));
11
+ const GeoPointContent_1 = require("./nestable/GeoPointContent");
12
+ const ImageContent_1 = require("./nestable/ImageContent");
13
+ const IntegrationFieldsContent_1 = (0, tslib_1.__importDefault)(require("./nestable/IntegrationFieldsContent"));
14
+ const Link_1 = require("./nestable/Link");
15
+ const StructuredTextContent_1 = require("./nestable/StructuredTextContent");
16
+ const UIDContent_1 = require("./UIDContent");
17
+ //TODO: rework that using import such as EmptyContentType
18
+ exports.SimpleWidgetContentType = [
19
+ "EmptyContent",
20
+ "ImageContent",
21
+ "GeoPointContent",
22
+ "EmbedContent",
23
+ "BooleanContent",
24
+ "IntegrationFieldsContent",
25
+ "StructuredTextContent",
26
+ "LinkContent",
27
+ "UIDContent",
28
+ "SeparatorContent",
29
+ "FieldContent",
30
+ ];
31
+ function is(value) {
32
+ const asSwc = value;
33
+ return exports.SimpleWidgetContentType.includes(asSwc.__TYPE__);
34
+ }
35
+ exports.is = is;
36
+ const valueNullCodec = t.type({
37
+ value: t.null,
38
+ });
39
+ exports.SimpleWidgetContent = {
40
+ from: (type, content) => {
41
+ if (content === null || valueNullCodec.is(content)) {
42
+ const result = { type: type, __TYPE__: "EmptyContent" };
43
+ return O.some(result);
44
+ }
45
+ switch (type) {
46
+ case "StructuredText":
47
+ return O.fromEither(StructuredTextContent_1.StructuredTextContent.decode(content));
48
+ case "IntegrationFields":
49
+ return O.fromEither(IntegrationFieldsContent_1.default.decode(content));
50
+ case "Image":
51
+ return (0, function_1.pipe)(O.fromEither(ImageContent_1.ImageContent.decode(content)), O.map((imageContent) => ImageContent_1.ImageContent.encode(imageContent)));
52
+ case "GeoPoint":
53
+ return (0, function_1.pipe)(O.fromEither(GeoPointContent_1.GeoPointContent.decode(content)), O.map((geopointContent) => GeoPointContent_1.GeoPointContent.encode(geopointContent)));
54
+ case "Embed":
55
+ return O.fromEither(EmbedContent_1.default.decode(content));
56
+ case "Link":
57
+ return O.fromEither(Link_1.LinkContent.decode(content));
58
+ case "UID":
59
+ return O.fromEither(UIDContent_1.UIDContent.decode(content));
60
+ case "Separator":
61
+ return O.some({ __TYPE__: "SeparatorContent" });
62
+ case "Boolean":
63
+ return O.fromEither(BooleanContent_1.default.decode(content));
64
+ default:
65
+ if (FieldContent_1.default.types.includes(type)) {
66
+ return FieldContent_1.default.forType(type, content);
67
+ }
68
+ else {
69
+ return O.none;
70
+ }
71
+ }
72
+ },
73
+ //TODO: rework that
74
+ is: (value) => exports.SimpleWidgetContentType.includes(value.__TYPE__),
75
+ };
@@ -0,0 +1,10 @@
1
+ import * as O from "fp-ts/Option";
2
+ import { GroupContent } from "./GroupContent";
3
+ import { NonEmptySimpleWidgetContent, SimpleWidgetContent } from "./SimpleWidgetContent";
4
+ declare type StaticWidgetContent = SimpleWidgetContent | GroupContent;
5
+ export declare type NonEmptyStaticWidgetContent = NonEmptySimpleWidgetContent | GroupContent;
6
+ declare const StaticWidgetContent: {
7
+ fromJson: (prefixes: Array<string>, key: string, value: unknown, fieldTypes: Map<string, string>, fieldPositions: Map<string, number>) => O.Option<StaticWidgetContent>;
8
+ is: (value: unknown) => value is StaticWidgetContent;
9
+ };
10
+ export default StaticWidgetContent;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const O = (0, tslib_1.__importStar)(require("fp-ts/Option"));
5
+ const GroupContent_1 = require("./GroupContent");
6
+ const SimpleWidgetContent_1 = require("./SimpleWidgetContent");
7
+ const StaticWidgetContent = {
8
+ fromJson: (prefixes, key, value, fieldTypes, fieldPositions) => {
9
+ const prefixedKey = Array.of(prefixes, [key]).flat().join(".");
10
+ const type = fieldTypes.get(prefixedKey);
11
+ if (type === "Group") {
12
+ return GroupContent_1.GroupContent.fromJson(prefixes, key, value, fieldTypes, fieldPositions);
13
+ }
14
+ else if (type) {
15
+ return SimpleWidgetContent_1.SimpleWidgetContent.from(type, value);
16
+ }
17
+ else {
18
+ return O.none;
19
+ }
20
+ },
21
+ is: (value) => {
22
+ return (SimpleWidgetContent_1.SimpleWidgetContent.is(value) ||
23
+ GroupContent_1.GroupContentType === value.__TYPE__);
24
+ },
25
+ };
26
+ exports.default = StaticWidgetContent;
@@ -0,0 +1,7 @@
1
+ import * as t from "io-ts";
2
+ export declare type UIDContent = {
3
+ __TYPE__: "UIDContent";
4
+ value: string;
5
+ };
6
+ export declare const UIDContentType = "UIDContent";
7
+ export declare const UIDContent: t.Type<UIDContent, string, unknown>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UIDContent = exports.UIDContentType = 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
+ exports.UIDContentType = "UIDContent";
8
+ exports.UIDContent = new t.Type("UIDContent", (u) => u?.__TYPE__ === exports.UIDContentType, (u, c) => Either_1.Chain.chain(t.string.validate(u, c), (u) => {
9
+ return t.success({ value: u, __TYPE__: "UIDContent" });
10
+ }), (uidContent) => uidContent.value);
@@ -0,0 +1,35 @@
1
+ import { SlicesContent } from "./slices/SlicesContent";
2
+ import StaticWidgetContent from "./StaticWidgetContent";
3
+ export * from "./EmptyContent";
4
+ export * from "./GroupContent";
5
+ export * as Nestable from "./nestable";
6
+ export * from "./SimpleWidgetContent";
7
+ export * as Slices from "./slices";
8
+ export { type NonEmptyStaticWidgetContent, default as StaticWidgetContent, } from "./StaticWidgetContent";
9
+ export * from "./UIDContent";
10
+ export declare const WidgetTypes: {
11
+ Empty: string;
12
+ UID: string;
13
+ Group: string;
14
+ slices: string;
15
+ Links: {
16
+ DocumentLink: string;
17
+ FileLink: string;
18
+ ExternalLink: string;
19
+ ImageLink: string;
20
+ LinkContent: string;
21
+ };
22
+ StructuredText: string;
23
+ Boolean: string;
24
+ Embed: string;
25
+ Field: string;
26
+ GeoPoint: string;
27
+ Image: string;
28
+ IntegrationFields: string;
29
+ Separator: string;
30
+ };
31
+ export declare type WidgetKey = string;
32
+ export declare type WidgetContent = SlicesContent | StaticWidgetContent;
33
+ export declare const Widget: {
34
+ fromJson(widgetKey: WidgetKey, widgetValue: unknown, widgetTypes: Map<WidgetKey, string>, widgetPositions: Map<WidgetKey, number>): import("fp-ts/lib/Option").None | import("fp-ts/lib/Option").Some<StaticWidgetContent> | import("fp-ts/lib/Option").Some<SlicesContent>;
35
+ };
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Widget = exports.WidgetTypes = exports.StaticWidgetContent = exports.Slices = exports.Nestable = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const EmptyContent_1 = require("./EmptyContent");
6
+ const GroupContent_1 = require("./GroupContent");
7
+ const nestable_1 = require("./nestable");
8
+ const SlicesContent_1 = require("./slices/SlicesContent");
9
+ const StaticWidgetContent_1 = (0, tslib_1.__importDefault)(require("./StaticWidgetContent"));
10
+ const UIDContent_1 = require("./UIDContent");
11
+ (0, tslib_1.__exportStar)(require("./EmptyContent"), exports);
12
+ (0, tslib_1.__exportStar)(require("./GroupContent"), exports);
13
+ exports.Nestable = (0, tslib_1.__importStar)(require("./nestable"));
14
+ (0, tslib_1.__exportStar)(require("./SimpleWidgetContent"), exports);
15
+ exports.Slices = (0, tslib_1.__importStar)(require("./slices"));
16
+ var StaticWidgetContent_2 = require("./StaticWidgetContent");
17
+ Object.defineProperty(exports, "StaticWidgetContent", { enumerable: true, get: function () { return (0, tslib_1.__importDefault)(StaticWidgetContent_2).default; } });
18
+ (0, tslib_1.__exportStar)(require("./UIDContent"), exports);
19
+ exports.WidgetTypes = {
20
+ ...nestable_1.NestableTypes,
21
+ Empty: EmptyContent_1.EmptyContentType,
22
+ UID: UIDContent_1.UIDContentType,
23
+ Group: GroupContent_1.GroupContentType,
24
+ slices: SlicesContent_1.SlicesContentType,
25
+ };
26
+ exports.Widget = {
27
+ fromJson(widgetKey, widgetValue, widgetTypes, widgetPositions) {
28
+ const fieldType = widgetTypes.get(widgetKey);
29
+ if (fieldType === "Slices") {
30
+ return SlicesContent_1.SlicesContent.fromJson(widgetKey, widgetValue, widgetTypes, widgetPositions);
31
+ }
32
+ else {
33
+ return StaticWidgetContent_1.default.fromJson([], widgetKey, widgetValue, widgetTypes, widgetPositions);
34
+ }
35
+ },
36
+ };
@@ -0,0 +1,8 @@
1
+ import * as t from "io-ts";
2
+ declare type BooleanContent = {
3
+ __TYPE__: "BooleanContent";
4
+ value: boolean;
5
+ };
6
+ export declare const BooleanContentType = "BooleanContent";
7
+ declare const BooleanContent: t.Type<BooleanContent, boolean, unknown>;
8
+ export default BooleanContent;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BooleanContentType = 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
+ exports.BooleanContentType = "BooleanContent";
8
+ const BooleanContent = new t.Type("BooleanContent", (u) => u?.__TYPE__ === exports.BooleanContentType, (u, c) => Either_1.Chain.chain(t.boolean.validate(u, c), (u) => {
9
+ return t.success({ value: u, __TYPE__: exports.BooleanContentType });
10
+ }), (booleanContent) => t.boolean.encode(booleanContent.value));
11
+ exports.default = BooleanContent;
@@ -0,0 +1,40 @@
1
+ import * as t from "io-ts";
2
+ export declare const EmbedContentType = "EmbedContent";
3
+ declare type EmbedContent = t.OutputOf<typeof EmbedContentC> & {
4
+ all: unknown;
5
+ };
6
+ declare const EmbedContent: t.Type<EmbedContent, unknown, unknown>;
7
+ declare const EmbedContentC: t.Type<{
8
+ embed_url: string;
9
+ type: string;
10
+ } & {
11
+ version?: string | number | null;
12
+ title?: string | null | undefined;
13
+ author_name?: string | null | undefined;
14
+ author_url?: string | null | undefined;
15
+ provider_name?: string | null | undefined;
16
+ provider_url?: string | null | undefined;
17
+ cache_age?: string | number | null;
18
+ thumbnail_url?: string | null | undefined;
19
+ thumbnail_width?: number | null | undefined;
20
+ thumbnail_height?: number | null | undefined;
21
+ html?: string | null | undefined;
22
+ }, {
23
+ embed_url: string;
24
+ type: string;
25
+ } & {
26
+ version?: string | number | null;
27
+ title?: string | null | undefined;
28
+ author_name?: string | null | undefined;
29
+ author_url?: string | null | undefined;
30
+ provider_name?: string | null | undefined;
31
+ provider_url?: string | null | undefined;
32
+ cache_age?: string | number | null;
33
+ thumbnail_url?: string | null | undefined;
34
+ thumbnail_width?: number | null | undefined;
35
+ thumbnail_height?: number | null | undefined;
36
+ html?: string | null | undefined;
37
+ } & {
38
+ __TYPE__: "EmbedContent";
39
+ }, unknown>;
40
+ export default EmbedContent;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EmbedContentType = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const fp_ts_1 = require("fp-ts");
6
+ const function_1 = require("fp-ts/function");
7
+ const t = (0, tslib_1.__importStar)(require("io-ts"));
8
+ const validators_1 = require("../../../validators");
9
+ const function_2 = require("../../../validators/function");
10
+ exports.EmbedContentType = "EmbedContent";
11
+ const EmbedContent = new t.Type("EmbedContent", (u) => u.__TYPE__ === exports.EmbedContentType, (u) => {
12
+ return (0, function_1.pipe)(EmbedContentC.decode(u), fp_ts_1.either.map((s) => ({
13
+ ...EmbedContentC.encode(s),
14
+ all: u,
15
+ })));
16
+ }, (ec) => EmbedContentC.encode(ec));
17
+ const EmbedContentC = (0, function_2.addType)(t.exact(t.intersection([
18
+ t.type({
19
+ embed_url: t.string,
20
+ type: t.string,
21
+ }),
22
+ t.partial({
23
+ version: t.union([t.string, t.number, t.null]),
24
+ title: validators_1.StringOrNull,
25
+ author_name: validators_1.StringOrNull,
26
+ author_url: validators_1.StringOrNull,
27
+ provider_name: validators_1.StringOrNull,
28
+ provider_url: validators_1.StringOrNull,
29
+ cache_age: t.union([t.string, t.number, t.null]),
30
+ thumbnail_url: validators_1.StringOrNull,
31
+ thumbnail_width: validators_1.NumberOrNull,
32
+ thumbnail_height: validators_1.NumberOrNull,
33
+ html: validators_1.StringOrNull,
34
+ }),
35
+ ])), exports.EmbedContentType);
36
+ exports.default = EmbedContent;
@@ -0,0 +1,12 @@
1
+ import * as O from "fp-ts/Option";
2
+ export declare const FieldContentType = "FieldContent";
3
+ declare type FieldContent = {
4
+ value: string;
5
+ type: string;
6
+ __TYPE__: typeof FieldContentType;
7
+ };
8
+ declare const FieldContent: {
9
+ types: string[];
10
+ forType: (type: string, value: unknown) => O.Option<FieldContent>;
11
+ };
12
+ export default FieldContent;