@ethlete/contentful 2.1.2 → 3.0.1

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 (33) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/esm2022/index.mjs +2 -1
  3. package/esm2022/lib/components/audio/contentful-audio.component.mjs +18 -47
  4. package/esm2022/lib/components/file/contentful-file.component.mjs +14 -36
  5. package/esm2022/lib/components/image/contentful-image.component.mjs +64 -113
  6. package/esm2022/lib/components/image/contentful-image.component.utils.mjs +15 -19
  7. package/esm2022/lib/components/rich-text-renderer/index.mjs +1 -3
  8. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.component.mjs +683 -78
  9. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.errors.mjs +21 -0
  10. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.util.mjs +4 -133
  11. package/esm2022/lib/components/video/contentful-video.component.mjs +14 -39
  12. package/esm2022/lib/gql/asset.fragments.mjs +1 -17
  13. package/esm2022/lib/types/contentful.types.mjs +1 -1
  14. package/esm2022/lib/utils/contentful.util.mjs +1 -7
  15. package/fesm2022/ethlete-contentful.mjs +835 -484
  16. package/fesm2022/ethlete-contentful.mjs.map +1 -1
  17. package/lib/components/audio/contentful-audio.component.d.ts +6 -11
  18. package/lib/components/file/contentful-file.component.d.ts +4 -9
  19. package/lib/components/image/contentful-image.component.d.ts +19 -24
  20. package/lib/components/image/contentful-image.component.utils.d.ts +2 -2
  21. package/lib/components/rich-text-renderer/index.d.ts +0 -2
  22. package/lib/components/rich-text-renderer/rich-text-renderer.component.d.ts +160 -15
  23. package/lib/components/rich-text-renderer/rich-text-renderer.errors.d.ts +12 -0
  24. package/lib/components/rich-text-renderer/rich-text-renderer.util.d.ts +4 -17
  25. package/lib/components/video/contentful-video.component.d.ts +4 -9
  26. package/lib/gql/asset.fragments.d.ts +0 -1
  27. package/lib/types/contentful.types.d.ts +92 -48
  28. package/lib/utils/contentful.util.d.ts +1 -3
  29. package/package.json +4 -4
  30. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.constants.mjs +0 -3
  31. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.types.mjs +0 -2
  32. package/lib/components/rich-text-renderer/rich-text-renderer.constants.d.ts +0 -2
  33. package/lib/components/rich-text-renderer/rich-text-renderer.types.d.ts +0 -12
@@ -0,0 +1,21 @@
1
+ import { RuntimeError } from '@ethlete/core';
2
+ export const RICH_TEXT_RENDERER_ERRORS = {
3
+ rich_text_undefined: 'The property value given at richTextPath is undefined. Use the richTextPath input to specify the path to the rich text object.',
4
+ rich_text_wrong_type: 'The rich text object does not satisfy the RichTextResponse interface. It should contain a property named "nodeType" with the value "document".',
5
+ asset_id_not_found: 'The asset ID was not found. This node is not supported.',
6
+ entry_id_not_found: 'The entry ID was not found. This node is not supported.',
7
+ asset_not_found: 'The asset was not found. This node is not supported.',
8
+ entry_not_found: 'The entry was not found. This node is not supported.',
9
+ custom_component_not_found: 'No custom component found for entry type. Please provide one for this type.',
10
+ text_parent_not_found: 'The parent node is not found. This structure is not supported.',
11
+ text_parent_wrong_type: 'The parent node neither a html element nor a custom component. This structure is not supported.',
12
+ };
13
+ const RICH_TEXT_RENDERER_ERROR_CODES = Object.keys(RICH_TEXT_RENDERER_ERRORS).reduce((acc, key, index) => {
14
+ acc[key] = index;
15
+ return acc;
16
+ }, {});
17
+ export const richTextRendererError = (code, devOnly, data) => {
18
+ const message = `<et-contentful-rich-text-renderer>: ${RICH_TEXT_RENDERER_ERRORS[code]}`;
19
+ throw new RuntimeError(RICH_TEXT_RENDERER_ERROR_CODES[code], message, devOnly, data);
20
+ };
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLmVycm9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvcmljaC10ZXh0LXJlbmRlcmVyL3JpY2gtdGV4dC1yZW5kZXJlci5lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3QyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxtQkFBbUIsRUFDakIsZ0lBQWdJO0lBQ2xJLG9CQUFvQixFQUNsQixnSkFBZ0o7SUFFbEosa0JBQWtCLEVBQUUseURBQXlEO0lBQzdFLGtCQUFrQixFQUFFLHlEQUF5RDtJQUU3RSxlQUFlLEVBQUUsc0RBQXNEO0lBQ3ZFLGVBQWUsRUFBRSxzREFBc0Q7SUFFdkUsMEJBQTBCLEVBQUUsNkVBQTZFO0lBRXpHLHFCQUFxQixFQUFFLGdFQUFnRTtJQUN2RixzQkFBc0IsRUFDcEIsaUdBQWlHO0NBQzNGLENBQUM7QUFFWCxNQUFNLDhCQUE4QixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxNQUFNLENBQ2xGLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRTtJQUNsQixHQUFHLENBQUMsR0FBNkMsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUMzRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsRUFDRCxFQUE0RCxDQUM3RCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FDbkMsSUFBNEMsRUFDNUMsT0FBZ0IsRUFDaEIsSUFBYyxFQUNkLEVBQUU7SUFDRixNQUFNLE9BQU8sR0FBRyx1Q0FBdUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUV6RixNQUFNLElBQUksWUFBWSxDQUFDLDhCQUE4QixDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDdkYsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUnVudGltZUVycm9yIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBSSUNIX1RFWFRfUkVOREVSRVJfRVJST1JTID0ge1xuICByaWNoX3RleHRfdW5kZWZpbmVkOlxuICAgICdUaGUgcHJvcGVydHkgdmFsdWUgZ2l2ZW4gYXQgcmljaFRleHRQYXRoIGlzIHVuZGVmaW5lZC4gVXNlIHRoZSByaWNoVGV4dFBhdGggaW5wdXQgdG8gc3BlY2lmeSB0aGUgcGF0aCB0byB0aGUgcmljaCB0ZXh0IG9iamVjdC4nLFxuICByaWNoX3RleHRfd3JvbmdfdHlwZTpcbiAgICAnVGhlIHJpY2ggdGV4dCBvYmplY3QgZG9lcyBub3Qgc2F0aXNmeSB0aGUgUmljaFRleHRSZXNwb25zZSBpbnRlcmZhY2UuIEl0IHNob3VsZCBjb250YWluIGEgcHJvcGVydHkgbmFtZWQgXCJub2RlVHlwZVwiIHdpdGggdGhlIHZhbHVlIFwiZG9jdW1lbnRcIi4nLFxuXG4gIGFzc2V0X2lkX25vdF9mb3VuZDogJ1RoZSBhc3NldCBJRCB3YXMgbm90IGZvdW5kLiBUaGlzIG5vZGUgaXMgbm90IHN1cHBvcnRlZC4nLFxuICBlbnRyeV9pZF9ub3RfZm91bmQ6ICdUaGUgZW50cnkgSUQgd2FzIG5vdCBmb3VuZC4gVGhpcyBub2RlIGlzIG5vdCBzdXBwb3J0ZWQuJyxcblxuICBhc3NldF9ub3RfZm91bmQ6ICdUaGUgYXNzZXQgd2FzIG5vdCBmb3VuZC4gVGhpcyBub2RlIGlzIG5vdCBzdXBwb3J0ZWQuJyxcbiAgZW50cnlfbm90X2ZvdW5kOiAnVGhlIGVudHJ5IHdhcyBub3QgZm91bmQuIFRoaXMgbm9kZSBpcyBub3Qgc3VwcG9ydGVkLicsXG5cbiAgY3VzdG9tX2NvbXBvbmVudF9ub3RfZm91bmQ6ICdObyBjdXN0b20gY29tcG9uZW50IGZvdW5kIGZvciBlbnRyeSB0eXBlLiBQbGVhc2UgcHJvdmlkZSBvbmUgZm9yIHRoaXMgdHlwZS4nLFxuXG4gIHRleHRfcGFyZW50X25vdF9mb3VuZDogJ1RoZSBwYXJlbnQgbm9kZSBpcyBub3QgZm91bmQuIFRoaXMgc3RydWN0dXJlIGlzIG5vdCBzdXBwb3J0ZWQuJyxcbiAgdGV4dF9wYXJlbnRfd3JvbmdfdHlwZTpcbiAgICAnVGhlIHBhcmVudCBub2RlIG5laXRoZXIgYSBodG1sIGVsZW1lbnQgbm9yIGEgY3VzdG9tIGNvbXBvbmVudC4gVGhpcyBzdHJ1Y3R1cmUgaXMgbm90IHN1cHBvcnRlZC4nLFxufSBhcyBjb25zdDtcblxuY29uc3QgUklDSF9URVhUX1JFTkRFUkVSX0VSUk9SX0NPREVTID0gT2JqZWN0LmtleXMoUklDSF9URVhUX1JFTkRFUkVSX0VSUk9SUykucmVkdWNlKFxuICAoYWNjLCBrZXksIGluZGV4KSA9PiB7XG4gICAgYWNjW2tleSBhcyBrZXlvZiB0eXBlb2YgUklDSF9URVhUX1JFTkRFUkVSX0VSUk9SU10gPSBpbmRleDtcbiAgICByZXR1cm4gYWNjO1xuICB9LFxuICB7fSBhcyBSZWNvcmQ8a2V5b2YgdHlwZW9mIFJJQ0hfVEVYVF9SRU5ERVJFUl9FUlJPUlMsIG51bWJlcj4sXG4pO1xuXG5leHBvcnQgY29uc3QgcmljaFRleHRSZW5kZXJlckVycm9yID0gKFxuICBjb2RlOiBrZXlvZiB0eXBlb2YgUklDSF9URVhUX1JFTkRFUkVSX0VSUk9SUyxcbiAgZGV2T25seTogYm9vbGVhbixcbiAgZGF0YT86IHVua25vd24sXG4pID0+IHtcbiAgY29uc3QgbWVzc2FnZSA9IGA8ZXQtY29udGVudGZ1bC1yaWNoLXRleHQtcmVuZGVyZXI+OiAke1JJQ0hfVEVYVF9SRU5ERVJFUl9FUlJPUlNbY29kZV19YDtcblxuICB0aHJvdyBuZXcgUnVudGltZUVycm9yKFJJQ0hfVEVYVF9SRU5ERVJFUl9FUlJPUl9DT0RFU1tjb2RlXSwgbWVzc2FnZSwgZGV2T25seSwgZGF0YSk7XG59O1xuIl19
@@ -1,115 +1,7 @@
1
1
  import { BLOCKS, INLINES } from '@contentful/rich-text-types';
