@payloadcms/plugin-form-builder 3.0.0-beta.7 → 3.0.0-canary.0017c67
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/collections/FormSubmissions/hooks/createCharge.d.ts +3 -0
- package/dist/collections/FormSubmissions/hooks/createCharge.d.ts.map +1 -0
- package/dist/collections/FormSubmissions/hooks/createCharge.js.map +1 -1
- package/dist/collections/FormSubmissions/hooks/sendEmail.d.ts +3 -0
- package/dist/collections/FormSubmissions/hooks/sendEmail.d.ts.map +1 -0
- package/dist/collections/FormSubmissions/hooks/sendEmail.js.map +1 -1
- package/dist/collections/FormSubmissions/index.d.ts +4 -0
- package/dist/collections/FormSubmissions/index.d.ts.map +1 -0
- package/dist/collections/FormSubmissions/index.js +64 -62
- package/dist/collections/FormSubmissions/index.js.map +1 -1
- package/dist/collections/Forms/DynamicFieldSelector.d.ts +4 -0
- package/dist/collections/Forms/DynamicFieldSelector.d.ts.map +1 -0
- package/dist/collections/Forms/DynamicFieldSelector.js +3 -3
- package/dist/collections/Forms/DynamicFieldSelector.js.map +1 -1
- package/dist/collections/Forms/DynamicPriceSelector.d.ts +4 -0
- package/dist/collections/Forms/DynamicPriceSelector.d.ts.map +1 -0
- package/dist/collections/Forms/DynamicPriceSelector.js +18 -9
- package/dist/collections/Forms/DynamicPriceSelector.js.map +1 -1
- package/dist/collections/Forms/fields.d.ts +6 -0
- package/dist/collections/Forms/fields.d.ts.map +1 -0
- package/dist/collections/Forms/fields.js.map +1 -1
- package/dist/collections/Forms/index.d.ts +4 -0
- package/dist/collections/Forms/index.d.ts.map +1 -0
- package/dist/collections/Forms/index.js +146 -144
- package/dist/collections/Forms/index.js.map +1 -1
- package/dist/exports/types.d.ts +2 -0
- package/dist/exports/types.d.ts.map +1 -0
- package/dist/exports/types.js +3 -0
- package/dist/exports/types.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -16
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +182 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js.map +1 -1
- package/dist/utilities/getPaymentTotal.d.ts +5 -0
- package/dist/utilities/getPaymentTotal.d.ts.map +1 -0
- package/dist/utilities/getPaymentTotal.js.map +1 -1
- package/dist/utilities/lexical/converters/heading.d.ts +3 -0
- package/dist/utilities/lexical/converters/heading.d.ts.map +1 -0
- package/dist/utilities/lexical/converters/heading.js.map +1 -1
- package/dist/utilities/lexical/converters/linebreak.d.ts +3 -0
- package/dist/utilities/lexical/converters/linebreak.d.ts.map +1 -0
- package/dist/utilities/lexical/converters/linebreak.js.map +1 -1
- package/dist/utilities/lexical/converters/link.d.ts +3 -0
- package/dist/utilities/lexical/converters/link.d.ts.map +1 -0
- package/dist/utilities/lexical/converters/link.js.map +1 -1
- package/dist/utilities/lexical/converters/list.d.ts +4 -0
- package/dist/utilities/lexical/converters/list.d.ts.map +1 -0
- package/dist/utilities/lexical/converters/list.js.map +1 -1
- package/dist/utilities/lexical/converters/paragraph.d.ts +3 -0
- package/dist/utilities/lexical/converters/paragraph.d.ts.map +1 -0
- package/dist/utilities/lexical/converters/paragraph.js.map +1 -1
- package/dist/utilities/lexical/converters/quote.d.ts +3 -0
- package/dist/utilities/lexical/converters/quote.d.ts.map +1 -0
- package/dist/utilities/lexical/converters/quote.js.map +1 -1
- package/dist/utilities/lexical/converters/text.d.ts +3 -0
- package/dist/utilities/lexical/converters/text.d.ts.map +1 -0
- package/dist/utilities/lexical/converters/text.js.map +1 -1
- package/dist/utilities/lexical/defaultConverters.d.ts +3 -0
- package/dist/utilities/lexical/defaultConverters.d.ts.map +1 -0
- package/dist/utilities/lexical/defaultConverters.js.map +1 -1
- package/dist/utilities/lexical/nodeFormat.d.ts +39 -0
- package/dist/utilities/lexical/nodeFormat.d.ts.map +1 -0
- package/dist/utilities/lexical/nodeFormat.js.map +1 -1
- package/dist/utilities/lexical/serializeLexical.d.ts +9 -0
- package/dist/utilities/lexical/serializeLexical.d.ts.map +1 -0
- package/dist/utilities/lexical/serializeLexical.js.map +1 -1
- package/dist/utilities/lexical/types.d.ts +14 -0
- package/dist/utilities/lexical/types.d.ts.map +1 -0
- package/dist/utilities/lexical/types.js.map +1 -1
- package/dist/utilities/replaceDoubleCurlys.d.ts +8 -0
- package/dist/utilities/replaceDoubleCurlys.d.ts.map +1 -0
- package/dist/utilities/replaceDoubleCurlys.js.map +1 -1
- package/dist/utilities/slate/serializeSlate.d.ts +12 -0
- package/dist/utilities/slate/serializeSlate.d.ts.map +1 -0
- package/dist/utilities/slate/serializeSlate.js.map +1 -1
- package/package.json +47 -36
- package/src/index.ts +0 -55
- package/types.d.ts +0 -1
- package/types.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getPaymentTotal.d.ts","sourceRoot":"","sources":["../../src/utilities/getPaymentTotal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,aAAa,CAAA;AAE5E,eAAO,MAAM,eAAe,SACpB,OAAO,CAAC,YAAY,CAAC,GAAG;IAC5B,WAAW,EAAE,WAAW,CAAA;CACzB,KACA,MA8CF,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/getPaymentTotal.ts"],"sourcesContent":["import type { FieldValues, PaymentField, PriceCondition } from '../types.js'\n\nexport const getPaymentTotal = (\n args: Partial<PaymentField> & {\n fieldValues: FieldValues\n },\n): number => {\n const { basePrice = 0, fieldValues, priceConditions } = args\n\n let total = basePrice\n\n if (Array.isArray(priceConditions) && priceConditions.length > 0) {\n priceConditions.forEach((priceCondition: PriceCondition) => {\n const { condition, fieldToUse, operator, valueForCondition, valueForOperator, valueType } =\n priceCondition\n\n const valueOfField = fieldValues?.[fieldToUse]\n\n if (valueOfField) {\n if (\n condition === 'hasValue' ||\n (condition === 'equals' && valueOfField === valueForCondition) ||\n (condition === 'notEquals' && valueOfField !== valueForCondition)\n ) {\n const valueToUse = Number(valueType === 'valueOfField' ? valueOfField : valueForOperator)\n switch (operator) {\n case 'add': {\n total += valueToUse\n break\n }\n case 'subtract': {\n total -= valueToUse\n break\n }\n case 'multiply': {\n total *= valueToUse\n break\n }\n case 'divide': {\n total /= valueToUse\n break\n }\n default: {\n break\n }\n }\n }\n }\n })\n }\n\n return total\n}\n"],"names":["getPaymentTotal","args","basePrice","fieldValues","priceConditions","total","Array","isArray","length","forEach","priceCondition","condition","fieldToUse","operator","valueForCondition","valueForOperator","valueType","valueOfField","valueToUse","Number"],"
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/getPaymentTotal.ts"],"sourcesContent":["import type { FieldValues, PaymentField, PriceCondition } from '../types.js'\n\nexport const getPaymentTotal = (\n args: Partial<PaymentField> & {\n fieldValues: FieldValues\n },\n): number => {\n const { basePrice = 0, fieldValues, priceConditions } = args\n\n let total = basePrice\n\n if (Array.isArray(priceConditions) && priceConditions.length > 0) {\n priceConditions.forEach((priceCondition: PriceCondition) => {\n const { condition, fieldToUse, operator, valueForCondition, valueForOperator, valueType } =\n priceCondition\n\n const valueOfField = fieldValues?.[fieldToUse]\n\n if (valueOfField) {\n if (\n condition === 'hasValue' ||\n (condition === 'equals' && valueOfField === valueForCondition) ||\n (condition === 'notEquals' && valueOfField !== valueForCondition)\n ) {\n const valueToUse = Number(valueType === 'valueOfField' ? valueOfField : valueForOperator)\n switch (operator) {\n case 'add': {\n total += valueToUse\n break\n }\n case 'subtract': {\n total -= valueToUse\n break\n }\n case 'multiply': {\n total *= valueToUse\n break\n }\n case 'divide': {\n total /= valueToUse\n break\n }\n default: {\n break\n }\n }\n }\n }\n })\n }\n\n return total\n}\n"],"names":["getPaymentTotal","args","basePrice","fieldValues","priceConditions","total","Array","isArray","length","forEach","priceCondition","condition","fieldToUse","operator","valueForCondition","valueForOperator","valueType","valueOfField","valueToUse","Number"],"mappings":"AAEA,OAAO,MAAMA,kBAAkB,CAC7BC;IAIA,MAAM,EAAEC,YAAY,CAAC,EAAEC,WAAW,EAAEC,eAAe,EAAE,GAAGH;IAExD,IAAII,QAAQH;IAEZ,IAAII,MAAMC,OAAO,CAACH,oBAAoBA,gBAAgBI,MAAM,GAAG,GAAG;QAChEJ,gBAAgBK,OAAO,CAAC,CAACC;YACvB,MAAM,EAAEC,SAAS,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,iBAAiB,EAAEC,gBAAgB,EAAEC,SAAS,EAAE,GACvFN;YAEF,MAAMO,eAAed,aAAa,CAACS,WAAW;YAE9C,IAAIK,cAAc;gBAChB,IACEN,cAAc,cACbA,cAAc,YAAYM,iBAAiBH,qBAC3CH,cAAc,eAAeM,iBAAiBH,mBAC/C;oBACA,MAAMI,aAAaC,OAAOH,cAAc,iBAAiBC,eAAeF;oBACxE,OAAQF;wBACN,KAAK;4BAAO;gCACVR,SAASa;gCACT;4BACF;wBACA,KAAK;4BAAY;gCACfb,SAASa;gCACT;4BACF;wBACA,KAAK;4BAAY;gCACfb,SAASa;gCACT;4BACF;wBACA,KAAK;4BAAU;gCACbb,SAASa;gCACT;4BACF;wBACA;4BAAS;gCACP;4BACF;oBACF;gBACF;YACF;QACF;IACF;IAEA,OAAOb;AACT,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heading.d.ts","sourceRoot":"","sources":["../../../../src/utilities/lexical/converters/heading.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAIhD,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,GAAG,CAenD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utilities/lexical/converters/heading.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const HeadingHTMLConverter: HTMLConverter<any> = {\n async converter({ converters, node, parent, submissionData }) {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n\n return '<' + node?.tag + '>' + childrenText + '</' + node?.tag + '>'\n },\n nodeTypes: ['heading'],\n}\n"],"names":["convertLexicalNodesToHTML","HeadingHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","tag","nodeTypes"],"
|
|
1
|
+
{"version":3,"sources":["../../../../src/utilities/lexical/converters/heading.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const HeadingHTMLConverter: HTMLConverter<any> = {\n async converter({ converters, node, parent, submissionData }) {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n\n return '<' + node?.tag + '>' + childrenText + '</' + node?.tag + '>'\n },\n nodeTypes: ['heading'],\n}\n"],"names":["convertLexicalNodesToHTML","HeadingHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","tag","nodeTypes"],"mappings":"AAEA,SAASA,yBAAyB,QAAQ,yBAAwB;AAElE,OAAO,MAAMC,uBAA2C;IACtD,MAAMC,WAAU,EAAEC,UAAU,EAAEC,IAAI,EAAEC,MAAM,EAAEC,cAAc,EAAE;QAC1D,MAAMC,eAAe,MAAMP,0BAA0B;YACnDG;YACAK,cAAcJ,KAAKK,QAAQ;YAC3BJ,QAAQ;gBACN,GAAGD,IAAI;gBACPC;YACF;YACAC;QACF;QAEA,OAAO,MAAMF,MAAMM,MAAM,MAAMH,eAAe,OAAOH,MAAMM,MAAM;IACnE;IACAC,WAAW;QAAC;KAAU;AACxB,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"linebreak.d.ts","sourceRoot":"","sources":["../../../../src/utilities/lexical/converters/linebreak.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,GAAG,CAKrD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utilities/lexical/converters/linebreak.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nexport const LinebreakHTMLConverter: HTMLConverter<any> = {\n converter() {\n return `<br>`\n },\n nodeTypes: ['linebreak'],\n}\n"],"names":["LinebreakHTMLConverter","converter","nodeTypes"],"
|
|
1
|
+
{"version":3,"sources":["../../../../src/utilities/lexical/converters/linebreak.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nexport const LinebreakHTMLConverter: HTMLConverter<any> = {\n converter() {\n return `<br>`\n },\n nodeTypes: ['linebreak'],\n}\n"],"names":["LinebreakHTMLConverter","converter","nodeTypes"],"mappings":"AAEA,OAAO,MAAMA,yBAA6C;IACxDC;QACE,OAAO,CAAC,IAAI,CAAC;IACf;IACAC,WAAW;QAAC;KAAY;AAC1B,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../../src/utilities/lexical/converters/link.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAKhD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,GAAG,CAyBhD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utilities/lexical/converters/link.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { replaceDoubleCurlys } from '../../replaceDoubleCurlys.js'\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const LinkHTMLConverter: HTMLConverter<any> = {\n async converter({ converters, node, parent, submissionData }) {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n\n const rel: string = node.fields.newTab ? ' rel=\"noopener noreferrer\"' : ''\n const target: string = node.fields.newTab ? ' target=\"_blank\"' : ''\n\n let href: string =\n node.fields.linkType === 'custom' ? node.fields.url : node.fields.doc?.value?.id\n\n if (submissionData) {\n href = replaceDoubleCurlys(href, submissionData)\n }\n\n return `<a href=\"${href}\"${target}${rel}>${childrenText}</a>`\n },\n nodeTypes: ['link'],\n}\n"],"names":["replaceDoubleCurlys","convertLexicalNodesToHTML","LinkHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","rel","fields","newTab","target","href","linkType","url","doc","value","id","nodeTypes"],"
|
|
1
|
+
{"version":3,"sources":["../../../../src/utilities/lexical/converters/link.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { replaceDoubleCurlys } from '../../replaceDoubleCurlys.js'\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const LinkHTMLConverter: HTMLConverter<any> = {\n async converter({ converters, node, parent, submissionData }) {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n\n const rel: string = node.fields.newTab ? ' rel=\"noopener noreferrer\"' : ''\n const target: string = node.fields.newTab ? ' target=\"_blank\"' : ''\n\n let href: string =\n node.fields.linkType === 'custom' ? node.fields.url : node.fields.doc?.value?.id\n\n if (submissionData) {\n href = replaceDoubleCurlys(href, submissionData)\n }\n\n return `<a href=\"${href}\"${target}${rel}>${childrenText}</a>`\n },\n nodeTypes: ['link'],\n}\n"],"names":["replaceDoubleCurlys","convertLexicalNodesToHTML","LinkHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","rel","fields","newTab","target","href","linkType","url","doc","value","id","nodeTypes"],"mappings":"AAEA,SAASA,mBAAmB,QAAQ,+BAA8B;AAClE,SAASC,yBAAyB,QAAQ,yBAAwB;AAElE,OAAO,MAAMC,oBAAwC;IACnD,MAAMC,WAAU,EAAEC,UAAU,EAAEC,IAAI,EAAEC,MAAM,EAAEC,cAAc,EAAE;QAC1D,MAAMC,eAAe,MAAMP,0BAA0B;YACnDG;YACAK,cAAcJ,KAAKK,QAAQ;YAC3BJ,QAAQ;gBACN,GAAGD,IAAI;gBACPC;YACF;YACAC;QACF;QAEA,MAAMI,MAAcN,KAAKO,MAAM,CAACC,MAAM,GAAG,+BAA+B;QACxE,MAAMC,SAAiBT,KAAKO,MAAM,CAACC,MAAM,GAAG,qBAAqB;QAEjE,IAAIE,OACFV,KAAKO,MAAM,CAACI,QAAQ,KAAK,WAAWX,KAAKO,MAAM,CAACK,GAAG,GAAGZ,KAAKO,MAAM,CAACM,GAAG,EAAEC,OAAOC;QAEhF,IAAIb,gBAAgB;YAClBQ,OAAOf,oBAAoBe,MAAMR;QACnC;QAEA,OAAO,CAAC,SAAS,EAAEQ,KAAK,CAAC,EAAED,OAAO,EAAEH,IAAI,CAAC,EAAEH,aAAa,IAAI,CAAC;IAC/D;IACAa,WAAW;QAAC;KAAO;AACrB,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/utilities/lexical/converters/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAIhD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,GAAG,CAehD,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,GAAG,CA4BpD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utilities/lexical/converters/list.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const ListHTMLConverter: HTMLConverter<any> = {\n converter: async ({ converters, node, parent, submissionData }) => {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n\n return `<${node?.tag} class=\"${node?.listType}\">${childrenText}</${node?.tag}>`\n },\n nodeTypes: ['list'],\n}\n\nexport const ListItemHTMLConverter: HTMLConverter<any> = {\n converter: async ({ converters, node, parent }) => {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n })\n\n if ('listType' in parent && parent?.listType === 'check') {\n return `<li aria-checked=${node.checked ? 'true' : 'false'} class=\"${\n 'list-item-checkbox' + node.checked\n ? 'list-item-checkbox-checked'\n : 'list-item-checkbox-unchecked'\n }\"\n role=\"checkbox\"\n tabIndex=${-1}\n value=${node?.value}\n >\n ${childrenText}\n </li>`\n } else {\n return `<li value=${node?.value}>${childrenText}</li>`\n }\n },\n nodeTypes: ['listitem'],\n}\n"],"names":["convertLexicalNodesToHTML","ListHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","tag","listType","nodeTypes","ListItemHTMLConverter","checked","value"],"
|
|
1
|
+
{"version":3,"sources":["../../../../src/utilities/lexical/converters/list.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const ListHTMLConverter: HTMLConverter<any> = {\n converter: async ({ converters, node, parent, submissionData }) => {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n\n return `<${node?.tag} class=\"${node?.listType}\">${childrenText}</${node?.tag}>`\n },\n nodeTypes: ['list'],\n}\n\nexport const ListItemHTMLConverter: HTMLConverter<any> = {\n converter: async ({ converters, node, parent }) => {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n })\n\n if ('listType' in parent && parent?.listType === 'check') {\n return `<li aria-checked=${node.checked ? 'true' : 'false'} class=\"${\n 'list-item-checkbox' + node.checked\n ? 'list-item-checkbox-checked'\n : 'list-item-checkbox-unchecked'\n }\"\n role=\"checkbox\"\n tabIndex=${-1}\n value=${node?.value}\n >\n ${childrenText}\n </li>`\n } else {\n return `<li value=${node?.value}>${childrenText}</li>`\n }\n },\n nodeTypes: ['listitem'],\n}\n"],"names":["convertLexicalNodesToHTML","ListHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","tag","listType","nodeTypes","ListItemHTMLConverter","checked","value"],"mappings":"AAEA,SAASA,yBAAyB,QAAQ,yBAAwB;AAElE,OAAO,MAAMC,oBAAwC;IACnDC,WAAW,OAAO,EAAEC,UAAU,EAAEC,IAAI,EAAEC,MAAM,EAAEC,cAAc,EAAE;QAC5D,MAAMC,eAAe,MAAMP,0BAA0B;YACnDG;YACAK,cAAcJ,KAAKK,QAAQ;YAC3BJ,QAAQ;gBACN,GAAGD,IAAI;gBACPC;YACF;YACAC;QACF;QAEA,OAAO,CAAC,CAAC,EAAEF,MAAMM,IAAI,QAAQ,EAAEN,MAAMO,SAAS,EAAE,EAAEJ,aAAa,EAAE,EAAEH,MAAMM,IAAI,CAAC,CAAC;IACjF;IACAE,WAAW;QAAC;KAAO;AACrB,EAAC;AAED,OAAO,MAAMC,wBAA4C;IACvDX,WAAW,OAAO,EAAEC,UAAU,EAAEC,IAAI,EAAEC,MAAM,EAAE;QAC5C,MAAME,eAAe,MAAMP,0BAA0B;YACnDG;YACAK,cAAcJ,KAAKK,QAAQ;YAC3BJ,QAAQ;gBACN,GAAGD,IAAI;gBACPC;YACF;QACF;QAEA,IAAI,cAAcA,UAAUA,QAAQM,aAAa,SAAS;YACxD,OAAO,CAAC,iBAAiB,EAAEP,KAAKU,OAAO,GAAG,SAAS,QAAQ,QAAQ,EACjE,uBAAuBV,KAAKU,OAAO,GAC/B,+BACA,+BACL;;mBAEY,EAAE,CAAC,EAAE;gBACR,EAAEV,MAAMW,MAAM;;UAEpB,EAAER,aAAa;eACV,CAAC;QACZ,OAAO;YACL,OAAO,CAAC,UAAU,EAAEH,MAAMW,MAAM,CAAC,EAAER,aAAa,KAAK,CAAC;QACxD;IACF;IACAK,WAAW;QAAC;KAAW;AACzB,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paragraph.d.ts","sourceRoot":"","sources":["../../../../src/utilities/lexical/converters/paragraph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAIhD,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,GAAG,CAcrD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utilities/lexical/converters/paragraph.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const ParagraphHTMLConverter: HTMLConverter<any> = {\n async converter({ converters, node, parent, submissionData }) {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n return `<p>${childrenText}</p>`\n },\n nodeTypes: ['paragraph'],\n}\n"],"names":["convertLexicalNodesToHTML","ParagraphHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","nodeTypes"],"
|
|
1
|
+
{"version":3,"sources":["../../../../src/utilities/lexical/converters/paragraph.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const ParagraphHTMLConverter: HTMLConverter<any> = {\n async converter({ converters, node, parent, submissionData }) {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n return `<p>${childrenText}</p>`\n },\n nodeTypes: ['paragraph'],\n}\n"],"names":["convertLexicalNodesToHTML","ParagraphHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","nodeTypes"],"mappings":"AAEA,SAASA,yBAAyB,QAAQ,yBAAwB;AAElE,OAAO,MAAMC,yBAA6C;IACxD,MAAMC,WAAU,EAAEC,UAAU,EAAEC,IAAI,EAAEC,MAAM,EAAEC,cAAc,EAAE;QAC1D,MAAMC,eAAe,MAAMP,0BAA0B;YACnDG;YACAK,cAAcJ,KAAKK,QAAQ;YAC3BJ,QAAQ;gBACN,GAAGD,IAAI;gBACPC;YACF;YACAC;QACF;QACA,OAAO,CAAC,GAAG,EAAEC,aAAa,IAAI,CAAC;IACjC;IACAG,WAAW;QAAC;KAAY;AAC1B,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quote.d.ts","sourceRoot":"","sources":["../../../../src/utilities/lexical/converters/quote.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAIhD,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC,GAAG,CAejD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utilities/lexical/converters/quote.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const QuoteHTMLConverter: HTMLConverter<any> = {\n async converter({ converters, node, parent, submissionData }) {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n\n return `<blockquote>${childrenText}</blockquote>`\n },\n nodeTypes: ['quote'],\n}\n"],"names":["convertLexicalNodesToHTML","QuoteHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","nodeTypes"],"
|
|
1
|
+
{"version":3,"sources":["../../../../src/utilities/lexical/converters/quote.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { convertLexicalNodesToHTML } from '../serializeLexical.js'\n\nexport const QuoteHTMLConverter: HTMLConverter<any> = {\n async converter({ converters, node, parent, submissionData }) {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: node.children,\n parent: {\n ...node,\n parent,\n },\n submissionData,\n })\n\n return `<blockquote>${childrenText}</blockquote>`\n },\n nodeTypes: ['quote'],\n}\n"],"names":["convertLexicalNodesToHTML","QuoteHTMLConverter","converter","converters","node","parent","submissionData","childrenText","lexicalNodes","children","nodeTypes"],"mappings":"AAEA,SAASA,yBAAyB,QAAQ,yBAAwB;AAElE,OAAO,MAAMC,qBAAyC;IACpD,MAAMC,WAAU,EAAEC,UAAU,EAAEC,IAAI,EAAEC,MAAM,EAAEC,cAAc,EAAE;QAC1D,MAAMC,eAAe,MAAMP,0BAA0B;YACnDG;YACAK,cAAcJ,KAAKK,QAAQ;YAC3BJ,QAAQ;gBACN,GAAGD,IAAI;gBACPC;YACF;YACAC;QACF;QAEA,OAAO,CAAC,YAAY,EAAEC,aAAa,aAAa,CAAC;IACnD;IACAG,WAAW;QAAC;KAAQ;AACtB,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../../src/utilities/lexical/converters/text.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAKhD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,GAAG,CAiChD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utilities/lexical/converters/text.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { replaceDoubleCurlys } from '../../replaceDoubleCurlys.js'\nimport { NodeFormat } from '../nodeFormat.js'\n\nexport const TextHTMLConverter: HTMLConverter<any> = {\n converter({ node, submissionData }) {\n let text = node.text\n\n if (submissionData) {\n text = replaceDoubleCurlys(text, submissionData)\n }\n\n if (node.format & NodeFormat.IS_BOLD) {\n text = `<strong>${text}</strong>`\n }\n if (node.format & NodeFormat.IS_ITALIC) {\n text = `<em>${text}</em>`\n }\n if (node.format & NodeFormat.IS_STRIKETHROUGH) {\n text = `<span style=\"text-decoration: line-through\">${text}</span>`\n }\n if (node.format & NodeFormat.IS_UNDERLINE) {\n text = `<span style=\"text-decoration: underline\">${text}</span>`\n }\n if (node.format & NodeFormat.IS_CODE) {\n text = `<code>${text}</code>`\n }\n if (node.format & NodeFormat.IS_SUBSCRIPT) {\n text = `<sub>${text}</sub>`\n }\n if (node.format & NodeFormat.IS_SUPERSCRIPT) {\n text = `<sup>${text}</sup>`\n }\n\n return text\n },\n nodeTypes: ['text'],\n}\n"],"names":["replaceDoubleCurlys","NodeFormat","TextHTMLConverter","converter","node","submissionData","text","format","IS_BOLD","IS_ITALIC","IS_STRIKETHROUGH","IS_UNDERLINE","IS_CODE","IS_SUBSCRIPT","IS_SUPERSCRIPT","nodeTypes"],"
|
|
1
|
+
{"version":3,"sources":["../../../../src/utilities/lexical/converters/text.ts"],"sourcesContent":["import type { HTMLConverter } from '../types.js'\n\nimport { replaceDoubleCurlys } from '../../replaceDoubleCurlys.js'\nimport { NodeFormat } from '../nodeFormat.js'\n\nexport const TextHTMLConverter: HTMLConverter<any> = {\n converter({ node, submissionData }) {\n let text = node.text\n\n if (submissionData) {\n text = replaceDoubleCurlys(text, submissionData)\n }\n\n if (node.format & NodeFormat.IS_BOLD) {\n text = `<strong>${text}</strong>`\n }\n if (node.format & NodeFormat.IS_ITALIC) {\n text = `<em>${text}</em>`\n }\n if (node.format & NodeFormat.IS_STRIKETHROUGH) {\n text = `<span style=\"text-decoration: line-through\">${text}</span>`\n }\n if (node.format & NodeFormat.IS_UNDERLINE) {\n text = `<span style=\"text-decoration: underline\">${text}</span>`\n }\n if (node.format & NodeFormat.IS_CODE) {\n text = `<code>${text}</code>`\n }\n if (node.format & NodeFormat.IS_SUBSCRIPT) {\n text = `<sub>${text}</sub>`\n }\n if (node.format & NodeFormat.IS_SUPERSCRIPT) {\n text = `<sup>${text}</sup>`\n }\n\n return text\n },\n nodeTypes: ['text'],\n}\n"],"names":["replaceDoubleCurlys","NodeFormat","TextHTMLConverter","converter","node","submissionData","text","format","IS_BOLD","IS_ITALIC","IS_STRIKETHROUGH","IS_UNDERLINE","IS_CODE","IS_SUBSCRIPT","IS_SUPERSCRIPT","nodeTypes"],"mappings":"AAEA,SAASA,mBAAmB,QAAQ,+BAA8B;AAClE,SAASC,UAAU,QAAQ,mBAAkB;AAE7C,OAAO,MAAMC,oBAAwC;IACnDC,WAAU,EAAEC,IAAI,EAAEC,cAAc,EAAE;QAChC,IAAIC,OAAOF,KAAKE,IAAI;QAEpB,IAAID,gBAAgB;YAClBC,OAAON,oBAAoBM,MAAMD;QACnC;QAEA,IAAID,KAAKG,MAAM,GAAGN,WAAWO,OAAO,EAAE;YACpCF,OAAO,CAAC,QAAQ,EAAEA,KAAK,SAAS,CAAC;QACnC;QACA,IAAIF,KAAKG,MAAM,GAAGN,WAAWQ,SAAS,EAAE;YACtCH,OAAO,CAAC,IAAI,EAAEA,KAAK,KAAK,CAAC;QAC3B;QACA,IAAIF,KAAKG,MAAM,GAAGN,WAAWS,gBAAgB,EAAE;YAC7CJ,OAAO,CAAC,4CAA4C,EAAEA,KAAK,OAAO,CAAC;QACrE;QACA,IAAIF,KAAKG,MAAM,GAAGN,WAAWU,YAAY,EAAE;YACzCL,OAAO,CAAC,yCAAyC,EAAEA,KAAK,OAAO,CAAC;QAClE;QACA,IAAIF,KAAKG,MAAM,GAAGN,WAAWW,OAAO,EAAE;YACpCN,OAAO,CAAC,MAAM,EAAEA,KAAK,OAAO,CAAC;QAC/B;QACA,IAAIF,KAAKG,MAAM,GAAGN,WAAWY,YAAY,EAAE;YACzCP,OAAO,CAAC,KAAK,EAAEA,KAAK,MAAM,CAAC;QAC7B;QACA,IAAIF,KAAKG,MAAM,GAAGN,WAAWa,cAAc,EAAE;YAC3CR,OAAO,CAAC,KAAK,EAAEA,KAAK,MAAM,CAAC;QAC7B;QAEA,OAAOA;IACT;IACAS,WAAW;QAAC;KAAO;AACrB,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaultConverters.d.ts","sourceRoot":"","sources":["../../../src/utilities/lexical/defaultConverters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAU/C,eAAO,MAAM,qBAAqB,EAAE,aAAa,EAShD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/lexical/defaultConverters.ts"],"sourcesContent":["import type { HTMLConverter } from './types.js'\n\nimport { HeadingHTMLConverter } from './converters/heading.js'\nimport { LinebreakHTMLConverter } from './converters/linebreak.js'\nimport { LinkHTMLConverter } from './converters/link.js'\nimport { ListHTMLConverter, ListItemHTMLConverter } from './converters/list.js'\nimport { ParagraphHTMLConverter } from './converters/paragraph.js'\nimport { QuoteHTMLConverter } from './converters/quote.js'\nimport { TextHTMLConverter } from './converters/text.js'\n\nexport const defaultHTMLConverters: HTMLConverter[] = [\n ParagraphHTMLConverter,\n TextHTMLConverter,\n LinebreakHTMLConverter,\n LinkHTMLConverter,\n HeadingHTMLConverter,\n QuoteHTMLConverter,\n ListHTMLConverter,\n ListItemHTMLConverter,\n]\n"],"names":["HeadingHTMLConverter","LinebreakHTMLConverter","LinkHTMLConverter","ListHTMLConverter","ListItemHTMLConverter","ParagraphHTMLConverter","QuoteHTMLConverter","TextHTMLConverter","defaultHTMLConverters"],"
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/lexical/defaultConverters.ts"],"sourcesContent":["import type { HTMLConverter } from './types.js'\n\nimport { HeadingHTMLConverter } from './converters/heading.js'\nimport { LinebreakHTMLConverter } from './converters/linebreak.js'\nimport { LinkHTMLConverter } from './converters/link.js'\nimport { ListHTMLConverter, ListItemHTMLConverter } from './converters/list.js'\nimport { ParagraphHTMLConverter } from './converters/paragraph.js'\nimport { QuoteHTMLConverter } from './converters/quote.js'\nimport { TextHTMLConverter } from './converters/text.js'\n\nexport const defaultHTMLConverters: HTMLConverter[] = [\n ParagraphHTMLConverter,\n TextHTMLConverter,\n LinebreakHTMLConverter,\n LinkHTMLConverter,\n HeadingHTMLConverter,\n QuoteHTMLConverter,\n ListHTMLConverter,\n ListItemHTMLConverter,\n]\n"],"names":["HeadingHTMLConverter","LinebreakHTMLConverter","LinkHTMLConverter","ListHTMLConverter","ListItemHTMLConverter","ParagraphHTMLConverter","QuoteHTMLConverter","TextHTMLConverter","defaultHTMLConverters"],"mappings":"AAEA,SAASA,oBAAoB,QAAQ,0BAAyB;AAC9D,SAASC,sBAAsB,QAAQ,4BAA2B;AAClE,SAASC,iBAAiB,QAAQ,uBAAsB;AACxD,SAASC,iBAAiB,EAAEC,qBAAqB,QAAQ,uBAAsB;AAC/E,SAASC,sBAAsB,QAAQ,4BAA2B;AAClE,SAASC,kBAAkB,QAAQ,wBAAuB;AAC1D,SAASC,iBAAiB,QAAQ,uBAAsB;AAExD,OAAO,MAAMC,wBAAyC;IACpDH;IACAE;IACAN;IACAC;IACAF;IACAM;IACAH;IACAC;CACD,CAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export declare const NodeFormat: {
|
|
2
|
+
readonly DOM_ELEMENT_TYPE: 1;
|
|
3
|
+
readonly DOM_TEXT_TYPE: 3;
|
|
4
|
+
readonly NO_DIRTY_NODES: 0;
|
|
5
|
+
readonly HAS_DIRTY_NODES: 1;
|
|
6
|
+
readonly FULL_RECONCILE: 2;
|
|
7
|
+
readonly IS_NORMAL: 0;
|
|
8
|
+
readonly IS_TOKEN: 1;
|
|
9
|
+
readonly IS_SEGMENTED: 2;
|
|
10
|
+
readonly IS_INERT: 3;
|
|
11
|
+
readonly IS_BOLD: 1;
|
|
12
|
+
readonly IS_ITALIC: number;
|
|
13
|
+
readonly IS_STRIKETHROUGH: number;
|
|
14
|
+
readonly IS_UNDERLINE: number;
|
|
15
|
+
readonly IS_CODE: number;
|
|
16
|
+
readonly IS_SUBSCRIPT: number;
|
|
17
|
+
readonly IS_SUPERSCRIPT: number;
|
|
18
|
+
readonly IS_HIGHLIGHT: number;
|
|
19
|
+
readonly IS_DIRECTIONLESS: 1;
|
|
20
|
+
readonly IS_UNMERGEABLE: number;
|
|
21
|
+
readonly IS_ALIGN_LEFT: 1;
|
|
22
|
+
readonly IS_ALIGN_CENTER: 2;
|
|
23
|
+
readonly IS_ALIGN_RIGHT: 3;
|
|
24
|
+
readonly IS_ALIGN_JUSTIFY: 4;
|
|
25
|
+
readonly IS_ALIGN_START: 5;
|
|
26
|
+
readonly IS_ALIGN_END: 6;
|
|
27
|
+
};
|
|
28
|
+
export declare const IS_ALL_FORMATTING: number;
|
|
29
|
+
export declare const NON_BREAKING_SPACE = "\u00A0";
|
|
30
|
+
export declare const DOUBLE_LINE_BREAK = "\n\n";
|
|
31
|
+
export declare const RTL_REGEX: RegExp;
|
|
32
|
+
export declare const LTR_REGEX: RegExp;
|
|
33
|
+
export declare const TEXT_TYPE_TO_FORMAT: Record<any | string, number>;
|
|
34
|
+
export declare const DETAIL_TYPE_TO_DETAIL: Record<any | string, number>;
|
|
35
|
+
export declare const ELEMENT_TYPE_TO_FORMAT: Record<Exclude<any, ''>, number>;
|
|
36
|
+
export declare const ELEMENT_FORMAT_TO_TYPE: Record<number, any>;
|
|
37
|
+
export declare const TEXT_MODE_TO_TYPE: Record<any, 0 | 1 | 2>;
|
|
38
|
+
export declare const TEXT_TYPE_TO_MODE: Record<number, any>;
|
|
39
|
+
//# sourceMappingURL=nodeFormat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodeFormat.d.ts","sourceRoot":"","sources":["../../../src/utilities/lexical/nodeFormat.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;CA+Bb,CAAA;AAEV,eAAO,MAAM,iBAAiB,QAQL,CAAA;AAGzB,eAAO,MAAM,kBAAkB,WAAW,CAAA;AAE1C,eAAO,MAAM,iBAAiB,SAAS,CAAA;AAYvC,eAAO,MAAM,SAAS,QAA8C,CAAA;AAEpE,eAAO,MAAM,SAAS,QAA8C,CAAA;AAEpE,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,GAAG,GAAG,MAAM,EAAE,MAAM,CAS5D,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,GAAG,GAAG,MAAM,EAAE,MAAM,CAG9D,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,MAAM,CAOnE,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAOtD,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAIpD,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAIjD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/lexical/nodeFormat.ts"],"sourcesContent":["/* eslint-disable perfectionist/sort-objects */\n/* eslint-disable regexp/no-obscure-range */\n/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\n//This copy-and-pasted from lexical here: https://github.com/facebook/lexical/blob/c2ceee223f46543d12c574e62155e619f9a18a5d/packages/lexical/src/LexicalConstants.ts\n\n// DOM\nexport const NodeFormat = {\n DOM_ELEMENT_TYPE: 1,\n DOM_TEXT_TYPE: 3,\n // Reconciling\n NO_DIRTY_NODES: 0,\n HAS_DIRTY_NODES: 1,\n FULL_RECONCILE: 2,\n // Text node modes\n IS_NORMAL: 0,\n IS_TOKEN: 1,\n IS_SEGMENTED: 2,\n IS_INERT: 3,\n // Text node formatting\n IS_BOLD: 1,\n IS_ITALIC: 1 << 1,\n IS_STRIKETHROUGH: 1 << 2,\n IS_UNDERLINE: 1 << 3,\n IS_CODE: 1 << 4,\n IS_SUBSCRIPT: 1 << 5,\n IS_SUPERSCRIPT: 1 << 6,\n IS_HIGHLIGHT: 1 << 7,\n // Text node details\n IS_DIRECTIONLESS: 1,\n IS_UNMERGEABLE: 1 << 1,\n // Element node formatting\n IS_ALIGN_LEFT: 1,\n IS_ALIGN_CENTER: 2,\n IS_ALIGN_RIGHT: 3,\n IS_ALIGN_JUSTIFY: 4,\n IS_ALIGN_START: 5,\n IS_ALIGN_END: 6,\n} as const\n\nexport const IS_ALL_FORMATTING =\n NodeFormat.IS_BOLD |\n NodeFormat.IS_ITALIC |\n NodeFormat.IS_STRIKETHROUGH |\n NodeFormat.IS_UNDERLINE |\n NodeFormat.IS_CODE |\n NodeFormat.IS_SUBSCRIPT |\n NodeFormat.IS_SUPERSCRIPT |\n NodeFormat.IS_HIGHLIGHT\n\n// Reconciliation\nexport const NON_BREAKING_SPACE = '\\u00A0'\n\nexport const DOUBLE_LINE_BREAK = '\\n\\n'\n\n// For FF, we need to use a non-breaking space, or it gets composition\n// in a stuck state.\n\nconst RTL = '\\u0591-\\u07FF\\uFB1D-\\uFDFD\\uFE70-\\uFEFC'\nconst LTR =\n 'A-Za-z\\u00C0-\\u00D6\\u00D8-\\u00F6' +\n '\\u00F8-\\u02B8\\u0300-\\u0590\\u0800-\\u1FFF\\u200E\\u2C00-\\uFB1C' +\n '\\uFE00-\\uFE6F\\uFEFD-\\uFFFF'\n\n// eslint-disable-next-line no-misleading-character-class,regexp/no-misleading-unicode-character\nexport const RTL_REGEX = new RegExp('^[^' + LTR + ']*[' + RTL + ']')\n// eslint-disable-next-line no-misleading-character-class,regexp/no-misleading-unicode-character\nexport const LTR_REGEX = new RegExp('^[^' + RTL + ']*[' + LTR + ']')\n\nexport const TEXT_TYPE_TO_FORMAT: Record<any | string, number> = {\n bold: NodeFormat.IS_BOLD,\n code: NodeFormat.IS_CODE,\n highlight: NodeFormat.IS_HIGHLIGHT,\n italic: NodeFormat.IS_ITALIC,\n strikethrough: NodeFormat.IS_STRIKETHROUGH,\n subscript: NodeFormat.IS_SUBSCRIPT,\n superscript: NodeFormat.IS_SUPERSCRIPT,\n underline: NodeFormat.IS_UNDERLINE,\n}\n\nexport const DETAIL_TYPE_TO_DETAIL: Record<any | string, number> = {\n directionless: NodeFormat.IS_DIRECTIONLESS,\n unmergeable: NodeFormat.IS_UNMERGEABLE,\n}\n\nexport const ELEMENT_TYPE_TO_FORMAT: Record<Exclude<any, ''>, number> = {\n center: NodeFormat.IS_ALIGN_CENTER,\n end: NodeFormat.IS_ALIGN_END,\n justify: NodeFormat.IS_ALIGN_JUSTIFY,\n left: NodeFormat.IS_ALIGN_LEFT,\n right: NodeFormat.IS_ALIGN_RIGHT,\n start: NodeFormat.IS_ALIGN_START,\n}\n\nexport const ELEMENT_FORMAT_TO_TYPE: Record<number, any> = {\n [NodeFormat.IS_ALIGN_CENTER]: 'center',\n [NodeFormat.IS_ALIGN_END]: 'end',\n [NodeFormat.IS_ALIGN_JUSTIFY]: 'justify',\n [NodeFormat.IS_ALIGN_LEFT]: 'left',\n [NodeFormat.IS_ALIGN_RIGHT]: 'right',\n [NodeFormat.IS_ALIGN_START]: 'start',\n}\n\nexport const TEXT_MODE_TO_TYPE: Record<any, 0 | 1 | 2> = {\n normal: NodeFormat.IS_NORMAL,\n segmented: NodeFormat.IS_SEGMENTED,\n token: NodeFormat.IS_TOKEN,\n}\n\nexport const TEXT_TYPE_TO_MODE: Record<number, any> = {\n [NodeFormat.IS_NORMAL]: 'normal',\n [NodeFormat.IS_SEGMENTED]: 'segmented',\n [NodeFormat.IS_TOKEN]: 'token',\n}\n"],"names":["NodeFormat","DOM_ELEMENT_TYPE","DOM_TEXT_TYPE","NO_DIRTY_NODES","HAS_DIRTY_NODES","FULL_RECONCILE","IS_NORMAL","IS_TOKEN","IS_SEGMENTED","IS_INERT","IS_BOLD","IS_ITALIC","IS_STRIKETHROUGH","IS_UNDERLINE","IS_CODE","IS_SUBSCRIPT","IS_SUPERSCRIPT","IS_HIGHLIGHT","IS_DIRECTIONLESS","IS_UNMERGEABLE","IS_ALIGN_LEFT","IS_ALIGN_CENTER","IS_ALIGN_RIGHT","IS_ALIGN_JUSTIFY","IS_ALIGN_START","IS_ALIGN_END","IS_ALL_FORMATTING","NON_BREAKING_SPACE","DOUBLE_LINE_BREAK","RTL","LTR","RTL_REGEX","RegExp","LTR_REGEX","TEXT_TYPE_TO_FORMAT","bold","code","highlight","italic","strikethrough","subscript","superscript","underline","DETAIL_TYPE_TO_DETAIL","directionless","unmergeable","ELEMENT_TYPE_TO_FORMAT","center","end","justify","left","right","start","ELEMENT_FORMAT_TO_TYPE","TEXT_MODE_TO_TYPE","normal","segmented","token","TEXT_TYPE_TO_MODE"],"
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/lexical/nodeFormat.ts"],"sourcesContent":["/* eslint-disable perfectionist/sort-objects */\n/* eslint-disable regexp/no-obscure-range */\n/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\n//This copy-and-pasted from lexical here: https://github.com/facebook/lexical/blob/c2ceee223f46543d12c574e62155e619f9a18a5d/packages/lexical/src/LexicalConstants.ts\n\n// DOM\nexport const NodeFormat = {\n DOM_ELEMENT_TYPE: 1,\n DOM_TEXT_TYPE: 3,\n // Reconciling\n NO_DIRTY_NODES: 0,\n HAS_DIRTY_NODES: 1,\n FULL_RECONCILE: 2,\n // Text node modes\n IS_NORMAL: 0,\n IS_TOKEN: 1,\n IS_SEGMENTED: 2,\n IS_INERT: 3,\n // Text node formatting\n IS_BOLD: 1,\n IS_ITALIC: 1 << 1,\n IS_STRIKETHROUGH: 1 << 2,\n IS_UNDERLINE: 1 << 3,\n IS_CODE: 1 << 4,\n IS_SUBSCRIPT: 1 << 5,\n IS_SUPERSCRIPT: 1 << 6,\n IS_HIGHLIGHT: 1 << 7,\n // Text node details\n IS_DIRECTIONLESS: 1,\n IS_UNMERGEABLE: 1 << 1,\n // Element node formatting\n IS_ALIGN_LEFT: 1,\n IS_ALIGN_CENTER: 2,\n IS_ALIGN_RIGHT: 3,\n IS_ALIGN_JUSTIFY: 4,\n IS_ALIGN_START: 5,\n IS_ALIGN_END: 6,\n} as const\n\nexport const IS_ALL_FORMATTING =\n NodeFormat.IS_BOLD |\n NodeFormat.IS_ITALIC |\n NodeFormat.IS_STRIKETHROUGH |\n NodeFormat.IS_UNDERLINE |\n NodeFormat.IS_CODE |\n NodeFormat.IS_SUBSCRIPT |\n NodeFormat.IS_SUPERSCRIPT |\n NodeFormat.IS_HIGHLIGHT\n\n// Reconciliation\nexport const NON_BREAKING_SPACE = '\\u00A0'\n\nexport const DOUBLE_LINE_BREAK = '\\n\\n'\n\n// For FF, we need to use a non-breaking space, or it gets composition\n// in a stuck state.\n\nconst RTL = '\\u0591-\\u07FF\\uFB1D-\\uFDFD\\uFE70-\\uFEFC'\nconst LTR =\n 'A-Za-z\\u00C0-\\u00D6\\u00D8-\\u00F6' +\n '\\u00F8-\\u02B8\\u0300-\\u0590\\u0800-\\u1FFF\\u200E\\u2C00-\\uFB1C' +\n '\\uFE00-\\uFE6F\\uFEFD-\\uFFFF'\n\n// eslint-disable-next-line no-misleading-character-class,regexp/no-misleading-unicode-character\nexport const RTL_REGEX = new RegExp('^[^' + LTR + ']*[' + RTL + ']')\n// eslint-disable-next-line no-misleading-character-class,regexp/no-misleading-unicode-character\nexport const LTR_REGEX = new RegExp('^[^' + RTL + ']*[' + LTR + ']')\n\nexport const TEXT_TYPE_TO_FORMAT: Record<any | string, number> = {\n bold: NodeFormat.IS_BOLD,\n code: NodeFormat.IS_CODE,\n highlight: NodeFormat.IS_HIGHLIGHT,\n italic: NodeFormat.IS_ITALIC,\n strikethrough: NodeFormat.IS_STRIKETHROUGH,\n subscript: NodeFormat.IS_SUBSCRIPT,\n superscript: NodeFormat.IS_SUPERSCRIPT,\n underline: NodeFormat.IS_UNDERLINE,\n}\n\nexport const DETAIL_TYPE_TO_DETAIL: Record<any | string, number> = {\n directionless: NodeFormat.IS_DIRECTIONLESS,\n unmergeable: NodeFormat.IS_UNMERGEABLE,\n}\n\nexport const ELEMENT_TYPE_TO_FORMAT: Record<Exclude<any, ''>, number> = {\n center: NodeFormat.IS_ALIGN_CENTER,\n end: NodeFormat.IS_ALIGN_END,\n justify: NodeFormat.IS_ALIGN_JUSTIFY,\n left: NodeFormat.IS_ALIGN_LEFT,\n right: NodeFormat.IS_ALIGN_RIGHT,\n start: NodeFormat.IS_ALIGN_START,\n}\n\nexport const ELEMENT_FORMAT_TO_TYPE: Record<number, any> = {\n [NodeFormat.IS_ALIGN_CENTER]: 'center',\n [NodeFormat.IS_ALIGN_END]: 'end',\n [NodeFormat.IS_ALIGN_JUSTIFY]: 'justify',\n [NodeFormat.IS_ALIGN_LEFT]: 'left',\n [NodeFormat.IS_ALIGN_RIGHT]: 'right',\n [NodeFormat.IS_ALIGN_START]: 'start',\n}\n\nexport const TEXT_MODE_TO_TYPE: Record<any, 0 | 1 | 2> = {\n normal: NodeFormat.IS_NORMAL,\n segmented: NodeFormat.IS_SEGMENTED,\n token: NodeFormat.IS_TOKEN,\n}\n\nexport const TEXT_TYPE_TO_MODE: Record<number, any> = {\n [NodeFormat.IS_NORMAL]: 'normal',\n [NodeFormat.IS_SEGMENTED]: 'segmented',\n [NodeFormat.IS_TOKEN]: 'token',\n}\n"],"names":["NodeFormat","DOM_ELEMENT_TYPE","DOM_TEXT_TYPE","NO_DIRTY_NODES","HAS_DIRTY_NODES","FULL_RECONCILE","IS_NORMAL","IS_TOKEN","IS_SEGMENTED","IS_INERT","IS_BOLD","IS_ITALIC","IS_STRIKETHROUGH","IS_UNDERLINE","IS_CODE","IS_SUBSCRIPT","IS_SUPERSCRIPT","IS_HIGHLIGHT","IS_DIRECTIONLESS","IS_UNMERGEABLE","IS_ALIGN_LEFT","IS_ALIGN_CENTER","IS_ALIGN_RIGHT","IS_ALIGN_JUSTIFY","IS_ALIGN_START","IS_ALIGN_END","IS_ALL_FORMATTING","NON_BREAKING_SPACE","DOUBLE_LINE_BREAK","RTL","LTR","RTL_REGEX","RegExp","LTR_REGEX","TEXT_TYPE_TO_FORMAT","bold","code","highlight","italic","strikethrough","subscript","superscript","underline","DETAIL_TYPE_TO_DETAIL","directionless","unmergeable","ELEMENT_TYPE_TO_FORMAT","center","end","justify","left","right","start","ELEMENT_FORMAT_TO_TYPE","TEXT_MODE_TO_TYPE","normal","segmented","token","TEXT_TYPE_TO_MODE"],"mappings":"AAAA,6CAA6C,GAC7C,0CAA0C,GAC1C,oEAAoE,GACpE,oKAAoK;AAEpK,MAAM;AACN,OAAO,MAAMA,aAAa;IACxBC,kBAAkB;IAClBC,eAAe;IACf,cAAc;IACdC,gBAAgB;IAChBC,iBAAiB;IACjBC,gBAAgB;IAChB,kBAAkB;IAClBC,WAAW;IACXC,UAAU;IACVC,cAAc;IACdC,UAAU;IACV,uBAAuB;IACvBC,SAAS;IACTC,WAAW,KAAK;IAChBC,kBAAkB,KAAK;IACvBC,cAAc,KAAK;IACnBC,SAAS,KAAK;IACdC,cAAc,KAAK;IACnBC,gBAAgB,KAAK;IACrBC,cAAc,KAAK;IACnB,oBAAoB;IACpBC,kBAAkB;IAClBC,gBAAgB,KAAK;IACrB,0BAA0B;IAC1BC,eAAe;IACfC,iBAAiB;IACjBC,gBAAgB;IAChBC,kBAAkB;IAClBC,gBAAgB;IAChBC,cAAc;AAChB,EAAU;AAEV,OAAO,MAAMC,oBACX1B,WAAWU,OAAO,GAClBV,WAAWW,SAAS,GACpBX,WAAWY,gBAAgB,GAC3BZ,WAAWa,YAAY,GACvBb,WAAWc,OAAO,GAClBd,WAAWe,YAAY,GACvBf,WAAWgB,cAAc,GACzBhB,WAAWiB,YAAY,CAAA;AAEzB,iBAAiB;AACjB,OAAO,MAAMU,qBAAqB,SAAQ;AAE1C,OAAO,MAAMC,oBAAoB,OAAM;AAEvC,sEAAsE;AACtE,oBAAoB;AAEpB,MAAMC,MAAM;AACZ,MAAMC,MACJ,qCACA,+DACA;AAEF,gGAAgG;AAChG,OAAO,MAAMC,YAAY,IAAIC,OAAO,QAAQF,MAAM,QAAQD,MAAM,KAAI;AACpE,gGAAgG;AAChG,OAAO,MAAMI,YAAY,IAAID,OAAO,QAAQH,MAAM,QAAQC,MAAM,KAAI;AAEpE,OAAO,MAAMI,sBAAoD;IAC/DC,MAAMnC,WAAWU,OAAO;IACxB0B,MAAMpC,WAAWc,OAAO;IACxBuB,WAAWrC,WAAWiB,YAAY;IAClCqB,QAAQtC,WAAWW,SAAS;IAC5B4B,eAAevC,WAAWY,gBAAgB;IAC1C4B,WAAWxC,WAAWe,YAAY;IAClC0B,aAAazC,WAAWgB,cAAc;IACtC0B,WAAW1C,WAAWa,YAAY;AACpC,EAAC;AAED,OAAO,MAAM8B,wBAAsD;IACjEC,eAAe5C,WAAWkB,gBAAgB;IAC1C2B,aAAa7C,WAAWmB,cAAc;AACxC,EAAC;AAED,OAAO,MAAM2B,yBAA2D;IACtEC,QAAQ/C,WAAWqB,eAAe;IAClC2B,KAAKhD,WAAWyB,YAAY;IAC5BwB,SAASjD,WAAWuB,gBAAgB;IACpC2B,MAAMlD,WAAWoB,aAAa;IAC9B+B,OAAOnD,WAAWsB,cAAc;IAChC8B,OAAOpD,WAAWwB,cAAc;AAClC,EAAC;AAED,OAAO,MAAM6B,yBAA8C;IACzD,CAACrD,WAAWqB,eAAe,CAAC,EAAE;IAC9B,CAACrB,WAAWyB,YAAY,CAAC,EAAE;IAC3B,CAACzB,WAAWuB,gBAAgB,CAAC,EAAE;IAC/B,CAACvB,WAAWoB,aAAa,CAAC,EAAE;IAC5B,CAACpB,WAAWsB,cAAc,CAAC,EAAE;IAC7B,CAACtB,WAAWwB,cAAc,CAAC,EAAE;AAC/B,EAAC;AAED,OAAO,MAAM8B,oBAA4C;IACvDC,QAAQvD,WAAWM,SAAS;IAC5BkD,WAAWxD,WAAWQ,YAAY;IAClCiD,OAAOzD,WAAWO,QAAQ;AAC5B,EAAC;AAED,OAAO,MAAMmD,oBAAyC;IACpD,CAAC1D,WAAWM,SAAS,CAAC,EAAE;IACxB,CAACN,WAAWQ,YAAY,CAAC,EAAE;IAC3B,CAACR,WAAWO,QAAQ,CAAC,EAAE;AACzB,EAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { HTMLConverter, SerializedLexicalNodeWithParent } from './types.js';
|
|
2
|
+
export declare function serializeLexical(data?: any, submissionData?: any): Promise<string>;
|
|
3
|
+
export declare function convertLexicalNodesToHTML({ converters, lexicalNodes, parent, submissionData, }: {
|
|
4
|
+
converters: HTMLConverter[];
|
|
5
|
+
lexicalNodes: any[];
|
|
6
|
+
parent: SerializedLexicalNodeWithParent;
|
|
7
|
+
submissionData?: any;
|
|
8
|
+
}): Promise<string>;
|
|
9
|
+
//# sourceMappingURL=serializeLexical.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializeLexical.d.ts","sourceRoot":"","sources":["../../../src/utilities/lexical/serializeLexical.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAA;AAIhF,wBAAsB,gBAAgB,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,cAAc,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAYxF;AAED,wBAAsB,yBAAyB,CAAC,EAC9C,UAAU,EACV,YAAY,EACZ,MAAM,EACN,cAAc,GACf,EAAE;IACD,UAAU,EAAE,aAAa,EAAE,CAAA;IAC3B,YAAY,EAAE,GAAG,EAAE,CAAA;IACnB,MAAM,EAAE,+BAA+B,CAAA;IACvC,cAAc,CAAC,EAAE,GAAG,CAAA;CACrB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgClB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/lexical/serializeLexical.ts"],"sourcesContent":["import type { HTMLConverter, SerializedLexicalNodeWithParent } from './types.js'\n\nimport { defaultHTMLConverters } from './defaultConverters.js'\n\nexport async function serializeLexical(data?: any, submissionData?: any): Promise<string> {\n const converters: HTMLConverter[] = defaultHTMLConverters\n\n if (data?.root?.children?.length) {\n return await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: data?.root?.children,\n parent: data?.root,\n submissionData,\n })\n }\n return ''\n}\n\nexport async function convertLexicalNodesToHTML({\n converters,\n lexicalNodes,\n parent,\n submissionData,\n}: {\n converters: HTMLConverter[]\n lexicalNodes: any[]\n parent: SerializedLexicalNodeWithParent\n submissionData?: any\n}): Promise<string> {\n const unknownConverter = converters.find((converter) => converter.nodeTypes.includes('unknown'))\n\n const htmlArray = await Promise.all(\n lexicalNodes.map(async (node, i) => {\n const converterForNode = converters.find((converter) =>\n converter.nodeTypes.includes(node.type),\n )\n if (!converterForNode) {\n if (unknownConverter) {\n return unknownConverter.converter({\n childIndex: i,\n converters,\n node,\n parent,\n submissionData,\n })\n }\n return '<span>unknown node</span>'\n }\n\n return converterForNode.converter({\n childIndex: i,\n converters,\n node,\n parent,\n submissionData,\n })\n }),\n )\n\n return htmlArray.join('') || ''\n}\n"],"names":["defaultHTMLConverters","serializeLexical","data","submissionData","converters","root","children","length","convertLexicalNodesToHTML","lexicalNodes","parent","unknownConverter","find","converter","nodeTypes","includes","htmlArray","Promise","all","map","node","i","converterForNode","type","childIndex","join"],"
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/lexical/serializeLexical.ts"],"sourcesContent":["import type { HTMLConverter, SerializedLexicalNodeWithParent } from './types.js'\n\nimport { defaultHTMLConverters } from './defaultConverters.js'\n\nexport async function serializeLexical(data?: any, submissionData?: any): Promise<string> {\n const converters: HTMLConverter[] = defaultHTMLConverters\n\n if (data?.root?.children?.length) {\n return await convertLexicalNodesToHTML({\n converters,\n lexicalNodes: data?.root?.children,\n parent: data?.root,\n submissionData,\n })\n }\n return ''\n}\n\nexport async function convertLexicalNodesToHTML({\n converters,\n lexicalNodes,\n parent,\n submissionData,\n}: {\n converters: HTMLConverter[]\n lexicalNodes: any[]\n parent: SerializedLexicalNodeWithParent\n submissionData?: any\n}): Promise<string> {\n const unknownConverter = converters.find((converter) => converter.nodeTypes.includes('unknown'))\n\n const htmlArray = await Promise.all(\n lexicalNodes.map(async (node, i) => {\n const converterForNode = converters.find((converter) =>\n converter.nodeTypes.includes(node.type),\n )\n if (!converterForNode) {\n if (unknownConverter) {\n return unknownConverter.converter({\n childIndex: i,\n converters,\n node,\n parent,\n submissionData,\n })\n }\n return '<span>unknown node</span>'\n }\n\n return converterForNode.converter({\n childIndex: i,\n converters,\n node,\n parent,\n submissionData,\n })\n }),\n )\n\n return htmlArray.join('') || ''\n}\n"],"names":["defaultHTMLConverters","serializeLexical","data","submissionData","converters","root","children","length","convertLexicalNodesToHTML","lexicalNodes","parent","unknownConverter","find","converter","nodeTypes","includes","htmlArray","Promise","all","map","node","i","converterForNode","type","childIndex","join"],"mappings":"AAEA,SAASA,qBAAqB,QAAQ,yBAAwB;AAE9D,OAAO,eAAeC,iBAAiBC,IAAU,EAAEC,cAAoB;IACrE,MAAMC,aAA8BJ;IAEpC,IAAIE,MAAMG,MAAMC,UAAUC,QAAQ;QAChC,OAAO,MAAMC,0BAA0B;YACrCJ;YACAK,cAAcP,MAAMG,MAAMC;YAC1BI,QAAQR,MAAMG;YACdF;QACF;IACF;IACA,OAAO;AACT;AAEA,OAAO,eAAeK,0BAA0B,EAC9CJ,UAAU,EACVK,YAAY,EACZC,MAAM,EACNP,cAAc,EAMf;IACC,MAAMQ,mBAAmBP,WAAWQ,IAAI,CAAC,CAACC,YAAcA,UAAUC,SAAS,CAACC,QAAQ,CAAC;IAErF,MAAMC,YAAY,MAAMC,QAAQC,GAAG,CACjCT,aAAaU,GAAG,CAAC,OAAOC,MAAMC;QAC5B,MAAMC,mBAAmBlB,WAAWQ,IAAI,CAAC,CAACC,YACxCA,UAAUC,SAAS,CAACC,QAAQ,CAACK,KAAKG,IAAI;QAExC,IAAI,CAACD,kBAAkB;YACrB,IAAIX,kBAAkB;gBACpB,OAAOA,iBAAiBE,SAAS,CAAC;oBAChCW,YAAYH;oBACZjB;oBACAgB;oBACAV;oBACAP;gBACF;YACF;YACA,OAAO;QACT;QAEA,OAAOmB,iBAAiBT,SAAS,CAAC;YAChCW,YAAYH;YACZjB;YACAgB;YACAV;YACAP;QACF;IACF;IAGF,OAAOa,UAAUS,IAAI,CAAC,OAAO;AAC/B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type HTMLConverter<T = any> = {
|
|
2
|
+
converter: ({ childIndex, converters, node, parent, submissionData, }: {
|
|
3
|
+
childIndex: number;
|
|
4
|
+
converters: HTMLConverter[];
|
|
5
|
+
node: T;
|
|
6
|
+
parent: SerializedLexicalNodeWithParent;
|
|
7
|
+
submissionData?: any;
|
|
8
|
+
}) => Promise<string> | string;
|
|
9
|
+
nodeTypes: string[];
|
|
10
|
+
};
|
|
11
|
+
export type SerializedLexicalNodeWithParent = any & {
|
|
12
|
+
parent?: any;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utilities/lexical/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,GAAG,IAAI;IACnC,SAAS,EAAE,CAAC,EACV,UAAU,EACV,UAAU,EACV,IAAI,EACJ,MAAM,EACN,cAAc,GACf,EAAE;QACD,UAAU,EAAE,MAAM,CAAA;QAClB,UAAU,EAAE,aAAa,EAAE,CAAA;QAC3B,IAAI,EAAE,CAAC,CAAA;QACP,MAAM,EAAE,+BAA+B,CAAA;QACvC,cAAc,CAAC,EAAE,GAAG,CAAA;KACrB,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;IAC9B,SAAS,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,GAAG,GAAG;IAClD,MAAM,CAAC,EAAE,GAAG,CAAA;CACb,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/lexical/types.ts"],"sourcesContent":["export type HTMLConverter<T = any> = {\n converter: ({\n childIndex,\n converters,\n node,\n parent,\n submissionData,\n }: {\n childIndex: number\n converters: HTMLConverter[]\n node: T\n parent: SerializedLexicalNodeWithParent\n submissionData?: any\n }) => Promise<string> | string\n nodeTypes: string[]\n}\n\nexport type SerializedLexicalNodeWithParent = any & {\n parent?: any\n}\n"],"names":[],"
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/lexical/types.ts"],"sourcesContent":["export type HTMLConverter<T = any> = {\n converter: ({\n childIndex,\n converters,\n node,\n parent,\n submissionData,\n }: {\n childIndex: number\n converters: HTMLConverter[]\n node: T\n parent: SerializedLexicalNodeWithParent\n submissionData?: any\n }) => Promise<string> | string\n nodeTypes: string[]\n}\n\nexport type SerializedLexicalNodeWithParent = any & {\n parent?: any\n}\n"],"names":[],"mappings":"AAiBA,WAEC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface EmailVariable {
|
|
2
|
+
field: string;
|
|
3
|
+
value: string;
|
|
4
|
+
}
|
|
5
|
+
type EmailVariables = EmailVariable[];
|
|
6
|
+
export declare const replaceDoubleCurlys: (str: string, variables?: EmailVariables) => string;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=replaceDoubleCurlys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replaceDoubleCurlys.d.ts","sourceRoot":"","sources":["../../src/utilities/replaceDoubleCurlys.ts"],"names":[],"mappings":"AAAA,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,KAAK,cAAc,GAAG,aAAa,EAAE,CAAA;AAErC,eAAO,MAAM,mBAAmB,QAAS,MAAM,cAAc,cAAc,KAAG,MAU7E,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/replaceDoubleCurlys.ts"],"sourcesContent":["interface EmailVariable {\n field: string\n value: string\n}\n\ntype EmailVariables = EmailVariable[]\n\nexport const replaceDoubleCurlys = (str: string, variables?: EmailVariables): string => {\n const regex = /\\{\\{(.+?)\\}\\}/g\n if (str && variables) {\n return str.replace(regex, (_, variable) => {\n const foundVariable = variables.find(({ field: fieldName }) => variable === fieldName)\n if (foundVariable) return foundVariable.value\n return variable\n })\n }\n return str\n}\n"],"names":["replaceDoubleCurlys","str","variables","regex","replace","_","variable","foundVariable","find","field","fieldName","value"],"
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/replaceDoubleCurlys.ts"],"sourcesContent":["interface EmailVariable {\n field: string\n value: string\n}\n\ntype EmailVariables = EmailVariable[]\n\nexport const replaceDoubleCurlys = (str: string, variables?: EmailVariables): string => {\n const regex = /\\{\\{(.+?)\\}\\}/g\n if (str && variables) {\n return str.replace(regex, (_, variable) => {\n const foundVariable = variables.find(({ field: fieldName }) => variable === fieldName)\n if (foundVariable) return foundVariable.value\n return variable\n })\n }\n return str\n}\n"],"names":["replaceDoubleCurlys","str","variables","regex","replace","_","variable","foundVariable","find","field","fieldName","value"],"mappings":"AAOA,OAAO,MAAMA,sBAAsB,CAACC,KAAaC;IAC/C,MAAMC,QAAQ;IACd,IAAIF,OAAOC,WAAW;QACpB,OAAOD,IAAIG,OAAO,CAACD,OAAO,CAACE,GAAGC;YAC5B,MAAMC,gBAAgBL,UAAUM,IAAI,CAAC,CAAC,EAAEC,OAAOC,SAAS,EAAE,GAAKJ,aAAaI;YAC5E,IAAIH,eAAe,OAAOA,cAAcI,KAAK;YAC7C,OAAOL;QACT;IACF;IACA,OAAOL;AACT,EAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
interface Node {
|
|
2
|
+
bold?: boolean;
|
|
3
|
+
children?: Node[];
|
|
4
|
+
code?: boolean;
|
|
5
|
+
italic?: boolean;
|
|
6
|
+
text?: string;
|
|
7
|
+
type?: string;
|
|
8
|
+
url?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare const serializeSlate: (children?: Node[], submissionData?: any) => string | undefined;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=serializeSlate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializeSlate.d.ts","sourceRoot":"","sources":["../../../src/utilities/slate/serializeSlate.ts"],"names":[],"mappings":"AAIA,UAAU,IAAI;IACZ,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAMD,eAAO,MAAM,cAAc,cAAe,IAAI,EAAE,mBAAmB,GAAG,KAAG,MAAM,GAAG,SAwHrE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/slate/serializeSlate.ts"],"sourcesContent":["import escapeHTML from 'escape-html'\n\nimport { replaceDoubleCurlys } from '../replaceDoubleCurlys.js'\n\ninterface Node {\n bold?: boolean\n children?: Node[]\n code?: boolean\n italic?: boolean\n text?: string\n type?: string\n url?: string\n}\n\nconst isTextNode = (node: Node): node is Node & { text: string } => {\n return 'text' in node\n}\n\nexport const serializeSlate = (children?: Node[], submissionData?: any): string | undefined =>\n children\n ?.map((node: Node) => {\n if (isTextNode(node)) {\n let text = `<span>${escapeHTML(replaceDoubleCurlys(node.text, submissionData))}</span>`\n\n if (node.bold) {\n text = `\n <strong>\n ${text}\n </strong>\n `\n }\n\n if (node.code) {\n text = `\n <code>\n ${text}\n </code>\n `\n }\n\n if (node.italic) {\n text = `\n <em >\n ${text}\n </em>\n `\n }\n\n return text\n }\n\n if (!node) {\n return null\n }\n\n switch (node.type) {\n case 'h1':\n return `\n <h1>\n ${serializeSlate(node.children, submissionData)}\n </h1>\n `\n case 'h2':\n return `\n <h2>\n ${serializeSlate(node.children, submissionData)}\n </h2>\n `\n case 'h3':\n return `\n <h3>\n ${serializeSlate(node.children, submissionData)}\n </h3>\n `\n case 'h4':\n return `\n <h4>\n ${serializeSlate(node.children, submissionData)}\n </h4>\n `\n case 'h5':\n return `\n <h5>\n ${serializeSlate(node.children, submissionData)}\n </h5>\n `\n case 'h6':\n return `\n <h6>\n ${serializeSlate(node.children, submissionData)}\n </h6>\n `\n case 'quote':\n return `\n <blockquote>\n ${serializeSlate(node.children, submissionData)}\n </blockquote>\n `\n case 'ul':\n return `\n <ul>\n ${serializeSlate(node.children, submissionData)}\n </ul>\n `\n case 'ol':\n return `\n <ol>\n ${serializeSlate(node.children, submissionData)}\n </ol>\n `\n case 'li':\n return `\n <li>\n ${serializeSlate(node.children, submissionData)}\n </li>\n `\n case 'indent':\n return `\n <p style=\"padding-left: 20px\">\n ${serializeSlate(node.children, submissionData)}\n </p>\n `\n case 'link':\n return `\n <a href={${escapeHTML(replaceDoubleCurlys(node.url, submissionData))}}>\n ${serializeSlate(node.children, submissionData)}\n </a>\n `\n\n default:\n return `\n <p>\n ${serializeSlate(node.children, submissionData)}\n </p>\n `\n }\n })\n .filter(Boolean)\n .join('')\n"],"names":["escapeHTML","replaceDoubleCurlys","isTextNode","node","serializeSlate","children","submissionData","map","text","bold","code","italic","type","url","filter","Boolean","join"],"
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/slate/serializeSlate.ts"],"sourcesContent":["import escapeHTML from 'escape-html'\n\nimport { replaceDoubleCurlys } from '../replaceDoubleCurlys.js'\n\ninterface Node {\n bold?: boolean\n children?: Node[]\n code?: boolean\n italic?: boolean\n text?: string\n type?: string\n url?: string\n}\n\nconst isTextNode = (node: Node): node is Node & { text: string } => {\n return 'text' in node\n}\n\nexport const serializeSlate = (children?: Node[], submissionData?: any): string | undefined =>\n children\n ?.map((node: Node) => {\n if (isTextNode(node)) {\n let text = `<span>${escapeHTML(replaceDoubleCurlys(node.text, submissionData))}</span>`\n\n if (node.bold) {\n text = `\n <strong>\n ${text}\n </strong>\n `\n }\n\n if (node.code) {\n text = `\n <code>\n ${text}\n </code>\n `\n }\n\n if (node.italic) {\n text = `\n <em >\n ${text}\n </em>\n `\n }\n\n return text\n }\n\n if (!node) {\n return null\n }\n\n switch (node.type) {\n case 'h1':\n return `\n <h1>\n ${serializeSlate(node.children, submissionData)}\n </h1>\n `\n case 'h2':\n return `\n <h2>\n ${serializeSlate(node.children, submissionData)}\n </h2>\n `\n case 'h3':\n return `\n <h3>\n ${serializeSlate(node.children, submissionData)}\n </h3>\n `\n case 'h4':\n return `\n <h4>\n ${serializeSlate(node.children, submissionData)}\n </h4>\n `\n case 'h5':\n return `\n <h5>\n ${serializeSlate(node.children, submissionData)}\n </h5>\n `\n case 'h6':\n return `\n <h6>\n ${serializeSlate(node.children, submissionData)}\n </h6>\n `\n case 'quote':\n return `\n <blockquote>\n ${serializeSlate(node.children, submissionData)}\n </blockquote>\n `\n case 'ul':\n return `\n <ul>\n ${serializeSlate(node.children, submissionData)}\n </ul>\n `\n case 'ol':\n return `\n <ol>\n ${serializeSlate(node.children, submissionData)}\n </ol>\n `\n case 'li':\n return `\n <li>\n ${serializeSlate(node.children, submissionData)}\n </li>\n `\n case 'indent':\n return `\n <p style=\"padding-left: 20px\">\n ${serializeSlate(node.children, submissionData)}\n </p>\n `\n case 'link':\n return `\n <a href={${escapeHTML(replaceDoubleCurlys(node.url, submissionData))}}>\n ${serializeSlate(node.children, submissionData)}\n </a>\n `\n\n default:\n return `\n <p>\n ${serializeSlate(node.children, submissionData)}\n </p>\n `\n }\n })\n .filter(Boolean)\n .join('')\n"],"names":["escapeHTML","replaceDoubleCurlys","isTextNode","node","serializeSlate","children","submissionData","map","text","bold","code","italic","type","url","filter","Boolean","join"],"mappings":"AAAA,OAAOA,gBAAgB,cAAa;AAEpC,SAASC,mBAAmB,QAAQ,4BAA2B;AAY/D,MAAMC,aAAa,CAACC;IAClB,OAAO,UAAUA;AACnB;AAEA,OAAO,MAAMC,iBAAiB,CAACC,UAAmBC,iBAChDD,UACIE,IAAI,CAACJ;QACL,IAAID,WAAWC,OAAO;YACpB,IAAIK,OAAO,CAAC,MAAM,EAAER,WAAWC,oBAAoBE,KAAKK,IAAI,EAAEF,iBAAiB,OAAO,CAAC;YAEvF,IAAIH,KAAKM,IAAI,EAAE;gBACbD,OAAO,CAAC;;UAER,EAAEA,KAAK;;MAEX,CAAC;YACC;YAEA,IAAIL,KAAKO,IAAI,EAAE;gBACbF,OAAO,CAAC;;UAER,EAAEA,KAAK;;MAEX,CAAC;YACC;YAEA,IAAIL,KAAKQ,MAAM,EAAE;gBACfH,OAAO,CAAC;;UAER,EAAEA,KAAK;;MAEX,CAAC;YACC;YAEA,OAAOA;QACT;QAEA,IAAI,CAACL,MAAM;YACT,OAAO;QACT;QAEA,OAAQA,KAAKS,IAAI;YACf,KAAK;gBACH,OAAO,CAAC;;UAER,EAAER,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YACC,KAAK;gBACH,OAAO,CAAC;;YAEN,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;QAEpD,CAAC;YACD,KAAK;gBACH,OAAO,CAAC;mBACC,EAAEN,WAAWC,oBAAoBE,KAAKU,GAAG,EAAEP,iBAAiB;UACrE,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;YAEC;gBACE,OAAO,CAAC;;UAER,EAAEF,eAAeD,KAAKE,QAAQ,EAAEC,gBAAgB;;MAEpD,CAAC;QACD;IACF,GACCQ,OAAOC,SACPC,KAAK,IAAG"}
|
package/package.json
CHANGED
|
@@ -1,66 +1,77 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/plugin-form-builder",
|
|
3
|
+
"version": "3.0.0-canary.0017c67",
|
|
3
4
|
"description": "Form builder plugin for Payload CMS",
|
|
4
|
-
"
|
|
5
|
-
|
|
5
|
+
"keywords": [
|
|
6
|
+
"payload",
|
|
7
|
+
"cms",
|
|
8
|
+
"plugin",
|
|
9
|
+
"typescript",
|
|
10
|
+
"react",
|
|
11
|
+
"forms",
|
|
12
|
+
"fields",
|
|
13
|
+
"form builder",
|
|
14
|
+
"payments"
|
|
15
|
+
],
|
|
6
16
|
"repository": {
|
|
7
17
|
"type": "git",
|
|
8
18
|
"url": "https://github.com/payloadcms/payload.git",
|
|
9
19
|
"directory": "packages/plugin-form-builder"
|
|
10
20
|
},
|
|
11
|
-
"main": "./dist/index.js",
|
|
12
|
-
"types": "./dist/index.d.ts",
|
|
13
21
|
"license": "MIT",
|
|
14
|
-
"author": "dev@payloadcms.com",
|
|
22
|
+
"author": "Payload <dev@payloadcms.com> (https://payloadcms.com)",
|
|
15
23
|
"type": "module",
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
|
|
24
|
+
"exports": {
|
|
25
|
+
".": {
|
|
26
|
+
"import": "./dist/index.js",
|
|
27
|
+
"types": "./dist/index.d.ts",
|
|
28
|
+
"default": "./dist/index.js"
|
|
29
|
+
},
|
|
30
|
+
"./types": {
|
|
31
|
+
"import": "./dist/exports/types.js",
|
|
32
|
+
"types": "./dist/exports/types.d.ts",
|
|
33
|
+
"default": "./dist/exports/types.js"
|
|
34
|
+
}
|
|
19
35
|
},
|
|
36
|
+
"main": "./dist/index.js",
|
|
37
|
+
"types": "./dist/index.d.ts",
|
|
38
|
+
"files": [
|
|
39
|
+
"dist"
|
|
40
|
+
],
|
|
20
41
|
"dependencies": {
|
|
21
42
|
"deepmerge": "^4.2.2",
|
|
22
43
|
"escape-html": "^1.0.3",
|
|
23
|
-
"@payloadcms/ui": "3.0.0-
|
|
44
|
+
"@payloadcms/ui": "3.0.0-canary.0017c67"
|
|
24
45
|
},
|
|
25
46
|
"devDependencies": {
|
|
26
47
|
"@types/escape-html": "^1.0.4",
|
|
27
48
|
"@types/express": "^4.17.21",
|
|
28
|
-
"@types/react": "
|
|
49
|
+
"@types/react": "npm:types-react@19.0.0-beta.2",
|
|
50
|
+
"@types/react-dom": "npm:types-react-dom@19.0.0-beta.2",
|
|
29
51
|
"copyfiles": "^2.4.1",
|
|
30
52
|
"cross-env": "^7.0.3",
|
|
31
53
|
"nodemon": "3.0.3",
|
|
32
|
-
"react": "^18.0.0",
|
|
33
54
|
"ts-node": "10.9.1",
|
|
34
55
|
"@payloadcms/eslint-config": "1.1.1",
|
|
35
|
-
"payload": "3.0.0-
|
|
56
|
+
"payload": "3.0.0-canary.0017c67"
|
|
36
57
|
},
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
58
|
+
"peerDependencies": {
|
|
59
|
+
"react": "^19.0.0 || ^19.0.0-rc-f994737d14-20240522",
|
|
60
|
+
"react-dom": "^19.0.0 || ^19.0.0-rc-f994737d14-20240522",
|
|
61
|
+
"payload": "3.0.0-canary.0017c67"
|
|
62
|
+
},
|
|
63
|
+
"publishConfig": {
|
|
64
|
+
"registry": "https://registry.npmjs.org/"
|
|
65
|
+
},
|
|
66
|
+
"homepage:": "https://payloadcms.com",
|
|
67
|
+
"overrides": {
|
|
68
|
+
"@types/react": "npm:types-react@19.0.0-beta.2",
|
|
69
|
+
"@types/react-dom": "npm:types-react-dom@19.0.0-beta.2"
|
|
43
70
|
},
|
|
44
|
-
"files": [
|
|
45
|
-
"dist",
|
|
46
|
-
"types.js",
|
|
47
|
-
"types.d.ts"
|
|
48
|
-
],
|
|
49
|
-
"keywords": [
|
|
50
|
-
"payload",
|
|
51
|
-
"cms",
|
|
52
|
-
"plugin",
|
|
53
|
-
"typescript",
|
|
54
|
-
"react",
|
|
55
|
-
"forms",
|
|
56
|
-
"fields",
|
|
57
|
-
"form builder",
|
|
58
|
-
"payments"
|
|
59
|
-
],
|
|
60
71
|
"scripts": {
|
|
61
|
-
"build
|
|
72
|
+
"build": "pnpm build:types && pnpm build:swc",
|
|
73
|
+
"build:swc": "swc ./src -d ./dist --config-file .swcrc --strip-leading-paths",
|
|
62
74
|
"build:types": "tsc --emitDeclarationOnly --outDir dist",
|
|
63
|
-
"build": "swc ./src -d ./dist --config-file .swcrc",
|
|
64
75
|
"clean": "rimraf {dist,*.tsbuildinfo}",
|
|
65
76
|
"test": "echo \"No tests available.\""
|
|
66
77
|
}
|
package/src/index.ts
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import type { Config } from 'payload/config'
|
|
2
|
-
|
|
3
|
-
import type { PluginConfig } from './types.js'
|
|
4
|
-
|
|
5
|
-
import { generateSubmissionCollection } from './collections/FormSubmissions/index.js'
|
|
6
|
-
import { generateFormCollection } from './collections/Forms/index.js'
|
|
7
|
-
|
|
8
|
-
export { fields } from './collections/Forms/fields.js'
|
|
9
|
-
export { getPaymentTotal } from './utilities/getPaymentTotal.js'
|
|
10
|
-
|
|
11
|
-
const FormBuilder =
|
|
12
|
-
(incomingFormConfig: PluginConfig) =>
|
|
13
|
-
(config: Config): Config => {
|
|
14
|
-
const formConfig: PluginConfig = {
|
|
15
|
-
...incomingFormConfig,
|
|
16
|
-
fields: {
|
|
17
|
-
checkbox: true,
|
|
18
|
-
country: true,
|
|
19
|
-
email: true,
|
|
20
|
-
message: true,
|
|
21
|
-
number: true,
|
|
22
|
-
payment: false,
|
|
23
|
-
select: true,
|
|
24
|
-
state: true,
|
|
25
|
-
text: true,
|
|
26
|
-
textarea: true,
|
|
27
|
-
...incomingFormConfig.fields,
|
|
28
|
-
},
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return {
|
|
32
|
-
...config,
|
|
33
|
-
// admin: {
|
|
34
|
-
// ...config.admin,
|
|
35
|
-
// webpack: (webpackConfig) => ({
|
|
36
|
-
// ...webpackConfig,
|
|
37
|
-
// resolve: {
|
|
38
|
-
// ...webpackConfig.resolve,
|
|
39
|
-
// alias: {
|
|
40
|
-
// ...webpackConfig.resolve.alias,
|
|
41
|
-
// [path.resolve(__dirname, 'collections/FormSubmissions/hooks/sendEmail.ts')]: path.resolve(__dirname, 'mocks/serverModule.js'),
|
|
42
|
-
// [path.resolve(__dirname, 'collections/FormSubmissions/hooks/createCharge.ts')]: path.resolve(__dirname, 'mocks/serverModule.js'),
|
|
43
|
-
// },
|
|
44
|
-
// },
|
|
45
|
-
// })
|
|
46
|
-
// },
|
|
47
|
-
collections: [
|
|
48
|
-
...(config?.collections || []),
|
|
49
|
-
generateFormCollection(formConfig),
|
|
50
|
-
generateSubmissionCollection(formConfig),
|
|
51
|
-
],
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export default FormBuilder
|
package/types.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './dist/types'
|
package/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require('./dist/types')
|