@bigbinary/neeto-editor-frontend 2.0.1 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/dist/.ready +1 -1
  2. package/dist/Attachments.js +3 -3
  3. package/dist/Editor.js +8 -6
  4. package/dist/Editor.js.map +1 -1
  5. package/dist/EditorContent.js +2 -2
  6. package/dist/FormikEditor.js +6 -6
  7. package/dist/Menu.js +5 -5
  8. package/dist/{chunk-PSGRE5nX.js → chunk-Bg0xYw5S.js} +3 -3
  9. package/dist/{chunk-PSGRE5nX.js.map → chunk-Bg0xYw5S.js.map} +1 -1
  10. package/dist/{chunk-Bra5VPWO.js → chunk-Bw7QSBHf.js} +3 -3
  11. package/dist/{chunk-Bra5VPWO.js.map → chunk-Bw7QSBHf.js.map} +1 -1
  12. package/dist/{chunk-mFZL53CS.js → chunk-C4ngrj-P.js} +4 -4
  13. package/dist/{chunk-mFZL53CS.js.map → chunk-C4ngrj-P.js.map} +1 -1
  14. package/dist/{chunk-y5pmJStT.js → chunk-CHmdEEC5.js} +4 -4
  15. package/dist/{chunk-y5pmJStT.js.map → chunk-CHmdEEC5.js.map} +1 -1
  16. package/dist/{chunk-CX-0IHKE.js → chunk-CiVaat1H.js} +3 -3
  17. package/dist/{chunk-CX-0IHKE.js.map → chunk-CiVaat1H.js.map} +1 -1
  18. package/dist/{chunk-DrHVV_g1.js → chunk-CyfiHLWx.js} +5 -3
  19. package/dist/chunk-CyfiHLWx.js.map +1 -0
  20. package/dist/{chunk-D52F37yF.js → chunk-DSKEeXyj.js} +2 -2
  21. package/dist/{chunk-D52F37yF.js.map → chunk-DSKEeXyj.js.map} +1 -1
  22. package/dist/{chunk-DsAUS6bL.js → chunk-DZTg5JCM.js} +3 -3
  23. package/dist/{chunk-DsAUS6bL.js.map → chunk-DZTg5JCM.js.map} +1 -1
  24. package/dist/{chunk-1NlIGj6C.js → chunk-DoZN1FPd.js} +2 -2
  25. package/dist/{chunk-1NlIGj6C.js.map → chunk-DoZN1FPd.js.map} +1 -1
  26. package/dist/{chunk-DcFvJOrc.js → chunk-EgiY42Lm.js} +5 -5
  27. package/dist/{chunk-DcFvJOrc.js.map → chunk-EgiY42Lm.js.map} +1 -1
  28. package/dist/{chunk-CO-Yfs5R.js → chunk-NDmv6peW.js} +4 -4
  29. package/dist/{chunk-CO-Yfs5R.js.map → chunk-NDmv6peW.js.map} +1 -1
  30. package/dist/{chunk-CK_Ss-J5.js → chunk-eOIMt7jp.js} +2 -2
  31. package/dist/{chunk-CK_Ss-J5.js.map → chunk-eOIMt7jp.js.map} +1 -1
  32. package/dist/cjs/Attachments.cjs.js +3 -3
  33. package/dist/cjs/Editor.cjs.js +8 -6
  34. package/dist/cjs/Editor.cjs.js.map +1 -1
  35. package/dist/cjs/EditorContent.cjs.js +2 -2
  36. package/dist/cjs/FormikEditor.cjs.js +6 -6
  37. package/dist/cjs/Menu.cjs.js +5 -5
  38. package/dist/cjs/{chunk-Bmjmsp-E.cjs.js → chunk-BNUTjVYA.cjs.js} +5 -3
  39. package/dist/cjs/chunk-BNUTjVYA.cjs.js.map +1 -0
  40. package/dist/cjs/{chunk-MxWVMW6e.cjs.js → chunk-Bmd6d-x7.cjs.js} +3 -3
  41. package/dist/cjs/{chunk-MxWVMW6e.cjs.js.map → chunk-Bmd6d-x7.cjs.js.map} +1 -1
  42. package/dist/cjs/{chunk-D7p10rIr.cjs.js → chunk-BuuzKD6e.cjs.js} +3 -3
  43. package/dist/cjs/{chunk-D7p10rIr.cjs.js.map → chunk-BuuzKD6e.cjs.js.map} +1 -1
  44. package/dist/cjs/{chunk-DWyvxp1a.cjs.js → chunk-Bv4wbN1E.cjs.js} +3 -3
  45. package/dist/cjs/{chunk-DWyvxp1a.cjs.js.map → chunk-Bv4wbN1E.cjs.js.map} +1 -1
  46. package/dist/cjs/{chunk-BlWQNLLE.cjs.js → chunk-C98N-sIR.cjs.js} +5 -5
  47. package/dist/cjs/{chunk-BlWQNLLE.cjs.js.map → chunk-C98N-sIR.cjs.js.map} +1 -1
  48. package/dist/cjs/{chunk-DM1lUvXy.cjs.js → chunk-CPtfEUVF.cjs.js} +3 -3
  49. package/dist/cjs/{chunk-DM1lUvXy.cjs.js.map → chunk-CPtfEUVF.cjs.js.map} +1 -1
  50. package/dist/cjs/{chunk-B2NfgecV.cjs.js → chunk-CUiAHc9-.cjs.js} +4 -4
  51. package/dist/cjs/{chunk-B2NfgecV.cjs.js.map → chunk-CUiAHc9-.cjs.js.map} +1 -1
  52. package/dist/cjs/{chunk-CCCSexAh.cjs.js → chunk-Cgxhrpuh.cjs.js} +4 -4
  53. package/dist/cjs/{chunk-CCCSexAh.cjs.js.map → chunk-Cgxhrpuh.cjs.js.map} +1 -1
  54. package/dist/cjs/{chunk-cwORbcv3.cjs.js → chunk-CtTb6u9F.cjs.js} +2 -2
  55. package/dist/cjs/{chunk-cwORbcv3.cjs.js.map → chunk-CtTb6u9F.cjs.js.map} +1 -1
  56. package/dist/cjs/{chunk-CNIzgxEP.cjs.js → chunk-D1iu346F.cjs.js} +2 -2
  57. package/dist/cjs/{chunk-CNIzgxEP.cjs.js.map → chunk-D1iu346F.cjs.js.map} +1 -1
  58. package/dist/cjs/{chunk-C8X4oFtP.cjs.js → chunk-DIpaV2xG.cjs.js} +4 -4
  59. package/dist/cjs/{chunk-C8X4oFtP.cjs.js.map → chunk-DIpaV2xG.cjs.js.map} +1 -1
  60. package/dist/cjs/{chunk-D6ygkQBu.cjs.js → chunk-R9zpTo5i.cjs.js} +2 -2
  61. package/dist/cjs/{chunk-D6ygkQBu.cjs.js.map → chunk-R9zpTo5i.cjs.js.map} +1 -1
  62. package/dist/cjs/constants.cjs.js +2 -2
  63. package/dist/cjs/index.cjs.js +6 -6
  64. package/dist/cjs/utils.cjs.js +3 -3
  65. package/dist/cjs/v2/Attachments.cjs.js +3 -3
  66. package/dist/cjs/v2/Editor.cjs.js +7 -5
  67. package/dist/cjs/v2/Editor.cjs.js.map +1 -1
  68. package/dist/cjs/v2/EditorContent.cjs.js +3 -3
  69. package/dist/cjs/v2/FormikEditor.cjs.js +5 -5
  70. package/dist/cjs/v2/Menu.cjs.js +3 -3
  71. package/dist/cjs/v2/constants.cjs.js +2 -2
  72. package/dist/cjs/v2/index.cjs.js +6 -6
  73. package/dist/cjs/v2/utils.cjs.js +3 -3
  74. package/dist/constants.js +2 -2
  75. package/dist/editor-stats.html +1 -19
  76. package/dist/index.js +6 -6
  77. package/dist/utils.js +3 -3
  78. package/dist/v2/Attachments.js +3 -3
  79. package/dist/v2/Editor.js +7 -5
  80. package/dist/v2/Editor.js.map +1 -1
  81. package/dist/v2/EditorContent.js +3 -3
  82. package/dist/v2/FormikEditor.js +5 -5
  83. package/dist/v2/Menu.js +3 -3
  84. package/dist/v2/constants.js +2 -2
  85. package/dist/v2/index.js +6 -6
  86. package/dist/v2/utils.js +3 -3
  87. package/package.json +6 -5
  88. package/dist/chunk-DrHVV_g1.js.map +0 -1
  89. package/dist/cjs/chunk-Bmjmsp-E.cjs.js.map +0 -1
@@ -9,10 +9,10 @@ var DOMPurify = require('dompurify');
9
9
  var CopyToClipboardButton = require('@bigbinary/neeto-molecules/CopyToClipboardButton');
10
10
  var ramda = require('ramda');
11
11
  var client = require('react-dom/client');
12
- var constants = require('./chunk-Bmjmsp-E.cjs.js');
12
+ var constants = require('./chunk-BNUTjVYA.cjs.js');
13
13
  var injectCss = require('./chunk-B6qYtOJe.cjs.js');
14
14
  require('@bigbinary/neeto-cist');
15
- require('./chunk-CNIzgxEP.cjs.js');
15
+ require('./chunk-D1iu346F.cjs.js');
16
16
  var index$1 = require('./chunk-CesnwG-V.cjs.js');
17
17
  var common = require('./chunk-BKvkHB8E.cjs.js');
18
18
  var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
@@ -18,7 +18,7 @@ require('@bigbinary/neeto-commons-frontend/react-utils');
18
18
  require('zustand');
19
19
  require('classnames');
20
20
  require('@bigbinary/neetoui/Label');
21
- require('./chunk-Bmjmsp-E.cjs.js');
21
+ require('./chunk-BNUTjVYA.cjs.js');
22
22
  require('./chunk-DxXc6tiG.cjs.js');
23
23
  require('./chunk-BKvkHB8E.cjs.js');
24
24
  require('./chunk-BJu3ubxk.cjs.js');
@@ -28,13 +28,13 @@ require('@babel/runtime/regenerator');
28
28
  require('@tanstack/react-query');
29
29
  require('yjs');
30
30
  require('./chunk-B6qYtOJe.cjs.js');
31
- require('./chunk-D7p10rIr.cjs.js');
32
- require('./chunk-CNIzgxEP.cjs.js');
31
+ require('./chunk-BuuzKD6e.cjs.js');
32
+ require('./chunk-D1iu346F.cjs.js');
33
33
  require('i18next');
34
34
  require('yup');
35
35
  require('react-dom/server');
36
36
  require('@bigbinary/neeto-icons/misc/Megaphone');
37
- require('./chunk-BlWQNLLE.cjs.js');
37
+ require('./chunk-C98N-sIR.cjs.js');
38
38
  require('@bigbinary/neeto-icons/TextH1');
39
39
  require('@bigbinary/neeto-icons/TextH2');
40
40
  require('@bigbinary/neeto-icons/TextH3');
@@ -84,7 +84,7 @@ require('@bigbinary/neetoui/Modal');
84
84
  require('@bigbinary/neetoui/Tab');
85
85
  require('@bigbinary/neetoui/Toastr');
86
86
  require('./chunk-D3Unocnm.cjs.js');
87
- require('./chunk-cwORbcv3.cjs.js');
87
+ require('./chunk-CtTb6u9F.cjs.js');
88
88
  require('zustand/shallow');
89
89
  require('@bigbinary/neeto-icons/LeftAlign');
90
90
  require('@bigbinary/neeto-icons/CenterAlign');
@@ -132,7 +132,7 @@ require('@bigbinary/neeto-icons/MergeSplit');
132
132
  require('@bigbinary/neeto-icons/ToggleHeaderRow');
133
133
  require('@bigbinary/neeto-icons/Edit');
134
134
  require('@bigbinary/neeto-icons/Articles');
135
- require('./chunk-B2NfgecV.cjs.js');
135
+ require('./chunk-CUiAHc9-.cjs.js');
136
136
  require('@bigbinary/neeto-commons-frontend/react-utils/useOnClickOutside');
137
137
  require('@bigbinary/neeto-icons/MenuVertical');
138
138
  require('@bigbinary/neetoui/Alert');
@@ -5,8 +5,8 @@ require('@babel/runtime/helpers/toConsumableArray');
5
5
  require('@babel/runtime/helpers/slicedToArray');
6
6
  require('react');
7
7
  require('ramda');
8
- var Menu = require('./chunk-BlWQNLLE.cjs.js');
9
- require('./chunk-CNIzgxEP.cjs.js');
8
+ var Menu = require('./chunk-C98N-sIR.cjs.js');
9
+ require('./chunk-D1iu346F.cjs.js');
10
10
  require('react/jsx-runtime');
11
11
  require('./chunk-B6qYtOJe.cjs.js');
12
12
  require('i18next');
@@ -24,7 +24,7 @@ require('@bigbinary/neeto-commons-frontend/react-utils');
24
24
  require('zustand');
25
25
  require('classnames');
26
26
  require('@bigbinary/neeto-cist');
27
- require('./chunk-Bmjmsp-E.cjs.js');
27
+ require('./chunk-BNUTjVYA.cjs.js');
28
28
  require('@bigbinary/neeto-icons/Link');
29
29
  require('@bigbinary/neeto-icons/Column');
30
30
  require('@bigbinary/neeto-icons/Down');
@@ -32,7 +32,7 @@ require('@bigbinary/neetoui/Dropdown');
32
32
  require('react-i18next');
33
33
  require('@bigbinary/neeto-icons/Close');
34
34
  require('@bigbinary/neetoui/Button');
35
- require('./chunk-D7p10rIr.cjs.js');
35
+ require('./chunk-BuuzKD6e.cjs.js');
36
36
  require('@bigbinary/neeto-commons-frontend/utils');
37
37
  require('@bigbinary/neeto-icons/Check');
38
38
  require('@bigbinary/neetoui/Label');
@@ -74,7 +74,7 @@ require('@bigbinary/neetoui/Tab');
74
74
  require('@bigbinary/neetoui/Toastr');
75
75
  require('./chunk-D3Unocnm.cjs.js');
76
76
  require('./chunk-BJu3ubxk.cjs.js');
77
- require('./chunk-cwORbcv3.cjs.js');
77
+ require('./chunk-CtTb6u9F.cjs.js');
78
78
  require('zustand/shallow');
79
79
  require('@bigbinary/neeto-icons/LeftAlign');
80
80
  require('@bigbinary/neeto-icons/CenterAlign');