2
- import { ContentfulImageComponent } from '../image';
3
- export const createRenderCommandsFromContentfulRichText = (options) => {
4
- const { data, config } = options;
5
- const commands = [];
6
- const resourceMap = createContentfulResourceMap(data.links);
7
- createContentfulRenderCommand(data.json, { children: commands, payload: data.json.nodeType }, resourceMap, config);
8
- return commands;
9
- };
10
- export const createContentfulRenderCommand = (node, parent, resourceMap, config) => {
11
- const { nodeType, data: nodeData } = node;
12
- const { children, marks, value } = getContentfulNodeProps(node);
13
- const command = {
14
- payload: translateContentfulNodeTypeToHtmlTag(nodeType),
15
- data: value,
16
- attributes: {
17
- ...(marks
18
- ? {
19
- class: transformContentfulMarks(marks, config.useTailwindClasses),
20
- }
21
- : {}),
22
- ...(nodeData['uri'] ? { href: nodeData['uri'], target: '_blank' } : {}),
23
- },
24
- children: [],
25
- };
26
- const entryId = nodeData['target']?.sys?.id;
27
- if (nodeType === BLOCKS.EMBEDDED_ASSET) {
28
- const asset = resourceMap.assetsBlock.get(entryId);
29
- if (asset) {
30
- const isImage = asset.contentType.startsWith('image/');
31
- const isVideo = asset.contentType.startsWith('video/');
32
- const isAudio = asset.contentType.startsWith('audio/');
33
- command.data = asset;
34
- if (isImage) {
35
- command.payload = config.components.image;
36
- }
37
- else if (isVideo) {
38
- command.payload = config.components.video;
39
- }
40
- else if (isAudio) {
41
- command.payload = config.components.audio;
42
- }
43
- else {
44
- command.payload = config.components.file;
45
- }
46
- }
47
- else {
48
- console.warn(`No asset found for entry id "${entryId}"!`, nodeData);
49
- }
50
- }
51
- else if (nodeType === BLOCKS.EMBEDDED_ENTRY || nodeType === INLINES.EMBEDDED_ENTRY) {
52
- const entry = resourceMap.entriesBlock.get(entryId) ?? resourceMap.entriesInline.get(entryId);
53
- if (entry) {
54
- const type = entry?.__typename ?? 'ET_UNKNOWN';
55
- // "Image" is a special wrapper content model for contentful assets.
56
- // It must be created by the user.
57
- const component = type === 'Image' ? ContentfulImageComponent : config.customComponents?.[type];
58
- if (component) {
59
- command.payload = component;
60
- command.data = entry;
61
- }
62
- else {
63
- command.data = `ERROR: No component found for embedded entry "${type}" as "${nodeType}"!`;
64
- }
65
- }
66
- else {
67
- console.warn(`No entry found for entry id "${entryId}"!`, nodeData);
68
- }
69
- }
70
- if (children && (children.length !== 1 || children[0]?.nodeType !== 'text')) {
71
- children.forEach((child) => {
72
- createContentfulRenderCommand(child, command, resourceMap, config);
73
- });
74
- }
75
- parent.children.push(command);
76
- return command;
77
- };
78
- export const getContentfulNodeProps = (node) => {
79
- const children = 'content' in node ? node.content : null;
80
- let marks = null;
81
- let value = null;
82
- if (children && children.length === 1 && children[0]?.nodeType === 'text') {
83
- marks = children[0].marks?.length ? children[0].marks : null;
84
- value = children[0].value;
85
- }
86
- else {
87
- marks = 'marks' in node ? (node.marks?.length ? node.marks : null) : null;
88
- value = 'value' in node ? node.value : null;
89
- }
90
- return {
91
- children,
92
- marks,
93
- value,
94
- };
95
- };
96
- export const transformContentfulMarks = (marks, useTailwindClasses) => {
97
- return marks
98
- .map((mark) => {
99
- switch (mark.type) {
100
- case 'bold':
101
- return useTailwindClasses ? 'font-bold' : mark.type;
102
- case 'italic':
103
- return useTailwindClasses ? 'italic' : mark.type;
104
- case 'underline':
105
- return useTailwindClasses ? 'underline' : mark.type;
106
- case 'code':
107
- return useTailwindClasses ? 'font-mono' : mark.type;
108
- default:
109
- return mark.type;
110
- }
111
- })
112
- .join(' ');
2
+ import { isObject } from '@ethlete/core';
3
+ export const isRichTextRootNode = (node) => {
4
+ return isObject(node) && 'nodeType' in node && node['nodeType'] === 'document';
113
5
  };
114
6
  export const translateContentfulNodeTypeToHtmlTag = (nodeType) => {
115
7
  switch (nodeType) {
@@ -166,25 +58,4 @@ export const translateContentfulNodeTypeToHtmlTag = (nodeType) => {
166
58
  return 'div';
167
59
  }
168
60
  };
169
- export const createContentfulResourceMap = (links) => {
170
- const resourceMap = {
171
- assetsBlock: createContentfulMap(links?.assets?.block),
172
- entriesInline: createContentfulMap(links?.entries?.inline),
173
- entriesBlock: createContentfulMap(links?.entries?.block),
174
- };
175
- return resourceMap;
176
- };
177
- export const createContentfulMap = (links) => {
178
- const assetMap = new Map();
179
- if (links) {
180
- for (const link of links) {
181
- if (!link?.sys?.id) {
182
- console.warn('Link has no sys.id property. Please include it inside your query.', link);
183
- continue;
184
- }
185
- assetMap.set(link.sys.id, link);
186
- }
187
- }
188
- return assetMap;
189
- };
190
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1yZW5kZXJlci9yaWNoLXRleHQtcmVuZGVyZXIudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVMsTUFBTSxFQUFVLE9BQU8sRUFBYyxNQUFNLDZCQUE2QixDQUFDO0FBRXpGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUdwRCxNQUFNLENBQUMsTUFBTSwwQ0FBMEMsR0FBRyxDQUFDLE9BRzFELEVBQUUsRUFBRTtJQUNILE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBRWpDLE1BQU0sUUFBUSxHQUE0QixFQUFFLENBQUM7SUFDN0MsTUFBTSxXQUFXLEdBQUcsMkJBQTJCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTVELDZCQUE2QixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUVuSCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxDQUMzQyxJQUEyQixFQUMzQixNQUE2QixFQUM3QixXQUFrQyxFQUNsQyxNQUF3QixFQUN4QixFQUFFO0lBQ0YsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBRTFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxHQUFHLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBRWhFLE1B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QUFDO1FBQ1YsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxtRUFBbUUsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDeEYsU0FBUztZQUNYLENBQUM7WUFFRCxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmxvY2ssIEJMT0NLUywgSW5saW5lLCBJTkxJTkVTLCBNYXJrLCBUZXh0IH0gZnJvbSAnQGNvbnRlbnRmdWwvcmljaC10ZXh0LXR5cGVzJztcbmltcG9ydCB7IENvbnRlbnRmdWxBc3NldCwgQ29udGVudGZ1bENvbmZpZywgQ29udGVudGZ1bEVudHJ5QmFzZSwgUmljaFRleHRSZXNwb25zZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IENvbnRlbnRmdWxJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4uL2ltYWdlJztcbmltcG9ydCB7IENvbnRlbnRmdWxSZXNvdXJjZU1hcCwgUmljaFRleHRSZW5kZXJDb21tYW5kIH0gZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudHlwZXMnO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUmVuZGVyQ29tbWFuZHNGcm9tQ29udGVudGZ1bFJpY2hUZXh0ID0gKG9wdGlvbnM6IHtcbiAgZGF0YTogUmljaFRleHRSZXNwb25zZTtcbiAgY29uZmlnOiBDb250ZW50ZnVsQ29uZmlnO1xufSkgPT4ge1xuICBjb25zdCB7IGRhdGEsIGNvbmZpZyB9ID0gb3B0aW9ucztcblxuICBjb25zdCBjb21tYW5kczogUmljaFRleHRSZW5kZXJDb21tYW5kW10gPSBbXTtcbiAgY29uc3QgcmVzb3VyY2VNYXAgPSBjcmVhdGVDb250ZW50ZnVsUmVzb3VyY2VNYXAoZGF0YS5saW5rcyk7XG5cbiAgY3JlYXRlQ29udGVudGZ1bFJlbmRlckNvbW1hbmQoZGF0YS5qc29uLCB7IGNoaWxkcmVuOiBjb21tYW5kcywgcGF5bG9hZDogZGF0YS5qc29uLm5vZGVUeXBlIH0sIHJlc291cmNlTWFwLCBjb25maWcpO1xuXG4gIHJldHVybiBjb21tYW5kcztcbn07XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVDb250ZW50ZnVsUmVuZGVyQ29tbWFuZCA9IChcbiAgbm9kZTogQmxvY2sgfCBJbmxpbmUgfCBUZXh0LFxuICBwYXJlbnQ6IFJpY2hUZXh0UmVuZGVyQ29tbWFuZCxcbiAgcmVzb3VyY2VNYXA6IENvbnRlbnRmdWxSZXNvdXJjZU1hcCxcbiAgY29uZmlnOiBDb250ZW50ZnVsQ29uZmlnLFxuKSA9PiB7XG4gIGNvbnN0IHsgbm9kZVR5cGUsIGRhdGE6IG5vZGVEYXRhIH0gPSBub2RlO1xuXG4gIGNvbnN0IHsgY2hpbGRyZW4sIG1hcmtzLCB2YWx1ZSB9ID0gZ2V0Q29udGVudGZ1bE5vZGVQcm9wcyhub2RlKTtcblxuICBjb25zdCBjb21tYW5kOiBSaWNoVGV4dFJlbmRlckNvbW1hbmQgPSB7XG4gICAgcGF5bG9hZDogdHJhbnNsYXRlQ29udGVudGZ1bE5vZGVUeXBlVG9IdG1sVGFnKG5vZGVUeXBlKSxcbiAgICBkYXRhOiB2YWx1ZSxcbiAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAuLi4obWFya3NcbiAgICAgICAgPyB7XG4gICAgICAgICAgICBjbGFzczogdHJhbnNmb3JtQ29udGVudGZ1bE1hcmtzKG1hcmtzLCBjb25maWcudXNlVGFpbHdpbmRDbGFzc2VzKSxcbiAgICAgICAgICB9XG4gICAgICAgIDoge30pLFxuICAgICAgLi4uKG5vZGVEYXRhWyd1cmknXSA/IHsgaHJlZjogbm9kZURhdGFbJ3VyaSddLCB0YXJnZXQ6ICdfYmxhbmsnIH0gOiB7fSksXG4gICAgfSxcbiAgICBjaGlsZHJlbjogW10sXG4gIH07XG5cbiAgY29uc3QgZW50cnlJZCA9IG5vZGVEYXRhWyd0YXJnZXQnXT8uc3lzPy5pZDtcblxuICBpZiAobm9kZVR5cGUgPT09IEJMT0NLUy5FTUJFRERFRF9BU1NFVCkge1xuICAgIGNvbnN0IGFzc2V0ID0gcmVzb3VyY2VNYXAuYXNzZXRzQmxvY2suZ2V0KGVudHJ5SWQpO1xuXG4gICAgaWYgKGFzc2V0KSB7XG4gICAgICBjb25zdCBpc0ltYWdlID0gYXNzZXQuY29udGVudFR5cGUuc3RhcnRzV2l0aCgnaW1hZ2UvJyk7XG4gICAgICBjb25zdCBpc1ZpZGVvID0gYXNzZXQuY29udGVudFR5cGUuc3RhcnRzV2l0aCgndmlkZW8vJyk7XG4gICAgICBjb25zdCBpc0F1ZGlvID0gYXNzZXQuY29udGVudFR5cGUuc3RhcnRzV2l0aCgnYXVkaW8vJyk7XG5cbiAgICAgIGNvbW1hbmQuZGF0YSA9IGFzc2V0O1xuXG4gICAgICBpZiAoaXNJbWFnZSkge1xuICAgICAgICBjb21tYW5kLnBheWxvYWQgPSBjb25maWcuY29tcG9uZW50cy5pbWFnZTtcbiAgICAgIH0gZWxzZSBpZiAoaXNWaWRlbykge1xuICAgICAgICBjb21tYW5kLnBheWxvYWQgPSBjb25maWcuY29tcG9uZW50cy52aWRlbztcbiAgICAgIH0gZWxzZSBpZiAoaXNBdWRpbykge1xuICAgICAgICBjb21tYW5kLnBheWxvYWQgPSBjb25maWcuY29tcG9uZW50cy5hdWRpbztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbW1hbmQucGF5bG9hZCA9IGNvbmZpZy5jb21wb25lbnRzLmZpbGU7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybihgTm8gYXNzZXQgZm91bmQgZm9yIGVudHJ5IGlkIFwiJHtlbnRyeUlkfVwiIWAsIG5vZGVEYXRhKTtcbiAgICB9XG4gIH0gZWxzZSBpZiAobm9kZVR5cGUgPT09IEJMT0NLUy5FTUJFRERFRF9FTlRSWSB8fCBub2RlVHlwZSA9PT0gSU5MSU5FUy5FTUJFRERFRF9FTlRSWSkge1xuICAgIGNvbnN0IGVudHJ5ID0gcmVzb3VyY2VNYXAuZW50cmllc0Jsb2NrLmdldChlbnRyeUlkKSA/PyByZXNvdXJjZU1hcC5lbnRyaWVzSW5saW5lLmdldChlbnRyeUlkKTtcblxuICAgIGlmIChlbnRyeSkge1xuICAgICAgY29uc3QgdHlwZSA9IGVudHJ5Py5fX3R5cGVuYW1lID8/ICdFVF9VTktOT1dOJztcblxuICAgICAgLy8gXCJJbWFnZVwiIGlzIGEgc3BlY2lhbCB3cmFwcGVyIGNvbnRlbnQgbW9kZWwgZm9yIGNvbnRlbnRmdWwgYXNzZXRzLlxuICAgICAgLy8gSXQgbXVzdCBiZSBjcmVhdGVkIGJ5IHRoZSB1c2VyLlxuICAgICAgY29uc3QgY29tcG9uZW50ID0gdHlwZSA9PT0gJ0ltYWdlJyA/IENvbnRlbnRmdWxJbWFnZUNvbXBvbmVudCA6IGNvbmZpZy5jdXN0b21Db21wb25lbnRzPy5bdHlwZV07XG5cbiAgICAgIGlmIChjb21wb25lbnQpIHtcbiAgICAgICAgY29tbWFuZC5wYXlsb2FkID0gY29tcG9uZW50O1xuICAgICAgICBjb21tYW5kLmRhdGEgPSBlbnRyeTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbW1hbmQuZGF0YSA9IGBFUlJPUjogTm8gY29tcG9uZW50IGZvdW5kIGZvciBlbWJlZGRlZCBlbnRyeSBcIiR7dHlwZX1cIiBhcyBcIiR7bm9kZVR5cGV9XCIhYDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKGBObyBlbnRyeSBmb3VuZCBmb3IgZW50cnkgaWQgXCIke2VudHJ5SWR9XCIhYCwgbm9kZURhdGEpO1xuICAgIH1cbiAgfVxuXG4gIGlmIChjaGlsZHJlbiAmJiAoY2hpbGRyZW4ubGVuZ3RoICE9PSAxIHx8IGNoaWxkcmVuWzBdPy5ub2RlVHlwZSAhPT0gJ3RleHQnKSkge1xuICAgIGNoaWxkcmVuLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICBjcmVhdGVDb250ZW50ZnVsUmVuZGVyQ29tbWFuZChjaGlsZCwgY29tbWFuZCwgcmVzb3VyY2VNYXAsIGNvbmZpZyk7XG4gICAgfSk7XG4gIH1cblxuICBwYXJlbnQuY2hpbGRyZW4ucHVzaChjb21tYW5kKTtcblxuICByZXR1cm4gY29tbWFuZDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDb250ZW50ZnVsTm9kZVByb3BzID0gKG5vZGU6IEJsb2NrIHwgSW5saW5lIHwgVGV4dCkgPT4ge1xuICBjb25zdCBjaGlsZHJlbiA9ICdjb250ZW50JyBpbiBub2RlID8gbm9kZS5jb250ZW50IDogbnVsbDtcbiAgbGV0IG1hcmtzOiBNYXJrW10gfCBudWxsID0gbnVsbDtcbiAgbGV0IHZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBpZiAoY2hpbGRyZW4gJiYgY2hpbGRyZW4ubGVuZ3RoID09PSAxICYmIGNoaWxkcmVuWzBdPy5ub2RlVHlwZSA9PT0gJ3RleHQnKSB7XG4gICAgbWFya3MgPSBjaGlsZHJlblswXS5tYXJrcz8ubGVuZ3RoID8gY2hpbGRyZW5bMF0ubWFya3MgOiBudWxsO1xuICAgIHZhbHVlID0gY2hpbGRyZW5bMF0udmFsdWU7XG4gIH0gZWxzZSB7XG4gICAgbWFya3MgPSAnbWFya3MnIGluIG5vZGUgPyAobm9kZS5tYXJrcz8ubGVuZ3RoID8gbm9kZS5tYXJrcyA6IG51bGwpIDogbnVsbDtcbiAgICB2YWx1ZSA9ICd2YWx1ZScgaW4gbm9kZSA/IG5vZGUudmFsdWUgOiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBjaGlsZHJlbixcbiAgICBtYXJrcyxcbiAgICB2YWx1ZSxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCB0cmFuc2Zvcm1Db250ZW50ZnVsTWFya3MgPSAobWFya3M6IE1hcmtbXSwgdXNlVGFpbHdpbmRDbGFzc2VzOiBib29sZWFuKSA9PiB7XG4gIHJldHVybiBtYXJrc1xuICAgIC5tYXAoKG1hcmspID0+IHtcbiAgICAgIHN3aXRjaCAobWFyay50eXBlKSB7XG4gICAgICAgIGNhc2UgJ2JvbGQnOlxuICAgICAgICAgIHJldHVybiB1c2VUYWlsd2luZENsYXNzZXMgPyAnZm9udC1ib2xkJyA6IG1hcmsudHlwZTtcbiAgICAgICAgY2FzZSAnaXRhbGljJzpcbiAgICAgICAgICByZXR1cm4gdXNlVGFpbHdpbmRDbGFzc2VzID8gJ2l0YWxpYycgOiBtYXJrLnR5cGU7XG4gICAgICAgIGNhc2UgJ3VuZGVybGluZSc6XG4gICAgICAgICAgcmV0dXJuIHVzZVRhaWx3aW5kQ2xhc3NlcyA/ICd1bmRlcmxpbmUnIDogbWFyay50eXBlO1xuICAgICAgICBjYXNlICdjb2RlJzpcbiAgICAgICAgICByZXR1cm4gdXNlVGFpbHdpbmRDbGFzc2VzID8gJ2ZvbnQtbW9ubycgOiBtYXJrLnR5cGU7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIG1hcmsudHlwZTtcbiAgICAgIH1cbiAgICB9KVxuICAgIC5qb2luKCcgJyk7XG59O1xuXG5leHBvcnQgY29uc3QgdHJhbnNsYXRlQ29udGVudGZ1bE5vZGVUeXBlVG9IdG1sVGFnID0gKG5vZGVUeXBlOiAndGV4dCcgfCBCTE9DS1MgfCBJTkxJTkVTKSA9PiB7XG4gIHN3aXRjaCAobm9kZVR5cGUpIHtcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzE6XG4gICAgICByZXR1cm4gJ2gxJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzI6XG4gICAgICByZXR1cm4gJ2gyJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzM6XG4gICAgICByZXR1cm4gJ2gzJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzQ6XG4gICAgICByZXR1cm4gJ2g0JztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzU6XG4gICAgICByZXR1cm4gJ2g1JztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzY6XG4gICAgICByZXR1cm4gJ2g2JztcbiAgICBjYXNlIEJMT0NLUy5QQVJBR1JBUEg6XG4gICAgICByZXR1cm4gJ3AnO1xuICAgIGNhc2UgQkxPQ0tTLlVMX0xJU1Q6XG4gICAgICByZXR1cm4gJ3VsJztcbiAgICBjYXNlIEJMT0NLUy5PTF9MSVNUOlxuICAgICAgcmV0dXJuICdvbCc7XG4gICAgY2FzZSBCTE9DS1MuTElTVF9JVEVNOlxuICAgICAgcmV0dXJuICdsaSc7XG4gICAgY2FzZSBCTE9DS1MuSFI6XG4gICAgICByZXR1cm4gJ2hyJztcbiAgICBjYXNlIEJMT0NLUy5RVU9URTpcbiAgICAgIHJldHVybiAnYmxvY2txdW90ZSc7XG4gICAgY2FzZSBCTE9DS1MuVEFCTEU6XG4gICAgICByZXR1cm4gJ3RhYmxlJztcbiAgICBjYXNlIEJMT0NLUy5UQUJMRV9ST1c6XG4gICAgICByZXR1cm4gJ3RyJztcbiAgICBjYXNlIEJMT0NLUy5UQUJMRV9DRUxMOlxuICAgICAgcmV0dXJuICd0ZCc7XG4gICAgY2FzZSBCTE9DS1MuVEFCTEVfSEVBREVSX0NFTEw6XG4gICAgICByZXR1cm4gJ3RoJztcbiAgICBjYXNlIEJMT0NLUy5FTUJFRERFRF9BU1NFVDpcbiAgICAgIHJldHVybiAnZGl2JztcblxuICAgIGNhc2UgSU5MSU5FUy5IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuICAgIGNhc2UgSU5MSU5FUy5FTlRSWV9IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuICAgIGNhc2UgSU5MSU5FUy5BU1NFVF9IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuXG4gICAgY2FzZSAndGV4dCc6XG4gICAgICByZXR1cm4gJ3NwYW4nO1xuXG4gICAgLy8gV2lsbCBiZSBpZ25vcmVkIGJ5IHRoZSByZW5kZXJlclxuICAgIGNhc2UgJ2RvY3VtZW50JzpcbiAgICAgIHJldHVybiAnZG9jdW1lbnQnO1xuXG4gICAgY2FzZSBCTE9DS1MuRU1CRURERURfRU5UUlk6XG4gICAgICByZXR1cm4gJ2Rpdic7XG4gICAgY2FzZSBJTkxJTkVTLkVNQkVEREVEX0VOVFJZOlxuICAgICAgcmV0dXJuICdkaXYnO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAnZGl2JztcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNvbnRlbnRmdWxSZXNvdXJjZU1hcCA9IChsaW5rczogUmljaFRleHRSZXNwb25zZVsnbGlua3MnXSk6IENvbnRlbnRmdWxSZXNvdXJjZU1hcCA9PiB7XG4gIGNvbnN0IHJlc291cmNlTWFwID0ge1xuICAgIGFzc2V0c0Jsb2NrOiBjcmVhdGVDb250ZW50ZnVsTWFwPENvbnRlbnRmdWxBc3NldD4obGlua3M/LmFzc2V0cz8uYmxvY2spLFxuICAgIGVudHJpZXNJbmxpbmU6IGNyZWF0ZUNvbnRlbnRmdWxNYXAobGlua3M/LmVudHJpZXM/LmlubGluZSksXG4gICAgZW50cmllc0Jsb2NrOiBjcmVhdGVDb250ZW50ZnVsTWFwKGxpbmtzPy5lbnRyaWVzPy5ibG9jayksXG4gIH0gYXMgY29uc3Q7XG5cbiAgcmV0dXJuIHJlc291cmNlTWFwO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNvbnRlbnRmdWxNYXAgPSA8VCBleHRlbmRzIENvbnRlbnRmdWxFbnRyeUJhc2U+KGxpbmtzOiBBcnJheTxUPiB8IG51bGwgfCB1bmRlZmluZWQpID0+IHtcbiAgY29uc3QgYXNzZXRNYXAgPSBuZXcgTWFwPHN0cmluZywgVD4oKTtcblxuICBpZiAobGlua3MpIHtcbiAgICBmb3IgKGNvbnN0IGxpbmsgb2YgbGlua3MpIHtcbiAgICAgIGlmICghbGluaz8uc3lzPy5pZCkge1xuICAgICAgICBjb25zb2xlLndhcm4oJ0xpbmsgaGFzIG5vIHN5cy5pZCBwcm9wZXJ0eS4gUGxlYXNlIGluY2x1ZGUgaXQgaW5zaWRlIHlvdXIgcXVlcnkuJywgbGluayk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBhc3NldE1hcC5zZXQobGluay5zeXMuaWQsIGxpbmspO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBhc3NldE1hcDtcbn07XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1yZW5kZXJlci9yaWNoLXRleHQtcmVuZGVyZXIudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHekMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxJQUFhLEVBQTRCLEVBQUU7SUFDNUUsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksVUFBVSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssVUFBVSxDQUFDO0FBQ2pGLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHLENBQUMsUUFBbUMsRUFBRSxFQUFFO0lBQzFGLFFBQVEsUUFBUSxFQUFFLENBQUM7UUFDakIsS0FBSyxNQUFNLENBQUMsU0FBUztZQUNuQixPQUFPLElBQUksQ0FBQztRQUNkLEtBQUssTUFBTSxDQUFDLFNBQVM7WUFDbkIsT0FBTyxJQUFJLENBQUM7UUFDZCxLQUFLLE1BQU0sQ0FBQyxTQUFTO1lBQ25CLE9BQU8sSUFBSSxDQUFDO1FBQ2QsS0FBSyxNQUFNLENBQUMsU0FBUztZQUNuQixPQUFPLElBQUksQ0FBQztRQUNkLEtBQUssTUFBTSxDQUFDLFNBQVM7WUFDbkIsT0FBTyxJQUFJLENBQUM7UUFDZCxLQUFLLE1BQU0sQ0FBQyxTQUFTO1lBQ25CLE9BQU8sSUFBSSxDQUFDO1FBQ2QsS0FBSyxNQUFNLENBQUMsU0FBUztZQUNuQixPQUFPLEdBQUcsQ0FBQztRQUNiLEtBQUssTUFBTSxDQUFDLE9BQU87WUFDakIsT0FBTyxJQUFJLENBQUM7UUFDZCxLQUFLLE1BQU0sQ0FBQyxPQUFPO1lBQ2pCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsS0FBSyxNQUFNLENBQUMsU0FBUztZQUNuQixPQUFPLElBQUksQ0FBQztRQUNkLEtBQUssTUFBTSxDQUFDLEVBQUU7WUFDWixPQUFPLElBQUksQ0FBQztRQUNkLEtBQUssTUFBTSxDQUFDLEtBQUs7WUFDZixPQUFPLFlBQVksQ0FBQztRQUN0QixLQUFLLE1BQU0sQ0FBQyxLQUFLO1lBQ2YsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxNQUFNLENBQUMsU0FBUztZQUNuQixPQUFPLElBQUksQ0FBQztRQUNkLEtBQUssTUFBTSxDQUFDLFVBQVU7WUFDcEIsT0FBTyxJQUFJLENBQUM7UUFDZCxLQUFLLE1BQU0sQ0FBQyxpQkFBaUI7WUFDM0IsT0FBTyxJQUFJLENBQUM7UUFDZCxLQUFLLE1BQU0sQ0FBQyxjQUFjO1lBQ3hCLE9BQU8sS0FBSyxDQUFDO1FBRWYsS0FBSyxPQUFPLENBQUMsU0FBUztZQUNwQixPQUFPLEdBQUcsQ0FBQztRQUNiLEtBQUssT0FBTyxDQUFDLGVBQWU7WUFDMUIsT0FBTyxHQUFHLENBQUM7UUFDYixLQUFLLE9BQU8sQ0FBQyxlQUFlO1lBQzFCLE9BQU8sR0FBRyxDQUFDO1FBRWIsS0FBSyxNQUFNO1lBQ1QsT0FBTyxNQUFNLENBQUM7UUFFaEIsa0NBQWtDO1FBQ2xDLEtBQUssVUFBVTtZQUNiLE9BQU8sVUFBVSxDQUFDO1FBRXBCLEtBQUssTUFBTSxDQUFDLGNBQWM7WUFDeEIsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLE9BQU8sQ0FBQyxjQUFjO1lBQ3pCLE9BQU8sS0FBSyxDQUFDO1FBRWY7WUFDRSxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0FBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQkxPQ0tTLCBJTkxJTkVTIH0gZnJvbSAnQGNvbnRlbnRmdWwvcmljaC10ZXh0LXR5cGVzJztcbmltcG9ydCB7IGlzT2JqZWN0IH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBSaWNoVGV4dFJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgaXNSaWNoVGV4dFJvb3ROb2RlID0gKG5vZGU6IHVua25vd24pOiBub2RlIGlzIFJpY2hUZXh0UmVzcG9uc2UgPT4ge1xuICByZXR1cm4gaXNPYmplY3Qobm9kZSkgJiYgJ25vZGVUeXBlJyBpbiBub2RlICYmIG5vZGVbJ25vZGVUeXBlJ10gPT09ICdkb2N1bWVudCc7XG59O1xuXG5leHBvcnQgY29uc3QgdHJhbnNsYXRlQ29udGVudGZ1bE5vZGVUeXBlVG9IdG1sVGFnID0gKG5vZGVUeXBlOiAndGV4dCcgfCBCTE9DS1MgfCBJTkxJTkVTKSA9PiB7XG4gIHN3aXRjaCAobm9kZVR5cGUpIHtcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzE6XG4gICAgICByZXR1cm4gJ2gxJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzI6XG4gICAgICByZXR1cm4gJ2gyJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzM6XG4gICAgICByZXR1cm4gJ2gzJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzQ6XG4gICAgICByZXR1cm4gJ2g0JztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzU6XG4gICAgICByZXR1cm4gJ2g1JztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzY6XG4gICAgICByZXR1cm4gJ2g2JztcbiAgICBjYXNlIEJMT0NLUy5QQVJBR1JBUEg6XG4gICAgICByZXR1cm4gJ3AnO1xuICAgIGNhc2UgQkxPQ0tTLlVMX0xJU1Q6XG4gICAgICByZXR1cm4gJ3VsJztcbiAgICBjYXNlIEJMT0NLUy5PTF9MSVNUOlxuICAgICAgcmV0dXJuICdvbCc7XG4gICAgY2FzZSBCTE9DS1MuTElTVF9JVEVNOlxuICAgICAgcmV0dXJuICdsaSc7XG4gICAgY2FzZSBCTE9DS1MuSFI6XG4gICAgICByZXR1cm4gJ2hyJztcbiAgICBjYXNlIEJMT0NLUy5RVU9URTpcbiAgICAgIHJldHVybiAnYmxvY2txdW90ZSc7XG4gICAgY2FzZSBCTE9DS1MuVEFCTEU6XG4gICAgICByZXR1cm4gJ3RhYmxlJztcbiAgICBjYXNlIEJMT0NLUy5UQUJMRV9ST1c6XG4gICAgICByZXR1cm4gJ3RyJztcbiAgICBjYXNlIEJMT0NLUy5UQUJMRV9DRUxMOlxuICAgICAgcmV0dXJuICd0ZCc7XG4gICAgY2FzZSBCTE9DS1MuVEFCTEVfSEVBREVSX0NFTEw6XG4gICAgICByZXR1cm4gJ3RoJztcbiAgICBjYXNlIEJMT0NLUy5FTUJFRERFRF9BU1NFVDpcbiAgICAgIHJldHVybiAnZGl2JztcblxuICAgIGNhc2UgSU5MSU5FUy5IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuICAgIGNhc2UgSU5MSU5FUy5FTlRSWV9IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuICAgIGNhc2UgSU5MSU5FUy5BU1NFVF9IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuXG4gICAgY2FzZSAndGV4dCc6XG4gICAgICByZXR1cm4gJ3NwYW4nO1xuXG4gICAgLy8gV2lsbCBiZSBpZ25vcmVkIGJ5IHRoZSByZW5kZXJlclxuICAgIGNhc2UgJ2RvY3VtZW50JzpcbiAgICAgIHJldHVybiAnZG9jdW1lbnQnO1xuXG4gICAgY2FzZSBCTE9DS1MuRU1CRURERURfRU5UUlk6XG4gICAgICByZXR1cm4gJ2Rpdic7XG4gICAgY2FzZSBJTkxJTkVTLkVNQkVEREVEX0VOVFJZOlxuICAgICAgcmV0dXJuICdkaXYnO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAnZGl2JztcbiAgfVxufTtcbiJdfQ==
@@ -1,49 +1,28 @@
1
1
  import { NgClass } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, inject } from '@angular/core';
3
- import { RICH_TEXT_RENDERER_COMPONENT_DATA } from '../rich-text-renderer';
2
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation, input } from '@angular/core';
4
3
  import * as i0 from "@angular/core";
