@payloadcms/richtext-lexical 0.1.0-beta.1 → 0.1.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/field/Field.d.ts.map +1 -1
- package/dist/field/Field.js +19 -4
- package/dist/field/features/Blocks/afterReadPromise.d.ts +5 -0
- package/dist/field/features/Blocks/afterReadPromise.d.ts.map +1 -0
- package/dist/field/features/Blocks/afterReadPromise.js +52 -0
- package/dist/field/features/Blocks/component/BlockContent.d.ts +14 -0
- package/dist/field/features/Blocks/component/BlockContent.d.ts.map +1 -0
- package/dist/field/features/Blocks/component/BlockContent.js +189 -0
- package/dist/field/features/Blocks/component/FormSavePlugin.d.ts +3 -2
- package/dist/field/features/Blocks/component/FormSavePlugin.d.ts.map +1 -1
- package/dist/field/features/Blocks/component/FormSavePlugin.js +4 -2
- package/dist/field/features/Blocks/component/index.d.ts.map +1 -1
- package/dist/field/features/Blocks/component/index.js +25 -105
- package/dist/field/features/Blocks/component/index.scss +24 -1
- package/dist/field/features/Blocks/drawer/index.js +9 -9
- package/dist/field/features/Blocks/index.d.ts.map +1 -1
- package/dist/field/features/Blocks/index.js +40 -19
- package/dist/field/features/Blocks/nodes/BlocksNode.d.ts +7 -6
- package/dist/field/features/Blocks/nodes/BlocksNode.d.ts.map +1 -1
- package/dist/field/features/Blocks/nodes/BlocksNode.js +9 -2
- package/dist/field/features/Blocks/plugin/index.js +3 -3
- package/dist/field/features/Blocks/validate.d.ts +5 -0
- package/dist/field/features/Blocks/validate.d.ts.map +1 -0
- package/dist/field/features/Blocks/validate.js +53 -0
- package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
- package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.js +18 -4
- package/dist/field/features/Link/plugins/floatingLinkEditor/index.scss +2 -2
- package/dist/field/features/Relationship/nodes/components/RelationshipComponent.d.ts.map +1 -1
- package/dist/field/features/Relationship/nodes/components/RelationshipComponent.js +2 -1
- package/dist/field/features/Relationship/nodes/components/index.scss +8 -0
- package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.d.ts.map +1 -1
- package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.js +20 -3
- package/dist/field/features/Upload/component/index.scss +1 -0
- package/dist/field/features/Upload/nodes/UploadNode.d.ts.map +1 -1
- package/dist/field/features/Upload/nodes/UploadNode.js +1 -1
- package/dist/field/features/types.d.ts +15 -2
- package/dist/field/features/types.d.ts.map +1 -1
- package/dist/field/index.scss +38 -0
- package/dist/field/lexical/LexicalEditor.scss +28 -26
- package/dist/field/lexical/config/sanitize.d.ts.map +1 -1
- package/dist/field/lexical/config/sanitize.js +6 -2
- package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.scss +1 -1
- package/dist/field/lexical/plugins/FloatingSelectToolbar/index.scss +1 -1
- package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts +7 -0
- package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts.map +1 -1
- package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +8 -3
- package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts +2 -2
- package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts.map +1 -1
- package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +19 -11
- package/dist/field/lexical/plugins/SlashMenu/index.d.ts.map +1 -1
- package/dist/field/lexical/plugins/SlashMenu/index.js +14 -2
- package/dist/field/lexical/plugins/SlashMenu/index.scss +9 -2
- package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.js +4 -3
- package/dist/field/lexical/theme/EditorTheme.scss +3 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -5
- package/dist/populate/defaultValue.d.ts +17 -0
- package/dist/populate/defaultValue.d.ts.map +1 -1
- package/dist/populate/defaultValue.js +31 -4
- package/dist/populate/recurseNestedFields.d.ts.map +1 -1
- package/dist/populate/recurseNestedFields.js +3 -1
- package/dist/validate/index.d.ts +7 -0
- package/dist/validate/index.d.ts.map +1 -0
- package/dist/validate/index.js +40 -0
- package/dist/validate/validateNodes.d.ts +14 -0
- package/dist/validate/validateNodes.d.ts.map +1 -0
- package/dist/validate/validateNodes.js +44 -0
- package/package.json +4 -3
- package/src/index.ts +5 -1
- package/dist/field/features/Upload/nodes/UploadNode.scss +0 -4
- package/dist/populate/validation.d.ts +0 -4
- package/dist/populate/validation.d.ts.map +0 -1
- package/dist/populate/validation.js +0 -21
|
@@ -2,10 +2,18 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
defaultRichTextValue: function() {
|
|
8
13
|
return defaultRichTextValue;
|
|
14
|
+
},
|
|
15
|
+
defaultRichTextValueV2: function() {
|
|
16
|
+
return defaultRichTextValueV2;
|
|
9
17
|
}
|
|
10
18
|
});
|
|
11
19
|
const defaultRichTextValue = {
|
|
@@ -37,5 +45,24 @@ const defaultRichTextValue = {
|
|
|
37
45
|
version: 1
|
|
38
46
|
}
|
|
39
47
|
};
|
|
48
|
+
const defaultRichTextValueV2 = {
|
|
49
|
+
root: {
|
|
50
|
+
children: [
|
|
51
|
+
{
|
|
52
|
+
children: [],
|
|
53
|
+
direction: null,
|
|
54
|
+
format: '',
|
|
55
|
+
indent: 0,
|
|
56
|
+
type: 'paragraph',
|
|
57
|
+
version: 1
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
direction: null,
|
|
61
|
+
format: '',
|
|
62
|
+
indent: 0,
|
|
63
|
+
type: 'root',
|
|
64
|
+
version: 1
|
|
65
|
+
}
|
|
66
|
+
};
|
|
40
67
|
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wb3B1bGF0ZS9kZWZhdWx0VmFsdWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGRlZmF1bHRSaWNoVGV4dFZhbHVlID0ge1xuICByb290OiB7XG4gICAgY2hpbGRyZW46IFtcbiAgICAgIHtcbiAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBkZXRhaWw6IDAsXG4gICAgICAgICAgICBmb3JtYXQ6IDAsXG4gICAgICAgICAgICBtb2RlOiAnbm9ybWFsJyxcbiAgICAgICAgICAgIHN0eWxlOiAnJyxcbiAgICAgICAgICAgIHRleHQ6ICcnLFxuICAgICAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICAgICAgdmVyc2lvbjogMSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBkaXJlY3Rpb246IG51bGwsXG4gICAgICAgIGZvcm1hdDogJycsXG4gICAgICAgIGluZGVudDogMCxcbiAgICAgICAgdHlwZTogJ3BhcmFncmFwaCcsXG4gICAgICAgIHZlcnNpb246IDEsXG4gICAgICB9LFxuICAgIF0sXG4gICAgZGlyZWN0aW9uOiBudWxsLFxuICAgIGZvcm1hdDogJycsXG4gICAgaW5kZW50OiAwLFxuICAgIHR5cGU6ICdyb290JyxcbiAgICB2ZXJzaW9uOiAxLFxuICB9LFxufVxuXG5leHBvcnQgY29uc3QgZGVmYXVsdFJpY2hUZXh0VmFsdWVWMiA9IHtcbiAgcm9vdDoge1xuICAgIGNoaWxkcmVuOiBbXG4gICAgICB7XG4gICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgZGlyZWN0aW9uOiBudWxsLFxuICAgICAgICBmb3JtYXQ6ICcnLFxuICAgICAgICBpbmRlbnQ6IDAsXG4gICAgICAgIHR5cGU6ICdwYXJhZ3JhcGgnLFxuICAgICAgICB2ZXJzaW9uOiAxLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGRpcmVjdGlvbjogbnVsbCxcbiAgICBmb3JtYXQ6ICcnLFxuICAgIGluZGVudDogMCxcbiAgICB0eXBlOiAncm9vdCcsXG4gICAgdmVyc2lvbjogMSxcbiAgfSxcbn1cbiJdLCJuYW1lcyI6WyJkZWZhdWx0UmljaFRleHRWYWx1ZSIsImRlZmF1bHRSaWNoVGV4dFZhbHVlVjIiLCJyb290IiwiY2hpbGRyZW4iLCJkZXRhaWwiLCJmb3JtYXQiLCJtb2RlIiwic3R5bGUiLCJ0ZXh0IiwidHlwZSIsInZlcnNpb24iLCJkaXJlY3Rpb24iLCJpbmRlbnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0lBQWFBLG9CQUFvQjtlQUFwQkE7O0lBOEJBQyxzQkFBc0I7ZUFBdEJBOzs7QUE5Qk4sTUFBTUQsdUJBQXVCO0lBQ2xDRSxNQUFNO1FBQ0pDLFVBQVU7WUFDUjtnQkFDRUEsVUFBVTtvQkFDUjt3QkFDRUMsUUFBUTt3QkFDUkMsUUFBUTt3QkFDUkMsTUFBTTt3QkFDTkMsT0FBTzt3QkFDUEMsTUFBTTt3QkFDTkMsTUFBTTt3QkFDTkMsU0FBUztvQkFDWDtpQkFDRDtnQkFDREMsV0FBVztnQkFDWE4sUUFBUTtnQkFDUk8sUUFBUTtnQkFDUkgsTUFBTTtnQkFDTkMsU0FBUztZQUNYO1NBQ0Q7UUFDREMsV0FBVztRQUNYTixRQUFRO1FBQ1JPLFFBQVE7UUFDUkgsTUFBTTtRQUNOQyxTQUFTO0lBQ1g7QUFDRjtBQUVPLE1BQU1ULHlCQUF5QjtJQUNwQ0MsTUFBTTtRQUNKQyxVQUFVO1lBQ1I7Z0JBQ0VBLFVBQVUsRUFBRTtnQkFDWlEsV0FBVztnQkFDWE4sUUFBUTtnQkFDUk8sUUFBUTtnQkFDUkgsTUFBTTtnQkFDTkMsU0FBUztZQUNYO1NBQ0Q7UUFDREMsV0FBVztRQUNYTixRQUFRO1FBQ1JPLFFBQVE7UUFDUkgsTUFBTTtRQUNOQyxTQUFTO0lBQ1g7QUFDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recurseNestedFields.d.ts","sourceRoot":"","sources":["../../src/populate/recurseNestedFields.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAiB,MAAM,eAAe,CAAA;AAIzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAM/D,KAAK,wBAAwB,GAAG;IAC9B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAA;IACvD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,cAAc,EAAE,OAAO,CAAA;IACvB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACzB,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,+GAU7B,wBAAwB,KAAG,
|
|
1
|
+
{"version":3,"file":"recurseNestedFields.d.ts","sourceRoot":"","sources":["../../src/populate/recurseNestedFields.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAiB,MAAM,eAAe,CAAA;AAIzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAM/D,KAAK,wBAAwB,GAAG;IAC9B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAA;IACvD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,cAAc,EAAE,OAAO,CAAA;IACvB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACzB,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,+GAU7B,wBAAwB,KAAG,IAsL7B,CAAA"}
|
|
@@ -162,6 +162,8 @@ const recurseNestedFields = ({ afterReadPromises, currentDepth = 0, data, depth,
|
|
|
162
162
|
if (field.type === 'richText' && Array.isArray(data[field.name])) {
|
|
163
163
|
data[field.name].root.children.forEach((node)=>{
|
|
164
164
|
if ('children' in node && Array.isArray(node.children)) {
|
|
165
|
+
// This assumes that the richText editor is using lexical and not slate.
|
|
166
|
+
// TODO: Throw an error if Slate is used. That would be cursed, who'd do that?
|
|
165
167
|
(0, _richTextRelationshipPromise.recurseRichText)({
|
|
166
168
|
afterReadPromises,
|
|
167
169
|
children: node.children,
|
|
@@ -179,4 +181,4 @@ const recurseNestedFields = ({ afterReadPromises, currentDepth = 0, data, depth,
|
|
|
179
181
|
});
|
|
180
182
|
};
|
|
181
183
|
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wb3B1bGF0ZS9yZWN1cnNlTmVzdGVkRmllbGRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2VyaWFsaXplZEVkaXRvclN0YXRlIH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB0eXBlIHsgRmllbGQsIFBheWxvYWRSZXF1ZXN0LCBSaWNoVGV4dEZpZWxkIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgZmllbGRBZmZlY3RzRGF0YSwgZmllbGRIYXNTdWJGaWVsZHMsIGZpZWxkSXNBcnJheVR5cGUgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdHlwZSB7IEFmdGVyUmVhZFByb21pc2UgfSBmcm9tICcuLi9maWVsZC9mZWF0dXJlcy90eXBlcydcbmltcG9ydCB0eXBlIHsgQWRhcHRlclByb3BzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IHBvcHVsYXRlIH0gZnJvbSAnLi9wb3B1bGF0ZSdcbmltcG9ydCB7IHJlY3Vyc2VSaWNoVGV4dCB9IGZyb20gJy4vcmljaFRleHRSZWxhdGlvbnNoaXBQcm9taXNlJ1xuXG50eXBlIE5lc3RlZFJpY2hUZXh0RmllbGRzQXJncyA9IHtcbiAgYWZ0ZXJSZWFkUHJvbWlzZXM6IE1hcDxzdHJpbmcsIEFycmF5PEFmdGVyUmVhZFByb21pc2U+PlxuICBjdXJyZW50RGVwdGg/OiBudW1iZXJcbiAgZGF0YTogdW5rbm93blxuICBkZXB0aDogbnVtYmVyXG4gIGZpZWxkczogRmllbGRbXVxuICBvdmVycmlkZUFjY2VzczogYm9vbGVhblxuICBwcm9taXNlczogUHJvbWlzZTx2b2lkPltdXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkczogYm9vbGVhblxufVxuXG5leHBvcnQgY29uc3QgcmVjdXJzZU5lc3RlZEZpZWxkcyA9ICh7XG4gIGFmdGVyUmVhZFByb21pc2VzLFxuICBjdXJyZW50RGVwdGggPSAwLFxuICBkYXRhLFxuICBkZXB0aCxcbiAgZmllbGRzLFxuICBvdmVycmlkZUFjY2VzcyA9IGZhbHNlLFxuICBwcm9taXNlcyxcbiAgcmVxLFxuICBzaG93SGlkZGVuRmllbGRzLFxufTogTmVzdGVkUmljaFRleHRGaWVsZHNBcmdzKTogdm9pZCA9PiB7XG4gIGZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgIGlmIChmaWVsZC50eXBlID09PSAncmVsYXRpb25zaGlwJyB8fCBmaWVsZC50eXBlID09PSAndXBsb2FkJykge1xuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdyZWxhdGlvbnNoaXAnKSB7XG4gICAgICAgIGlmIChmaWVsZC5oYXNNYW55ICYmIEFycmF5LmlzQXJyYXkoZGF0YVtmaWVsZC5uYW1lXSkpIHtcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZC5yZWxhdGlvblRvKSkge1xuICAgICAgICAgICAgZGF0YVtmaWVsZC5uYW1lXS5mb3JFYWNoKCh7IHJlbGF0aW9uVG8sIHZhbHVlIH0sIGkpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbiA9IHJlcS5wYXlsb2FkLmNvbGxlY3Rpb25zW3JlbGF0aW9uVG9dXG4gICAgICAgICAgICAgIGlmIChjb2xsZWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgcHJvbWlzZXMucHVzaChcbiAgICAgICAgICAgICAgICAgIHBvcHVsYXRlKHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IGRhdGFbZmllbGQubmFtZV0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAgICAgICAga2V5OiBpLFxuICAgICAgICAgICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkYXRhW2ZpZWxkLm5hbWVdLmZvckVhY2goKGlkLCBpKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSByZXEucGF5bG9hZC5jb2xsZWN0aW9uc1tmaWVsZC5yZWxhdGlvblRvIGFzIHN0cmluZ11cbiAgICAgICAgICAgICAgaWYgKGNvbGxlY3Rpb24pIHtcbiAgICAgICAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICAgICAgcG9wdWxhdGUoe1xuICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBkYXRhW2ZpZWxkLm5hbWVdLFxuICAgICAgICAgICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgICAgICAgICAgZmllbGQsXG4gICAgICAgICAgICAgICAgICAgIGtleTogaSxcbiAgICAgICAgICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgQXJyYXkuaXNBcnJheShmaWVsZC5yZWxhdGlvblRvKSAmJlxuICAgICAgICAgIGRhdGFbZmllbGQubmFtZV0/LnZhbHVlICYmXG4gICAgICAgICAgZGF0YVtmaWVsZC5uYW1lXT8ucmVsYXRpb25Ub1xuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gcmVxLnBheWxvYWQuY29sbGVjdGlvbnNbZGF0YVtmaWVsZC5uYW1lXS5yZWxhdGlvblRvXVxuICAgICAgICAgIHByb21pc2VzLnB1c2goXG4gICAgICAgICAgICBwb3B1bGF0ZSh7XG4gICAgICAgICAgICAgIGlkOiBkYXRhW2ZpZWxkLm5hbWVdLnZhbHVlLFxuICAgICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICAgIGRhdGE6IGRhdGFbZmllbGQubmFtZV0sXG4gICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAga2V5OiAndmFsdWUnLFxuICAgICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAodHlwZW9mIGRhdGFbZmllbGQubmFtZV0gIT09ICd1bmRlZmluZWQnICYmIHR5cGVvZiBmaWVsZC5yZWxhdGlvblRvID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gcmVxLnBheWxvYWQuY29sbGVjdGlvbnNbZmllbGQucmVsYXRpb25Ub11cbiAgICAgICAgcHJvbWlzZXMucHVzaChcbiAgICAgICAgICBwb3B1bGF0ZSh7XG4gICAgICAgICAgICBpZDogZGF0YVtmaWVsZC5uYW1lXSxcbiAgICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgIGtleTogZmllbGQubmFtZSxcbiAgICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZmllbGRIYXNTdWJGaWVsZHMoZmllbGQpICYmICFmaWVsZElzQXJyYXlUeXBlKGZpZWxkKSkge1xuICAgICAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmIHR5cGVvZiBkYXRhW2ZpZWxkLm5hbWVdID09PSAnb2JqZWN0Jykge1xuICAgICAgICByZWN1cnNlTmVzdGVkRmllbGRzKHtcbiAgICAgICAgICBhZnRlclJlYWRQcm9taXNlcyxcbiAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgZGF0YTogZGF0YVtmaWVsZC5uYW1lXSxcbiAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICBwcm9taXNlcyxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlY3Vyc2VOZXN0ZWRGaWVsZHMoe1xuICAgICAgICAgIGFmdGVyUmVhZFByb21pc2VzLFxuICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgIHByb21pc2VzLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZmllbGQudHlwZSA9PT0gJ3RhYnMnKSB7XG4gICAgICBmaWVsZC50YWJzLmZvckVhY2goKHRhYikgPT4ge1xuICAgICAgICByZWN1cnNlTmVzdGVkRmllbGRzKHtcbiAgICAgICAgICBhZnRlclJlYWRQcm9taXNlcyxcbiAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICBmaWVsZHM6IHRhYi5maWVsZHMsXG4gICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgcHJvbWlzZXMsXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgIH0pXG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShkYXRhW2ZpZWxkLm5hbWVdKSkge1xuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdibG9ja3MnKSB7XG4gICAgICAgIGRhdGFbZmllbGQubmFtZV0uZm9yRWFjaCgocm93LCBpKSA9PiB7XG4gICAgICAgICAgY29uc3QgYmxvY2sgPSBmaWVsZC5ibG9ja3MuZmluZCgoeyBzbHVnIH0pID0+IHNsdWcgPT09IHJvdz8uYmxvY2tUeXBlKVxuICAgICAgICAgIGlmIChibG9jaykge1xuICAgICAgICAgICAgcmVjdXJzZU5lc3RlZEZpZWxkcyh7XG4gICAgICAgICAgICAgIGFmdGVyUmVhZFByb21pc2VzLFxuICAgICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICAgIGRhdGE6IGRhdGFbZmllbGQubmFtZV1baV0sXG4gICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcyxcbiAgICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICAgIHByb21pc2VzLFxuICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdhcnJheScpIHtcbiAgICAgICAgZGF0YVtmaWVsZC5uYW1lXS5mb3JFYWNoKChfLCBpKSA9PiB7XG4gICAgICAgICAgcmVjdXJzZU5lc3RlZEZpZWxkcyh7XG4gICAgICAgICAgICBhZnRlclJlYWRQcm9taXNlcyxcbiAgICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICAgIGRhdGE6IGRhdGFbZmllbGQubmFtZV1baV0sXG4gICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICBwcm9taXNlcyxcbiAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZmllbGQudHlwZSA9PT0gJ3JpY2hUZXh0JyAmJiBBcnJheS5pc0FycmF5KGRhdGFbZmllbGQubmFtZV0pKSB7XG4gICAgICA7KGRhdGFbZmllbGQubmFtZV0gYXMgU2VyaWFsaXplZEVkaXRvclN0YXRlKS5yb290LmNoaWxkcmVuLmZvckVhY2goKG5vZGUpID0+IHtcbiAgICAgICAgaWYgKCdjaGlsZHJlbicgaW4gbm9kZSAmJiBBcnJheS5pc0FycmF5KG5vZGUuY2hpbGRyZW4pKSB7XG4gICAgICAgICAgcmVjdXJzZVJpY2hUZXh0KHtcbiAgICAgICAgICAgIGFmdGVyUmVhZFByb21pc2VzLFxuICAgICAgICAgICAgY2hpbGRyZW46IG5vZGUuY2hpbGRyZW4sXG4gICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgIGZpZWxkOiBmaWVsZCBhcyBSaWNoVGV4dEZpZWxkPEFkYXB0ZXJQcm9wcz4sXG4gICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgIHByb21pc2VzLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfSlcbn1cbiJdLCJuYW1lcyI6WyJyZWN1cnNlTmVzdGVkRmllbGRzIiwiYWZ0ZXJSZWFkUHJvbWlzZXMiLCJjdXJyZW50RGVwdGgiLCJkYXRhIiwiZGVwdGgiLCJmaWVsZHMiLCJvdmVycmlkZUFjY2VzcyIsInByb21pc2VzIiwicmVxIiwic2hvd0hpZGRlbkZpZWxkcyIsImZvckVhY2giLCJmaWVsZCIsInR5cGUiLCJoYXNNYW55IiwiQXJyYXkiLCJpc0FycmF5IiwibmFtZSIsInJlbGF0aW9uVG8iLCJ2YWx1ZSIsImkiLCJjb2xsZWN0aW9uIiwicGF5bG9hZCIsImNvbGxlY3Rpb25zIiwicHVzaCIsInBvcHVsYXRlIiwiaWQiLCJrZXkiLCJmaWVsZEhhc1N1YkZpZWxkcyIsImZpZWxkSXNBcnJheVR5cGUiLCJmaWVsZEFmZmVjdHNEYXRhIiwidGFicyIsInRhYiIsInJvdyIsImJsb2NrIiwiYmxvY2tzIiwiZmluZCIsInNsdWciLCJibG9ja1R5cGUiLCJfIiwicm9vdCIsImNoaWxkcmVuIiwibm9kZSIsInJlY3Vyc2VSaWNoVGV4dCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkF1QmFBOzs7ZUFBQUE7Ozt1QkFwQnlEOzBCQUs3Qzs2Q0FDTztBQWN6QixNQUFNQSxzQkFBc0IsQ0FBQyxFQUNsQ0MsaUJBQWlCLEVBQ2pCQyxlQUFlLENBQUMsRUFDaEJDLElBQUksRUFDSkMsS0FBSyxFQUNMQyxNQUFNLEVBQ05DLGlCQUFpQixLQUFLLEVBQ3RCQyxRQUFRLEVBQ1JDLEdBQUcsRUFDSEMsZ0JBQWdCLEVBQ1M7SUFDekJKLE9BQU9LLE9BQU8sQ0FBQyxDQUFDQztRQUNkLElBQUlBLE1BQU1DLElBQUksS0FBSyxrQkFBa0JELE1BQU1DLElBQUksS0FBSyxVQUFVO1lBQzVELElBQUlELE1BQU1DLElBQUksS0FBSyxnQkFBZ0I7Z0JBQ2pDLElBQUlELE1BQU1FLE9B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
|
|
184
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wb3B1bGF0ZS9yZWN1cnNlTmVzdGVkRmllbGRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2VyaWFsaXplZEVkaXRvclN0YXRlIH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB0eXBlIHsgRmllbGQsIFBheWxvYWRSZXF1ZXN0LCBSaWNoVGV4dEZpZWxkIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgZmllbGRBZmZlY3RzRGF0YSwgZmllbGRIYXNTdWJGaWVsZHMsIGZpZWxkSXNBcnJheVR5cGUgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdHlwZSB7IEFmdGVyUmVhZFByb21pc2UgfSBmcm9tICcuLi9maWVsZC9mZWF0dXJlcy90eXBlcydcbmltcG9ydCB0eXBlIHsgQWRhcHRlclByb3BzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IHBvcHVsYXRlIH0gZnJvbSAnLi9wb3B1bGF0ZSdcbmltcG9ydCB7IHJlY3Vyc2VSaWNoVGV4dCB9IGZyb20gJy4vcmljaFRleHRSZWxhdGlvbnNoaXBQcm9taXNlJ1xuXG50eXBlIE5lc3RlZFJpY2hUZXh0RmllbGRzQXJncyA9IHtcbiAgYWZ0ZXJSZWFkUHJvbWlzZXM6IE1hcDxzdHJpbmcsIEFycmF5PEFmdGVyUmVhZFByb21pc2U+PlxuICBjdXJyZW50RGVwdGg/OiBudW1iZXJcbiAgZGF0YTogdW5rbm93blxuICBkZXB0aDogbnVtYmVyXG4gIGZpZWxkczogRmllbGRbXVxuICBvdmVycmlkZUFjY2VzczogYm9vbGVhblxuICBwcm9taXNlczogUHJvbWlzZTx2b2lkPltdXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkczogYm9vbGVhblxufVxuXG5leHBvcnQgY29uc3QgcmVjdXJzZU5lc3RlZEZpZWxkcyA9ICh7XG4gIGFmdGVyUmVhZFByb21pc2VzLFxuICBjdXJyZW50RGVwdGggPSAwLFxuICBkYXRhLFxuICBkZXB0aCxcbiAgZmllbGRzLFxuICBvdmVycmlkZUFjY2VzcyA9IGZhbHNlLFxuICBwcm9taXNlcyxcbiAgcmVxLFxuICBzaG93SGlkZGVuRmllbGRzLFxufTogTmVzdGVkUmljaFRleHRGaWVsZHNBcmdzKTogdm9pZCA9PiB7XG4gIGZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgIGlmIChmaWVsZC50eXBlID09PSAncmVsYXRpb25zaGlwJyB8fCBmaWVsZC50eXBlID09PSAndXBsb2FkJykge1xuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdyZWxhdGlvbnNoaXAnKSB7XG4gICAgICAgIGlmIChmaWVsZC5oYXNNYW55ICYmIEFycmF5LmlzQXJyYXkoZGF0YVtmaWVsZC5uYW1lXSkpIHtcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZC5yZWxhdGlvblRvKSkge1xuICAgICAgICAgICAgZGF0YVtmaWVsZC5uYW1lXS5mb3JFYWNoKCh7IHJlbGF0aW9uVG8sIHZhbHVlIH0sIGkpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbiA9IHJlcS5wYXlsb2FkLmNvbGxlY3Rpb25zW3JlbGF0aW9uVG9dXG4gICAgICAgICAgICAgIGlmIChjb2xsZWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgcHJvbWlzZXMucHVzaChcbiAgICAgICAgICAgICAgICAgIHBvcHVsYXRlKHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IGRhdGFbZmllbGQubmFtZV0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAgICAgICAga2V5OiBpLFxuICAgICAgICAgICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkYXRhW2ZpZWxkLm5hbWVdLmZvckVhY2goKGlkLCBpKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSByZXEucGF5bG9hZC5jb2xsZWN0aW9uc1tmaWVsZC5yZWxhdGlvblRvIGFzIHN0cmluZ11cbiAgICAgICAgICAgICAgaWYgKGNvbGxlY3Rpb24pIHtcbiAgICAgICAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICAgICAgcG9wdWxhdGUoe1xuICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBkYXRhW2ZpZWxkLm5hbWVdLFxuICAgICAgICAgICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgICAgICAgICAgZmllbGQsXG4gICAgICAgICAgICAgICAgICAgIGtleTogaSxcbiAgICAgICAgICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgQXJyYXkuaXNBcnJheShmaWVsZC5yZWxhdGlvblRvKSAmJlxuICAgICAgICAgIGRhdGFbZmllbGQubmFtZV0/LnZhbHVlICYmXG4gICAgICAgICAgZGF0YVtmaWVsZC5uYW1lXT8ucmVsYXRpb25Ub1xuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gcmVxLnBheWxvYWQuY29sbGVjdGlvbnNbZGF0YVtmaWVsZC5uYW1lXS5yZWxhdGlvblRvXVxuICAgICAgICAgIHByb21pc2VzLnB1c2goXG4gICAgICAgICAgICBwb3B1bGF0ZSh7XG4gICAgICAgICAgICAgIGlkOiBkYXRhW2ZpZWxkLm5hbWVdLnZhbHVlLFxuICAgICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICAgIGRhdGE6IGRhdGFbZmllbGQubmFtZV0sXG4gICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAga2V5OiAndmFsdWUnLFxuICAgICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAodHlwZW9mIGRhdGFbZmllbGQubmFtZV0gIT09ICd1bmRlZmluZWQnICYmIHR5cGVvZiBmaWVsZC5yZWxhdGlvblRvID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gcmVxLnBheWxvYWQuY29sbGVjdGlvbnNbZmllbGQucmVsYXRpb25Ub11cbiAgICAgICAgcHJvbWlzZXMucHVzaChcbiAgICAgICAgICBwb3B1bGF0ZSh7XG4gICAgICAgICAgICBpZDogZGF0YVtmaWVsZC5uYW1lXSxcbiAgICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgIGtleTogZmllbGQubmFtZSxcbiAgICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZmllbGRIYXNTdWJGaWVsZHMoZmllbGQpICYmICFmaWVsZElzQXJyYXlUeXBlKGZpZWxkKSkge1xuICAgICAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmIHR5cGVvZiBkYXRhW2ZpZWxkLm5hbWVdID09PSAnb2JqZWN0Jykge1xuICAgICAgICByZWN1cnNlTmVzdGVkRmllbGRzKHtcbiAgICAgICAgICBhZnRlclJlYWRQcm9taXNlcyxcbiAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgZGF0YTogZGF0YVtmaWVsZC5uYW1lXSxcbiAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICBwcm9taXNlcyxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlY3Vyc2VOZXN0ZWRGaWVsZHMoe1xuICAgICAgICAgIGFmdGVyUmVhZFByb21pc2VzLFxuICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgIHByb21pc2VzLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZmllbGQudHlwZSA9PT0gJ3RhYnMnKSB7XG4gICAgICBmaWVsZC50YWJzLmZvckVhY2goKHRhYikgPT4ge1xuICAgICAgICByZWN1cnNlTmVzdGVkRmllbGRzKHtcbiAgICAgICAgICBhZnRlclJlYWRQcm9taXNlcyxcbiAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICBmaWVsZHM6IHRhYi5maWVsZHMsXG4gICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgcHJvbWlzZXMsXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgIH0pXG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShkYXRhW2ZpZWxkLm5hbWVdKSkge1xuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdibG9ja3MnKSB7XG4gICAgICAgIGRhdGFbZmllbGQubmFtZV0uZm9yRWFjaCgocm93LCBpKSA9PiB7XG4gICAgICAgICAgY29uc3QgYmxvY2sgPSBmaWVsZC5ibG9ja3MuZmluZCgoeyBzbHVnIH0pID0+IHNsdWcgPT09IHJvdz8uYmxvY2tUeXBlKVxuICAgICAgICAgIGlmIChibG9jaykge1xuICAgICAgICAgICAgcmVjdXJzZU5lc3RlZEZpZWxkcyh7XG4gICAgICAgICAgICAgIGFmdGVyUmVhZFByb21pc2VzLFxuICAgICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICAgIGRhdGE6IGRhdGFbZmllbGQubmFtZV1baV0sXG4gICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcyxcbiAgICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICAgIHByb21pc2VzLFxuICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdhcnJheScpIHtcbiAgICAgICAgZGF0YVtmaWVsZC5uYW1lXS5mb3JFYWNoKChfLCBpKSA9PiB7XG4gICAgICAgICAgcmVjdXJzZU5lc3RlZEZpZWxkcyh7XG4gICAgICAgICAgICBhZnRlclJlYWRQcm9taXNlcyxcbiAgICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICAgIGRhdGE6IGRhdGFbZmllbGQubmFtZV1baV0sXG4gICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICBwcm9taXNlcyxcbiAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZmllbGQudHlwZSA9PT0gJ3JpY2hUZXh0JyAmJiBBcnJheS5pc0FycmF5KGRhdGFbZmllbGQubmFtZV0pKSB7XG4gICAgICA7KGRhdGFbZmllbGQubmFtZV0gYXMgU2VyaWFsaXplZEVkaXRvclN0YXRlKS5yb290LmNoaWxkcmVuLmZvckVhY2goKG5vZGUpID0+IHtcbiAgICAgICAgaWYgKCdjaGlsZHJlbicgaW4gbm9kZSAmJiBBcnJheS5pc0FycmF5KG5vZGUuY2hpbGRyZW4pKSB7XG4gICAgICAgICAgLy8gVGhpcyBhc3N1bWVzIHRoYXQgdGhlIHJpY2hUZXh0IGVkaXRvciBpcyB1c2luZyBsZXhpY2FsIGFuZCBub3Qgc2xhdGUuXG4gICAgICAgICAgLy8gVE9ETzogVGhyb3cgYW4gZXJyb3IgaWYgU2xhdGUgaXMgdXNlZC4gVGhhdCB3b3VsZCBiZSBjdXJzZWQsIHdobydkIGRvIHRoYXQ/XG4gICAgICAgICAgcmVjdXJzZVJpY2hUZXh0KHtcbiAgICAgICAgICAgIGFmdGVyUmVhZFByb21pc2VzLFxuICAgICAgICAgICAgY2hpbGRyZW46IG5vZGUuY2hpbGRyZW4sXG4gICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgIGZpZWxkOiBmaWVsZCBhcyBSaWNoVGV4dEZpZWxkPEFkYXB0ZXJQcm9wcz4sXG4gICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgIHByb21pc2VzLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfSlcbn1cbiJdLCJuYW1lcyI6WyJyZWN1cnNlTmVzdGVkRmllbGRzIiwiYWZ0ZXJSZWFkUHJvbWlzZXMiLCJjdXJyZW50RGVwdGgiLCJkYXRhIiwiZGVwdGgiLCJmaWVsZHMiLCJvdmVycmlkZUFjY2VzcyIsInByb21pc2VzIiwicmVxIiwic2hvd0hpZGRlbkZpZWxkcyIsImZvckVhY2giLCJmaWVsZCIsInR5cGUiLCJoYXNNYW55IiwiQXJyYXkiLCJpc0FycmF5IiwibmFtZSIsInJlbGF0aW9uVG8iLCJ2YWx1ZSIsImkiLCJjb2xsZWN0aW9uIiwicGF5bG9hZCIsImNvbGxlY3Rpb25zIiwicHVzaCIsInBvcHVsYXRlIiwiaWQiLCJrZXkiLCJmaWVsZEhhc1N1YkZpZWxkcyIsImZpZWxkSXNBcnJheVR5cGUiLCJmaWVsZEFmZmVjdHNEYXRhIiwidGFicyIsInRhYiIsInJvdyIsImJsb2NrIiwiYmxvY2tzIiwiZmluZCIsInNsdWciLCJibG9ja1R5cGUiLCJfIiwicm9vdCIsImNoaWxkcmVuIiwibm9kZSIsInJlY3Vyc2VSaWNoVGV4dCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkF1QmFBOzs7ZUFBQUE7Ozt1QkFwQnlEOzBCQUs3Qzs2Q0FDTztBQWN6QixNQUFNQSxzQkFBc0IsQ0FBQyxFQUNsQ0MsaUJBQWlCLEVBQ2pCQyxlQUFlLENBQUMsRUFDaEJDLElBQUksRUFDSkMsS0FBSyxFQUNMQyxNQUFNLEVBQ05DLGlCQUFpQixLQUFLLEVBQ3RCQyxR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
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SerializedEditorState } from 'lexical';
|
|
2
|
+
import type { RichTextField, Validate } from 'payload/types';
|
|
3
|
+
import type { SanitizedEditorConfig } from '../field/lexical/config/types';
|
|
4
|
+
export declare const richTextValidateHOC: ({ editorConfig }: {
|
|
5
|
+
editorConfig: SanitizedEditorConfig;
|
|
6
|
+
}) => Validate<SerializedEditorState<import("lexical").SerializedLexicalNode>, SerializedEditorState<import("lexical").SerializedLexicalNode>, unknown, RichTextField>;
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validate/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAK1E,eAAO,MAAM,mBAAmB;kBAAsC,qBAAqB;sKAyC1F,CAAA"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "richTextValidateHOC", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return richTextValidateHOC;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _defaultValue = require("../populate/defaultValue");
|
|
12
|
+
const _validateNodes = require("./validateNodes");
|
|
13
|
+
const richTextValidateHOC = ({ editorConfig })=>{
|
|
14
|
+
const richTextValidate = async (value, options)=>{
|
|
15
|
+
const { required, t } = options;
|
|
16
|
+
if (required) {
|
|
17
|
+
if (!value || !value?.root?.children || !value?.root?.children?.length || JSON.stringify(value) === JSON.stringify(_defaultValue.defaultRichTextValue) || JSON.stringify(value) === JSON.stringify(_defaultValue.defaultRichTextValueV2)) {
|
|
18
|
+
return t('validation:required');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
// Traverse through nodes and validate them. Just like a node can hook into the population process (e.g. link or relationship nodes),
|
|
22
|
+
// they can also hook into the validation process. E.g. a block node probably has fields with validation rules.
|
|
23
|
+
const rootNodes = value?.root?.children;
|
|
24
|
+
if (rootNodes && Array.isArray(rootNodes) && rootNodes?.length) {
|
|
25
|
+
return await (0, _validateNodes.validateNodes)({
|
|
26
|
+
nodeValidations: editorConfig.features.validations,
|
|
27
|
+
nodes: rootNodes,
|
|
28
|
+
payloadConfig: options.config,
|
|
29
|
+
validation: {
|
|
30
|
+
options,
|
|
31
|
+
value
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
return true;
|
|
36
|
+
};
|
|
37
|
+
return richTextValidate;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92YWxpZGF0ZS9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZSB9IGZyb20gJ2xleGljYWwnXG5pbXBvcnQgdHlwZSB7IFJpY2hUZXh0RmllbGQsIFZhbGlkYXRlIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRFZGl0b3JDb25maWcgfSBmcm9tICcuLi9maWVsZC9sZXhpY2FsL2NvbmZpZy90eXBlcydcblxuaW1wb3J0IHsgZGVmYXVsdFJpY2hUZXh0VmFsdWUsIGRlZmF1bHRSaWNoVGV4dFZhbHVlVjIgfSBmcm9tICcuLi9wb3B1bGF0ZS9kZWZhdWx0VmFsdWUnXG5pbXBvcnQgeyB2YWxpZGF0ZU5vZGVzIH0gZnJvbSAnLi92YWxpZGF0ZU5vZGVzJ1xuXG5leHBvcnQgY29uc3QgcmljaFRleHRWYWxpZGF0ZUhPQyA9ICh7IGVkaXRvckNvbmZpZyB9OiB7IGVkaXRvckNvbmZpZzogU2FuaXRpemVkRWRpdG9yQ29uZmlnIH0pID0+IHtcbiAgY29uc3QgcmljaFRleHRWYWxpZGF0ZTogVmFsaWRhdGU8XG4gICAgU2VyaWFsaXplZEVkaXRvclN0YXRlLFxuICAgIFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZSxcbiAgICB1bmtub3duLFxuICAgIFJpY2hUZXh0RmllbGRcbiAgPiA9IGFzeW5jICh2YWx1ZSwgb3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IHsgcmVxdWlyZWQsIHQgfSA9IG9wdGlvbnNcblxuICAgIGlmIChyZXF1aXJlZCkge1xuICAgICAgaWYgKFxuICAgICAgICAhdmFsdWUgfHxcbiAgICAgICAgIXZhbHVlPy5yb290Py5jaGlsZHJlbiB8fFxuICAgICAgICAhdmFsdWU/LnJvb3Q/LmNoaWxkcmVuPy5sZW5ndGggfHxcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkodmFsdWUpID09PSBKU09OLnN0cmluZ2lmeShkZWZhdWx0UmljaFRleHRWYWx1ZSkgfHxcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkodmFsdWUpID09PSBKU09OLnN0cmluZ2lmeShkZWZhdWx0UmljaFRleHRWYWx1ZVYyKVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnJlcXVpcmVkJylcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUcmF2ZXJzZSB0aHJvdWdoIG5vZGVzIGFuZCB2YWxpZGF0ZSB0aGVtLiBKdXN0IGxpa2UgYSBub2RlIGNhbiBob29rIGludG8gdGhlIHBvcHVsYXRpb24gcHJvY2VzcyAoZS5nLiBsaW5rIG9yIHJlbGF0aW9uc2hpcCBub2RlcyksXG4gICAgLy8gdGhleSBjYW4gYWxzbyBob29rIGludG8gdGhlIHZhbGlkYXRpb24gcHJvY2Vzcy4gRS5nLiBhIGJsb2NrIG5vZGUgcHJvYmFibHkgaGFzIGZpZWxkcyB3aXRoIHZhbGlkYXRpb24gcnVsZXMuXG5cbiAgICBjb25zdCByb290Tm9kZXMgPSB2YWx1ZT8ucm9vdD8uY2hpbGRyZW5cbiAgICBpZiAocm9vdE5vZGVzICYmIEFycmF5LmlzQXJyYXkocm9vdE5vZGVzKSAmJiByb290Tm9kZXM/Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIGF3YWl0IHZhbGlkYXRlTm9kZXMoe1xuICAgICAgICBub2RlVmFsaWRhdGlvbnM6IGVkaXRvckNvbmZpZy5mZWF0dXJlcy52YWxpZGF0aW9ucyxcbiAgICAgICAgbm9kZXM6IHJvb3ROb2RlcyxcbiAgICAgICAgcGF5bG9hZENvbmZpZzogb3B0aW9ucy5jb25maWcsXG4gICAgICAgIHZhbGlkYXRpb246IHtcbiAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgIHZhbHVlLFxuICAgICAgICB9LFxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgcmV0dXJuIHJpY2hUZXh0VmFsaWRhdGVcbn1cbiJdLCJuYW1lcyI6WyJyaWNoVGV4dFZhbGlkYXRlSE9DIiwiZWRpdG9yQ29uZmlnIiwicmljaFRleHRWYWxpZGF0ZSIsInZhbHVlIiwib3B0aW9ucyIsInJlcXVpcmVkIiwidCIsInJvb3QiLCJjaGlsZHJlbiIsImxlbmd0aCIsIkpTT04iLCJzdHJpbmdpZnkiLCJkZWZhdWx0UmljaFRleHRWYWx1ZSIsImRlZmF1bHRSaWNoVGV4dFZhbHVlVjIiLCJyb290Tm9kZXMiLCJBcnJheSIsImlzQXJyYXkiLCJ2YWxpZGF0ZU5vZGVzIiwibm9kZVZhbGlkYXRpb25zIiwiZmVhdHVyZXMiLCJ2YWxpZGF0aW9ucyIsIm5vZGVzIiwicGF5bG9hZENvbmZpZyIsImNvbmZpZyIsInZhbGlkYXRpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBUWFBOzs7ZUFBQUE7Ozs4QkFIZ0Q7K0JBQy9CO0FBRXZCLE1BQU1BLHNCQUFzQixDQUFDLEVBQUVDLFlBQVksRUFBMkM7SUFDM0YsTUFBTUMsbUJBS0YsT0FBT0MsT0FBT0M7UUFDaEIsTUFBTSxFQUFFQyxRQUFRLEVBQUVDLENBQUMsRUFBRSxHQUFHRjtRQUV4QixJQUFJQyxVQUFVO1lBQ1osSUFDRSxDQUFDRixTQUNELENBQUNBLE9BQU9JLE1BQU1DLFlBQ2QsQ0FBQ0wsT0FBT0ksTUFBTUMsVUFBVUMsVUFDeEJDLEtBQUtDLFNBQVMsQ0FBQ1IsV0FBV08sS0FBS0MsU0FBUyxDQUFDQyxrQ0FBb0IsS0FDN0RGLEtBQUtDLFNBQVMsQ0FBQ1IsV0FBV08sS0FBS0MsU0FBUyxDQUFDRSxvQ0FBc0IsR0FDL0Q7Z0JBQ0EsT0FBT1AsRUFBRTtZQUNYO1FBQ0Y7UUFFQSxxSUFBcUk7UUFDckksK0dBQStHO1FBRS9HLE1BQU1RLFlBQVlYLE9BQU9JLE1BQU1DO1FBQy9CLElBQUlNLGFBQWFDLE1BQU1DLE9BQU8sQ0FBQ0YsY0FBY0EsV0FBV0wsUUFBUTtZQUM5RCxPQUFPLE1BQU1RLElBQUFBLDRCQUFhLEVBQUM7Z0JBQ3pCQyxpQkFBaUJqQixhQUFha0IsUUFBUSxDQUFDQyxXQUFXO2dCQUNsREMsT0FBT1A7Z0JBQ1BRLGVBQWVsQixRQUFRbUIsTUFBTTtnQkFDN0JDLFlBQVk7b0JBQ1ZwQjtvQkFDQUQ7Z0JBQ0Y7WUFDRjtRQUNGO1FBRUEsT0FBTztJQUNUO0lBRUEsT0FBT0Q7QUFDVCJ9
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { SerializedEditorState, SerializedLexicalNode } from 'lexical';
|
|
2
|
+
import type { SanitizedConfig } from 'payload/config';
|
|
3
|
+
import type { RichTextField, ValidateOptions } from 'payload/types';
|
|
4
|
+
import type { NodeValidation } from '../field/features/types';
|
|
5
|
+
export declare function validateNodes({ nodeValidations, nodes, payloadConfig, validation: validationFromProps, }: {
|
|
6
|
+
nodeValidations: Map<string, Array<NodeValidation>>;
|
|
7
|
+
nodes: SerializedLexicalNode[];
|
|
8
|
+
payloadConfig: SanitizedConfig;
|
|
9
|
+
validation: {
|
|
10
|
+
options: ValidateOptions<SerializedEditorState, unknown, RichTextField>;
|
|
11
|
+
value: SerializedEditorState;
|
|
12
|
+
};
|
|
13
|
+
}): Promise<string | true>;
|
|
14
|
+
//# sourceMappingURL=validateNodes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateNodes.d.ts","sourceRoot":"","sources":["../../src/validate/validateNodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAC7D,wBAAsB,aAAa,CAAC,EAClC,eAAe,EACf,KAAK,EACL,aAAa,EACb,UAAU,EAAE,mBAAmB,GAChC,EAAE;IACD,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;IACnD,KAAK,EAAE,qBAAqB,EAAE,CAAA;IAC9B,aAAa,EAAE,eAAe,CAAA;IAC9B,UAAU,EAAE;QACV,OAAO,EAAE,eAAe,CAAC,qBAAqB,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;QACvE,KAAK,EAAE,qBAAqB,CAAA;KAC7B,CAAA;CACF,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAoCzB"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "validateNodes", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return validateNodes;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
async function validateNodes({ nodeValidations, nodes, payloadConfig, validation: validationFromProps }) {
|
|
12
|
+
for (const node of nodes){
|
|
13
|
+
// Validate node
|
|
14
|
+
if (nodeValidations && typeof nodeValidations?.has === 'function' && nodeValidations?.has(node.type)) {
|
|
15
|
+
const validations = nodeValidations.get(node.type);
|
|
16
|
+
for (const validation of validations){
|
|
17
|
+
const validationResult = await validation({
|
|
18
|
+
node,
|
|
19
|
+
nodeValidations,
|
|
20
|
+
payloadConfig,
|
|
21
|
+
validation: validationFromProps
|
|
22
|
+
});
|
|
23
|
+
if (validationResult !== true) {
|
|
24
|
+
return validationResult;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
// Validate node's children
|
|
29
|
+
if ('children' in node && node?.children) {
|
|
30
|
+
const childrenValidationResult = await validateNodes({
|
|
31
|
+
nodeValidations,
|
|
32
|
+
nodes: node.children,
|
|
33
|
+
payloadConfig,
|
|
34
|
+
validation: validationFromProps
|
|
35
|
+
});
|
|
36
|
+
if (childrenValidationResult !== true) {
|
|
37
|
+
return childrenValidationResult;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92YWxpZGF0ZS92YWxpZGF0ZU5vZGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2VyaWFsaXplZEVkaXRvclN0YXRlLCBTZXJpYWxpemVkTGV4aWNhbE5vZGUgfSBmcm9tICdsZXhpY2FsJ1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRDb25maWcgfSBmcm9tICdwYXlsb2FkL2NvbmZpZydcbmltcG9ydCB0eXBlIHsgUmljaFRleHRGaWVsZCwgVmFsaWRhdGVPcHRpb25zIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHR5cGUgeyBOb2RlVmFsaWRhdGlvbiB9IGZyb20gJy4uL2ZpZWxkL2ZlYXR1cmVzL3R5cGVzJ1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHZhbGlkYXRlTm9kZXMoe1xuICBub2RlVmFsaWRhdGlvbnMsXG4gIG5vZGVzLFxuICBwYXlsb2FkQ29uZmlnLFxuICB2YWxpZGF0aW9uOiB2YWxpZGF0aW9uRnJvbVByb3BzLFxufToge1xuICBub2RlVmFsaWRhdGlvbnM6IE1hcDxzdHJpbmcsIEFycmF5PE5vZGVWYWxpZGF0aW9uPj5cbiAgbm9kZXM6IFNlcmlhbGl6ZWRMZXhpY2FsTm9kZVtdXG4gIHBheWxvYWRDb25maWc6IFNhbml0aXplZENvbmZpZ1xuICB2YWxpZGF0aW9uOiB7XG4gICAgb3B0aW9uczogVmFsaWRhdGVPcHRpb25zPFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZSwgdW5rbm93biwgUmljaFRleHRGaWVsZD5cbiAgICB2YWx1ZTogU2VyaWFsaXplZEVkaXRvclN0YXRlXG4gIH1cbn0pOiBQcm9taXNlPHN0cmluZyB8IHRydWU+IHtcbiAgZm9yIChjb25zdCBub2RlIG9mIG5vZGVzKSB7XG4gICAgLy8gVmFsaWRhdGUgbm9kZVxuICAgIGlmIChcbiAgICAgIG5vZGVWYWxpZGF0aW9ucyAmJlxuICAgICAgdHlwZW9mIG5vZGVWYWxpZGF0aW9ucz8uaGFzID09PSAnZnVuY3Rpb24nICYmXG4gICAgICBub2RlVmFsaWRhdGlvbnM/Lmhhcyhub2RlLnR5cGUpXG4gICAgKSB7XG4gICAgICBjb25zdCB2YWxpZGF0aW9ucyA9IG5vZGVWYWxpZGF0aW9ucy5nZXQobm9kZS50eXBlKVxuICAgICAgZm9yIChjb25zdCB2YWxpZGF0aW9uIG9mIHZhbGlkYXRpb25zKSB7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBhd2FpdCB2YWxpZGF0aW9uKHtcbiAgICAgICAgICBub2RlLFxuICAgICAgICAgIG5vZGVWYWxpZGF0aW9ucyxcbiAgICAgICAgICBwYXlsb2FkQ29uZmlnLFxuICAgICAgICAgIHZhbGlkYXRpb246IHZhbGlkYXRpb25Gcm9tUHJvcHMsXG4gICAgICAgIH0pXG4gICAgICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0ICE9PSB0cnVlKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbGlkYXRpb25SZXN1bHRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyBWYWxpZGF0ZSBub2RlJ3MgY2hpbGRyZW5cbiAgICBpZiAoJ2NoaWxkcmVuJyBpbiBub2RlICYmIG5vZGU/LmNoaWxkcmVuKSB7XG4gICAgICBjb25zdCBjaGlsZHJlblZhbGlkYXRpb25SZXN1bHQgPSBhd2FpdCB2YWxpZGF0ZU5vZGVzKHtcbiAgICAgICAgbm9kZVZhbGlkYXRpb25zLFxuICAgICAgICBub2Rlczogbm9kZS5jaGlsZHJlbiBhcyBTZXJpYWxpemVkTGV4aWNhbE5vZGVbXSxcbiAgICAgICAgcGF5bG9hZENvbmZpZyxcbiAgICAgICAgdmFsaWRhdGlvbjogdmFsaWRhdGlvbkZyb21Qcm9wcyxcbiAgICAgIH0pXG4gICAgICBpZiAoY2hpbGRyZW5WYWxpZGF0aW9uUmVzdWx0ICE9PSB0cnVlKSB7XG4gICAgICAgIHJldHVybiBjaGlsZHJlblZhbGlkYXRpb25SZXN1bHRcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuIl0sIm5hbWVzIjpbInZhbGlkYXRlTm9kZXMiLCJub2RlVmFsaWRhdGlvbnMiLCJub2RlcyIsInBheWxvYWRDb25maWciLCJ2YWxpZGF0aW9uIiwidmFsaWRhdGlvbkZyb21Qcm9wcyIsIm5vZGUiLCJoYXMiLCJ0eXBlIiwidmFsaWRhdGlvbnMiLCJnZXQiLCJ2YWxpZGF0aW9uUmVzdWx0IiwiY2hpbGRyZW4iLCJjaGlsZHJlblZhbGlkYXRpb25SZXN1bHQiXSwibWFwcGluZ3MiOiI7Ozs7K0JBS3NCQTs7O2VBQUFBOzs7QUFBZixlQUFlQSxjQUFjLEVBQ2xDQyxlQUFlLEVBQ2ZDLEtBQUssRUFDTEMsYUFBYSxFQUNiQyxZQUFZQyxtQkFBbUIsRUFTaEM7SUFDQyxLQUFLLE1BQU1DLFFBQVFKLE1BQU87UUFDeEIsZ0JBQWdCO1FBQ2hCLElBQ0VELG1CQUNBLE9BQU9BLGlCQUFpQk0sUUFBUSxjQUNoQ04saUJBQWlCTSxJQUFJRCxLQUFLRSxJQUFJLEdBQzlCO1lBQ0EsTUFBTUMsY0FBY1IsZ0JBQWdCUyxHQUFHLENBQUNKLEtBQUtFLElBQUk7WUFDakQsS0FBSyxNQUFNSixjQUFjSyxZQUFhO2dCQUNwQyxNQUFNRSxtQkFBbUIsTUFBTVAsV0FBVztvQkFDeENFO29CQUNBTDtvQkFDQUU7b0JBQ0FDLFlBQVlDO2dCQUNkO2dCQUNBLElBQUlNLHFCQUFxQixNQUFNO29CQUM3QixPQUFPQTtnQkFDVDtZQUNGO1FBQ0Y7UUFDQSwyQkFBMkI7UUFDM0IsSUFBSSxjQUFjTCxRQUFRQSxNQUFNTSxVQUFVO1lBQ3hDLE1BQU1DLDJCQUEyQixNQUFNYixjQUFjO2dCQUNuREM7Z0JBQ0FDLE9BQU9JLEtBQUtNLFFBQVE7Z0JBQ3BCVDtnQkFDQUMsWUFBWUM7WUFDZDtZQUNBLElBQUlRLDZCQUE2QixNQUFNO2dCQUNyQyxPQUFPQTtZQUNUO1FBQ0Y7SUFDRjtJQUVBLE9BQU87QUFDVCJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/richtext-lexical",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.3",
|
|
4
4
|
"description": "The officially supported Lexical richtext adapter for Payload",
|
|
5
5
|
"repository": "https://github.com/payloadcms/payload",
|
|
6
6
|
"license": "MIT",
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
"@lexical/selection": "0.12.2",
|
|
28
28
|
"@lexical/table": "0.12.2",
|
|
29
29
|
"@lexical/utils": "0.12.2",
|
|
30
|
+
"bson-objectid": "2.0.4",
|
|
30
31
|
"classnames": "^2.3.2",
|
|
31
32
|
"i18next": "22.5.1",
|
|
32
33
|
"katex": "0.16.8",
|
|
@@ -42,8 +43,8 @@
|
|
|
42
43
|
"devDependencies": {
|
|
43
44
|
"@types/node": "20.6.2",
|
|
44
45
|
"@types/react": "18.2.15",
|
|
45
|
-
"
|
|
46
|
-
"
|
|
46
|
+
"@payloadcms/eslint-config": "0.0.1",
|
|
47
|
+
"payload": "2.0.0-beta.17"
|
|
47
48
|
},
|
|
48
49
|
"exports": null,
|
|
49
50
|
"publishConfig": {
|
package/src/index.ts
CHANGED
|
@@ -11,8 +11,9 @@ import { defaultEditorConfig, defaultSanitizedEditorConfig } from './field/lexic
|
|
|
11
11
|
import { sanitizeEditorConfig } from './field/lexical/config/sanitize'
|
|
12
12
|
import { cloneDeep } from './field/lexical/utils/cloneDeep'
|
|
13
13
|
import { richTextRelationshipPromise } from './populate/richTextRelationshipPromise'
|
|
14
|
+
import { richTextValidateHOC } from './validate'
|
|
14
15
|
|
|
15
|
-
export function
|
|
16
|
+
export function lexicalEditor({
|
|
16
17
|
userConfig,
|
|
17
18
|
}: {
|
|
18
19
|
userConfig?: (defaultEditorConfig: EditorConfig) => EditorConfig
|
|
@@ -56,6 +57,9 @@ export function createLexical({
|
|
|
56
57
|
|
|
57
58
|
return null
|
|
58
59
|
},
|
|
60
|
+
validate: richTextValidateHOC({
|
|
61
|
+
editorConfig: finalSanitizedEditorConfig,
|
|
62
|
+
}),
|
|
59
63
|
}
|
|
60
64
|
}
|
|
61
65
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/populate/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAI5C,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAWpF,CAAA"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "richTextValidate", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return richTextValidate;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _defaultValue = require("./defaultValue");
|
|
12
|
-
const richTextValidate = (value, { required, t })=>{
|
|
13
|
-
if (required) {
|
|
14
|
-
const stringifiedDefaultValue = JSON.stringify(_defaultValue.defaultRichTextValue);
|
|
15
|
-
if (value && JSON.stringify(value) !== stringifiedDefaultValue) return true;
|
|
16
|
-
return t('validation:required');
|
|
17
|
-
}
|
|
18
|
-
return true;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wb3B1bGF0ZS92YWxpZGF0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUmljaFRleHRGaWVsZCwgVmFsaWRhdGUgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdHlwZSB7IEFkYXB0ZXJQcm9wcyB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBkZWZhdWx0UmljaFRleHRWYWx1ZSB9IGZyb20gJy4vZGVmYXVsdFZhbHVlJ1xuXG5leHBvcnQgY29uc3QgcmljaFRleHRWYWxpZGF0ZTogVmFsaWRhdGU8dW5rbm93biwgdW5rbm93biwgUmljaFRleHRGaWVsZDxBZGFwdGVyUHJvcHM+PiA9IChcbiAgdmFsdWUsXG4gIHsgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBpZiAocmVxdWlyZWQpIHtcbiAgICBjb25zdCBzdHJpbmdpZmllZERlZmF1bHRWYWx1ZSA9IEpTT04uc3RyaW5naWZ5KGRlZmF1bHRSaWNoVGV4dFZhbHVlKVxuICAgIGlmICh2YWx1ZSAmJiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkgIT09IHN0cmluZ2lmaWVkRGVmYXVsdFZhbHVlKSByZXR1cm4gdHJ1ZVxuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnJlcXVpcmVkJylcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG4iXSwibmFtZXMiOlsicmljaFRleHRWYWxpZGF0ZSIsInZhbHVlIiwicmVxdWlyZWQiLCJ0Iiwic3RyaW5naWZpZWREZWZhdWx0VmFsdWUiLCJKU09OIiwic3RyaW5naWZ5IiwiZGVmYXVsdFJpY2hUZXh0VmFsdWUiXSwibWFwcGluZ3MiOiI7Ozs7K0JBTWFBOzs7ZUFBQUE7Ozs4QkFGd0I7QUFFOUIsTUFBTUEsbUJBQTRFLENBQ3ZGQyxPQUNBLEVBQUVDLFFBQVEsRUFBRUMsQ0FBQyxFQUFFO0lBRWYsSUFBSUQsVUFBVTtRQUNaLE1BQU1FLDBCQUEwQkMsS0FBS0MsU0FBUyxDQUFDQyxrQ0FBb0I7UUFDbkUsSUFBSU4sU0FBU0ksS0FBS0MsU0FBUyxDQUFDTCxXQUFXRyx5QkFBeUIsT0FBTztRQUN2RSxPQUFPRCxFQUFFO0lBQ1g7SUFFQSxPQUFPO0FBQ1QifQ==
|