@elliemae/ds-wysiwygeditor 3.22.0-next.3 → 3.22.0-next.30
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/cjs/DSWYSIWYGEditor.js.map +1 -1
- package/dist/cjs/components/CustomImageUploader.js.map +1 -1
- package/dist/cjs/components/CustomToolbar.js.map +1 -1
- package/dist/cjs/components/DSWYSIWYGEditorImpl.js.map +3 -3
- package/dist/cjs/components/ImageLibraryModal.js.map +1 -1
- package/dist/cjs/components/InsertFieldModal.js.map +1 -1
- package/dist/cjs/components/TippedButton.js.map +1 -1
- package/dist/cjs/components/TippedSelect.js.map +1 -1
- package/dist/cjs/components/colors.js.map +1 -1
- package/dist/cjs/components/customFields.js.map +3 -3
- package/dist/cjs/config/quillSingletonConfigurations.js.map +1 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/quillMatchers/clipboardLinkWithTagMatcher.js.map +1 -1
- package/dist/cjs/quillOverrides/Image.js.map +1 -1
- package/dist/cjs/quillOverrides/IndentStyle.js.map +1 -1
- package/dist/cjs/quillOverrides/LinkFormat.js.map +1 -1
- package/dist/cjs/quillOverrides/PlainClipboard.js.map +1 -1
- package/dist/cjs/utils.js.map +1 -1
- package/dist/esm/DSWYSIWYGEditor.js.map +1 -1
- package/dist/esm/components/CustomImageUploader.js.map +1 -1
- package/dist/esm/components/CustomToolbar.js.map +1 -1
- package/dist/esm/components/DSWYSIWYGEditorImpl.js.map +3 -3
- package/dist/esm/components/ImageLibraryModal.js.map +1 -1
- package/dist/esm/components/InsertFieldModal.js.map +1 -1
- package/dist/esm/components/TippedButton.js.map +1 -1
- package/dist/esm/components/TippedSelect.js.map +1 -1
- package/dist/esm/components/colors.js.map +1 -1
- package/dist/esm/components/customFields.js.map +3 -3
- package/dist/esm/config/quillSingletonConfigurations.js.map +1 -1
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/quillMatchers/clipboardLinkWithTagMatcher.js.map +1 -1
- package/dist/esm/quillOverrides/Image.js.map +1 -1
- package/dist/esm/quillOverrides/IndentStyle.js.map +1 -1
- package/dist/esm/quillOverrides/LinkFormat.js.map +1 -1
- package/dist/esm/quillOverrides/PlainClipboard.js.map +1 -1
- package/dist/esm/utils.js.map +1 -1
- package/dist/types/components/customFields.d.ts +0 -3
- package/package.json +20 -19
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/DSWYSIWYGEditor.tsx", "
|
|
3
|
+
"sources": ["../../src/DSWYSIWYGEditor.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import React, { useState, useEffect } from 'react';\nimport { describe, PropTypes } from '@elliemae/ds-props-helpers';\nimport DSWYSIWYGEditorImpl from './components/DSWYSIWYGEditorImpl.js';\n\nconst DSWYSIWYGEditor = ({\n value = '',\n onChange = () => null,\n getQuillRef = () => null,\n quillModules = {},\n customToolbar,\n toolbarHandlers,\n showRawHTML = false,\n height,\n hideItems,\n ...rest\n}) => {\n const emptyAction = () => {};\n const [showHTML, setShowHTML] = useState(showRawHTML);\n\n useEffect(() => setShowHTML(showRawHTML), [showRawHTML]);\n\n return (\n <DSWYSIWYGEditorImpl\n handleCustomFieldClick={emptyAction}\n handleImageClick={emptyAction}\n quillOverrides={[]}\n value={value}\n onChange={onChange}\n getQuillRef={getQuillRef}\n quillModules={quillModules}\n customToolbar={customToolbar}\n toolbarHandlers={toolbarHandlers}\n showRawHTML={showHTML}\n onShowHTML={() => setShowHTML(!showHTML)}\n height={height}\n hideItems={hideItems}\n {...rest}\n />\n );\n};\n\nconst wysiwygEditorProps = {\n value: PropTypes.string.description('editors value').isRequired,\n onChange: PropTypes.func.description(\n `(content, delta, source, editor) : Called back with the new contents of the editor after change. \n It will be passed the HTML contents of the editor, a delta object expressing the change, the source of the change, and finally a read-only proxy to editor accessors such as getHTML(). \n \u26A0\uFE0F Do not use this delta object as value, as it will cause a loop. \n Use editor.getContents() instead. See Using Deltas for details. \n Read more: https://github.com/zenoamaro/react-quill#props`,\n ).isRequired,\n getQuillRef: PropTypes.func.description('function to use quill.js ref'),\n quillModules: PropTypes.object.description('object to override quill modules'),\n customToolbar: PropTypes.element.description('custom toolbar'),\n toolbarHandlers: PropTypes.object.description('object with toolbar handlers'),\n showRawHTML: PropTypes.bool.description('whether to display html view or not').defaultValue(false),\n height: PropTypes.string.description('heigth of the editors text area'),\n readOnly: PropTypes.string.description(\n \"If true, the editor won't allow changing its contents. Wraps the Quill disable API.\",\n ),\n hideToolbar: PropTypes.bool.description('If true, the editor will hide the toolbar.').defaultValue(false),\n hideItems: PropTypes.object.description('object of defaultItems to be removed from toolbar').defaultValue({}),\n zIndex: PropTypes.number.description(\n 'zIndex to be used (required when used in a modal for correct tooltips displaying)',\n ),\n};\n\nDSWYSIWYGEditor.propTypes = wysiwygEditorProps;\nDSWYSIWYGEditor.displayName = 'DSWYSIWYGEditor';\nconst WYSIWYWithSchema = describe(DSWYSIWYGEditor);\nWYSIWYWithSchema.propTypes = wysiwygEditorProps;\n\nexport { WYSIWYWithSchema, DSWYSIWYGEditor };\nexport default DSWYSIWYGEditor;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADsBnB;AAtBJ,mBAA2C;AAC3C,8BAAoC;AACpC,iCAAgC;AAEhC,MAAM,kBAAkB,CAAC;AAAA,EACvB,QAAQ;AAAA,EACR,WAAW,MAAM;AAAA,EACjB,cAAc,MAAM;AAAA,EACpB,eAAe,CAAC;AAAA,EAChB;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,cAAc,MAAM;AAAA,EAAC;AAC3B,QAAM,CAAC,UAAU,WAAW,QAAI,uBAAS,WAAW;AAEpD,8BAAU,MAAM,YAAY,WAAW,GAAG,CAAC,WAAW,CAAC;AAEvD,SACE;AAAA,IAAC,2BAAAA;AAAA,IAAA;AAAA,MACC,wBAAwB;AAAA,MACxB,kBAAkB;AAAA,MAClB,gBAAgB,CAAC;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,aAAa;AAAA,MACb,YAAY,MAAM,YAAY,CAAC,QAAQ;AAAA,MACvC;AAAA,MACA;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,MAAM,qBAAqB;AAAA,EACzB,OAAO,kCAAU,OAAO,YAAY,eAAe,EAAE;AAAA,EACrD,UAAU,kCAAU,KAAK;AAAA,IACvB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKF,EAAE;AAAA,EACF,aAAa,kCAAU,KAAK,YAAY,8BAA8B;AAAA,EACtE,cAAc,kCAAU,OAAO,YAAY,kCAAkC;AAAA,EAC7E,eAAe,kCAAU,QAAQ,YAAY,gBAAgB;AAAA,EAC7D,iBAAiB,kCAAU,OAAO,YAAY,8BAA8B;AAAA,EAC5E,aAAa,kCAAU,KAAK,YAAY,qCAAqC,EAAE,aAAa,KAAK;AAAA,EACjG,QAAQ,kCAAU,OAAO,YAAY,iCAAiC;AAAA,EACtE,UAAU,kCAAU,OAAO;AAAA,IACzB;AAAA,EACF;AAAA,EACA,aAAa,kCAAU,KAAK,YAAY,4CAA4C,EAAE,aAAa,KAAK;AAAA,EACxG,WAAW,kCAAU,OAAO,YAAY,mDAAmD,EAAE,aAAa,CAAC,CAAC;AAAA,EAC5G,QAAQ,kCAAU,OAAO;AAAA,IACvB;AAAA,EACF;AACF;AAEA,gBAAgB,YAAY;AAC5B,gBAAgB,cAAc;AAC9B,MAAM,uBAAmB,kCAAS,eAAe;AACjD,iBAAiB,YAAY;AAG7B,IAAO,0BAAQ;",
|
|
6
6
|
"names": ["DSWYSIWYGEditorImpl"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/CustomImageUploader.tsx", "
|
|
3
|
+
"sources": ["../../../src/components/CustomImageUploader.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\n/* eslint-disable react/prop-types */\nimport React, { useState } from 'react';\nimport { Image } from '@elliemae/ds-icons';\nimport DSUploader from '@elliemae/ds-uploader';\nimport DSModal, { MODAL_TYPE_V2 } from '@elliemae/ds-modal';\nimport { TippedButton } from './TippedButton.js';\n\nconst ALLOWED_TYPES_TEXT = 'JPG, JPEG, PNG, GIF, BMP, TIFF';\nconst ALLOWED_TYPES = /image\\/(jpeg|jpg|png|gif|bmp|tiff)/;\nconst DEFAULT_MAX_SIZE = 1024 * 1024; // 1 MB\n\nexport const CustomImageUploader = ({\n quillRef,\n editorFieldName,\n allowedImageTypes = ALLOWED_TYPES_TEXT,\n uploadAsset = () => null,\n zIndex = 1,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n const [error, setError] = useState(null);\n const [inProgress, setInProgress] = useState(false);\n const [lastSelection, setLastSelection] = useState({ index: 0, length: 0 });\n\n const elementId = `uploadImage${editorFieldName}`;\n\n // eslint-disable-next-line consistent-return\n const handleFileChange = async (files) => {\n if (!inProgress) {\n setError(null);\n const selectedFile = files[0];\n if (!selectedFile) {\n setError('Please select a file.');\n return false;\n }\n if (!selectedFile.type.match(ALLOWED_TYPES)) {\n setError('File must be an image.');\n } else if (selectedFile.size > DEFAULT_MAX_SIZE) {\n setError('File is too large.');\n } else {\n const fr = new FileReader();\n fr.onload = async () => {\n setInProgress(true);\n try {\n const url = await uploadAsset({\n name: selectedFile.name,\n type: selectedFile.type,\n description: selectedFile.name,\n isSystemAsset: false,\n file: fr.result,\n });\n setIsOpen(false);\n quillRef?.getEditor().insertEmbed(lastSelection?.index || 0, 'image', url);\n } catch (e) {\n setError('An error has occurred, try again');\n }\n setInProgress(false);\n };\n fr.readAsArrayBuffer(selectedFile);\n }\n }\n };\n return (\n <>\n <TippedButton\n zIndex={zIndex}\n tip=\"Insert Image\"\n onClick={() => {\n setLastSelection(quillRef?.getEditor().getSelection());\n setIsOpen(true);\n }}\n >\n <Image color={['neutral', 500]} size=\"s\" />\n </TippedButton>\n <DSModal\n isOpen={isOpen}\n title=\"\"\n onConfirm={() => {\n setIsOpen(false);\n }}\n onClose={() => {\n setIsOpen(false);\n }}\n showClose\n version={2}\n size=\"xsmall\"\n modalType={MODAL_TYPE_V2.DECISION}\n confirmLabel=\"Cancel\"\n message=\"\"\n >\n {!inProgress && (\n <DSUploader\n containerProps={{ id: elementId }}\n showAltAction={false}\n acceptedTypesText={allowedImageTypes}\n onDrop={handleFileChange}\n />\n )}\n {inProgress && 'Upload in progress...'}\n {error && <div style={{ color: 'red', marginTop: '10px' }}>{error}</div>}\n </DSModal>\n </>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADiEnB;AA7DJ,mBAAgC;AAChC,sBAAsB;AACtB,yBAAuB;AACvB,sBAAuC;AACvC,0BAA6B;AAE7B,MAAM,qBAAqB;AAC3B,MAAM,gBAAgB;AACtB,MAAM,mBAAmB,OAAO;AAEzB,MAAM,sBAAsB,CAAC;AAAA,EAClC;AAAA,EACA;AAAA,EACA,oBAAoB;AAAA,EACpB,cAAc,MAAM;AAAA,EACpB,SAAS;AACX,MAAM;AACJ,QAAM,CAAC,QAAQ,SAAS,QAAI,uBAAS,KAAK;AAC1C,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAS,IAAI;AACvC,QAAM,CAAC,YAAY,aAAa,QAAI,uBAAS,KAAK;AAClD,QAAM,CAAC,eAAe,gBAAgB,QAAI,uBAAS,EAAE,OAAO,GAAG,QAAQ,EAAE,CAAC;AAE1E,QAAM,YAAY,cAAc;AAGhC,QAAM,mBAAmB,OAAO,UAAU;AACxC,QAAI,CAAC,YAAY;AACf,eAAS,IAAI;AACb,YAAM,eAAe,MAAM,CAAC;AAC5B,UAAI,CAAC,cAAc;AACjB,iBAAS,uBAAuB;AAChC,eAAO;AAAA,MACT;AACA,UAAI,CAAC,aAAa,KAAK,MAAM,aAAa,GAAG;AAC3C,iBAAS,wBAAwB;AAAA,MACnC,WAAW,aAAa,OAAO,kBAAkB;AAC/C,iBAAS,oBAAoB;AAAA,MAC/B,OAAO;AACL,cAAM,KAAK,IAAI,WAAW;AAC1B,WAAG,SAAS,YAAY;AACtB,wBAAc,IAAI;AAClB,cAAI;AACF,kBAAM,MAAM,MAAM,YAAY;AAAA,cAC5B,MAAM,aAAa;AAAA,cACnB,MAAM,aAAa;AAAA,cACnB,aAAa,aAAa;AAAA,cAC1B,eAAe;AAAA,cACf,MAAM,GAAG;AAAA,YACX,CAAC;AACD,sBAAU,KAAK;AACf,sBAAU,UAAU,EAAE,YAAY,eAAe,SAAS,GAAG,SAAS,GAAG;AAAA,UAC3E,SAAS,GAAP;AACA,qBAAS,kCAAkC;AAAA,UAC7C;AACA,wBAAc,KAAK;AAAA,QACrB;AACA,WAAG,kBAAkB,YAAY;AAAA,MACnC;AAAA,IACF;AAAA,EACF;AACA,SACE,4EACE;AAAA;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,KAAI;AAAA,QACJ,SAAS,MAAM;AACb,2BAAiB,UAAU,UAAU,EAAE,aAAa,CAAC;AACrD,oBAAU,IAAI;AAAA,QAChB;AAAA,QAEA,sDAAC,yBAAM,OAAO,CAAC,WAAW,GAAG,GAAG,MAAK,KAAI;AAAA;AAAA,IAC3C;AAAA,IACA;AAAA,MAAC,gBAAAA;AAAA,MAAA;AAAA,QACC;AAAA,QACA,OAAM;AAAA,QACN,WAAW,MAAM;AACf,oBAAU,KAAK;AAAA,QACjB;AAAA,QACA,SAAS,MAAM;AACb,oBAAU,KAAK;AAAA,QACjB;AAAA,QACA,WAAS;AAAA,QACT,SAAS;AAAA,QACT,MAAK;AAAA,QACL,WAAW,8BAAc;AAAA,QACzB,cAAa;AAAA,QACb,SAAQ;AAAA,QAEP;AAAA,WAAC,cACA;AAAA,YAAC,mBAAAC;AAAA,YAAA;AAAA,cACC,gBAAgB,EAAE,IAAI,UAAU;AAAA,cAChC,eAAe;AAAA,cACf,mBAAmB;AAAA,cACnB,QAAQ;AAAA;AAAA,UACV;AAAA,UAED,cAAc;AAAA,UACd,SAAS,4CAAC,SAAI,OAAO,EAAE,OAAO,OAAO,WAAW,OAAO,GAAI,iBAAM;AAAA;AAAA;AAAA,IACpE;AAAA,KACF;AAEJ;",
|
|
6
6
|
"names": ["DSModal", "DSUploader"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/CustomToolbar.tsx", "
|
|
3
|
+
"sources": ["../../../src/components/CustomToolbar.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable complexity */\n/* eslint-disable jsx-a11y/control-has-associated-label */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\n/* eslint-disable react/button-has-type */\nimport React, { useState, useContext } from 'react';\nimport { ThemeContext } from '@elliemae/ds-system';\nimport { DSButtonV2 } from '@elliemae/ds-button-v2';\nimport { Grid } from '@elliemae/ds-grid';\nimport { ArrowheadDown } from '@elliemae/ds-icons';\nimport DSDropdownMenu from '@elliemae/ds-dropdownmenu';\nimport { colors, fonts, sizes, sizesReal } from '../constants.js';\nimport { TippedButton } from './TippedButton.js';\nimport { TippedSelect } from './TippedSelect.js';\n\n// Functions -----------------------------------------\nconst optionsToValues = (options) => options.map((opt) => opt.toLowerCase().replace(' ', '-'));\n\n// Stateless Components -----------------------------------------\n\nconst CustomFields = () => <span>\u1438\u1433</span>; // eslint-disable-line react/jsx-one-expression-per-line\nconst Color = ({ color }) => <option value={color} />;\nconst Colors = ({ className, tip, zIndex }) => (\n <TippedSelect className={className} tip={tip} zIndex={zIndex}>\n {colors.map((color) => (\n <Color key={color} color={color} />\n ))}\n </TippedSelect>\n);\n\nexport const CustomDropdown = ({\n options,\n label,\n onSelectMenuItem = () => null,\n onClickOutsideMenu = () => null,\n onClose = () => null,\n closeMenuOnItemSelection,\n isOpen,\n minWidth,\n maxWidth,\n zIndex = 10,\n}) => (\n <DSDropdownMenu\n onClickOutsideMenu={onClickOutsideMenu}\n options={options}\n onSelectMenuItem={onSelectMenuItem}\n onClose={onClose}\n closeMenuOnItemSelection={closeMenuOnItemSelection}\n isOpen={isOpen}\n minWidth={minWidth}\n maxWidth={maxWidth}\n zIndex={zIndex}\n preventOverflow=\"scrollParent\"\n triggerComponent={\n <DSButtonV2 buttonType=\"text\" aria-label={label}>\n <Grid gap=\"xxs\" cols={['auto', 'max-content']}>\n {label}\n <ArrowheadDown />\n </Grid>\n </DSButtonV2>\n }\n />\n);\n\nconst Divider = () => (\n <div\n style={{\n height: '21px',\n width: '1px',\n margin: '0 10px',\n padding: '0',\n borderLeft: '1px solid #bbb',\n display: 'inline-block',\n }}\n ></div>\n);\n\nexport const CustomToolbar = ({\n customFields,\n customItems = [],\n hideItems = {},\n onShowHTML = () => {},\n id = 'toolbar',\n userProps,\n}) => {\n const {\n HEADER,\n FONT,\n FONT_SIZE,\n BOLD,\n ITALIC,\n UNDERLINE,\n STRIKE,\n SUB,\n SUPER,\n ORDERED_LIST,\n BULLET_LIST,\n INDENT_MINUS_ONE,\n INDENT_PLUS_ONE,\n ALIGN,\n FONT_COLOR,\n FONT_BACKGROUND_COLOR,\n HYPERLINK,\n IMAGE,\n CLEAR_FORMAT,\n SHOW_HTML,\n } = hideItems;\n const [showHTML, setShowHTML] = useState(false);\n\n const handleShowHTML = (e) => {\n e.preventDefault();\n setShowHTML(!showHTML);\n onShowHTML();\n };\n\n const theme = useContext(ThemeContext);\n const defaultZIndex = theme?.zIndex?.tooltip;\n return (\n <div id={id} className=\"ds-ql-custom-toolbar\">\n {(!HEADER || !FONT || !FONT_SIZE) && (\n <span className=\"ql-formats\">\n {!HEADER && (\n <>\n <TippedSelect\n className=\"ql-header\"\n tip=\"Header\"\n values={['', '1', '2', '3', '4', '5', '6']}\n zIndex={userProps?.zIndex || defaultZIndex}\n />\n <Divider />\n </>\n )}\n {!FONT && (\n <>\n <TippedSelect\n className=\"ql-font\"\n defaultValue=\"sans-serif\"\n options={fonts}\n tip=\"Font\"\n values={optionsToValues(fonts)}\n zIndex={userProps?.zIndex || defaultZIndex}\n />\n <Divider />\n </>\n )}\n {!FONT_SIZE && (\n <>\n <TippedSelect\n className=\"ql-size\"\n options={sizes}\n tip=\"Font Size\"\n values={optionsToValues(sizesReal)}\n zIndex={userProps?.zIndex || defaultZIndex}\n />\n <Divider />\n </>\n )}\n </span>\n )}\n {(!BOLD || !ITALIC || !UNDERLINE || !STRIKE) && (\n <span className=\"ql-formats\">\n {!BOLD && <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-bold\" tip=\"Bold\" />}\n {!ITALIC && <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-italic\" tip=\"Italic\" />}\n {!UNDERLINE && (\n <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-underline\" tip=\"Underline\" />\n )}\n {!STRIKE && <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-strike\" tip=\"Strike\" />}\n </span>\n )}\n {(!SUB || !SUPER) && (\n <span className=\"ql-formats\">\n {!SUB && (\n <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-script\" tip=\"Sub\" value=\"sub\" />\n )}\n {!SUPER && (\n <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-script\" tip=\"Super\" value=\"super\" />\n )}\n <Divider />\n </span>\n )}\n {(!ORDERED_LIST || !BULLET_LIST) && (\n <span className=\"ql-formats\">\n {!ORDERED_LIST && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-list\"\n tip=\"Ordered List\"\n value=\"ordered\"\n />\n )}\n {!BULLET_LIST && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-list\"\n tip=\"Bullet List\"\n value=\"bullet\"\n />\n )}\n </span>\n )}\n {(!INDENT_MINUS_ONE || !INDENT_PLUS_ONE) && (\n <span className=\"ql-formats\">\n {!INDENT_MINUS_ONE && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-indent\"\n tip=\"Indent -1\"\n value=\"-1\"\n />\n )}\n {!INDENT_PLUS_ONE && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-indent\"\n tip=\"Indent +1\"\n value=\"+1\"\n />\n )}\n </span>\n )}\n {!ALIGN && (\n <span className=\"ql-formats\">\n {/* <TippedSelect zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-align\" tip=\"Align\"/> */}\n {/* \n quill js has a bug where using ql-align with the html tag \"select\" leave us with a can not read property innerhtml of undefined\n we can't update quill js because it's a peer dependency of react-quill\n this is a workaround to keep provide the ql-align module but not use the html tag \"select\"\n */}\n <span className=\"ql-formats\">\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-align\"\n tip=\"Left\"\n value=\"\"\n ></TippedButton>\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-align\"\n tip=\"Center\"\n value=\"center\"\n ></TippedButton>\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-align\"\n tip=\"Right\"\n value=\"right\"\n ></TippedButton>\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-align\"\n tip=\"Justify\"\n value=\"justify\"\n ></TippedButton>\n </span>\n <Divider />\n </span>\n )}\n {(!FONT_COLOR || !FONT_BACKGROUND_COLOR) && (\n <span className=\"ql-formats\">\n {!FONT_COLOR && <Colors zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-color\" tip=\"Font Color\" />}\n {!FONT_BACKGROUND_COLOR && (\n <Colors zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-background\" tip=\"Font Background Color\" />\n )}\n <Divider />\n </span>\n )}\n {(!HYPERLINK || !IMAGE) && (\n <span className=\"ql-formats\">\n {!HYPERLINK && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-link\"\n tip=\"Hyperlink: Select Text First\"\n />\n )}\n {!IMAGE && (\n <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-image\" tip=\"Insert Image\" />\n )}\n <Divider />\n </span>\n )}\n {!CLEAR_FORMAT && (\n <span className=\"ql-formats\">\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-clean\"\n tip=\"Clear Format (Select Text)\"\n />\n </span>\n )}\n {!SHOW_HTML && (\n <span className=\"ql-formats\">\n <Divider />\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n style={{\n width: 'fit-content',\n color: '#1e79c2',\n fontWeight: '500',\n }}\n onClick={handleShowHTML}\n tip={showHTML ? 'SHOW TEXT' : 'SHOW HTML'}\n className=\"ql-customFields-html\"\n >\n {showHTML ? 'SHOW TEXT' : 'SHOW HTML'}\n </TippedButton>\n </span>\n )}\n {customFields && (\n <span className=\"ql-formats\">\n <Divider />\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-customFields\"\n tip=\"Insert Custom Field\"\n >\n <CustomFields />\n </TippedButton>\n </span>\n )}\n {customItems && (\n <span style={{ display: 'inline-flex' }}>\n {customItems.map((Item) => (\n <>\n <Divider />\n <Item />\n </>\n ))}\n </span>\n )}\n </div>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["DSDropdownMenu"]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/DSWYSIWYGEditorImpl.tsx", "
|
|
4
|
-
"sourcesContent": ["/* eslint-disable @typescript-eslint/no-unsafe-return */\n/* eslint-disable @typescript-eslint/no-unsafe-call */\n/* eslint-disable @typescript-eslint/no-unsafe-argument */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-assignment */\n/* eslint-disable complexity */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport ReactQuill from 'react-quill';\nimport { uid } from 'uid';\n\nimport ImageLibraryModal from './ImageLibraryModal.js';\nimport InsertFieldModal from './InsertFieldModal.js';\nimport { CustomToolbar } from './CustomToolbar.js';\nimport { formatHTML } from '../utils.js';\nimport { clipboardLinkWithTagMatcher } from '../quillMatchers/clipboardLinkWithTagMatcher.js';\nimport Quill from '../config/quillSingletonConfigurations.js';\n\nexport default class DSWYSIWYGEditorImpl extends React.PureComponent {\n quill: undefined | typeof ReactQuill;\n\n constructor(props: {} | Readonly<{}>) {\n super(props);\n this.quill = undefined; // this will hold the quill instance reference\n const instanceUid = uid(12);\n const uniqueClassName = `ds-wysiwyg-editor-${instanceUid}`;\n const { hideToolbar } = props;\n\n const quillModules = {\n toolbar: hideToolbar\n ? false\n : {\n container: this.props.toolbarContainer ? `#${this.props.toolbarContainer}` : `#toolbar-${uniqueClassName}`,\n handlers: {\n ...this.props.toolbarHandlers,\n },\n },\n clipboard: {\n // toggle to add extra line breaks when pasting HTML:\n matchVisual: false,\n },\n ...this.props.quillModules,\n };\n if (props.quillOverrides.length) {\n props.quillOverrides.map((override: string) => Quill.register(override, true));\n }\n this.state = {\n isImageModalOpen: false,\n isFieldModalOpen: false,\n uid: instanceUid,\n uniqueClassName,\n quillModules,\n };\n const { toolbar } = quillModules;\n if (props.imagesData) {\n toolbar.handlers.image = (value: any) => {\n const { imagesData, handleImageClick } = this.props;\n if (!imagesData.length) {\n return;\n }\n this.setState({ isImageModalOpen: !!value });\n handleImageClick(value);\n };\n }\n if (props.customFields) {\n toolbar.handlers.customFields = (value: any) => {\n const { customFields, handleCustomFieldClick } = this.props;\n if (!customFields.length) {\n return;\n }\n this.setState({ isFieldModalOpen: !!value });\n handleCustomFieldClick(value);\n };\n }\n }\n\n componentDidMount() {}\n\n getEditor = () =>{\n try {\n this.quill?.getEditor?.();\n } catch (error) {\n console.warn('Error getting quill editor', error);\n }\n }
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADkKjB;AA1JN,mBAAkB;AAClB,yBAAuB;AACvB,iBAAoB;AAEpB,+BAA8B;AAC9B,8BAA6B;AAC7B,2BAA8B;AAC9B,mBAA2B;AAC3B,yCAA4C;AAC5C,0CAAkB;AAElB,MAAO,4BAA0C,aAAAA,QAAM,cAAc;AAAA,EAGnE,YAAY,OAA0B;AACpC,UAAM,KAAK;AAwDb,qBAAY,
|
|
3
|
+
"sources": ["../../../src/components/DSWYSIWYGEditorImpl.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["/* eslint-disable @typescript-eslint/no-unsafe-return */\n/* eslint-disable @typescript-eslint/no-unsafe-call */\n/* eslint-disable @typescript-eslint/no-unsafe-argument */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-assignment */\n/* eslint-disable complexity */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport ReactQuill from 'react-quill';\nimport { uid } from 'uid';\n\nimport ImageLibraryModal from './ImageLibraryModal.js';\nimport InsertFieldModal from './InsertFieldModal.js';\nimport { CustomToolbar } from './CustomToolbar.js';\nimport { formatHTML } from '../utils.js';\nimport { clipboardLinkWithTagMatcher } from '../quillMatchers/clipboardLinkWithTagMatcher.js';\nimport Quill from '../config/quillSingletonConfigurations.js';\n\nexport default class DSWYSIWYGEditorImpl extends React.PureComponent {\n quill: undefined | typeof ReactQuill;\n\n constructor(props: {} | Readonly<{}>) {\n super(props);\n this.quill = undefined; // this will hold the quill instance reference\n const instanceUid = uid(12);\n const uniqueClassName = `ds-wysiwyg-editor-${instanceUid}`;\n const { hideToolbar } = props;\n\n const quillModules = {\n toolbar: hideToolbar\n ? false\n : {\n container: this.props.toolbarContainer ? `#${this.props.toolbarContainer}` : `#toolbar-${uniqueClassName}`,\n handlers: {\n ...this.props.toolbarHandlers,\n },\n },\n clipboard: {\n // toggle to add extra line breaks when pasting HTML:\n matchVisual: false,\n },\n ...this.props.quillModules,\n };\n if (props.quillOverrides.length) {\n props.quillOverrides.map((override: string) => Quill.register(override, true));\n }\n this.state = {\n isImageModalOpen: false,\n isFieldModalOpen: false,\n uid: instanceUid,\n uniqueClassName,\n quillModules,\n };\n const { toolbar } = quillModules;\n if (props.imagesData) {\n toolbar.handlers.image = (value: any) => {\n const { imagesData, handleImageClick } = this.props;\n if (!imagesData.length) {\n return;\n }\n this.setState({ isImageModalOpen: !!value });\n handleImageClick(value);\n };\n }\n if (props.customFields) {\n toolbar.handlers.customFields = (value: any) => {\n const { customFields, handleCustomFieldClick } = this.props;\n if (!customFields.length) {\n return;\n }\n this.setState({ isFieldModalOpen: !!value });\n handleCustomFieldClick(value);\n };\n }\n }\n\n componentDidMount() {}\n\n getEditor = () => {\n try {\n this.quill?.getEditor?.();\n } catch (error) {\n console.warn('Error getting quill editor', error);\n }\n };\n\n // eslint-disable-next-line max-params\n onChangeQuill = (html: any, delta: any, source: any, editor: any) => {\n // console.log('quill detected a change');\n const { showRawHTML, onChange } = this.props;\n if (!showRawHTML) onChange(html, delta, source, editor);\n };\n\n onChangeTextArea = (e: { target: { value: any } }) => {\n const { showRawHTML, onChange, readOnly } = this.props;\n if (showRawHTML && !readOnly) onChange(e.target.value);\n };\n\n onInserFieldConfirm = (fieldCode: any) => {\n const editor = this.getEditor();\n const range = editor.getSelection(true);\n editor.insertText(range.index, fieldCode);\n };\n\n onImageConfirm = (image: { url: any }) => {\n if (!image) {\n return;\n }\n const editor = this.getEditor();\n const range = editor.getSelection(true);\n editor.insertEmbed(range.index, 'image', image.url);\n };\n\n onFieldModalClose = () => {\n this.setState({ isFieldModalOpen: false });\n };\n\n onImageModalClose = () => {\n this.setState({ isImageModalOpen: false });\n };\n\n quillRef = (ref: typeof ReactQuill | undefined) => {\n try {\n const editor = ref?.getEditor();\n if (this.getEditor() !== editor) {\n // the underlying quill instance has changed\n // this may happens because it's the first render or for other reasons\n // but any instance configuration must happen again in this case\n\n // we add a clipboard matcher\n // https://github.com/quilljs/quill/issues/2677\n editor?.clipboard.addMatcher('a', clipboardLinkWithTagMatcher);\n }\n this.props.getQuillRef(ref);\n this.quill = ref;\n } catch (error) {\n console.warn('Error getting quill ref', error);\n }\n };\n\n render() {\n const { isFieldModalOpen, isImageModalOpen } = this.state;\n const {\n containerProps = {},\n customFields,\n imagesData,\n customToolbar,\n height,\n value,\n showRawHTML,\n onShowHTML,\n hideItems,\n // bounds,\n // a bunch of props we don't want to pass to the editor\n onChange,\n handleImageClick,\n handleCustomFieldClick,\n ...editorProps\n } = this.props;\n\n return (\n <div\n // data-testid=\"wysiwyg-text-container\"\n {...containerProps}\n className={`quill-wysiwyg-editor ${showRawHTML ? 'show-raw' : ''}`}\n data-uid={this.state.uid}\n >\n {this.props.hideToolbar ? null : (\n <>\n {customToolbar || (\n <CustomToolbar\n customFields={customFields}\n onShowHTML={onShowHTML}\n hideItems={hideItems}\n userProps={this.props}\n id={`toolbar-${this.state.uniqueClassName}`}\n />\n )}\n </>\n )}\n <ReactQuill\n ref={this.quillRef}\n modules={this.state.quillModules}\n onChange={this.onChangeQuill}\n value={value}\n style={{\n height,\n borderBottom: '1px solid #ccc',\n }}\n {...editorProps}\n id={`wysiwyg-text-container-${this.state.uid}`}\n />\n <textarea\n className=\"raw-editor ql-container ql-snow ql-editor\"\n style={{\n width: '100%',\n resize: 'none',\n height,\n minHeight: '200px',\n }}\n onChange={this.onChangeTextArea}\n value={formatHTML(value)}\n readOnly={editorProps.readOnly}\n />\n {imagesData && imagesData.length && (\n <ImageLibraryModal\n imagesData={imagesData}\n isOpen={isImageModalOpen}\n onClose={this.onImageModalClose}\n onConfirm={this.onImageConfirm}\n />\n )}\n {customFields && customFields.length && (\n <InsertFieldModal\n customFields={customFields}\n isOpen={isFieldModalOpen}\n onClose={this.onFieldModalClose}\n onConfirm={this.onInserFieldConfirm}\n />\n )}\n </div>\n );\n }\n}\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["React", "Quill", "ReactQuill", "ImageLibraryModal", "InsertFieldModal"]
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/ImageLibraryModal.tsx", "
|
|
3
|
+
"sources": ["../../../src/components/ImageLibraryModal.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import React from 'react';\nimport DSImageLibraryModal from '@elliemae/ds-imagelibrarymodal';\nimport { PropTypes } from '@elliemae/ds-props-helpers';\n\nexport default class ImageLibraryModal extends React.PureComponent {\n static propTypes = {\n onConfirm: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n onReject: PropTypes.func,\n imagesData: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n description: PropTypes.string,\n createdBy: PropTypes.string.isRequired,\n createdDate: PropTypes.string.isRequired,\n }),\n ),\n isOpen: PropTypes.bool.isRequired,\n };\n\n static defaultProps = {\n onReject: undefined,\n imagesData: [\n {\n url: 'https://www.freeiconspng.com/minicovers/no-image-icon-6.png',\n name: 'no image',\n createdBy: 'user:John Doe',\n createdDate: '0000-01-01 00:00 AM UTC',\n },\n {\n url: 'https://asset-service-bucket-int.s3.us-west-2.amazonaws.com/bd527d8c-472f-4dff-b8c5-1c90d5bae01e',\n name: 'no image 2',\n createdBy: 'user:Jane Doe',\n createdDate: '0000-01-01 00:00 AM UTC',\n },\n ],\n };\n\n constructor(props) {\n super(props);\n this.state = {\n selectedImage: undefined,\n };\n }\n\n onSelect = (selectedImage) => {\n this.setState({ selectedImage });\n };\n\n onConfirm = () => {\n const { selectedImage } = this.state;\n const { onConfirm, onClose } = this.props;\n onConfirm(selectedImage);\n onClose();\n };\n\n render() {\n return <DSImageLibraryModal {...this.props} onConfirm={this.onConfirm} onSelect={this.onSelect} />;\n }\n}\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;AD2DZ;AA3DX,mBAAkB;AAClB,kCAAgC;AAChC,8BAA0B;AAE1B,MAAO,0BAAwC,aAAAA,QAAM,cAAc;AAAA,EAoCjE,YAAY,OAAO;AACjB,UAAM,KAAK;AAMb,oBAAW,CAAC,kBAAkB;AAC5B,WAAK,SAAS,EAAE,cAAc,CAAC;AAAA,IACjC;AAEA,qBAAY,MAAM;AAChB,YAAM,EAAE,cAAc,IAAI,KAAK;AAC/B,YAAM,EAAE,WAAW,QAAQ,IAAI,KAAK;AACpC,gBAAU,aAAa;AACvB,cAAQ;AAAA,IACV;AAdE,SAAK,QAAQ;AAAA,MACX,eAAe;AAAA,IACjB;AAAA,EACF;AAAA,EAaA,SAAS;AACP,WAAO,4CAAC,4BAAAC,SAAA,EAAqB,GAAG,KAAK,OAAO,WAAW,KAAK,WAAW,UAAU,KAAK,UAAU;AAAA,EAClG;AACF;AAzDqB,kBACZ,YAAY;AAAA,EACjB,WAAW,kCAAU,KAAK;AAAA,EAC1B,SAAS,kCAAU,KAAK;AAAA,EACxB,UAAU,kCAAU;AAAA,EACpB,YAAY,kCAAU;AAAA,IACpB,kCAAU,MAAM;AAAA,MACd,IAAI,kCAAU;AAAA,MACd,KAAK,kCAAU,OAAO;AAAA,MACtB,MAAM,kCAAU,OAAO;AAAA,MACvB,aAAa,kCAAU;AAAA,MACvB,WAAW,kCAAU,OAAO;AAAA,MAC5B,aAAa,kCAAU,OAAO;AAAA,IAChC,CAAC;AAAA,EACH;AAAA,EACA,QAAQ,kCAAU,KAAK;AACzB;AAhBmB,kBAkBZ,eAAe;AAAA,EACpB,UAAU;AAAA,EACV,YAAY;AAAA,IACV;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,IACA;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,EACF;AACF;",
|
|
6
6
|
"names": ["React", "DSImageLibraryModal"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/InsertFieldModal.tsx", "
|
|
3
|
+
"sources": ["../../../src/components/InsertFieldModal.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable react/static-property-placement */\nimport React from 'react';\nimport { PropTypes } from '@elliemae/ds-props-helpers';\nimport DSModal, { MODAL_TYPE } from '@elliemae/ds-modal';\nimport { sizeOptions } from '@elliemae/ds-shared';\nimport { includes } from 'lodash';\nimport { fields, getFieldName, getFieldCode } from './customFields.js';\n\nconst modalTypes = Object.values(MODAL_TYPE);\nconst elementClassName = 'insertfieldmodal-element';\n\nexport default class InsertFieldModal extends React.PureComponent {\n static propTypes = {\n onConfirm: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n confirmLabel: PropTypes.string,\n customFields: PropTypes.arrayOf(PropTypes.string),\n disableDoubleClick: PropTypes.bool,\n isOpen: PropTypes.bool,\n modalTitle: PropTypes.string,\n modalType: PropTypes.string,\n rejectLabel: PropTypes.string,\n shouldCloseOnOverlayClick: PropTypes.bool,\n size: PropTypes.string,\n onSelect: PropTypes.func,\n };\n\n static defaultProps = {\n confirmLabel: 'Add',\n customFields: fields,\n disableDoubleClick: false,\n isOpen: true,\n modalTitle: 'Add Field',\n modalType: modalTypes[1],\n rejectLabel: 'Cancel',\n shouldCloseOnOverlayClick: true,\n size: sizeOptions[1],\n onSelect: undefined,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n selectedFieldCode: getFieldCode(fields[0]),\n };\n this.preventSpacebarScroll();\n }\n\n componentDidMount() {\n const { customFields } = this.props;\n if (customFields) {\n this.handleElementClick({}, customFields[0]);\n this.focusFirst = true;\n }\n }\n\n getDerivedStateFromProps(nextProps) {\n const { customFields } = this.props;\n if (!customFields && nextProps.customFields) {\n this.setState({ selectedFieldCode: customFields[0] });\n }\n }\n\n onConfirm = () => {\n const { onConfirm, onClose } = this.props;\n const { selectedFieldCode } = this.state;\n onConfirm(selectedFieldCode);\n onClose();\n };\n\n onReject = () => {\n const { onReject, onClose } = this.props;\n if (onReject) {\n onReject();\n } else {\n onClose();\n }\n };\n\n drawDiv = (className, content, content2) => (\n <div className={className}>\n <span>{content}</span>\n <span>{content2}</span>\n </div>\n );\n\n drawLabel = (className, label, value) => (\n <div className={className}>\n <span className=\"label\">{label}</span>\n <span className=\"value\">{value}</span>\n </div>\n );\n\n handleElementClick = (e, selectedFieldCode) => {\n if (e.key && e.key !== ' ') {\n return;\n }\n const { selectedFieldCode: fCode } = this.state;\n const { disableDoubleClick } = this.props;\n if (selectedFieldCode === fCode && !disableDoubleClick) {\n this.onConfirm();\n return;\n }\n this.setState({\n selectedFieldCode,\n });\n const { onSelect } = this.props;\n if (onSelect) {\n onSelect(selectedFieldCode);\n }\n };\n\n preventSpacebarScroll = () => {\n document.onkeypress = function (e) {\n if (!includes(e.target.className, elementClassName)) {\n return true;\n }\n e = e || window.event;\n const charCode = e.keyCode || e.which;\n if (charCode === 32) {\n e.preventDefault();\n return false;\n }\n return true;\n };\n };\n\n renderElements = () => {\n const { customFields } = this.props;\n if (!customFields) {\n return 'Empty';\n }\n const { selectedFieldCode } = this.state;\n return customFields.map((customField, idx) => {\n const extras = {};\n const fieldCode = getFieldCode(customField);\n if (this.focusFirst && idx === 0) {\n extras.ref = (element) => element && element.focus();\n this.focusFirst = undefined;\n } else if (fieldCode === selectedFieldCode) {\n extras.ref = (element) => element && element.focus();\n }\n return (\n <div\n key={fieldCode}\n className={elementClassName}\n onClick={(e) => this.handleElementClick(e, fieldCode)}\n onKeyUp={(e) => this.handleElementClick(e, fieldCode)}\n role=\"button\"\n tabIndex={0}\n {...extras}\n >\n {this.drawLabel('content', getFieldName(customField), fieldCode)}\n </div>\n );\n });\n };\n\n render() {\n const { customFields, onSelect, ...modalProps } = this.props;\n return (\n <DSModal {...modalProps} className=\"insert-field-modal\" onConfirm={this.onConfirm} onReject={this.onReject}>\n <div className=\"wrapper\">\n <div className=\"col-1\">\n {this.drawDiv('title', 'Field Name', '\u00AB Field ID \u00BB')}\n {this.renderElements()}\n </div>\n </div>\n </DSModal>\n );\n }\n}\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["React", "DSModal"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/TippedButton.tsx", "
|
|
3
|
+
"sources": ["../../../src/components/TippedButton.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import React from 'react';\nimport { DSTooltipV3 } from '@elliemae/ds-tooltip';\n\ninterface TippedButtonPropsT {\n tip: string;\n zIndex: number;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n children?: React.ReactNode;\n style?: React.CSSProperties;\n className?: string;\n value?: string;\n}\n\nexport const TippedButton = ({\n className,\n tip,\n children,\n onClick = () => null,\n zIndex = 1,\n ...rest\n}: TippedButtonPropsT): JSX.Element => (\n <div className=\"tooltip\">\n <DSTooltipV3 text={tip} zIndex={zIndex} withoutPortal={false}>\n <button\n type=\"button\"\n className={className}\n onClick={(e) => {\n e.preventDefault();\n onClick(e);\n }}\n {...rest}\n >\n {children}\n </button>\n </DSTooltipV3>\n </div>\n);\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADuBjB;AAtBN,wBAA4B;AAYrB,MAAM,eAAe,CAAC;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU,MAAM;AAAA,EAChB,SAAS;AAAA,EACT,GAAG;AACL,MACE,4CAAC,SAAI,WAAU,WACb,sDAAC,iCAAY,MAAM,KAAK,QAAgB,eAAe,OACrD;AAAA,EAAC;AAAA;AAAA,IACC,MAAK;AAAA,IACL;AAAA,IACA,SAAS,CAAC,MAAM;AACd,QAAE,eAAe;AACjB,cAAQ,CAAC;AAAA,IACX;AAAA,IACC,GAAG;AAAA,IAEH;AAAA;AACH,GACF,GACF;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/TippedSelect.tsx", "
|
|
3
|
+
"sources": ["../../../src/components/TippedSelect.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import React from 'react';\nimport { DSTooltipV3 } from '@elliemae/ds-tooltip';\n\ninterface TippedSelectPropsT {\n tip: string;\n onChange?: (e: React.ChangeEvent<HTMLSelectElement>) => void;\n className?: string;\n options?: string[];\n defaultValue?: string;\n values?: string[];\n zIndex?: number;\n children?: React.ReactNode;\n}\n\nexport const TippedSelect = (props: TippedSelectPropsT): JSX.Element => {\n const { tip, onChange = () => null, className, options, defaultValue = '', values, zIndex, children } = props;\n const fallBackChildren =\n values &&\n values.map((value, index) => (\n <option key={value} value={value === 'normal' ? '' : value}>\n {options ? options[index] : null}\n </option>\n ));\n\n return (\n <div className=\"tooltip\">\n <DSTooltipV3 text={tip} zIndex={zIndex} withoutPortal={false}>\n <div>\n <select\n className={className}\n defaultValue={defaultValue}\n onChange={(e) => {\n e.persist();\n onChange(e);\n }}\n >\n {children || fallBackChildren}\n </select>\n </div>\n </DSTooltipV3>\n </div>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADmBjB;AAlBN,wBAA4B;AAarB,MAAM,eAAe,CAAC,UAA2C;AACtE,QAAM,EAAE,KAAK,WAAW,MAAM,MAAM,WAAW,SAAS,eAAe,IAAI,QAAQ,QAAQ,SAAS,IAAI;AACxG,QAAM,mBACJ,UACA,OAAO,IAAI,CAAC,OAAO,UACjB,4CAAC,YAAmB,OAAO,UAAU,WAAW,KAAK,OAClD,oBAAU,QAAQ,KAAK,IAAI,QADjB,KAEb,CACD;AAEH,SACE,4CAAC,SAAI,WAAU,WACb,sDAAC,iCAAY,MAAM,KAAK,QAAgB,eAAe,OACrD,sDAAC,SACC;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,UAAU,CAAC,MAAM;AACf,UAAE,QAAQ;AACV,iBAAS,CAAC;AAAA,MACZ;AAAA,MAEC,sBAAY;AAAA;AAAA,EACf,GACF,GACF,GACF;AAEJ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/colors.tsx", "
|
|
3
|
+
"sources": ["../../../src/components/colors.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["function sinToHex(i, size, phase) {\n const sin = Math.sin((Math.PI / size) * 2 * i + phase);\n const int = Math.floor(sin * 127) + 128;\n const hex = int.toString(16);\n\n return hex.length === 1 ? `0${hex}` : hex;\n}\nexport function getRainbowColors(size = 28) {\n const colors = new Array(size).fill(undefined);\n return colors.map((color, idx) => {\n const red = sinToHex(idx, size, (0 * Math.PI * 2) / 3); // 0 deg\n const blue = sinToHex(idx, size, (1 * Math.PI * 2) / 3); // 120 deg\n const green = sinToHex(idx, size, (2 * Math.PI * 2) / 3); // 240 deg\n\n color = `#${red}${green}${blue}`;\n return color;\n });\n}\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,SAAS,SAAS,GAAG,MAAM,OAAO;AAChC,QAAM,MAAM,KAAK,IAAK,KAAK,KAAK,OAAQ,IAAI,IAAI,KAAK;AACrD,QAAM,MAAM,KAAK,MAAM,MAAM,GAAG,IAAI;AACpC,QAAM,MAAM,IAAI,SAAS,EAAE;AAE3B,SAAO,IAAI,WAAW,IAAI,IAAI,QAAQ;AACxC;AACO,SAAS,iBAAiB,OAAO,IAAI;AAC1C,QAAM,SAAS,IAAI,MAAM,IAAI,EAAE,KAAK,MAAS;AAC7C,SAAO,OAAO,IAAI,CAAC,OAAO,QAAQ;AAChC,UAAM,MAAM,SAAS,KAAK,MAAO,IAAI,KAAK,KAAK,IAAK,CAAC;AACrD,UAAM,OAAO,SAAS,KAAK,MAAO,IAAI,KAAK,KAAK,IAAK,CAAC;AACtD,UAAM,QAAQ,SAAS,KAAK,MAAO,IAAI,KAAK,KAAK,IAAK,CAAC;AAEvD,YAAQ,IAAI,MAAM,QAAQ;AAC1B,WAAO;AAAA,EACT,CAAC;AACH;",
|
|
6
6
|
"names": []
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/customFields.tsx", "
|
|
4
|
-
"sourcesContent": ["export const fields = [\n 'Lender Name \u00AB315\u00BB',\n 'Lender Address \u00AB319\u00BB',\n 'Lender City \u00AB313\u00BB',\n 'Lender State \u00AB321\u00BB',\n 'Lender Zip \u00AB323\u00BB',\n 'Borrower First Name \u00AB4000\u00BB',\n 'Borrower Last Name \u00AB4002\u00BB',\n 'Total Loan Amount \u00AB2\u00BB',\n 'Loan Term \u00AB4\u00BB',\n 'Loan to Value \u00AB976\u00BB',\n 'Monthly Payment \u00AB912\u00BB',\n 'Interest Rate \u00AB3\u00BB',\n 'Loan Originator Name \u00AB1612\u00BB',\n 'Loan Originator Email \u00AB3968\u00BB',\n 'Loan Originator Phone \u00AB1823\u00BB',\n 'NMLS Loan Originator ID \u00AB3238\u00BB',\n];\n/**\n * Returns the fields names\n
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAhB,MAAM,SAAS;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;
|
|
3
|
+
"sources": ["../../../src/components/customFields.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["export const fields = [\n 'Lender Name \u00AB315\u00BB',\n 'Lender Address \u00AB319\u00BB',\n 'Lender City \u00AB313\u00BB',\n 'Lender State \u00AB321\u00BB',\n 'Lender Zip \u00AB323\u00BB',\n 'Borrower First Name \u00AB4000\u00BB',\n 'Borrower Last Name \u00AB4002\u00BB',\n 'Total Loan Amount \u00AB2\u00BB',\n 'Loan Term \u00AB4\u00BB',\n 'Loan to Value \u00AB976\u00BB',\n 'Monthly Payment \u00AB912\u00BB',\n 'Interest Rate \u00AB3\u00BB',\n 'Loan Originator Name \u00AB1612\u00BB',\n 'Loan Originator Email \u00AB3968\u00BB',\n 'Loan Originator Phone \u00AB1823\u00BB',\n 'NMLS Loan Originator ID \u00AB3238\u00BB',\n];\n/**\n * Returns the fields names\n * @param customFields\n */\nexport const getFields = (customFields = fields) =>\n customFields.map((opt, index) => ({\n id: `${opt}_${index}`,\n // icon: 'ADD',\n label: `${opt}`,\n onClick: opt.indexOf('\u00AB') !== -1 ? () => this.onOptionClick(this.getFieldCode(opt)) : null,\n type: opt === '' ? 'separator' : null,\n }));\n/**\n * Returns a field's name\n * @param field\n */\nexport const getFieldName = (field) => {\n const codeIndex = field.indexOf('\u00AB');\n return field.substring(0, codeIndex);\n};\n/**\n * Returns a field's id. E.g: \u00AB456\u00BB\n * @param field\n */\nexport const getFieldCode = (field) => {\n const codeIndex = field.indexOf('\u00AB');\n return field.substring(codeIndex);\n};\n\nexport default {\n fields,\n getFields,\n getFieldName,\n getFieldCode,\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAhB,MAAM,SAAS;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAKO,MAAM,YAAY,CAAC,eAAe,WACvC,aAAa,IAAI,CAAC,KAAK,WAAW;AAAA,EAChC,IAAI,GAAG,OAAO;AAAA;AAAA,EAEd,OAAO,GAAG;AAAA,EACV,SAAS,IAAI,QAAQ,MAAG,MAAM,KAAK,MAAM,SAAK,cAAc,SAAK,aAAa,GAAG,CAAC,IAAI;AAAA,EACtF,MAAM,QAAQ,KAAK,cAAc;AACnC,EAAE;AAKG,MAAM,eAAe,CAAC,UAAU;AACrC,QAAM,YAAY,MAAM,QAAQ,MAAG;AACnC,SAAO,MAAM,UAAU,GAAG,SAAS;AACrC;AAKO,MAAM,eAAe,CAAC,UAAU;AACrC,QAAM,YAAY,MAAM,QAAQ,MAAG;AACnC,SAAO,MAAM,UAAU,SAAS;AAClC;AAEA,IAAO,uBAAQ;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/config/quillSingletonConfigurations.ts", "
|
|
3
|
+
"sources": ["../../../src/config/quillSingletonConfigurations.ts", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import { Quill } from 'react-quill';\nimport BlotFormatter from 'quill-blot-formatter';\nimport IndentStyle from '../quillOverrides/IndentStyle.js';\nimport Image from '../quillOverrides/Image.js';\nimport LinkFormat from '../quillOverrides/LinkFormat.js';\n\n// hystorically we have always been modifying the Quill object directly\n// in node this means we have modified the global Quill object which is a singleton\n// it's not a good practice and we should not do it but to ensure our changes are transparent\n// we keep up the bad practice untill a new version of our editor is released\n// we will atleast reduce the amount of times we modify the Quill object by only doing it once\n// this is \"new\" bad practice but it's better than modifying the global Quill object constantly\n// we achieve this by adding a flag to the Quill object to indicate that we have already modified it\nif (!Quill._dsDidRegisterBlotFormatter) {\n Quill.register('modules/blotFormatter', BlotFormatter);\n Quill._dsDidRegisterBlotFormatter = true;\n}\nif (!Quill._dsDidConfigureTextWhitelist) {\n // Fix block styled formats ----------------\n const AlignStyle = Quill.import('attributors/style/align');\n const FontStyle = Quill.import('attributors/style/font');\n FontStyle.whitelist = [\n // allow ONLY these fonts and the default\n 'serif',\n 'monospace',\n 'arial',\n 'comic-sans',\n 'courier-new',\n 'georgia',\n 'helvetica',\n 'lucida',\n ];\n const SizeStyle = Quill.import('attributors/style/size');\n SizeStyle.whitelist = [\n // allow ONLY these sizes and the default\n 'x-small',\n 'large',\n 'x-large',\n ];\n Quill.register(AlignStyle, true);\n Quill.register(IndentStyle, true);\n Quill.register(FontStyle, true);\n Quill.register(SizeStyle, true);\n Quill._dsDidConfigureTextWhitelist = true;\n}\nif (!Quill._dsDidConfigureBlock) {\n // Fix Doc Viewer p tags extra margin issue ---------\n const Block = Quill.import('blots/block');\n Block.tagName = 'p';\n Quill.register(Block);\n Quill._dsDidConfigureBlock = true;\n // -----------------------------------------\n}\nif (!Quill._dsDidConfigureImage) {\n Quill.register(Image, true);\n Quill._dsDidConfigureImage = true;\n}\n\nif (!Quill._dsDidConfigureLink) {\n Quill.register(LinkFormat, true);\n Quill._dsDidConfigureLink = true;\n}\n\nexport default Quill;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,yBAAsB;AACtB,kCAA0B;AAC1B,yBAAwB;AACxB,mBAAkB;AAClB,wBAAuB;AASvB,IAAI,CAAC,yBAAM,6BAA6B;AACtC,2BAAM,SAAS,yBAAyB,4BAAAA,OAAa;AACrD,2BAAM,8BAA8B;AACtC;AACA,IAAI,CAAC,yBAAM,8BAA8B;AAEvC,QAAM,aAAa,yBAAM,OAAO,yBAAyB;AACzD,QAAM,YAAY,yBAAM,OAAO,wBAAwB;AACvD,YAAU,YAAY;AAAA;AAAA,IAEpB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACA,QAAM,YAAY,yBAAM,OAAO,wBAAwB;AACvD,YAAU,YAAY;AAAA;AAAA,IAEpB;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACA,2BAAM,SAAS,YAAY,IAAI;AAC/B,2BAAM,SAAS,mBAAAC,SAAa,IAAI;AAChC,2BAAM,SAAS,WAAW,IAAI;AAC9B,2BAAM,SAAS,WAAW,IAAI;AAC9B,2BAAM,+BAA+B;AACvC;AACA,IAAI,CAAC,yBAAM,sBAAsB;AAE/B,QAAM,QAAQ,yBAAM,OAAO,aAAa;AACxC,QAAM,UAAU;AAChB,2BAAM,SAAS,KAAK;AACpB,2BAAM,uBAAuB;AAE/B;AACA,IAAI,CAAC,yBAAM,sBAAsB;AAC/B,2BAAM,SAAS,aAAAC,SAAO,IAAI;AAC1B,2BAAM,uBAAuB;AAC/B;AAEA,IAAI,CAAC,yBAAM,qBAAqB;AAC9B,2BAAM,SAAS,kBAAAC,SAAY,IAAI;AAC/B,2BAAM,sBAAsB;AAC9B;AAEA,IAAO,uCAAQ;",
|
|
6
6
|
"names": ["BlotFormatter", "IndentStyle", "Image", "LinkFormat"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/constants.tsx", "
|
|
3
|
+
"sources": ["../../src/constants.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable prettier/prettier */\nimport { getRainbowColors } from './components/colors.js';\n\nexport const colors = [\n '#000000',\n '#e60000',\n '#ff9900',\n '#ffff00',\n '#008A00',\n '#0066cc',\n '#9933ff',\n '#ffffff',\n '#facccc',\n '#ffebcc',\n '#ffffcc',\n '#cce8cc',\n '#cce0f5',\n '#ebd6ff',\n '#bbbbbb',\n '#f06666',\n '#ffc266',\n '#ffff66',\n '#66b966',\n '#66a3e0',\n '#c285ff',\n '#888888',\n '#a10000',\n '#b26b00',\n '#b2b200',\n '#006100',\n '#0047b2',\n '#6b24b2',\n '#444444',\n '#5c0000',\n '#663d00',\n '#666600',\n '#003700',\n '#002966',\n '#3d1466',\n ...getRainbowColors(28),\n];\nexport const fonts = [\n 'Sans Serif',\n 'Serif',\n 'Monospace',\n 'Arial',\n 'Georgia',\n 'Helvetica',\n];\nexport const sizes = ['Small', 'Normal', 'Large', 'Huge'];\nexport const sizesReal = [\n // https://www.w3schools.com/cssref/pr_font_font-size.asp\n 'X-Small',\n 'Normal',\n 'Large',\n 'X-Large',\n];\n\nexport const defaultItems = {\n HEADER: 'header',\n FONT: 'font',\n FONT_SIZE: 'size',\n BOLD: 'bold',\n ITALIC: 'italic',\n UNDERLINE: 'underline',\n STRIKE: 'strike',\n SUB: 'sub',\n SUPER: 'super',\n ORDERED_LIST: 'ordered list',\n BULLET_LIST: 'bullet list',\n INDENT_MINUS_ONE: 'indent -1',\n INDENT_PLUS_ONE: 'indent +1',\n ALIGN: 'align',\n FONT_COLOR: 'font color',\n FONT_BACKGROUND_COLOR: 'font background color',\n HYPERLINK: 'hyperlink',\n IMAGE: 'image',\n CLEAR_FORMAT: 'clear format',\n SHOW_HTML: 'show html',\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,oBAAiC;AAE1B,MAAM,SAAS;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAG,gCAAiB,EAAE;AACxB;AACO,MAAM,QAAQ;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACO,MAAM,QAAQ,CAAC,SAAS,UAAU,SAAS,MAAM;AACjD,MAAM,YAAY;AAAA;AAAA,EAEvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,MAAM,eAAe;AAAA,EAC1B,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,KAAK;AAAA,EACL,OAAO;AAAA,EACP,cAAc;AAAA,EACd,aAAa;AAAA,EACb,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,uBAAuB;AAAA,EACvB,WAAW;AAAA,EACX,OAAO;AAAA,EACP,cAAc;AAAA,EACd,WAAW;AACb;",
|
|
6
6
|
"names": []
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/index.tsx", "
|
|
3
|
+
"sources": ["../../src/index.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["export { default, DSWYSIWYGEditor, WYSIWYWithSchema } from './DSWYSIWYGEditor.js';\nexport * from './components/CustomToolbar.js';\nexport * from './components/CustomImageUploader.js';\nexport * from './constants.js';\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,6BAA2D;AAC3D,wBAAc,0CADd;AAEA,wBAAc,gDAFd;AAGA,wBAAc,2BAHd;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/quillMatchers/clipboardLinkWithTagMatcher.ts", "
|
|
3
|
+
"sources": ["../../../src/quillMatchers/clipboardLinkWithTagMatcher.ts", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import type Delta from 'quill-delta';\n\nconst hrefTagRegexp = /%7B%7B.+%7D%7D/gm;\nexport const clipboardLinkWithTagMatcher = (node: HTMLAnchorElement, delta: Delta): Delta => {\n if (node.origin === window.location.origin) {\n const nodeHref = node.href;\n const tagMatch = nodeHref.match(hrefTagRegexp);\n if (tagMatch) {\n const [overWrittenHrefValue] = tagMatch;\n const insertLinkOperation = delta?.ops?.find((operation) => operation?.attributes?.link?.match?.(hrefTagRegexp));\n if (insertLinkOperation)\n insertLinkOperation.attributes.link = overWrittenHrefValue.replace(/%7B%7B/gm, '{{').replace(/%7D%7D/gm, '}}');\n }\n }\n return delta;\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEvB,MAAM,gBAAgB;AACf,MAAM,8BAA8B,CAAC,MAAyB,UAAwB;AAC3F,MAAI,KAAK,WAAW,OAAO,SAAS,QAAQ;AAC1C,UAAM,WAAW,KAAK;AACtB,UAAM,WAAW,SAAS,MAAM,aAAa;AAC7C,QAAI,UAAU;AACZ,YAAM,CAAC,oBAAoB,IAAI;AAC/B,YAAM,sBAAsB,OAAO,KAAK,KAAK,CAAC,cAAc,WAAW,YAAY,MAAM,QAAQ,aAAa,CAAC;AAC/G,UAAI;AACF,4BAAoB,WAAW,OAAO,qBAAqB,QAAQ,YAAY,IAAI,EAAE,QAAQ,YAAY,IAAI;AAAA,IACjH;AAAA,EACF;AACA,SAAO;AACT;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/quillOverrides/Image.tsx", "
|
|
3
|
+
"sources": ["../../../src/quillOverrides/Image.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import { Quill } from 'react-quill';\nconst BaseImage = Quill.import('formats/image');\n\nconst ATTRIBUTES = ['alt', 'height', 'width', 'style'];\n\nconst WHITE_STYLE = ['margin', 'display', 'float'];\n\nclass Image extends BaseImage {\n static formats(domNode) {\n return ATTRIBUTES.reduce(function (formats, attribute) {\n if (domNode.hasAttribute(attribute)) {\n formats[attribute] = domNode.getAttribute(attribute);\n }\n return formats;\n }, {});\n }\n\n format(name, value) {\n if (ATTRIBUTES.indexOf(name) > -1) {\n if (value) {\n if (name === 'style') {\n value = this.sanitize_style(value);\n }\n this.domNode.setAttribute(name, value);\n } else {\n this.domNode.removeAttribute(name);\n }\n } else {\n super.format(name, value);\n }\n }\n\n sanitize_style(style) {\n const style_arr = style.split(';');\n let allow_style = '';\n style_arr.forEach((v, i) => {\n if (WHITE_STYLE.indexOf(v.trim().split(':')[0]) !== -1) {\n allow_style += `${v};`;\n }\n });\n return allow_style;\n }\n}\n\nexport default Image;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,yBAAsB;AACtB,MAAM,YAAY,yBAAM,OAAO,eAAe;AAE9C,MAAM,aAAa,CAAC,OAAO,UAAU,SAAS,OAAO;AAErD,MAAM,cAAc,CAAC,UAAU,WAAW,OAAO;AAEjD,MAAM,cAAc,UAAU;AAAA,EAC5B,OAAO,QAAQ,SAAS;AACtB,WAAO,WAAW,OAAO,SAAU,SAAS,WAAW;AACrD,UAAI,QAAQ,aAAa,SAAS,GAAG;AACnC,gBAAQ,SAAS,IAAI,QAAQ,aAAa,SAAS;AAAA,MACrD;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,EACP;AAAA,EAEA,OAAO,MAAM,OAAO;AAClB,QAAI,WAAW,QAAQ,IAAI,IAAI,IAAI;AACjC,UAAI,OAAO;AACT,YAAI,SAAS,SAAS;AACpB,kBAAQ,KAAK,eAAe,KAAK;AAAA,QACnC;AACA,aAAK,QAAQ,aAAa,MAAM,KAAK;AAAA,MACvC,OAAO;AACL,aAAK,QAAQ,gBAAgB,IAAI;AAAA,MACnC;AAAA,IACF,OAAO;AACL,YAAM,OAAO,MAAM,KAAK;AAAA,IAC1B;AAAA,EACF;AAAA,EAEA,eAAe,OAAO;AACpB,UAAM,YAAY,MAAM,MAAM,GAAG;AACjC,QAAI,cAAc;AAClB,cAAU,QAAQ,CAAC,GAAG,MAAM;AAC1B,UAAI,YAAY,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,EAAE,CAAC,CAAC,MAAM,IAAI;AACtD,uBAAe,GAAG;AAAA,MACpB;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AACF;AAEA,IAAO,gBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/quillOverrides/IndentStyle.tsx", "
|
|
3
|
+
"sources": ["../../../src/quillOverrides/IndentStyle.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import { Quill } from 'react-quill';\n\nconst Parchment = Quill.import('parchment');\nconst levels = [1, 2, 3, 4, 5];\nconst multiplier = 2;\n\nclass IndentAttributor extends Parchment.Attributor.Style {\n add(node, value) {\n return super.add(node, `${value * multiplier}em`);\n }\n\n value(node) {\n return parseFloat(super.value(node)) / multiplier || undefined; // Don't return NaN\n }\n}\n\n/**\n * Meant to override quill's indent format's style and add the indentation inline instead of applying a class\n */\nconst IndentStyle = new IndentAttributor('indent', 'margin-left', {\n scope: Parchment.Scope.BLOCK,\n whitelist: levels.map((value) => `${value * multiplier}em`),\n});\n\nexport default IndentStyle;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,yBAAsB;AAEtB,MAAM,YAAY,yBAAM,OAAO,WAAW;AAC1C,MAAM,SAAS,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;AAC7B,MAAM,aAAa;AAEnB,MAAM,yBAAyB,UAAU,WAAW,MAAM;AAAA,EACxD,IAAI,MAAM,OAAO;AACf,WAAO,MAAM,IAAI,MAAM,GAAG,QAAQ,cAAc;AAAA,EAClD;AAAA,EAEA,MAAM,MAAM;AACV,WAAO,WAAW,MAAM,MAAM,IAAI,CAAC,IAAI,cAAc;AAAA,EACvD;AACF;AAKA,MAAM,cAAc,IAAI,iBAAiB,UAAU,eAAe;AAAA,EAChE,OAAO,UAAU,MAAM;AAAA,EACvB,WAAW,OAAO,IAAI,CAAC,UAAU,GAAG,QAAQ,cAAc;AAC5D,CAAC;AAED,IAAO,sBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/quillOverrides/LinkFormat.tsx", "
|
|
3
|
+
"sources": ["../../../src/quillOverrides/LinkFormat.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\nimport { Quill } from 'react-quill';\n\nconst sanitizeProtocol = (value) => {\n if (typeof value === 'boolean' || value === null) return value;\n let newVal = value;\n if (\n !value.startsWith('http') &&\n !value.startsWith('ftp') &&\n !value.startsWith('mailto:') &&\n !value.startsWith('{{')\n ) {\n if (!value.startsWith('www')) {\n newVal = `https://www.${value}`;\n } else newVal = `https://${value}`;\n }\n return newVal;\n};\n\nfunction getIsValidProtocol(url, protocols) {\n const anchor = document.createElement('a');\n anchor.href = url;\n const protocol = anchor.href.slice(0, anchor.href.indexOf(':'));\n return protocols.indexOf(protocol) > -1;\n}\n\nconst Link = Quill.import('formats/link');\n\nclass LinkFormat extends Link {\n blotName = 'link';\n\n tagName = 'A';\n\n SANITIZED_URL = 'about:blank';\n\n PROTOCOL_WHITELIST = ['http', 'ftp', 'https', 'mailto', 'tel'];\n\n static create(value) {\n const newVal = sanitizeProtocol(value);\n const node = super.create(newVal);\n node.setAttribute('href', newVal);\n return node;\n }\n\n static formats(domNode) {\n return domNode?.getAttribute?.('href');\n }\n\n static sanitize(url) {\n return getIsValidProtocol(url, this.PROTOCOL_WHITELIST) ? url : this.SANITIZED_URL;\n }\n\n format(name, value) {\n const newVal = sanitizeProtocol(value);\n // Remove link case\n if (name === 'link' && value === false) {\n this.domNode.removeAttribute('href');\n } else if (name !== this.statics.blotName || !newVal) {\n super.format(name, newVal);\n } else {\n this.domNode.setAttribute('href', this.constructor.sanitize(newVal));\n }\n }\n}\n\nexport default LinkFormat;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,yBAAsB;AAEtB,MAAM,mBAAmB,CAAC,UAAU;AAClC,MAAI,OAAO,UAAU,aAAa,UAAU;AAAM,WAAO;AACzD,MAAI,SAAS;AACb,MACE,CAAC,MAAM,WAAW,MAAM,KACxB,CAAC,MAAM,WAAW,KAAK,KACvB,CAAC,MAAM,WAAW,SAAS,KAC3B,CAAC,MAAM,WAAW,IAAI,GACtB;AACA,QAAI,CAAC,MAAM,WAAW,KAAK,GAAG;AAC5B,eAAS,eAAe;AAAA,IAC1B;AAAO,eAAS,WAAW;AAAA,EAC7B;AACA,SAAO;AACT;AAEA,SAAS,mBAAmB,KAAK,WAAW;AAC1C,QAAM,SAAS,SAAS,cAAc,GAAG;AACzC,SAAO,OAAO;AACd,QAAM,WAAW,OAAO,KAAK,MAAM,GAAG,OAAO,KAAK,QAAQ,GAAG,CAAC;AAC9D,SAAO,UAAU,QAAQ,QAAQ,IAAI;AACvC;AAEA,MAAM,OAAO,yBAAM,OAAO,cAAc;AAExC,MAAM,mBAAmB,KAAK;AAAA,EAA9B;AAAA;AACE,oBAAW;AAEX,mBAAU;AAEV,yBAAgB;AAEhB,8BAAqB,CAAC,QAAQ,OAAO,SAAS,UAAU,KAAK;AAAA;AAAA,EAE7D,OAAO,OAAO,OAAO;AACnB,UAAM,SAAS,iBAAiB,KAAK;AACrC,UAAM,OAAO,MAAM,OAAO,MAAM;AAChC,SAAK,aAAa,QAAQ,MAAM;AAChC,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,QAAQ,SAAS;AACtB,WAAO,SAAS,eAAe,MAAM;AAAA,EACvC;AAAA,EAEA,OAAO,SAAS,KAAK;AACnB,WAAO,mBAAmB,KAAK,KAAK,kBAAkB,IAAI,MAAM,KAAK;AAAA,EACvE;AAAA,EAEA,OAAO,MAAM,OAAO;AAClB,UAAM,SAAS,iBAAiB,KAAK;AAErC,QAAI,SAAS,UAAU,UAAU,OAAO;AACtC,WAAK,QAAQ,gBAAgB,MAAM;AAAA,IACrC,WAAW,SAAS,KAAK,QAAQ,YAAY,CAAC,QAAQ;AACpD,YAAM,OAAO,MAAM,MAAM;AAAA,IAC3B,OAAO;AACL,WAAK,QAAQ,aAAa,QAAQ,KAAK,YAAY,SAAS,MAAM,CAAC;AAAA,IACrE;AAAA,EACF;AACF;AAEA,IAAO,qBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/quillOverrides/PlainClipboard.tsx", "
|
|
3
|
+
"sources": ["../../../src/quillOverrides/PlainClipboard.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["import { Quill } from 'react-quill';\n\nconst Clipboard = Quill.import('modules/clipboard');\nconst Delta = Quill.import('delta');\n\n/**\n * Just for the sake of an example. https://quilljs.com/docs/modules/\n */\nexport default class PlainClipboard extends Clipboard {\n convert(html = null) {\n if (typeof html === 'string') {\n this.container.innerHTML = html;\n }\n const text = this.container.innerText;\n this.container.innerHTML = '';\n return new Delta().insert(text);\n }\n}\n\n// Uncomment if adding custom clipboard, or add in the file you are importing this to\n// Quill.register('modules/clipboard', PlainClipboard)\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,yBAAsB;AAEtB,MAAM,YAAY,yBAAM,OAAO,mBAAmB;AAClD,MAAM,QAAQ,yBAAM,OAAO,OAAO;AAKlC,MAAO,uBAAqC,UAAU;AAAA,EACpD,QAAQ,OAAO,MAAM;AACnB,QAAI,OAAO,SAAS,UAAU;AAC5B,WAAK,UAAU,YAAY;AAAA,IAC7B;AACA,UAAM,OAAO,KAAK,UAAU;AAC5B,SAAK,UAAU,YAAY;AAC3B,WAAO,IAAI,MAAM,EAAE,OAAO,IAAI;AAAA,EAChC;AACF;",
|
|
6
6
|
"names": []
|
package/dist/cjs/utils.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/utils.tsx", "
|
|
3
|
+
"sources": ["../../src/utils.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["export const formatHTML = (html) => {\n const tab = '\\t';\n let result = '';\n let indent = '';\n\n html.split(/>\\s*</).forEach((element) => {\n if (element.match(/^\\/\\w/)) {\n indent = indent.substring(tab.length);\n }\n\n result += `${indent}<${element}>\\r\\n`;\n\n if (element.match(/^<?\\w[^>]*[^/]$/)) {\n indent += tab;\n }\n });\n\n return result.substring(1, result.length - 3);\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAhB,MAAM,aAAa,CAAC,SAAS;AAClC,QAAM,MAAM;AACZ,MAAI,SAAS;AACb,MAAI,SAAS;AAEb,OAAK,MAAM,OAAO,EAAE,QAAQ,CAAC,YAAY;AACvC,QAAI,QAAQ,MAAM,OAAO,GAAG;AAC1B,eAAS,OAAO,UAAU,IAAI,MAAM;AAAA,IACtC;AAEA,cAAU,GAAG,UAAU;AAAA;AAEvB,QAAI,QAAQ,MAAM,iBAAiB,GAAG;AACpC,gBAAU;AAAA,IACZ;AAAA,EACF,CAAC;AAED,SAAO,OAAO,UAAU,GAAG,OAAO,SAAS,CAAC;AAC9C;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/DSWYSIWYGEditor.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useState, useEffect } from 'react';\nimport { describe, PropTypes } from '@elliemae/ds-props-helpers';\nimport DSWYSIWYGEditorImpl from './components/DSWYSIWYGEditorImpl.js';\n\nconst DSWYSIWYGEditor = ({\n value = '',\n onChange = () => null,\n getQuillRef = () => null,\n quillModules = {},\n customToolbar,\n toolbarHandlers,\n showRawHTML = false,\n height,\n hideItems,\n ...rest\n}) => {\n const emptyAction = () => {};\n const [showHTML, setShowHTML] = useState(showRawHTML);\n\n useEffect(() => setShowHTML(showRawHTML), [showRawHTML]);\n\n return (\n <DSWYSIWYGEditorImpl\n handleCustomFieldClick={emptyAction}\n handleImageClick={emptyAction}\n quillOverrides={[]}\n value={value}\n onChange={onChange}\n getQuillRef={getQuillRef}\n quillModules={quillModules}\n customToolbar={customToolbar}\n toolbarHandlers={toolbarHandlers}\n showRawHTML={showHTML}\n onShowHTML={() => setShowHTML(!showHTML)}\n height={height}\n hideItems={hideItems}\n {...rest}\n />\n );\n};\n\nconst wysiwygEditorProps = {\n value: PropTypes.string.description('editors value').isRequired,\n onChange: PropTypes.func.description(\n `(content, delta, source, editor) : Called back with the new contents of the editor after change. \n It will be passed the HTML contents of the editor, a delta object expressing the change, the source of the change, and finally a read-only proxy to editor accessors such as getHTML(). \n \u26A0\uFE0F Do not use this delta object as value, as it will cause a loop. \n Use editor.getContents() instead. See Using Deltas for details. \n Read more: https://github.com/zenoamaro/react-quill#props`,\n ).isRequired,\n getQuillRef: PropTypes.func.description('function to use quill.js ref'),\n quillModules: PropTypes.object.description('object to override quill modules'),\n customToolbar: PropTypes.element.description('custom toolbar'),\n toolbarHandlers: PropTypes.object.description('object with toolbar handlers'),\n showRawHTML: PropTypes.bool.description('whether to display html view or not').defaultValue(false),\n height: PropTypes.string.description('heigth of the editors text area'),\n readOnly: PropTypes.string.description(\n \"If true, the editor won't allow changing its contents. Wraps the Quill disable API.\",\n ),\n hideToolbar: PropTypes.bool.description('If true, the editor will hide the toolbar.').defaultValue(false),\n hideItems: PropTypes.object.description('object of defaultItems to be removed from toolbar').defaultValue({}),\n zIndex: PropTypes.number.description(\n 'zIndex to be used (required when used in a modal for correct tooltips displaying)',\n ),\n};\n\nDSWYSIWYGEditor.propTypes = wysiwygEditorProps;\nDSWYSIWYGEditor.displayName = 'DSWYSIWYGEditor';\nconst WYSIWYWithSchema = describe(DSWYSIWYGEditor);\nWYSIWYWithSchema.propTypes = wysiwygEditorProps;\n\nexport { WYSIWYWithSchema, DSWYSIWYGEditor };\nexport default DSWYSIWYGEditor;\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACsBnB;AAtBJ,SAAgB,UAAU,iBAAiB;AAC3C,SAAS,UAAU,iBAAiB;AACpC,OAAO,yBAAyB;AAEhC,MAAM,kBAAkB,CAAC;AAAA,EACvB,QAAQ;AAAA,EACR,WAAW,MAAM;AAAA,EACjB,cAAc,MAAM;AAAA,EACpB,eAAe,CAAC;AAAA,EAChB;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,cAAc,MAAM;AAAA,EAAC;AAC3B,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,WAAW;AAEpD,YAAU,MAAM,YAAY,WAAW,GAAG,CAAC,WAAW,CAAC;AAEvD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,wBAAwB;AAAA,MACxB,kBAAkB;AAAA,MAClB,gBAAgB,CAAC;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,aAAa;AAAA,MACb,YAAY,MAAM,YAAY,CAAC,QAAQ;AAAA,MACvC;AAAA,MACA;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,MAAM,qBAAqB;AAAA,EACzB,OAAO,UAAU,OAAO,YAAY,eAAe,EAAE;AAAA,EACrD,UAAU,UAAU,KAAK;AAAA,IACvB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKF,EAAE;AAAA,EACF,aAAa,UAAU,KAAK,YAAY,8BAA8B;AAAA,EACtE,cAAc,UAAU,OAAO,YAAY,kCAAkC;AAAA,EAC7E,eAAe,UAAU,QAAQ,YAAY,gBAAgB;AAAA,EAC7D,iBAAiB,UAAU,OAAO,YAAY,8BAA8B;AAAA,EAC5E,aAAa,UAAU,KAAK,YAAY,qCAAqC,EAAE,aAAa,KAAK;AAAA,EACjG,QAAQ,UAAU,OAAO,YAAY,iCAAiC;AAAA,EACtE,UAAU,UAAU,OAAO;AAAA,IACzB;AAAA,EACF;AAAA,EACA,aAAa,UAAU,KAAK,YAAY,4CAA4C,EAAE,aAAa,KAAK;AAAA,EACxG,WAAW,UAAU,OAAO,YAAY,mDAAmD,EAAE,aAAa,CAAC,CAAC;AAAA,EAC5G,QAAQ,UAAU,OAAO;AAAA,IACvB;AAAA,EACF;AACF;AAEA,gBAAgB,YAAY;AAC5B,gBAAgB,cAAc;AAC9B,MAAM,mBAAmB,SAAS,eAAe;AACjD,iBAAiB,YAAY;AAG7B,IAAO,0BAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/CustomImageUploader.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\n/* eslint-disable react/prop-types */\nimport React, { useState } from 'react';\nimport { Image } from '@elliemae/ds-icons';\nimport DSUploader from '@elliemae/ds-uploader';\nimport DSModal, { MODAL_TYPE_V2 } from '@elliemae/ds-modal';\nimport { TippedButton } from './TippedButton.js';\n\nconst ALLOWED_TYPES_TEXT = 'JPG, JPEG, PNG, GIF, BMP, TIFF';\nconst ALLOWED_TYPES = /image\\/(jpeg|jpg|png|gif|bmp|tiff)/;\nconst DEFAULT_MAX_SIZE = 1024 * 1024; // 1 MB\n\nexport const CustomImageUploader = ({\n quillRef,\n editorFieldName,\n allowedImageTypes = ALLOWED_TYPES_TEXT,\n uploadAsset = () => null,\n zIndex = 1,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n const [error, setError] = useState(null);\n const [inProgress, setInProgress] = useState(false);\n const [lastSelection, setLastSelection] = useState({ index: 0, length: 0 });\n\n const elementId = `uploadImage${editorFieldName}`;\n\n // eslint-disable-next-line consistent-return\n const handleFileChange = async (files) => {\n if (!inProgress) {\n setError(null);\n const selectedFile = files[0];\n if (!selectedFile) {\n setError('Please select a file.');\n return false;\n }\n if (!selectedFile.type.match(ALLOWED_TYPES)) {\n setError('File must be an image.');\n } else if (selectedFile.size > DEFAULT_MAX_SIZE) {\n setError('File is too large.');\n } else {\n const fr = new FileReader();\n fr.onload = async () => {\n setInProgress(true);\n try {\n const url = await uploadAsset({\n name: selectedFile.name,\n type: selectedFile.type,\n description: selectedFile.name,\n isSystemAsset: false,\n file: fr.result,\n });\n setIsOpen(false);\n quillRef?.getEditor().insertEmbed(lastSelection?.index || 0, 'image', url);\n } catch (e) {\n setError('An error has occurred, try again');\n }\n setInProgress(false);\n };\n fr.readAsArrayBuffer(selectedFile);\n }\n }\n };\n return (\n <>\n <TippedButton\n zIndex={zIndex}\n tip=\"Insert Image\"\n onClick={() => {\n setLastSelection(quillRef?.getEditor().getSelection());\n setIsOpen(true);\n }}\n >\n <Image color={['neutral', 500]} size=\"s\" />\n </TippedButton>\n <DSModal\n isOpen={isOpen}\n title=\"\"\n onConfirm={() => {\n setIsOpen(false);\n }}\n onClose={() => {\n setIsOpen(false);\n }}\n showClose\n version={2}\n size=\"xsmall\"\n modalType={MODAL_TYPE_V2.DECISION}\n confirmLabel=\"Cancel\"\n message=\"\"\n >\n {!inProgress && (\n <DSUploader\n containerProps={{ id: elementId }}\n showAltAction={false}\n acceptedTypesText={allowedImageTypes}\n onDrop={handleFileChange}\n />\n )}\n {inProgress && 'Upload in progress...'}\n {error && <div style={{ color: 'red', marginTop: '10px' }}>{error}</div>}\n </DSModal>\n </>\n );\n};\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACiEnB,mBASI,KAEF,YAXF;AA7DJ,SAAgB,gBAAgB;AAChC,SAAS,aAAa;AACtB,OAAO,gBAAgB;AACvB,OAAO,WAAW,qBAAqB;AACvC,SAAS,oBAAoB;AAE7B,MAAM,qBAAqB;AAC3B,MAAM,gBAAgB;AACtB,MAAM,mBAAmB,OAAO;AAEzB,MAAM,sBAAsB,CAAC;AAAA,EAClC;AAAA,EACA;AAAA,EACA,oBAAoB;AAAA,EACpB,cAAc,MAAM;AAAA,EACpB,SAAS;AACX,MAAM;AACJ,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAC1C,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,IAAI;AACvC,QAAM,CAAC,YAAY,aAAa,IAAI,SAAS,KAAK;AAClD,QAAM,CAAC,eAAe,gBAAgB,IAAI,SAAS,EAAE,OAAO,GAAG,QAAQ,EAAE,CAAC;AAE1E,QAAM,YAAY,cAAc;AAGhC,QAAM,mBAAmB,OAAO,UAAU;AACxC,QAAI,CAAC,YAAY;AACf,eAAS,IAAI;AACb,YAAM,eAAe,MAAM,CAAC;AAC5B,UAAI,CAAC,cAAc;AACjB,iBAAS,uBAAuB;AAChC,eAAO;AAAA,MACT;AACA,UAAI,CAAC,aAAa,KAAK,MAAM,aAAa,GAAG;AAC3C,iBAAS,wBAAwB;AAAA,MACnC,WAAW,aAAa,OAAO,kBAAkB;AAC/C,iBAAS,oBAAoB;AAAA,MAC/B,OAAO;AACL,cAAM,KAAK,IAAI,WAAW;AAC1B,WAAG,SAAS,YAAY;AACtB,wBAAc,IAAI;AAClB,cAAI;AACF,kBAAM,MAAM,MAAM,YAAY;AAAA,cAC5B,MAAM,aAAa;AAAA,cACnB,MAAM,aAAa;AAAA,cACnB,aAAa,aAAa;AAAA,cAC1B,eAAe;AAAA,cACf,MAAM,GAAG;AAAA,YACX,CAAC;AACD,sBAAU,KAAK;AACf,sBAAU,UAAU,EAAE,YAAY,eAAe,SAAS,GAAG,SAAS,GAAG;AAAA,UAC3E,SAAS,GAAP;AACA,qBAAS,kCAAkC;AAAA,UAC7C;AACA,wBAAc,KAAK;AAAA,QACrB;AACA,WAAG,kBAAkB,YAAY;AAAA,MACnC;AAAA,IACF;AAAA,EACF;AACA,SACE,iCACE;AAAA;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,KAAI;AAAA,QACJ,SAAS,MAAM;AACb,2BAAiB,UAAU,UAAU,EAAE,aAAa,CAAC;AACrD,oBAAU,IAAI;AAAA,QAChB;AAAA,QAEA,8BAAC,SAAM,OAAO,CAAC,WAAW,GAAG,GAAG,MAAK,KAAI;AAAA;AAAA,IAC3C;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,OAAM;AAAA,QACN,WAAW,MAAM;AACf,oBAAU,KAAK;AAAA,QACjB;AAAA,QACA,SAAS,MAAM;AACb,oBAAU,KAAK;AAAA,QACjB;AAAA,QACA,WAAS;AAAA,QACT,SAAS;AAAA,QACT,MAAK;AAAA,QACL,WAAW,cAAc;AAAA,QACzB,cAAa;AAAA,QACb,SAAQ;AAAA,QAEP;AAAA,WAAC,cACA;AAAA,YAAC;AAAA;AAAA,cACC,gBAAgB,EAAE,IAAI,UAAU;AAAA,cAChC,eAAe;AAAA,cACf,mBAAmB;AAAA,cACnB,QAAQ;AAAA;AAAA,UACV;AAAA,UAED,cAAc;AAAA,UACd,SAAS,oBAAC,SAAI,OAAO,EAAE,OAAO,OAAO,WAAW,OAAO,GAAI,iBAAM;AAAA;AAAA;AAAA,IACpE;AAAA,KACF;AAEJ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/CustomToolbar.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable complexity */\n/* eslint-disable jsx-a11y/control-has-associated-label */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\n/* eslint-disable react/button-has-type */\nimport React, { useState, useContext } from 'react';\nimport { ThemeContext } from '@elliemae/ds-system';\nimport { DSButtonV2 } from '@elliemae/ds-button-v2';\nimport { Grid } from '@elliemae/ds-grid';\nimport { ArrowheadDown } from '@elliemae/ds-icons';\nimport DSDropdownMenu from '@elliemae/ds-dropdownmenu';\nimport { colors, fonts, sizes, sizesReal } from '../constants.js';\nimport { TippedButton } from './TippedButton.js';\nimport { TippedSelect } from './TippedSelect.js';\n\n// Functions -----------------------------------------\nconst optionsToValues = (options) => options.map((opt) => opt.toLowerCase().replace(' ', '-'));\n\n// Stateless Components -----------------------------------------\n\nconst CustomFields = () => <span>\u1438\u1433</span>; // eslint-disable-line react/jsx-one-expression-per-line\nconst Color = ({ color }) => <option value={color} />;\nconst Colors = ({ className, tip, zIndex }) => (\n <TippedSelect className={className} tip={tip} zIndex={zIndex}>\n {colors.map((color) => (\n <Color key={color} color={color} />\n ))}\n </TippedSelect>\n);\n\nexport const CustomDropdown = ({\n options,\n label,\n onSelectMenuItem = () => null,\n onClickOutsideMenu = () => null,\n onClose = () => null,\n closeMenuOnItemSelection,\n isOpen,\n minWidth,\n maxWidth,\n zIndex = 10,\n}) => (\n <DSDropdownMenu\n onClickOutsideMenu={onClickOutsideMenu}\n options={options}\n onSelectMenuItem={onSelectMenuItem}\n onClose={onClose}\n closeMenuOnItemSelection={closeMenuOnItemSelection}\n isOpen={isOpen}\n minWidth={minWidth}\n maxWidth={maxWidth}\n zIndex={zIndex}\n preventOverflow=\"scrollParent\"\n triggerComponent={\n <DSButtonV2 buttonType=\"text\" aria-label={label}>\n <Grid gap=\"xxs\" cols={['auto', 'max-content']}>\n {label}\n <ArrowheadDown />\n </Grid>\n </DSButtonV2>\n }\n />\n);\n\nconst Divider = () => (\n <div\n style={{\n height: '21px',\n width: '1px',\n margin: '0 10px',\n padding: '0',\n borderLeft: '1px solid #bbb',\n display: 'inline-block',\n }}\n ></div>\n);\n\nexport const CustomToolbar = ({\n customFields,\n customItems = [],\n hideItems = {},\n onShowHTML = () => {},\n id = 'toolbar',\n userProps,\n}) => {\n const {\n HEADER,\n FONT,\n FONT_SIZE,\n BOLD,\n ITALIC,\n UNDERLINE,\n STRIKE,\n SUB,\n SUPER,\n ORDERED_LIST,\n BULLET_LIST,\n INDENT_MINUS_ONE,\n INDENT_PLUS_ONE,\n ALIGN,\n FONT_COLOR,\n FONT_BACKGROUND_COLOR,\n HYPERLINK,\n IMAGE,\n CLEAR_FORMAT,\n SHOW_HTML,\n } = hideItems;\n const [showHTML, setShowHTML] = useState(false);\n\n const handleShowHTML = (e) => {\n e.preventDefault();\n setShowHTML(!showHTML);\n onShowHTML();\n };\n\n const theme = useContext(ThemeContext);\n const defaultZIndex = theme?.zIndex?.tooltip;\n return (\n <div id={id} className=\"ds-ql-custom-toolbar\">\n {(!HEADER || !FONT || !FONT_SIZE) && (\n <span className=\"ql-formats\">\n {!HEADER && (\n <>\n <TippedSelect\n className=\"ql-header\"\n tip=\"Header\"\n values={['', '1', '2', '3', '4', '5', '6']}\n zIndex={userProps?.zIndex || defaultZIndex}\n />\n <Divider />\n </>\n )}\n {!FONT && (\n <>\n <TippedSelect\n className=\"ql-font\"\n defaultValue=\"sans-serif\"\n options={fonts}\n tip=\"Font\"\n values={optionsToValues(fonts)}\n zIndex={userProps?.zIndex || defaultZIndex}\n />\n <Divider />\n </>\n )}\n {!FONT_SIZE && (\n <>\n <TippedSelect\n className=\"ql-size\"\n options={sizes}\n tip=\"Font Size\"\n values={optionsToValues(sizesReal)}\n zIndex={userProps?.zIndex || defaultZIndex}\n />\n <Divider />\n </>\n )}\n </span>\n )}\n {(!BOLD || !ITALIC || !UNDERLINE || !STRIKE) && (\n <span className=\"ql-formats\">\n {!BOLD && <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-bold\" tip=\"Bold\" />}\n {!ITALIC && <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-italic\" tip=\"Italic\" />}\n {!UNDERLINE && (\n <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-underline\" tip=\"Underline\" />\n )}\n {!STRIKE && <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-strike\" tip=\"Strike\" />}\n </span>\n )}\n {(!SUB || !SUPER) && (\n <span className=\"ql-formats\">\n {!SUB && (\n <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-script\" tip=\"Sub\" value=\"sub\" />\n )}\n {!SUPER && (\n <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-script\" tip=\"Super\" value=\"super\" />\n )}\n <Divider />\n </span>\n )}\n {(!ORDERED_LIST || !BULLET_LIST) && (\n <span className=\"ql-formats\">\n {!ORDERED_LIST && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-list\"\n tip=\"Ordered List\"\n value=\"ordered\"\n />\n )}\n {!BULLET_LIST && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-list\"\n tip=\"Bullet List\"\n value=\"bullet\"\n />\n )}\n </span>\n )}\n {(!INDENT_MINUS_ONE || !INDENT_PLUS_ONE) && (\n <span className=\"ql-formats\">\n {!INDENT_MINUS_ONE && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-indent\"\n tip=\"Indent -1\"\n value=\"-1\"\n />\n )}\n {!INDENT_PLUS_ONE && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-indent\"\n tip=\"Indent +1\"\n value=\"+1\"\n />\n )}\n </span>\n )}\n {!ALIGN && (\n <span className=\"ql-formats\">\n {/* <TippedSelect zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-align\" tip=\"Align\"/> */}\n {/* \n quill js has a bug where using ql-align with the html tag \"select\" leave us with a can not read property innerhtml of undefined\n we can't update quill js because it's a peer dependency of react-quill\n this is a workaround to keep provide the ql-align module but not use the html tag \"select\"\n */}\n <span className=\"ql-formats\">\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-align\"\n tip=\"Left\"\n value=\"\"\n ></TippedButton>\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-align\"\n tip=\"Center\"\n value=\"center\"\n ></TippedButton>\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-align\"\n tip=\"Right\"\n value=\"right\"\n ></TippedButton>\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-align\"\n tip=\"Justify\"\n value=\"justify\"\n ></TippedButton>\n </span>\n <Divider />\n </span>\n )}\n {(!FONT_COLOR || !FONT_BACKGROUND_COLOR) && (\n <span className=\"ql-formats\">\n {!FONT_COLOR && <Colors zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-color\" tip=\"Font Color\" />}\n {!FONT_BACKGROUND_COLOR && (\n <Colors zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-background\" tip=\"Font Background Color\" />\n )}\n <Divider />\n </span>\n )}\n {(!HYPERLINK || !IMAGE) && (\n <span className=\"ql-formats\">\n {!HYPERLINK && (\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-link\"\n tip=\"Hyperlink: Select Text First\"\n />\n )}\n {!IMAGE && (\n <TippedButton zIndex={userProps?.zIndex || defaultZIndex} className=\"ql-image\" tip=\"Insert Image\" />\n )}\n <Divider />\n </span>\n )}\n {!CLEAR_FORMAT && (\n <span className=\"ql-formats\">\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-clean\"\n tip=\"Clear Format (Select Text)\"\n />\n </span>\n )}\n {!SHOW_HTML && (\n <span className=\"ql-formats\">\n <Divider />\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n style={{\n width: 'fit-content',\n color: '#1e79c2',\n fontWeight: '500',\n }}\n onClick={handleShowHTML}\n tip={showHTML ? 'SHOW TEXT' : 'SHOW HTML'}\n className=\"ql-customFields-html\"\n >\n {showHTML ? 'SHOW TEXT' : 'SHOW HTML'}\n </TippedButton>\n </span>\n )}\n {customFields && (\n <span className=\"ql-formats\">\n <Divider />\n <TippedButton\n zIndex={userProps?.zIndex || defaultZIndex}\n className=\"ql-customFields\"\n tip=\"Insert Custom Field\"\n >\n <CustomFields />\n </TippedButton>\n </span>\n )}\n {customItems && (\n <span style={{ display: 'inline-flex' }}>\n {customItems.map((Item) => (\n <>\n <Divider />\n <Item />\n </>\n ))}\n </span>\n )}\n </div>\n );\n};\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": []
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unsafe-return */\n/* eslint-disable @typescript-eslint/no-unsafe-call */\n/* eslint-disable @typescript-eslint/no-unsafe-argument */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-assignment */\n/* eslint-disable complexity */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport ReactQuill from 'react-quill';\nimport { uid } from 'uid';\n\nimport ImageLibraryModal from './ImageLibraryModal.js';\nimport InsertFieldModal from './InsertFieldModal.js';\nimport { CustomToolbar } from './CustomToolbar.js';\nimport { formatHTML } from '../utils.js';\nimport { clipboardLinkWithTagMatcher } from '../quillMatchers/clipboardLinkWithTagMatcher.js';\nimport Quill from '../config/quillSingletonConfigurations.js';\n\nexport default class DSWYSIWYGEditorImpl extends React.PureComponent {\n quill: undefined | typeof ReactQuill;\n\n constructor(props: {} | Readonly<{}>) {\n super(props);\n this.quill = undefined; // this will hold the quill instance reference\n const instanceUid = uid(12);\n const uniqueClassName = `ds-wysiwyg-editor-${instanceUid}`;\n const { hideToolbar } = props;\n\n const quillModules = {\n toolbar: hideToolbar\n ? false\n : {\n container: this.props.toolbarContainer ? `#${this.props.toolbarContainer}` : `#toolbar-${uniqueClassName}`,\n handlers: {\n ...this.props.toolbarHandlers,\n },\n },\n clipboard: {\n // toggle to add extra line breaks when pasting HTML:\n matchVisual: false,\n },\n ...this.props.quillModules,\n };\n if (props.quillOverrides.length) {\n props.quillOverrides.map((override: string) => Quill.register(override, true));\n }\n this.state = {\n isImageModalOpen: false,\n isFieldModalOpen: false,\n uid: instanceUid,\n uniqueClassName,\n quillModules,\n };\n const { toolbar } = quillModules;\n if (props.imagesData) {\n toolbar.handlers.image = (value: any) => {\n const { imagesData, handleImageClick } = this.props;\n if (!imagesData.length) {\n return;\n }\n this.setState({ isImageModalOpen: !!value });\n handleImageClick(value);\n };\n }\n if (props.customFields) {\n toolbar.handlers.customFields = (value: any) => {\n const { customFields, handleCustomFieldClick } = this.props;\n if (!customFields.length) {\n return;\n }\n this.setState({ isFieldModalOpen: !!value });\n handleCustomFieldClick(value);\n };\n }\n }\n\n componentDidMount() {}\n\n getEditor = () =>{\n try {\n this.quill?.getEditor?.();\n } catch (error) {\n console.warn('Error getting quill editor', error);\n }\n }
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;ACkKjB,SAOI,UAEI,KATR;AA1JN,OAAOA,YAAW;AAClB,OAAO,gBAAgB;AACvB,SAAS,WAAW;AAEpB,OAAO,uBAAuB;AAC9B,OAAO,sBAAsB;AAC7B,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAC3B,SAAS,mCAAmC;AAC5C,OAAO,WAAW;AAElB,MAAO,4BAA0CA,OAAM,cAAc;AAAA,EAGnE,YAAY,OAA0B;AACpC,UAAM,KAAK;AAwDb,qBAAY,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/DSWYSIWYGEditorImpl.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unsafe-return */\n/* eslint-disable @typescript-eslint/no-unsafe-call */\n/* eslint-disable @typescript-eslint/no-unsafe-argument */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-assignment */\n/* eslint-disable complexity */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport ReactQuill from 'react-quill';\nimport { uid } from 'uid';\n\nimport ImageLibraryModal from './ImageLibraryModal.js';\nimport InsertFieldModal from './InsertFieldModal.js';\nimport { CustomToolbar } from './CustomToolbar.js';\nimport { formatHTML } from '../utils.js';\nimport { clipboardLinkWithTagMatcher } from '../quillMatchers/clipboardLinkWithTagMatcher.js';\nimport Quill from '../config/quillSingletonConfigurations.js';\n\nexport default class DSWYSIWYGEditorImpl extends React.PureComponent {\n quill: undefined | typeof ReactQuill;\n\n constructor(props: {} | Readonly<{}>) {\n super(props);\n this.quill = undefined; // this will hold the quill instance reference\n const instanceUid = uid(12);\n const uniqueClassName = `ds-wysiwyg-editor-${instanceUid}`;\n const { hideToolbar } = props;\n\n const quillModules = {\n toolbar: hideToolbar\n ? false\n : {\n container: this.props.toolbarContainer ? `#${this.props.toolbarContainer}` : `#toolbar-${uniqueClassName}`,\n handlers: {\n ...this.props.toolbarHandlers,\n },\n },\n clipboard: {\n // toggle to add extra line breaks when pasting HTML:\n matchVisual: false,\n },\n ...this.props.quillModules,\n };\n if (props.quillOverrides.length) {\n props.quillOverrides.map((override: string) => Quill.register(override, true));\n }\n this.state = {\n isImageModalOpen: false,\n isFieldModalOpen: false,\n uid: instanceUid,\n uniqueClassName,\n quillModules,\n };\n const { toolbar } = quillModules;\n if (props.imagesData) {\n toolbar.handlers.image = (value: any) => {\n const { imagesData, handleImageClick } = this.props;\n if (!imagesData.length) {\n return;\n }\n this.setState({ isImageModalOpen: !!value });\n handleImageClick(value);\n };\n }\n if (props.customFields) {\n toolbar.handlers.customFields = (value: any) => {\n const { customFields, handleCustomFieldClick } = this.props;\n if (!customFields.length) {\n return;\n }\n this.setState({ isFieldModalOpen: !!value });\n handleCustomFieldClick(value);\n };\n }\n }\n\n componentDidMount() {}\n\n getEditor = () => {\n try {\n this.quill?.getEditor?.();\n } catch (error) {\n console.warn('Error getting quill editor', error);\n }\n };\n\n // eslint-disable-next-line max-params\n onChangeQuill = (html: any, delta: any, source: any, editor: any) => {\n // console.log('quill detected a change');\n const { showRawHTML, onChange } = this.props;\n if (!showRawHTML) onChange(html, delta, source, editor);\n };\n\n onChangeTextArea = (e: { target: { value: any } }) => {\n const { showRawHTML, onChange, readOnly } = this.props;\n if (showRawHTML && !readOnly) onChange(e.target.value);\n };\n\n onInserFieldConfirm = (fieldCode: any) => {\n const editor = this.getEditor();\n const range = editor.getSelection(true);\n editor.insertText(range.index, fieldCode);\n };\n\n onImageConfirm = (image: { url: any }) => {\n if (!image) {\n return;\n }\n const editor = this.getEditor();\n const range = editor.getSelection(true);\n editor.insertEmbed(range.index, 'image', image.url);\n };\n\n onFieldModalClose = () => {\n this.setState({ isFieldModalOpen: false });\n };\n\n onImageModalClose = () => {\n this.setState({ isImageModalOpen: false });\n };\n\n quillRef = (ref: typeof ReactQuill | undefined) => {\n try {\n const editor = ref?.getEditor();\n if (this.getEditor() !== editor) {\n // the underlying quill instance has changed\n // this may happens because it's the first render or for other reasons\n // but any instance configuration must happen again in this case\n\n // we add a clipboard matcher\n // https://github.com/quilljs/quill/issues/2677\n editor?.clipboard.addMatcher('a', clipboardLinkWithTagMatcher);\n }\n this.props.getQuillRef(ref);\n this.quill = ref;\n } catch (error) {\n console.warn('Error getting quill ref', error);\n }\n };\n\n render() {\n const { isFieldModalOpen, isImageModalOpen } = this.state;\n const {\n containerProps = {},\n customFields,\n imagesData,\n customToolbar,\n height,\n value,\n showRawHTML,\n onShowHTML,\n hideItems,\n // bounds,\n // a bunch of props we don't want to pass to the editor\n onChange,\n handleImageClick,\n handleCustomFieldClick,\n ...editorProps\n } = this.props;\n\n return (\n <div\n // data-testid=\"wysiwyg-text-container\"\n {...containerProps}\n className={`quill-wysiwyg-editor ${showRawHTML ? 'show-raw' : ''}`}\n data-uid={this.state.uid}\n >\n {this.props.hideToolbar ? null : (\n <>\n {customToolbar || (\n <CustomToolbar\n customFields={customFields}\n onShowHTML={onShowHTML}\n hideItems={hideItems}\n userProps={this.props}\n id={`toolbar-${this.state.uniqueClassName}`}\n />\n )}\n </>\n )}\n <ReactQuill\n ref={this.quillRef}\n modules={this.state.quillModules}\n onChange={this.onChangeQuill}\n value={value}\n style={{\n height,\n borderBottom: '1px solid #ccc',\n }}\n {...editorProps}\n id={`wysiwyg-text-container-${this.state.uid}`}\n />\n <textarea\n className=\"raw-editor ql-container ql-snow ql-editor\"\n style={{\n width: '100%',\n resize: 'none',\n height,\n minHeight: '200px',\n }}\n onChange={this.onChangeTextArea}\n value={formatHTML(value)}\n readOnly={editorProps.readOnly}\n />\n {imagesData && imagesData.length && (\n <ImageLibraryModal\n imagesData={imagesData}\n isOpen={isImageModalOpen}\n onClose={this.onImageModalClose}\n onConfirm={this.onImageConfirm}\n />\n )}\n {customFields && customFields.length && (\n <InsertFieldModal\n customFields={customFields}\n isOpen={isFieldModalOpen}\n onClose={this.onFieldModalClose}\n onConfirm={this.onInserFieldConfirm}\n />\n )}\n </div>\n );\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/ImageLibraryModal.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport DSImageLibraryModal from '@elliemae/ds-imagelibrarymodal';\nimport { PropTypes } from '@elliemae/ds-props-helpers';\n\nexport default class ImageLibraryModal extends React.PureComponent {\n static propTypes = {\n onConfirm: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n onReject: PropTypes.func,\n imagesData: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n description: PropTypes.string,\n createdBy: PropTypes.string.isRequired,\n createdDate: PropTypes.string.isRequired,\n }),\n ),\n isOpen: PropTypes.bool.isRequired,\n };\n\n static defaultProps = {\n onReject: undefined,\n imagesData: [\n {\n url: 'https://www.freeiconspng.com/minicovers/no-image-icon-6.png',\n name: 'no image',\n createdBy: 'user:John Doe',\n createdDate: '0000-01-01 00:00 AM UTC',\n },\n {\n url: 'https://asset-service-bucket-int.s3.us-west-2.amazonaws.com/bd527d8c-472f-4dff-b8c5-1c90d5bae01e',\n name: 'no image 2',\n createdBy: 'user:Jane Doe',\n createdDate: '0000-01-01 00:00 AM UTC',\n },\n ],\n };\n\n constructor(props) {\n super(props);\n this.state = {\n selectedImage: undefined,\n };\n }\n\n onSelect = (selectedImage) => {\n this.setState({ selectedImage });\n };\n\n onConfirm = () => {\n const { selectedImage } = this.state;\n const { onConfirm, onClose } = this.props;\n onConfirm(selectedImage);\n onClose();\n };\n\n render() {\n return <DSImageLibraryModal {...this.props} onConfirm={this.onConfirm} onSelect={this.onSelect} />;\n }\n}\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;AC2DZ;AA3DX,OAAOA,YAAW;AAClB,OAAO,yBAAyB;AAChC,SAAS,iBAAiB;AAE1B,MAAO,0BAAwCA,OAAM,cAAc;AAAA,EAoCjE,YAAY,OAAO;AACjB,UAAM,KAAK;AAMb,oBAAW,CAAC,kBAAkB;AAC5B,WAAK,SAAS,EAAE,cAAc,CAAC;AAAA,IACjC;AAEA,qBAAY,MAAM;AAChB,YAAM,EAAE,cAAc,IAAI,KAAK;AAC/B,YAAM,EAAE,WAAW,QAAQ,IAAI,KAAK;AACpC,gBAAU,aAAa;AACvB,cAAQ;AAAA,IACV;AAdE,SAAK,QAAQ;AAAA,MACX,eAAe;AAAA,IACjB;AAAA,EACF;AAAA,EAaA,SAAS;AACP,WAAO,oBAAC,uBAAqB,GAAG,KAAK,OAAO,WAAW,KAAK,WAAW,UAAU,KAAK,UAAU;AAAA,EAClG;AACF;AAzDqB,kBACZ,YAAY;AAAA,EACjB,WAAW,UAAU,KAAK;AAAA,EAC1B,SAAS,UAAU,KAAK;AAAA,EACxB,UAAU,UAAU;AAAA,EACpB,YAAY,UAAU;AAAA,IACpB,UAAU,MAAM;AAAA,MACd,IAAI,UAAU;AAAA,MACd,KAAK,UAAU,OAAO;AAAA,MACtB,MAAM,UAAU,OAAO;AAAA,MACvB,aAAa,UAAU;AAAA,MACvB,WAAW,UAAU,OAAO;AAAA,MAC5B,aAAa,UAAU,OAAO;AAAA,IAChC,CAAC;AAAA,EACH;AAAA,EACA,QAAQ,UAAU,KAAK;AACzB;AAhBmB,kBAkBZ,eAAe;AAAA,EACpB,UAAU;AAAA,EACV,YAAY;AAAA,IACV;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,IACA;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,EACF;AACF;",
|
|
6
6
|
"names": ["React"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/InsertFieldModal.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable react/static-property-placement */\nimport React from 'react';\nimport { PropTypes } from '@elliemae/ds-props-helpers';\nimport DSModal, { MODAL_TYPE } from '@elliemae/ds-modal';\nimport { sizeOptions } from '@elliemae/ds-shared';\nimport { includes } from 'lodash';\nimport { fields, getFieldName, getFieldCode } from './customFields.js';\n\nconst modalTypes = Object.values(MODAL_TYPE);\nconst elementClassName = 'insertfieldmodal-element';\n\nexport default class InsertFieldModal extends React.PureComponent {\n static propTypes = {\n onConfirm: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n confirmLabel: PropTypes.string,\n customFields: PropTypes.arrayOf(PropTypes.string),\n disableDoubleClick: PropTypes.bool,\n isOpen: PropTypes.bool,\n modalTitle: PropTypes.string,\n modalType: PropTypes.string,\n rejectLabel: PropTypes.string,\n shouldCloseOnOverlayClick: PropTypes.bool,\n size: PropTypes.string,\n onSelect: PropTypes.func,\n };\n\n static defaultProps = {\n confirmLabel: 'Add',\n customFields: fields,\n disableDoubleClick: false,\n isOpen: true,\n modalTitle: 'Add Field',\n modalType: modalTypes[1],\n rejectLabel: 'Cancel',\n shouldCloseOnOverlayClick: true,\n size: sizeOptions[1],\n onSelect: undefined,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n selectedFieldCode: getFieldCode(fields[0]),\n };\n this.preventSpacebarScroll();\n }\n\n componentDidMount() {\n const { customFields } = this.props;\n if (customFields) {\n this.handleElementClick({}, customFields[0]);\n this.focusFirst = true;\n }\n }\n\n getDerivedStateFromProps(nextProps) {\n const { customFields } = this.props;\n if (!customFields && nextProps.customFields) {\n this.setState({ selectedFieldCode: customFields[0] });\n }\n }\n\n onConfirm = () => {\n const { onConfirm, onClose } = this.props;\n const { selectedFieldCode } = this.state;\n onConfirm(selectedFieldCode);\n onClose();\n };\n\n onReject = () => {\n const { onReject, onClose } = this.props;\n if (onReject) {\n onReject();\n } else {\n onClose();\n }\n };\n\n drawDiv = (className, content, content2) => (\n <div className={className}>\n <span>{content}</span>\n <span>{content2}</span>\n </div>\n );\n\n drawLabel = (className, label, value) => (\n <div className={className}>\n <span className=\"label\">{label}</span>\n <span className=\"value\">{value}</span>\n </div>\n );\n\n handleElementClick = (e, selectedFieldCode) => {\n if (e.key && e.key !== ' ') {\n return;\n }\n const { selectedFieldCode: fCode } = this.state;\n const { disableDoubleClick } = this.props;\n if (selectedFieldCode === fCode && !disableDoubleClick) {\n this.onConfirm();\n return;\n }\n this.setState({\n selectedFieldCode,\n });\n const { onSelect } = this.props;\n if (onSelect) {\n onSelect(selectedFieldCode);\n }\n };\n\n preventSpacebarScroll = () => {\n document.onkeypress = function (e) {\n if (!includes(e.target.className, elementClassName)) {\n return true;\n }\n e = e || window.event;\n const charCode = e.keyCode || e.which;\n if (charCode === 32) {\n e.preventDefault();\n return false;\n }\n return true;\n };\n };\n\n renderElements = () => {\n const { customFields } = this.props;\n if (!customFields) {\n return 'Empty';\n }\n const { selectedFieldCode } = this.state;\n return customFields.map((customField, idx) => {\n const extras = {};\n const fieldCode = getFieldCode(customField);\n if (this.focusFirst && idx === 0) {\n extras.ref = (element) => element && element.focus();\n this.focusFirst = undefined;\n } else if (fieldCode === selectedFieldCode) {\n extras.ref = (element) => element && element.focus();\n }\n return (\n <div\n key={fieldCode}\n className={elementClassName}\n onClick={(e) => this.handleElementClick(e, fieldCode)}\n onKeyUp={(e) => this.handleElementClick(e, fieldCode)}\n role=\"button\"\n tabIndex={0}\n {...extras}\n >\n {this.drawLabel('content', getFieldName(customField), fieldCode)}\n </div>\n );\n });\n };\n\n render() {\n const { customFields, onSelect, ...modalProps } = this.props;\n return (\n <DSModal {...modalProps} className=\"insert-field-modal\" onConfirm={this.onConfirm} onReject={this.onReject}>\n <div className=\"wrapper\">\n <div className=\"col-1\">\n {this.drawDiv('title', 'Field Name', '\u00AB Field ID \u00BB')}\n {this.renderElements()}\n </div>\n </div>\n </DSModal>\n );\n }\n}\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACkFnB,SACE,KADF;AA/EJ,OAAOA,YAAW;AAClB,SAAS,iBAAiB;AAC1B,OAAO,WAAW,kBAAkB;AACpC,SAAS,mBAAmB;AAC5B,SAAS,gBAAgB;AACzB,SAAS,QAAQ,cAAc,oBAAoB;AAEnD,MAAM,aAAa,OAAO,OAAO,UAAU;AAC3C,MAAM,mBAAmB;AAEzB,MAAO,yBAAuCA,OAAM,cAAc;AAAA,EA6BhE,YAAY,OAAO;AACjB,UAAM,KAAK;AAsBb,qBAAY,MAAM;AAChB,YAAM,EAAE,WAAW,QAAQ,IAAI,KAAK;AACpC,YAAM,EAAE,kBAAkB,IAAI,KAAK;AACnC,gBAAU,iBAAiB;AAC3B,cAAQ;AAAA,IACV;AAEA,oBAAW,MAAM;AACf,YAAM,EAAE,UAAU,QAAQ,IAAI,KAAK;AACnC,UAAI,UAAU;AACZ,iBAAS;AAAA,MACX,OAAO;AACL,gBAAQ;AAAA,MACV;AAAA,IACF;AAEA,mBAAU,CAAC,WAAW,SAAS,aAC7B,qBAAC,SAAI,WACH;AAAA,0BAAC,UAAM,mBAAQ;AAAA,MACf,oBAAC,UAAM,oBAAS;AAAA,OAClB;AAGF,qBAAY,CAAC,WAAW,OAAO,UAC7B,qBAAC,SAAI,WACH;AAAA,0BAAC,UAAK,WAAU,SAAS,iBAAM;AAAA,MAC/B,oBAAC,UAAK,WAAU,SAAS,iBAAM;AAAA,OACjC;AAGF,8BAAqB,CAAC,GAAG,sBAAsB;AAC7C,UAAI,EAAE,OAAO,EAAE,QAAQ,KAAK;AAC1B;AAAA,MACF;AACA,YAAM,EAAE,mBAAmB,MAAM,IAAI,KAAK;AAC1C,YAAM,EAAE,mBAAmB,IAAI,KAAK;AACpC,UAAI,sBAAsB,SAAS,CAAC,oBAAoB;AACtD,aAAK,UAAU;AACf;AAAA,MACF;AACA,WAAK,SAAS;AAAA,QACZ;AAAA,MACF,CAAC;AACD,YAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,UAAI,UAAU;AACZ,iBAAS,iBAAiB;AAAA,MAC5B;AAAA,IACF;AAEA,iCAAwB,MAAM;AAC5B,eAAS,aAAa,SAAU,GAAG;AACjC,YAAI,CAAC,SAAS,EAAE,OAAO,WAAW,gBAAgB,GAAG;AACnD,iBAAO;AAAA,QACT;AACA,YAAI,KAAK,OAAO;AAChB,cAAM,WAAW,EAAE,WAAW,EAAE;AAChC,YAAI,aAAa,IAAI;AACnB,YAAE,eAAe;AACjB,iBAAO;AAAA,QACT;AACA,eAAO;AAAA,MACT;AAAA,IACF;AAEA,0BAAiB,MAAM;AACrB,YAAM,EAAE,aAAa,IAAI,KAAK;AAC9B,UAAI,CAAC,cAAc;AACjB,eAAO;AAAA,MACT;AACA,YAAM,EAAE,kBAAkB,IAAI,KAAK;AACnC,aAAO,aAAa,IAAI,CAAC,aAAa,QAAQ;AAC5C,cAAM,SAAS,CAAC;AAChB,cAAM,YAAY,aAAa,WAAW;AAC1C,YAAI,KAAK,cAAc,QAAQ,GAAG;AAChC,iBAAO,MAAM,CAAC,YAAY,WAAW,QAAQ,MAAM;AACnD,eAAK,aAAa;AAAA,QACpB,WAAW,cAAc,mBAAmB;AAC1C,iBAAO,MAAM,CAAC,YAAY,WAAW,QAAQ,MAAM;AAAA,QACrD;AACA,eACE;AAAA,UAAC;AAAA;AAAA,YAEC,WAAW;AAAA,YACX,SAAS,CAAC,MAAM,KAAK,mBAAmB,GAAG,SAAS;AAAA,YACpD,SAAS,CAAC,MAAM,KAAK,mBAAmB,GAAG,SAAS;AAAA,YACpD,MAAK;AAAA,YACL,UAAU;AAAA,YACT,GAAG;AAAA,YAEH,eAAK,UAAU,WAAW,aAAa,WAAW,GAAG,SAAS;AAAA;AAAA,UAR1D;AAAA,QASP;AAAA,MAEJ,CAAC;AAAA,IACH;AAlHE,SAAK,QAAQ;AAAA,MACX,mBAAmB,aAAa,OAAO,CAAC,CAAC;AAAA,IAC3C;AACA,SAAK,sBAAsB;AAAA,EAC7B;AAAA,EAEA,oBAAoB;AAClB,UAAM,EAAE,aAAa,IAAI,KAAK;AAC9B,QAAI,cAAc;AAChB,WAAK,mBAAmB,CAAC,GAAG,aAAa,CAAC,CAAC;AAC3C,WAAK,aAAa;AAAA,IACpB;AAAA,EACF;AAAA,EAEA,yBAAyB,WAAW;AAClC,UAAM,EAAE,aAAa,IAAI,KAAK;AAC9B,QAAI,CAAC,gBAAgB,UAAU,cAAc;AAC3C,WAAK,SAAS,EAAE,mBAAmB,aAAa,CAAC,EAAE,CAAC;AAAA,IACtD;AAAA,EACF;AAAA,EAiGA,SAAS;AACP,UAAM,EAAE,cAAc,UAAU,GAAG,WAAW,IAAI,KAAK;AACvD,WACE,oBAAC,WAAS,GAAG,YAAY,WAAU,sBAAqB,WAAW,KAAK,WAAW,UAAU,KAAK,UAChG,8BAAC,SAAI,WAAU,WACb,+BAAC,SAAI,WAAU,SACZ;AAAA,WAAK,QAAQ,SAAS,cAAc,oBAAc;AAAA,MAClD,KAAK,eAAe;AAAA,OACvB,GACF,GACF;AAAA,EAEJ;AACF;AAhKqB,iBACZ,YAAY;AAAA,EACjB,WAAW,UAAU,KAAK;AAAA,EAC1B,SAAS,UAAU,KAAK;AAAA,EACxB,cAAc,UAAU;AAAA,EACxB,cAAc,UAAU,QAAQ,UAAU,MAAM;AAAA,EAChD,oBAAoB,UAAU;AAAA,EAC9B,QAAQ,UAAU;AAAA,EAClB,YAAY,UAAU;AAAA,EACtB,WAAW,UAAU;AAAA,EACrB,aAAa,UAAU;AAAA,EACvB,2BAA2B,UAAU;AAAA,EACrC,MAAM,UAAU;AAAA,EAChB,UAAU,UAAU;AACtB;AAdmB,iBAgBZ,eAAe;AAAA,EACpB,cAAc;AAAA,EACd,cAAc;AAAA,EACd,oBAAoB;AAAA,EACpB,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,WAAW,WAAW,CAAC;AAAA,EACvB,aAAa;AAAA,EACb,2BAA2B;AAAA,EAC3B,MAAM,YAAY,CAAC;AAAA,EACnB,UAAU;AACZ;",
|
|
6
6
|
"names": ["React"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/TippedButton.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { DSTooltipV3 } from '@elliemae/ds-tooltip';\n\ninterface TippedButtonPropsT {\n tip: string;\n zIndex: number;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n children?: React.ReactNode;\n style?: React.CSSProperties;\n className?: string;\n value?: string;\n}\n\nexport const TippedButton = ({\n className,\n tip,\n children,\n onClick = () => null,\n zIndex = 1,\n ...rest\n}: TippedButtonPropsT): JSX.Element => (\n <div className=\"tooltip\">\n <DSTooltipV3 text={tip} zIndex={zIndex} withoutPortal={false}>\n <button\n type=\"button\"\n className={className}\n onClick={(e) => {\n e.preventDefault();\n onClick(e);\n }}\n {...rest}\n >\n {children}\n </button>\n </DSTooltipV3>\n </div>\n);\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACuBjB;AAtBN,SAAS,mBAAmB;AAYrB,MAAM,eAAe,CAAC;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU,MAAM;AAAA,EAChB,SAAS;AAAA,EACT,GAAG;AACL,MACE,oBAAC,SAAI,WAAU,WACb,8BAAC,eAAY,MAAM,KAAK,QAAgB,eAAe,OACrD;AAAA,EAAC;AAAA;AAAA,IACC,MAAK;AAAA,IACL;AAAA,IACA,SAAS,CAAC,MAAM;AACd,QAAE,eAAe;AACjB,cAAQ,CAAC;AAAA,IACX;AAAA,IACC,GAAG;AAAA,IAEH;AAAA;AACH,GACF,GACF;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/TippedSelect.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { DSTooltipV3 } from '@elliemae/ds-tooltip';\n\ninterface TippedSelectPropsT {\n tip: string;\n onChange?: (e: React.ChangeEvent<HTMLSelectElement>) => void;\n className?: string;\n options?: string[];\n defaultValue?: string;\n values?: string[];\n zIndex?: number;\n children?: React.ReactNode;\n}\n\nexport const TippedSelect = (props: TippedSelectPropsT): JSX.Element => {\n const { tip, onChange = () => null, className, options, defaultValue = '', values, zIndex, children } = props;\n const fallBackChildren =\n values &&\n values.map((value, index) => (\n <option key={value} value={value === 'normal' ? '' : value}>\n {options ? options[index] : null}\n </option>\n ));\n\n return (\n <div className=\"tooltip\">\n <DSTooltipV3 text={tip} zIndex={zIndex} withoutPortal={false}>\n <div>\n <select\n className={className}\n defaultValue={defaultValue}\n onChange={(e) => {\n e.persist();\n onChange(e);\n }}\n >\n {children || fallBackChildren}\n </select>\n </div>\n </DSTooltipV3>\n </div>\n );\n};\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACmBjB;AAlBN,SAAS,mBAAmB;AAarB,MAAM,eAAe,CAAC,UAA2C;AACtE,QAAM,EAAE,KAAK,WAAW,MAAM,MAAM,WAAW,SAAS,eAAe,IAAI,QAAQ,QAAQ,SAAS,IAAI;AACxG,QAAM,mBACJ,UACA,OAAO,IAAI,CAAC,OAAO,UACjB,oBAAC,YAAmB,OAAO,UAAU,WAAW,KAAK,OAClD,oBAAU,QAAQ,KAAK,IAAI,QADjB,KAEb,CACD;AAEH,SACE,oBAAC,SAAI,WAAU,WACb,8BAAC,eAAY,MAAM,KAAK,QAAgB,eAAe,OACrD,8BAAC,SACC;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,UAAU,CAAC,MAAM;AACf,UAAE,QAAQ;AACV,iBAAS,CAAC;AAAA,MACZ;AAAA,MAEC,sBAAY;AAAA;AAAA,EACf,GACF,GACF,GACF;AAEJ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/colors.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "function sinToHex(i, size, phase) {\n const sin = Math.sin((Math.PI / size) * 2 * i + phase);\n const int = Math.floor(sin * 127) + 128;\n const hex = int.toString(16);\n\n return hex.length === 1 ? `0${hex}` : hex;\n}\nexport function getRainbowColors(size = 28) {\n const colors = new Array(size).fill(undefined);\n return colors.map((color, idx) => {\n const red = sinToHex(idx, size, (0 * Math.PI * 2) / 3); // 0 deg\n const blue = sinToHex(idx, size, (1 * Math.PI * 2) / 3); // 120 deg\n const green = sinToHex(idx, size, (2 * Math.PI * 2) / 3); // 240 deg\n\n color = `#${red}${green}${blue}`;\n return color;\n });\n}\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,SAAS,GAAG,MAAM,OAAO;AAChC,QAAM,MAAM,KAAK,IAAK,KAAK,KAAK,OAAQ,IAAI,IAAI,KAAK;AACrD,QAAM,MAAM,KAAK,MAAM,MAAM,GAAG,IAAI;AACpC,QAAM,MAAM,IAAI,SAAS,EAAE;AAE3B,SAAO,IAAI,WAAW,IAAI,IAAI,QAAQ;AACxC;AACO,SAAS,iBAAiB,OAAO,IAAI;AAC1C,QAAM,SAAS,IAAI,MAAM,IAAI,EAAE,KAAK,MAAS;AAC7C,SAAO,OAAO,IAAI,CAAC,OAAO,QAAQ;AAChC,UAAM,MAAM,SAAS,KAAK,MAAO,IAAI,KAAK,KAAK,IAAK,CAAC;AACrD,UAAM,OAAO,SAAS,KAAK,MAAO,IAAI,KAAK,KAAK,IAAK,CAAC;AACtD,UAAM,QAAQ,SAAS,KAAK,MAAO,IAAI,KAAK,KAAK,IAAK,CAAC;AAEvD,YAAQ,IAAI,MAAM,QAAQ;AAC1B,WAAO;AAAA,EACT,CAAC;AACH;",
|
|
6
6
|
"names": []
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const fields = [\n 'Lender Name \u00AB315\u00BB',\n 'Lender Address \u00AB319\u00BB',\n 'Lender City \u00AB313\u00BB',\n 'Lender State \u00AB321\u00BB',\n 'Lender Zip \u00AB323\u00BB',\n 'Borrower First Name \u00AB4000\u00BB',\n 'Borrower Last Name \u00AB4002\u00BB',\n 'Total Loan Amount \u00AB2\u00BB',\n 'Loan Term \u00AB4\u00BB',\n 'Loan to Value \u00AB976\u00BB',\n 'Monthly Payment \u00AB912\u00BB',\n 'Interest Rate \u00AB3\u00BB',\n 'Loan Originator Name \u00AB1612\u00BB',\n 'Loan Originator Email \u00AB3968\u00BB',\n 'Loan Originator Phone \u00AB1823\u00BB',\n 'NMLS Loan Originator ID \u00AB3238\u00BB',\n];\n/**\n * Returns the fields names\n
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;ACAhB,MAAM,SAAS;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/customFields.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const fields = [\n 'Lender Name \u00AB315\u00BB',\n 'Lender Address \u00AB319\u00BB',\n 'Lender City \u00AB313\u00BB',\n 'Lender State \u00AB321\u00BB',\n 'Lender Zip \u00AB323\u00BB',\n 'Borrower First Name \u00AB4000\u00BB',\n 'Borrower Last Name \u00AB4002\u00BB',\n 'Total Loan Amount \u00AB2\u00BB',\n 'Loan Term \u00AB4\u00BB',\n 'Loan to Value \u00AB976\u00BB',\n 'Monthly Payment \u00AB912\u00BB',\n 'Interest Rate \u00AB3\u00BB',\n 'Loan Originator Name \u00AB1612\u00BB',\n 'Loan Originator Email \u00AB3968\u00BB',\n 'Loan Originator Phone \u00AB1823\u00BB',\n 'NMLS Loan Originator ID \u00AB3238\u00BB',\n];\n/**\n * Returns the fields names\n * @param customFields\n */\nexport const getFields = (customFields = fields) =>\n customFields.map((opt, index) => ({\n id: `${opt}_${index}`,\n // icon: 'ADD',\n label: `${opt}`,\n onClick: opt.indexOf('\u00AB') !== -1 ? () => this.onOptionClick(this.getFieldCode(opt)) : null,\n type: opt === '' ? 'separator' : null,\n }));\n/**\n * Returns a field's name\n * @param field\n */\nexport const getFieldName = (field) => {\n const codeIndex = field.indexOf('\u00AB');\n return field.substring(0, codeIndex);\n};\n/**\n * Returns a field's id. E.g: \u00AB456\u00BB\n * @param field\n */\nexport const getFieldCode = (field) => {\n const codeIndex = field.indexOf('\u00AB');\n return field.substring(codeIndex);\n};\n\nexport default {\n fields,\n getFields,\n getFieldName,\n getFieldCode,\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAhB,MAAM,SAAS;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAKO,MAAM,YAAY,CAAC,eAAe,WACvC,aAAa,IAAI,CAAC,KAAK,WAAW;AAAA,EAChC,IAAI,GAAG,OAAO;AAAA;AAAA,EAEd,OAAO,GAAG;AAAA,EACV,SAAS,IAAI,QAAQ,MAAG,MAAM,KAAK,MAAM,SAAK,cAAc,SAAK,aAAa,GAAG,CAAC,IAAI;AAAA,EACtF,MAAM,QAAQ,KAAK,cAAc;AACnC,EAAE;AAKG,MAAM,eAAe,CAAC,UAAU;AACrC,QAAM,YAAY,MAAM,QAAQ,MAAG;AACnC,SAAO,MAAM,UAAU,GAAG,SAAS;AACrC;AAKO,MAAM,eAAe,CAAC,UAAU;AACrC,QAAM,YAAY,MAAM,QAAQ,MAAG;AACnC,SAAO,MAAM,UAAU,SAAS;AAClC;AAEA,IAAO,uBAAQ;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/config/quillSingletonConfigurations.ts"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { Quill } from 'react-quill';\nimport BlotFormatter from 'quill-blot-formatter';\nimport IndentStyle from '../quillOverrides/IndentStyle.js';\nimport Image from '../quillOverrides/Image.js';\nimport LinkFormat from '../quillOverrides/LinkFormat.js';\n\n// hystorically we have always been modifying the Quill object directly\n// in node this means we have modified the global Quill object which is a singleton\n// it's not a good practice and we should not do it but to ensure our changes are transparent\n// we keep up the bad practice untill a new version of our editor is released\n// we will atleast reduce the amount of times we modify the Quill object by only doing it once\n// this is \"new\" bad practice but it's better than modifying the global Quill object constantly\n// we achieve this by adding a flag to the Quill object to indicate that we have already modified it\nif (!Quill._dsDidRegisterBlotFormatter) {\n Quill.register('modules/blotFormatter', BlotFormatter);\n Quill._dsDidRegisterBlotFormatter = true;\n}\nif (!Quill._dsDidConfigureTextWhitelist) {\n // Fix block styled formats ----------------\n const AlignStyle = Quill.import('attributors/style/align');\n const FontStyle = Quill.import('attributors/style/font');\n FontStyle.whitelist = [\n // allow ONLY these fonts and the default\n 'serif',\n 'monospace',\n 'arial',\n 'comic-sans',\n 'courier-new',\n 'georgia',\n 'helvetica',\n 'lucida',\n ];\n const SizeStyle = Quill.import('attributors/style/size');\n SizeStyle.whitelist = [\n // allow ONLY these sizes and the default\n 'x-small',\n 'large',\n 'x-large',\n ];\n Quill.register(AlignStyle, true);\n Quill.register(IndentStyle, true);\n Quill.register(FontStyle, true);\n Quill.register(SizeStyle, true);\n Quill._dsDidConfigureTextWhitelist = true;\n}\nif (!Quill._dsDidConfigureBlock) {\n // Fix Doc Viewer p tags extra margin issue ---------\n const Block = Quill.import('blots/block');\n Block.tagName = 'p';\n Quill.register(Block);\n Quill._dsDidConfigureBlock = true;\n // -----------------------------------------\n}\nif (!Quill._dsDidConfigureImage) {\n Quill.register(Image, true);\n Quill._dsDidConfigureImage = true;\n}\n\nif (!Quill._dsDidConfigureLink) {\n Quill.register(LinkFormat, true);\n Quill._dsDidConfigureLink = true;\n}\n\nexport default Quill;\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,aAAa;AACtB,OAAO,mBAAmB;AAC1B,OAAO,iBAAiB;AACxB,OAAO,WAAW;AAClB,OAAO,gBAAgB;AASvB,IAAI,CAAC,MAAM,6BAA6B;AACtC,QAAM,SAAS,yBAAyB,aAAa;AACrD,QAAM,8BAA8B;AACtC;AACA,IAAI,CAAC,MAAM,8BAA8B;AAEvC,QAAM,aAAa,MAAM,OAAO,yBAAyB;AACzD,QAAM,YAAY,MAAM,OAAO,wBAAwB;AACvD,YAAU,YAAY;AAAA;AAAA,IAEpB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACA,QAAM,YAAY,MAAM,OAAO,wBAAwB;AACvD,YAAU,YAAY;AAAA;AAAA,IAEpB;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACA,QAAM,SAAS,YAAY,IAAI;AAC/B,QAAM,SAAS,aAAa,IAAI;AAChC,QAAM,SAAS,WAAW,IAAI;AAC9B,QAAM,SAAS,WAAW,IAAI;AAC9B,QAAM,+BAA+B;AACvC;AACA,IAAI,CAAC,MAAM,sBAAsB;AAE/B,QAAM,QAAQ,MAAM,OAAO,aAAa;AACxC,QAAM,UAAU;AAChB,QAAM,SAAS,KAAK;AACpB,QAAM,uBAAuB;AAE/B;AACA,IAAI,CAAC,MAAM,sBAAsB;AAC/B,QAAM,SAAS,OAAO,IAAI;AAC1B,QAAM,uBAAuB;AAC/B;AAEA,IAAI,CAAC,MAAM,qBAAqB;AAC9B,QAAM,SAAS,YAAY,IAAI;AAC/B,QAAM,sBAAsB;AAC9B;AAEA,IAAO,uCAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/constants.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable prettier/prettier */\nimport { getRainbowColors } from './components/colors.js';\n\nexport const colors = [\n '#000000',\n '#e60000',\n '#ff9900',\n '#ffff00',\n '#008A00',\n '#0066cc',\n '#9933ff',\n '#ffffff',\n '#facccc',\n '#ffebcc',\n '#ffffcc',\n '#cce8cc',\n '#cce0f5',\n '#ebd6ff',\n '#bbbbbb',\n '#f06666',\n '#ffc266',\n '#ffff66',\n '#66b966',\n '#66a3e0',\n '#c285ff',\n '#888888',\n '#a10000',\n '#b26b00',\n '#b2b200',\n '#006100',\n '#0047b2',\n '#6b24b2',\n '#444444',\n '#5c0000',\n '#663d00',\n '#666600',\n '#003700',\n '#002966',\n '#3d1466',\n ...getRainbowColors(28),\n];\nexport const fonts = [\n 'Sans Serif',\n 'Serif',\n 'Monospace',\n 'Arial',\n 'Georgia',\n 'Helvetica',\n];\nexport const sizes = ['Small', 'Normal', 'Large', 'Huge'];\nexport const sizesReal = [\n // https://www.w3schools.com/cssref/pr_font_font-size.asp\n 'X-Small',\n 'Normal',\n 'Large',\n 'X-Large',\n];\n\nexport const defaultItems = {\n HEADER: 'header',\n FONT: 'font',\n FONT_SIZE: 'size',\n BOLD: 'bold',\n ITALIC: 'italic',\n UNDERLINE: 'underline',\n STRIKE: 'strike',\n SUB: 'sub',\n SUPER: 'super',\n ORDERED_LIST: 'ordered list',\n BULLET_LIST: 'bullet list',\n INDENT_MINUS_ONE: 'indent -1',\n INDENT_PLUS_ONE: 'indent +1',\n ALIGN: 'align',\n FONT_COLOR: 'font color',\n FONT_BACKGROUND_COLOR: 'font background color',\n HYPERLINK: 'hyperlink',\n IMAGE: 'image',\n CLEAR_FORMAT: 'clear format',\n SHOW_HTML: 'show html',\n};\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACCvB,SAAS,wBAAwB;AAE1B,MAAM,SAAS;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG,iBAAiB,EAAE;AACxB;AACO,MAAM,QAAQ;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACO,MAAM,QAAQ,CAAC,SAAS,UAAU,SAAS,MAAM;AACjD,MAAM,YAAY;AAAA;AAAA,EAEvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,MAAM,eAAe;AAAA,EAC1B,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,KAAK;AAAA,EACL,OAAO;AAAA,EACP,cAAc;AAAA,EACd,aAAa;AAAA,EACb,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,uBAAuB;AAAA,EACvB,WAAW;AAAA,EACX,OAAO;AAAA,EACP,cAAc;AAAA,EACd,WAAW;AACb;",
|
|
6
6
|
"names": []
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/index.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { default, DSWYSIWYGEditor, WYSIWYWithSchema } from './DSWYSIWYGEditor.js';\nexport * from './components/CustomToolbar.js';\nexport * from './components/CustomImageUploader.js';\nexport * from './constants.js';\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,WAAAA,UAAS,iBAAiB,wBAAwB;AAC3D,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
6
6
|
"names": ["default"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/quillMatchers/clipboardLinkWithTagMatcher.ts"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import type Delta from 'quill-delta';\n\nconst hrefTagRegexp = /%7B%7B.+%7D%7D/gm;\nexport const clipboardLinkWithTagMatcher = (node: HTMLAnchorElement, delta: Delta): Delta => {\n if (node.origin === window.location.origin) {\n const nodeHref = node.href;\n const tagMatch = nodeHref.match(hrefTagRegexp);\n if (tagMatch) {\n const [overWrittenHrefValue] = tagMatch;\n const insertLinkOperation = delta?.ops?.find((operation) => operation?.attributes?.link?.match?.(hrefTagRegexp));\n if (insertLinkOperation)\n insertLinkOperation.attributes.link = overWrittenHrefValue.replace(/%7B%7B/gm, '{{').replace(/%7D%7D/gm, '}}');\n }\n }\n return delta;\n};\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACEvB,MAAM,gBAAgB;AACf,MAAM,8BAA8B,CAAC,MAAyB,UAAwB;AAC3F,MAAI,KAAK,WAAW,OAAO,SAAS,QAAQ;AAC1C,UAAM,WAAW,KAAK;AACtB,UAAM,WAAW,SAAS,MAAM,aAAa;AAC7C,QAAI,UAAU;AACZ,YAAM,CAAC,oBAAoB,IAAI;AAC/B,YAAM,sBAAsB,OAAO,KAAK,KAAK,CAAC,cAAc,WAAW,YAAY,MAAM,QAAQ,aAAa,CAAC;AAC/G,UAAI;AACF,4BAAoB,WAAW,OAAO,qBAAqB,QAAQ,YAAY,IAAI,EAAE,QAAQ,YAAY,IAAI;AAAA,IACjH;AAAA,EACF;AACA,SAAO;AACT;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/quillOverrides/Image.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { Quill } from 'react-quill';\nconst BaseImage = Quill.import('formats/image');\n\nconst ATTRIBUTES = ['alt', 'height', 'width', 'style'];\n\nconst WHITE_STYLE = ['margin', 'display', 'float'];\n\nclass Image extends BaseImage {\n static formats(domNode) {\n return ATTRIBUTES.reduce(function (formats, attribute) {\n if (domNode.hasAttribute(attribute)) {\n formats[attribute] = domNode.getAttribute(attribute);\n }\n return formats;\n }, {});\n }\n\n format(name, value) {\n if (ATTRIBUTES.indexOf(name) > -1) {\n if (value) {\n if (name === 'style') {\n value = this.sanitize_style(value);\n }\n this.domNode.setAttribute(name, value);\n } else {\n this.domNode.removeAttribute(name);\n }\n } else {\n super.format(name, value);\n }\n }\n\n sanitize_style(style) {\n const style_arr = style.split(';');\n let allow_style = '';\n style_arr.forEach((v, i) => {\n if (WHITE_STYLE.indexOf(v.trim().split(':')[0]) !== -1) {\n allow_style += `${v};`;\n }\n });\n return allow_style;\n }\n}\n\nexport default Image;\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,aAAa;AACtB,MAAM,YAAY,MAAM,OAAO,eAAe;AAE9C,MAAM,aAAa,CAAC,OAAO,UAAU,SAAS,OAAO;AAErD,MAAM,cAAc,CAAC,UAAU,WAAW,OAAO;AAEjD,MAAM,cAAc,UAAU;AAAA,EAC5B,OAAO,QAAQ,SAAS;AACtB,WAAO,WAAW,OAAO,SAAU,SAAS,WAAW;AACrD,UAAI,QAAQ,aAAa,SAAS,GAAG;AACnC,gBAAQ,SAAS,IAAI,QAAQ,aAAa,SAAS;AAAA,MACrD;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,EACP;AAAA,EAEA,OAAO,MAAM,OAAO;AAClB,QAAI,WAAW,QAAQ,IAAI,IAAI,IAAI;AACjC,UAAI,OAAO;AACT,YAAI,SAAS,SAAS;AACpB,kBAAQ,KAAK,eAAe,KAAK;AAAA,QACnC;AACA,aAAK,QAAQ,aAAa,MAAM,KAAK;AAAA,MACvC,OAAO;AACL,aAAK,QAAQ,gBAAgB,IAAI;AAAA,MACnC;AAAA,IACF,OAAO;AACL,YAAM,OAAO,MAAM,KAAK;AAAA,IAC1B;AAAA,EACF;AAAA,EAEA,eAAe,OAAO;AACpB,UAAM,YAAY,MAAM,MAAM,GAAG;AACjC,QAAI,cAAc;AAClB,cAAU,QAAQ,CAAC,GAAG,MAAM;AAC1B,UAAI,YAAY,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,EAAE,CAAC,CAAC,MAAM,IAAI;AACtD,uBAAe,GAAG;AAAA,MACpB;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AACF;AAEA,IAAO,gBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/quillOverrides/IndentStyle.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { Quill } from 'react-quill';\n\nconst Parchment = Quill.import('parchment');\nconst levels = [1, 2, 3, 4, 5];\nconst multiplier = 2;\n\nclass IndentAttributor extends Parchment.Attributor.Style {\n add(node, value) {\n return super.add(node, `${value * multiplier}em`);\n }\n\n value(node) {\n return parseFloat(super.value(node)) / multiplier || undefined; // Don't return NaN\n }\n}\n\n/**\n * Meant to override quill's indent format's style and add the indentation inline instead of applying a class\n */\nconst IndentStyle = new IndentAttributor('indent', 'margin-left', {\n scope: Parchment.Scope.BLOCK,\n whitelist: levels.map((value) => `${value * multiplier}em`),\n});\n\nexport default IndentStyle;\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,aAAa;AAEtB,MAAM,YAAY,MAAM,OAAO,WAAW;AAC1C,MAAM,SAAS,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;AAC7B,MAAM,aAAa;AAEnB,MAAM,yBAAyB,UAAU,WAAW,MAAM;AAAA,EACxD,IAAI,MAAM,OAAO;AACf,WAAO,MAAM,IAAI,MAAM,GAAG,QAAQ,cAAc;AAAA,EAClD;AAAA,EAEA,MAAM,MAAM;AACV,WAAO,WAAW,MAAM,MAAM,IAAI,CAAC,IAAI,cAAc;AAAA,EACvD;AACF;AAKA,MAAM,cAAc,IAAI,iBAAiB,UAAU,eAAe;AAAA,EAChE,OAAO,UAAU,MAAM;AAAA,EACvB,WAAW,OAAO,IAAI,CAAC,UAAU,GAAG,QAAQ,cAAc;AAC5D,CAAC;AAED,IAAO,sBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/quillOverrides/LinkFormat.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\nimport { Quill } from 'react-quill';\n\nconst sanitizeProtocol = (value) => {\n if (typeof value === 'boolean' || value === null) return value;\n let newVal = value;\n if (\n !value.startsWith('http') &&\n !value.startsWith('ftp') &&\n !value.startsWith('mailto:') &&\n !value.startsWith('{{')\n ) {\n if (!value.startsWith('www')) {\n newVal = `https://www.${value}`;\n } else newVal = `https://${value}`;\n }\n return newVal;\n};\n\nfunction getIsValidProtocol(url, protocols) {\n const anchor = document.createElement('a');\n anchor.href = url;\n const protocol = anchor.href.slice(0, anchor.href.indexOf(':'));\n return protocols.indexOf(protocol) > -1;\n}\n\nconst Link = Quill.import('formats/link');\n\nclass LinkFormat extends Link {\n blotName = 'link';\n\n tagName = 'A';\n\n SANITIZED_URL = 'about:blank';\n\n PROTOCOL_WHITELIST = ['http', 'ftp', 'https', 'mailto', 'tel'];\n\n static create(value) {\n const newVal = sanitizeProtocol(value);\n const node = super.create(newVal);\n node.setAttribute('href', newVal);\n return node;\n }\n\n static formats(domNode) {\n return domNode?.getAttribute?.('href');\n }\n\n static sanitize(url) {\n return getIsValidProtocol(url, this.PROTOCOL_WHITELIST) ? url : this.SANITIZED_URL;\n }\n\n format(name, value) {\n const newVal = sanitizeProtocol(value);\n // Remove link case\n if (name === 'link' && value === false) {\n this.domNode.removeAttribute('href');\n } else if (name !== this.statics.blotName || !newVal) {\n super.format(name, newVal);\n } else {\n this.domNode.setAttribute('href', this.constructor.sanitize(newVal));\n }\n }\n}\n\nexport default LinkFormat;\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACCvB,SAAS,aAAa;AAEtB,MAAM,mBAAmB,CAAC,UAAU;AAClC,MAAI,OAAO,UAAU,aAAa,UAAU;AAAM,WAAO;AACzD,MAAI,SAAS;AACb,MACE,CAAC,MAAM,WAAW,MAAM,KACxB,CAAC,MAAM,WAAW,KAAK,KACvB,CAAC,MAAM,WAAW,SAAS,KAC3B,CAAC,MAAM,WAAW,IAAI,GACtB;AACA,QAAI,CAAC,MAAM,WAAW,KAAK,GAAG;AAC5B,eAAS,eAAe;AAAA,IAC1B;AAAO,eAAS,WAAW;AAAA,EAC7B;AACA,SAAO;AACT;AAEA,SAAS,mBAAmB,KAAK,WAAW;AAC1C,QAAM,SAAS,SAAS,cAAc,GAAG;AACzC,SAAO,OAAO;AACd,QAAM,WAAW,OAAO,KAAK,MAAM,GAAG,OAAO,KAAK,QAAQ,GAAG,CAAC;AAC9D,SAAO,UAAU,QAAQ,QAAQ,IAAI;AACvC;AAEA,MAAM,OAAO,MAAM,OAAO,cAAc;AAExC,MAAM,mBAAmB,KAAK;AAAA,EAA9B;AAAA;AACE,oBAAW;AAEX,mBAAU;AAEV,yBAAgB;AAEhB,8BAAqB,CAAC,QAAQ,OAAO,SAAS,UAAU,KAAK;AAAA;AAAA,EAE7D,OAAO,OAAO,OAAO;AACnB,UAAM,SAAS,iBAAiB,KAAK;AACrC,UAAM,OAAO,MAAM,OAAO,MAAM;AAChC,SAAK,aAAa,QAAQ,MAAM;AAChC,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,QAAQ,SAAS;AACtB,WAAO,SAAS,eAAe,MAAM;AAAA,EACvC;AAAA,EAEA,OAAO,SAAS,KAAK;AACnB,WAAO,mBAAmB,KAAK,KAAK,kBAAkB,IAAI,MAAM,KAAK;AAAA,EACvE;AAAA,EAEA,OAAO,MAAM,OAAO;AAClB,UAAM,SAAS,iBAAiB,KAAK;AAErC,QAAI,SAAS,UAAU,UAAU,OAAO;AACtC,WAAK,QAAQ,gBAAgB,MAAM;AAAA,IACrC,WAAW,SAAS,KAAK,QAAQ,YAAY,CAAC,QAAQ;AACpD,YAAM,OAAO,MAAM,MAAM;AAAA,IAC3B,OAAO;AACL,WAAK,QAAQ,aAAa,QAAQ,KAAK,YAAY,SAAS,MAAM,CAAC;AAAA,IACrE;AAAA,EACF;AACF;AAEA,IAAO,qBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/quillOverrides/PlainClipboard.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { Quill } from 'react-quill';\n\nconst Clipboard = Quill.import('modules/clipboard');\nconst Delta = Quill.import('delta');\n\n/**\n * Just for the sake of an example. https://quilljs.com/docs/modules/\n */\nexport default class PlainClipboard extends Clipboard {\n convert(html = null) {\n if (typeof html === 'string') {\n this.container.innerHTML = html;\n }\n const text = this.container.innerText;\n this.container.innerHTML = '';\n return new Delta().insert(text);\n }\n}\n\n// Uncomment if adding custom clipboard, or add in the file you are importing this to\n// Quill.register('modules/clipboard', PlainClipboard)\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,aAAa;AAEtB,MAAM,YAAY,MAAM,OAAO,mBAAmB;AAClD,MAAM,QAAQ,MAAM,OAAO,OAAO;AAKlC,MAAO,uBAAqC,UAAU;AAAA,EACpD,QAAQ,OAAO,MAAM;AACnB,QAAI,OAAO,SAAS,UAAU;AAC5B,WAAK,UAAU,YAAY;AAAA,IAC7B;AACA,UAAM,OAAO,KAAK,UAAU;AAC5B,SAAK,UAAU,YAAY;AAC3B,WAAO,IAAI,MAAM,EAAE,OAAO,IAAI;AAAA,EAChC;AACF;",
|
|
6
6
|
"names": []
|
package/dist/esm/utils.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/utils.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const formatHTML = (html) => {\n const tab = '\\t';\n let result = '';\n let indent = '';\n\n html.split(/>\\s*</).forEach((element) => {\n if (element.match(/^\\/\\w/)) {\n indent = indent.substring(tab.length);\n }\n\n result += `${indent}<${element}>\\r\\n`;\n\n if (element.match(/^<?\\w[^>]*[^/]$/)) {\n indent += tab;\n }\n });\n\n return result.substring(1, result.length - 3);\n};\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAhB,MAAM,aAAa,CAAC,SAAS;AAClC,QAAM,MAAM;AACZ,MAAI,SAAS;AACb,MAAI,SAAS;AAEb,OAAK,MAAM,OAAO,EAAE,QAAQ,CAAC,YAAY;AACvC,QAAI,QAAQ,MAAM,OAAO,GAAG;AAC1B,eAAS,OAAO,UAAU,IAAI,MAAM;AAAA,IACtC;AAEA,cAAU,GAAG,UAAU;AAAA;AAEvB,QAAI,QAAQ,MAAM,iBAAiB,GAAG;AACpC,gBAAU;AAAA,IACZ;AAAA,EACF,CAAC;AAED,SAAO,OAAO,UAAU,GAAG,OAAO,SAAS,CAAC;AAC9C;",
|
|
6
6
|
"names": []
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export declare const fields: string[];
|
|
2
2
|
/**
|
|
3
3
|
* Returns the fields names
|
|
4
|
-
*
|
|
5
4
|
* @param customFields
|
|
6
5
|
*/
|
|
7
6
|
export declare const getFields: (customFields?: string[]) => {
|
|
@@ -12,13 +11,11 @@ export declare const getFields: (customFields?: string[]) => {
|
|
|
12
11
|
}[];
|
|
13
12
|
/**
|
|
14
13
|
* Returns a field's name
|
|
15
|
-
*
|
|
16
14
|
* @param field
|
|
17
15
|
*/
|
|
18
16
|
export declare const getFieldName: (field: any) => any;
|
|
19
17
|
/**
|
|
20
18
|
* Returns a field's id. E.g: «456»
|
|
21
|
-
*
|
|
22
19
|
* @param field
|
|
23
20
|
*/
|
|
24
21
|
export declare const getFieldCode: (field: any) => any;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elliemae/ds-wysiwygeditor",
|
|
3
|
-
"version": "3.22.0-next.
|
|
3
|
+
"version": "3.22.0-next.30",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "ICE MT - Dimsum - WYSIWYG Editor",
|
|
6
6
|
"files": [
|
|
@@ -103,20 +103,21 @@
|
|
|
103
103
|
"quill-delta": "5.0.0",
|
|
104
104
|
"react-quill": "2.0.0-beta.4",
|
|
105
105
|
"uid": "^2.0.1",
|
|
106
|
-
"@elliemae/ds-button-v2": "3.22.0-next.
|
|
107
|
-
"@elliemae/ds-
|
|
108
|
-
"@elliemae/ds-dropdownmenu": "3.22.0-next.
|
|
109
|
-
"@elliemae/ds-
|
|
110
|
-
"@elliemae/ds-
|
|
111
|
-
"@elliemae/ds-
|
|
112
|
-
"@elliemae/ds-
|
|
113
|
-
"@elliemae/ds-
|
|
114
|
-
"@elliemae/ds-
|
|
115
|
-
"@elliemae/ds-uploader": "3.22.0-next.
|
|
106
|
+
"@elliemae/ds-button-v2": "3.22.0-next.30",
|
|
107
|
+
"@elliemae/ds-icons": "3.22.0-next.30",
|
|
108
|
+
"@elliemae/ds-dropdownmenu": "3.22.0-next.30",
|
|
109
|
+
"@elliemae/ds-imagelibrarymodal": "3.22.0-next.30",
|
|
110
|
+
"@elliemae/ds-modal": "3.22.0-next.30",
|
|
111
|
+
"@elliemae/ds-props-helpers": "3.22.0-next.30",
|
|
112
|
+
"@elliemae/ds-grid": "3.22.0-next.30",
|
|
113
|
+
"@elliemae/ds-shared": "3.22.0-next.30",
|
|
114
|
+
"@elliemae/ds-system": "3.22.0-next.30",
|
|
115
|
+
"@elliemae/ds-uploader": "3.22.0-next.30",
|
|
116
|
+
"@elliemae/ds-tooltip": "3.22.0-next.30"
|
|
116
117
|
},
|
|
117
118
|
"devDependencies": {
|
|
118
|
-
"@elliemae/pui-cli": "~9.0.0-next.
|
|
119
|
-
"@elliemae/ds-monorepo-devops": "3.22.0-next.
|
|
119
|
+
"@elliemae/pui-cli": "~9.0.0-next.22",
|
|
120
|
+
"@elliemae/ds-monorepo-devops": "3.22.0-next.30"
|
|
120
121
|
},
|
|
121
122
|
"peerDependencies": {
|
|
122
123
|
"lodash": "^4.17.21",
|
|
@@ -128,14 +129,14 @@
|
|
|
128
129
|
"typeSafety": false
|
|
129
130
|
},
|
|
130
131
|
"scripts": {
|
|
131
|
-
"dev": "cross-env NODE_ENV=development node
|
|
132
|
+
"dev": "cross-env NODE_ENV=development node ../../../scripts/build/build.mjs --watch",
|
|
132
133
|
"test": "pui-cli test --passWithNoTests",
|
|
133
|
-
"lint": "node
|
|
134
|
-
"eslint:fix": "eslint --ext='.js,.jsx,.test.js,.ts,.tsx' --fix --config='
|
|
135
|
-
"dts": "node
|
|
136
|
-
"build": "cross-env NODE_ENV=production node
|
|
134
|
+
"lint": "node ../../../scripts/lint.mjs",
|
|
135
|
+
"eslint:fix": "eslint --ext='.js,.jsx,.test.js,.ts,.tsx' --fix --config='../../../.eslintrc.js' src/",
|
|
136
|
+
"dts": "node ../../../scripts/dts.mjs",
|
|
137
|
+
"build": "cross-env NODE_ENV=production node ../../../scripts/build/build.mjs",
|
|
137
138
|
"dev:build": "pnpm --filter {.}... build",
|
|
138
139
|
"dev:install": "pnpm --filter {.}... i --no-lockfile && pnpm run dev:build",
|
|
139
|
-
"checkDeps": "npm exec
|
|
140
|
+
"checkDeps": "npm exec ../../util/ds-codemods -- check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
|
|
140
141
|
}
|
|
141
142
|
}
|