5
4
  export class ContentfulVideoComponent {
6
5
  constructor() {
7
- this._richTextData = inject(RICH_TEXT_RENDERER_COMPONENT_DATA, { optional: true });
8
- this._data = null;
9
- this.videoClass = null;
6
+ this.asset = input.required();
7
+ this.videoClass = input(null);
10
8
  }
11
- get data() {
12
- return this._data;
13
- }
14
- set data(v) {
15
- if (v && !v.contentType) {
16
- this._data = null;
17
- console.warn('The provided asset is invalid', v);
18
- return;
19
- }
20
- if (v && !v.contentType.startsWith('video/')) {
21
- throw new Error('The provided asset is not an video');
22
- }
23
- this._data = v ?? null;
24
- }
25
- ngOnInit() {
26
- if (this._richTextData && !this.data) {
27
- this.data = this._richTextData;
28
- }
29
- }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ContentfulVideoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: ContentfulVideoComponent, isStandalone: true, selector: "et-contentful-video", inputs: { data: "data", videoClass: "videoClass" }, ngImport: i0, template: `
32
- @if (data) {
33
- <video [ngClass]="videoClass" controls>
34
- <source src="{{ data.url }}" type="{{ data.contentType }}" />
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ContentfulVideoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: ContentfulVideoComponent, isStandalone: true, selector: "et-contentful-video", inputs: { asset: { classPropertyName: "asset", publicName: "asset", isSignal: true, isRequired: true, transformFunction: null }, videoClass: { classPropertyName: "videoClass", publicName: "videoClass", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
11
+ @if (asset(); as data) {
12
+ <video [ngClass]="videoClass()" controls>
13
+ <source src="{{ data.fields.file.url }}" type="{{ data.fields.file.contentType }}" />
35
14
  </video>
36
15
  }
37
16
  `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
38
17
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ContentfulVideoComponent, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ContentfulVideoComponent, decorators: [{
40
19
  type: Component,
41
20
  args: [{
42
21
  selector: 'et-contentful-video',
43
22
  template: `
44
- @if (data) {
45
- <video [ngClass]="videoClass" controls>
46
- <source src="{{ data.url }}" type="{{ data.contentType }}" />
23
+ @if (asset(); as data) {
24
+ <video [ngClass]="videoClass()" controls>
25
+ <source src="{{ data.fields.file.url }}" type="{{ data.fields.file.contentType }}" />
47
26
  </video>
48
27
  }
49
28
  `,
@@ -52,9 +31,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
52
31
  standalone: true,
53
32
  imports: [NgClass],
54
33
  }]
55
- }], propDecorators: { data: [{
56
- type: Input
57
- }], videoClass: [{
58
- type: Input
59
- }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC12aWRlby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3ZpZGVvL2NvbnRlbnRmdWwtdmlkZW8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHN0csT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBZ0IxRSxNQUFNLE9BQU8sd0JBQXdCO0lBZHJDO1FBZVUsa0JBQWEsR0FBRyxNQUFNLENBQWtCLGlDQUFpQyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFxQi9GLFVBQUssR0FBMkIsSUFBSSxDQUFDO1FBRzdDLGVBQVUsR0FBZ0IsSUFBSSxDQUFDO0tBT2hDO0lBN0JDLElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxJQUFJLENBQUMsQ0FBcUM7UUFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFFbEIsT0FBTyxDQUFDLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUVqRCxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM3QyxNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUN6QixDQUFDO0lBTUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7OEdBL0JVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLG1JQVp6Qjs7Ozs7O0dBTVQsNERBSVMsT0FBTzs7MkZBRU4sd0JBQXdCO2tCQWRwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRTs7Ozs7O0dBTVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUNuQjs4QkFLSyxJQUFJO3NCQURQLEtBQUs7Z0JBc0JOLFVBQVU7c0JBRFQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDbGFzc1R5cGUgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IENvbnRlbnRmdWxBc3NldCB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IFJJQ0hfVEVYVF9SRU5ERVJFUl9DT01QT05FTlRfREFUQSB9IGZyb20gJy4uL3JpY2gtdGV4dC1yZW5kZXJlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V0LWNvbnRlbnRmdWwtdmlkZW8nLFxuICB0ZW1wbGF0ZTogYFxuICAgIEBpZiAoZGF0YSkge1xuICAgICAgPHZpZGVvIFtuZ0NsYXNzXT1cInZpZGVvQ2xhc3NcIiBjb250cm9scz5cbiAgICAgICAgPHNvdXJjZSBzcmM9XCJ7eyBkYXRhLnVybCB9fVwiIHR5cGU9XCJ7eyBkYXRhLmNvbnRlbnRUeXBlIH19XCIgLz5cbiAgICAgIDwvdmlkZW8+XG4gICAgfVxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nQ2xhc3NdLFxufSlcbmV4cG9ydCBjbGFzcyBDb250ZW50ZnVsVmlkZW9Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcml2YXRlIF9yaWNoVGV4dERhdGEgPSBpbmplY3Q8Q29udGVudGZ1bEFzc2V0PihSSUNIX1RFWFRfUkVOREVSRVJfQ09NUE9ORU5UX0RBVEEsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgQElucHV0KClcbiAgZ2V0IGRhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGE7XG4gIH1cbiAgc2V0IGRhdGEodjogQ29udGVudGZ1bEFzc2V0IHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIGlmICh2ICYmICF2LmNvbnRlbnRUeXBlKSB7XG4gICAgICB0aGlzLl9kYXRhID0gbnVsbDtcblxuICAgICAgY29uc29sZS53YXJuKCdUaGUgcHJvdmlkZWQgYXNzZXQgaXMgaW52YWxpZCcsIHYpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHYgJiYgIXYuY29udGVudFR5cGUuc3RhcnRzV2l0aCgndmlkZW8vJykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIHByb3ZpZGVkIGFzc2V0IGlzIG5vdCBhbiB2aWRlbycpO1xuICAgIH1cblxuICAgIHRoaXMuX2RhdGEgPSB2ID8/IG51bGw7XG4gIH1cbiAgcHJpdmF0ZSBfZGF0YTogQ29udGVudGZ1bEFzc2V0IHwgbnVsbCA9IG51bGw7XG5cbiAgQElucHV0KClcbiAgdmlkZW9DbGFzczogTmdDbGFzc1R5cGUgPSBudWxsO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9yaWNoVGV4dERhdGEgJiYgIXRoaXMuZGF0YSkge1xuICAgICAgdGhpcy5kYXRhID0gdGhpcy5fcmljaFRleHREYXRhO1xuICAgIH1cbiAgfVxufVxuIl19
34
+ }] });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC12aWRlby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3ZpZGVvL2NvbnRlbnRmdWwtdmlkZW8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFrQjdGLE1BQU0sT0FBTyx3QkFBd0I7SUFkckM7UUFlRSxVQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBc0MsQ0FBQztRQUM3RCxlQUFVLEdBQUcsS0FBSyxDQUFjLElBQUksQ0FBQyxDQUFDO0tBQ3ZDOzhHQUhZLHdCQUF3QjtrR0FBeEIsd0JBQXdCLHlWQVp6Qjs7Ozs7O0dBTVQsNERBSVMsT0FBTzs7MkZBRU4sd0JBQXdCO2tCQWRwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRTs7Ozs7O0dBTVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NsYXNzVHlwZSB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEFzc2V0IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1jb250ZW50ZnVsLXZpZGVvJyxcbiAgdGVtcGxhdGU6IGBcbiAgICBAaWYgKGFzc2V0KCk7IGFzIGRhdGEpIHtcbiAgICAgIDx2aWRlbyBbbmdDbGFzc109XCJ2aWRlb0NsYXNzKClcIiBjb250cm9scz5cbiAgICAgICAgPHNvdXJjZSBzcmM9XCJ7eyBkYXRhLmZpZWxkcy5maWxlLnVybCB9fVwiIHR5cGU9XCJ7eyBkYXRhLmZpZWxkcy5maWxlLmNvbnRlbnRUeXBlIH19XCIgLz5cbiAgICAgIDwvdmlkZW8+XG4gICAgfVxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nQ2xhc3NdLFxufSlcbmV4cG9ydCBjbGFzcyBDb250ZW50ZnVsVmlkZW9Db21wb25lbnQge1xuICBhc3NldCA9IGlucHV0LnJlcXVpcmVkPENvbnRlbnRmdWxBc3NldCB8IG51bGwgfCB1bmRlZmluZWQ+KCk7XG4gIHZpZGVvQ2xhc3MgPSBpbnB1dDxOZ0NsYXNzVHlwZT4obnVsbCk7XG59XG4iXX0=
@@ -13,20 +13,4 @@ export const GQL_FRAGMENT_CONTENTFUL_ASSET = gql `
13
13
  size
14
14
  }
15
15
  `;
