argous 1.2.132 → 1.2.136
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/api/index.d.ts +1 -0
- package/dist/api/index.js +18 -1
- package/dist/components/AutoCompleteFavorites/AutoCompleteFavorites.d.ts +21 -0
- package/dist/components/AutoCompleteFavorites/AutoCompleteFavorites.js +331 -0
- package/dist/components/Compartilhar/Compartilhar.js +1 -1
- package/lib/actions/index.ts +57 -0
- package/lib/api/WebSocket.js +148 -0
- package/lib/api/index.js +402 -0
- package/lib/api/ws.js +27 -0
- package/lib/components/Alert/Alert.d.ts +8 -0
- package/lib/components/Alert/Alert.js +49 -0
- package/lib/components/Alert/index.d.ts +2 -0
- package/lib/components/Alert/index.js +1 -0
- package/lib/components/ArgousAction/ArgousAction.d.ts +8 -0
- package/lib/components/ArgousAction/ArgousAction.js +78 -0
- package/lib/components/ArgousAction/index.d.ts +2 -0
- package/lib/components/ArgousAction/index.js +1 -0
- package/lib/components/ArgousAvatar/ArgousAvatar.d.ts +14 -0
- package/lib/components/ArgousAvatar/ArgousAvatar.js +79 -0
- package/lib/components/ArgousAvatar/index.d.ts +2 -0
- package/lib/components/ArgousAvatar/index.js +1 -0
- package/lib/components/ArgousComplexPagination/ArgousComplexPagination.d.ts +76 -0
- package/lib/components/ArgousComplexPagination/ArgousComplexPagination.js +182 -0
- package/lib/components/ArgousComplexPagination/index.d.ts +2 -0
- package/lib/components/ArgousComplexPagination/index.js +1 -0
- package/lib/components/ArgousComplexTable/ArgousComplexTable.d.ts +131 -0
- package/lib/components/ArgousComplexTable/ArgousComplexTable.js +360 -0
- package/lib/components/ArgousComplexTable/index.d.ts +2 -0
- package/lib/components/ArgousComplexTable/index.js +1 -0
- package/lib/components/ArgousComplexTableBody/ArgousComplexTableBody.d.ts +177 -0
- package/lib/components/ArgousComplexTableBody/ArgousComplexTableBody.js +162 -0
- package/lib/components/ArgousComplexTableBody/index.d.ts +2 -0
- package/lib/components/ArgousComplexTableBody/index.js +1 -0
- package/lib/components/ArgousComplexTableHead/ArgousComplexTableHead.d.ts +73 -0
- package/lib/components/ArgousComplexTableHead/ArgousComplexTableHead.js +98 -0
- package/lib/components/ArgousComplexTableHead/index.d.ts +2 -0
- package/lib/components/ArgousComplexTableHead/index.js +1 -0
- package/lib/components/ArgousComplexTableToolbar/ArgousComplexTableToolBar.d.ts +58 -0
- package/lib/components/ArgousComplexTableToolbar/ArgousComplexTableToolBar.js +66 -0
- package/lib/components/ArgousComplexTableToolbar/index.d.ts +2 -0
- package/lib/components/ArgousComplexTableToolbar/index.js +1 -0
- package/lib/components/ArgousInput/ArgousInput.d.ts +8 -0
- package/lib/components/ArgousInput/ArgousInput.js +616 -0
- package/lib/components/ArgousInput/index.d.ts +2 -0
- package/lib/components/ArgousInput/index.js +1 -0
- package/lib/components/ArgousPagination/ArgousPagination.d.ts +8 -0
- package/lib/components/ArgousPagination/ArgousPagination.js +43 -0
- package/lib/components/ArgousPagination/index.d.ts +2 -0
- package/lib/components/ArgousPagination/index.js +1 -0
- package/lib/components/ArgousProgressBar/ArgousProgressBar.d.ts +22 -0
- package/lib/components/ArgousProgressBar/ArgousProgressBar.js +167 -0
- package/lib/components/ArgousProgressBar/index.d.ts +2 -0
- package/lib/components/ArgousProgressBar/index.js +1 -0
- package/lib/components/ArgousSimpleTable/ArgousSimpleTable.d.ts +8 -0
- package/lib/components/ArgousSimpleTable/ArgousSimpleTable.js +241 -0
- package/lib/components/ArgousSimpleTable/index.d.ts +2 -0
- package/lib/components/ArgousSimpleTable/index.js +1 -0
- package/lib/components/AutoComplete/AutoComplete.d.ts +8 -0
- package/lib/components/AutoComplete/AutoComplete.js +189 -0
- package/lib/components/AutoComplete/index.d.ts +2 -0
- package/lib/components/AutoComplete/index.js +1 -0
- package/lib/components/AutoCompleteFavorites/AutoCompleteFavorites.js +298 -0
- package/lib/components/BarChart/BarChart.d.ts +8 -0
- package/lib/components/BarChart/BarChart.js +92 -0
- package/lib/components/BarChart/index.d.ts +2 -0
- package/lib/components/BarChart/index.js +1 -0
- package/lib/components/BarraFerramentas/BarraFerramentas.d.ts +21 -0
- package/lib/components/BarraFerramentas/BarraFerramentas.js +277 -0
- package/lib/components/BarraFerramentas/index.d.ts +2 -0
- package/lib/components/BarraFerramentas/index.js +1 -0
- package/lib/components/Button/Button.d.ts +8 -0
- package/lib/components/Button/Button.js +135 -0
- package/lib/components/Button/index.d.ts +2 -0
- package/lib/components/Button/index.js +1 -0
- package/lib/components/Cabecalho/Cabecalho.d.ts +8 -0
- package/lib/components/Cabecalho/Cabecalho.js +245 -0
- package/lib/components/Cabecalho/index.d.ts +2 -0
- package/lib/components/Cabecalho/index.js +1 -0
- package/lib/components/Calendar/Calendar.d.ts +8 -0
- package/lib/components/Calendar/Calendar.js +156 -0
- package/lib/components/Calendar/index.d.ts +2 -0
- package/lib/components/Calendar/index.js +1 -0
- package/lib/components/CartaoUsuario/CartaoUsuario.d.ts +9 -0
- package/lib/components/CartaoUsuario/CartaoUsuario.js +108 -0
- package/lib/components/CartaoUsuario/index.d.ts +2 -0
- package/lib/components/CartaoUsuario/index.js +1 -0
- package/lib/components/Collapse/Collapse.d.ts +60 -0
- package/lib/components/Collapse/Collapse.js +317 -0
- package/lib/components/Collapse/index.d.ts +3 -0
- package/lib/components/Collapse/index.js +1 -0
- package/lib/components/Compartilhar/Compartilhar.d.ts +7 -0
- package/lib/components/Compartilhar/Compartilhar.js +314 -0
- package/lib/components/Compartilhar/index.d.ts +2 -0
- package/lib/components/Compartilhar/index.js +1 -0
- package/lib/components/ConfirmModal/BasicModal.tsx +63 -0
- package/lib/components/ConfirmModal/ModalProvider.tsx +81 -0
- package/lib/components/ConfirmModal/WrapperModal.tsx +33 -0
- package/lib/components/ConfirmModal/index.d.ts +20 -0
- package/lib/components/ConfirmModal/index.js +8 -0
- package/lib/components/DropArea/DropArea.d.ts +21 -0
- package/lib/components/DropArea/DropArea.js +90 -0
- package/lib/components/DropArea/Html5FileSelector.js +164 -0
- package/lib/components/DropArea/index.d.ts +2 -0
- package/lib/components/DropArea/index.js +1 -0
- package/lib/components/Editor/Events.ts +83 -0
- package/lib/components/Editor/ScriptLoader.ts +96 -0
- package/lib/components/Editor/TinyMCE.ts +19 -0
- package/lib/components/Editor/Utils.ts +95 -0
- package/lib/components/Editor/components/Editor.tsx +375 -0
- package/lib/components/Editor/components/EditorPropTypes.ts +106 -0
- package/lib/components/Editor/index.tsx +11 -0
- package/lib/components/Editor/skins/content/dark/content.css +72 -0
- package/lib/components/Editor/skins/content/dark/content.min.css +8 -0
- package/lib/components/Editor/skins/content/dark/content.min.css.map +1 -0
- package/lib/components/Editor/skins/content/default/content.css +67 -0
- package/lib/components/Editor/skins/content/default/content.min.css +8 -0
- package/lib/components/Editor/skins/content/default/content.min.css.map +1 -0
- package/lib/components/Editor/skins/content/document/content.css +72 -0
- package/lib/components/Editor/skins/content/document/content.min.css +8 -0
- package/lib/components/Editor/skins/content/document/content.min.css.map +1 -0
- package/lib/components/Editor/skins/content/writer/content.css +68 -0
- package/lib/components/Editor/skins/content/writer/content.min.css +8 -0
- package/lib/components/Editor/skins/content/writer/content.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/dark/content.css +714 -0
- package/lib/components/Editor/skins/ui/dark/content.inline.css +726 -0
- package/lib/components/Editor/skins/ui/dark/content.inline.min.css +8 -0
- package/lib/components/Editor/skins/ui/dark/content.inline.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/dark/content.min.css +8 -0
- package/lib/components/Editor/skins/ui/dark/content.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/dark/content.mobile.css +29 -0
- package/lib/components/Editor/skins/ui/dark/content.mobile.min.css +8 -0
- package/lib/components/Editor/skins/ui/dark/content.mobile.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/dark/fonts/tinymce-mobile.woff +0 -0
- package/lib/components/Editor/skins/ui/dark/skin.css +3034 -0
- package/lib/components/Editor/skins/ui/dark/skin.min.css +8 -0
- package/lib/components/Editor/skins/ui/dark/skin.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/dark/skin.mobile.css +673 -0
- package/lib/components/Editor/skins/ui/dark/skin.mobile.min.css +8 -0
- package/lib/components/Editor/skins/ui/dark/skin.mobile.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/dark/skin.shadowdom.css +37 -0
- package/lib/components/Editor/skins/ui/dark/skin.shadowdom.min.css +8 -0
- package/lib/components/Editor/skins/ui/dark/skin.shadowdom.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/default/content.css +732 -0
- package/lib/components/Editor/skins/ui/default/content.inline.css +726 -0
- package/lib/components/Editor/skins/ui/default/content.inline.min.css +8 -0
- package/lib/components/Editor/skins/ui/default/content.inline.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/default/content.min.css +8 -0
- package/lib/components/Editor/skins/ui/default/content.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/default/content.mobile.css +29 -0
- package/lib/components/Editor/skins/ui/default/content.mobile.min.css +8 -0
- package/lib/components/Editor/skins/ui/default/content.mobile.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/default/fonts/tinymce-mobile.woff +0 -0
- package/lib/components/Editor/skins/ui/default/skin.css +3034 -0
- package/lib/components/Editor/skins/ui/default/skin.min.css +8 -0
- package/lib/components/Editor/skins/ui/default/skin.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/default/skin.mobile.css +673 -0
- package/lib/components/Editor/skins/ui/default/skin.mobile.min.css +8 -0
- package/lib/components/Editor/skins/ui/default/skin.mobile.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/default/skin.shadowdom.css +37 -0
- package/lib/components/Editor/skins/ui/default/skin.shadowdom.min.css +8 -0
- package/lib/components/Editor/skins/ui/default/skin.shadowdom.min.css.map +1 -0
- package/lib/components/Editor/skins/ui/plugin-tinycomments-tinymce4/fonts/tinymce-mobile.woff +0 -0
- package/lib/components/Editor/skins/ui/plugin-tinycomments-tinymce4/plugin-tinycomments-tinymce4.css +1641 -0
- package/lib/components/Editor/skins/ui/plugin-tinycomments-tinymce4/plugin-tinycomments-tinymce4.min.css +8 -0
- package/lib/components/Editor/skins/ui/plugin-tinycomments-tinymce4/plugin-tinycomments-tinymce4.min.css.map +1 -0
- package/lib/components/Editor/tinymce/README.md +63 -0
- package/lib/components/Editor/tinymce/icons/default/icons.js +172 -0
- package/lib/components/Editor/tinymce/icons/default/icons.min.js +1 -0
- package/lib/components/Editor/tinymce/jquery.tinymce.min.js +92 -0
- package/lib/components/Editor/tinymce/langs/README.md +3 -0
- package/lib/components/Editor/tinymce/langs/pt_BR.js +419 -0
- package/lib/components/Editor/tinymce/license.txt +504 -0
- package/lib/components/Editor/tinymce/plugins/advlist/plugin.js +280 -0
- package/lib/components/Editor/tinymce/plugins/advlist/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/anchor/plugin.js +216 -0
- package/lib/components/Editor/tinymce/plugins/anchor/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/autolink/plugin.js +185 -0
- package/lib/components/Editor/tinymce/plugins/autolink/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/autoresize/plugin.js +171 -0
- package/lib/components/Editor/tinymce/plugins/autoresize/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/autosave/plugin.js +212 -0
- package/lib/components/Editor/tinymce/plugins/autosave/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/bbcode/plugin.js +99 -0
- package/lib/components/Editor/tinymce/plugins/bbcode/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/charmap/plugin.js +1706 -0
- package/lib/components/Editor/tinymce/plugins/charmap/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/code/plugin.js +92 -0
- package/lib/components/Editor/tinymce/plugins/code/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/codesample/plugin.js +2332 -0
- package/lib/components/Editor/tinymce/plugins/codesample/plugin.min.js +9 -0
- package/{dist/components/Editor/tinymce/plugins/textcolor → lib/components/Editor/tinymce/plugins/colorpicker}/plugin.js +8 -5
- package/lib/components/Editor/tinymce/plugins/colorpicker/plugin.min.js +9 -0
- package/{dist/components/Editor/tinymce/plugins/colorpicker → lib/components/Editor/tinymce/plugins/contextmenu}/plugin.js +8 -5
- package/lib/components/Editor/tinymce/plugins/contextmenu/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/directionality/plugin.js +320 -0
- package/lib/components/Editor/tinymce/plugins/directionality/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/emoticons/js/emojiimages.js +9424 -0
- package/lib/components/Editor/tinymce/plugins/emoticons/js/emojiimages.min.js +3 -0
- package/lib/components/Editor/tinymce/plugins/emoticons/js/emojis.js +9423 -0
- package/lib/components/Editor/tinymce/plugins/emoticons/js/emojis.min.js +2 -0
- package/lib/components/Editor/tinymce/plugins/emoticons/plugin.js +605 -0
- package/lib/components/Editor/tinymce/plugins/emoticons/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/fullpage/plugin.js +544 -0
- package/lib/components/Editor/tinymce/plugins/fullpage/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/fullscreen/plugin.js +979 -0
- package/lib/components/Editor/tinymce/plugins/fullscreen/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/help/plugin.js +873 -0
- package/lib/components/Editor/tinymce/plugins/help/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/hr/plugin.js +46 -0
- package/lib/components/Editor/tinymce/plugins/hr/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/image/plugin.js +1661 -0
- package/lib/components/Editor/tinymce/plugins/image/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/imagetools/plugin.js +1354 -0
- package/lib/components/Editor/tinymce/plugins/imagetools/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/importcss/plugin.js +343 -0
- package/lib/components/Editor/tinymce/plugins/importcss/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/insertdatetime/plugin.js +177 -0
- package/lib/components/Editor/tinymce/plugins/insertdatetime/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/legacyoutput/plugin.js +199 -0
- package/lib/components/Editor/tinymce/plugins/legacyoutput/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/link/plugin.js +1287 -0
- package/lib/components/Editor/tinymce/plugins/link/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/lists/plugin.js +2286 -0
- package/lib/components/Editor/tinymce/plugins/lists/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/media/plugin.js +1382 -0
- package/lib/components/Editor/tinymce/plugins/media/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/nonbreaking/plugin.js +101 -0
- package/lib/components/Editor/tinymce/plugins/nonbreaking/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/noneditable/plugin.js +117 -0
- package/lib/components/Editor/tinymce/plugins/noneditable/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/pagebreak/plugin.js +105 -0
- package/lib/components/Editor/tinymce/plugins/pagebreak/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/paste/plugin.js +1764 -0
- package/lib/components/Editor/tinymce/plugins/paste/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/preview/plugin.js +127 -0
- package/lib/components/Editor/tinymce/plugins/preview/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/print/plugin.js +53 -0
- package/lib/components/Editor/tinymce/plugins/print/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/quickbars/plugin.js +489 -0
- package/lib/components/Editor/tinymce/plugins/quickbars/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/save/plugin.js +119 -0
- package/lib/components/Editor/tinymce/plugins/save/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/searchreplace/plugin.js +1163 -0
- package/lib/components/Editor/tinymce/plugins/searchreplace/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/spellchecker/plugin.js +731 -0
- package/lib/components/Editor/tinymce/plugins/spellchecker/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/tabfocus/plugin.js +129 -0
- package/lib/components/Editor/tinymce/plugins/tabfocus/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/table/plugin.js +10938 -0
- package/lib/components/Editor/tinymce/plugins/table/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/template/plugin.js +577 -0
- package/lib/components/Editor/tinymce/plugins/template/plugin.min.js +9 -0
- package/{dist/components/Editor/tinymce/plugins/contextmenu → lib/components/Editor/tinymce/plugins/textcolor}/plugin.js +8 -5
- package/lib/components/Editor/tinymce/plugins/textcolor/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/textpattern/plugin.js +1394 -0
- package/lib/components/Editor/tinymce/plugins/textpattern/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/toc/plugin.js +236 -0
- package/lib/components/Editor/tinymce/plugins/toc/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/visualblocks/plugin.js +104 -0
- package/lib/components/Editor/tinymce/plugins/visualblocks/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/visualchars/plugin.js +541 -0
- package/lib/components/Editor/tinymce/plugins/visualchars/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/plugins/wordcount/plugin.js +416 -0
- package/lib/components/Editor/tinymce/plugins/wordcount/plugin.min.js +9 -0
- package/lib/components/Editor/tinymce/skins/content/dark/content.css +72 -0
- package/lib/components/Editor/tinymce/skins/content/dark/content.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/content/dark/content.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/content/default/content.css +67 -0
- package/lib/components/Editor/tinymce/skins/content/default/content.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/content/default/content.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/content/document/content.css +72 -0
- package/lib/components/Editor/tinymce/skins/content/document/content.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/content/document/content.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/content/writer/content.css +68 -0
- package/lib/components/Editor/tinymce/skins/content/writer/content.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/content/writer/content.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.css +732 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.inline.css +726 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.inline.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.inline.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.mobile.css +29 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.mobile.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/content.mobile.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/fonts/tinymce-mobile.woff +0 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.css +3034 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.mobile.css +673 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.mobile.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.mobile.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.shadowdom.css +37 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.shadowdom.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide/skin.shadowdom.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.css +714 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.inline.css +726 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.inline.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.inline.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.mobile.css +29 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.mobile.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/content.mobile.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/fonts/tinymce-mobile.woff +0 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.css +3034 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.mobile.css +673 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.mobile.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.mobile.min.css.map +1 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.shadowdom.css +37 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +8 -0
- package/lib/components/Editor/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css.map +1 -0
- package/lib/components/Editor/tinymce/themes/mobile/theme.js +13587 -0
- package/lib/components/Editor/tinymce/themes/mobile/theme.min.js +9 -0
- package/lib/components/Editor/tinymce/themes/silver/theme.js +32480 -0
- package/lib/components/Editor/tinymce/themes/silver/theme.min.js +9 -0
- package/lib/components/Editor/tinymce/tinymce.d.ts +2963 -0
- package/lib/components/Editor/tinymce/tinymce.js +30106 -0
- package/lib/components/Editor/tinymce/tinymce.min.js +30106 -0
- package/lib/components/FilePreparer/FilePreparer.d.ts +26 -0
- package/lib/components/FilePreparer/FilePreparer.js +247 -0
- package/lib/components/FilePreparer/index.d.ts +2 -0
- package/lib/components/FilePreparer/index.js +1 -0
- package/lib/components/FileUploader/FileUploader.d.ts +9 -0
- package/lib/components/FileUploader/FileUploader.js +318 -0
- package/lib/components/FileUploader/index.d.ts +2 -0
- package/lib/components/FileUploader/index.js +1 -0
- package/lib/components/FormVisualizer/FormVisualizer.d.ts +92 -0
- package/lib/components/FormVisualizer/FormVisualizer.js +289 -0
- package/lib/components/FormVisualizer/index.d.ts +2 -0
- package/lib/components/FormVisualizer/index.js +1 -0
- package/lib/components/Highlight/Highlight.d.ts +7 -0
- package/lib/components/Highlight/Highlight.js +51 -0
- package/lib/components/Highlight/index.d.ts +2 -0
- package/lib/components/Highlight/index.js +1 -0
- package/lib/components/ImageResize/ImageResize.d.ts +28 -0
- package/lib/components/ImageResize/ImageResize.js +479 -0
- package/lib/components/ImageResize/index.d.ts +2 -0
- package/lib/components/ImageResize/index.js +1 -0
- package/lib/components/ImageResizeButton/ImageResizeButton.d.ts +26 -0
- package/lib/components/ImageResizeButton/ImageResizeButton.js +65 -0
- package/lib/components/ImageResizeButton/index.d.ts +2 -0
- package/lib/components/ImageResizeButton/index.js +1 -0
- package/lib/components/Input/Input.d.ts +8 -0
- package/lib/components/Input/Input.js +353 -0
- package/lib/components/Input/index.d.ts +2 -0
- package/lib/components/Input/index.js +1 -0
- package/lib/components/InputTags/InputTags.d.ts +8 -0
- package/lib/components/InputTags/InputTags.js +94 -0
- package/lib/components/InputTags/index.d.ts +2 -0
- package/lib/components/InputTags/index.js +1 -0
- package/lib/components/ListSelect/ListSelect.d.ts +8 -0
- package/lib/components/ListSelect/ListSelect.js +94 -0
- package/lib/components/ListSelect/index.d.ts +2 -0
- package/lib/components/ListSelect/index.js +1 -0
- package/lib/components/MaterialButton/MaterialButton.d.ts +13 -0
- package/lib/components/MaterialButton/MaterialButton.js +177 -0
- package/lib/components/MaterialButton/index.d.ts +2 -0
- package/lib/components/MaterialButton/index.js +1 -0
- package/lib/components/MenuBar/MenuBar.d.ts +8 -0
- package/lib/components/MenuBar/MenuBar.js +139 -0
- package/lib/components/MenuBar/index.d.ts +2 -0
- package/lib/components/MenuBar/index.js +1 -0
- package/lib/components/MonthPicker/MonthPicker.d.ts +8 -0
- package/lib/components/MonthPicker/MonthPicker.js +313 -0
- package/lib/components/MonthPicker/index.d.ts +2 -0
- package/lib/components/MonthPicker/index.js +1 -0
- package/lib/components/MultipleSelect/MultipleSelect.d.ts +8 -0
- package/lib/components/MultipleSelect/MultipleSelect.js +106 -0
- package/lib/components/MultipleSelect/index.d.ts +2 -0
- package/lib/components/MultipleSelect/index.js +1 -0
- package/lib/components/OtpInput/OtpInput.tsx +244 -0
- package/lib/components/OtpInput/index.d.ts +2 -0
- package/lib/components/OtpInput/index.js +1 -0
- package/lib/components/OutputText/OutputText.d.ts +8 -0
- package/lib/components/OutputText/OutputText.js +57 -0
- package/lib/components/OutputText/index.d.ts +2 -0
- package/lib/components/OutputText/index.js +1 -0
- package/lib/components/Pagination/Pagination.d.ts +8 -0
- package/lib/components/Pagination/Pagination.js +32 -0
- package/lib/components/Pagination/index.d.ts +2 -0
- package/lib/components/Pagination/index.js +1 -0
- package/lib/components/Programa/Programa.d.ts +31 -0
- package/lib/components/Programa/Programa.js +172 -0
- package/lib/components/Programa/index.d.ts +2 -0
- package/lib/components/Programa/index.js +1 -0
- package/lib/components/ProgressBar/ProgressBar.d.ts +8 -0
- package/lib/components/ProgressBar/ProgressBar.js +71 -0
- package/lib/components/ProgressBar/index.d.ts +2 -0
- package/lib/components/ProgressBar/index.js +1 -0
- package/lib/components/Select/Select.d.ts +8 -0
- package/lib/components/Select/Select.js +117 -0
- package/lib/components/Select/index.d.ts +2 -0
- package/lib/components/Select/index.js +1 -0
- package/lib/components/SimpleTable/SimpleTable.d.ts +13 -0
- package/lib/components/SimpleTable/SimpleTable.js +504 -0
- package/lib/components/SimpleTable/index.d.ts +2 -0
- package/lib/components/SimpleTable/index.js +2 -0
- package/lib/components/Stepper/Stepper.d.ts +54 -0
- package/lib/components/Stepper/Stepper.js +222 -0
- package/lib/components/Stepper/index.d.ts +2 -0
- package/lib/components/Stepper/index.js +1 -0
- package/lib/components/TablePicker/TablePicker.d.ts +8 -0
- package/lib/components/TablePicker/TablePicker.js +238 -0
- package/lib/components/TablePicker/index.d.ts +2 -0
- package/lib/components/TablePicker/index.js +1 -0
- package/lib/components/Tabs/Tabs.d.ts +8 -0
- package/lib/components/Tabs/Tabs.js +59 -0
- package/lib/components/Tabs/index.d.ts +2 -0
- package/lib/components/Tabs/index.js +1 -0
- package/lib/components/TextArea/TextArea.d.ts +8 -0
- package/lib/components/TextArea/TextArea.js +123 -0
- package/lib/components/TextArea/index.d.ts +2 -0
- package/lib/components/TextArea/index.js +1 -0
- package/lib/components/ThreadLog/ThreadLog.d.ts +8 -0
- package/lib/components/ThreadLog/ThreadLog.js +189 -0
- package/lib/components/ThreadLog/index.d.ts +2 -0
- package/lib/components/ThreadLog/index.js +1 -0
- package/lib/components/UtilAutoComplete/UtilAutoComplete.d.ts +93 -0
- package/lib/components/UtilAutoComplete/UtilAutoComplete.js +130 -0
- package/lib/components/UtilAutoComplete/index.d.ts +2 -0
- package/lib/components/UtilAutoComplete/index.js +1 -0
- package/lib/components/index.d.ts +148 -0
- package/lib/components/index.js +146 -0
- package/lib/fieldsRedux/createField.d.ts +8 -0
- package/lib/fieldsRedux/createField.js +120 -0
- package/lib/fieldsRedux/fieldsRedux.d.ts +71 -0
- package/lib/fieldsRedux/fieldsRedux.js +391 -0
- package/lib/fieldsRedux/index.d.ts +4 -0
- package/lib/fieldsRedux/index.js +5 -0
- package/lib/fieldsRedux/passFields.d.ts +5 -0
- package/lib/fieldsRedux/passFields.js +76 -0
- package/lib/reducers/argous.ts +103 -0
- package/lib/reducers/index.ts +6 -0
- package/lib/types.d.ts +144 -0
- package/lib/utils/api.ts +153 -0
- package/lib/utils/config.ts +12 -0
- package/lib/utils/date.ts +63 -0
- package/lib/utils/index.ts +314 -0
- package/lib/utils/rippleEffect.js +211 -0
- package/lib/utils/store.ts +11 -0
- package/lib/utils/xmlToJson.js +117 -0
- package/package.json +1 -1
- package/dist/components/ArgousComplexTableBody/dnd/Container.d.ts +0 -55
- package/dist/components/ArgousComplexTableBody/dnd/Container.js +0 -173
- package/dist/components/ArgousComplexTableBody/dnd/Draggable.d.ts +0 -14
- package/dist/components/ArgousComplexTableBody/dnd/Draggable.js +0 -73
- package/dist/components/ArgousComplexTableBody/dnd/index.d.ts +0 -2
- package/dist/components/ArgousComplexTableBody/dnd/index.js +0 -10
- package/dist/components/ConfirmModal/useModal.d.ts +0 -2
- package/dist/components/ConfirmModal/useModal.js +0 -9
- package/dist/components/DropArea/worker.d.ts +0 -1
- package/dist/components/DropArea/worker.js +0 -55
- package/dist/components/Editor/tinymce/icons/default/icons.d.ts +0 -0
- package/dist/components/Editor/tinymce/icons/default/icons.js +0 -173
- package/dist/components/Editor/tinymce/plugins/advlist/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/advlist/plugin.js +0 -271
- package/dist/components/Editor/tinymce/plugins/anchor/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/anchor/plugin.js +0 -207
- package/dist/components/Editor/tinymce/plugins/autolink/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/autolink/plugin.js +0 -187
- package/dist/components/Editor/tinymce/plugins/autoresize/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/autoresize/plugin.js +0 -163
- package/dist/components/Editor/tinymce/plugins/autosave/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/autosave/plugin.js +0 -199
- package/dist/components/Editor/tinymce/plugins/bbcode/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/bbcode/plugin.js +0 -94
- package/dist/components/Editor/tinymce/plugins/charmap/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/charmap/plugin.js +0 -1691
- package/dist/components/Editor/tinymce/plugins/code/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/code/plugin.js +0 -85
- package/dist/components/Editor/tinymce/plugins/codesample/plugin.js +0 -2331
- package/dist/components/Editor/tinymce/plugins/colorpicker/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/contextmenu/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/directionality/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/directionality/plugin.js +0 -300
- package/dist/components/Editor/tinymce/plugins/emoticons/js/emojiimages.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/emoticons/js/emojiimages.js +0 -9425
- package/dist/components/Editor/tinymce/plugins/emoticons/js/emojis.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/emoticons/js/emojis.js +0 -9424
- package/dist/components/Editor/tinymce/plugins/emoticons/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/emoticons/plugin.js +0 -585
- package/dist/components/Editor/tinymce/plugins/fullpage/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/fullpage/plugin.js +0 -539
- package/dist/components/Editor/tinymce/plugins/fullscreen/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/fullscreen/plugin.js +0 -962
- package/dist/components/Editor/tinymce/plugins/help/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/help/plugin.js +0 -850
- package/dist/components/Editor/tinymce/plugins/hr/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/hr/plugin.js +0 -41
- package/dist/components/Editor/tinymce/plugins/image/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/image/plugin.js +0 -1673
- package/dist/components/Editor/tinymce/plugins/imagetools/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/imagetools/plugin.js +0 -1335
- package/dist/components/Editor/tinymce/plugins/importcss/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/importcss/plugin.js +0 -346
- package/dist/components/Editor/tinymce/plugins/insertdatetime/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/insertdatetime/plugin.js +0 -171
- package/dist/components/Editor/tinymce/plugins/legacyoutput/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/legacyoutput/plugin.js +0 -193
- package/dist/components/Editor/tinymce/plugins/link/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/link/plugin.js +0 -1282
- package/dist/components/Editor/tinymce/plugins/lists/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/lists/plugin.js +0 -2256
- package/dist/components/Editor/tinymce/plugins/media/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/media/plugin.js +0 -1374
- package/dist/components/Editor/tinymce/plugins/nonbreaking/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/nonbreaking/plugin.js +0 -93
- package/dist/components/Editor/tinymce/plugins/noneditable/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/noneditable/plugin.js +0 -114
- package/dist/components/Editor/tinymce/plugins/pagebreak/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/pagebreak/plugin.js +0 -96
- package/dist/components/Editor/tinymce/plugins/paste/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/paste/plugin.js +0 -1747
- package/dist/components/Editor/tinymce/plugins/preview/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/preview/plugin.js +0 -119
- package/dist/components/Editor/tinymce/plugins/print/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/print/plugin.js +0 -48
- package/dist/components/Editor/tinymce/plugins/quickbars/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/quickbars/plugin.js +0 -475
- package/dist/components/Editor/tinymce/plugins/save/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/save/plugin.js +0 -112
- package/dist/components/Editor/tinymce/plugins/searchreplace/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/searchreplace/plugin.js +0 -1149
- package/dist/components/Editor/tinymce/plugins/spellchecker/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/spellchecker/plugin.js +0 -723
- package/dist/components/Editor/tinymce/plugins/tabfocus/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/tabfocus/plugin.js +0 -124
- package/dist/components/Editor/tinymce/plugins/table/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/table/plugin.js +0 -10853
- package/dist/components/Editor/tinymce/plugins/template/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/template/plugin.js +0 -561
- package/dist/components/Editor/tinymce/plugins/textcolor/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/textpattern/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/textpattern/plugin.js +0 -1393
- package/dist/components/Editor/tinymce/plugins/toc/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/toc/plugin.js +0 -227
- package/dist/components/Editor/tinymce/plugins/visualblocks/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/visualblocks/plugin.js +0 -94
- package/dist/components/Editor/tinymce/plugins/visualchars/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/visualchars/plugin.js +0 -521
- package/dist/components/Editor/tinymce/plugins/wordcount/plugin.d.ts +0 -0
- package/dist/components/Editor/tinymce/plugins/wordcount/plugin.js +0 -397
- package/dist/components/Editor/tinymce/themes/mobile/theme.js +0 -13348
- package/dist/components/Editor/tinymce/themes/silver/theme.js +0 -32028
- package/dist/components/Editor/tinymce/tinymce.js +0 -30486
- package/dist/components/FilePreparer/worker.d.ts +0 -2
- package/dist/components/FilePreparer/worker.js +0 -31
- package/dist/convertReacticons.d.ts +0 -1
- package/dist/convertReacticons.js +0 -62
- package/dist/utils/Fields.d.ts +0 -0
- package/dist/utils/Fields.js +0 -1
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
import { enviaCompartilhamentoDePrograma, searchUsers } from '../../api/index';
|
|
2
|
+
import { formataNome, setError } from '../../utils/index';
|
|
3
|
+
import { IconButton, Grid, TextField, Button, InputAdornment, Typography, Collapse, Chip, makeStyles, Paper } from '@material-ui/core';
|
|
4
|
+
import { Autocomplete } from '@material-ui/lab';
|
|
5
|
+
import React, { useState, useEffect, forwardRef } from 'react';
|
|
6
|
+
import { MdLink } from 'react-icons/md';
|
|
7
|
+
|
|
8
|
+
const useStyles = makeStyles({
|
|
9
|
+
fundoCompartilhar: {
|
|
10
|
+
width: '500px',
|
|
11
|
+
padding: '20px',
|
|
12
|
+
marginTop: 5,
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
const Compartilhar = forwardRef((props, ref) => {
|
|
17
|
+
|
|
18
|
+
const [metodoCompartilhar, setMetodoCompartilhar] = useState('');
|
|
19
|
+
const [mensagemEmail, setMensagemEmail] = useState('');
|
|
20
|
+
const [email, setEmail] = useState([]);
|
|
21
|
+
const [stringEmail, setStringEmail] = useState('');
|
|
22
|
+
|
|
23
|
+
const [notificacao, setNotificacao] = useState([]);
|
|
24
|
+
const [stringNotificacao, setStringNotificacao] = useState('');
|
|
25
|
+
|
|
26
|
+
const [mensagemNotificação, setMensagemNotificacao] = useState('');
|
|
27
|
+
const link = props.linkCompartilhamento;
|
|
28
|
+
|
|
29
|
+
const [copiado, setCopiado] = useState(false);
|
|
30
|
+
const [enviado, setEnviado] = useState(false);
|
|
31
|
+
|
|
32
|
+
const [options, setOptions] = useState([]);
|
|
33
|
+
|
|
34
|
+
const erroVazio = { email: '', stringEmail: '', notificacao: '', stringNotificacao: '' };
|
|
35
|
+
const [erro, setErro] = useState(erroVazio);
|
|
36
|
+
|
|
37
|
+
const classes = useStyles();
|
|
38
|
+
|
|
39
|
+
function copiarParaAreaDeTransferencia() {
|
|
40
|
+
let link = document.getElementById('link');
|
|
41
|
+
link.select();
|
|
42
|
+
link.setSelectionRange(0, 99999);
|
|
43
|
+
document.execCommand('copy');
|
|
44
|
+
setCopiado(true);
|
|
45
|
+
setTimeout(() => {
|
|
46
|
+
setCopiado(false);
|
|
47
|
+
}, 3500);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
useEffect(() => {
|
|
51
|
+
if (stringEmail.length < 3 && stringNotificacao.length < 3) return;
|
|
52
|
+
(async () => {
|
|
53
|
+
const res = await searchUsers({ dsFiltroNome: metodoCompartilhar === 'email' ? stringEmail : stringNotificacao });
|
|
54
|
+
if (res.status) {
|
|
55
|
+
setOptions(res.users);
|
|
56
|
+
} else setError(res.dsErro);
|
|
57
|
+
})();
|
|
58
|
+
}, [stringEmail, stringNotificacao, metodoCompartilhar]);
|
|
59
|
+
|
|
60
|
+
async function enviaCompartilhamento(tpComp) {
|
|
61
|
+
let temp = false;
|
|
62
|
+
if (tpComp === 'E') {
|
|
63
|
+
if (email.length === 0 && mensagemEmail === '') {
|
|
64
|
+
setErro({ ...erro, email: 'Campo Obrigatório', stringEmail: 'Campo Obrigatório' });
|
|
65
|
+
temp = true;
|
|
66
|
+
} else {
|
|
67
|
+
if (email.length === 0) {
|
|
68
|
+
setErro({ ...erro, email: 'Campo Obrigatório' });
|
|
69
|
+
temp = true;
|
|
70
|
+
}
|
|
71
|
+
if (mensagemEmail === '') {
|
|
72
|
+
setErro({ ...erro, stringEmail: 'Campo Obrigatório' });
|
|
73
|
+
temp = true;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
} else if (notificacao.length === 0 && mensagemNotificação === '') {
|
|
77
|
+
setErro({ ...erro, notificacao: 'Campo Obrigatório', stringNotificacao: 'Campo Obrigatório' });
|
|
78
|
+
temp = true;
|
|
79
|
+
} else if (notificacao.length === 0) {
|
|
80
|
+
setErro({ ...erro, notificacao: 'Campo Obrigatório' });
|
|
81
|
+
temp = true;
|
|
82
|
+
} else if (mensagemNotificação === '') {
|
|
83
|
+
setErro({ ...erro, stringNotificacao: 'Campo Obrigatório' });
|
|
84
|
+
temp = true;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
if (temp) return;
|
|
88
|
+
|
|
89
|
+
const not = notificacao.map(item => item[0]);
|
|
90
|
+
const mail = email.map(item => item[0]);
|
|
91
|
+
|
|
92
|
+
const dados = {
|
|
93
|
+
mensagem: mensagemNotificação || mensagemEmail,
|
|
94
|
+
usuarios: not.length > 0 ? not : mail,
|
|
95
|
+
tpMensagem: tpComp,
|
|
96
|
+
link: link
|
|
97
|
+
};
|
|
98
|
+
const res = await enviaCompartilhamentoDePrograma(dados);
|
|
99
|
+
if (res.status) {
|
|
100
|
+
setNotificacao([]);
|
|
101
|
+
setEmail([]);
|
|
102
|
+
setMensagemEmail('');
|
|
103
|
+
setStringEmail('');
|
|
104
|
+
setStringNotificacao('');
|
|
105
|
+
setMensagemNotificacao('');
|
|
106
|
+
setEnviado(true);
|
|
107
|
+
setTimeout(() => {
|
|
108
|
+
setEnviado(false);
|
|
109
|
+
}, 3500);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return (
|
|
114
|
+
<Grid innerRef={ref} className={classes.fundoCompartilhar} component={Paper} elevation={2} onClick={e => e.stopPropagation()}>
|
|
115
|
+
<Grid container spacing={2} style={{ position: 'relative', padding: '6px 12px', display: 'flex' }} justifyContent='center'>
|
|
116
|
+
<Typography component='h3' style={{ fontSize: '24px', textAlign: 'center', marginTop: '0px' }}>Compartilhar</Typography>
|
|
117
|
+
<Grid item xs={12} className='row'>
|
|
118
|
+
<TextField
|
|
119
|
+
label='Link'
|
|
120
|
+
value={link}
|
|
121
|
+
readOnly
|
|
122
|
+
id='link'
|
|
123
|
+
fullWidth
|
|
124
|
+
variant='outlined'
|
|
125
|
+
margin='dense'
|
|
126
|
+
InputProps={{
|
|
127
|
+
endAdornment: (
|
|
128
|
+
<InputAdornment position='end'>
|
|
129
|
+
<IconButton onClick={() => copiarParaAreaDeTransferencia()} title='Copiar Link'>
|
|
130
|
+
<MdLink />
|
|
131
|
+
</IconButton>
|
|
132
|
+
</InputAdornment>
|
|
133
|
+
),
|
|
134
|
+
}} />
|
|
135
|
+
<Collapse in={copiado}>
|
|
136
|
+
<Typography variant='body2' component='div' color='primary'>Link copiado para a área de transferência!</Typography>
|
|
137
|
+
</Collapse>
|
|
138
|
+
</Grid>
|
|
139
|
+
<Grid item xs={6} style={{ display: 'flex', justifyContent: 'center' }}>
|
|
140
|
+
<IconButton size='medium' title='Enviar link por notificação' onClick={() => {
|
|
141
|
+
setErro(erroVazio); setEmail([]); setStringEmail(''); setMetodoCompartilhar(metodoCompartilhar === 'notificacao' ? '' : 'notificacao');
|
|
142
|
+
}} >
|
|
143
|
+
<Typography component='span' variant='body1' className='icon-linecons-megaphone icon-lg'
|
|
144
|
+
style={{
|
|
145
|
+
fontSize: '45px',
|
|
146
|
+
width: '75px',
|
|
147
|
+
height: '75px',
|
|
148
|
+
color: 'white',
|
|
149
|
+
background: '#009C6A',
|
|
150
|
+
borderRadius: '50px',
|
|
151
|
+
border: '5px solid #33b088',
|
|
152
|
+
}}
|
|
153
|
+
/>
|
|
154
|
+
</IconButton>
|
|
155
|
+
</Grid>
|
|
156
|
+
<Grid item xs={6} style={{ display: 'flex', justifyContent: 'center' }}>
|
|
157
|
+
<IconButton size='medium' title='Enviar link por email' onClick={() => {
|
|
158
|
+
setErro(erroVazio); setNotificacao([]); setStringNotificacao(''); setMetodoCompartilhar(metodoCompartilhar === 'email' ? '' : 'email');
|
|
159
|
+
}} >
|
|
160
|
+
<Typography component='span' variant='body1' className='glyph-icon icon-envelope icon-lg'
|
|
161
|
+
style={{
|
|
162
|
+
fontSize: '45px',
|
|
163
|
+
width: '75px',
|
|
164
|
+
height: '75px',
|
|
165
|
+
color: 'white',
|
|
166
|
+
background: '#009C6A',
|
|
167
|
+
borderRadius: '50px',
|
|
168
|
+
border: '5px solid #33b088',
|
|
169
|
+
}}
|
|
170
|
+
/>
|
|
171
|
+
</IconButton>
|
|
172
|
+
</Grid>
|
|
173
|
+
<Grid item xs={6} style={{ display: 'flex', justifyContent: 'center', paddingTop: 0, marginBottom: '5px' }}>
|
|
174
|
+
<Typography component='label' variant='body1'>Notificação</Typography>
|
|
175
|
+
</Grid>
|
|
176
|
+
<Grid item xs={6} style={{ display: 'flex', justifyContent: 'center', paddingTop: 0, marginBottom: '5px' }}>
|
|
177
|
+
<Typography component='label' variant='body1'>Email</Typography>
|
|
178
|
+
</Grid>
|
|
179
|
+
<Grid item xs={12} style={{ padding: 0 }}>
|
|
180
|
+
<Collapse in={metodoCompartilhar === 'notificacao'}>
|
|
181
|
+
<Grid container spacing={2}>
|
|
182
|
+
<Grid item xs={12}>
|
|
183
|
+
<Autocomplete
|
|
184
|
+
multiple
|
|
185
|
+
value={notificacao}
|
|
186
|
+
options={options}
|
|
187
|
+
getOptionLabel={option => formataNome(option[1])}
|
|
188
|
+
size='small'
|
|
189
|
+
limitTags={1}
|
|
190
|
+
onChange={(_e, value) => setNotificacao(value)}
|
|
191
|
+
disableCloseOnSelect
|
|
192
|
+
disablePortal
|
|
193
|
+
noOptionsText={stringEmail.length < 3 && stringNotificacao.length < 3 ? 'Digite para começar a pesquisar' : 'Não Encontrado'}
|
|
194
|
+
renderTags={(value, getTagProps) => (
|
|
195
|
+
value.map((option, index) => (
|
|
196
|
+
<Chip
|
|
197
|
+
variant='outlined'
|
|
198
|
+
label={option[1] || option}
|
|
199
|
+
{...getTagProps({ index })} />
|
|
200
|
+
))
|
|
201
|
+
)}
|
|
202
|
+
renderInput={params => (
|
|
203
|
+
<TextField
|
|
204
|
+
variant='outlined'
|
|
205
|
+
margin='dense'
|
|
206
|
+
label='Contatos:'
|
|
207
|
+
onChange={e => setStringNotificacao(e.target.value)}
|
|
208
|
+
placeholder={notificacao.length === 0 ? 'Selecionar' : undefined}
|
|
209
|
+
InputLabelProps={{ shrink: true }}
|
|
210
|
+
error={!!erro.notificacao}
|
|
211
|
+
helperText={erro.notificacao}
|
|
212
|
+
{...params}
|
|
213
|
+
/>
|
|
214
|
+
)}
|
|
215
|
+
/>
|
|
216
|
+
</Grid>
|
|
217
|
+
<Grid item xs={12}>
|
|
218
|
+
<TextField
|
|
219
|
+
variant='outlined'
|
|
220
|
+
margin='dense'
|
|
221
|
+
label='Mensagem:'
|
|
222
|
+
placeholder='Mensagem da Notificação'
|
|
223
|
+
fullWidth
|
|
224
|
+
value={mensagemNotificação}
|
|
225
|
+
onChange={e => setMensagemNotificacao(e.target.value)}
|
|
226
|
+
error={!!erro.stringNotificacao}
|
|
227
|
+
helperText={erro.stringNotificacao} />
|
|
228
|
+
</Grid>
|
|
229
|
+
<Grid container style={{ display: 'flex ' }} direction='row-reverse'>
|
|
230
|
+
<Grid item xs={2}>
|
|
231
|
+
<Button color='primary' variant='contained' onClick={() => enviaCompartilhamento('N')}>Enviar</Button>
|
|
232
|
+
</Grid>
|
|
233
|
+
<Grid item xs={10}>
|
|
234
|
+
<Collapse in={enviado}>
|
|
235
|
+
<Typography variant='body2' component='div' color='primary'>Link enviado com sucesso!</Typography>
|
|
236
|
+
</Collapse>
|
|
237
|
+
</Grid>
|
|
238
|
+
</Grid>
|
|
239
|
+
</Grid>
|
|
240
|
+
</Collapse>
|
|
241
|
+
</Grid>
|
|
242
|
+
<Grid item xs={12} style={{ padding: 0 }}>
|
|
243
|
+
<Collapse in={metodoCompartilhar === 'email'}>
|
|
244
|
+
<Grid container spacing={2}>
|
|
245
|
+
<Grid item xs={12}>
|
|
246
|
+
<Autocomplete
|
|
247
|
+
multiple
|
|
248
|
+
freeSolo
|
|
249
|
+
value={email}
|
|
250
|
+
options={options}
|
|
251
|
+
getOptionLabel={option => option[2]}
|
|
252
|
+
size='small'
|
|
253
|
+
limitTags={1}
|
|
254
|
+
onChange={(_e, value) => setEmail(value)}
|
|
255
|
+
disableCloseOnSelect
|
|
256
|
+
disablePortal
|
|
257
|
+
noOptionsText={stringEmail.length < 3 && stringNotificacao.length < 3 ? 'Digite para começar a pesquisar' : 'Não Encontrado'}
|
|
258
|
+
renderTags={(value, getTagProps) => (
|
|
259
|
+
value.map((option, index) => (
|
|
260
|
+
<Chip
|
|
261
|
+
variant='outlined'
|
|
262
|
+
label={option[2] || option}
|
|
263
|
+
{...getTagProps({ index })} />
|
|
264
|
+
))
|
|
265
|
+
)}
|
|
266
|
+
renderInput={params => (
|
|
267
|
+
<TextField
|
|
268
|
+
variant='outlined'
|
|
269
|
+
margin='dense'
|
|
270
|
+
label='Emails:'
|
|
271
|
+
onChange={e => setStringEmail(e.target.value)}
|
|
272
|
+
placeholder={email.length === 0 ? 'Selecionar' : undefined}
|
|
273
|
+
InputLabelProps={{ shrink: true }}
|
|
274
|
+
error={!!erro.email}
|
|
275
|
+
helperText={erro.email}
|
|
276
|
+
{...params}
|
|
277
|
+
/>
|
|
278
|
+
)}
|
|
279
|
+
/>
|
|
280
|
+
</Grid>
|
|
281
|
+
<Grid item xs={12}>
|
|
282
|
+
<TextField
|
|
283
|
+
multiline
|
|
284
|
+
label='Mensagem:'
|
|
285
|
+
rows='2'
|
|
286
|
+
margin='dense'
|
|
287
|
+
variant='outlined'
|
|
288
|
+
fullWidth
|
|
289
|
+
placeholder='Mensagem do Email'
|
|
290
|
+
value={mensagemEmail}
|
|
291
|
+
onChange={e => setMensagemEmail(e.target.value)}
|
|
292
|
+
style={{ resize: 'vertical', height: '50px' }}
|
|
293
|
+
error={!!erro.stringEmail}
|
|
294
|
+
helperText={erro.stringEmail} />
|
|
295
|
+
</Grid>
|
|
296
|
+
<Grid container style={{ display: 'flex' }} direction='row-reverse'>
|
|
297
|
+
<Grid item xs={2}>
|
|
298
|
+
<Button color='primary' variant='contained' onClick={() => enviaCompartilhamento('E')}>Enviar</Button>
|
|
299
|
+
</Grid>
|
|
300
|
+
<Grid item xs={10}>
|
|
301
|
+
<Collapse in={enviado}>
|
|
302
|
+
<Typography variant='body2' component='div' color='primary'>Link enviado com sucesso!</Typography>
|
|
303
|
+
</Collapse>
|
|
304
|
+
</Grid>
|
|
305
|
+
</Grid>
|
|
306
|
+
</Grid>
|
|
307
|
+
</Collapse>
|
|
308
|
+
</Grid>
|
|
309
|
+
</Grid>
|
|
310
|
+
</Grid >
|
|
311
|
+
);
|
|
312
|
+
});
|
|
313
|
+
|
|
314
|
+
export default Compartilhar;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './Compartilhar';
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { Dialog, DialogTitle, DialogContent, DialogContentText, DialogActions, Button, DialogProps } from '@material-ui/core';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
|
|
4
|
+
export interface BasicModalProps {
|
|
5
|
+
/**
|
|
6
|
+
* Label no botao de confirmar
|
|
7
|
+
*/
|
|
8
|
+
okLabel: React.ReactNode,
|
|
9
|
+
/**
|
|
10
|
+
* Label no botao de cancelar
|
|
11
|
+
*/
|
|
12
|
+
cancelLabel: React.ReactNode,
|
|
13
|
+
/**
|
|
14
|
+
* Titulo do modal
|
|
15
|
+
*/
|
|
16
|
+
title: React.ReactNode,
|
|
17
|
+
/**
|
|
18
|
+
* Descricao do modal
|
|
19
|
+
*/
|
|
20
|
+
description: React.ReactNode,
|
|
21
|
+
/**
|
|
22
|
+
* Props repassados ao componente dialog
|
|
23
|
+
*/
|
|
24
|
+
dialogProps: Omit<DialogProps, 'open'>,
|
|
25
|
+
/**
|
|
26
|
+
* @ignore
|
|
27
|
+
*/
|
|
28
|
+
proceed: Function,
|
|
29
|
+
/**
|
|
30
|
+
* @ignore
|
|
31
|
+
*/
|
|
32
|
+
cancel: Function,
|
|
33
|
+
/**
|
|
34
|
+
* @ignore
|
|
35
|
+
*/
|
|
36
|
+
open: boolean,
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const BasicModal = ({
|
|
40
|
+
okLabel = 'Ok',
|
|
41
|
+
cancelLabel = 'Cancelar',
|
|
42
|
+
title = '',
|
|
43
|
+
description = '',
|
|
44
|
+
open,
|
|
45
|
+
proceed,
|
|
46
|
+
dialogProps,
|
|
47
|
+
cancel
|
|
48
|
+
}: BasicModalProps) => {
|
|
49
|
+
return (
|
|
50
|
+
<Dialog open={open} onClose={() => cancel(false)} {...dialogProps}>
|
|
51
|
+
<DialogTitle>{title}</DialogTitle>
|
|
52
|
+
<DialogContent>
|
|
53
|
+
<DialogContentText component='div'>{description}</DialogContentText>
|
|
54
|
+
</DialogContent>
|
|
55
|
+
<DialogActions>
|
|
56
|
+
<Button variant='contained' color='secondary' onClick={() => proceed(false)}>{cancelLabel}</Button>
|
|
57
|
+
<Button variant='contained' color='primary' onClick={() => proceed(true)}>{okLabel}</Button>
|
|
58
|
+
</DialogActions>
|
|
59
|
+
</Dialog>
|
|
60
|
+
);
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export default BasicModal;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { CreateModalType, ModalProviderContextProps } from '.';
|
|
2
|
+
import BasicModal from './BasicModal';
|
|
3
|
+
import { setAnotherProgramField } from '../../fieldsRedux';
|
|
4
|
+
import { ArgousType } from '../../types';
|
|
5
|
+
import React, { createContext, useCallback, useEffect, useMemo, useState } from 'react';
|
|
6
|
+
import { connect } from 'react-redux';
|
|
7
|
+
import { useImmer } from 'use-immer';
|
|
8
|
+
|
|
9
|
+
// @ts-ignore
|
|
10
|
+
export const ModalProviderContext = createContext<ModalProviderContextProps>();
|
|
11
|
+
|
|
12
|
+
const ModalProvider = ({ children, argousSystem }: any) => {
|
|
13
|
+
|
|
14
|
+
const [modals, setCurrentModal] = useImmer<unknown[]>([]);
|
|
15
|
+
|
|
16
|
+
const close = useCallback((unmountDelay: number, index: number) => () => {
|
|
17
|
+
setTimeout(() => setCurrentModal(modais => void(modais.splice(index, 1))), unmountDelay);
|
|
18
|
+
}, [setCurrentModal]);
|
|
19
|
+
|
|
20
|
+
const createModal = useCallback<CreateModalType>((Component, unmountDelay = 0) => (props) => {
|
|
21
|
+
const promise = new Promise((resolve, reject) => {
|
|
22
|
+
setCurrentModal(modais => void(modais.push(<ModalWrapper Component={Component} close={close(unmountDelay, modals.length)} resolve={resolve} reject={reject} {...props} />)));
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
return promise.then((result) => {
|
|
26
|
+
close(unmountDelay, modals.length);
|
|
27
|
+
return result;
|
|
28
|
+
}, (result) => {
|
|
29
|
+
close(unmountDelay, modals.length);
|
|
30
|
+
return Promise.reject(result);
|
|
31
|
+
});
|
|
32
|
+
}, [close, modals.length, setCurrentModal]);
|
|
33
|
+
|
|
34
|
+
const openModal = useMemo(() => argousSystem?.openModal?.value, [argousSystem]);
|
|
35
|
+
|
|
36
|
+
useEffect(() => {
|
|
37
|
+
if (!openModal) return;
|
|
38
|
+
const { reject, resolve, ...props } = openModal;
|
|
39
|
+
createModal(BasicModal)(props).then(resolve as any, reject);
|
|
40
|
+
setAnotherProgramField('openModal', undefined, 'argousSystem');
|
|
41
|
+
//eslint-disable-next-line
|
|
42
|
+
}, [openModal]);
|
|
43
|
+
|
|
44
|
+
const context = useMemo(() => ({ createModal }), [createModal]);
|
|
45
|
+
|
|
46
|
+
return (
|
|
47
|
+
<ModalProviderContext.Provider value={context}>
|
|
48
|
+
{children}
|
|
49
|
+
{modals.map(Modal => Modal)}
|
|
50
|
+
</ModalProviderContext.Provider>
|
|
51
|
+
);
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
const mapStateToProps = (state: { argous: ArgousType }) => ({
|
|
55
|
+
argousSystem: state.argous.fields.argousSystem,
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
export default connect(mapStateToProps)(ModalProvider);
|
|
59
|
+
|
|
60
|
+
const ModalWrapper = ({ Component, reject, resolve, close, ...props }) => {
|
|
61
|
+
const [show, setShow] = useState(true);
|
|
62
|
+
|
|
63
|
+
const cancel = useCallback((reject: (reason?: any) => void) => <V extends unknown>(value: V) => {
|
|
64
|
+
setShow(false);
|
|
65
|
+
reject(value);
|
|
66
|
+
close();
|
|
67
|
+
}, [close]);
|
|
68
|
+
|
|
69
|
+
const proceed = useCallback((resolve: (value: unknown) => void) => <V extends unknown>(value: V) => {
|
|
70
|
+
setShow(false);
|
|
71
|
+
resolve(value);
|
|
72
|
+
close();
|
|
73
|
+
}, [close]);
|
|
74
|
+
|
|
75
|
+
return <Component
|
|
76
|
+
cancel={cancel(reject)}
|
|
77
|
+
proceed={proceed(resolve)}
|
|
78
|
+
open={show}
|
|
79
|
+
{...props}
|
|
80
|
+
/>;
|
|
81
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import Button from '../MaterialButton/MaterialButton';
|
|
2
|
+
import { Dialog, DialogActions, DialogContent, DialogProps, DialogTitle } from '@material-ui/core';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
|
|
5
|
+
export interface WrapperModalProps {
|
|
6
|
+
okLabel: React.ReactNode,
|
|
7
|
+
cancelLabel: React.ReactNode,
|
|
8
|
+
title: React.ReactNode,
|
|
9
|
+
dialogProps: Omit<DialogProps, 'open'>,
|
|
10
|
+
/**
|
|
11
|
+
* @ignore
|
|
12
|
+
*/
|
|
13
|
+
proceed: Function,
|
|
14
|
+
/**
|
|
15
|
+
* @ignore
|
|
16
|
+
*/
|
|
17
|
+
open: boolean,
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const WrapperModal = (Component: (props: any) => JSX.Element) => ({ proceed, open, title, cancelLabel = 'Cancelar', okLabel = 'Ok', dialogProps, ...props }: WrapperModalProps) => {
|
|
21
|
+
return <Dialog open={open} onClose={() => proceed(false)} {...dialogProps}>
|
|
22
|
+
{title && <DialogTitle>{title}</DialogTitle>}
|
|
23
|
+
<DialogContent>
|
|
24
|
+
<Component {...props}/>
|
|
25
|
+
</DialogContent>
|
|
26
|
+
<DialogActions>
|
|
27
|
+
{cancelLabel && <Button variant='contained' color='secondary' onClick={() => proceed(false)}>{cancelLabel}</Button>}
|
|
28
|
+
{okLabel && <Button variant='contained' color='primary' onClick={() => proceed(true)}>{okLabel}</Button>}
|
|
29
|
+
</DialogActions>
|
|
30
|
+
</Dialog>;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export default WrapperModal;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface BasicComponentProps {
|
|
2
|
+
cancel: (value: unknown) => void,
|
|
3
|
+
proceed: (value: unknown) => void,
|
|
4
|
+
open: boolean
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export type CreateModalType = <P>(Component: (props: P & BasicComponentProps) => JSX.Element, unmountDelay?: number) => (props?: Omit<P, keyof BasicComponentProps>) => Promise<unknown>
|
|
8
|
+
|
|
9
|
+
export interface ModalProviderContextProps {
|
|
10
|
+
createModal: CreateModalType
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export { default } from './ModalProvider';
|
|
14
|
+
export * from './ModalProvider';
|
|
15
|
+
|
|
16
|
+
export { default as BasicModal } from './BasicModal';
|
|
17
|
+
export * from './BasicModal';
|
|
18
|
+
|
|
19
|
+
export { default as WrapperModal } from './WrapperModal';
|
|
20
|
+
export * from './WrapperModal';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
export interface DropAreaProps extends Omit<React.HTMLProps<HTMLDivElement>, 'onChange'> {
|
|
4
|
+
/**
|
|
5
|
+
* Função chamada ao receber arquivo
|
|
6
|
+
*
|
|
7
|
+
* @param arquivo - Arquivo
|
|
8
|
+
*
|
|
9
|
+
* @returns {void} Sem Retorno
|
|
10
|
+
*/
|
|
11
|
+
onChange?: (arquivo: File) => void
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Componente para drop de arquivos
|
|
16
|
+
*
|
|
17
|
+
* Repassa o arquivo dropado diretamente para um file preparer se tiver o mesmo como filho
|
|
18
|
+
*/
|
|
19
|
+
declare function DropArea(props: DropAreaProps): JSX.Element
|
|
20
|
+
|
|
21
|
+
export default DropArea;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { getDroppedOrSelectedFiles } from './Html5FileSelector';
|
|
2
|
+
import { FilePreparer } from '../';
|
|
3
|
+
import { Box, CircularProgress } from '@material-ui/core';
|
|
4
|
+
import React, { useState, Children, isValidElement, cloneElement, forwardRef } from 'react';
|
|
5
|
+
import { MdFileUpload } from 'react-icons/md';
|
|
6
|
+
|
|
7
|
+
const DropArea = ({ children, onChange, style, ...props }, ref) => {
|
|
8
|
+
|
|
9
|
+
const [abrir, setAbrir] = useState(false);
|
|
10
|
+
const [loading, setLoading] = useState(false);
|
|
11
|
+
|
|
12
|
+
/** @param {React.DragEvent<HTMLDivElement>} e */
|
|
13
|
+
const dropArquivo = async e => {
|
|
14
|
+
e.preventDefault();
|
|
15
|
+
setLoading(true);
|
|
16
|
+
|
|
17
|
+
const finalArray = await getDroppedOrSelectedFiles(e);
|
|
18
|
+
|
|
19
|
+
// console.log(temp, temp.reduce((acc, { fileObject, fullPath }) => {
|
|
20
|
+
// const fileName = fullPath.match(/\/([^\/]*)$/)?.at(1);
|
|
21
|
+
// const objectPath = fullPath.replace(fileName, '').substring(1).slice(0, -1);
|
|
22
|
+
// return set(acc, objectPath.length ? [...objectPath.split('/'), fileName] : fileName, fileObject)
|
|
23
|
+
// }, {}));
|
|
24
|
+
|
|
25
|
+
// const length = e.dataTransfer.items.length,
|
|
26
|
+
// i = 0, itens = e.dataTransfer.items, finalArray = [];
|
|
27
|
+
|
|
28
|
+
// for (i; i < length; i++) {
|
|
29
|
+
// const item = itens[i];
|
|
30
|
+
// if (item.kind === 'file') finalArray.push(item.getAsFile())
|
|
31
|
+
// }
|
|
32
|
+
|
|
33
|
+
// onChange && onChange(finalArray)
|
|
34
|
+
// if (ref?.current) ref.current.preparaArquivo(finalArray)
|
|
35
|
+
|
|
36
|
+
onChange && onChange(finalArray);
|
|
37
|
+
if (ref?.current) ref.current.preparaArquivo(finalArray);
|
|
38
|
+
|
|
39
|
+
setLoading(false);
|
|
40
|
+
setAbrir(false);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
return (
|
|
44
|
+
<div onDragEnter={() => setAbrir(true)} style={{ position: 'relative', ...style }} {...props}>
|
|
45
|
+
{abrir && (!ref?.current || (ref.current && !ref.current.loading)) && (
|
|
46
|
+
<div onDragLeave={() => setAbrir(false)} onDrop={dropArquivo} onDragOver={e => e.preventDefault() }
|
|
47
|
+
style={{
|
|
48
|
+
position: 'absolute',
|
|
49
|
+
border: '1px dashed',
|
|
50
|
+
background: 'rgba(0,0,0,0.5)',
|
|
51
|
+
zIndex: 5, width: '100%', height: '100%'
|
|
52
|
+
}}>
|
|
53
|
+
{loading ?
|
|
54
|
+
<Box display='flex' justifyContent='center' alignItems='center' height='100%'>
|
|
55
|
+
<CircularProgress disableShrink/>
|
|
56
|
+
</Box>
|
|
57
|
+
:
|
|
58
|
+
<MdFileUpload style={{ width: '100%', height: '100%' }}/>
|
|
59
|
+
}
|
|
60
|
+
</div>
|
|
61
|
+
)}
|
|
62
|
+
{deepMap(children, (filho) => filho.type === FilePreparer ? cloneElement(filho, { ...filho.props, ref }) : filho)}
|
|
63
|
+
</div>
|
|
64
|
+
);
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
export default forwardRef(DropArea);
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
const deepMap = (children, deepMapFn) => {
|
|
71
|
+
return Children.toArray(children).map((child, index, mapChildren) => {
|
|
72
|
+
if (isValidElement(child) && hasComplexChildren(child)) {
|
|
73
|
+
return deepMapFn(
|
|
74
|
+
cloneElement(child, {
|
|
75
|
+
...child.props,
|
|
76
|
+
children: deepMap(child.props.children, deepMapFn),
|
|
77
|
+
}),
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
return deepMapFn(child, index, mapChildren);
|
|
81
|
+
},
|
|
82
|
+
);
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
const hasComplexChildren = (element) =>
|
|
86
|
+
isValidElement(element) &&
|
|
87
|
+
hasChildren(element) &&
|
|
88
|
+
Children.toArray(element.props.children).reduce((response, child) => response || isValidElement(child), false);
|
|
89
|
+
|
|
90
|
+
const hasChildren = (element) => isValidElement(element) && element.props.children;
|