@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.
- package/README.md +13 -13
- package/{dist → lib}/customtypes/CustomType.d.ts +697 -715
- package/{dist → lib}/customtypes/CustomType.js +42 -52
- package/{dist → lib}/customtypes/Format.d.ts +0 -0
- package/{dist → lib}/customtypes/Format.js +0 -0
- package/{dist → lib}/customtypes/Section.d.ts +1035 -1062
- package/lib/customtypes/Section.js +21 -0
- package/lib/customtypes/index.d.ts +4 -0
- package/lib/customtypes/index.js +9 -0
- package/{dist → lib}/customtypes/widgets/Group.d.ts +45 -45
- package/lib/customtypes/widgets/Group.js +24 -0
- package/{dist → lib}/customtypes/widgets/UID.d.ts +4 -4
- package/lib/customtypes/widgets/UID.js +21 -0
- package/{dist → lib}/customtypes/widgets/Widget.d.ts +1036 -1063
- package/lib/customtypes/widgets/Widget.js +27 -0
- package/{dist → lib}/customtypes/widgets/WidgetTypes.d.ts +0 -0
- package/{dist → lib}/customtypes/widgets/WidgetTypes.js +0 -0
- package/lib/customtypes/widgets/index.d.ts +7 -0
- package/lib/customtypes/widgets/index.js +14 -0
- package/{dist → lib}/customtypes/widgets/nestable/BooleanField.d.ts +3 -3
- package/lib/customtypes/widgets/nestable/BooleanField.js +21 -0
- package/{dist → lib}/customtypes/widgets/nestable/Color.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/Color.js +20 -0
- package/{dist → lib}/customtypes/widgets/nestable/Date.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/Date.js +21 -0
- package/{dist → lib}/customtypes/widgets/nestable/Embed.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/Embed.js +21 -0
- package/{dist → lib}/customtypes/widgets/nestable/GeoPoint.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/GeoPoint.js +19 -0
- package/lib/customtypes/widgets/nestable/Image.d.ts +23 -0
- package/lib/customtypes/widgets/nestable/Image.js +29 -0
- package/{dist → lib}/customtypes/widgets/nestable/IntegrationField.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/IntegrationField.js +21 -0
- package/{dist → lib}/customtypes/widgets/nestable/Link.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/Link.js +54 -0
- package/{dist → lib}/customtypes/widgets/nestable/NestableWidget.d.ts +42 -42
- package/lib/customtypes/widgets/nestable/NestableWidget.js +37 -0
- package/{dist → lib}/customtypes/widgets/nestable/Number.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/Number.js +24 -0
- package/{dist → lib}/customtypes/widgets/nestable/Range.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/Range.js +24 -0
- package/{dist → lib}/customtypes/widgets/nestable/RichText.d.ts +6 -6
- package/lib/customtypes/widgets/nestable/RichText.js +111 -0
- package/lib/customtypes/widgets/nestable/Select.d.ts +15 -0
- package/lib/customtypes/widgets/nestable/Select.js +22 -0
- package/{dist → lib}/customtypes/widgets/nestable/Separator.d.ts +3 -3
- package/lib/customtypes/widgets/nestable/Separator.js +18 -0
- package/{dist → lib}/customtypes/widgets/nestable/Text.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/Text.js +21 -0
- package/{dist → lib}/customtypes/widgets/nestable/Timestamp.d.ts +4 -4
- package/lib/customtypes/widgets/nestable/Timestamp.js +21 -0
- package/lib/customtypes/widgets/nestable/index.d.ts +15 -0
- package/{dist → lib}/customtypes/widgets/nestable/index.js +0 -0
- package/{dist → lib}/customtypes/widgets/shared/ImageConstraint.d.ts +3 -3
- package/lib/customtypes/widgets/shared/ImageConstraint.js +31 -0
- package/lib/customtypes/widgets/shared/index.d.ts +1 -0
- package/{dist → lib}/customtypes/widgets/shared/index.js +0 -0
- package/{dist → lib}/customtypes/widgets/slices/CompositeSlice.d.ts +87 -87
- package/lib/customtypes/widgets/slices/CompositeSlice.js +25 -0
- package/{dist → lib}/customtypes/widgets/slices/LegacySlice.d.ts +86 -95
- package/lib/customtypes/widgets/slices/LegacySlice.js +8 -0
- package/{dist → lib}/customtypes/widgets/slices/SharedSlice.d.ts +84 -84
- package/lib/customtypes/widgets/slices/SharedSlice.js +35 -0
- package/{dist → lib}/customtypes/widgets/slices/SharedSliceRef.d.ts +2 -2
- package/lib/customtypes/widgets/slices/SharedSliceRef.js +9 -0
- package/lib/customtypes/widgets/slices/Slice.d.ts +6 -0
- package/{dist → lib}/customtypes/widgets/slices/Slice.js +0 -0
- package/{dist → lib}/customtypes/widgets/slices/Slices.d.ts +1550 -1604
- package/lib/customtypes/widgets/slices/Slices.js +93 -0
- package/{dist → lib}/customtypes/widgets/slices/SlicesTypes.d.ts +0 -0
- package/{dist → lib}/customtypes/widgets/slices/SlicesTypes.js +0 -0
- package/lib/customtypes/widgets/slices/index.d.ts +7 -0
- package/lib/customtypes/widgets/slices/index.js +16 -0
- package/lib/documents/DocumentData.d.ts +8 -0
- package/lib/documents/DocumentData.js +28 -0
- package/lib/documents/index.d.ts +2 -0
- package/lib/documents/index.js +7 -0
- package/lib/documents/widgets/EmptyContent.d.ts +8 -0
- package/lib/documents/widgets/EmptyContent.js +9 -0
- package/lib/documents/widgets/GroupContent.d.ts +16 -0
- package/lib/documents/widgets/GroupContent.js +59 -0
- package/lib/documents/widgets/SimpleWidgetContent.d.ts +20 -0
- package/lib/documents/widgets/SimpleWidgetContent.js +75 -0
- package/lib/documents/widgets/StaticWidgetContent.d.ts +10 -0
- package/lib/documents/widgets/StaticWidgetContent.js +26 -0
- package/lib/documents/widgets/UIDContent.d.ts +7 -0
- package/lib/documents/widgets/UIDContent.js +10 -0
- package/lib/documents/widgets/index.d.ts +35 -0
- package/lib/documents/widgets/index.js +36 -0
- package/lib/documents/widgets/nestable/BooleanContent.d.ts +8 -0
- package/lib/documents/widgets/nestable/BooleanContent.js +11 -0
- package/lib/documents/widgets/nestable/EmbedContent.d.ts +40 -0
- package/lib/documents/widgets/nestable/EmbedContent.js +36 -0
- package/lib/documents/widgets/nestable/FieldContent.d.ts +12 -0
- package/lib/documents/widgets/nestable/FieldContent.js +37 -0
- package/lib/documents/widgets/nestable/GeoPointContent.d.ts +17 -0
- package/lib/documents/widgets/nestable/GeoPointContent.js +13 -0
- package/lib/documents/widgets/nestable/ImageContent.d.ts +127 -0
- package/lib/documents/widgets/nestable/ImageContent.js +41 -0
- package/lib/documents/widgets/nestable/IntegrationFieldsContent.d.ts +8 -0
- package/lib/documents/widgets/nestable/IntegrationFieldsContent.js +16 -0
- package/lib/documents/widgets/nestable/Link/DocumentLink.d.ts +12 -0
- package/lib/documents/widgets/nestable/Link/DocumentLink.js +13 -0
- package/lib/documents/widgets/nestable/Link/ExternalLink.d.ts +24 -0
- package/lib/documents/widgets/nestable/Link/ExternalLink.js +24 -0
- package/lib/documents/widgets/nestable/Link/FileLink.d.ts +22 -0
- package/lib/documents/widgets/nestable/Link/FileLink.js +24 -0
- package/lib/documents/widgets/nestable/Link/ImageLink.d.ts +28 -0
- package/lib/documents/widgets/nestable/Link/ImageLink.js +26 -0
- package/lib/documents/widgets/nestable/Link/LinkContent.d.ts +36 -0
- package/lib/documents/widgets/nestable/Link/LinkContent.js +13 -0
- package/lib/documents/widgets/nestable/Link/index.d.ts +89 -0
- package/lib/documents/widgets/nestable/Link/index.js +35 -0
- package/lib/documents/widgets/nestable/SeparatorContent.d.ts +7 -0
- package/lib/documents/widgets/nestable/SeparatorContent.js +10 -0
- package/lib/documents/widgets/nestable/StructuredTextContent/Block.d.ts +274 -0
- package/lib/documents/widgets/nestable/StructuredTextContent/Block.js +97 -0
- package/lib/documents/widgets/nestable/StructuredTextContent/index.d.ts +9 -0
- package/lib/documents/widgets/nestable/StructuredTextContent/index.js +14 -0
- package/lib/documents/widgets/nestable/index.d.ts +26 -0
- package/lib/documents/widgets/nestable/index.js +40 -0
- package/lib/documents/widgets/slices/CompositeSliceContent.d.ts +14 -0
- package/lib/documents/widgets/slices/CompositeSliceContent.js +50 -0
- package/lib/documents/widgets/slices/SharedSliceContent.d.ts +15 -0
- package/lib/documents/widgets/slices/SharedSliceContent.js +62 -0
- package/lib/documents/widgets/slices/SimpleSliceContent.d.ts +6 -0
- package/lib/documents/widgets/slices/SimpleSliceContent.js +6 -0
- package/lib/documents/widgets/slices/SliceWidgetContent.d.ts +8 -0
- package/lib/documents/widgets/slices/SliceWidgetContent.js +26 -0
- package/lib/documents/widgets/slices/SlicesContent.d.ts +17 -0
- package/lib/documents/widgets/slices/SlicesContent.js +51 -0
- package/lib/documents/widgets/slices/index.d.ts +5 -0
- package/lib/documents/widgets/slices/index.js +8 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.js +7 -0
- package/lib/validators/DateFromString.d.ts +3 -0
- package/lib/validators/DateFromString.js +10 -0
- package/lib/validators/DateFromStringOrNumber.d.ts +3 -0
- package/lib/validators/DateFromStringOrNumber.js +10 -0
- package/lib/validators/DateFromTsMs.d.ts +3 -0
- package/lib/validators/DateFromTsMs.js +10 -0
- package/lib/validators/IntFromNumber.d.ts +5 -0
- package/lib/validators/IntFromNumber.js +14 -0
- package/lib/validators/IntFromPixels.d.ts +8 -0
- package/lib/validators/IntFromPixels.js +24 -0
- package/lib/validators/NonEmptyString.d.ts +3 -0
- package/lib/validators/NonEmptyString.js +6 -0
- package/lib/validators/NonEmptyStringOrNull.d.ts +3 -0
- package/lib/validators/NonEmptyStringOrNull.js +15 -0
- package/lib/validators/NumberOrNull.d.ts +3 -0
- package/lib/validators/NumberOrNull.js +6 -0
- package/lib/validators/StringFromBoolean.d.ts +5 -0
- package/lib/validators/StringFromBoolean.js +10 -0
- package/lib/validators/StringFromNumber.d.ts +5 -0
- package/lib/validators/StringFromNumber.js +10 -0
- package/lib/validators/StringOrNull.d.ts +3 -0
- package/lib/validators/StringOrNull.js +6 -0
- package/lib/validators/function.d.ts +14 -0
- package/lib/validators/function.js +60 -0
- package/lib/validators/index.d.ts +12 -0
- package/lib/validators/index.js +27 -0
- package/package.json +30 -18
- package/src/customtypes/CustomType.ts +173 -116
- package/src/customtypes/Format.ts +3 -3
- package/src/customtypes/Section.ts +26 -13
- package/src/customtypes/index.ts +4 -4
- package/src/customtypes/widgets/Group.ts +21 -20
- package/src/customtypes/widgets/UID.ts +18 -17
- package/src/customtypes/widgets/Widget.ts +22 -23
- package/src/customtypes/widgets/WidgetTypes.ts +21 -21
- package/src/customtypes/widgets/index.ts +7 -7
- package/src/customtypes/widgets/nestable/BooleanField.ts +19 -19
- package/src/customtypes/widgets/nestable/Color.ts +17 -16
- package/src/customtypes/widgets/nestable/Date.ts +19 -18
- package/src/customtypes/widgets/nestable/Embed.ts +19 -18
- package/src/customtypes/widgets/nestable/GeoPoint.ts +17 -16
- package/src/customtypes/widgets/nestable/Image.ts +26 -26
- package/src/customtypes/widgets/nestable/IntegrationField.ts +18 -17
- package/src/customtypes/widgets/nestable/Link.ts +80 -68
- package/src/customtypes/widgets/nestable/NestableWidget.ts +32 -32
- package/src/customtypes/widgets/nestable/Number.ts +22 -21
- package/src/customtypes/widgets/nestable/Range.ts +22 -21
- package/src/customtypes/widgets/nestable/RichText.ts +164 -134
- package/src/customtypes/widgets/nestable/Select.ts +22 -21
- package/src/customtypes/widgets/nestable/Separator.ts +15 -14
- package/src/customtypes/widgets/nestable/Text.ts +18 -17
- package/src/customtypes/widgets/nestable/Timestamp.ts +19 -18
- package/src/customtypes/widgets/nestable/index.ts +15 -15
- package/src/customtypes/widgets/shared/ImageConstraint.ts +31 -29
- package/src/customtypes/widgets/shared/index.ts +1 -1
- package/src/customtypes/widgets/slices/CompositeSlice.ts +21 -21
- package/src/customtypes/widgets/slices/LegacySlice.ts +5 -10
- package/src/customtypes/widgets/slices/SharedSlice.ts +33 -31
- package/src/customtypes/widgets/slices/SharedSliceRef.ts +6 -6
- package/src/customtypes/widgets/slices/Slice.ts +4 -4
- package/src/customtypes/widgets/slices/Slices.ts +95 -73
- package/src/customtypes/widgets/slices/SlicesTypes.ts +3 -3
- package/src/customtypes/widgets/slices/index.ts +7 -7
- package/src/documents/DocumentData.ts +54 -0
- package/src/documents/index.ts +2 -0
- package/src/documents/widgets/EmptyContent.ts +8 -0
- package/src/documents/widgets/GroupContent.ts +91 -0
- package/src/documents/widgets/SimpleWidgetContent.ts +96 -0
- package/src/documents/widgets/StaticWidgetContent.ts +46 -0
- package/src/documents/widgets/UIDContent.ts +18 -0
- package/src/documents/widgets/index.ts +56 -0
- package/src/documents/widgets/nestable/BooleanContent.ts +21 -0
- package/src/documents/widgets/nestable/EmbedContent.ts +54 -0
- package/src/documents/widgets/nestable/FieldContent.ts +45 -0
- package/src/documents/widgets/nestable/GeoPointContent.ts +18 -0
- package/src/documents/widgets/nestable/ImageContent.ts +51 -0
- package/src/documents/widgets/nestable/IntegrationFieldsContent.ts +26 -0
- package/src/documents/widgets/nestable/Link/DocumentLink.ts +18 -0
- package/src/documents/widgets/nestable/Link/ExternalLink.ts +31 -0
- package/src/documents/widgets/nestable/Link/FileLink.ts +29 -0
- package/src/documents/widgets/nestable/Link/ImageLink.ts +31 -0
- package/src/documents/widgets/nestable/Link/LinkContent.ts +22 -0
- package/src/documents/widgets/nestable/Link/index.ts +33 -0
- package/src/documents/widgets/nestable/SeparatorContent.ts +8 -0
- package/src/documents/widgets/nestable/StructuredTextContent/Block.ts +122 -0
- package/src/documents/widgets/nestable/StructuredTextContent/index.ts +25 -0
- package/src/documents/widgets/nestable/index.ts +35 -0
- package/src/documents/widgets/slices/CompositeSliceContent.ts +77 -0
- package/src/documents/widgets/slices/SharedSliceContent.ts +94 -0
- package/src/documents/widgets/slices/SimpleSliceContent.ts +4 -0
- package/src/documents/widgets/slices/SliceWidgetContent.ts +51 -0
- package/src/documents/widgets/slices/SlicesContent.ts +91 -0
- package/src/documents/widgets/slices/index.ts +5 -0
- package/src/index.ts +3 -1
- package/src/validators/DateFromString.ts +17 -0
- package/src/validators/DateFromStringOrNumber.ts +17 -0
- package/src/validators/DateFromTsMs.ts +17 -0
- package/src/validators/IntFromNumber.ts +22 -24
- package/src/validators/IntFromPixels.ts +27 -26
- package/src/validators/NonEmptyString.ts +9 -0
- package/src/validators/NonEmptyStringOrNull.ts +22 -0
- package/src/validators/NumberOrNull.ts +5 -0
- package/src/validators/StringFromBoolean.ts +17 -19
- package/src/validators/StringFromNumber.ts +17 -19
- package/src/validators/StringOrNull.ts +4 -2
- package/src/validators/function.ts +71 -0
- package/src/validators/index.ts +12 -0
- package/dist/customtypes/Section.js +0 -40
- package/dist/customtypes/index.d.ts +0 -4
- package/dist/customtypes/index.js +0 -30
- package/dist/customtypes/widgets/Group.js +0 -45
- package/dist/customtypes/widgets/UID.js +0 -42
- package/dist/customtypes/widgets/Widget.js +0 -51
- package/dist/customtypes/widgets/index.d.ts +0 -7
- package/dist/customtypes/widgets/index.js +0 -35
- package/dist/customtypes/widgets/nestable/BooleanField.js +0 -42
- package/dist/customtypes/widgets/nestable/Color.js +0 -41
- package/dist/customtypes/widgets/nestable/Date.js +0 -42
- package/dist/customtypes/widgets/nestable/Embed.js +0 -42
- package/dist/customtypes/widgets/nestable/GeoPoint.js +0 -40
- package/dist/customtypes/widgets/nestable/Image.d.ts +0 -23
- package/dist/customtypes/widgets/nestable/Image.js +0 -50
- package/dist/customtypes/widgets/nestable/IntegrationField.js +0 -42
- package/dist/customtypes/widgets/nestable/Link.js +0 -78
- package/dist/customtypes/widgets/nestable/NestableWidget.js +0 -58
- package/dist/customtypes/widgets/nestable/Number.js +0 -45
- package/dist/customtypes/widgets/nestable/Range.js +0 -45
- package/dist/customtypes/widgets/nestable/RichText.js +0 -134
- package/dist/customtypes/widgets/nestable/Select.d.ts +0 -15
- package/dist/customtypes/widgets/nestable/Select.js +0 -45
- package/dist/customtypes/widgets/nestable/Separator.js +0 -39
- package/dist/customtypes/widgets/nestable/Text.js +0 -42
- package/dist/customtypes/widgets/nestable/Timestamp.js +0 -42
- package/dist/customtypes/widgets/nestable/index.d.ts +0 -15
- package/dist/customtypes/widgets/shared/ImageConstraint.js +0 -48
- package/dist/customtypes/widgets/shared/index.d.ts +0 -1
- package/dist/customtypes/widgets/slices/CompositeSlice.js +0 -46
- package/dist/customtypes/widgets/slices/LegacySlice.js +0 -34
- package/dist/customtypes/widgets/slices/SharedSlice.js +0 -56
- package/dist/customtypes/widgets/slices/SharedSliceRef.js +0 -30
- package/dist/customtypes/widgets/slices/Slice.d.ts +0 -6
- package/dist/customtypes/widgets/slices/Slices.js +0 -106
- package/dist/customtypes/widgets/slices/index.d.ts +0 -7
- package/dist/customtypes/widgets/slices/index.js +0 -37
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -23
- package/dist/index.js.map +0 -1
- package/dist/validators/IntFromNumber.d.ts +0 -7
- package/dist/validators/IntFromNumber.js +0 -35
- package/dist/validators/IntFromPixels.d.ts +0 -7
- package/dist/validators/IntFromPixels.js +0 -43
- package/dist/validators/StringFromBoolean.d.ts +0 -7
- package/dist/validators/StringFromBoolean.js +0 -31
- package/dist/validators/StringFromNumber.d.ts +0 -7
- package/dist/validators/StringFromNumber.js +0 -31
- package/dist/validators/StringOrNull.d.ts +0 -2
- 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
|
+
};
|
|
File without changes
|
|
File without changes
|
|
@@ -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,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,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,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;
|