16
- export const GQL_FRAGMENT_CONTENTFUL_IMAGE = gql `
17
- fragment ImageData on Image {
18
- sys {
19
- id
20
- }
21
- asset {
22
- ...AssetData
23
- }
24
- alt
25
- caption
26
- resizeBehavior
27
- focusArea
28
- quality
29
- __typename
30
- }
31
- `;
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuZnJhZ21lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb250ZW50ZnVsL3NyYy9saWIvZ3FsL2Fzc2V0LmZyYWdtZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7O0NBYS9DLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7OztDQWUvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ3FsIH0gZnJvbSAnQGV0aGxldGUvcXVlcnknO1xuXG5leHBvcnQgY29uc3QgR1FMX0ZSQUdNRU5UX0NPTlRFTlRGVUxfQVNTRVQgPSBncWxgXG4gIGZyYWdtZW50IEFzc2V0RGF0YSBvbiBBc3NldCB7XG4gICAgc3lzIHtcbiAgICAgIGlkXG4gICAgfVxuICAgIHVybFxuICAgIHRpdGxlXG4gICAgd2lkdGhcbiAgICBoZWlnaHRcbiAgICBkZXNjcmlwdGlvblxuICAgIGNvbnRlbnRUeXBlXG4gICAgc2l6ZVxuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgR1FMX0ZSQUdNRU5UX0NPTlRFTlRGVUxfSU1BR0UgPSBncWxgXG4gIGZyYWdtZW50IEltYWdlRGF0YSBvbiBJbWFnZSB7XG4gICAgc3lzIHtcbiAgICAgIGlkXG4gICAgfVxuICAgIGFzc2V0IHtcbiAgICAgIC4uLkFzc2V0RGF0YVxuICAgIH1cbiAgICBhbHRcbiAgICBjYXB0aW9uXG4gICAgcmVzaXplQmVoYXZpb3JcbiAgICBmb2N1c0FyZWFcbiAgICBxdWFsaXR5XG4gICAgX190eXBlbmFtZVxuICB9XG5gO1xuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuZnJhZ21lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb250ZW50ZnVsL3NyYy9saWIvZ3FsL2Fzc2V0LmZyYWdtZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7O0NBYS9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBncWwgfSBmcm9tICdAZXRobGV0ZS9xdWVyeSc7XG5cbmV4cG9ydCBjb25zdCBHUUxfRlJBR01FTlRfQ09OVEVOVEZVTF9BU1NFVCA9IGdxbGBcbiAgZnJhZ21lbnQgQXNzZXREYXRhIG9uIEFzc2V0IHtcbiAgICBzeXMge1xuICAgICAgaWRcbiAgICB9XG4gICAgdXJsXG4gICAgdGl0bGVcbiAgICB3aWR0aFxuICAgIGhlaWdodFxuICAgIGRlc2NyaXB0aW9uXG4gICAgY29udGVudFR5cGVcbiAgICBzaXplXG4gIH1cbmA7XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL3R5cGVzL2NvbnRlbnRmdWwudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IERvY3VtZW50IGFzIENvbnRlbnRmdWxEb2N1bWVudCB9IGZyb20gJ0Bjb250ZW50ZnVsL3JpY2gtdGV4dC10eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudGZ1bEFzc2V0IHtcbiAgc3lzOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgfTtcbiAgdGl0bGU6IHN0cmluZztcbiAgY29udGVudFR5cGU6IHN0cmluZztcbiAgdXJsOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICB3aWR0aDogbnVtYmVyIHwgbnVsbDtcbiAgaGVpZ2h0OiBudW1iZXIgfCBudWxsO1xuICBzaXplOiBudW1iZXI7XG4gIHByaW9yaXR5PzogYm9vbGVhbjtcbiAgX190eXBlbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBDb250ZW50ZnVsSW1hZ2VSZXNpemVCZWhhdmlvciA9ICdwYWQnIHwgJ2Nyb3AnIHwgJ2ZpbGwnIHwgJ3NjYWxlJyB8ICd0aHVtYicgfCAnZml0JztcbmV4cG9ydCB0eXBlIENvbnRlbnRmdWxJbWFnZUZvY3VzQXJlYSA9XG4gIHwgJ3RvcCdcbiAgfCAnYm90dG9tJ1xuICB8ICdsZWZ0J1xuICB8ICdyaWdodCdcbiAgfCAnY2VudGVyJ1xuICB8ICd0b3BfbGVmdCdcbiAgfCAndG9wX3JpZ2h0J1xuICB8ICdib3R0b21fbGVmdCdcbiAgfCAnYm90dG9tX3JpZ2h0J1xuICB8ICdmYWNlJ1xuICB8ICdmYWNlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudGZ1bEltYWdlIHtcbiAgc3lzOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgfTtcbiAgYXNzZXQ6IENvbnRlbnRmdWxBc3NldDtcbiAgYWx0OiBzdHJpbmcgfCBudWxsO1xuICBjYXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICByZXNpemVCZWhhdmlvcjogQ29udGVudGZ1bEltYWdlUmVzaXplQmVoYXZpb3IgfCBudWxsO1xuICBmb2N1c0FyZWE6IENvbnRlbnRmdWxJbWFnZUZvY3VzQXJlYSB8IG51bGw7XG4gIHF1YWxpdHk6IG51bWJlcjtcbiAgX190eXBlbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJpY2hUZXh0UmVzcG9uc2Uge1xuICBqc29uOiBDb250ZW50ZnVsRG9jdW1lbnQ7XG4gIGxpbmtzOiB7XG4gICAgYXNzZXRzPzoge1xuICAgICAgYmxvY2s/OiBBcnJheTxDb250ZW50ZnVsQXNzZXQ+O1xuICAgICAgaW5saW5lPzogQXJyYXk8Q29udGVudGZ1bEFzc2V0PjtcbiAgICB9O1xuICAgIGVudHJpZXM/OiB7XG4gICAgICBibG9jaz86IEFycmF5PENvbnRlbnRmdWxFbnRyeUJhc2U+O1xuICAgICAgaW5saW5lPzogQXJyYXk8Q29udGVudGZ1bEVudHJ5QmFzZT47XG4gICAgfTtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW50ZnVsRW50cnlCYXNlIHtcbiAgc3lzOiB7IGlkOiBzdHJpbmcgfTtcbiAgX190eXBlbmFtZTogc3RyaW5nO1xufVxuXG50eXBlIENvbXBvbmVudExpa2VXaXRoQXNzZXQgPSBDb21wb25lbnRUeXBlPHsgZGF0YTogQ29udGVudGZ1bEFzc2V0IHwgQ29udGVudGZ1bEltYWdlIHwgbnVsbCB8IHVuZGVmaW5lZCB9PjtcblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW50ZnVsQXNzZXRDb21wb25lbnRzIHtcbiAgZmlsZTogQ29tcG9uZW50TGlrZVdpdGhBc3NldDtcbiAgaW1hZ2U6IENvbXBvbmVudExpa2VXaXRoQXNzZXQ7XG4gIHZpZGVvOiBDb21wb25lbnRMaWtlV2l0aEFzc2V0O1xuICBhdWRpbzogQ29tcG9uZW50TGlrZVdpdGhBc3NldDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW50ZnVsQ29uZmlnIHtcbiAgLyoqXG4gICAqIERlZmF1bHQgY29tcG9uZW50cyBmb3IgcmVuZGVyaW5nIGNvbnRlbnRmdWwgYXNzZXRzXG4gICAqL1xuICBjb21wb25lbnRzOiBDb250ZW50ZnVsQXNzZXRDb21wb25lbnRzO1xuXG4gIC8qKlxuICAgKiBDb21wb25lbnQgZm9yIHJlbmRlcmluZyBlbWJlZGRlZCBlbnRyaWVzXG4gICAqL1xuICBjdXN0b21Db21wb25lbnRzOiBSZWNvcmQ8c3RyaW5nLCBDb21wb25lbnRUeXBlPHVua25vd24+PjtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgY29udGVudGZ1bCByaWNoIHRleHQgcmVuZGVyZXIgc2hvdWxkIHJlbmRlciB0aGUgY29udGVudGZ1bCByaWNoIHRleHQgd2l0aCB0YWlsd2luZCBjc3MgY2xhc3Nlc1xuICAgKi9cbiAgdXNlVGFpbHdpbmRDbGFzc2VzOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IG9wdGlvbnMgZm9yIHRoZSBjb250ZW50ZnVsIGltYWdlIGFwaVxuICAgKi9cbiAgaW1hZ2VPcHRpb25zOiB7XG4gICAgLyoqXG4gICAgICogU291cmNlIHNldCBzaXplcy4gRWcuXG4gICAgICogLSBgXCI0MDBcImAgLSA0MDBweCB3aWR0aFxuICAgICAqIC0gYFwiNDAweDMwMFwiYCAtIDQwMHB4IHdpZHRoIGFuZCAzMDBweCBoZWlnaHRcbiAgICAgKiAtIGBcIjQwMHdcImAgLSA0MDBweCB3aWR0aFxuICAgICAqIC0gYFwiNDAwaFwiYCAtIDQwMHB4IGhlaWdodFxuICAgICAqIC0gYFwiNDAwd3gzMDBoXCJgIC0gNDAwcHggd2lkdGggYW5kIDMwMHB4IGhlaWdodFxuICAgICAqKi9cbiAgICBzcmNzZXRTaXplczogc3RyaW5nW107XG5cbiAgICAvKipcbiAgICAgKiBTaXplcyBmb3IgdGhlIGltYWdlLiBFZy5cbiAgICAgKiAgLSBgXCIxMDB2d1wiYCAtIDEwMCUgb2YgdGhlIHZpZXdwb3J0IHdpZHRoXG4gICAgICogIC0gYFwiNTB2d1wiYCAtIDUwJSBvZiB0aGUgdmlld3BvcnQgd2lkdGhcbiAgICAgKiAgLSBgKG1pbi13aWR0aDogMzBlbSkgMzBlbVwiYCAtIDMwZW0gaWYgdGhlIHZpZXdwb3J0IGlzIGF0IGxlYXN0IDMwZW0gd2lkZVxuICAgICAqL1xuICAgIHNpemVzOiBzdHJpbmdbXTtcblxuICAgIC8qKlxuICAgICAqIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBpbWFnZSBpbiBoZXguIEVnLiBgXCIwMDAwMDBcImBcbiAgICAgKi9cbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHN0cmluZyB8IG51bGw7XG4gIH07XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL3R5cGVzL2NvbnRlbnRmdWwudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IElucHV0U2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCbG9jaywgTm9kZURhdGEgfSBmcm9tICdAY29udGVudGZ1bC9yaWNoLXRleHQtdHlwZXMnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEluY2x1ZGVNYXAgfSBmcm9tICcuLi9jb21wb25lbnRzL3JpY2gtdGV4dC1yZW5kZXJlcic7XG5cbmV4cG9ydCB0eXBlIENvbnRlbnRmdWxJbWFnZVJlc2l6ZUJlaGF2aW9yID0gJ3BhZCcgfCAnY3JvcCcgfCAnZmlsbCcgfCAnc2NhbGUnIHwgJ3RodW1iJyB8ICdmaXQnO1xuZXhwb3J0IHR5cGUgQ29udGVudGZ1bEltYWdlRm9jdXNBcmVhID1cbiAgfCAndG9wJ1xuICB8ICdib3R0b20nXG4gIHwgJ2xlZnQnXG4gIHwgJ3JpZ2h0J1xuICB8ICdjZW50ZXInXG4gIHwgJ3RvcF9sZWZ0J1xuICB8ICd0b3BfcmlnaHQnXG4gIHwgJ2JvdHRvbV9sZWZ0J1xuICB8ICdib3R0b21fcmlnaHQnXG4gIHwgJ2ZhY2UnXG4gIHwgJ2ZhY2VzJztcblxudHlwZSBDb21wb25lbnRMaWtlV2l0aEFzc2V0ID0gQ29tcG9uZW50VHlwZTx7IGFzc2V0OiBJbnB1dFNpZ25hbDxDb250ZW50ZnVsQXNzZXQgfCBudWxsIHwgdW5kZWZpbmVkPiB9PjtcbnR5cGUgQ29tcG9uZW50TGlrZVdpdGhDb250ZW50ZnVsUmVuZGVyZXJJbnB1dHMgPSBDb21wb25lbnRUeXBlPHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgZmllbGRzPzogSW5wdXRTaWduYWw8YW55PjtcblxuICBpbmNsdWRlcz86IElucHV0U2lnbmFsPENvbnRlbnRmdWxJbmNsdWRlTWFwPjtcblxuICBtZXRhZGF0YT86IElucHV0U2lnbmFsPENvbnRlbnRmdWxNZXRhZGF0YT47XG5cbiAgc3lzPzogSW5wdXRTaWduYWw8Q29udGVudGZ1bFN5cz47XG59PjtcblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW50ZnVsQXNzZXRDb21wb25lbnRzIHtcbiAgZmlsZTogQ29tcG9uZW50TGlrZVdpdGhBc3NldDtcbiAgaW1hZ2U6IENvbXBvbmVudExpa2VXaXRoQXNzZXQ7XG4gIHZpZGVvOiBDb21wb25lbnRMaWtlV2l0aEFzc2V0O1xuICBhdWRpbzogQ29tcG9uZW50TGlrZVdpdGhBc3NldDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW50ZnVsQ29uZmlnIHtcbiAgLyoqXG4gICAqIERlZmF1bHQgY29tcG9uZW50cyBmb3IgcmVuZGVyaW5nIGNvbnRlbnRmdWwgYXNzZXRzXG4gICAqL1xuICBjb21wb25lbnRzOiBDb250ZW50ZnVsQXNzZXRDb21wb25lbnRzO1xuXG4gIC8qKlxuICAgKiBDb21wb25lbnQgZm9yIHJlbmRlcmluZyBlbWJlZGRlZCBlbnRyaWVzXG4gICAqL1xuICBjdXN0b21Db21wb25lbnRzOiBSZWNvcmQ8c3RyaW5nLCBDb21wb25lbnRMaWtlV2l0aENvbnRlbnRmdWxSZW5kZXJlcklucHV0cz47XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIGNvbnRlbnRmdWwgcmljaCB0ZXh0IHJlbmRlcmVyIHNob3VsZCByZW5kZXIgdGhlIGNvbnRlbnRmdWwgcmljaCB0ZXh0IHdpdGggdGFpbHdpbmQgY3NzIGNsYXNzZXNcbiAgICovXG4gIHVzZVRhaWx3aW5kQ2xhc3NlczogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGVmYXVsdCBvcHRpb25zIGZvciB0aGUgY29udGVudGZ1bCBpbWFnZSBhcGlcbiAgICovXG4gIGltYWdlT3B0aW9uczoge1xuICAgIC8qKlxuICAgICAqIFNvdXJjZSBzZXQgc2l6ZXMuIEVnLlxuICAgICAqIC0gYFwiNDAwXCJgIC0gNDAwcHggd2lkdGhcbiAgICAgKiAtIGBcIjQwMHgzMDBcImAgLSA0MDBweCB3aWR0aCBhbmQgMzAwcHggaGVpZ2h0XG4gICAgICogLSBgXCI0MDB3XCJgIC0gNDAwcHggd2lkdGhcbiAgICAgKiAtIGBcIjQwMGhcImAgLSA0MDBweCBoZWlnaHRcbiAgICAgKiAtIGBcIjQwMHd4MzAwaFwiYCAtIDQwMHB4IHdpZHRoIGFuZCAzMDBweCBoZWlnaHRcbiAgICAgKiovXG4gICAgc3Jjc2V0U2l6ZXM6IHN0cmluZ1tdO1xuXG4gICAgLyoqXG4gICAgICogU2l6ZXMgZm9yIHRoZSBpbWFnZS4gRWcuXG4gICAgICogIC0gYFwiMTAwdndcImAgLSAxMDAlIG9mIHRoZSB2aWV3cG9ydCB3aWR0aFxuICAgICAqICAtIGBcIjUwdndcImAgLSA1MCUgb2YgdGhlIHZpZXdwb3J0IHdpZHRoXG4gICAgICogIC0gYChtaW4td2lkdGg6IDMwZW0pIDMwZW1cImAgLSAzMGVtIGlmIHRoZSB2aWV3cG9ydCBpcyBhdCBsZWFzdCAzMGVtIHdpZGVcbiAgICAgKi9cbiAgICBzaXplczogc3RyaW5nW107XG5cbiAgICAvKipcbiAgICAgKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgaW1hZ2UgaW4gaGV4LiBFZy4gYFwiMDAwMDAwXCJgXG4gICAgICovXG4gICAgYmFja2dyb3VuZENvbG9yOiBzdHJpbmcgfCBudWxsO1xuICB9O1xufVxuXG5leHBvcnQgdHlwZSBDb250ZW50ZnVsTGlua1R5cGUgPSAnU3BhY2UnIHwgJ0NvbnRlbnRUeXBlJyB8ICdFbnZpcm9ubWVudCc7XG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRmdWxMaW5rPFQgZXh0ZW5kcyBDb250ZW50ZnVsTGlua1R5cGU+IHtcbiAgdHlwZTogJ0xpbmsnO1xuICBsaW5rVHlwZTogVDtcbiAgaWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgQ29udGVudGZ1bFNwYWNlTGluayA9IENvbnRlbnRmdWxMaW5rPCdTcGFjZSc+O1xuZXhwb3J0IHR5cGUgQ29udGVudGZ1bEVudmlyb25tZW50TGluayA9IENvbnRlbnRmdWxMaW5rPCdFbnZpcm9ubWVudCc+O1xuZXhwb3J0IHR5cGUgQ29udGVudGZ1bENvbnRlbnRUeXBlTGluayA9IENvbnRlbnRmdWxMaW5rPCdDb250ZW50VHlwZSc+O1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRmdWxUYWdMaW5rIHtcbiAgc3lzOiB7XG4gICAgdHlwZTogJ0xpbmsnO1xuICAgIGxpbmtUeXBlOiAnVGFnJztcbiAgICBpZDogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRmdWxNZXRhZGF0YSB7XG4gIHRhZ3M6IENvbnRlbnRmdWxUYWdMaW5rW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudGZ1bFN5cyB7XG4gIHR5cGU6IHN0cmluZztcbiAgaWQ6IHN0cmluZztcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIHVwZGF0ZWRBdDogc3RyaW5nO1xuICBsb2NhbGU6IHN0cmluZztcbiAgcmV2aXNpb24/OiBudW1iZXI7XG4gIHNwYWNlPzoge1xuICAgIHN5czogQ29udGVudGZ1bFNwYWNlTGluaztcbiAgfTtcbiAgZW52aXJvbm1lbnQ/OiB7XG4gICAgc3lzOiBDb250ZW50ZnVsRW52aXJvbm1lbnRMaW5rO1xuICB9O1xuICBjb250ZW50VHlwZToge1xuICAgIHN5czogQ29udGVudGZ1bENvbnRlbnRUeXBlTGluaztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW50ZnVsQXNzZXRJbWFnZURhdGEge1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW50ZnVsQXNzZXRGaWxlRGF0YSB7XG4gIHVybDogc3RyaW5nO1xuICBkZXRhaWxzOiB7XG4gICAgc2l6ZTogbnVtYmVyO1xuICAgIGltYWdlPzogQ29udGVudGZ1bEFzc2V0SW1hZ2VEYXRhO1xuICB9O1xuICBmaWxlTmFtZTogc3RyaW5nO1xuICBjb250ZW50VHlwZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRmdWxBc3NldCB7XG4gIHN5czogQ29udGVudGZ1bFN5cztcbiAgZmllbGRzOiB7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIGZpbGU6IENvbnRlbnRmdWxBc3NldEZpbGVEYXRhO1xuICB9O1xuICBtZXRhZGF0YTogQ29udGVudGZ1bE1ldGFkYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRmdWxFbnRyeTxUID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4+IHtcbiAgc3lzOiBDb250ZW50ZnVsU3lzO1xuICBmaWVsZHM6IFQ7XG4gIG1ldGFkYXRhOiBDb250ZW50ZnVsTWV0YWRhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudGZ1bENvbGxlY3Rpb24ge1xuICBpbmNsdWRlczoge1xuICAgIEFzc2V0OiBDb250ZW50ZnVsQXNzZXRbXTtcbiAgICBFbnRyeTogQ29udGVudGZ1bEVudHJ5W107XG4gIH07XG4gIGl0ZW1zOiBDb250ZW50ZnVsRW50cnlbXTtcbiAgbGltaXQ6IG51bWJlcjtcbiAgc2tpcDogbnVtYmVyO1xuICB0b3RhbDogbnVtYmVyO1xuICBzeXM6IHtcbiAgICB0eXBlOiAnQXJyYXknO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJpY2hUZXh0UmVzcG9uc2Uge1xuICBub2RlVHlwZTogJ2RvY3VtZW50JztcbiAgZGF0YTogTm9kZURhdGE7XG4gIGNvbnRlbnQ6IEJsb2NrW107XG59XG4iXX0=
@@ -3,10 +3,4 @@ import { createContentfulConfig } from './contentful-config';
3
3
  export const provideContentfulConfig = (contentfulConfig = {}) => {
4
4
  return { provide: CONTENTFUL_CONFIG, useValue: createContentfulConfig(contentfulConfig) };
5
5
  };
