@payloadcms/richtext-lexical 0.1.0-beta.0 → 0.1.0-beta.2

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 (71) hide show
  1. package/dist/field/features/Blocks/afterReadPromise.d.ts +5 -0
  2. package/dist/field/features/Blocks/afterReadPromise.d.ts.map +1 -0
  3. package/dist/field/features/Blocks/afterReadPromise.js +52 -0
  4. package/dist/field/features/Blocks/component/BlockContent.d.ts +14 -0
  5. package/dist/field/features/Blocks/component/BlockContent.d.ts.map +1 -0
  6. package/dist/field/features/Blocks/component/BlockContent.js +163 -0
  7. package/dist/field/features/Blocks/component/index.d.ts.map +1 -1
  8. package/dist/field/features/Blocks/component/index.js +21 -104
  9. package/dist/field/features/Blocks/component/index.scss +148 -0
  10. package/dist/field/features/Blocks/drawer/index.d.ts.map +1 -1
  11. package/dist/field/features/Blocks/drawer/index.js +9 -7
  12. package/dist/field/features/Blocks/drawer/index.scss +1 -0
  13. package/dist/field/features/Blocks/index.d.ts.map +1 -1
  14. package/dist/field/features/Blocks/index.js +36 -18
  15. package/dist/field/features/Blocks/index.scss +1 -0
  16. package/dist/field/features/Blocks/nodes/BlocksNode.d.ts +5 -4
  17. package/dist/field/features/Blocks/nodes/BlocksNode.d.ts.map +1 -1
  18. package/dist/field/features/Blocks/nodes/BlocksNode.js +1 -1
  19. package/dist/field/features/Blocks/plugin/index.js +3 -3
  20. package/dist/field/features/Link/drawer/index.scss +50 -0
  21. package/dist/field/features/Link/index.scss +1 -0
  22. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
  23. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.js +9 -4
  24. package/dist/field/features/Link/plugins/floatingLinkEditor/index.scss +79 -0
  25. package/dist/field/features/Relationship/drawer/index.scss +1 -0
  26. package/dist/field/features/Relationship/index.scss +1 -0
  27. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.d.ts.map +1 -1
  28. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.js +2 -1
  29. package/dist/field/features/Relationship/nodes/components/index.scss +97 -0
  30. package/dist/field/features/Upload/component/index.scss +152 -0
  31. package/dist/field/features/Upload/drawer/index.scss +1 -0
  32. package/dist/field/features/Upload/index.scss +1 -0
  33. package/dist/field/features/Upload/nodes/UploadNode.d.ts.map +1 -1
  34. package/dist/field/features/Upload/nodes/UploadNode.js +1 -1
  35. package/dist/field/features/align/index.scss +4 -0
  36. package/dist/field/features/common/floatingSelectToolbarFeaturesButtonsSection/index.scss +4 -0
  37. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.scss +4 -0
  38. package/dist/field/features/debug/TreeView/index.scss +78 -0
  39. package/dist/field/features/format/common/index.scss +4 -0
  40. package/dist/field/features/indent/index.scss +4 -0
  41. package/dist/field/index.scss +1 -0
  42. package/dist/field/lexical/LexicalEditor.scss +34 -0
  43. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.scss +39 -0
  44. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.scss +100 -0
  45. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.scss +57 -0
  46. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts +7 -0
  47. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts.map +1 -1
  48. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +8 -3
  49. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts +2 -2
  50. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts.map +1 -1
  51. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +19 -11
  52. package/dist/field/lexical/plugins/SlashMenu/index.d.ts.map +1 -1
  53. package/dist/field/lexical/plugins/SlashMenu/index.js +14 -2
  54. package/dist/field/lexical/plugins/SlashMenu/index.scss +56 -0
  55. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.js +4 -3
  56. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.scss +35 -0
  57. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.scss +50 -0
  58. package/dist/field/lexical/theme/EditorTheme.scss +509 -0
  59. package/dist/field/lexical/ui/ContentEditable.scss +21 -0
  60. package/dist/field/lexical/ui/icons/Add/index.svg +4 -0
  61. package/dist/field/lexical/ui/icons/Caret/index.svg +3 -0
  62. package/dist/field/lexical/ui/icons/DraggableBlock/index.svg +9 -0
  63. package/dist/field/lexical/ui/icons/Edit/index.svg +10 -0
  64. package/dist/field/lexical/ui/icons/Remove/index.svg +4 -0
  65. package/dist/index.d.ts +19 -5
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +38 -23
  68. package/dist/populate/recurseNestedFields.d.ts.map +1 -1
  69. package/dist/populate/recurseNestedFields.js +3 -1
  70. package/package.json +6 -4
  71. package/src/index.ts +21 -5