@@ -41,8 +41,10 @@ var EDITOR_OPTIONS = {
41
41
  var DIRECT_UPLOAD_ENDPOINT = "/api/direct_uploads";
42
42
  var URL_REGEXP = /[(http(s)?)://(www.)?a-zA-Z0-9@:%._+~#=]{1,256}\.[a-z]{1,63}\b([-a-zA-Z0-9@:%_+.~#?&//=]*)/;
43
43
 
44
- // HTTP/HTTPS/FTP with :// or Non-slash protocols like mailto:, tel: or Domain without protocol
45
- var ALL_PROTOCOL_URL_REGEXP = /^[a-zA-Z]\w*:\/\/[a-zA-Z0-9@:%._+~#=-]{1,256}\.[a-z]{1,63}\b([-a-zA-Z0-9@:%_+.~#?&//=]*)|^[a-zA-Z]\w*:[^//][a-zA-Z0-9@:%._+~#=?&-]*|^[a-zA-Z0-9@:%._+~#=-]{1,256}\.[a-z]{1,63}\b([-a-zA-Z0-9@:%_+.~#?&//=]*)/i;
44
+ // HTTP/HTTPS/FTP with :// or Non-slash protocols like mailto:, tel: or Host without
45
+ // protocol. The host can be a domain name, an IPv4 address, a bracketed IPv6 address
46
+ // or localhost, each optionally followed by a port.
47
+ var ALL_PROTOCOL_URL_REGEXP = /^[a-zA-Z]\w*:\/\/(?:[a-zA-Z0-9@:%._+~#=-]{1,256}\.[a-z]{1,63}\b|(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}|\[(?:[0-9a-fA-F]{1,4}(?::[0-9a-fA-F]{1,4}|:){1,7}|::[0-9a-fA-F:.]*)\]|localhost)(?::\d+)?([-a-zA-Z0-9@:%_+.~#?&//=]*)|^[a-zA-Z]\w*:[^//][a-zA-Z0-9@:%._+~#=?&-]*|^(?:[a-zA-Z0-9@:%._+~#=-]{1,256}\.[a-z]{1,63}\b|(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}|\[(?:[0-9a-fA-F]{1,4}(?::[0-9a-fA-F]{1,4}|:){1,7}|::[0-9a-fA-F:.]*)\]|localhost)(?::\d+)?([-a-zA-Z0-9@:%_+.~#?&//=]*)/i;
46
48
  var YOUTUBE_URL_REGEXP = /^((?:https?:)?\/\/)?((?:www|m)\.)?((?:youtube\.com|youtu.be))(\/(?:[\w-]+\?v=|embed\/|v\/)?)([\w-]+)(\S*?)(\?[^#]*)?$/;
47
49
  var VIMEO_URL_REGEXP = /((?:http|https):\/\/)?(www\.|player\.)?vimeo\.com\/(?:channels\/(?:\w+\/)?|groups\/([^/]*)\/videos\/|(?:manage\/)?videos?\/|)(\d+)(?:(?:\/|\?h=)(\w+))?(?:|\/\?)(\?[^#]*)?/;
48
50
  var LOOM_URL_REGEXP = /((?:http|https):\/\/)?(www\.)?loom\.com\/(share|embed)\/([a-f0-9]{32})(?:\?sid=([a-f0-9-]{36}))?(?:\?t=(\d+))?(\?[^#]*)?/;
@@ -94,4 +96,4 @@ exports.EDITOR_OPTIONS = EDITOR_OPTIONS;
94
96
  exports.EDITOR_SIZES = EDITOR_SIZES;
95
97
  exports.URL_REGEXP = URL_REGEXP;
96
98
  exports.URL_VALIDATORS = URL_VALIDATORS;
97
- //# sourceMappingURL=chunk-Bmjmsp-E.cjs.js.map
99
+ //# sourceMappingURL=chunk-BNUTjVYA.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunk-BNUTjVYA.cjs.js","sources":["../../app/javascript/src/common/constants.js"],"sourcesContent":["import { pluck } from \"ramda\";\n\nexport const EDITOR_OPTIONS = {\n // DEFAULT EDITOR OPTIONS\n BOLD: \"bold\",\n ITALIC: \"italic\",\n UNDERLINE: \"underline\",\n STRIKETHROUGH: \"strike\",\n LINK: \"link\",\n PARAGRAPH: \"paragraph\",\n H1: \"h1\",\n H2: \"h2\",\n H3: \"h3\",\n H4: \"h4\",\n H5: \"h5\",\n H6: \"h6\",\n LIST_BULLETS: \"bullet-list\",\n LIST_ORDERED: \"ordered-list\",\n CODE: \"code\",\n\n // ADDON EDITOR OPTIONS\n CODE_BLOCK: \"code-block\",\n BLOCKQUOTE: \"block-quote\",\n CALLOUT: \"callout\",\n ATTACHMENTS: \"attachments\",\n TODO_LIST: \"todo-list\",\n UNDO: \"undo\",\n REDO: \"redo\",\n HIGHLIGHT: \"highlight\",\n EMOJI: \"emoji\",\n IMAGE_UPLOAD: \"image-upload\",\n IMAGE_UPLOAD_UNSPLASH: \"image-upload-unsplash\",\n VIDEO_UPLOAD: \"video-upload\",\n DIVIDER: \"divider\",\n PASTE_UNFORMATTED: \"paste-unformatted\",\n TABLE: \"table\",\n TEXT_COLOR: \"text-color\",\n NEETO_KB_ARTICLE: \"neeto-kb-article\",\n};\n\nexport const UNSPLASH_BASE_URL = \"https://api.unsplash.com/search/photos\";\n\nexport const DIRECT_UPLOAD_ENDPOINT = \"/api/direct_uploads\";\n\nexport const URL_REGEXP =\n /[(http(s)?)://(www.)?a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-z]{1,63}\\b([-a-zA-Z0-9@:%_+.~#?&//=]*)/;\n\n// HTTP/HTTPS/FTP with :// or Non-slash protocols like mailto:, tel: or Host without\n// protocol. The host can be a domain name, an IPv4 address, a bracketed IPv6 address\n// or localhost, each optionally followed by a port.\nexport const ALL_PROTOCOL_URL_REGEXP =\n /^[a-zA-Z]\\w*:\\/\\/(?:[a-zA-Z0-9@:%._+~#=-]{1,256}\\.[a-z]{1,63}\\b|(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}|\\[(?:[0-9a-fA-F]{1,4}(?::[0-9a-fA-F]{1,4}|:){1,7}|::[0-9a-fA-F:.]*)\\]|localhost)(?::\\d+)?([-a-zA-Z0-9@:%_+.~#?&//=]*)|^[a-zA-Z]\\w*:[^//][a-zA-Z0-9@:%._+~#=?&-]*|^(?:[a-zA-Z0-9@:%._+~#=-]{1,256}\\.[a-z]{1,63}\\b|(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}|\\[(?:[0-9a-fA-F]{1,4}(?::[0-9a-fA-F]{1,4}|:){1,7}|::[0-9a-fA-F:.]*)\\]|localhost)(?::\\d+)?([-a-zA-Z0-9@:%_+.~#?&//=]*)/i;\n\nexport const YOUTUBE_URL_REGEXP =\n /^((?:https?:)?\\/\\/)?((?:www|m)\\.)?((?:youtube\\.com|youtu.be))(\\/(?:[\\w-]+\\?v=|embed\\/|v\\/)?)([\\w-]+)(\\S*?)(\\?[^#]*)?$/;\n\nexport const VIMEO_URL_REGEXP =\n /((?:http|https):\\/\\/)?(www\\.|player\\.)?vimeo\\.com\\/(?:channels\\/(?:\\w+\\/)?|groups\\/([^/]*)\\/videos\\/|(?:manage\\/)?videos?\\/|)(\\d+)(?:(?:\\/|\\?h=)(\\w+))?(?:|\\/\\?)(\\?[^#]*)?/;\n\nexport const LOOM_URL_REGEXP =\n /((?:http|https):\\/\\/)?(www\\.)?loom\\.com\\/(share|embed)\\/([a-f0-9]{32})(?:\\?sid=([a-f0-9-]{36}))?(?:\\?t=(\\d+))?(\\?[^#]*)?/;\n\nexport const NEETO_RECORD_URL_REGEXP =\n /((?:http|https):\\/\\/)?(www\\.)?[a-zA-Z0-9-]+\\.(neetorecord\\.com)\\/(watch)\\/([^/\\s?#]+)/;\n\nexport const NEETO_RECORD_CUSTOM_DOMAIN_URL_REGEXP =\n /((?:http|https):\\/\\/)?(www\\.)?(\\w+(?:[\\w-]*\\w)?(?:\\.\\w+(?:[\\w-]*\\w)?)+)\\/(watch)\\/([^/\\s?#]+)/;\n\nexport const SUPA_DEMO_URL_REGEXP =\n /((?:http|https):\\/\\/)?(www\\.)?([a-zA-Z0-9-]+)\\.([a-zA-Z0-9-]+\\.[a-zA-Z0-9-]+)\\/(demo|embed)\\/([0-9a-z]+)/;\n\nexport const TWITTER_URL_REGEXP =\n /((?:http|https):\\/\\/)?(www\\.|mobile\\.)?(twitter\\.com|x\\.com)\\/(?:#!\\/)?(\\w+)\\/status(?:es)?\\/(\\d+)(?:\\?[^#]*)?/;\n\nexport const COMBINED_REGEX = new RegExp(\n pluck(\"source\", [\n YOUTUBE_URL_REGEXP,\n VIMEO_URL_REGEXP,\n LOOM_URL_REGEXP,\n NEETO_RECORD_URL_REGEXP,\n NEETO_RECORD_CUSTOM_DOMAIN_URL_REGEXP,\n SUPA_DEMO_URL_REGEXP,\n TWITTER_URL_REGEXP,\n ]).join(\"|\"),\n \"g\"\n);\n\nexport const URL_VALIDATORS = {\n youtube: url => {\n const match = url.match(YOUTUBE_URL_REGEXP);\n\n return match && `https://www.youtube.com/embed/${match[5]}`;\n },\n vimeo: url => {\n const match = url.match(VIMEO_URL_REGEXP);\n\n return match && `https://player.vimeo.com/video/${match[4]}?h=${match[5]}`;\n },\n loom: url => {\n const match = url.match(LOOM_URL_REGEXP);\n\n return (\n match && `https://www.loom.com/embed/${match[4]}?t=${match[5] || \"\"}`\n );\n },\n neetoRecord: url => {\n const match = url.match(NEETO_RECORD_URL_REGEXP);\n\n return match && url.replace(\"watch\", \"embeds\");\n },\n neetoRecordCustom: url => {\n const match = url.match(NEETO_RECORD_CUSTOM_DOMAIN_URL_REGEXP);\n\n return match && url.replace(\"watch\", \"embeds\");\n },\n supademo: url => {\n const match = url.match(SUPA_DEMO_URL_REGEXP);\n\n return (\n match && `https://${match[3]}.${match[4]}/embed/${match[6]}?embed_v=2`\n );\n },\n twitter: url => {\n const match = url.match(TWITTER_URL_REGEXP);\n\n return (\n match && `https://platform.twitter.com/embed/Tweet.html?id=${match[5]}`\n );\n },\n};\n\nexport const EDITOR_SIZES = {\n MEDIUM: \"medium\",\n LARGE: \"large\",\n SMALL: \"small\",\n};\n"],"names":["EDITOR_OPTIONS","BOLD","ITALIC","UNDERLINE","STRIKETHROUGH","LINK","PARAGRAPH","H1","H2","H3","H4","H5","H6","LIST_BULLETS","LIST_ORDERED","CODE","CODE_BLOCK","BLOCKQUOTE","CALLOUT","ATTACHMENTS","TODO_LIST","UNDO","REDO","HIGHLIGHT","EMOJI","IMAGE_UPLOAD","IMAGE_UPLOAD_UNSPLASH","VIDEO_UPLOAD","DIVIDER","PASTE_UNFORMATTED","TABLE","TEXT_COLOR","NEETO_KB_ARTICLE","DIRECT_UPLOAD_ENDPOINT","URL_REGEXP","ALL_PROTOCOL_URL_REGEXP","YOUTUBE_URL_REGEXP","VIMEO_URL_REGEXP","LOOM_URL_REGEXP","NEETO_RECORD_URL_REGEXP","NEETO_RECORD_CUSTOM_DOMAIN_URL_REGEXP","SUPA_DEMO_URL_REGEXP","TWITTER_URL_REGEXP","COMBINED_REGEX","RegExp","pluck","join","URL_VALIDATORS","youtube","url","match","concat","vimeo","loom","neetoRecord","replace","neetoRecordCustom","supademo","twitter","EDITOR_SIZES","MEDIUM","LARGE","SMALL"],"mappings":"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"}
@@ -12,7 +12,7 @@ var neetoCist = require('@bigbinary/neeto-cist');
12
12
  var ramda = require('ramda');
13
13
  var reactI18next = require('react-i18next');
14
14
  var reactFileIcon_esm = require('./chunk-D3Unocnm.cjs.js');
15
- var FileIcon = require('./chunk-D6ygkQBu.cjs.js');
15
+ var FileIcon = require('./chunk-R9zpTo5i.cjs.js');
16
16
  var lucideReact = require('lucide-react');
17
17
  var useOnClickOutside = require('@bigbinary/neeto-commons-frontend/v2/react-utils/useOnClickOutside');
18
18
  var utils = require('@bigbinary/neeto-commons-frontend/v2/utils');
@@ -394,7 +394,7 @@ var AttachmentProgress = function AttachmentProgress(_ref) {
394
394
  };
395
395
 
396
396
  var Preview = /*#__PURE__*/React.lazy(function () {
397
- return Promise.resolve().then(function () { return require('./chunk-CCCSexAh.cjs.js'); });
397
+ return Promise.resolve().then(function () { return require('./chunk-Cgxhrpuh.cjs.js'); });
398
398
  });
399
399
  var Attachments$1 = function Attachments(_ref, ref) {
400
400
  var _fileUploadConfig$all;
@@ -566,4 +566,4 @@ var Attachments = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(Attachme
566
566
  exports.Attachments = Attachments;
567
567
  exports.checkPreviewAvailability = checkPreviewAvailability;
568
568
  exports.downloadFile = downloadFile;
569
- //# sourceMappingURL=chunk-MxWVMW6e.cjs.js.map
569
+ //# sourceMappingURL=chunk-Bmd6d-x7.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunk-MxWVMW6e.cjs.js","sources":["../../app/javascript/src/v2/components/Attachments/utils.js","../../app/javascript/src/v2/components/Attachments/Attachment.jsx","../../app/javascript/src/v2/components/Attachments/AttachmentProgress.jsx","../../app/javascript/src/v2/components/Attachments/index.jsx"],"sourcesContent":["import { Toastr } from \"@bigbinary/neeto-atoms\";\nimport { mergeRight } from \"ramda\";\n\nimport { DEFAULT_FILE_UPLOAD_CONFIG } from \"./constants\";\n\nexport const buildFileUploadConfig = config =>\n mergeRight(DEFAULT_FILE_UPLOAD_CONFIG, config);\n\nexport const downloadFile = async (fileUrl, filename) => {\n try {\n const response = await fetch(fileUrl);\n const blob = await response.blob();\n const blobUrl = URL.createObjectURL(blob);\n\n const a = document.createElement(\"a\");\n a.href = blobUrl;\n a.setAttribute(\"download\", filename);\n a.style.display = \"none\";\n document.body.appendChild(a);\n\n a.click();\n\n document.body.removeChild(a);\n URL.revokeObjectURL(blobUrl);\n } catch (error) {\n Toastr.error(error);\n }\n};\n\nexport const checkPreviewAvailability = (contentType, previewUrl = null) =>\n contentType &&\n (contentType.startsWith(\"video/\") ||\n contentType === \"application/pdf\" ||\n contentType === \"image/jpeg\" ||\n contentType === \"image/gif\" ||\n contentType === \"image/png\" ||\n contentType === \"image/webp\" ||\n contentType === \"text/plain\" ||\n (!!previewUrl &&\n (contentType === \"image/heic\" || contentType === \"image/heif\")) ||\n contentType === \"image/bmp\" ||\n contentType === \"application/msword\" ||\n contentType ===\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\" ||\n contentType === \"image/jpg\" ||\n contentType === \"application/vnd.ms-powerpoint\" ||\n contentType ===\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\" ||\n contentType === \"image/tiff\" ||\n contentType === \"application/vnd.ms-excel\" ||\n contentType ===\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\");\n","import { useState, useRef } from \"react\";\n\nimport {\n Alert,\n Button,\n DropdownMenu,\n Input,\n Spinner,\n Toastr,\n Tooltip,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { Check, EllipsisVertical, X } from \"lucide-react\";\nimport { removeBy } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/v2/react-utils/useOnClickOutside\";\nimport { withEventTargetValue } from \"neetocommons/v2/utils\";\nimport { isEmpty, assoc } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport directUploadsApi from \"apis/direct_uploads\";\nimport FileIcon from \"src/v2/components/Common/FileIcon\";\n\nimport { ATTACHMENT_OPTIONS } from \"./constants\";\nimport { downloadFile } from \"./utils\";\n\nconst { Menu, MenuItem } = DropdownMenu;\n\nconst Attachment = ({\n attachment,\n attachments,\n disabled,\n onChange,\n setSelectedAttachment,\n isLoading,\n allowDelete,\n allowOpenInNewTab,\n}) => {\n const { t } = useTranslation();\n\n const [isRenaming, setIsRenaming] = useState(false);\n const [isUpdating, setIsUpdating] = useState(false);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isDeleting, setIsDeleting] = useState(false);\n const [newFilename, setNewFilename] = useState(\"\");\n\n const renameRef = useRef(null);\n\n useOnClickOutside(renameRef, () => {\n if (!isRenaming) return;\n setIsRenaming(false);\n setNewFilename(\"\");\n });\n\n const handleDownload = () =>\n downloadFile(attachment.url, attachment.filename);\n\n const handleOpenInNewTab = () =>\n window.open(attachment.url, \"_blank\", \"noopener,noreferrer\");\n\n const handleRename = async () => {\n try {\n setIsUpdating(true);\n const { signedId } = attachment;\n const payload = { blob: { filename: newFilename } };\n\n const response = await directUploadsApi.update({ signedId, payload });\n const filename = response.data?.blob?.filename || response.blob.filename;\n\n onChange(\n attachments.map(attachment =>\n attachment.signedId === signedId\n ? assoc(\"filename\", filename, attachment)\n : attachment\n )\n );\n } catch (error) {\n Toastr.error(error);\n } finally {\n setIsRenaming(false);\n setIsUpdating(false);\n setNewFilename(\"\");\n }\n };\n\n const handleDelete = async () => {\n if (!allowDelete) return;\n\n setIsDeleting(true);\n try {\n const { signedId } = attachment;\n await directUploadsApi.destroy(signedId);\n onChange(removeBy({ signedId }, attachments));\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n const handlers = {\n ...(allowOpenInNewTab && {\n [ATTACHMENT_OPTIONS.OPEN_IN_NEW_TAB]: handleOpenInNewTab,\n }),\n [ATTACHMENT_OPTIONS.DOWNLOAD]: handleDownload,\n [ATTACHMENT_OPTIONS.RENAME]: handleRename,\n ...(allowDelete && { [ATTACHMENT_OPTIONS.DELETE]: handleDelete }),\n };\n\n const onMenuItemClick = ({ key, handler }) => {\n if (key === ATTACHMENT_OPTIONS.RENAME) {\n setIsRenaming(true);\n setNewFilename(attachment.filename);\n } else if (key === ATTACHMENT_OPTIONS.DELETE) {\n setNewFilename(attachment.filename);\n setIsDeleteAlertOpen(true);\n } else {\n handler();\n }\n };\n\n const handleKeyDown = ({ event, key }) => {\n const handler = handlers[key];\n\n if (event.key === \"Enter\" && handler && !isEmpty(newFilename)) {\n event.stopPropagation();\n event.preventDefault();\n handler();\n }\n\n if (event.key === \"Escape\") {\n setIsRenaming(false);\n setNewFilename(\"\");\n }\n };\n\n return (\n <>\n <div\n className=\"ne-attachments__preview\"\n data-testid=\"ne-attachments-wrapper\"\n >\n {isRenaming ? (\n <div ref={renameRef}>\n <Tooltip content={newFilename} position=\"top\">\n <Input\n autoFocus\n data-testid=\"neeto-editor-preview-rename-input\"\n size=\"small\"\n value={newFilename}\n error={\n isEmpty(newFilename)\n ? t(\"neetoEditor.attachments.nameEmpty\")\n : \"\"\n }\n suffix={\n <div className=\"flex items-center justify-end\">\n <Button\n data-testid=\"neeto-editor-preview-rename-submit-button\"\n disabled={isEmpty(newFilename) || isUpdating}\n icon={Check}\n loading={isUpdating}\n size=\"sm\"\n variant=\"ghost\"\n onClick={handleRename}\n />\n <Button\n data-testid=\"neeto-editor-preview-rename-cancel-button\"\n disabled={isUpdating}\n icon={X}\n size=\"sm\"\n variant=\"ghost\"\n onClick={() => {\n setIsRenaming(false);\n setNewFilename(\"\");\n }}\n />\n </div>\n }\n onChange={withEventTargetValue(setNewFilename)}\n onKeyDown={event =>\n handleKeyDown({\n event,\n key: ATTACHMENT_OPTIONS.RENAME,\n })\n }\n />\n </Tooltip>\n </div>\n ) : (\n <>\n <div\n className=\"ne-attachments__preview-wrapper\"\n onClick={() => setSelectedAttachment(attachment)}\n >\n <FileIcon\n className=\"ne-attachments__preview-wrapper__icon\"\n fileName={attachment.filename}\n />\n <Tooltip content={attachment.filename} position=\"top\">\n <Typography variant=\"body2\">{attachment.filename}</Typography>\n </Tooltip>\n {isLoading && <Spinner className=\"attachment-button-loader\" />}\n </div>\n <Tooltip\n content={t(\"neetoEditor.attachments.actionsBlocked\")}\n disabled={!disabled}\n position=\"top\"\n >\n <DropdownMenu\n {...{ disabled }}\n // neeto-atoms's default rich trigger always appends a\n // ChevronDown as trailing icon. For an ellipsis \"more\n // actions\" button the ellipsis itself signals a menu —\n // use customTarget to render the icon-only button without\n // the redundant chevron.\n dropdownProps={{ className: \"ne-editor-dropdown\" }}\n customTarget={\n <Button\n {...{ disabled }}\n data-testid=\"neeto-editor-attachment-actions\"\n icon={EllipsisVertical}\n size=\"sm\"\n variant=\"ghost\"\n />\n }\n >\n <Menu>\n {Object.entries(handlers).map(([label, handler]) => (\n <MenuItem\n data-testid={`neeto-editor-preview-${label.toLowerCase()}-button`}\n key={label}\n onClick={() => onMenuItemClick({ key: label, handler })}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n </DropdownMenu>\n </Tooltip>\n </>\n )}\n </div>\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n style=\"danger\"\n submitButtonLabel={t(\"neetoEditor.menu.delete\")}\n title={t(\"neetoEditor.attachments.deleteTitle\")}\n message={\n <Trans\n i18nKey=\"neetoEditor.attachments.deleteConfirmation\"\n values={{ entity: newFilename }}\n />\n }\n onClose={() => setIsDeleteAlertOpen(false)}\n onSubmit={handleDelete}\n />\n </>\n );\n};\n\nexport default Attachment;\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { X } from \"lucide-react\";\nimport { FileIcon } from \"react-file-icon\";\n\nconst AttachmentProgress = ({ attachment, cancelUpload }) => {\n const progressPercentage = `${attachment.progress ?? 0}%`;\n\n const handleCancel = () => {\n cancelUpload(attachment.id);\n };\n\n return (\n <div className=\"ne-attachments__preview\">\n <div className=\"ne-attachments__preview__progress-icon\">\n <FileIcon />\n </div>\n <div className=\"ne-attachments__preview__progress\">\n <Typography variant=\"body2\">{attachment.filename}</Typography>\n <Typography variant=\"body2\">{progressPercentage}</Typography>\n </div>\n <Button\n data-testid=\"neeto-editor-preview-upload-cancel-button\"\n icon={X}\n size=\"sm\"\n variant=\"ghost\"\n onClick={handleCancel}\n />\n </div>\n );\n};\n\nexport default AttachmentProgress;\n","import {\n forwardRef,\n useRef,\n useState,\n useImperativeHandle,\n lazy,\n Suspense,\n useMemo,\n memo,\n} from \"react\";\n\nimport { Button, Toastr } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { isNotEmpty, isPresent, noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useDropFiles from \"hooks/useDropFiles\";\nimport useFileUploader from \"src/v2/hooks/useFileUploader\";\n\nimport Attachment from \"./Attachment\";\nimport AttachmentProgress from \"./AttachmentProgress\";\nimport { buildFileUploadConfig } from \"./utils\";\n\nconst Preview = lazy(() => import(\"./Preview\"));\n\nconst Attachments = (\n {\n attachments = [],\n className = \"\",\n onChange = noop,\n isIndependent = true,\n disabled = false,\n dragDropRef = null,\n config = {},\n setIsUploading = noop,\n allowDelete = true,\n allowOpenInNewTab = true,\n },\n ref\n) => {\n const { t } = useTranslation();\n\n const [selectedAttachment, setSelectedAttachment] = useState({});\n const [didFetchPreviewBundle, setDidFetchPreviewBundle] = useState(false);\n\n const attachmentInputRef = useRef(null);\n\n const fileUploadConfig = useMemo(\n () => buildFileUploadConfig(config),\n [config]\n );\n\n const { addFiles, uploadFiles, queuedFiles, cancelUpload, isUploading } =\n useFileUploader({\n config: fileUploadConfig,\n setIsUploadingOnHost: setIsUploading,\n attachments,\n });\n\n const handleAddFile = async event => {\n addFiles(event.target.files);\n const uploadedFiles = await uploadFiles();\n isNotEmpty(uploadedFiles) && onChange([...attachments, ...uploadedFiles]);\n attachmentInputRef.current.value = null;\n };\n\n const handleUploadAttachments = () => attachmentInputRef.current.click();\n\n const handleFileInputClick = event => {\n if (!(!isEmpty(attachments) && fileUploadConfig.maxNumberOfFiles === 1)) {\n return;\n }\n event.preventDefault();\n Toastr.warning(t(\"neetoEditor.attachments.oneAttachmentAllowed\"));\n };\n\n useImperativeHandle(ref, () => ({ handleUploadAttachments }), []);\n\n const handleFilesDrop = async files => {\n addFiles(files);\n const uploadedFiles = await uploadFiles();\n isNotEmpty(uploadedFiles) && onChange([...attachments, ...uploadedFiles]);\n };\n\n useDropFiles({\n dropTargetRef: dragDropRef,\n attachments,\n onDrop: handleFilesDrop,\n });\n\n return (\n <div className={classnames(\"ne-attachments\", { [className]: className })}>\n <div className=\"ne-attachments__items\">\n {attachments.map(attachment => (\n <Attachment\n {...{\n allowDelete,\n allowOpenInNewTab,\n attachment,\n attachments,\n disabled,\n onChange,\n setSelectedAttachment,\n }}\n key={attachment.signedId}\n isLoading={\n !didFetchPreviewBundle &&\n selectedAttachment.url === attachment.url\n }\n />\n ))}\n {queuedFiles.map(attachment => (\n <AttachmentProgress\n {...{ attachment, cancelUpload }}\n key={attachment.id}\n />\n ))}\n </div>\n <div>\n {isIndependent && (\n <Button\n data-testid=\"neeto-editor-attachments-upload-button\"\n disabled={isUploading}\n label={t(\"neetoEditor.attachments.add\")}\n loading={isUploading}\n variant=\"link\"\n onClick={handleUploadAttachments}\n />\n )}\n <input\n accept={fileUploadConfig.allowedFileTypes?.join(\",\")}\n multiple={fileUploadConfig.maxNumberOfFiles !== 1}\n ref={attachmentInputRef}\n type=\"file\"\n onChange={handleAddFile}\n onClick={handleFileInputClick}\n />\n <Suspense fallback={<span />}>\n {isPresent(selectedAttachment) && (\n <Preview\n {...{\n attachments,\n selectedAttachment,\n setDidFetchPreviewBundle,\n setSelectedAttachment,\n }}\n onClose={() => setSelectedAttachment({})}\n />\n )}\n </Suspense>\n </div>\n </div>\n );\n};\n\nAttachments.displayName = \"NeetoEditorAttachments\";\n\nexport default memo(forwardRef(Attachments));\n"],"names":["buildFileUploadConfig","config","mergeRight","DEFAULT_FILE_UPLOAD_CONFIG","downloadFile","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","fileUrl","filename","response","blob","blobUrl","a","wrap","_callee$","_context","prev","next","fetch","sent","URL","createObjectURL","document","createElement","href","setAttribute","style","display","body","appendChild","click","removeChild","revokeObjectURL","t0","Toastr","error","stop","_x","_x2","apply","arguments","checkPreviewAvailability","contentType","previewUrl","length","undefined","startsWith","Menu","DropdownMenu","MenuItem","Attachment","attachment","attachments","disabled","onChange","setSelectedAttachment","isLoading","allowDelete","allowOpenInNewTab","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isRenaming","setIsRenaming","_useState3","_useState4","isUpdating","setIsUpdating","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isDeleting","setIsDeleting","_useState9","_useState0","newFilename","setNewFilename","renameRef","useRef","useOnClickOutside","handleDownload","url","handleOpenInNewTab","window","open","handleRename","_ref2","_response$data","signedId","payload","directUploadsApi","update","data","map","assoc","finish","handleDelete","_ref3","_callee2","_callee2$","_context2","abrupt","destroy","removeBy","handlers","_objectSpread","_defineProperty","ATTACHMENT_OPTIONS","OPEN_IN_NEW_TAB","DOWNLOAD","RENAME","DELETE","onMenuItemClick","_ref6","key","handler","handleKeyDown","_ref7","event","isEmpty","stopPropagation","preventDefault","_jsxs","_Fragment","children","_jsx","className","ref","Tooltip","content","position","Input","autoFocus","size","value","suffix","Button","icon","Check","loading","variant","onClick","X","withEventTargetValue","onKeyDown","FileIcon","fileName","Typography","Spinner","dropdownProps","customTarget","EllipsisVertical","Object","entries","_ref8","_ref9","label","concat","toLowerCase","Alert","isOpen","isSubmitting","submitButtonLabel","title","message","Trans","i18nKey","values","entity","onClose","onSubmit","AttachmentProgress","_attachment$progress","cancelUpload","progressPercentage","progress","handleCancel","id","Preview","lazy","Attachments","_fileUploadConfig$all","_ref$attachments","_ref$className","_ref$onChange","noop","_ref$isIndependent","isIndependent","_ref$disabled","_ref$dragDropRef","dragDropRef","_ref$config","_ref$setIsUploading","setIsUploading","_ref$allowDelete","_ref$allowOpenInNewTa","selectedAttachment","didFetchPreviewBundle","setDidFetchPreviewBundle","attachmentInputRef","fileUploadConfig","useMemo","_useFileUploader","useFileUploader","setIsUploadingOnHost","addFiles","uploadFiles","queuedFiles","isUploading","handleAddFile","uploadedFiles","target","files","isNotEmpty","_toConsumableArray","current","handleUploadAttachments","handleFileInputClick","maxNumberOfFiles","warning","useImperativeHandle","handleFilesDrop","useDropFiles","dropTargetRef","onDrop","classnames","_createElement","accept","allowedFileTypes","join","multiple","type","Suspense","fallback","isPresent","displayName","memo","forwardRef"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKO,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,MAAM,EAAA;AAAA,EAAA,OACzCC,gBAAU,CAACC,mCAA0B,EAAEF,MAAM,CAAC;AAAA,CAAA;IAEnCG,YAAY,gBAAA,YAAA;AAAA,EAAA,IAAAC,IAAA,GAAAC,kCAAA,cAAAC,oCAAA,CAAAC,IAAA,CAAG,SAAAC,OAAAA,CAAOC,OAAO,EAAEC,QAAQ,EAAA;AAAA,IAAA,IAAAC,QAAA,EAAAC,IAAA,EAAAC,OAAA,EAAAC,CAAA;AAAA,IAAA,OAAAR,oCAAA,CAAAS,IAAA,CAAA,SAAAC,SAAAC,QAAA,EAAA;AAAA,MAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;AAAA,QAAA,KAAA,CAAA;AAAAF,UAAAA,QAAA,CAAAC,IAAA,GAAA,CAAA;AAAAD,UAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;UAAA,OAEzBC,KAAK,CAACX,OAAO,CAAC;AAAA,QAAA,KAAA,CAAA;UAA/BE,QAAQ,GAAAM,QAAA,CAAAI,IAAA;AAAAJ,UAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;AAAA,UAAA,OACKR,QAAQ,CAACC,IAAI,EAAE;AAAA,QAAA,KAAA,CAAA;UAA5BA,IAAI,GAAAK,QAAA,CAAAI,IAAA;AACJR,UAAAA,OAAO,GAAGS,GAAG,CAACC,eAAe,CAACX,IAAI,CAAC;AAEnCE,UAAAA,CAAC,GAAGU,QAAQ,CAACC,aAAa,CAAC,GAAG,CAAC;UACrCX,CAAC,CAACY,IAAI,GAAGb,OAAO;AAChBC,UAAAA,CAAC,CAACa,YAAY,CAAC,UAAU,EAAEjB,QAAQ,CAAC;AACpCI,UAAAA,CAAC,CAACc,KAAK,CAACC,OAAO,GAAG,MAAM;AACxBL,UAAAA,QAAQ,CAACM,IAAI,CAACC,WAAW,CAACjB,CAAC,CAAC;UAE5BA,CAAC,CAACkB,KAAK,EAAE;AAETR,UAAAA,QAAQ,CAACM,IAAI,CAACG,WAAW,CAACnB,CAAC,CAAC;AAC5BQ,UAAAA,GAAG,CAACY,eAAe,CAACrB,OAAO,CAAC;AAACI,UAAAA,QAAA,CAAAE,IAAA,GAAA,EAAA;AAAA,UAAA;AAAA,QAAA,KAAA,EAAA;AAAAF,UAAAA,QAAA,CAAAC,IAAA,GAAA,EAAA;UAAAD,QAAA,CAAAkB,EAAA,GAAAlB,QAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA;AAE7BmB,UAAAA,iBAAM,CAACC,KAAK,CAAApB,QAAA,CAAAkB,EAAM,CAAC;AAAC,QAAA,KAAA,EAAA;AAAA,QAAA,KAAA,KAAA;UAAA,OAAAlB,QAAA,CAAAqB,IAAA,EAAA;AAAA;AAAA,IAAA,CAAA,EAAA9B,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA;EAAA,CAEvB,CAAA,CAAA;AAAA,EAAA,OAAA,SAnBYL,YAAYA,CAAAoC,EAAA,EAAAC,GAAA,EAAA;AAAA,IAAA,OAAApC,IAAA,CAAAqC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,EAAA,CAAA;AAAA,CAAA;IAqBZC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAIC,WAAW,EAAA;AAAA,EAAA,IAAEC,UAAU,GAAAH,SAAA,CAAAI,MAAA,GAAA,CAAA,IAAAJ,SAAA,CAAA,CAAA,CAAA,KAAAK,SAAA,GAAAL,SAAA,CAAA,CAAA,CAAA,GAAG,IAAI;AAAA,EAAA,OACrEE,WAAW,KACVA,WAAW,CAACI,UAAU,CAAC,QAAQ,CAAC,IAC/BJ,WAAW,KAAK,iBAAiB,IACjCA,WAAW,KAAK,YAAY,IAC5BA,WAAW,KAAK,WAAW,IAC3BA,WAAW,KAAK,WAAW,IAC3BA,WAAW,KAAK,YAAY,IAC5BA,WAAW,KAAK,YAAY,IAC3B,CAAC,CAACC,UAAU,KACVD,WAAW,KAAK,YAAY,IAAIA,WAAW,KAAK,YAAY,CAAE,IACjEA,WAAW,KAAK,WAAW,IAC3BA,WAAW,KAAK,oBAAoB,IACpCA,WAAW,KACT,yEAAyE,IAC3EA,WAAW,KAAK,WAAW,IAC3BA,WAAW,KAAK,+BAA+B,IAC/CA,WAAW,KACT,2EAA2E,IAC7EA,WAAW,KAAK,YAAY,IAC5BA,WAAW,KAAK,0BAA0B,IAC1CA,WAAW,KACT,mEAAmE,CAAC;AAAA;;;;AC1B1E,IAAQK,IAAI,GAAeC,uBAAY,CAA/BD,IAAI;EAAEE,QAAQ,GAAKD,uBAAY,CAAzBC,QAAQ;AAEtB,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAAhD,IAAA,EASV;AAAA,EAAA,IARJiD,UAAU,GAAAjD,IAAA,CAAViD,UAAU;IACVC,WAAW,GAAAlD,IAAA,CAAXkD,WAAW;IACXC,QAAQ,GAAAnD,IAAA,CAARmD,QAAQ;IACRC,QAAQ,GAAApD,IAAA,CAARoD,QAAQ;IACRC,qBAAqB,GAAArD,IAAA,CAArBqD,qBAAqB;IACrBC,SAAS,GAAAtD,IAAA,CAATsD,SAAS;IACTC,WAAW,GAAAvD,IAAA,CAAXuD,WAAW;IACXC,iBAAiB,GAAAxD,IAAA,CAAjBwD,iBAAiB;AAEjB,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAAC,SAAA,GAAoCC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,+BAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA5CI,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,aAAa,GAAAH,UAAA,CAAA,CAAA,CAAA;AAChC,EAAA,IAAAI,UAAA,GAAoCL,cAAQ,CAAC,KAAK,CAAC;IAAAM,UAAA,GAAAJ,+BAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAA5CE,IAAAA,UAAU,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA;AAChC,EAAA,IAAAG,UAAA,GAAkDT,cAAQ,CAAC,KAAK,CAAC;IAAAU,UAAA,GAAAR,+BAAA,CAAAO,UAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAG,UAAA,GAAoCb,cAAQ,CAAC,KAAK,CAAC;IAAAc,UAAA,GAAAZ,+BAAA,CAAAW,UAAA,EAAA,CAAA,CAAA;AAA5CE,IAAAA,UAAU,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA;AAChC,EAAA,IAAAG,UAAA,GAAsCjB,cAAQ,CAAC,EAAE,CAAC;IAAAkB,UAAA,GAAAhB,+BAAA,CAAAe,UAAA,EAAA,CAAA,CAAA;AAA3CE,IAAAA,WAAW,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,cAAc,GAAAF,UAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAMG,SAAS,GAAGC,YAAM,CAAC,IAAI,CAAC;EAE9BC,kCAAiB,CAACF,SAAS,EAAE,YAAM;IACjC,IAAI,CAAClB,UAAU,EAAE;IACjBC,aAAa,CAAC,KAAK,CAAC;IACpBgB,cAAc,CAAC,EAAE,CAAC;AACpB,EAAA,CAAC,CAAC;AAEF,EAAA,IAAMI,cAAc,GAAG,SAAjBA,cAAcA,GAAA;IAAA,OAClBtF,YAAY,CAACkD,UAAU,CAACqC,GAAG,EAAErC,UAAU,CAAC3C,QAAQ,CAAC;AAAA,EAAA,CAAA;AAEnD,EAAA,IAAMiF,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAA;IAAA,OACtBC,MAAM,CAACC,IAAI,CAACxC,UAAU,CAACqC,GAAG,EAAE,QAAQ,EAAE,qBAAqB,CAAC;AAAA,EAAA,CAAA;AAE9D,EAAA,IAAMI,YAAY,gBAAA,YAAA;IAAA,IAAAC,KAAA,GAAA1F,kCAAA,cAAAC,oCAAA,CAAAC,IAAA,CAAG,SAAAC,OAAAA,GAAA;MAAA,IAAAwF,cAAA,EAAAC,QAAA,EAAAC,OAAA,EAAAvF,QAAA,EAAAD,QAAA;AAAA,MAAA,OAAAJ,oCAAA,CAAAS,IAAA,CAAA,SAAAC,SAAAC,QAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;AAAA,UAAA,KAAA,CAAA;AAAAF,YAAAA,QAAA,CAAAC,IAAA,GAAA,CAAA;YAEjBuD,aAAa,CAAC,IAAI,CAAC;YACXwB,QAAQ,GAAK5C,UAAU,CAAvB4C,QAAQ;AACVC,YAAAA,OAAO,GAAG;AAAEtF,cAAAA,IAAI,EAAE;AAAEF,gBAAAA,QAAQ,EAAE0E;AAAY;aAAG;AAAAnE,YAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;YAAA,OAE5BgF,kCAAgB,CAACC,MAAM,CAAC;AAAEH,cAAAA,QAAQ,EAARA,QAAQ;AAAEC,cAAAA,OAAO,EAAPA;AAAQ,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YAA/DvF,QAAQ,GAAAM,QAAA,CAAAI,IAAA;YACRX,QAAQ,GAAG,CAAA,CAAAsF,cAAA,GAAArF,QAAQ,CAAC0F,IAAI,MAAA,IAAA,IAAAL,cAAA,KAAA,MAAA,IAAA,CAAAA,cAAA,GAAbA,cAAA,CAAepF,IAAI,MAAA,IAAA,IAAAoF,cAAA,KAAA,MAAA,GAAA,MAAA,GAAnBA,cAAA,CAAqBtF,QAAQ,KAAIC,QAAQ,CAACC,IAAI,CAACF,QAAQ;AAExE8C,YAAAA,QAAQ,CACNF,WAAW,CAACgD,GAAG,CAAC,UAAAjD,UAAU,EAAA;AAAA,cAAA,OACxBA,UAAU,CAAC4C,QAAQ,KAAKA,QAAQ,GAC5BM,WAAK,CAAC,UAAU,EAAE7F,QAAQ,EAAE2C,UAAU,CAAC,GACvCA,UAAU;AAAA,YAAA,CAChB,CACF,CAAC;AAACpC,YAAAA,QAAA,CAAAE,IAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,EAAA;AAAAF,YAAAA,QAAA,CAAAC,IAAA,GAAA,EAAA;YAAAD,QAAA,CAAAkB,EAAA,GAAAlB,QAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA;AAEFmB,YAAAA,iBAAM,CAACC,KAAK,CAAApB,QAAA,CAAAkB,EAAM,CAAC;AAAC,UAAA,KAAA,EAAA;AAAAlB,YAAAA,QAAA,CAAAC,IAAA,GAAA,EAAA;YAEpBmD,aAAa,CAAC,KAAK,CAAC;YACpBI,aAAa,CAAC,KAAK,CAAC;YACpBY,cAAc,CAAC,EAAE,CAAC;YAAC,OAAApE,QAAA,CAAAuF,MAAA,CAAA,EAAA,CAAA;AAAA,UAAA,KAAA,EAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAAvF,QAAA,CAAAqB,IAAA,EAAA;AAAA;AAAA,MAAA,CAAA,EAAA9B,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAEtB,CAAA,CAAA;AAAA,IAAA,OAAA,SAvBKsF,YAAYA,GAAA;AAAA,MAAA,OAAAC,KAAA,CAAAtD,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAuBjB;AAED,EAAA,IAAM+D,YAAY,gBAAA,YAAA;IAAA,IAAAC,KAAA,GAAArG,kCAAA,cAAAC,oCAAA,CAAAC,IAAA,CAAG,SAAAoG,QAAAA,GAAA;AAAA,MAAA,IAAAV,QAAA;AAAA,MAAA,OAAA3F,oCAAA,CAAAS,IAAA,CAAA,SAAA6F,UAAAC,SAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAA3F,IAAA,GAAA2F,SAAA,CAAA1F,IAAA;AAAA,UAAA,KAAA,CAAA;AAAA,YAAA,IACdwC,WAAW,EAAA;AAAAkD,cAAAA,SAAA,CAAA1F,IAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAA0F,SAAA,CAAAC,MAAA,CAAA,QAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAEhB7B,aAAa,CAAC,IAAI,CAAC;AAAC4B,YAAAA,SAAA,CAAA3F,IAAA,GAAA,CAAA;YAEV+E,QAAQ,GAAK5C,UAAU,CAAvB4C,QAAQ;AAAAY,YAAAA,SAAA,CAAA1F,IAAA,GAAA,CAAA;AAAA,YAAA,OACVgF,kCAAgB,CAACY,OAAO,CAACd,QAAQ,CAAC;AAAA,UAAA,KAAA,CAAA;YACxCzC,QAAQ,CAACwD,kBAAQ,CAAC;AAAEf,cAAAA,QAAQ,EAARA;aAAU,EAAE3C,WAAW,CAAC,CAAC;AAACuD,YAAAA,SAAA,CAAA1F,IAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,EAAA;AAAA0F,YAAAA,SAAA,CAAA3F,IAAA,GAAA,EAAA;YAAA2F,SAAA,CAAA1E,EAAA,GAAA0E,SAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA;AAE9CzE,YAAAA,iBAAM,CAACC,KAAK,CAAAwE,SAAA,CAAA1E,EAAM,CAAC;AAAC,UAAA,KAAA,EAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAA0E,SAAA,CAAAvE,IAAA,EAAA;AAAA;AAAA,MAAA,CAAA,EAAAqE,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAEvB,CAAA,CAAA;AAAA,IAAA,OAAA,SAXKF,YAAYA,GAAA;AAAA,MAAA,OAAAC,KAAA,CAAAjE,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAWjB;AAED,EAAA,IAAMuE,QAAQ,GAAAC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACRtD,iBAAiB,IAAAuD,gCAAA,KAClBC,2BAAkB,CAACC,eAAe,EAAG1B,kBAAkB,CACzD,CAAA,EAAA,EAAA,EAAAwB,gCAAA,CAAAA,gCAAA,CAAA,EAAA,EACAC,2BAAkB,CAACE,QAAQ,EAAG7B,cAAc,CAAA,EAC5C2B,2BAAkB,CAACG,MAAM,EAAGzB,YAAY,CAAA,EACrCnC,WAAW,IAAAwD,gCAAA,KAAOC,2BAAkB,CAACI,MAAM,EAAGf,YAAY,CAAE,CACjE;AAED,EAAA,IAAMgB,eAAe,GAAG,SAAlBA,eAAeA,CAAAC,KAAA,EAAyB;AAAA,IAAA,IAAnBC,GAAG,GAAAD,KAAA,CAAHC,GAAG;MAAEC,OAAO,GAAAF,KAAA,CAAPE,OAAO;AACrC,IAAA,IAAID,GAAG,KAAKP,2BAAkB,CAACG,MAAM,EAAE;MACrClD,aAAa,CAAC,IAAI,CAAC;AACnBgB,MAAAA,cAAc,CAAChC,UAAU,CAAC3C,QAAQ,CAAC;AACrC,IAAA,CAAC,MAAM,IAAIiH,GAAG,KAAKP,2BAAkB,CAACI,MAAM,EAAE;AAC5CnC,MAAAA,cAAc,CAAChC,UAAU,CAAC3C,QAAQ,CAAC;MACnCmE,oBAAoB,CAAC,IAAI,CAAC;AAC5B,IAAA,CAAC,MAAM;AACL+C,MAAAA,OAAO,EAAE;AACX,IAAA;EACF,CAAC;AAED,EAAA,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,KAAA,EAAuB;AAAA,IAAA,IAAjBC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEJ,GAAG,GAAAG,KAAA,CAAHH,GAAG;AACjC,IAAA,IAAMC,OAAO,GAAGX,QAAQ,CAACU,GAAG,CAAC;AAE7B,IAAA,IAAII,KAAK,CAACJ,GAAG,KAAK,OAAO,IAAIC,OAAO,IAAI,CAACI,aAAO,CAAC5C,WAAW,CAAC,EAAE;MAC7D2C,KAAK,CAACE,eAAe,EAAE;MACvBF,KAAK,CAACG,cAAc,EAAE;AACtBN,MAAAA,OAAO,EAAE;AACX,IAAA;AAEA,IAAA,IAAIG,KAAK,CAACJ,GAAG,KAAK,QAAQ,EAAE;MAC1BtD,aAAa,CAAC,KAAK,CAAC;MACpBgB,cAAc,CAAC,EAAE,CAAC;AACpB,IAAA;EACF,CAAC;EAED,oBACE8C,eAAA,CAAAC,mBAAA,EAAA;AAAAC,IAAAA,QAAA,gBACEC,cAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,yBAAyB;AACnC,MAAA,aAAA,EAAY,wBAAwB;MAAAF,QAAA,EAEnCjE,UAAU,gBACTkE,cAAA,CAAA,KAAA,EAAA;AAAKE,QAAAA,GAAG,EAAElD,SAAU;QAAA+C,QAAA,eAClBC,cAAA,CAACG,kBAAO,EAAA;AAACC,UAAAA,OAAO,EAAEtD,WAAY;AAACuD,UAAAA,QAAQ,EAAC,KAAK;UAAAN,QAAA,eAC3CC,cAAA,CAACM,gBAAK,EAAA;YACJC,SAAS,EAAA,IAAA;AACT,YAAA,aAAA,EAAY,mCAAmC;AAC/CC,YAAAA,IAAI,EAAC,OAAO;AACZC,YAAAA,KAAK,EAAE3D,WAAY;YACnB/C,KAAK,EACH2F,aAAO,CAAC5C,WAAW,CAAC,GAChBrB,CAAC,CAAC,mCAAmC,CAAC,GACtC,EACL;AACDiF,YAAAA,MAAM,eACJb,eAAA,CAAA,KAAA,EAAA;AAAKI,cAAAA,SAAS,EAAC,+BAA+B;cAAAF,QAAA,EAAA,cAC5CC,cAAA,CAACW,iBAAM,EAAA;AACL,gBAAA,aAAA,EAAY,2CAA2C;AACvD1F,gBAAAA,QAAQ,EAAEyE,aAAO,CAAC5C,WAAW,CAAC,IAAIZ,UAAW;AAC7C0E,gBAAAA,IAAI,EAAEC,iBAAM;AACZC,gBAAAA,OAAO,EAAE5E,UAAW;AACpBsE,gBAAAA,IAAI,EAAC,IAAI;AACTO,gBAAAA,OAAO,EAAC,OAAO;AACfC,gBAAAA,OAAO,EAAExD;AAAa,eACvB,CAAC,eACFwC,cAAA,CAACW,iBAAM,EAAA;AACL,gBAAA,aAAA,EAAY,2CAA2C;AACvD1F,gBAAAA,QAAQ,EAAEiB,UAAW;AACrB0E,gBAAAA,IAAI,EAAEK,aAAE;AACRT,gBAAAA,IAAI,EAAC,IAAI;AACTO,gBAAAA,OAAO,EAAC,OAAO;gBACfC,OAAO,EAAE,SAAAA,OAAAA,GAAM;kBACbjF,aAAa,CAAC,KAAK,CAAC;kBACpBgB,cAAc,CAAC,EAAE,CAAC;AACpB,gBAAA;AAAE,eACH,CAAC;AAAA,aACC,CACN;AACD7B,YAAAA,QAAQ,EAAEgG,0BAAoB,CAACnE,cAAc,CAAE;YAC/CoE,SAAS,EAAE,SAAAA,SAAAA,CAAA1B,KAAK,EAAA;AAAA,cAAA,OACdF,aAAa,CAAC;AACZE,gBAAAA,KAAK,EAALA,KAAK;gBACLJ,GAAG,EAAEP,2BAAkB,CAACG;AAC1B,eAAC,CAAC;AAAA,YAAA;WAEL;SACM;AAAC,OACP,CAAC,gBAENY,eAAA,CAAAC,mBAAA,EAAA;AAAAC,QAAAA,QAAA,gBACEF,eAAA,CAAA,KAAA,EAAA;AACEI,UAAAA,SAAS,EAAC,iCAAiC;UAC3Ce,OAAO,EAAE,SAAAA,OAAAA,GAAA;YAAA,OAAM7F,qBAAqB,CAACJ,UAAU,CAAC;UAAA,CAAC;UAAAgF,QAAA,EAAA,cAEjDC,cAAA,CAACoB,aAAQ,EAAA;AACPnB,YAAAA,SAAS,EAAC,uCAAuC;YACjDoB,QAAQ,EAAEtG,UAAU,CAAC3C;AAAS,WAC/B,CAAC,eACF4H,cAAA,CAACG,kBAAO,EAAA;YAACC,OAAO,EAAErF,UAAU,CAAC3C,QAAS;AAACiI,YAAAA,QAAQ,EAAC,KAAK;YAAAN,QAAA,eACnDC,cAAA,CAACsB,qBAAU,EAAA;AAACP,cAAAA,OAAO,EAAC,OAAO;cAAAhB,QAAA,EAAEhF,UAAU,CAAC3C;aAAqB;AAAC,WACvD,CAAC,EACTgD,SAAS,iBAAI4E,cAAA,CAACuB,kBAAO,EAAA;AAACtB,YAAAA,SAAS,EAAC;AAA0B,WAAE,CAAC;AAAA,SAC3D,CAAC,eACND,cAAA,CAACG,kBAAO,EAAA;AACNC,UAAAA,OAAO,EAAE3E,CAAC,CAAC,wCAAwC,CAAE;UACrDR,QAAQ,EAAE,CAACA,QAAS;AACpBoF,UAAAA,QAAQ,EAAC,KAAK;UAAAN,QAAA,eAEdC,cAAA,CAACpF,uBAAY,EAAA;AACLK,YAAAA,QAAQ,EAARA,QAAQ;AACd;AACA;AACA;AACA;AACA;AACAuG,YAAAA,aAAa,EAAE;AAAEvB,cAAAA,SAAS,EAAE;aAAuB;YACnDwB,YAAY,eACVzB,cAAA,CAACW,iBAAM,EAAA;AACC1F,cAAAA,QAAQ,EAARA,QAAQ;AACd,cAAA,aAAA,EAAY,iCAAiC;AAC7C2F,cAAAA,IAAI,EAAEc,4BAAiB;AACvBlB,cAAAA,IAAI,EAAC,IAAI;AACTO,cAAAA,OAAO,EAAC;AAAO,aAChB,CACF;YAAAhB,QAAA,eAEDC,cAAA,CAACrF,IAAI,EAAA;cAAAoF,QAAA,EACF4B,MAAM,CAACC,OAAO,CAACjD,QAAQ,CAAC,CAACX,GAAG,CAAC,UAAA6D,KAAA,EAAA;AAAA,gBAAA,IAAAC,KAAA,GAAAjG,+BAAA,CAAAgG,KAAA,EAAA,CAAA,CAAA;AAAEE,kBAAAA,KAAK,GAAAD,KAAA,CAAA,CAAA,CAAA;AAAExC,kBAAAA,OAAO,GAAAwC,KAAA,CAAA,CAAA,CAAA;gBAAA,oBAC5C9B,cAAA,CAACnF,QAAQ,EAAA;AACP,kBAAA,aAAA,EAAA,uBAAA,CAAAmH,MAAA,CAAqCD,KAAK,CAACE,WAAW,EAAE,EAAA,SAAA,CAAU;kBAElEjB,OAAO,EAAE,SAAAA,OAAAA,GAAA;AAAA,oBAAA,OAAM7B,eAAe,CAAC;AAAEE,sBAAAA,GAAG,EAAE0C,KAAK;AAAEzC,sBAAAA,OAAO,EAAPA;AAAQ,qBAAC,CAAC;kBAAA,CAAC;AAAAS,kBAAAA,QAAA,EAEvDgC;AAAK,iBAAA,EAHDA,KAIG,CAAC;cAAA,CACZ;aACG;WACM;AAAC,SACR,CAAC;OACV;AACH,KACE,CAAC,eACN/B,cAAA,CAACkC,gBAAK,EAAA;AACJC,MAAAA,MAAM,EAAE7F,iBAAkB;AAC1B8F,MAAAA,YAAY,EAAE1F,UAAW;AACzBpD,MAAAA,KAAK,EAAC,QAAQ;AACd+I,MAAAA,iBAAiB,EAAE5G,CAAC,CAAC,yBAAyB,CAAE;AAChD6G,MAAAA,KAAK,EAAE7G,CAAC,CAAC,qCAAqC,CAAE;MAChD8G,OAAO,eACLvC,cAAA,CAACwC,kBAAK,EAAA;AACJC,QAAAA,OAAO,EAAC,4CAA4C;AACpDC,QAAAA,MAAM,EAAE;AAAEC,UAAAA,MAAM,EAAE7F;AAAY;AAAE,OACjC,CACF;MACD8F,OAAO,EAAE,SAAAA,OAAAA,GAAA;QAAA,OAAMrG,oBAAoB,CAAC,KAAK,CAAC;MAAA,CAAC;AAC3CsG,MAAAA,QAAQ,EAAE1E;AAAa,KACxB,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;AC7PD,IAAM2E,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAhL,IAAA,EAAqC;AAAA,EAAA,IAAAiL,oBAAA;AAAA,EAAA,IAA/BhI,UAAU,GAAAjD,IAAA,CAAViD,UAAU;IAAEiI,YAAY,GAAAlL,IAAA,CAAZkL,YAAY;AACpD,EAAA,IAAMC,kBAAkB,GAAA,EAAA,CAAAjB,MAAA,CAAA,CAAAe,oBAAA,GAAMhI,UAAU,CAACmI,QAAQ,cAAAH,oBAAA,KAAA,MAAA,GAAAA,oBAAA,GAAI,CAAC,EAAA,GAAA,CAAG;AAEzD,EAAA,IAAMI,YAAY,GAAG,SAAfA,YAAYA,GAAS;AACzBH,IAAAA,YAAY,CAACjI,UAAU,CAACqI,EAAE,CAAC;EAC7B,CAAC;AAED,EAAA,oBACEvD,eAAA,CAAA,KAAA,EAAA;AAAKI,IAAAA,SAAS,EAAC,yBAAyB;AAAAF,IAAAA,QAAA,gBACtCC,cAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,wCAAwC;AAAAF,MAAAA,QAAA,eACrDC,cAAA,CAACoB,0BAAQ,EAAA,EAAE;KACR,CAAC,eACNvB,eAAA,CAAA,KAAA,EAAA;AAAKI,MAAAA,SAAS,EAAC,mCAAmC;MAAAF,QAAA,EAAA,cAChDC,cAAA,CAACsB,qBAAU,EAAA;AAACP,QAAAA,OAAO,EAAC,OAAO;QAAAhB,QAAA,EAAEhF,UAAU,CAAC3C;AAAQ,OAAa,CAAC,eAC9D4H,cAAA,CAACsB,qBAAU,EAAA;AAACP,QAAAA,OAAO,EAAC,OAAO;AAAAhB,QAAAA,QAAA,EAAEkD;AAAkB,OAAa,CAAC;AAAA,KAC1D,CAAC,eACNjD,cAAA,CAACW,iBAAM,EAAA;AACL,MAAA,aAAA,EAAY,2CAA2C;AACvDC,MAAAA,IAAI,EAAEK,aAAE;AACRT,MAAAA,IAAI,EAAC,IAAI;AACTO,MAAAA,OAAO,EAAC,OAAO;AACfC,MAAAA,OAAO,EAAEmC;AAAa,KACvB,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;ACLD,IAAME,OAAO,gBAAGC,UAAI,CAAC,YAAA;EAAA,OAAM,6EAAkB,KAAC;AAAA,CAAA,CAAC;AAE/C,IAAMC,aAAW,GAAG,SAAdA,WAAWA,CAAAzL,IAAA,EAafoI,GAAG,EACA;AAAA,EAAA,IAAAsD,qBAAA;AAAA,EAAA,IAAAC,gBAAA,GAAA3L,IAAA,CAZDkD,WAAW;AAAXA,IAAAA,WAAW,GAAAyI,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAAAC,cAAA,GAAA5L,IAAA,CAChBmI,SAAS;AAATA,IAAAA,SAAS,GAAAyD,cAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,cAAA;IAAAC,aAAA,GAAA7L,IAAA,CACdoD,QAAQ;AAARA,IAAAA,QAAQ,GAAAyI,aAAA,KAAA,MAAA,GAAGC,cAAI,GAAAD,aAAA;IAAAE,kBAAA,GAAA/L,IAAA,CACfgM,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,kBAAA;IAAAE,aAAA,GAAAjM,IAAA,CACpBmD,QAAQ;AAARA,IAAAA,QAAQ,GAAA8I,aAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,aAAA;IAAAC,gBAAA,GAAAlM,IAAA,CAChBmM,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,gBAAA;IAAAE,WAAA,GAAApM,IAAA,CAClBJ,MAAM;AAANA,IAAAA,MAAM,GAAAwM,WAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,WAAA;IAAAC,mBAAA,GAAArM,IAAA,CACXsM,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,MAAA,GAAGP,cAAI,GAAAO,mBAAA;IAAAE,gBAAA,GAAAvM,IAAA,CACrBuD,WAAW;AAAXA,IAAAA,WAAW,GAAAgJ,gBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,gBAAA;IAAAC,qBAAA,GAAAxM,IAAA,CAClBwD,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAgJ,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;AAI1B,EAAA,IAAA/I,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAAC,SAAA,GAAoDC,cAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,+BAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzD6I,IAAAA,kBAAkB,GAAA3I,UAAA,CAAA,CAAA,CAAA;AAAET,IAAAA,qBAAqB,GAAAS,UAAA,CAAA,CAAA,CAAA;AAChD,EAAA,IAAAI,UAAA,GAA0DL,cAAQ,CAAC,KAAK,CAAC;IAAAM,UAAA,GAAAJ,+BAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAlEwI,IAAAA,qBAAqB,GAAAvI,UAAA,CAAA,CAAA,CAAA;AAAEwI,IAAAA,wBAAwB,GAAAxI,UAAA,CAAA,CAAA,CAAA;AAEtD,EAAA,IAAMyI,kBAAkB,GAAGzH,YAAM,CAAC,IAAI,CAAC;EAEvC,IAAM0H,gBAAgB,GAAGC,aAAO,CAC9B,YAAA;IAAA,OAAMnN,qBAAqB,CAACC,MAAM,CAAC;EAAA,CAAA,EACnC,CAACA,MAAM,CACT,CAAC;EAED,IAAAmN,gBAAA,GACEC,wBAAe,CAAC;AACdpN,MAAAA,MAAM,EAAEiN,gBAAgB;AACxBI,MAAAA,oBAAoB,EAAEX,cAAc;AACpCpJ,MAAAA,WAAW,EAAXA;AACF,KAAC,CAAC;IALIgK,QAAQ,GAAAH,gBAAA,CAARG,QAAQ;IAAEC,WAAW,GAAAJ,gBAAA,CAAXI,WAAW;IAAEC,WAAW,GAAAL,gBAAA,CAAXK,WAAW;IAAElC,YAAY,GAAA6B,gBAAA,CAAZ7B,YAAY;IAAEmC,WAAW,GAAAN,gBAAA,CAAXM,WAAW;AAOrE,EAAA,IAAMC,aAAa,gBAAA,YAAA;IAAA,IAAA3H,KAAA,GAAA1F,kCAAA,cAAAC,oCAAA,CAAAC,IAAA,CAAG,SAAAC,OAAAA,CAAMuH,KAAK,EAAA;AAAA,MAAA,IAAA4F,aAAA;AAAA,MAAA,OAAArN,oCAAA,CAAAS,IAAA,CAAA,SAAAC,SAAAC,QAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;AAAA,UAAA,KAAA,CAAA;AAC/BmM,YAAAA,QAAQ,CAACvF,KAAK,CAAC6F,MAAM,CAACC,KAAK,CAAC;AAAC5M,YAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;YAAA,OACDoM,WAAW,EAAE;AAAA,UAAA,KAAA,CAAA;YAAnCI,aAAa,GAAA1M,QAAA,CAAAI,IAAA;AACnByM,YAAAA,oBAAU,CAACH,aAAa,CAAC,IAAInK,QAAQ,IAAA8G,MAAA,CAAAyD,mCAAA,CAAKzK,WAAW,CAAA,EAAAyK,mCAAA,CAAKJ,aAAa,EAAC,CAAC;AACzEX,YAAAA,kBAAkB,CAACgB,OAAO,CAACjF,KAAK,GAAG,IAAI;AAAC,UAAA,KAAA,CAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAA9H,QAAA,CAAAqB,IAAA,EAAA;AAAA;AAAA,MAAA,CAAA,EAAA9B,OAAA,CAAA;IAAA,CACzC,CAAA,CAAA;IAAA,OAAA,SALKkN,aAAaA,CAAAnL,EAAA,EAAA;AAAA,MAAA,OAAAwD,KAAA,CAAAtD,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAKlB;AAED,EAAA,IAAMuL,uBAAuB,GAAG,SAA1BA,uBAAuBA,GAAA;AAAA,IAAA,OAASjB,kBAAkB,CAACgB,OAAO,CAAChM,KAAK,EAAE;AAAA,EAAA,CAAA;AAExE,EAAA,IAAMkM,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGnG,KAAK,EAAI;AACpC,IAAA,IAAI,EAAE,CAACC,aAAO,CAAC1E,WAAW,CAAC,IAAI2J,gBAAgB,CAACkB,gBAAgB,KAAK,CAAC,CAAC,EAAE;AACvE,MAAA;AACF,IAAA;IACApG,KAAK,CAACG,cAAc,EAAE;AACtB9F,IAAAA,iBAAM,CAACgM,OAAO,CAACrK,CAAC,CAAC,8CAA8C,CAAC,CAAC;EACnE,CAAC;EAEDsK,yBAAmB,CAAC7F,GAAG,EAAE,YAAA;IAAA,OAAO;AAAEyF,MAAAA,uBAAuB,EAAvBA;KAAyB;EAAA,CAAC,EAAE,EAAE,CAAC;AAEjE,EAAA,IAAMK,eAAe,gBAAA,YAAA;IAAA,IAAA5H,KAAA,GAAArG,kCAAA,cAAAC,oCAAA,CAAAC,IAAA,CAAG,SAAAoG,QAAAA,CAAMkH,KAAK,EAAA;AAAA,MAAA,IAAAF,aAAA;AAAA,MAAA,OAAArN,oCAAA,CAAAS,IAAA,CAAA,SAAA6F,UAAAC,SAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAA3F,IAAA,GAAA2F,SAAA,CAAA1F,IAAA;AAAA,UAAA,KAAA,CAAA;YACjCmM,QAAQ,CAACO,KAAK,CAAC;AAAChH,YAAAA,SAAA,CAAA1F,IAAA,GAAA,CAAA;YAAA,OACYoM,WAAW,EAAE;AAAA,UAAA,KAAA,CAAA;YAAnCI,aAAa,GAAA9G,SAAA,CAAAxF,IAAA;AACnByM,YAAAA,oBAAU,CAACH,aAAa,CAAC,IAAInK,QAAQ,IAAA8G,MAAA,CAAAyD,mCAAA,CAAKzK,WAAW,CAAA,EAAAyK,mCAAA,CAAKJ,aAAa,EAAC,CAAC;AAAC,UAAA,KAAA,CAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAA9G,SAAA,CAAAvE,IAAA,EAAA;AAAA;AAAA,MAAA,CAAA,EAAAqE,QAAA,CAAA;IAAA,CAC3E,CAAA,CAAA;IAAA,OAAA,SAJK2H,eAAeA,CAAA9L,GAAA,EAAA;AAAA,MAAA,OAAAkE,KAAA,CAAAjE,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAIpB;AAED6L,EAAAA,8BAAY,CAAC;AACXC,IAAAA,aAAa,EAAEjC,WAAW;AAC1BjJ,IAAAA,WAAW,EAAXA,WAAW;AACXmL,IAAAA,MAAM,EAAEH;AACV,GAAC,CAAC;AAEF,EAAA,oBACEnG,eAAA,CAAA,KAAA,EAAA;IAAKI,SAAS,EAAEmG,2BAAU,CAAC,gBAAgB,EAAAvH,gCAAA,CAAA,EAAA,EAAKoB,SAAS,EAAGA,SAAS,CAAE,CAAE;AAAAF,IAAAA,QAAA,gBACvEF,eAAA,CAAA,KAAA,EAAA;AAAKI,MAAAA,SAAS,EAAC,uBAAuB;AAAAF,MAAAA,QAAA,GACnC/E,WAAW,CAACgD,GAAG,CAAC,UAAAjD,UAAU,EAAA;QAAA,oBACzBsL,mBAAA,CAACvL,UAAU,EAAA;AAEPO,UAAAA,WAAW,EAAXA,WAAW;AACXC,UAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBP,UAAAA,UAAU,EAAVA,UAAU;AACVC,UAAAA,WAAW,EAAXA,WAAW;AACXC,UAAAA,QAAQ,EAARA,QAAQ;AACRC,UAAAA,QAAQ,EAARA,QAAQ;AACRC,UAAAA,qBAAqB,EAArBA,qBAAqB;UAEvBkE,GAAG,EAAEtE,UAAU,CAAC4C,QAAS;UACzBvC,SAAS,EACP,CAACoJ,qBAAqB,IACtBD,kBAAkB,CAACnH,GAAG,KAAKrC,UAAU,CAACqC;AACvC,SACF,CAAC;AAAA,MAAA,CACH,CAAC,EACD8H,WAAW,CAAClH,GAAG,CAAC,UAAAjD,UAAU,EAAA;QAAA,oBACzBsL,mBAAA,CAACvD,kBAAkB,EAAA;AACX/H,UAAAA,UAAU,EAAVA,UAAU;AAAEiI,UAAAA,YAAY,EAAZA,YAAY;UAC9B3D,GAAG,EAAEtE,UAAU,CAACqI;AAAG,SACpB,CAAC;AAAA,MAAA,CACH,CAAC;KACC,CAAC,eACNvD,eAAA,CAAA,KAAA,EAAA;AAAAE,MAAAA,QAAA,EAAA,CACG+D,aAAa,iBACZ9D,cAAA,CAACW,iBAAM,EAAA;AACL,QAAA,aAAA,EAAY,wCAAwC;AACpD1F,QAAAA,QAAQ,EAAEkK,WAAY;AACtBpD,QAAAA,KAAK,EAAEtG,CAAC,CAAC,6BAA6B,CAAE;AACxCqF,QAAAA,OAAO,EAAEqE,WAAY;AACrBpE,QAAAA,OAAO,EAAC,MAAM;AACdC,QAAAA,OAAO,EAAE2E;OACV,CACF,eACD3F,cAAA,CAAA,OAAA,EAAA;AACEsG,QAAAA,MAAM,EAAA,CAAA9C,qBAAA,GAAEmB,gBAAgB,CAAC4B,gBAAgB,MAAA,IAAA,IAAA/C,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAjCA,qBAAA,CAAmCgD,IAAI,CAAC,GAAG,CAAE;AACrDC,QAAAA,QAAQ,EAAE9B,gBAAgB,CAACkB,gBAAgB,KAAK,CAAE;AAClD3F,QAAAA,GAAG,EAAEwE,kBAAmB;AACxBgC,QAAAA,IAAI,EAAC,MAAM;AACXxL,QAAAA,QAAQ,EAAEkK,aAAc;AACxBpE,QAAAA,OAAO,EAAE4E;AAAqB,OAC/B,CAAC,eACF5F,cAAA,CAAC2G,cAAQ,EAAA;QAACC,QAAQ,eAAE5G,cAAA,CAAA,MAAA,EAAA,EAAO,CAAE;QAAAD,QAAA,EAC1B8G,mBAAS,CAACtC,kBAAkB,CAAC,iBAC5BvE,cAAA,CAACqD,OAAO,EAAA;AAEJrI,UAAAA,WAAW,EAAXA,WAAW;AACXuJ,UAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBE,UAAAA,wBAAwB,EAAxBA,wBAAwB;AACxBtJ,UAAAA,qBAAqB,EAArBA,qBAAqB;UAEvByH,OAAO,EAAE,SAAAA,OAAAA,GAAA;AAAA,YAAA,OAAMzH,qBAAqB,CAAC,EAAE,CAAC;AAAA,UAAA;SACzC;AACF,OACO,CAAC;AAAA,KACR,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;AAEDoI,aAAW,CAACuD,WAAW,GAAG,wBAAwB;AAElD,kBAAA,aAAeC,UAAI,cAACC,gBAAU,CAACzD,aAAW,CAAC,CAAC;;;;;;"}
1
+ {"version":3,"file":"chunk-Bmd6d-x7.cjs.js","sources":["../../app/javascript/src/v2/components/Attachments/utils.js","../../app/javascript/src/v2/components/Attachments/Attachment.jsx","../../app/javascript/src/v2/components/Attachments/AttachmentProgress.jsx","../../app/javascript/src/v2/components/Attachments/index.jsx"],"sourcesContent":["import { Toastr } from \"@bigbinary/neeto-atoms\";\nimport { mergeRight } from \"ramda\";\n\nimport { DEFAULT_FILE_UPLOAD_CONFIG } from \"./constants\";\n\nexport const buildFileUploadConfig = config =>\n mergeRight(DEFAULT_FILE_UPLOAD_CONFIG, config);\n\nexport const downloadFile = async (fileUrl, filename) => {\n try {\n const response = await fetch(fileUrl);\n const blob = await response.blob();\n const blobUrl = URL.createObjectURL(blob);\n\n const a = document.createElement(\"a\");\n a.href = blobUrl;\n a.setAttribute(\"download\", filename);\n a.style.display = \"none\";\n document.body.appendChild(a);\n\n a.click();\n\n document.body.removeChild(a);\n URL.revokeObjectURL(blobUrl);\n } catch (error) {\n Toastr.error(error);\n }\n};\n\nexport const checkPreviewAvailability = (contentType, previewUrl = null) =>\n contentType &&\n (contentType.startsWith(\"video/\") ||\n contentType === \"application/pdf\" ||\n contentType === \"image/jpeg\" ||\n contentType === \"image/gif\" ||\n contentType === \"image/png\" ||\n contentType === \"image/webp\" ||\n contentType === \"text/plain\" ||\n (!!previewUrl &&\n (contentType === \"image/heic\" || contentType === \"image/heif\")) ||\n contentType === \"image/bmp\" ||\n contentType === \"application/msword\" ||\n contentType ===\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\" ||\n contentType === \"image/jpg\" ||\n contentType === \"application/vnd.ms-powerpoint\" ||\n contentType ===\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\" ||\n contentType === \"image/tiff\" ||\n contentType === \"application/vnd.ms-excel\" ||\n contentType ===\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\");\n","import { useState, useRef } from \"react\";\n\nimport {\n Alert,\n Button,\n DropdownMenu,\n Input,\n Spinner,\n Toastr,\n Tooltip,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { Check, EllipsisVertical, X } from \"lucide-react\";\nimport { removeBy } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/v2/react-utils/useOnClickOutside\";\nimport { withEventTargetValue } from \"neetocommons/v2/utils\";\nimport { isEmpty, assoc } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport directUploadsApi from \"apis/direct_uploads\";\nimport FileIcon from \"src/v2/components/Common/FileIcon\";\n\nimport { ATTACHMENT_OPTIONS } from \"./constants\";\nimport { downloadFile } from \"./utils\";\n\nconst { Menu, MenuItem } = DropdownMenu;\n\nconst Attachment = ({\n attachment,\n attachments,\n disabled,\n onChange,\n setSelectedAttachment,\n isLoading,\n allowDelete,\n allowOpenInNewTab,\n}) => {\n const { t } = useTranslation();\n\n const [isRenaming, setIsRenaming] = useState(false);\n const [isUpdating, setIsUpdating] = useState(false);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isDeleting, setIsDeleting] = useState(false);\n const [newFilename, setNewFilename] = useState(\"\");\n\n const renameRef = useRef(null);\n\n useOnClickOutside(renameRef, () => {\n if (!isRenaming) return;\n setIsRenaming(false);\n setNewFilename(\"\");\n });\n\n const handleDownload = () =>\n downloadFile(attachment.url, attachment.filename);\n\n const handleOpenInNewTab = () =>\n window.open(attachment.url, \"_blank\", \"noopener,noreferrer\");\n\n const handleRename = async () => {\n try {\n setIsUpdating(true);\n const { signedId } = attachment;\n const payload = { blob: { filename: newFilename } };\n\n const response = await directUploadsApi.update({ signedId, payload });\n const filename = response.data?.blob?.filename || response.blob.filename;\n\n onChange(\n attachments.map(attachment =>\n attachment.signedId === signedId\n ? assoc(\"filename\", filename, attachment)\n : attachment\n )\n );\n } catch (error) {\n Toastr.error(error);\n } finally {\n setIsRenaming(false);\n setIsUpdating(false);\n setNewFilename(\"\");\n }\n };\n\n const handleDelete = async () => {\n if (!allowDelete) return;\n\n setIsDeleting(true);\n try {\n const { signedId } = attachment;\n await directUploadsApi.destroy(signedId);\n onChange(removeBy({ signedId }, attachments));\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n const handlers = {\n ...(allowOpenInNewTab && {\n [ATTACHMENT_OPTIONS.OPEN_IN_NEW_TAB]: handleOpenInNewTab,\n }),\n [ATTACHMENT_OPTIONS.DOWNLOAD]: handleDownload,\n [ATTACHMENT_OPTIONS.RENAME]: handleRename,\n ...(allowDelete && { [ATTACHMENT_OPTIONS.DELETE]: handleDelete }),\n };\n\n const onMenuItemClick = ({ key, handler }) => {\n if (key === ATTACHMENT_OPTIONS.RENAME) {\n setIsRenaming(true);\n setNewFilename(attachment.filename);\n } else if (key === ATTACHMENT_OPTIONS.DELETE) {\n setNewFilename(attachment.filename);\n setIsDeleteAlertOpen(true);\n } else {\n handler();\n }\n };\n\n const handleKeyDown = ({ event, key }) => {\n const handler = handlers[key];\n\n if (event.key === \"Enter\" && handler && !isEmpty(newFilename)) {\n event.stopPropagation();\n event.preventDefault();\n handler();\n }\n\n if (event.key === \"Escape\") {\n setIsRenaming(false);\n setNewFilename(\"\");\n }\n };\n\n return (\n <>\n <div\n className=\"ne-attachments__preview\"\n data-testid=\"ne-attachments-wrapper\"\n >\n {isRenaming ? (\n <div ref={renameRef}>\n <Tooltip content={newFilename} position=\"top\">\n <Input\n autoFocus\n data-testid=\"neeto-editor-preview-rename-input\"\n size=\"small\"\n value={newFilename}\n error={\n isEmpty(newFilename)\n ? t(\"neetoEditor.attachments.nameEmpty\")\n : \"\"\n }\n suffix={\n <div className=\"flex items-center justify-end\">\n <Button\n data-testid=\"neeto-editor-preview-rename-submit-button\"\n disabled={isEmpty(newFilename) || isUpdating}\n icon={Check}\n loading={isUpdating}\n size=\"sm\"\n variant=\"ghost\"\n onClick={handleRename}\n />\n <Button\n data-testid=\"neeto-editor-preview-rename-cancel-button\"\n disabled={isUpdating}\n icon={X}\n size=\"sm\"\n variant=\"ghost\"\n onClick={() => {\n setIsRenaming(false);\n setNewFilename(\"\");\n }}\n />\n </div>\n }\n onChange={withEventTargetValue(setNewFilename)}\n onKeyDown={event =>\n handleKeyDown({\n event,\n key: ATTACHMENT_OPTIONS.RENAME,\n })\n }\n />\n </Tooltip>\n </div>\n ) : (\n <>\n <div\n className=\"ne-attachments__preview-wrapper\"\n onClick={() => setSelectedAttachment(attachment)}\n >\n <FileIcon\n className=\"ne-attachments__preview-wrapper__icon\"\n fileName={attachment.filename}\n />\n <Tooltip content={attachment.filename} position=\"top\">\n <Typography variant=\"body2\">{attachment.filename}</Typography>\n </Tooltip>\n {isLoading && <Spinner className=\"attachment-button-loader\" />}\n </div>\n <Tooltip\n content={t(\"neetoEditor.attachments.actionsBlocked\")}\n disabled={!disabled}\n position=\"top\"\n >\n <DropdownMenu\n {...{ disabled }}\n // neeto-atoms's default rich trigger always appends a\n // ChevronDown as trailing icon. For an ellipsis \"more\n // actions\" button the ellipsis itself signals a menu —\n // use customTarget to render the icon-only button without\n // the redundant chevron.\n dropdownProps={{ className: \"ne-editor-dropdown\" }}\n customTarget={\n <Button\n {...{ disabled }}\n data-testid=\"neeto-editor-attachment-actions\"\n icon={EllipsisVertical}\n size=\"sm\"\n variant=\"ghost\"\n />\n }\n >\n <Menu>\n {Object.entries(handlers).map(([label, handler]) => (\n <MenuItem\n data-testid={`neeto-editor-preview-${label.toLowerCase()}-button`}\n key={label}\n onClick={() => onMenuItemClick({ key: label, handler })}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n </DropdownMenu>\n </Tooltip>\n </>\n )}\n </div>\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n style=\"danger\"\n submitButtonLabel={t(\"neetoEditor.menu.delete\")}\n title={t(\"neetoEditor.attachments.deleteTitle\")}\n message={\n <Trans\n i18nKey=\"neetoEditor.attachments.deleteConfirmation\"\n values={{ entity: newFilename }}\n />\n }\n onClose={() => setIsDeleteAlertOpen(false)}\n onSubmit={handleDelete}\n />\n </>\n );\n};\n\nexport default Attachment;\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { X } from \"lucide-react\";\nimport { FileIcon } from \"react-file-icon\";\n\nconst AttachmentProgress = ({ attachment, cancelUpload }) => {\n const progressPercentage = `${attachment.progress ?? 0}%`;\n\n const handleCancel = () => {\n cancelUpload(attachment.id);\n };\n\n return (\n <div className=\"ne-attachments__preview\">\n <div className=\"ne-attachments__preview__progress-icon\">\n <FileIcon />\n </div>\n <div className=\"ne-attachments__preview__progress\">\n <Typography variant=\"body2\">{attachment.filename}</Typography>\n <Typography variant=\"body2\">{progressPercentage}</Typography>\n </div>\n <Button\n data-testid=\"neeto-editor-preview-upload-cancel-button\"\n icon={X}\n size=\"sm\"\n variant=\"ghost\"\n onClick={handleCancel}\n />\n </div>\n );\n};\n\nexport default AttachmentProgress;\n","import {\n forwardRef,\n useRef,\n useState,\n useImperativeHandle,\n lazy,\n Suspense,\n useMemo,\n memo,\n} from \"react\";\n\nimport { Button, Toastr } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { isNotEmpty, isPresent, noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useDropFiles from \"hooks/useDropFiles\";\nimport useFileUploader from \"src/v2/hooks/useFileUploader\";\n\nimport Attachment from \"./Attachment\";\nimport AttachmentProgress from \"./AttachmentProgress\";\nimport { buildFileUploadConfig } from \"./utils\";\n\nconst Preview = lazy(() => import(\"./Preview\"));\n\nconst Attachments = (\n {\n attachments = [],\n className = \"\",\n onChange = noop,\n isIndependent = true,\n disabled = false,\n dragDropRef = null,\n config = {},\n setIsUploading = noop,\n allowDelete = true,\n allowOpenInNewTab = true,\n },\n ref\n) => {\n const { t } = useTranslation();\n\n const [selectedAttachment, setSelectedAttachment] = useState({});\n const [didFetchPreviewBundle, setDidFetchPreviewBundle] = useState(false);\n\n const attachmentInputRef = useRef(null);\n\n const fileUploadConfig = useMemo(\n () => buildFileUploadConfig(config),\n [config]\n );\n\n const { addFiles, uploadFiles, queuedFiles, cancelUpload, isUploading } =\n useFileUploader({\n config: fileUploadConfig,\n setIsUploadingOnHost: setIsUploading,\n attachments,\n });\n\n const handleAddFile = async event => {\n addFiles(event.target.files);\n const uploadedFiles = await uploadFiles();\n isNotEmpty(uploadedFiles) && onChange([...attachments, ...uploadedFiles]);\n attachmentInputRef.current.value = null;\n };\n\n const handleUploadAttachments = () => attachmentInputRef.current.click();\n\n const handleFileInputClick = event => {\n if (!(!isEmpty(attachments) && fileUploadConfig.maxNumberOfFiles === 1)) {\n return;\n }\n event.preventDefault();\n Toastr.warning(t(\"neetoEditor.attachments.oneAttachmentAllowed\"));\n };\n\n useImperativeHandle(ref, () => ({ handleUploadAttachments }), []);\n\n const handleFilesDrop = async files => {\n addFiles(files);\n const uploadedFiles = await uploadFiles();\n isNotEmpty(uploadedFiles) && onChange([...attachments, ...uploadedFiles]);\n };\n\n useDropFiles({\n dropTargetRef: dragDropRef,\n attachments,\n onDrop: handleFilesDrop,\n });\n\n return (\n <div className={classnames(\"ne-attachments\", { [className]: className })}>\n <div className=\"ne-attachments__items\">\n {attachments.map(attachment => (\n <Attachment\n {...{\n allowDelete,\n allowOpenInNewTab,\n attachment,\n attachments,\n disabled,\n onChange,\n setSelectedAttachment,\n }}\n key={attachment.signedId}\n isLoading={\n !didFetchPreviewBundle &&\n selectedAttachment.url === attachment.url\n }\n />\n ))}\n {queuedFiles.map(attachment => (\n <AttachmentProgress\n {...{ attachment, cancelUpload }}\n key={attachment.id}\n />\n ))}\n </div>\n <div>\n {isIndependent && (\n <Button\n data-testid=\"neeto-editor-attachments-upload-button\"\n disabled={isUploading}\n label={t(\"neetoEditor.attachments.add\")}\n loading={isUploading}\n variant=\"link\"\n onClick={handleUploadAttachments}\n />\n )}\n <input\n accept={fileUploadConfig.allowedFileTypes?.join(\",\")}\n multiple={fileUploadConfig.maxNumberOfFiles !== 1}\n ref={attachmentInputRef}\n type=\"file\"\n onChange={handleAddFile}\n onClick={handleFileInputClick}\n />\n <Suspense fallback={<span />}>\n {isPresent(selectedAttachment) && (\n <Preview\n {...{\n attachments,\n selectedAttachment,\n setDidFetchPreviewBundle,\n setSelectedAttachment,\n }}\n onClose={() => setSelectedAttachment({})}\n />\n )}\n </Suspense>\n </div>\n </div>\n );\n};\n\nAttachments.displayName = \"NeetoEditorAttachments\";\n\nexport default memo(forwardRef(Attachments));\n"],"names":["buildFileUploadConfig","config","mergeRight","DEFAULT_FILE_UPLOAD_CONFIG","downloadFile","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","fileUrl","filename","response","blob","blobUrl","a","wrap","_callee$","_context","prev","next","fetch","sent","URL","createObjectURL","document","createElement","href","setAttribute","style","display","body","appendChild","click","removeChild","revokeObjectURL","t0","Toastr","error","stop","_x","_x2","apply","arguments","checkPreviewAvailability","contentType","previewUrl","length","undefined","startsWith","Menu","DropdownMenu","MenuItem","Attachment","attachment","attachments","disabled","onChange","setSelectedAttachment","isLoading","allowDelete","allowOpenInNewTab","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isRenaming","setIsRenaming","_useState3","_useState4","isUpdating","setIsUpdating","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isDeleting","setIsDeleting","_useState9","_useState0","newFilename","setNewFilename","renameRef","useRef","useOnClickOutside","handleDownload","url","handleOpenInNewTab","window","open","handleRename","_ref2","_response$data","signedId","payload","directUploadsApi","update","data","map","assoc","finish","handleDelete","_ref3","_callee2","_callee2$","_context2","abrupt","destroy","removeBy","handlers","_objectSpread","_defineProperty","ATTACHMENT_OPTIONS","OPEN_IN_NEW_TAB","DOWNLOAD","RENAME","DELETE","onMenuItemClick","_ref6","key","handler","handleKeyDown","_ref7","event","isEmpty","stopPropagation","preventDefault","_jsxs","_Fragment","children","_jsx","className","ref","Tooltip","content","position","Input","autoFocus","size","value","suffix","Button","icon","Check","loading","variant","onClick","X","withEventTargetValue","onKeyDown","FileIcon","fileName","Typography","Spinner","dropdownProps","customTarget","EllipsisVertical","Object","entries","_ref8","_ref9","label","concat","toLowerCase","Alert","isOpen","isSubmitting","submitButtonLabel","title","message","Trans","i18nKey","values","entity","onClose","onSubmit","AttachmentProgress","_attachment$progress","cancelUpload","progressPercentage","progress","handleCancel","id","Preview","lazy","Attachments","_fileUploadConfig$all","_ref$attachments","_ref$className","_ref$onChange","noop","_ref$isIndependent","isIndependent","_ref$disabled","_ref$dragDropRef","dragDropRef","_ref$config","_ref$setIsUploading","setIsUploading","_ref$allowDelete","_ref$allowOpenInNewTa","selectedAttachment","didFetchPreviewBundle","setDidFetchPreviewBundle","attachmentInputRef","fileUploadConfig","useMemo","_useFileUploader","useFileUploader","setIsUploadingOnHost","addFiles","uploadFiles","queuedFiles","isUploading","handleAddFile","uploadedFiles","target","files","isNotEmpty","_toConsumableArray","current","handleUploadAttachments","handleFileInputClick","maxNumberOfFiles","warning","useImperativeHandle","handleFilesDrop","useDropFiles","dropTargetRef","onDrop","classnames","_createElement","accept","allowedFileTypes","join","multiple","type","Suspense","fallback","isPresent","displayName","memo","forwardRef"],"mappings":"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"}
@@ -3,8 +3,8 @@
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
4
  var index = require('./chunk-Crp27WMe.cjs.js');
5
5
  var neetoCist = require('@bigbinary/neeto-cist');
6
- var constants$1 = require('./chunk-Bmjmsp-E.cjs.js');
7
- var constants = require('./chunk-CNIzgxEP.cjs.js');
6
+ var constants$1 = require('./chunk-BNUTjVYA.cjs.js');
7
+ var constants = require('./chunk-D1iu346F.cjs.js');
8
8
 
9
9
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
10
10
 
@@ -109,4 +109,4 @@ exports.setInitialPosition = setInitialPosition;
109
109
  exports.transformEditorContent = transformEditorContent;
110
110
  exports.transformPastedHTML = transformPastedHTML;
111
111
  exports.validateAndFormatUrl = validateAndFormatUrl;
112
- //# sourceMappingURL=chunk-D7p10rIr.cjs.js.map
112
+ //# sourceMappingURL=chunk-BuuzKD6e.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunk-D7p10rIr.cjs.js","sources":["../../app/javascript/src/components/Editor/utils.js"],"sourcesContent":["import { Slice, Fragment, Node } from \"@tiptap/pm/model\";\nimport { Selection } from \"@tiptap/pm/state\";\nimport { isNotEmpty } from \"neetocist\";\n\nimport { ALL_PROTOCOL_URL_REGEXP, EDITOR_OPTIONS } from \"src/common/constants\";\n\nimport {\n EDITOR_LINE_HEIGHT,\n EDITOR_BORDER_SIZE,\n EDITOR_PADDING_SIZE,\n IMAGE_REGEX,\n IMAGE_REPLACEMENT_PATTERN,\n EMPTY_DIV_REGEX,\n TRAILING_BR_REGEX,\n} from \"./constants\";\n\nexport const getEditorStyles = ({ rows }) => {\n const editorHeight =\n rows * EDITOR_LINE_HEIGHT + 2 * (EDITOR_PADDING_SIZE + EDITOR_BORDER_SIZE);\n\n return `min-height: ${editorHeight}px;`;\n};\n\nexport const clipboardTextParser = (text, context) => {\n const nodes = [];\n const blocks = text.split(/\\n/);\n\n blocks.forEach(line => {\n const nodeJson = { type: \"paragraph\" };\n if (isNotEmpty(line)) {\n nodeJson.content = [{ type: \"text\", text: line }];\n }\n const node = Node.fromJSON(context.doc.type.schema, nodeJson);\n nodes.push(node);\n });\n\n const fragment = Fragment.fromArray(nodes);\n\n return Slice.maxOpen(fragment);\n};\n\nexport const setInitialPosition = editor => {\n const { state, view } = editor;\n const endPosition = Selection.atEnd(state.doc);\n const transaction = state.tr;\n transaction.setSelection(endPosition);\n view.dispatch(transaction);\n};\n\nexport const isEditorOverlaysActive = () =>\n document.querySelector(\n \".ne-media-uploader,.ne-embed-modal,.tippy-content,.ne-link-popover\"\n );\n\nexport const validateAndFormatUrl = url => {\n if (!ALL_PROTOCOL_URL_REGEXP.test(url)) {\n return null;\n }\n\n if (!/^[a-zA-Z]\\w*:/i.test(url)) {\n return `https://${url}`;\n }\n\n return url;\n};\n\nexport const transformEditorContent = content =>\n content\n ?.replaceAll(IMAGE_REGEX, IMAGE_REPLACEMENT_PATTERN)\n ?.replaceAll(EMPTY_DIV_REGEX, \"\")\n ?.replace(TRAILING_BR_REGEX, \"\");\n\nexport const isEmojiSuggestionsMenuActive = () =>\n !!document.querySelector(\".neeto-editor-emoji-suggestion\");\n\nexport const transformPastedHTML = content => {\n const contentWithoutBr = content.replaceAll(\"<br />\", \"<p></p>\");\n const doc = new DOMParser().parseFromString(contentWithoutBr, \"text/html\");\n\n // ProseMirror tags clipboard output from any TipTap/ProseMirror editor with\n // `data-pm-slice`. When present, the paste is coming from another\n // neeto-editor instance and we preserve the author's color choices. When\n // absent, the source is external (Word, websites, customer messages) and we\n // strip inline colors so foreign theming does not bleed into the editor.\n const isInternalPaste = doc.querySelector(\"[data-pm-slice]\") !== null;\n\n if (!isInternalPaste) {\n doc.querySelectorAll(\"[style]\").forEach(el => {\n el.style.color = \"\";\n el.style.backgroundColor = \"\";\n });\n }\n\n return doc.body.innerHTML;\n};\n\nexport const handlePaste = (view, event, slice) => {\n try {\n view.state.tr.replaceSelection(slice);\n\n return false;\n } catch {\n const text =\n event.clipboardData?.getData(\"text/plain\") ||\n slice.content.textBetween(0, slice.content.size, \"\\n\").trim();\n if (text) view.dispatch(view.state.tr.insertText(text).scrollIntoView());\n\n return true;\n }\n};\n\nexport const buildLevelsFromOptions = options => {\n const levels = {\n [EDITOR_OPTIONS.H1]: 1,\n [EDITOR_OPTIONS.H2]: 2,\n [EDITOR_OPTIONS.H3]: 3,\n [EDITOR_OPTIONS.H4]: 4,\n [EDITOR_OPTIONS.H5]: 5,\n [EDITOR_OPTIONS.H6]: 6,\n };\n\n return Object.entries(levels)\n .filter(heading => options.includes(heading[0]))\n .map(heading => heading[1]);\n};\n"],"names":["getEditorStyles","_ref","rows","editorHeight","EDITOR_LINE_HEIGHT","EDITOR_PADDING_SIZE","EDITOR_BORDER_SIZE","concat","clipboardTextParser","text","context","nodes","blocks","split","forEach","line","nodeJson","type","isNotEmpty","content","node","Node","fromJSON","doc","schema","push","fragment","Fragment","fromArray","Slice","maxOpen","setInitialPosition","editor","state","view","endPosition","Selection","atEnd","transaction","tr","setSelection","dispatch","isEditorOverlaysActive","document","querySelector","validateAndFormatUrl","url","ALL_PROTOCOL_URL_REGEXP","test","transformEditorContent","_content$replaceAll","replaceAll","IMAGE_REGEX","IMAGE_REPLACEMENT_PATTERN","EMPTY_DIV_REGEX","replace","TRAILING_BR_REGEX","isEmojiSuggestionsMenuActive","transformPastedHTML","contentWithoutBr","DOMParser","parseFromString","isInternalPaste","querySelectorAll","el","style","color","backgroundColor","body","innerHTML","handlePaste","event","slice","replaceSelection","_unused","_event$clipboardData","clipboardData","getData","textBetween","size","trim","insertText","scrollIntoView","buildLevelsFromOptions","options","levels","_defineProperty","EDITOR_OPTIONS","H1","H2","H3","H4","H5","H6","Object","entries","filter","heading","includes","map"],"mappings":"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"}
1
+ {"version":3,"file":"chunk-BuuzKD6e.cjs.js","sources":["../../app/javascript/src/components/Editor/utils.js"],"sourcesContent":["import { Slice, Fragment, Node } from \"@tiptap/pm/model\";\nimport { Selection } from \"@tiptap/pm/state\";\nimport { isNotEmpty } from \"neetocist\";\n\nimport { ALL_PROTOCOL_URL_REGEXP, EDITOR_OPTIONS } from \"src/common/constants\";\n\nimport {\n EDITOR_LINE_HEIGHT,\n EDITOR_BORDER_SIZE,\n EDITOR_PADDING_SIZE,\n IMAGE_REGEX,\n IMAGE_REPLACEMENT_PATTERN,\n EMPTY_DIV_REGEX,\n TRAILING_BR_REGEX,\n} from \"./constants\";\n\nexport const getEditorStyles = ({ rows }) => {\n const editorHeight =\n rows * EDITOR_LINE_HEIGHT + 2 * (EDITOR_PADDING_SIZE + EDITOR_BORDER_SIZE);\n\n return `min-height: ${editorHeight}px;`;\n};\n\nexport const clipboardTextParser = (text, context) => {\n const nodes = [];\n const blocks = text.split(/\\n/);\n\n blocks.forEach(line => {\n const nodeJson = { type: \"paragraph\" };\n if (isNotEmpty(line)) {\n nodeJson.content = [{ type: \"text\", text: line }];\n }\n const node = Node.fromJSON(context.doc.type.schema, nodeJson);\n nodes.push(node);\n });\n\n const fragment = Fragment.fromArray(nodes);\n\n return Slice.maxOpen(fragment);\n};\n\nexport const setInitialPosition = editor => {\n const { state, view } = editor;\n const endPosition = Selection.atEnd(state.doc);\n const transaction = state.tr;\n transaction.setSelection(endPosition);\n view.dispatch(transaction);\n};\n\nexport const isEditorOverlaysActive = () =>\n document.querySelector(\n \".ne-media-uploader,.ne-embed-modal,.tippy-content,.ne-link-popover\"\n );\n\nexport const validateAndFormatUrl = url => {\n if (!ALL_PROTOCOL_URL_REGEXP.test(url)) {\n return null;\n }\n\n if (!/^[a-zA-Z]\\w*:/i.test(url)) {\n return `https://${url}`;\n }\n\n return url;\n};\n\nexport const transformEditorContent = content =>\n content\n ?.replaceAll(IMAGE_REGEX, IMAGE_REPLACEMENT_PATTERN)\n ?.replaceAll(EMPTY_DIV_REGEX, \"\")\n ?.replace(TRAILING_BR_REGEX, \"\");\n\nexport const isEmojiSuggestionsMenuActive = () =>\n !!document.querySelector(\".neeto-editor-emoji-suggestion\");\n\nexport const transformPastedHTML = content => {\n const contentWithoutBr = content.replaceAll(\"<br />\", \"<p></p>\");\n const doc = new DOMParser().parseFromString(contentWithoutBr, \"text/html\");\n\n // ProseMirror tags clipboard output from any TipTap/ProseMirror editor with\n // `data-pm-slice`. When present, the paste is coming from another\n // neeto-editor instance and we preserve the author's color choices. When\n // absent, the source is external (Word, websites, customer messages) and we\n // strip inline colors so foreign theming does not bleed into the editor.\n const isInternalPaste = doc.querySelector(\"[data-pm-slice]\") !== null;\n\n if (!isInternalPaste) {\n doc.querySelectorAll(\"[style]\").forEach(el => {\n el.style.color = \"\";\n el.style.backgroundColor = \"\";\n });\n }\n\n return doc.body.innerHTML;\n};\n\nexport const handlePaste = (view, event, slice) => {\n try {\n view.state.tr.replaceSelection(slice);\n\n return false;\n } catch {\n const text =\n event.clipboardData?.getData(\"text/plain\") ||\n slice.content.textBetween(0, slice.content.size, \"\\n\").trim();\n if (text) view.dispatch(view.state.tr.insertText(text).scrollIntoView());\n\n return true;\n }\n};\n\nexport const buildLevelsFromOptions = options => {\n const levels = {\n [EDITOR_OPTIONS.H1]: 1,\n [EDITOR_OPTIONS.H2]: 2,\n [EDITOR_OPTIONS.H3]: 3,\n [EDITOR_OPTIONS.H4]: 4,\n [EDITOR_OPTIONS.H5]: 5,\n [EDITOR_OPTIONS.H6]: 6,\n };\n\n return Object.entries(levels)\n .filter(heading => options.includes(heading[0]))\n .map(heading => heading[1]);\n};\n"],"names":["getEditorStyles","_ref","rows","editorHeight","EDITOR_LINE_HEIGHT","EDITOR_PADDING_SIZE","EDITOR_BORDER_SIZE","concat","clipboardTextParser","text","context","nodes","blocks","split","forEach","line","nodeJson","type","isNotEmpty","content","node","Node","fromJSON","doc","schema","push","fragment","Fragment","fromArray","Slice","maxOpen","setInitialPosition","editor","state","view","endPosition","Selection","atEnd","transaction","tr","setSelection","dispatch","isEditorOverlaysActive","document","querySelector","validateAndFormatUrl","url","ALL_PROTOCOL_URL_REGEXP","test","transformEditorContent","_content$replaceAll","replaceAll","IMAGE_REGEX","IMAGE_REPLACEMENT_PATTERN","EMPTY_DIV_REGEX","replace","TRAILING_BR_REGEX","isEmojiSuggestionsMenuActive","transformPastedHTML","contentWithoutBr","DOMParser","parseFromString","isInternalPaste","querySelectorAll","el","style","color","backgroundColor","body","innerHTML","handlePaste","event","slice","replaceSelection","_unused","_event$clipboardData","clipboardData","getData","textBetween","size","trim","insertText","scrollIntoView","buildLevelsFromOptions","options","levels","_defineProperty","EDITOR_OPTIONS","H1","H2","H3","H4","H5","H6","Object","entries","filter","heading","includes","map"],"mappings":"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"}
@@ -9,13 +9,13 @@ var DOMPurify = require('dompurify');
9
9
  var CopyToClipboardButton = require('@bigbinary/neeto-molecules/v2/CopyToClipboardButton');
10
10
  var ramda = require('ramda');
11
11
  var client = require('react-dom/client');
12
- var constants = require('./chunk-Bmjmsp-E.cjs.js');
12
+ var constants = require('./chunk-BNUTjVYA.cjs.js');
13
13
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
14
14
  var common = require('./chunk-BKvkHB8E.cjs.js');
15
15
  var common$1 = require('./chunk-DXsX8co9.cjs.js');
16
16
  var neetoCist = require('@bigbinary/neeto-cist');
17
17
  var ReactDOM = require('react-dom/server');
18
- require('./chunk-CNIzgxEP.cjs.js');
18
+ require('./chunk-D1iu346F.cjs.js');
19
19
  var neetoAtoms = require('@bigbinary/neeto-atoms');
20
20
  var lucideReact = require('lucide-react');
21
21
  var reactUtils = require('@bigbinary/neeto-commons-frontend/v2/react-utils');
@@ -391,4 +391,4 @@ var index = /*#__PURE__*/React.memo(EditorContent);
391
391
 
392
392
  exports.index = index;
393
393
  exports.substituteVariables = substituteVariables;
394
- //# sourceMappingURL=chunk-DWyvxp1a.cjs.js.map
394
+ //# sourceMappingURL=chunk-Bv4wbN1E.cjs.js.map