6
- export const isContentfulImage = (v) => {
7
- return !!v && 'asset' in v && 'alt' in v && 'resizeBehavior' in v && 'focusArea' in v;
8
- };
9
- export const isContentfulAsset = (v) => {
10
- return !!v && 'contentType' in v && 'description' in v && 'height' in v && 'url' in v && 'width' in v;
11
- };
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb250ZW50ZnVsL3NyYy9saWIvdXRpbHMvY29udGVudGZ1bC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVqRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUU3RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLG1CQUFpRSxFQUFFLEVBQUUsRUFBRTtJQUM3RyxPQUFPLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxzQkFBc0IsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7QUFDNUYsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxDQUF1RCxFQUF3QixFQUFFO0lBQ2pILE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksZ0JBQWdCLElBQUksQ0FBQyxJQUFJLFdBQVcsSUFBSSxDQUFDLENBQUM7QUFDeEYsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxDQUF1RCxFQUF3QixFQUFFO0lBQ2pILE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxhQUFhLElBQUksQ0FBQyxJQUFJLGFBQWEsSUFBSSxDQUFDLElBQUksUUFBUSxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLE9BQU8sSUFBSSxDQUFDLENBQUM7QUFDeEcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ09OVEVOVEZVTF9DT05GSUcgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEFzc2V0LCBDb250ZW50ZnVsQ29uZmlnLCBDb250ZW50ZnVsSW1hZ2UgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBjcmVhdGVDb250ZW50ZnVsQ29uZmlnIH0gZnJvbSAnLi9jb250ZW50ZnVsLWNvbmZpZyc7XG5cbmV4cG9ydCBjb25zdCBwcm92aWRlQ29udGVudGZ1bENvbmZpZyA9IChjb250ZW50ZnVsQ29uZmlnOiBQYXJ0aWFsPENvbnRlbnRmdWxDb25maWc+IHwgbnVsbCB8IHVuZGVmaW5lZCA9IHt9KSA9PiB7XG4gIHJldHVybiB7IHByb3ZpZGU6IENPTlRFTlRGVUxfQ09ORklHLCB1c2VWYWx1ZTogY3JlYXRlQ29udGVudGZ1bENvbmZpZyhjb250ZW50ZnVsQ29uZmlnKSB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGlzQ29udGVudGZ1bEltYWdlID0gKHY6IENvbnRlbnRmdWxBc3NldCB8IENvbnRlbnRmdWxJbWFnZSB8IG51bGwgfCB1bmRlZmluZWQpOiB2IGlzIENvbnRlbnRmdWxJbWFnZSA9PiB7XG4gIHJldHVybiAhIXYgJiYgJ2Fzc2V0JyBpbiB2ICYmICdhbHQnIGluIHYgJiYgJ3Jlc2l6ZUJlaGF2aW9yJyBpbiB2ICYmICdmb2N1c0FyZWEnIGluIHY7XG59O1xuXG5leHBvcnQgY29uc3QgaXNDb250ZW50ZnVsQXNzZXQgPSAodjogQ29udGVudGZ1bEFzc2V0IHwgQ29udGVudGZ1bEltYWdlIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHYgaXMgQ29udGVudGZ1bEFzc2V0ID0+IHtcbiAgcmV0dXJuICEhdiAmJiAnY29udGVudFR5cGUnIGluIHYgJiYgJ2Rlc2NyaXB0aW9uJyBpbiB2ICYmICdoZWlnaHQnIGluIHYgJiYgJ3VybCcgaW4gdiAmJiAnd2lkdGgnIGluIHY7XG59O1xuIl19
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb250ZW50ZnVsL3NyYy9saWIvdXRpbHMvY29udGVudGZ1bC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVqRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUU3RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLG1CQUFpRSxFQUFFLEVBQUUsRUFBRTtJQUM3RyxPQUFPLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxzQkFBc0IsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7QUFDNUYsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ09OVEVOVEZVTF9DT05GSUcgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQ29udGVudGZ1bENvbmZpZyB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IGNyZWF0ZUNvbnRlbnRmdWxDb25maWcgfSBmcm9tICcuL2NvbnRlbnRmdWwtY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IHByb3ZpZGVDb250ZW50ZnVsQ29uZmlnID0gKGNvbnRlbnRmdWxDb25maWc6IFBhcnRpYWw8Q29udGVudGZ1bENvbmZpZz4gfCBudWxsIHwgdW5kZWZpbmVkID0ge30pID0+IHtcbiAgcmV0dXJuIHsgcHJvdmlkZTogQ09OVEVOVEZVTF9DT05GSUcsIHVzZVZhbHVlOiBjcmVhdGVDb250ZW50ZnVsQ29uZmlnKGNvbnRlbnRmdWxDb25maWcpIH07XG59O1xuIl19