@@ -0,0 +1,5 @@
1
+ import type { BlocksFeatureProps } from '.';
2
+ import type { AfterReadPromise } from '../types';
3
+ import type { SerializedBlockNode } from './nodes/BlocksNode';
4
+ export declare const blockAfterReadPromiseHOC: (props: BlocksFeatureProps) => AfterReadPromise<SerializedBlockNode>;
5
+ //# sourceMappingURL=afterReadPromise.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"afterReadPromise.d.ts","sourceRoot":"","sources":["../../../../src/field/features/Blocks/afterReadPromise.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,GAAG,CAAA;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAI7D,eAAO,MAAM,wBAAwB,UAC5B,kBAAkB,KACxB,iBAAiB,mBAAmB,CAgDtC,CAAA"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "blockAfterReadPromiseHOC", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return blockAfterReadPromiseHOC;
9
+ }
10
+ });
11
+ const _config = require("payload/config");
12
+ const _recurseNestedFields = require("../../../populate/recurseNestedFields");
13
+ const blockAfterReadPromiseHOC = (props)=>{
14
+ const blockAfterReadPromise = ({ afterReadPromises, currentDepth, depth, field, node, overrideAccess, req, showHiddenFields })=>{
15
+ const promises = [];
16
+ // Sanitize block's fields here. This is done here and not in the feature, because the payload config is available here
17
+ const payloadConfig = req.payload.config;
18
+ const validRelationships = payloadConfig.collections.map((c)=>c.slug) || [];
19
+ props.blocks = props.blocks.map((block)=>{
20
+ const unsanitizedBlock = {
21
+ ...block
22
+ };
23
+ unsanitizedBlock.fields = (0, _config.sanitizeFields)({
24
+ config: payloadConfig,
25
+ fields: block.fields,
26
+ validRelationships
27
+ });
28
+ return unsanitizedBlock;
29
+ });
30
+ if (Array.isArray(props.blocks)) {
31
+ props.blocks.forEach((block)=>{
32
+ if (block?.fields) {
33
+ (0, _recurseNestedFields.recurseNestedFields)({
34
+ afterReadPromises,
35
+ currentDepth,
36
+ data: node.fields.data || {},
37
+ depth,
38
+ fields: block.fields,
39
+ overrideAccess,
40
+ promises,
41
+ req,
42
+ showHiddenFields
43
+ });
44
+ }
45
+ });
46
+ }
47
+ return promises;
48
+ };
49
+ return blockAfterReadPromise;
50
+ };
51
+
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9CbG9ja3MvYWZ0ZXJSZWFkUHJvbWlzZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzYW5pdGl6ZUZpZWxkcyB9IGZyb20gJ3BheWxvYWQvY29uZmlnJ1xuXG5pbXBvcnQgdHlwZSB7IEJsb2Nrc0ZlYXR1cmVQcm9wcyB9IGZyb20gJy4nXG5pbXBvcnQgdHlwZSB7IEFmdGVyUmVhZFByb21pc2UgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB0eXBlIHsgU2VyaWFsaXplZEJsb2NrTm9kZSB9IGZyb20gJy4vbm9kZXMvQmxvY2tzTm9kZSdcblxuaW1wb3J0IHsgcmVjdXJzZU5lc3RlZEZpZWxkcyB9IGZyb20gJy4uLy4uLy4uL3BvcHVsYXRlL3JlY3Vyc2VOZXN0ZWRGaWVsZHMnXG5cbmV4cG9ydCBjb25zdCBibG9ja0FmdGVyUmVhZFByb21pc2VIT0MgPSAoXG4gIHByb3BzOiBCbG9ja3NGZWF0dXJlUHJvcHMsXG4pOiBBZnRlclJlYWRQcm9taXNlPFNlcmlhbGl6ZWRCbG9ja05vZGU+ID0+IHtcbiAgY29uc3QgYmxvY2tBZnRlclJlYWRQcm9taXNlOiBBZnRlclJlYWRQcm9taXNlPFNlcmlhbGl6ZWRCbG9ja05vZGU+ID0gKHtcbiAgICBhZnRlclJlYWRQcm9taXNlcyxcbiAgICBjdXJyZW50RGVwdGgsXG4gICAgZGVwdGgsXG4gICAgZmllbGQsXG4gICAgbm9kZSxcbiAgICBvdmVycmlkZUFjY2VzcyxcbiAgICByZXEsXG4gICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgfSkgPT4ge1xuICAgIGNvbnN0IHByb21pc2VzOiBQcm9taXNlPHZvaWQ+W10gPSBbXVxuXG4gICAgLy8gU2FuaXRpemUgYmxvY2sncyBmaWVsZHMgaGVyZS4gVGhpcyBpcyBkb25lIGhlcmUgYW5kIG5vdCBpbiB0aGUgZmVhdHVyZSwgYmVjYXVzZSB0aGUgcGF5bG9hZCBjb25maWcgaXMgYXZhaWxhYmxlIGhlcmVcbiAgICBjb25zdCBwYXlsb2FkQ29uZmlnID0gcmVxLnBheWxvYWQuY29uZmlnXG4gICAgY29uc3QgdmFsaWRSZWxhdGlvbnNoaXBzID0gcGF5bG9hZENvbmZpZy5jb2xsZWN0aW9ucy5tYXAoKGMpID0+IGMuc2x1ZykgfHwgW11cbiAgICBwcm9wcy5ibG9ja3MgPSBwcm9wcy5ibG9ja3MubWFwKChibG9jaykgPT4ge1xuICAgICAgY29uc3QgdW5zYW5pdGl6ZWRCbG9jayA9IHsgLi4uYmxvY2sgfVxuICAgICAgdW5zYW5pdGl6ZWRCbG9jay5maWVsZHMgPSBzYW5pdGl6ZUZpZWxkcyh7XG4gICAgICAgIGNvbmZpZzogcGF5bG9hZENvbmZpZyxcbiAgICAgICAgZmllbGRzOiBibG9jay5maWVsZHMsXG4gICAgICAgIHZhbGlkUmVsYXRpb25zaGlwcyxcbiAgICAgIH0pXG4gICAgICByZXR1cm4gdW5zYW5pdGl6ZWRCbG9ja1xuICAgIH0pXG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShwcm9wcy5ibG9ja3MpKSB7XG4gICAgICBwcm9wcy5ibG9ja3MuZm9yRWFjaCgoYmxvY2spID0+IHtcbiAgICAgICAgaWYgKGJsb2NrPy5maWVsZHMpIHtcbiAgICAgICAgICByZWN1cnNlTmVzdGVkRmllbGRzKHtcbiAgICAgICAgICAgIGFmdGVyUmVhZFByb21pc2VzLFxuICAgICAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICAgICAgZGF0YTogbm9kZS5maWVsZHMuZGF0YSB8fCB7fSxcbiAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgZmllbGRzOiBibG9jay5maWVsZHMsXG4gICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgIHByb21pc2VzLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiBwcm9taXNlc1xuICB9XG5cbiAgcmV0dXJuIGJsb2NrQWZ0ZXJSZWFkUHJvbWlzZVxufVxuIl0sIm5hbWVzIjpbImJsb2NrQWZ0ZXJSZWFkUHJvbWlzZUhPQyIsInByb3BzIiwiYmxvY2tBZnRlclJlYWRQcm9taXNlIiwiYWZ0ZXJSZWFkUHJvbWlzZXMiLCJjdXJyZW50RGVwdGgiLCJkZXB0aCIsImZpZWxkIiwibm9kZSIsIm92ZXJyaWRlQWNjZXNzIiwicmVxIiwic2hvd0hpZGRlbkZpZWxkcyIsInByb21pc2VzIiwicGF5bG9hZENvbmZpZyIsInBheWxvYWQiLCJjb25maWciLCJ2YWxpZFJlbGF0aW9uc2hpcHMiLCJjb2xsZWN0aW9ucyIsIm1hcCIsImMiLCJzbHVnIiwiYmxvY2tzIiwiYmxvY2siLCJ1bnNhbml0aXplZEJsb2NrIiwiZmllbGRzIiwic2FuaXRpemVGaWVsZHMiLCJBcnJheSIsImlzQXJyYXkiLCJmb3JFYWNoIiwicmVjdXJzZU5lc3RlZEZpZWxkcyIsImRhdGEiXSwibWFwcGluZ3MiOiI7Ozs7K0JBUWFBOzs7ZUFBQUE7Ozt3QkFSa0I7cUNBTUs7QUFFN0IsTUFBTUEsMkJBQTJCLENBQ3RDQztJQUVBLE1BQU1DLHdCQUErRCxDQUFDLEVBQ3BFQyxpQkFBaUIsRUFDakJDLFlBQVksRUFDWkMsS0FBSyxFQUNMQyxLQUFLLEVBQ0xDLElBQUksRUFDSkMsY0FBYyxFQUNkQyxHQUFHLEVBQ0hDLGdCQUFnQixFQUNqQjtRQUNDLE1BQU1DLFdBQTRCLEVBQUU7UUFFcEMsdUhBQXVIO1FBQ3ZILE1BQU1DLGdCQUFnQkgsSUFBSUksT0FBTyxDQUFDQyxNQUFNO1FBQ3hDLE1BQU1DLHFCQUFxQkgsY0FBY0ksV0FBVyxDQUFDQyxHQUFHLENBQUMsQ0FBQ0MsSUFBTUEsRUFBRUMsSUFBSSxLQUFLLEVBQUU7UUFDN0VsQixNQUFNbUIsTUFBTSxHQUFHbkIsTUFBTW1CLE1BQU0sQ0FBQ0gsR0FBRyxDQUFDLENBQUNJO1lBQy9CLE1BQU1DLG1CQUFtQjtnQkFBRSxHQUFHRCxLQUFLO1lBQUM7WUFDcENDLGlCQUFpQkMsTUFBTSxHQUFHQyxJQUFBQSxzQkFBYyxFQUFDO2dCQUN2Q1YsUUFBUUY7Z0JBQ1JXLFFBQVFGLE1BQU1FLE1BQU07Z0JBQ3BCUjtZQUNGO1lBQ0EsT0FBT087UUFDVDtRQUVBLElBQUlHLE1BQU1DLE9BQU8sQ0FBQ3pCLE1BQU1tQixNQUFNLEdBQUc7WUFDL0JuQixNQUFNbUIsTUFBTSxDQUFDTyxPQUFPLENBQUMsQ0FBQ047Z0JBQ3BCLElBQUlBLE9BQU9FLFFBQVE7b0JBQ2pCSyxJQUFBQSx3Q0FBbUIsRUFBQzt3QkFDbEJ6Qjt3QkFDQUM7d0JBQ0F5QixNQUFNdEIsS0FBS2dCLE1BQU0sQ0FBQ00sSUFBSSxJQUFJLENBQUM7d0JBQzNCeEI7d0JBQ0FrQixRQUFRRixNQUFNRSxNQUFNO3dCQUNwQmY7d0JBQ0FHO3dCQUNBRjt3QkFDQUM7b0JBQ0Y7Z0JBQ0Y7WUFDRjtRQUNGO1FBRUEsT0FBT0M7SUFDVDtJQUVBLE9BQU9UO0FBQ1QifQ==
@@ -0,0 +1,14 @@
1
+ import type { Block } from 'payload/types';
2
+ import React from 'react';
3
+ import type { FieldProps } from '../../../../types';
4
+ import type { BlockFields } from '../nodes/BlocksNode';
5
+ type Props = {
6
+ baseClass: string;
7
+ block: Block;
8
+ field: FieldProps;
9
+ fields: BlockFields;
10
+ nodeKey: string;
11
+ };
12
+ export declare const BlockContent: React.FC<Props>;
13
+ export {};
14
+ //# sourceMappingURL=BlockContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlockContent.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/Blocks/component/BlockContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAQ,MAAM,eAAe,CAAA;AAShD,OAAO,KAAsB,MAAM,OAAO,CAAA;AAG1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,WAAW,EAAa,MAAM,qBAAqB,CAAA;AAIjE,KAAK,KAAK,GAAG;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,UAAU,CAAA;IACjB,MAAM,EAAE,WAAW,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA+GxC,CAAA"}
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "BlockContent", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return BlockContent;
9
+ }
10
+ });
11
+ const _LexicalComposerContext = require("@lexical/react/LexicalComposerContext");
12
+ const _lexical = require("lexical");
13
+ const _components = require("payload/components");
14
+ const _elements = require("payload/components/elements");
15
+ const _Blocks = require("payload/components/fields/Blocks");
16
+ const _forms = require("payload/components/forms");
17
+ const _utilities = require("payload/utilities");
18
+ const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
19
+ const _reacti18next = require("react-i18next");
20
+ const _FormSavePlugin = require("./FormSavePlugin");
21
+ function _getRequireWildcardCache(nodeInterop) {
22
+ if (typeof WeakMap !== "function") return null;
23
+ var cacheBabelInterop = new WeakMap();
24
+ var cacheNodeInterop = new WeakMap();
25
+ return (_getRequireWildcardCache = function(nodeInterop) {
26
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
27
+ })(nodeInterop);
28
+ }
29
+ function _interop_require_wildcard(obj, nodeInterop) {
30
+ if (!nodeInterop && obj && obj.__esModule) {
31
+ return obj;
32
+ }
33
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
34
+ return {
35
+ default: obj
36
+ };
37
+ }
38
+ var cache = _getRequireWildcardCache(nodeInterop);
39
+ if (cache && cache.has(obj)) {
40
+ return cache.get(obj);
41
+ }
42
+ var newObj = {};
43
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
44
+ for(var key in obj){
45
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
46
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
47
+ if (desc && (desc.get || desc.set)) {
48
+ Object.defineProperty(newObj, key, desc);
49
+ } else {
50
+ newObj[key] = obj[key];
51
+ }
52
+ }
53
+ }
54
+ newObj.default = obj;
55
+ if (cache) {
56
+ cache.set(obj, newObj);
57
+ }
58
+ return newObj;
59
+ }
60
+ const BlockContent = (props)=>{
61
+ const { baseClass, block, field, fields, nodeKey } = props;
62
+ const { i18n } = (0, _reacti18next.useTranslation)();
63
+ const [editor] = (0, _LexicalComposerContext.useLexicalComposerContext)();
64
+ const [collapsed, setCollapsed] = _react.default.useState(fields.collapsed);
65
+ const hasSubmitted = (0, _forms.useFormSubmitted)();
66
+ const childErrorPathsCount = 0 // TODO row.childErrorPaths?.size
67
+ ;
68
+ const fieldHasErrors = hasSubmitted && childErrorPathsCount > 0;
69
+ const classNames = [
70
+ `${baseClass}__row`,
71
+ fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`
72
+ ].filter(Boolean).join(' ');
73
+ const path = '';
74
+ const onFormChange = (0, _react.useCallback)(({ formData })=>{
75
+ editor.update(()=>{
76
+ const node = (0, _lexical.$getNodeByKey)(nodeKey);
77
+ if (node) {
78
+ node.setFields({
79
+ collapsed: collapsed,
80
+ data: formData
81
+ });
82
+ }
83
+ });
84
+ }, [
85
+ editor,
86
+ nodeKey,
87
+ collapsed
88
+ ]);
89
+ const onCollapsedChange = (0, _react.useCallback)(()=>{
90
+ editor.update(()=>{
91
+ const node = (0, _lexical.$getNodeByKey)(nodeKey);
92
+ if (node) {
93
+ node.setFields({
94
+ ...node.getFields(),
95
+ collapsed: collapsed
96
+ });
97
+ }
98
+ });
99
+ }, [
100
+ editor,
101
+ nodeKey,
102
+ collapsed
103
+ ]);
104
+ const removeBlock = (0, _react.useCallback)(()=>{
105
+ editor.update(()=>{
106
+ (0, _lexical.$getNodeByKey)(nodeKey).remove();
107
+ });
108
+ }, [
109
+ editor,
110
+ nodeKey
111
+ ]);
112
+ return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(_elements.Collapsible, {
113
+ className: classNames,
114
+ collapsed: collapsed,
115
+ collapsibleStyle: false ? 'error' : 'default',
116
+ header: /*#__PURE__*/ _react.default.createElement("div", {
117
+ className: `${baseClass}__block-header`
118
+ }, /*#__PURE__*/ _react.default.createElement("div", null, /*#__PURE__*/ _react.default.createElement(_components.Pill, {
119
+ className: `${baseClass}__block-pill ${baseClass}__block-pill-${fields?.data?.blockType}`,
120
+ pillStyle: "white"
121
+ }, (0, _utilities.getTranslation)(block.labels.singular, i18n)), /*#__PURE__*/ _react.default.createElement(_Blocks.SectionTitle, {
122
+ path: `${path}blockName`,
123
+ readOnly: field?.admin?.readOnly
124
+ }), fieldHasErrors && /*#__PURE__*/ _react.default.createElement(_components.ErrorPill, {
125
+ count: childErrorPathsCount,
126
+ withMessage: true
127
+ })), /*#__PURE__*/ _react.default.createElement(_components.Button, {
128
+ buttonStyle: "icon-label",
129
+ className: `${baseClass}__removeButton`,
130
+ disabled: field?.admin?.readOnly,
131
+ icon: "x",
132
+ onClick: (e)=>{
133
+ e.preventDefault();
134
+ removeBlock();
135
+ },
136
+ round: true,
137
+ tooltip: "Remove Block"
138
+ })),
139
+ key: 0,
140
+ onToggle: (collapsed)=>{
141
+ setCollapsed(collapsed);
142
+ onCollapsedChange();
143
+ }
144
+ }, /*#__PURE__*/ _react.default.createElement(_forms.RenderFields, {
145
+ className: `${baseClass}__fields`,
146
+ fieldSchema: block.fields.map((field)=>({
147
+ ...field,
148
+ path: (0, _forms.createNestedFieldPath)(null, field)
149
+ })),
150
+ fieldTypes: field.fieldTypes,
151
+ margins: "small",
152
+ permissions: field.permissions?.blocks?.[fields?.data?.blockType]?.fields,
153
+ readOnly: field.admin.readOnly
154
+ })), /*#__PURE__*/ _react.default.createElement(_FormSavePlugin.FormSavePlugin, {
155
+ fieldSchema: block.fields.map((field)=>({
156
+ ...field,
157
+ path: (0, _forms.createNestedFieldPath)(null, field)
158
+ })),
159
+ onChange: onFormChange
160
+ }));
161
+ };
162
+
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9CbG9ja3MvY29tcG9uZW50L0Jsb2NrQ29udGVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCbG9jaywgRGF0YSB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7IHVzZUxleGljYWxDb21wb3NlckNvbnRleHQgfSBmcm9tICdAbGV4aWNhbC9yZWFjdC9MZXhpY2FsQ29tcG9zZXJDb250ZXh0J1xuaW1wb3J0IHsgJGdldE5vZGVCeUtleSB9IGZyb20gJ2xleGljYWwnXG5pbXBvcnQgeyBCdXR0b24sIEVycm9yUGlsbCwgUGlsbCB9IGZyb20gJ3BheWxvYWQvY29tcG9uZW50cydcbmltcG9ydCB7IENvbGxhcHNpYmxlIH0gZnJvbSAncGF5bG9hZC9jb21wb25lbnRzL2VsZW1lbnRzJ1xuaW1wb3J0IHsgU2VjdGlvblRpdGxlIH0gZnJvbSAncGF5bG9hZC9jb21wb25lbnRzL2ZpZWxkcy9CbG9ja3MnXG5pbXBvcnQgeyBSZW5kZXJGaWVsZHMsIGNyZWF0ZU5lc3RlZEZpZWxkUGF0aCwgdXNlRm9ybVN1Ym1pdHRlZCB9IGZyb20gJ3BheWxvYWQvY29tcG9uZW50cy9mb3JtcydcbmltcG9ydCB7IGdldFRyYW5zbGF0aW9uIH0gZnJvbSAncGF5bG9hZC91dGlsaXRpZXMnXG5pbXBvcnQgUmVhY3QsIHsgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAncmVhY3QtaTE4bmV4dCdcblxuaW1wb3J0IHR5cGUgeyBGaWVsZFByb3BzIH0gZnJvbSAnLi4vLi4vLi4vLi4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJsb2NrRmllbGRzLCBCbG9ja05vZGUgfSBmcm9tICcuLi9ub2Rlcy9CbG9ja3NOb2RlJ1xuXG5pbXBvcnQgeyBGb3JtU2F2ZVBsdWdpbiB9IGZyb20gJy4vRm9ybVNhdmVQbHVnaW4nXG5cbnR5cGUgUHJvcHMgPSB7XG4gIGJhc2VDbGFzczogc3RyaW5nXG4gIGJsb2NrOiBCbG9ja1xuICBmaWVsZDogRmllbGRQcm9wc1xuICBmaWVsZHM6IEJsb2NrRmllbGRzXG4gIG5vZGVLZXk6IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgQmxvY2tDb250ZW50OiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBiYXNlQ2xhc3MsIGJsb2NrLCBmaWVsZCwgZmllbGRzLCBub2RlS2V5IH0gPSBwcm9wc1xuICBjb25zdCB7IGkxOG4gfSA9IHVzZVRyYW5zbGF0aW9uKClcbiAgY29uc3QgW2VkaXRvcl0gPSB1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0KClcbiAgY29uc3QgW2NvbGxhcHNlZCwgc2V0Q29sbGFwc2VkXSA9IFJlYWN0LnVzZVN0YXRlPGJvb2xlYW4+KGZpZWxkcy5jb2xsYXBzZWQpXG4gIGNvbnN0IGhhc1N1Ym1pdHRlZCA9IHVzZUZvcm1TdWJtaXR0ZWQoKVxuICBjb25zdCBjaGlsZEVycm9yUGF0aHNDb3VudCA9IDAgLy8gVE9ETyByb3cuY2hpbGRFcnJvclBhdGhzPy5zaXplXG4gIGNvbnN0IGZpZWxkSGFzRXJyb3JzID0gaGFzU3VibWl0dGVkICYmIGNoaWxkRXJyb3JQYXRoc0NvdW50ID4gMFxuXG4gIGNvbnN0IGNsYXNzTmFtZXMgPSBbXG4gICAgYCR7YmFzZUNsYXNzfV9fcm93YCxcbiAgICBmaWVsZEhhc0Vycm9ycyA/IGAke2Jhc2VDbGFzc31fX3Jvdy0taGFzLWVycm9yc2AgOiBgJHtiYXNlQ2xhc3N9X19yb3ctLW5vLWVycm9yc2AsXG4gIF1cbiAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgLmpvaW4oJyAnKVxuXG4gIGNvbnN0IHBhdGggPSAnJyBhcyBjb25zdFxuXG4gIGNvbnN0IG9uRm9ybUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICh7IGZvcm1EYXRhIH06IHsgZm9ybURhdGE6IERhdGEgfSkgPT4ge1xuICAgICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IG5vZGU6IEJsb2NrTm9kZSA9ICRnZXROb2RlQnlLZXkobm9kZUtleSlcbiAgICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgICBub2RlLnNldEZpZWxkcyh7XG4gICAgICAgICAgICBjb2xsYXBzZWQ6IGNvbGxhcHNlZCxcbiAgICAgICAgICAgIGRhdGE6IGZvcm1EYXRhIGFzIGFueSxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0sXG4gICAgW2VkaXRvciwgbm9kZUtleSwgY29sbGFwc2VkXSxcbiAgKVxuXG4gIGNvbnN0IG9uQ29sbGFwc2VkQ2hhbmdlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGVkaXRvci51cGRhdGUoKCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZTogQmxvY2tOb2RlID0gJGdldE5vZGVCeUtleShub2RlS2V5KVxuICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgbm9kZS5zZXRGaWVsZHMoe1xuICAgICAgICAgIC4uLm5vZGUuZ2V0RmllbGRzKCksXG4gICAgICAgICAgY29sbGFwc2VkOiBjb2xsYXBzZWQsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSlcbiAgfSwgW2VkaXRvciwgbm9kZUtleSwgY29sbGFwc2VkXSlcblxuICBjb25zdCByZW1vdmVCbG9jayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBlZGl0b3IudXBkYXRlKCgpID0+IHtcbiAgICAgICRnZXROb2RlQnlLZXkobm9kZUtleSkucmVtb3ZlKClcbiAgICB9KVxuICB9LCBbZWRpdG9yLCBub2RlS2V5XSlcblxuICByZXR1cm4gKFxuICAgIDxSZWFjdC5GcmFnbWVudD5cbiAgICAgIDxDb2xsYXBzaWJsZVxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXN9XG4gICAgICAgIGNvbGxhcHNlZD17Y29sbGFwc2VkfVxuICAgICAgICBjb2xsYXBzaWJsZVN0eWxlPXtmYWxzZSA/ICdlcnJvcicgOiAnZGVmYXVsdCd9XG4gICAgICAgIGhlYWRlcj17XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2Jsb2NrLWhlYWRlcmB9PlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgPFBpbGxcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2Jsb2NrLXBpbGwgJHtiYXNlQ2xhc3N9X19ibG9jay1waWxsLSR7ZmllbGRzPy5kYXRhPy5ibG9ja1R5cGV9YH1cbiAgICAgICAgICAgICAgICBwaWxsU3R5bGU9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7Z2V0VHJhbnNsYXRpb24oYmxvY2subGFiZWxzLnNpbmd1bGFyLCBpMThuKX1cbiAgICAgICAgICAgICAgPC9QaWxsPlxuICAgICAgICAgICAgICA8U2VjdGlvblRpdGxlIHBhdGg9e2Ake3BhdGh9YmxvY2tOYW1lYH0gcmVhZE9ubHk9e2ZpZWxkPy5hZG1pbj8ucmVhZE9ubHl9IC8+XG4gICAgICAgICAgICAgIHtmaWVsZEhhc0Vycm9ycyAmJiA8RXJyb3JQaWxsIGNvdW50PXtjaGlsZEVycm9yUGF0aHNDb3VudH0gd2l0aE1lc3NhZ2UgLz59XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgYnV0dG9uU3R5bGU9XCJpY29uLWxhYmVsXCJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19yZW1vdmVCdXR0b25gfVxuICAgICAgICAgICAgICBkaXNhYmxlZD17ZmllbGQ/LmFkbWluPy5yZWFkT25seX1cbiAgICAgICAgICAgICAgaWNvbj1cInhcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4ge1xuICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgICAgIHJlbW92ZUJsb2NrKClcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgcm91bmRcbiAgICAgICAgICAgICAgdG9vbHRpcD1cIlJlbW92ZSBCbG9ja1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIGtleT17MH1cbiAgICAgICAgb25Ub2dnbGU9eyhjb2xsYXBzZWQpID0+IHtcbiAgICAgICAgICBzZXRDb2xsYXBzZWQoY29sbGFwc2VkKVxuICAgICAgICAgIG9uQ29sbGFwc2VkQ2hhbmdlKClcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFJlbmRlckZpZWxkc1xuICAgICAgICAgIGNsYXNzTmFtZT17YCR7YmFzZUNsYXNzfV9fZmllbGRzYH1cbiAgICAgICAgICBmaWVsZFNjaGVtYT17YmxvY2suZmllbGRzLm1hcCgoZmllbGQpID0+ICh7XG4gICAgICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgICAgIHBhdGg6IGNyZWF0ZU5lc3RlZEZpZWxkUGF0aChudWxsLCBmaWVsZCksXG4gICAgICAgICAgfSkpfVxuICAgICAgICAgIGZpZWxkVHlwZXM9e2ZpZWxkLmZpZWxkVHlwZXN9XG4gICAgICAgICAgbWFyZ2lucz1cInNtYWxsXCJcbiAgICAgICAgICBwZXJtaXNzaW9ucz17ZmllbGQucGVybWlzc2lvbnM/LmJsb2Nrcz8uW2ZpZWxkcz8uZGF0YT8uYmxvY2tUeXBlXT8uZmllbGRzfVxuICAgICAgICAgIHJlYWRPbmx5PXtmaWVsZC5hZG1pbi5yZWFkT25seX1cbiAgICAgICAgLz5cbiAgICAgIDwvQ29sbGFwc2libGU+XG5cbiAgICAgIDxGb3JtU2F2ZVBsdWdpblxuICAgICAgICBmaWVsZFNjaGVtYT17YmxvY2suZmllbGRzLm1hcCgoZmllbGQpID0+ICh7XG4gICAgICAgICAgLi4uZmllbGQsXG4gICAgICAgICAgcGF0aDogY3JlYXRlTmVzdGVkRmllbGRQYXRoKG51bGwsIGZpZWxkKSxcbiAgICAgICAgfSkpfVxuICAgICAgICBvbkNoYW5nZT17b25Gb3JtQ2hhbmdlfVxuICAgICAgLz5cbiAgICA8L1JlYWN0LkZyYWdtZW50PlxuICApXG59XG4iXSwibmFtZXMiOlsiQmxvY2tDb250ZW50IiwicHJvcHMiLCJiYXNlQ2xhc3MiLCJibG9jayIsImZpZWxkIiwiZmllbGRzIiwibm9kZUtleSIsImkxOG4iLCJ1c2VUcmFuc2xhdGlvbiIsImVkaXRvciIsInVzZUxleGljYWxDb21wb3NlckNvbnRleHQiLCJjb2xsYXBzZWQiLCJzZXRDb2xsYXBzZWQiLCJSZWFjdCIsInVzZVN0YXRlIiwiaGFzU3VibWl0dGVkIiwidXNlRm9ybVN1Ym1pdHRlZCIsImNoaWxkRXJyb3JQYXRoc0NvdW50IiwiZmllbGRIYXNFcnJvcnMiLCJjbGFzc05hbWVzIiwiZmlsdGVyIiwiQm9vbGVhbiIsImpvaW4iLCJwYXRoIiwib25Gb3JtQ2hhbmdlIiwidXNlQ2FsbGJhY2siLCJmb3JtRGF0YSIsInVwZGF0ZSIsIm5vZGUiLCIkZ2V0Tm9kZUJ5S2V5Iiwic2V0RmllbGRzIiwiZGF0YSIsIm9uQ29sbGFwc2VkQ2hhbmdlIiwiZ2V0RmllbGRzIiwicmVtb3ZlQmxvY2siLCJyZW1vdmUiLCJGcmFnbWVudCIsIkNvbGxhcHNpYmxlIiwiY2xhc3NOYW1lIiwiY29sbGFwc2libGVTdHlsZSIsImhlYWRlciIsImRpdiIsIlBpbGwiLCJibG9ja1R5cGUiLCJwaWxsU3R5bGUiLCJnZXRUcmFuc2xhdGlvbiIsImxhYmVscyIsInNpbmd1bGFyIiwiU2VjdGlvblRpdGxlIiwicmVhZE9ubHkiLCJhZG1pbiIsIkVycm9yUGlsbCIsImNvdW50Iiwid2l0aE1lc3NhZ2UiLCJCdXR0b24iLCJidXR0b25TdHlsZSIsImRpc2FibGVkIiwiaWNvbiIsIm9uQ2xpY2siLCJlIiwicHJldmVudERlZmF1bHQiLCJyb3VuZCIsInRvb2x0aXAiLCJrZXkiLCJvblRvZ2dsZSIsIlJlbmRlckZpZWxkcyIsImZpZWxkU2NoZW1hIiwibWFwIiwiY3JlYXRlTmVzdGVkRmllbGRQYXRoIiwiZmllbGRUeXBlcyIsIm1hcmdpbnMiLCJwZXJtaXNzaW9ucyIsImJsb2NrcyIsIkZvcm1TYXZlUGx1Z2luIiwib25D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
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/Blocks/component/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAS/D,OAAO,KAA+B,MAAM,OAAO,CAAA;AAInD,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAexE,OAAO,cAAc,CAAA;AAErB,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,WAAW,CAAA;IACnB,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiH1C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/Blocks/component/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEhD,OAAO,KAAkB,MAAM,OAAO,CAAA;AAEtC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAYtD,OAAO,cAAc,CAAA;AAErB,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,WAAW,CAAA;IACnB,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAsC1C,CAAA"}
@@ -8,17 +8,12 @@ Object.defineProperty(exports, "BlockComponent", {
8
8
  return BlockComponent;
9
9
  }
10
10
  });
11
- const _lexical = require("lexical");
12
- const _elements = require("payload/components/elements");
13
11
  const _forms = require("payload/components/forms");
14
12
  const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
15
- const _LexicalComposerContext = require("@lexical/react/LexicalComposerContext");
16
- const _components = require("payload/components");
17
- const _Blocks = require("payload/components/fields/Blocks");
18
- const _utilities = require("payload/utilities");
19
- const _reacti18next = require("react-i18next");
13
+ const _utilities = require("payload/components/utilities");
14
+ const _config = require("payload/config");
20
15
  const _EditorConfigProvider = require("../../../lexical/config/EditorConfigProvider");
21
- const _FormSavePlugin = require("./FormSavePlugin");
16
+ const _BlockContent = require("./BlockContent");
22
17
  require("./index.scss");
23
18
  function _getRequireWildcardCache(nodeInterop) {
24
19
  if (typeof WeakMap !== "function") return null;
@@ -62,115 +57,37 @@ function _interop_require_wildcard(obj, nodeInterop) {
62
57
  const baseClass = 'lexical-block';
63
58
  const BlockComponent = (props)=>{
64
59
  const { children, className, fields, format, nodeKey } = props;
65
- const [editor] = (0, _LexicalComposerContext.useLexicalComposerContext)();
60
+ const payloadConfig = (0, _utilities.useConfig)();
66
61
  const { editorConfig, field } = (0, _EditorConfigProvider.useEditorConfigContext)();
67
- const { i18n } = (0, _reacti18next.useTranslation)();
68
- const [collapsed, setCollapsed] = _react.default.useState(fields.collapsed);
69
- const [blockName, setBlockName] = _react.default.useState(fields.blockName);
70
- const path = `${field.path}.${0}`;
71
- const block = (editorConfig?.resolvedFeatureMap?.get('blocks')?.props)?.blocks?.find((block)=>block.slug === fields?.type);
72
- const onFormChange = (0, _react.useCallback)(({ formData })=>{
73
- editor.update(()=>{
74
- const node = (0, _lexical.$getNodeByKey)(nodeKey);
75
- if (node) {
76
- node.setFields({
77
- blockName: blockName,
78
- collapsed: collapsed,
79
- data: formData,
80
- type: block.slug
81
- });
82
- }
83
- });
84
- }, [
85
- block?.slug,
86
- editor,
87
- nodeKey,
88
- collapsed,
89
- blockName
90
- ]);
91
- const onCollapsedOrBlockNameChange = (0, _react.useCallback)(()=>{
92
- editor.update(()=>{
93
- const node = (0, _lexical.$getNodeByKey)(nodeKey);
94
- if (node) {
95
- node.setFields({
96
- ...node.getFields(),
97
- blockName: blockName,
98
- collapsed: collapsed
99
- });
100
- }
101
- });
102
- }, [
103
- editor,
104
- nodeKey,
105
- collapsed,
106
- blockName
107
- ]);
62
+ const block = (editorConfig?.resolvedFeatureMap?.get('blocks')?.props)?.blocks?.find((block)=>block.slug === fields?.data?.blockType);
63
+ // Sanitize block's fields here. This is done here and not in the feature, because the payload config is available here
64
+ const validRelationships = payloadConfig.collections.map((c)=>c.slug) || [];
65
+ block.fields = (0, _config.sanitizeFields)({
66
+ config: payloadConfig,
67
+ fields: block.fields,
68
+ validRelationships
69
+ });
108
70
  const initialDataRef = _react.default.useRef((0, _forms.buildInitialState)(fields.data || {})) // Store initial value in a ref, so it doesn't change on re-render and only gets initialized once
109
71
  ;
110
72
  // Memoized Form JSX
111
73
  const formContent = (0, _react.useMemo)(()=>{
112
74
  return block && /*#__PURE__*/ _react.default.createElement(_forms.Form, {
113
75
  initialState: initialDataRef?.current
114
- }, /*#__PURE__*/ _react.default.createElement("div", {
115
- id: `row-${0}`,
116
- key: `$row-${0}`
117
- }, /*#__PURE__*/ _react.default.createElement(_elements.Collapsible, {
118
- className: "",
119
- collapsed: collapsed,
120
- collapsibleStyle: false ? 'error' : 'default',
121
- header: /*#__PURE__*/ _react.default.createElement("div", {
122
- className: `${baseClass}__block-header`
123
- }, /*#__PURE__*/ _react.default.createElement(_components.Pill, {
124
- className: `${baseClass}__block-pill ${baseClass}__block-pill-${fields.type}`,
125
- pillStyle: "white"
126
- }, (0, _utilities.getTranslation)(block.labels.singular, i18n)), /*#__PURE__*/ _react.default.createElement(_Blocks.SectionTitle, {
127
- customOnChange: (e)=>{
128
- e.stopPropagation();
129
- e.preventDefault();
130
- setBlockName(e.target.value);
131
- onCollapsedOrBlockNameChange();
132
- },
133
- customValue: blockName,
134
- path: `${path}.blockName`,
135
- readOnly: field?.admin?.readOnly
136
- }), false && /*#__PURE__*/ _react.default.createElement(_components.ErrorPill, {
137
- count: 0,
138
- withMessage: true
139
- })),
140
- key: 0,
141
- onToggle: (collapsed)=>{
142
- setCollapsed(collapsed);
143
- onCollapsedOrBlockNameChange();
144
- }
145
- }, /*#__PURE__*/ _react.default.createElement(_forms.HiddenInput, {
146
- name: `${path}.id`,
147
- value: 0
148
- }), /*#__PURE__*/ _react.default.createElement(_forms.RenderFields, {
149
- className: `${baseClass}__fields`,
150
- fieldSchema: block.fields.map((field)=>({
151
- ...field,
152
- path: (0, _forms.createNestedFieldPath)(null, field)
153
- })),
154
- fieldTypes: field.fieldTypes,
155
- margins: "small",
156
- permissions: field.permissions?.blocks?.[fields?.type]?.fields,
157
- readOnly: field.admin.readOnly
158
- }))), /*#__PURE__*/ _react.default.createElement(_FormSavePlugin.FormSavePlugin, {
159
- fieldSchema: block.fields.map((field)=>({
160
- ...field,
161
- path: (0, _forms.createNestedFieldPath)(null, field)
162
- })),
163
- onChange: onFormChange
76
+ }, /*#__PURE__*/ _react.default.createElement(_BlockContent.BlockContent, {
77
+ baseClass: baseClass,
78
+ block: block,
79
+ field: field,
80
+ fields: fields,
81
+ nodeKey: nodeKey
164
82
  }));
165
83
  }, [
166
84
  block,
167
- onFormChange,
168
- field.fieldTypes,
169
- field.admin.readOnly
85
+ field,
86
+ nodeKey
170
87
  ]);
171
88
  return /*#__PURE__*/ _react.default.createElement("div", {
172
89
  className: baseClass
173
90
  }, formContent);
174
91
  };
175
92
 
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9CbG9ja3MvY29tcG9uZW50L2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyAkZ2V0Tm9kZUJ5S2V5LCB0eXBlIEVsZW1lbnRGb3JtYXRUeXBlIH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB7IENvbGxhcHNpYmxlIH0gZnJvbSAncGF5bG9hZC9jb21wb25lbnRzL2VsZW1lbnRzJ1xuaW1wb3J0IHtcbiAgRm9ybSxcbiAgSGlkZGVuSW5wdXQsXG4gIFJlbmRlckZpZWxkcyxcbiAgYnVpbGRJbml0aWFsU3RhdGUsXG4gIGNyZWF0ZU5lc3RlZEZpZWxkUGF0aCxcbn0gZnJvbSAncGF5bG9hZC9jb21wb25lbnRzL2Zvcm1zJ1xuaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB0eXBlIHsgQmxvY2tOb2RlIH0gZnJvbSAnLi4vbm9kZXMvQmxvY2tzTm9kZSdcblxuaW1wb3J0IHsgJGNyZWF0ZUJsb2NrTm9kZSwgdHlwZSBCbG9ja0ZpZWxkcyB9IGZyb20gJy4uL25vZGVzL0Jsb2Nrc05vZGUnXG5jb25zdCBiYXNlQ2xhc3MgPSAnbGV4aWNhbC1ibG9jaydcblxuaW1wb3J0IHR5cGUgeyBEYXRhIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCB9IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxDb21wb3NlckNvbnRleHQnXG5pbXBvcnQgeyBFcnJvclBpbGwsIFBpbGwgfSBmcm9tICdwYXlsb2FkL2NvbXBvbmVudHMnXG5pbXBvcnQgeyBSb3dBY3Rpb25zLCBTZWN0aW9uVGl0bGUgfSBmcm9tICdwYXlsb2FkL2NvbXBvbmVudHMvZmllbGRzL0Jsb2NrcydcbmltcG9ydCB7IGdldFRyYW5zbGF0aW9uIH0gZnJvbSAncGF5bG9hZC91dGlsaXRpZXMnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5cbmltcG9ydCB0eXBlIHsgQmxvY2tzRmVhdHVyZVByb3BzIH0gZnJvbSAnLi4nXG5cbmltcG9ydCB7IHVzZUVkaXRvckNvbmZpZ0NvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9sZXhpY2FsL2NvbmZpZy9FZGl0b3JDb25maWdQcm92aWRlcidcbmltcG9ydCB7IEZvcm1TYXZlUGx1Z2luIH0gZnJvbSAnLi9Gb3JtU2F2ZVBsdWdpbidcbmltcG9ydCAnLi9pbmRleC5zY3NzJ1xuXG50eXBlIFByb3BzID0ge1xuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgZmllbGRzOiBCbG9ja0ZpZWxkc1xuICBmb3JtYXQ/OiBFbGVtZW50Rm9ybWF0VHlwZVxuICBub2RlS2V5Pzogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCBCbG9ja0NvbXBvbmVudDogUmVhY3QuRkM8UHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIGNsYXNzTmFtZSwgZmllbGRzLCBmb3JtYXQsIG5vZGVLZXkgfSA9IHByb3BzXG4gIGNvbnN0IFtlZGl0b3JdID0gdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCgpXG4gIGNvbnN0IHsgZWRpdG9yQ29uZmlnLCBmaWVsZCB9ID0gdXNlRWRpdG9yQ29uZmlnQ29udGV4dCgpXG4gIGNvbnN0IHsgaTE4biB9ID0gdXNlVHJhbnNsYXRpb24oKVxuICBjb25zdCBbY29sbGFwc2VkLCBzZXRDb2xsYXBzZWRdID0gUmVhY3QudXNlU3RhdGU8Ym9vbGVhbj4oZmllbGRzLmNvbGxhcHNlZClcbiAgY29uc3QgW2Jsb2NrTmFtZSwgc2V0QmxvY2tOYW1lXSA9IFJlYWN0LnVzZVN0YXRlPHN0cmluZz4oZmllbGRzLmJsb2NrTmFtZSlcblxuICBjb25zdCBwYXRoID0gYCR7ZmllbGQucGF0aH0uJHswfWBcblxuICBjb25zdCBibG9jayA9IChcbiAgICBlZGl0b3JDb25maWc/LnJlc29sdmVkRmVhdHVyZU1hcD8uZ2V0KCdibG9ja3MnKT8ucHJvcHMgYXMgQmxvY2tzRmVhdHVyZVByb3BzXG4gICk/LmJsb2Nrcz8uZmluZCgoYmxvY2spID0+IGJsb2NrLnNsdWcgPT09IGZpZWxkcz8udHlwZSlcblxuICBjb25zdCBvbkZvcm1DaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoeyBmb3JtRGF0YSB9OiB7IGZvcm1EYXRhOiBEYXRhIH0pID0+IHtcbiAgICAgIGVkaXRvci51cGRhdGUoKCkgPT4ge1xuICAgICAgICBjb25zdCBub2RlOiBCbG9ja05vZGUgPSAkZ2V0Tm9kZUJ5S2V5KG5vZGVLZXkpXG4gICAgICAgIGlmIChub2RlKSB7XG4gICAgICAgICAgbm9kZS5zZXRGaWVsZHMoe1xuICAgICAgICAgICAgYmxvY2tOYW1lOiBibG9ja05hbWUsXG4gICAgICAgICAgICBjb2xsYXBzZWQ6IGNvbGxhcHNlZCxcbiAgICAgICAgICAgIGRhdGE6IGZvcm1EYXRhLFxuICAgICAgICAgICAgdHlwZTogYmxvY2suc2x1ZyxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0sXG4gICAgW2Jsb2NrPy5zbHVnLCBlZGl0b3IsIG5vZGVLZXksIGNvbGxhcHNlZCwgYmxvY2tOYW1lXSxcbiAgKVxuXG4gIGNvbnN0IG9uQ29sbGFwc2VkT3JCbG9ja05hbWVDaGFuZ2UgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICBjb25zdCBub2RlOiBCbG9ja05vZGUgPSAkZ2V0Tm9kZUJ5S2V5KG5vZGVLZXkpXG4gICAgICBpZiAobm9kZSkge1xuICAgICAgICBub2RlLnNldEZpZWxkcyh7XG4gICAgICAgICAgLi4ubm9kZS5nZXRGaWVsZHMoKSxcbiAgICAgICAgICBibG9ja05hbWU6IGJsb2NrTmFtZSxcbiAgICAgICAgICBjb2xsYXBzZWQ6IGNvbGxhcHNlZCxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9KVxuICB9LCBbZWRpdG9yLCBub2RlS2V5LCBjb2xsYXBzZWQsIGJsb2NrTmFtZV0pXG5cbiAgY29uc3QgaW5pdGlhbERhdGFSZWYgPSBSZWFjdC51c2VSZWY8RGF0YT4oYnVpbGRJbml0aWFsU3RhdGUoZmllbGRzLmRhdGEgfHwge30pKSAvLyBTdG9yZSBpbml0aWFsIHZhbHVlIGluIGEgcmVmLCBzbyBpdCBkb2Vzbid0IGNoYW5nZSBvbiByZS1yZW5kZXIgYW5kIG9ubHkgZ2V0cyBpbml0aWFsaXplZCBvbmNlXG5cbiAgLy8gTWVtb2l6ZWQgRm9ybSBKU1hcbiAgY29uc3QgZm9ybUNvbnRlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgYmxvY2sgJiYgKFxuICAgICAgICA8Rm9ybSBpbml0aWFsU3RhdGU9e2luaXRpYWxEYXRhUmVmPy5jdXJyZW50fT5cbiAgICAgICAgICA8ZGl2IGlkPXtgcm93LSR7MH1gfSBrZXk9e2Akcm93LSR7MH1gfT5cbiAgICAgICAgICAgIDxDb2xsYXBzaWJsZVxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJcIlxuICAgICAgICAgICAgICBjb2xsYXBzZWQ9e2NvbGxhcHNlZH1cbiAgICAgICAgICAgICAgY29sbGFwc2libGVTdHlsZT17ZmFsc2UgPyAnZXJyb3InIDogJ2RlZmF1bHQnfVxuICAgICAgICAgICAgICBoZWFkZXI9e1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19ibG9jay1oZWFkZXJgfT5cbiAgICAgICAgICAgICAgICAgIDxQaWxsXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17YCR7YmFzZUNsYXNzfV9fYmxvY2stcGlsbCAke2Jhc2VDbGFzc31fX2Jsb2NrLXBpbGwtJHtmaWVsZHMudHlwZX1gfVxuICAgICAgICAgICAgICAgICAgICBwaWxsU3R5bGU9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtnZXRUcmFuc2xhdGlvbihibG9jay5sYWJlbHMuc2luZ3VsYXIsIGkxOG4pfVxuICAgICAgICAgICAgICAgICAgPC9QaWxsPlxuICAgICAgICAgICAgICAgICAgPFNlY3Rpb25UaXRsZVxuICAgICAgICAgICAgICAgICAgICBjdXN0b21PbkNoYW5nZT17KGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgICAgICAgc2V0QmxvY2tOYW1lKGUudGFyZ2V0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgIG9uQ29sbGFwc2VkT3JCbG9ja05hbWVDaGFuZ2UoKVxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICBjdXN0b21WYWx1ZT17YmxvY2tOYW1lfVxuICAgICAgICAgICAgICAgICAgICBwYXRoPXtgJHtwYXRofS5ibG9ja05hbWVgfVxuICAgICAgICAgICAgICAgICAgICByZWFkT25seT17ZmllbGQ/LmFkbWluPy5yZWFkT25seX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICB7ZmFsc2UgJiYgPEVycm9yUGlsbCBjb3VudD17MH0gd2l0aE1lc3NhZ2UgLz59XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAga2V5PXswfVxuICAgICAgICAgICAgICBvblRvZ2dsZT17KGNvbGxhcHNlZCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldENvbGxhcHNlZChjb2xsYXBzZWQpXG4gICAgICAgICAgICAgICAgb25Db2xsYXBzZWRPckJsb2NrTmFtZUNoYW5nZSgpXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxIaWRkZW5JbnB1dCBuYW1lPXtgJHtwYXRofS5pZGB9IHZhbHVlPXswfSAvPlxuXG4gICAgICAgICAgICAgIDxSZW5kZXJGaWVsZHNcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2ZpZWxkc2B9XG4gICAgICAgICAgICAgICAgZmllbGRTY2hlbWE9e2Jsb2NrLmZpZWxkcy5tYXAoKGZpZWxkKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgLi4uZmllbGQsXG4gICAgICAgICAgICAgICAgICBwYXRoOiBjcmVhdGVOZXN0ZWRGaWVsZFBhdGgobnVsbCwgZmllbGQpLFxuICAgICAgICAgICAgICAgIH0pKX1cbiAgICAgICAgICAgICAgICBmaWVsZFR5cGVzPXtmaWVsZC5maWVsZFR5cGVzfVxuICAgICAgICAgICAgICAgIG1hcmdpbnM9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgcGVybWlzc2lvbnM9e2ZpZWxkLnBlcm1pc3Npb25zPy5ibG9ja3M/LltmaWVsZHM/LnR5cGVdPy5maWVsZHN9XG4gICAgICAgICAgICAgICAgcmVhZE9ubHk9e2ZpZWxkLmFkbWluLnJlYWRPbmx5fVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxGb3JtU2F2ZVBsdWdpblxuICAgICAgICAgICAgZmllbGRTY2hlbWE9e2Jsb2NrLmZpZWxkcy5tYXAoKGZpZWxkKSA9PiAoe1xuICAgICAgICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgICAgICAgcGF0aDogY3JlYXRlTmVzdGVkRmllbGRQYXRoKG51bGwsIGZpZWxkKSxcbiAgICAgICAgICAgIH0pKX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkZvcm1DaGFuZ2V9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9Gb3JtPlxuICAgICAgKVxuICAgIClcbiAgfSwgW2Jsb2NrLCBvbkZvcm1DaGFuZ2UsIGZpZWxkLmZpZWxkVHlwZXMsIGZpZWxkLmFkbWluLnJlYWRPbmx5XSlcblxuICByZXR1cm4gPGRpdiBjbGFzc05hbWU9e2Jhc2VDbGFzc30+e2Zvcm1Db250ZW50fTwvZGl2PlxufVxuIl0sIm5hbWVzIjpbIkJsb2NrQ29tcG9uZW50IiwiYmFzZUNsYXNzIiwicHJvcHMiLCJjaGlsZHJlbiIsImNsYXNzTmFtZSIsImZpZWxkcyIsImZvcm1hdCIsIm5vZGVLZXkiLCJlZGl0b3IiLCJ1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiZWRpdG9yQ29uZmlnIiwiZmllbGQiLCJ1c2VFZGl0b3JDb25maWdDb250ZXh0IiwiaTE4biIsInVzZVRyYW5zbGF0aW9uIiwiY29sbGFwc2VkIiwic2V0Q29sbGFwc2VkIiwiUmVhY3QiLCJ1c2VTdGF0ZSIsImJsb2NrTmFtZSIsInNldEJsb2NrTmFtZSIsInBhdGgiLCJibG9jayIsInJlc29sdmVkRmVhdHVyZU1hcCIsImdldCIsImJsb2NrcyIsImZpbmQiLCJzbHVnIiwidHlwZSIsIm9uRm9ybUNoYW5nZSIsInVzZUNhbGxiYWNrIiwiZm9ybURhdGEiLCJ1cGRhdGUiLCJub2RlIiwiJGdldE5vZGVCeUtleSIsInNldEZpZWxkcyIsImRhdGEiLCJvbkNvbGxhcHNlZE9yQmxvY2tOYW1lQ2hhbmdlIiwiZ2V0RmllbGRzIiwiaW5pdGlhbERhdGFSZWYiLCJ1c2VSZWYiLCJidWlsZEluaXRpYWxTdGF0ZSIsImZvcm1Db250ZW50IiwidXNlTWVtbyIsIkZvcm0iLCJpbml0aWFsU3RhdGUiLCJjdXJyZW50IiwiZGl2IiwiaWQiLCJrZXkiLCJDb2xsYXBzaWJsZSIsImNvbGxhcHNpYmxlU3R5bGUiLCJoZWFkZXIiLCJQaWxsIiwicGlsbFN0eWxlIiwiZ2V0VHJhbnNsYXRpb24iLCJsYWJlbHMiLCJzaW5ndWxhciIsIlNlY3Rpb25UaXRsZSIsImN1c3RvbU9uQ2hhbmdlIiwiZSIsInN0b3BQcm9wYWdhdGlvbiIsInByZXZlbnREZWZhdWx0IiwidGFyZ2V0IiwidmFsdWUiLCJjdXN0b21WYWx1ZSIsInJlYWRPbmx5IiwiYWRtaW4iLCJFcnJvclBpbGwiLCJjb3VudCIsIndpdGhNZXNzYWdlIiwib25Ub2dnbGUiLCJIaWRkZW5JbnB1dCIsIm5hbWUiLCJSZW5kZXJGaWVsZHMiLCJmaWVsZFNjaGVtYSIsIm1hcCIsImNyZWF0ZU5lc3RlZEZpZWxkUGF0aCIsImZpZWxkVHlwZXMiLCJtYXJnaW5zIiwicGVybWlzc2lvbnMiLCJGb3JtU2F2ZVBsdWdpbiIsIm9uQ2hhbmdlIl0sIm1hcHBpbmdzIjoiOzs7OytCQXNDYUE7OztlQUFBQTs7O3lCQXRDeUM7MEJBQzFCO3VCQU9yQjsrREFDcUM7d0NBU0Y7NEJBQ1Y7d0JBQ1M7MkJBQ1Y7OEJBQ0E7c0NBSVE7Z0NBQ1I7UUFDeEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFkUCxNQUFNQyxZQUFZO0FBd0JYLE1BQU1ELGlCQUFrQyxDQUFDRTtJQUM5QyxNQUFNLEVBQUVDLFFBQVEsRUFBRUMsU0FBUyxFQUFFQyxNQUFNLEVBQUVDLE1BQU0sRUFBRUMsT0FBTyxFQUFFLEdBQUdMO0lBQ3pELE1BQU0sQ0FBQ00sT0FBTyxHQUFHQyxJQUFBQSxpREFBeUI7SUFDMUMsTUFBTSxFQUFFQyxZQUFZLEVBQUVDLEtBQUssRUFBRSxHQUFHQyxJQUFBQSw0Q0FBc0I7SUFDdEQsTUFBTSxFQUFFQyxJQUFJLEVBQUUsR0FBR0MsSUFBQUEsNEJBQWM7SUFDL0IsTUFBTSxDQUFDQyxXQUFXQyxhQUFhLEdBQUdDLGNBQUssQ0FBQ0MsUUFBUSxDQUFVYixPQUFPVSxTQUFTO0lBQzFFLE1BQU0sQ0FBQ0ksV0FBV0MsYUFBYSxHQUFHSCxjQUFLLENBQUNDLFFBQVEsQ0FBU2IsT0FBT2MsU0FBUztJQUV6RSxNQUFNRSxPQUFPLENBQUMsRUFBRVYsTUFBTVUsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7SUFFakMsTUFBTUMsUUFBUSxDQUNaWixjQUFjYSxvQkFBb0JDLElBQUksV0FBV3RCLEtBQ25ELEdBQUd1QixRQUFRQyxLQUFLLENBQUNKLFFBQVVBLE1BQU1LLElBQUksS0FBS3RCLFFBQVF1QjtJQUVsRCxNQUFNQyxlQUFlQyxJQUFBQSxrQkFBVyxFQUM5QixDQUFDLEVBQUVDLFFBQVEsRUFBc0I7UUFDL0J2QixPQUFPd0IsTUFBTSxDQUFDO1lBQ1osTUFBTUMsT0FBa0JDLElBQUFBLHNCQUFhLEVBQUMzQjtZQUN0QyxJQUFJMEIsTUFBTTtnQkFDUkEsS0FBS0UsU0FBUyxDQUFDO29CQUNiaEIsV0FBV0E7b0JBQ1hKLFdBQVdBO29CQUNYcUIsTUFBTUw7b0JBQ05ILE1BQU1OLE1BQU1LLElBQUk7Z0JBQ2xCO1lBQ0Y7UUFDRjtJQUNGLEdBQ0E7UUFBQ0wsT0FBT0s7UUFBTW5CO1FBQVFEO1FBQVNRO1FBQVdJO0tBQVU7SUFHdEQsTUFBTWtCLCtCQUErQlAsSUFBQUEsa0JBQVcsRUFBQztRQUMvQ3RCLE9BQU93QixNQUFNLENBQUM7WUFDWixNQUFNQyxPQUFrQkMsSUFBQUEsc0JBQWEsRUFBQzNCO1lBQ3RDLElBQUkwQixNQUFNO2dCQUNSQSxLQUFLRSxTQUFTLENBQUM7b0JBQ2IsR0FBR0YsS0FBS0ssU0FBUyxFQUFFO29CQUNuQm5CLFdBQVdBO29CQUNYSixXQUFXQTtnQkFDYjtZQUNGO1FBQ0Y7SUFDRixHQUFHO1FBQUNQO1FBQVFEO1FBQVNRO1FBQVdJO0tBQVU7SUFFMUMsTUFBTW9CLGlCQUFpQnRCLGNBQUssQ0FBQ3VCLE1BQU0sQ0FBT0MsSUFBQUEsd0JBQWlCLEVBQUNwQyxPQUFPK0IsSUFBSSxJQUFJLENBQUMsSUFBSSxpR0FBaUc7O0lBRWpMLG9CQUFvQjtJQUNwQixNQUFNTSxjQUFjQyxJQUFBQSxjQUFPLEVBQUM7UUFDMUIsT0FDRXJCLHVCQUNFLDZCQUFDc0IsV0FBSTtZQUFDQyxjQUFjTixnQkFBZ0JPO3lCQUNsQyw2QkFBQ0M7WUFBSUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFBRUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7eUJBQ25DLDZCQUFDQyxxQkFBVztZQUNWOUMsV0FBVTtZQUNWVyxXQUFXQTtZQUNYb0Msa0JBQWtCLFFBQVEsVUFBVTtZQUNwQ0Msc0JBQ0UsNkJBQUNMO2dCQUFJM0MsV0FBVyxDQUFDLEVBQUVILFVBQVUsY0FBYyxDQUFDOzZCQUMxQyw2QkFBQ29ELGdCQUFJO2dCQUNIakQsV0FBVyxDQUFDLEVBQUVILFVBQVUsYUFBYSxFQUFFQSxVQUFVLGFBQWEsRUFBRUksT0FBT3VCLElBQUksQ0FBQyxDQUFDO2dCQUM3RTBCLFdBQVU7ZUFFVEMsSUFBQUEseUJBQWMsRUFBQ2pDLE1BQU1rQyxNQUFNLENBQUNDLFFBQVEsRUFBRTVDLHNCQUV6Qyw2QkFBQzZDLG9CQUFZO2dCQUNYQyxnQkFBZ0IsQ0FBQ0M7b0JBQ2ZBLEVBQUVDLGVBQWU7b0JBQ2pCRCxFQUFFRSxjQUFjO29CQUNoQjFDLGFBQWF3QyxFQUFFRyxNQUFNLENBQUNDLEtBQUs7b0JBQzNCM0I7Z0JBQ0Y7Z0JBQ0E0QixhQUFhOUM7Z0JBQ2JFLE1BQU0sQ0FBQyxFQUFFQSxLQUFLLFVBQVUsQ0FBQztnQkFDekI2QyxVQUFVdkQsT0FBT3dELE9BQU9EO2dCQUV6Qix1QkFBUyw2QkFBQ0UscUJBQVM7Z0JBQUNDLE9BQU87Z0JBQUdDLGFBQUFBOztZQUduQ3JCLEtBQUs7WUFDTHNCLFVBQVUsQ0FBQ3hEO2dCQUNUQyxhQUFhRDtnQkFDYnNCO1lBQ0Y7eUJBRUEsNkJBQUNtQyxrQkFBVztZQUFDQyxNQUFNLENBQUMsRUFBRXBELEtBQUssR0FBRyxDQUFDO1lBQUUyQyxPQUFPOzBCQUV4Qyw2QkFBQ1UsbUJBQVk7WUFDWHRFLFdBQVcsQ0FBQyxFQUFFSCxVQUFVLFFBQVEsQ0FBQztZQUNqQzBFLGFBQWFyRCxNQUFNakIsTUFBTSxDQUFDdUUsR0FBRyxDQUFDLENBQUNqRSxRQUFXLENBQUE7b0JBQ3hDLEdBQUdBLEtBQUs7b0JBQ1JVLE1BQU13RCxJQUFBQSw0QkFBcUIsRUFBQyxNQUFNbEU7Z0JBQ3BDLENBQUE7WUFDQW1FLFlBQVluRSxNQUFNbUUsVUFBVTtZQUM1QkMsU0FBUTtZQUNSQyxhQUFhckUsTUFBTXFFLFdBQVcsRUFBRXZELFFBQVEsQ0FBQ3BCLFFBQVF1QixLQUFLLEVBQUV2QjtZQUN4RDZELFVBQVV2RCxNQUFNd0QsS0FBSyxDQUFDRCxRQUFROzRCQUtwQyw2QkFBQ2UsOEJBQWM7WUFDYk4sYUFBYXJELE1BQU1qQixNQUFNLENBQUN1RSxHQUFHLENBQUMsQ0FBQ2pFLFFBQVcsQ0FBQTtvQkFDeEMsR0FBR0EsS0FBSztvQkFDUlUsTUFBTXdELElBQUFBLDRCQUFxQixFQUFDLE1BQU1sRTtnQkFDcEMsQ0FBQTtZQUNBdUUsVUFBVXJEOztJQUtwQixHQUFHO1FBQUNQO1FBQU9PO1FBQWNsQixNQUFNbUUsVUFBVTtRQUFFbkUsTUFBTXdELEtBQUssQ0FBQ0QsUUFBUTtLQUFDO0lBRWhFLHFCQUFPLDZCQUFDbkI7UUFBSTNDLFdBQVdIO09BQVl5QztBQUNyQyJ9
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9CbG9ja3MvY29tcG9uZW50L2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEVsZW1lbnRGb3JtYXRUeXBlIH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB7IEZvcm0sIGJ1aWxkSW5pdGlhbFN0YXRlIH0gZnJvbSAncGF5bG9hZC9jb21wb25lbnRzL2Zvcm1zJ1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8gfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgdHlwZSBCbG9ja0ZpZWxkcyB9IGZyb20gJy4uL25vZGVzL0Jsb2Nrc05vZGUnXG5jb25zdCBiYXNlQ2xhc3MgPSAnbGV4aWNhbC1ibG9jaydcblxuaW1wb3J0IHR5cGUgeyBEYXRhIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgdXNlQ29uZmlnIH0gZnJvbSAncGF5bG9hZC9jb21wb25lbnRzL3V0aWxpdGllcydcbmltcG9ydCB7IHNhbml0aXplRmllbGRzIH0gZnJvbSAncGF5bG9hZC9jb25maWcnXG5cbmltcG9ydCB0eXBlIHsgQmxvY2tzRmVhdHVyZVByb3BzIH0gZnJvbSAnLi4nXG5cbmltcG9ydCB7IHVzZUVkaXRvckNvbmZpZ0NvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9sZXhpY2FsL2NvbmZpZy9FZGl0b3JDb25maWdQcm92aWRlcidcbmltcG9ydCB7IEJsb2NrQ29udGVudCB9IGZyb20gJy4vQmxvY2tDb250ZW50J1xuaW1wb3J0ICcuL2luZGV4LnNjc3MnXG5cbnR5cGUgUHJvcHMgPSB7XG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBmaWVsZHM6IEJsb2NrRmllbGRzXG4gIGZvcm1hdD86IEVsZW1lbnRGb3JtYXRUeXBlXG4gIG5vZGVLZXk/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IEJsb2NrQ29tcG9uZW50OiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBjaGlsZHJlbiwgY2xhc3NOYW1lLCBmaWVsZHMsIGZvcm1hdCwgbm9kZUtleSB9ID0gcHJvcHNcbiAgY29uc3QgcGF5bG9hZENvbmZpZyA9IHVzZUNvbmZpZygpXG5cbiAgY29uc3QgeyBlZGl0b3JDb25maWcsIGZpZWxkIH0gPSB1c2VFZGl0b3JDb25maWdDb250ZXh0KClcblxuICBjb25zdCBibG9jayA9IChcbiAgICBlZGl0b3JDb25maWc/LnJlc29sdmVkRmVhdHVyZU1hcD8uZ2V0KCdibG9ja3MnKT8ucHJvcHMgYXMgQmxvY2tzRmVhdHVyZVByb3BzXG4gICk/LmJsb2Nrcz8uZmluZCgoYmxvY2spID0+IGJsb2NrLnNsdWcgPT09IGZpZWxkcz8uZGF0YT8uYmxvY2tUeXBlKVxuXG4gIC8vIFNhbml0aXplIGJsb2NrJ3MgZmllbGRzIGhlcmUuIFRoaXMgaXMgZG9uZSBoZXJlIGFuZCBub3QgaW4gdGhlIGZlYXR1cmUsIGJlY2F1c2UgdGhlIHBheWxvYWQgY29uZmlnIGlzIGF2YWlsYWJsZSBoZXJlXG4gIGNvbnN0IHZhbGlkUmVsYXRpb25zaGlwcyA9IHBheWxvYWRDb25maWcuY29sbGVjdGlvbnMubWFwKChjKSA9PiBjLnNsdWcpIHx8IFtdXG4gIGJsb2NrLmZpZWxkcyA9IHNhbml0aXplRmllbGRzKHtcbiAgICBjb25maWc6IHBheWxvYWRDb25maWcsXG4gICAgZmllbGRzOiBibG9jay5maWVsZHMsXG4gICAgdmFsaWRSZWxhdGlvbnNoaXBzLFxuICB9KVxuXG4gIGNvbnN0IGluaXRpYWxEYXRhUmVmID0gUmVhY3QudXNlUmVmPERhdGE+KGJ1aWxkSW5pdGlhbFN0YXRlKGZpZWxkcy5kYXRhIHx8IHt9KSkgLy8gU3RvcmUgaW5pdGlhbCB2YWx1ZSBpbiBhIHJlZiwgc28gaXQgZG9lc24ndCBjaGFuZ2Ugb24gcmUtcmVuZGVyIGFuZCBvbmx5IGdldHMgaW5pdGlhbGl6ZWQgb25jZVxuXG4gIC8vIE1lbW9pemVkIEZvcm0gSlNYXG4gIGNvbnN0IGZvcm1Db250ZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGJsb2NrICYmIChcbiAgICAgICAgPEZvcm0gaW5pdGlhbFN0YXRlPXtpbml0aWFsRGF0YVJlZj8uY3VycmVudH0+XG4gICAgICAgICAgPEJsb2NrQ29udGVudFxuICAgICAgICAgICAgYmFzZUNsYXNzPXtiYXNlQ2xhc3N9XG4gICAgICAgICAgICBibG9jaz17YmxvY2t9XG4gICAgICAgICAgICBmaWVsZD17ZmllbGR9XG4gICAgICAgICAgICBmaWVsZHM9e2ZpZWxkc31cbiAgICAgICAgICAgIG5vZGVLZXk9e25vZGVLZXl9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9Gb3JtPlxuICAgICAgKVxuICAgIClcbiAgfSwgW2Jsb2NrLCBmaWVsZCwgbm9kZUtleV0pXG5cbiAgcmV0dXJuIDxkaXYgY2xhc3NOYW1lPXtiYXNlQ2xhc3N9Pntmb3JtQ29udGVudH08L2Rpdj5cbn1cbiJdLCJuYW1lcyI6WyJCbG9ja0NvbXBvbmVudCIsImJhc2VDbGFzcyIsInByb3BzIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJmaWVsZHMiLCJmb3JtYXQiLCJub2RlS2V5IiwicGF5bG9hZENvbmZpZyIsInVzZUNvbmZpZyIsImVkaXRvckNvbmZpZyIsImZpZWxkIiwidXNlRWRpdG9yQ29uZmlnQ29udGV4dCIsImJsb2NrIiwicmVzb2x2ZWRGZWF0dXJlTWFwIiwiZ2V0IiwiYmxvY2tzIiwiZmluZCIsInNsdWciLCJkYXRhIiwiYmxvY2tUeXBlIiwidmFsaWRSZWxhdGlvbnNoaXBzIiwiY29sbGVjdGlvbnMiLCJtYXAiLCJjIiwic2FuaXRpemVGaWVsZHMiLCJjb25maWciLCJpbml0aWFsRGF0YVJlZiIsIlJlYWN0IiwidXNlUmVmIiwiYnVpbGRJbml0aWFsU3RhdGUiLCJmb3JtQ29udGVudCIsInVzZU1lbW8iLCJGb3JtIiwiaW5pdGlhbFN0YXRlIiwiY3VycmVudCIsIkJsb2NrQ29udGVudCIsImRpdiJdLCJtYXBwaW5ncyI6Ijs7OzsrQkEwQmFBOzs7ZUFBQUE7Ozt1QkF6QjJCOytEQUNUOzJCQU9MO3dCQUNLO3NDQUlROzhCQUNWO1FBQ3RCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBWFAsTUFBTUMsWUFBWTtBQXFCWCxNQUFNRCxpQkFBa0MsQ0FBQ0U7SUFDOUMsTUFBTSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsRUFBRUMsTUFBTSxFQUFFQyxNQUFNLEVBQUVDLE9BQU8sRUFBRSxHQUFHTDtJQUN6RCxNQUFNTSxnQkFBZ0JDLElBQUFBLG9CQUFTO0lBRS9CLE1BQU0sRUFBRUMsWUFBWSxFQUFFQyxLQUFLLEVBQUUsR0FBR0MsSUFBQUEsNENBQXNCO0lBRXRELE1BQU1DLFFBQVEsQ0FDWkgsY0FBY0ksb0JBQW9CQyxJQUFJLFdBQVdiLEtBQ25ELEdBQUdjLFFBQVFDLEtBQUssQ0FBQ0osUUFBVUEsTUFBTUssSUFBSSxLQUFLYixRQUFRYyxNQUFNQztJQUV4RCx1SEFBdUg7SUFDdkgsTUFBTUMscUJBQXFCYixjQUFjYyxXQUFXLENBQUNDLEdBQUcsQ0FBQyxDQUFDQyxJQUFNQSxFQUFFTixJQUFJLEtBQUssRUFBRTtJQUM3RUwsTUFBTVIsTUFBTSxHQUFHb0IsSUFBQUEsc0JBQWMsRUFBQztRQUM1QkMsUUFBUWxCO1FBQ1JILFFBQVFRLE1BQU1SLE1BQU07UUFDcEJnQjtJQUNGO0lBRUEsTUFBTU0saUJBQWlCQyxjQUFLLENBQUNDLE1BQU0sQ0FBT0MsSUFBQUEsd0JBQWlCLEVBQUN6QixPQUFPYyxJQUFJLElBQUksQ0FBQyxJQUFJLGlHQUFpRzs7SUFFakwsb0JBQW9CO0lBQ3BCLE1BQU1ZLGNBQWNDLElBQUFBLGNBQU8sRUFBQztRQUMxQixPQUNFbkIsdUJBQ0UsNkJBQUNvQixXQUFJO1lBQUNDLGNBQWNQLGdCQUFnQlE7eUJBQ2xDLDZCQUFDQywwQkFBWTtZQUNYbkMsV0FBV0E7WUFDWFksT0FBT0E7WUFDUEYsT0FBT0E7WUFDUE4sUUFBUUE7WUFDUkUsU0FBU0E7O0lBS25CLEdBQUc7UUFBQ007UUFBT0Y7UUFBT0o7S0FBUTtJQUUxQixxQkFBTyw2QkFBQzhCO1FBQUlqQyxXQUFXSDtPQUFZOEI7QUFDckMifQ==
@@ -0,0 +1,148 @@
1
+ @import 'payload/scss';
2
+
3
+ .lexical-block {
4
+ display: flex;
5
+ flex-direction: column;
6
+ gap: calc(var(--base) / 2);
7
+ font-family: var(
8
+ --font-body
9
+ ); // Reset font to non-serif, body font, as the lexical editor parent uses a serif font.
10
+
11
+ margin: 0 0 1.5em;
12
+
13
+ &__header {
14
+ h3 {
15
+ margin: 0;
16
+ }
17
+ }
18
+
19
+ &__header-wrap {
20
+ display: flex;
21
+ align-items: flex-end;
22
+ width: 100%;
23
+ justify-content: space-between;
24
+ }
25
+
26
+ &__heading-with-error {
27
+ display: flex;
28
+ align-items: center;
29
+ gap: base(0.5);
30
+ }
31
+
32
+ &--has-no-error {
33
+ > .array-field__header .array-field__heading-with-error {
34
+ color: var(--theme-text);
35
+ }
36
+ }
37
+
38
+ &--has-error {
39
+ > .array-field__header {
40
+ color: var(--theme-error-500);
41
+ }
42
+ }
43
+
44
+ &__error-pill {
45
+ align-self: center;
46
+ }
47
+
48
+ &__header-actions {
49
+ list-style: none;
50
+ margin: 0;
51
+ padding: 0;
52
+ display: flex;
53
+ }
54
+
55
+ &__header-action {
56
+ @extend %btn-reset;
57
+ cursor: pointer;
58
+ margin-left: base(0.5);
59
+
60
+ &:hover,
61
+ &:focus-visible {
62
+ text-decoration: underline;
63
+ }
64
+ }
65
+
66
+ .collapsible {
67
+ &__header-wrap {
68
+ // Make more space for the block header (default right: is base(3)) so that the remove button aligns nicely to the right
69
+ right: base(1.5);
70
+ }
71
+ }
72
+
73
+ &__removeButton {
74
+ margin: 0;
75
+ }
76
+
77
+ &__block-header {
78
+ pointer-events: none;
79
+ }
80
+
81
+ &__block-header * {
82
+ pointer-events: all;
83
+ }
84
+
85
+ &__block-header,
86
+ &__block-header div {
87
+ display: flex;
88
+ max-width: 100%;
89
+ overflow: hidden;
90
+ gap: base(0.375);
91
+ justify-content: space-between;
92
+ }
93
+
94
+ &__block-number {
95
+ flex-shrink: 0;
96
+ }
97
+
98
+ &__block-pill {
99
+ flex-shrink: 0;
100
+ display: block;
101
+ line-height: unset;
102
+ }
103
+
104
+ &__error-wrap {
105
+ position: relative;
106
+ }
107
+
108
+ &__rows {
109
+ display: flex;
110
+ flex-direction: column;
111
+ gap: calc(var(--base) / 2);
112
+ }
113
+
114
+ &__drawer-toggler {
115
+ background-color: transparent;
116
+ margin: 0;
117
+ padding: 0;
118
+ border: none;
119
+ align-self: flex-start;
120
+
121
+ .btn {
122
+ color: var(--theme-elevation-400);
123
+ margin: 0;
124
+
125
+ &:hover {
126
+ color: var(--theme-elevation-800);
127
+ }
128
+ }
129
+ }
130
+ }
131
+
132
+ html[data-theme='light'] {
133
+ .blocks-field--has-error {
134
+ .section-title__input,
135
+ .blocks-field__heading-with-error {
136
+ color: var(--theme-error-750);
137
+ }
138
+ }
139
+ }
140
+
141
+ html[data-theme='dark'] {
142
+ .blocks-field--has-error {
143
+ .section-title__input,
144
+ .blocks-field__heading-with-error {
145
+ color: var(--theme-error-500);
146
+ }
147
+ }
148
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/Blocks/drawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,cAAc,EAGpB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAA2C,MAAM,OAAO,CAAA;AAQ/D,OAAO,cAAc,CAAA;AAGrB,eAAO,MAAM,gCAAgC,EAAE,cAAc,CAAC;IAC5D,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAA;CACrC,CAAqD,CAAA;AAmCtD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAwDzC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/Blocks/drawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,cAAc,EAGpB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAA2C,MAAM,OAAO,CAAA;AAQ/D,OAAO,cAAc,CAAA;AAGrB,eAAO,MAAM,gCAAgC,EAAE,cAAc,CAAC;IAC5D,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAA;CACrC,CAAqD,CAAA;AAqCtD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAwDzC,CAAA"}