@jotforminc/dnd-builder 1.0.2 → 2.0.0-beta.4

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 (236) hide show
  1. package/CHANGELOG.md +209 -0
  2. package/lib/cjs/assets/svg/settings_toggle.svg.js +21 -0
  3. package/lib/cjs/assets/svg/settings_toggle.svg.js.map +1 -0
  4. package/lib/cjs/assets/svg/slides.svg.js +7 -4
  5. package/lib/cjs/assets/svg/slides.svg.js.map +1 -1
  6. package/lib/cjs/assets/svg/toolbox/image.svg.js +19 -6
  7. package/lib/cjs/assets/svg/toolbox/image.svg.js.map +1 -1
  8. package/lib/cjs/components/Builder/Builder.js +7 -1
  9. package/lib/cjs/components/Builder/Builder.js.map +1 -1
  10. package/lib/cjs/components/Builder/PageActions.js +3 -3
  11. package/lib/cjs/components/Builder/PageActions.js.map +1 -1
  12. package/lib/cjs/components/Builder/PageAdder.js +9 -5
  13. package/lib/cjs/components/Builder/PageAdder.js.map +1 -1
  14. package/lib/cjs/components/Builder/SearchInput.js +28 -20
  15. package/lib/cjs/components/Builder/SearchInput.js.map +1 -1
  16. package/lib/cjs/components/Builder/Section.js +1 -1
  17. package/lib/cjs/components/Builder/Section.js.map +1 -1
  18. package/lib/cjs/components/{Panels/RightPanel/SettingTabs.js → Builder/Tabs.js} +24 -19
  19. package/lib/cjs/components/Builder/Tabs.js.map +1 -0
  20. package/lib/cjs/components/Elements/Chart.js +1 -1
  21. package/lib/cjs/components/Elements/Chart.js.map +1 -1
  22. package/lib/cjs/components/Elements/Icon.js +5 -5
  23. package/lib/cjs/components/Elements/Icon.js.map +1 -1
  24. package/lib/cjs/components/Elements/Image.js +26 -25
  25. package/lib/cjs/components/Elements/Image.js.map +1 -1
  26. package/lib/cjs/components/Elements/RichText.js +9 -3
  27. package/lib/cjs/components/Elements/RichText.js.map +1 -1
  28. package/lib/cjs/components/Elements/Shapes.js +17 -17
  29. package/lib/cjs/components/Elements/Shapes.js.map +1 -1
  30. package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js +2 -2
  31. package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  32. package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js +4 -4
  33. package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  34. package/lib/cjs/components/Panels/LeftPanel/Elements.js +74 -20
  35. package/lib/cjs/components/Panels/LeftPanel/Elements.js.map +1 -1
  36. package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js +2 -2
  37. package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
  38. package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js +6 -4
  39. package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
  40. package/lib/cjs/components/Panels/RightPanel/RightPanel.js +5 -4
  41. package/lib/cjs/components/Panels/RightPanel/RightPanel.js.map +1 -1
  42. package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js +4 -4
  43. package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
  44. package/lib/cjs/components/Panels/RightPanel/Settings.js +2 -2
  45. package/lib/cjs/components/Panels/RightPanel/Settings.js.map +1 -1
  46. package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js +7 -3
  47. package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  48. package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js +2 -2
  49. package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  50. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js +1 -1
  51. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  52. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js +2 -2
  53. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  54. package/lib/cjs/components/Presentation/Presentation.js +7 -1
  55. package/lib/cjs/components/Presentation/Presentation.js.map +1 -1
  56. package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js +1 -2
  57. package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  58. package/lib/cjs/components/Preview/Preview.js +9 -3
  59. package/lib/cjs/components/Preview/Preview.js.map +1 -1
  60. package/lib/cjs/components/Print/PrintModeWithoutContext.js +8 -4
  61. package/lib/cjs/components/Print/PrintModeWithoutContext.js.map +1 -1
  62. package/lib/cjs/components/ReportWrapper.js +5 -3
  63. package/lib/cjs/components/ReportWrapper.js.map +1 -1
  64. package/lib/cjs/components/Settings/ColorPicker.js +6 -6
  65. package/lib/cjs/components/Settings/ColorPicker.js.map +1 -1
  66. package/lib/cjs/components/Settings/ImagePicker/EnterURL.js +4 -1
  67. package/lib/cjs/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  68. package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +1 -1
  69. package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  70. package/lib/cjs/components/Settings/SelectBox.js +1 -1
  71. package/lib/cjs/components/Settings/SelectBox.js.map +1 -1
  72. package/lib/cjs/components/Settings/SizeSettings.js +1 -1
  73. package/lib/cjs/components/Settings/SizeSettings.js.map +1 -1
  74. package/lib/cjs/components/Settings/Switch.js +65 -0
  75. package/lib/cjs/components/Settings/Switch.js.map +1 -0
  76. package/lib/cjs/components/Settings/Toggle.js +13 -7
  77. package/lib/cjs/components/Settings/Toggle.js.map +1 -1
  78. package/lib/cjs/components/Settings/index.js +2 -0
  79. package/lib/cjs/components/Settings/index.js.map +1 -1
  80. package/lib/cjs/components/StaticElements/StaticRichText.js +2 -2
  81. package/lib/cjs/components/StaticElements/StaticRichText.js.map +1 -1
  82. package/lib/cjs/constants/pageSettings.js +5 -5
  83. package/lib/cjs/constants/pageSettings.js.map +1 -1
  84. package/lib/cjs/constants/reportLayoutSettings.js +12 -5
  85. package/lib/cjs/constants/reportLayoutSettings.js.map +1 -1
  86. package/lib/cjs/constants/reportSettings.js +6 -4
  87. package/lib/cjs/constants/reportSettings.js.map +1 -1
  88. package/lib/cjs/constants/texts.js +14 -11
  89. package/lib/cjs/constants/texts.js.map +1 -1
  90. package/lib/cjs/styles/_jfDarkTheme.scss +556 -0
  91. package/lib/cjs/styles/_jfLightTheme.scss +384 -0
  92. package/lib/cjs/styles/_jfPresentation.scss +1 -1
  93. package/lib/cjs/styles/_jfReportsAccordion.scss +10 -8
  94. package/lib/cjs/styles/_jfReportsButton.scss +0 -3
  95. package/lib/cjs/styles/_jfReportsChoice.scss +5 -5
  96. package/lib/cjs/styles/_jfReportsFloatings.scss +2 -2
  97. package/lib/cjs/styles/_jfReportsHelpers.scss +17 -16
  98. package/lib/cjs/styles/_jfReportsIconSelector.scss +5 -0
  99. package/lib/cjs/styles/_jfReportsMain.scss +4 -23
  100. package/lib/cjs/styles/_jfReportsPages.scss +18 -9
  101. package/lib/cjs/styles/_jfReportsPanelElements.scss +269 -140
  102. package/lib/cjs/styles/_jfReportsPanels.scss +95 -106
  103. package/lib/cjs/styles/_jfReportsSVG.scss +29 -37
  104. package/lib/cjs/styles/_jfReportsSlides.scss +12 -1
  105. package/lib/cjs/styles/_jfReportsSortableList.scss +30 -15
  106. package/lib/cjs/styles/_jfReportsToggle.scss +80 -0
  107. package/lib/cjs/styles/_jfReportsVariables.scss +3 -0
  108. package/lib/cjs/styles/_jfSearchInput.scss +18 -27
  109. package/lib/cjs/styles/jfReportsBundle.scss +3 -0
  110. package/lib/cjs/utils/builderContext.js +13 -5
  111. package/lib/cjs/utils/builderContext.js.map +1 -1
  112. package/lib/cjs/utils/functions.js +10 -1
  113. package/lib/cjs/utils/functions.js.map +1 -1
  114. package/lib/cjs/utils/icons.js +2 -0
  115. package/lib/cjs/utils/icons.js.map +1 -1
  116. package/lib/esm/assets/svg/settings_toggle.svg.js +19 -0
  117. package/lib/esm/assets/svg/settings_toggle.svg.js.map +1 -0
  118. package/lib/esm/assets/svg/slides.svg.js +7 -4
  119. package/lib/esm/assets/svg/slides.svg.js.map +1 -1
  120. package/lib/esm/assets/svg/toolbox/image.svg.js +19 -6
  121. package/lib/esm/assets/svg/toolbox/image.svg.js.map +1 -1
  122. package/lib/esm/components/Builder/Builder.js +7 -1
  123. package/lib/esm/components/Builder/Builder.js.map +1 -1
  124. package/lib/esm/components/Builder/PageActions.js +3 -3
  125. package/lib/esm/components/Builder/PageActions.js.map +1 -1
  126. package/lib/esm/components/Builder/PageAdder.js +9 -5
  127. package/lib/esm/components/Builder/PageAdder.js.map +1 -1
  128. package/lib/esm/components/Builder/SearchInput.js +29 -21
  129. package/lib/esm/components/Builder/SearchInput.js.map +1 -1
  130. package/lib/esm/components/Builder/Section.js +1 -1
  131. package/lib/esm/components/Builder/Section.js.map +1 -1
  132. package/lib/esm/components/{Panels/RightPanel/SettingTabs.js → Builder/Tabs.js} +24 -19
  133. package/lib/esm/components/Builder/Tabs.js.map +1 -0
  134. package/lib/esm/components/Elements/Chart.js +1 -1
  135. package/lib/esm/components/Elements/Chart.js.map +1 -1
  136. package/lib/esm/components/Elements/Icon.js +5 -5
  137. package/lib/esm/components/Elements/Icon.js.map +1 -1
  138. package/lib/esm/components/Elements/Image.js +27 -22
  139. package/lib/esm/components/Elements/Image.js.map +1 -1
  140. package/lib/esm/components/Elements/RichText.js +9 -3
  141. package/lib/esm/components/Elements/RichText.js.map +1 -1
  142. package/lib/esm/components/Elements/Shapes.js +17 -17
  143. package/lib/esm/components/Elements/Shapes.js.map +1 -1
  144. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js +2 -2
  145. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  146. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js +4 -4
  147. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  148. package/lib/esm/components/Panels/LeftPanel/Elements.js +75 -21
  149. package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
  150. package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js +2 -2
  151. package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
  152. package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js +7 -5
  153. package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
  154. package/lib/esm/components/Panels/RightPanel/RightPanel.js +5 -4
  155. package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
  156. package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js +4 -4
  157. package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
  158. package/lib/esm/components/Panels/RightPanel/Settings.js +2 -2
  159. package/lib/esm/components/Panels/RightPanel/Settings.js.map +1 -1
  160. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js +7 -3
  161. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  162. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js +2 -2
  163. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  164. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +1 -1
  165. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  166. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js +2 -2
  167. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  168. package/lib/esm/components/Presentation/Presentation.js +7 -1
  169. package/lib/esm/components/Presentation/Presentation.js.map +1 -1
  170. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js +1 -2
  171. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  172. package/lib/esm/components/Preview/Preview.js +9 -3
  173. package/lib/esm/components/Preview/Preview.js.map +1 -1
  174. package/lib/esm/components/Print/PrintModeWithoutContext.js +8 -4
  175. package/lib/esm/components/Print/PrintModeWithoutContext.js.map +1 -1
  176. package/lib/esm/components/ReportWrapper.js +5 -3
  177. package/lib/esm/components/ReportWrapper.js.map +1 -1
  178. package/lib/esm/components/Settings/ColorPicker.js +6 -6
  179. package/lib/esm/components/Settings/ColorPicker.js.map +1 -1
  180. package/lib/esm/components/Settings/ImagePicker/EnterURL.js +4 -1
  181. package/lib/esm/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  182. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +1 -1
  183. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  184. package/lib/esm/components/Settings/SelectBox.js +1 -1
  185. package/lib/esm/components/Settings/SelectBox.js.map +1 -1
  186. package/lib/esm/components/Settings/SizeSettings.js +1 -1
  187. package/lib/esm/components/Settings/SizeSettings.js.map +1 -1
  188. package/lib/esm/components/Settings/Switch.js +58 -0
  189. package/lib/esm/components/Settings/Switch.js.map +1 -0
  190. package/lib/esm/components/Settings/Toggle.js +13 -6
  191. package/lib/esm/components/Settings/Toggle.js.map +1 -1
  192. package/lib/esm/components/Settings/index.js +2 -0
  193. package/lib/esm/components/Settings/index.js.map +1 -1
  194. package/lib/esm/components/StaticElements/StaticRichText.js +2 -2
  195. package/lib/esm/components/StaticElements/StaticRichText.js.map +1 -1
  196. package/lib/esm/constants/pageSettings.js +6 -6
  197. package/lib/esm/constants/pageSettings.js.map +1 -1
  198. package/lib/esm/constants/reportLayoutSettings.js +12 -5
  199. package/lib/esm/constants/reportLayoutSettings.js.map +1 -1
  200. package/lib/esm/constants/reportSettings.js +6 -4
  201. package/lib/esm/constants/reportSettings.js.map +1 -1
  202. package/lib/esm/constants/texts.js +14 -11
  203. package/lib/esm/constants/texts.js.map +1 -1
  204. package/lib/esm/styles/_jfDarkTheme.scss +556 -0
  205. package/lib/esm/styles/_jfLightTheme.scss +384 -0
  206. package/lib/esm/styles/_jfPresentation.scss +1 -1
  207. package/lib/esm/styles/_jfReportsAccordion.scss +10 -8
  208. package/lib/esm/styles/_jfReportsButton.scss +0 -3
  209. package/lib/esm/styles/_jfReportsChoice.scss +5 -5
  210. package/lib/esm/styles/_jfReportsFloatings.scss +2 -2
  211. package/lib/esm/styles/_jfReportsHelpers.scss +17 -16
  212. package/lib/esm/styles/_jfReportsIconSelector.scss +5 -0
  213. package/lib/esm/styles/_jfReportsMain.scss +4 -23
  214. package/lib/esm/styles/_jfReportsPages.scss +18 -9
  215. package/lib/esm/styles/_jfReportsPanelElements.scss +269 -140
  216. package/lib/esm/styles/_jfReportsPanels.scss +95 -106
  217. package/lib/esm/styles/_jfReportsSVG.scss +29 -37
  218. package/lib/esm/styles/_jfReportsSlides.scss +12 -1
  219. package/lib/esm/styles/_jfReportsSortableList.scss +30 -15
  220. package/lib/esm/styles/_jfReportsToggle.scss +80 -0
  221. package/lib/esm/styles/_jfReportsVariables.scss +3 -0
  222. package/lib/esm/styles/_jfSearchInput.scss +18 -27
  223. package/lib/esm/styles/jfReportsBundle.scss +3 -0
  224. package/lib/esm/utils/builderContext.js +13 -5
  225. package/lib/esm/utils/builderContext.js.map +1 -1
  226. package/lib/esm/utils/functions.js +10 -2
  227. package/lib/esm/utils/functions.js.map +1 -1
  228. package/lib/esm/utils/icons.js +1 -0
  229. package/lib/esm/utils/icons.js.map +1 -1
  230. package/package.json +2 -2
  231. package/lib/cjs/components/Builder/SectionWithSearch.js +0 -79
  232. package/lib/cjs/components/Builder/SectionWithSearch.js.map +0 -1
  233. package/lib/cjs/components/Panels/RightPanel/SettingTabs.js.map +0 -1
  234. package/lib/esm/components/Builder/SectionWithSearch.js +0 -73
  235. package/lib/esm/components/Builder/SectionWithSearch.js.map +0 -1
  236. package/lib/esm/components/Panels/RightPanel/SettingTabs.js.map +0 -1
@@ -80,26 +80,34 @@ var SearchInput = function SearchInput(_ref) {
80
80
  searchInputRef.current.blur();
81
81
  }
82
82
  }, [elements]);
83
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
84
- className: "jfReport-searchContainer p-relative",
85
- children: [/*#__PURE__*/jsxRuntime.jsx("input", {
86
- ref: searchInputRef,
87
- className: "js-searchInput section-search-input",
88
- onChange: onSearchChange,
89
- onKeyDown: handleKeyDown,
90
- placeholder: "Search",
91
- type: "text",
92
- value: searchValue
93
- }), /*#__PURE__*/jsxRuntime.jsx("button", {
94
- className: "section-search-button".concat(searchValue ? ' showDelete' : ''),
95
- onClick: onSearchButtonClick,
96
- type: "button",
97
- children: searchValue ? /*#__PURE__*/jsxRuntime.jsx(close, {
98
- className: "section-search-icon delete"
99
- }) : /*#__PURE__*/jsxRuntime.jsx(search, {
100
- className: "section-search-icon"
101
- })
102
- })]
83
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
84
+ className: "jfReport-searchContainer",
85
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
86
+ className: "jfReport-search p-relative",
87
+ children: [/*#__PURE__*/jsxRuntime.jsx("input", {
88
+ ref: searchInputRef,
89
+ className: "js-searchInput section-search-input",
90
+ onChange: onSearchChange,
91
+ onKeyDown: handleKeyDown,
92
+ placeholder: "Search",
93
+ type: "text",
94
+ value: searchValue
95
+ }), /*#__PURE__*/jsxRuntime.jsx("button", {
96
+ className: "section-search-button search-icon",
97
+ onClick: onSearchButtonClick,
98
+ type: "button",
99
+ children: /*#__PURE__*/jsxRuntime.jsx(search, {
100
+ className: "section-search-icon"
101
+ })
102
+ }), searchValue && /*#__PURE__*/jsxRuntime.jsx("button", {
103
+ className: "section-search-button search-delete",
104
+ onClick: onSearchButtonClick,
105
+ type: "button",
106
+ children: /*#__PURE__*/jsxRuntime.jsx(close, {
107
+ className: "section-search-icon delete"
108
+ })
109
+ })]
110
+ })
103
111
  });
104
112
  };
105
113
 
@@ -1 +1 @@
1
- {"version":3,"file":"SearchInput.js","sources":["../../../../src/components/Builder/SearchInput.js"],"sourcesContent":["import {\n useCallback,\n useEffect,\n useRef,\n useState,\n useMemo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport Fuse from 'fuse.js/dist/fuse.common';\nimport SearchIcon from '../../assets/search.svg';\nimport CrossIcon from '../../assets/svg/close.svg';\n\nconst SearchInput = ({\n elements,\n searchKeys,\n setElements,\n}) => {\n const searchInputRef = useRef(null);\n const [searchValue, setSearchValue] = useState('');\n\n const searchEngine = useMemo(() => {\n return new Fuse(elements, { keys: searchKeys, threshold: 0.4 });\n }, [elements, searchKeys]);\n\n useEffect(() => {\n setElements(elements);\n setSearchValue('');\n }, [elements]);\n\n const onSearchButtonClick = useCallback(() => {\n if (searchValue) {\n setSearchValue('');\n setElements(elements);\n }\n if (searchInputRef.current) {\n searchInputRef.current.focus();\n }\n }, [searchValue]);\n\n const onSearchChange = useCallback(e => {\n const _searchValue = e.target.value;\n setSearchValue(_searchValue);\n\n if (!_searchValue || !searchKeys) {\n return setElements(elements);\n }\n\n const filteredElements = searchEngine.search(_searchValue).map(i => i.item);\n\n setElements(filteredElements.length ? filteredElements : 'noResult');\n }, [elements, searchKeys]);\n\n const handleKeyDown = useCallback(e => {\n e.stopPropagation();\n if (e.key === 'Escape' && searchInputRef.current) {\n setSearchValue('');\n setElements(elements);\n searchInputRef.current.blur();\n }\n }, [elements]);\n\n return (\n <div className=\"jfReport-searchContainer p-relative\">\n <input\n ref={searchInputRef}\n className=\"js-searchInput section-search-input\"\n onChange={onSearchChange}\n onKeyDown={handleKeyDown}\n placeholder=\"Search\"\n type=\"text\"\n value={searchValue}\n />\n <button\n className={`section-search-button${searchValue ? ' showDelete' : ''}`}\n onClick={onSearchButtonClick}\n type=\"button\"\n >\n {searchValue ? (\n <CrossIcon className=\"section-search-icon delete\" />\n ) : (\n <SearchIcon className=\"section-search-icon\" />\n )}\n </button>\n </div>\n );\n};\n\nSearchInput.propTypes = {\n elements: PropTypes.arrayOf(PropTypes.shape({})),\n searchKeys: PropTypes.arrayOf(PropTypes.shape({\n name: PropTypes.string,\n weight: PropTypes.number,\n })),\n setElements: PropTypes.func,\n};\n\nSearchInput.defaultProps = {\n elements: [],\n searchKeys: [],\n setElements: f => f,\n};\n\nexport default SearchInput;\n"],"names":["SearchInput","elements","searchKeys","setElements","searchInputRef","useRef","useState","searchValue","setSearchValue","searchEngine","useMemo","Fuse","keys","threshold","useEffect","onSearchButtonClick","useCallback","current","focus","onSearchChange","e","_searchValue","target","value","filteredElements","search","map","i","item","length","handleKeyDown","stopPropagation","key","blur","_jsxs","_jsx","CrossIcon","SearchIcon","propTypes","PropTypes","arrayOf","shape","name","string","weight","number","func","defaultProps","f"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAYMA,WAAW,GAAG,SAAdA,WAAc,OAId;AAAA,MAHJC,QAGI,QAHJA,QAGI;AAAA,MAFJC,UAEI,QAFJA,UAEI;AAAA,MADJC,WACI,QADJA,WACI;AACJ,MAAMC,cAAc,GAAGC,YAAM,CAAC,IAAD,CAA7B;;AADI,kBAEkCC,cAAQ,CAAC,EAAD,CAF1C;AAAA;AAAA,MAEGC,WAFH;AAAA,MAEgBC,cAFhB;;AAIJ,MAAMC,YAAY,GAAGC,aAAO,CAAC,YAAM;AACjC,WAAO,IAAIC,wBAAJ,CAASV,QAAT,EAAmB;AAAEW,MAAAA,IAAI,EAAEV,UAAR;AAAoBW,MAAAA,SAAS,EAAE;AAA/B,KAAnB,CAAP;AACD,GAF2B,EAEzB,CAACZ,QAAD,EAAWC,UAAX,CAFyB,CAA5B;AAIAY,EAAAA,eAAS,CAAC,YAAM;AACdX,IAAAA,WAAW,CAACF,QAAD,CAAX;AACAO,IAAAA,cAAc,CAAC,EAAD,CAAd;AACD,GAHQ,EAGN,CAACP,QAAD,CAHM,CAAT;AAKA,MAAMc,mBAAmB,GAAGC,iBAAW,CAAC,YAAM;AAC5C,QAAIT,WAAJ,EAAiB;AACfC,MAAAA,cAAc,CAAC,EAAD,CAAd;AACAL,MAAAA,WAAW,CAACF,QAAD,CAAX;AACD;;AACD,QAAIG,cAAc,CAACa,OAAnB,EAA4B;AAC1Bb,MAAAA,cAAc,CAACa,OAAf,CAAuBC,KAAvB;AACD;AACF,GARsC,EAQpC,CAACX,WAAD,CARoC,CAAvC;AAUA,MAAMY,cAAc,GAAGH,iBAAW,CAAC,UAAAI,CAAC,EAAI;AACtC,QAAMC,YAAY,GAAGD,CAAC,CAACE,MAAF,CAASC,KAA9B;AACAf,IAAAA,cAAc,CAACa,YAAD,CAAd;;AAEA,QAAI,CAACA,YAAD,IAAiB,CAACnB,UAAtB,EAAkC;AAChC,aAAOC,WAAW,CAACF,QAAD,CAAlB;AACD;;AAED,QAAMuB,gBAAgB,GAAGf,YAAY,CAACgB,MAAb,CAAoBJ,YAApB,EAAkCK,GAAlC,CAAsC,UAAAC,CAAC;AAAA,aAAIA,CAAC,CAACC,IAAN;AAAA,KAAvC,CAAzB;AAEAzB,IAAAA,WAAW,CAACqB,gBAAgB,CAACK,MAAjB,GAA0BL,gBAA1B,GAA6C,UAA9C,CAAX;AACD,GAXiC,EAW/B,CAACvB,QAAD,EAAWC,UAAX,CAX+B,CAAlC;AAaA,MAAM4B,aAAa,GAAGd,iBAAW,CAAC,UAAAI,CAAC,EAAI;AACrCA,IAAAA,CAAC,CAACW,eAAF;;AACA,QAAIX,CAAC,CAACY,GAAF,KAAU,QAAV,IAAsB5B,cAAc,CAACa,OAAzC,EAAkD;AAChDT,MAAAA,cAAc,CAAC,EAAD,CAAd;AACAL,MAAAA,WAAW,CAACF,QAAD,CAAX;AACAG,MAAAA,cAAc,CAACa,OAAf,CAAuBgB,IAAvB;AACD;AACF,GAPgC,EAO9B,CAAChC,QAAD,CAP8B,CAAjC;AASA,sBACEiC;AAAK,IAAA,SAAS,EAAC,qCAAf;AAAA,4BACEC;AACE,MAAA,GAAG,EAAE/B,cADP;AAEE,MAAA,SAAS,EAAC,qCAFZ;AAGE,MAAA,QAAQ,EAAEe,cAHZ;AAIE,MAAA,SAAS,EAAEW,aAJb;AAKE,MAAA,WAAW,EAAC,QALd;AAME,MAAA,IAAI,EAAC,MANP;AAOE,MAAA,KAAK,EAAEvB;AAPT,MADF,eAUE4B;AACE,MAAA,SAAS,iCAA0B5B,WAAW,GAAG,aAAH,GAAmB,EAAxD,CADX;AAEE,MAAA,OAAO,EAAEQ,mBAFX;AAGE,MAAA,IAAI,EAAC,QAHP;AAAA,gBAKGR,WAAW,gBACV4B,eAACC,KAAD;AAAW,QAAA,SAAS,EAAC;AAArB,QADU,gBAGVD,eAACE,MAAD;AAAY,QAAA,SAAS,EAAC;AAAtB;AARJ,MAVF;AAAA,IADF;AAwBD;;AAEDrC,WAAW,CAACsC,SAAZ,GAAwB;AACtBrC,EAAAA,QAAQ,EAAEsC,6BAAS,CAACC,OAAV,CAAkBD,6BAAS,CAACE,KAAV,CAAgB,EAAhB,CAAlB,CADY;AAEtBvC,EAAAA,UAAU,EAAEqC,6BAAS,CAACC,OAAV,CAAkBD,6BAAS,CAACE,KAAV,CAAgB;AAC5CC,IAAAA,IAAI,EAAEH,6BAAS,CAACI,MAD4B;AAE5CC,IAAAA,MAAM,EAAEL,6BAAS,CAACM;AAF0B,GAAhB,CAAlB,CAFU;AAMtB1C,EAAAA,WAAW,EAAEoC,6BAAS,CAACO;AAND,CAAxB;AASA9C,WAAW,CAAC+C,YAAZ,GAA2B;AACzB9C,EAAAA,QAAQ,EAAE,EADe;AAEzBC,EAAAA,UAAU,EAAE,EAFa;AAGzBC,EAAAA,WAAW,EAAE,qBAAA6C,CAAC;AAAA,WAAIA,CAAJ;AAAA;AAHW,CAA3B;;;;"}
1
+ {"version":3,"file":"SearchInput.js","sources":["../../../../src/components/Builder/SearchInput.js"],"sourcesContent":["import {\n useCallback,\n useEffect,\n useRef,\n useState,\n useMemo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport Fuse from 'fuse.js/dist/fuse.common';\nimport SearchIcon from '../../assets/search.svg';\nimport CrossIcon from '../../assets/svg/close.svg';\n\nconst SearchInput = ({\n elements,\n searchKeys,\n setElements,\n}) => {\n const searchInputRef = useRef(null);\n const [searchValue, setSearchValue] = useState('');\n\n const searchEngine = useMemo(() => {\n return new Fuse(elements, { keys: searchKeys, threshold: 0.4 });\n }, [elements, searchKeys]);\n\n useEffect(() => {\n setElements(elements);\n setSearchValue('');\n }, [elements]);\n\n const onSearchButtonClick = useCallback(() => {\n if (searchValue) {\n setSearchValue('');\n setElements(elements);\n }\n if (searchInputRef.current) {\n searchInputRef.current.focus();\n }\n }, [searchValue]);\n\n const onSearchChange = useCallback(e => {\n const _searchValue = e.target.value;\n setSearchValue(_searchValue);\n\n if (!_searchValue || !searchKeys) {\n return setElements(elements);\n }\n\n const filteredElements = searchEngine.search(_searchValue).map(i => i.item);\n\n setElements(filteredElements.length ? filteredElements : 'noResult');\n }, [elements, searchKeys]);\n\n const handleKeyDown = useCallback(e => {\n e.stopPropagation();\n if (e.key === 'Escape' && searchInputRef.current) {\n setSearchValue('');\n setElements(elements);\n searchInputRef.current.blur();\n }\n }, [elements]);\n\n return (\n <div className=\"jfReport-searchContainer\">\n <div className=\"jfReport-search p-relative\">\n <input\n ref={searchInputRef}\n className=\"js-searchInput section-search-input\"\n onChange={onSearchChange}\n onKeyDown={handleKeyDown}\n placeholder=\"Search\"\n type=\"text\"\n value={searchValue}\n />\n <button\n className=\"section-search-button search-icon\"\n onClick={onSearchButtonClick}\n type=\"button\"\n >\n <SearchIcon className=\"section-search-icon\" />\n </button>\n {searchValue && (\n <button\n className=\"section-search-button search-delete\"\n onClick={onSearchButtonClick}\n type=\"button\"\n >\n <CrossIcon className=\"section-search-icon delete\" />\n </button>\n )}\n </div>\n </div>\n );\n};\n\nSearchInput.propTypes = {\n elements: PropTypes.arrayOf(PropTypes.shape({})),\n searchKeys: PropTypes.arrayOf(PropTypes.shape({\n name: PropTypes.string,\n weight: PropTypes.number,\n })),\n setElements: PropTypes.func,\n};\n\nSearchInput.defaultProps = {\n elements: [],\n searchKeys: [],\n setElements: f => f,\n};\n\nexport default SearchInput;\n"],"names":["SearchInput","elements","searchKeys","setElements","searchInputRef","useRef","useState","searchValue","setSearchValue","searchEngine","useMemo","Fuse","keys","threshold","useEffect","onSearchButtonClick","useCallback","current","focus","onSearchChange","e","_searchValue","target","value","filteredElements","search","map","i","item","length","handleKeyDown","stopPropagation","key","blur","_jsx","_jsxs","SearchIcon","CrossIcon","propTypes","PropTypes","arrayOf","shape","name","string","weight","number","func","defaultProps","f"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAYMA,WAAW,GAAG,SAAdA,WAAc,OAId;AAAA,MAHJC,QAGI,QAHJA,QAGI;AAAA,MAFJC,UAEI,QAFJA,UAEI;AAAA,MADJC,WACI,QADJA,WACI;AACJ,MAAMC,cAAc,GAAGC,YAAM,CAAC,IAAD,CAA7B;;AADI,kBAEkCC,cAAQ,CAAC,EAAD,CAF1C;AAAA;AAAA,MAEGC,WAFH;AAAA,MAEgBC,cAFhB;;AAIJ,MAAMC,YAAY,GAAGC,aAAO,CAAC,YAAM;AACjC,WAAO,IAAIC,wBAAJ,CAASV,QAAT,EAAmB;AAAEW,MAAAA,IAAI,EAAEV,UAAR;AAAoBW,MAAAA,SAAS,EAAE;AAA/B,KAAnB,CAAP;AACD,GAF2B,EAEzB,CAACZ,QAAD,EAAWC,UAAX,CAFyB,CAA5B;AAIAY,EAAAA,eAAS,CAAC,YAAM;AACdX,IAAAA,WAAW,CAACF,QAAD,CAAX;AACAO,IAAAA,cAAc,CAAC,EAAD,CAAd;AACD,GAHQ,EAGN,CAACP,QAAD,CAHM,CAAT;AAKA,MAAMc,mBAAmB,GAAGC,iBAAW,CAAC,YAAM;AAC5C,QAAIT,WAAJ,EAAiB;AACfC,MAAAA,cAAc,CAAC,EAAD,CAAd;AACAL,MAAAA,WAAW,CAACF,QAAD,CAAX;AACD;;AACD,QAAIG,cAAc,CAACa,OAAnB,EAA4B;AAC1Bb,MAAAA,cAAc,CAACa,OAAf,CAAuBC,KAAvB;AACD;AACF,GARsC,EAQpC,CAACX,WAAD,CARoC,CAAvC;AAUA,MAAMY,cAAc,GAAGH,iBAAW,CAAC,UAAAI,CAAC,EAAI;AACtC,QAAMC,YAAY,GAAGD,CAAC,CAACE,MAAF,CAASC,KAA9B;AACAf,IAAAA,cAAc,CAACa,YAAD,CAAd;;AAEA,QAAI,CAACA,YAAD,IAAiB,CAACnB,UAAtB,EAAkC;AAChC,aAAOC,WAAW,CAACF,QAAD,CAAlB;AACD;;AAED,QAAMuB,gBAAgB,GAAGf,YAAY,CAACgB,MAAb,CAAoBJ,YAApB,EAAkCK,GAAlC,CAAsC,UAAAC,CAAC;AAAA,aAAIA,CAAC,CAACC,IAAN;AAAA,KAAvC,CAAzB;AAEAzB,IAAAA,WAAW,CAACqB,gBAAgB,CAACK,MAAjB,GAA0BL,gBAA1B,GAA6C,UAA9C,CAAX;AACD,GAXiC,EAW/B,CAACvB,QAAD,EAAWC,UAAX,CAX+B,CAAlC;AAaA,MAAM4B,aAAa,GAAGd,iBAAW,CAAC,UAAAI,CAAC,EAAI;AACrCA,IAAAA,CAAC,CAACW,eAAF;;AACA,QAAIX,CAAC,CAACY,GAAF,KAAU,QAAV,IAAsB5B,cAAc,CAACa,OAAzC,EAAkD;AAChDT,MAAAA,cAAc,CAAC,EAAD,CAAd;AACAL,MAAAA,WAAW,CAACF,QAAD,CAAX;AACAG,MAAAA,cAAc,CAACa,OAAf,CAAuBgB,IAAvB;AACD;AACF,GAPgC,EAO9B,CAAChC,QAAD,CAP8B,CAAjC;AASA,sBACEiC;AAAK,IAAA,SAAS,EAAC,0BAAf;AAAA,2BACEC;AAAK,MAAA,SAAS,EAAC,4BAAf;AAAA,8BACED;AACE,QAAA,GAAG,EAAE9B,cADP;AAEE,QAAA,SAAS,EAAC,qCAFZ;AAGE,QAAA,QAAQ,EAAEe,cAHZ;AAIE,QAAA,SAAS,EAAEW,aAJb;AAKE,QAAA,WAAW,EAAC,QALd;AAME,QAAA,IAAI,EAAC,MANP;AAOE,QAAA,KAAK,EAAEvB;AAPT,QADF,eAUE2B;AACE,QAAA,SAAS,EAAC,mCADZ;AAEE,QAAA,OAAO,EAAEnB,mBAFX;AAGE,QAAA,IAAI,EAAC,QAHP;AAAA,+BAKEmB,eAACE,MAAD;AAAY,UAAA,SAAS,EAAC;AAAtB;AALF,QAVF,EAiBG7B,WAAW,iBACV2B;AACE,QAAA,SAAS,EAAC,qCADZ;AAEE,QAAA,OAAO,EAAEnB,mBAFX;AAGE,QAAA,IAAI,EAAC,QAHP;AAAA,+BAKEmB,eAACG,KAAD;AAAW,UAAA,SAAS,EAAC;AAArB;AALF,QAlBJ;AAAA;AADF,IADF;AA+BD;;AAEDrC,WAAW,CAACsC,SAAZ,GAAwB;AACtBrC,EAAAA,QAAQ,EAAEsC,6BAAS,CAACC,OAAV,CAAkBD,6BAAS,CAACE,KAAV,CAAgB,EAAhB,CAAlB,CADY;AAEtBvC,EAAAA,UAAU,EAAEqC,6BAAS,CAACC,OAAV,CAAkBD,6BAAS,CAACE,KAAV,CAAgB;AAC5CC,IAAAA,IAAI,EAAEH,6BAAS,CAACI,MAD4B;AAE5CC,IAAAA,MAAM,EAAEL,6BAAS,CAACM;AAF0B,GAAhB,CAAlB,CAFU;AAMtB1C,EAAAA,WAAW,EAAEoC,6BAAS,CAACO;AAND,CAAxB;AASA9C,WAAW,CAAC+C,YAAZ,GAA2B;AACzB9C,EAAAA,QAAQ,EAAE,EADe;AAEzBC,EAAAA,UAAU,EAAE,EAFa;AAGzBC,EAAAA,WAAW,EAAE,qBAAA6C,CAAC;AAAA,WAAIA,CAAJ;AAAA;AAHW,CAA3B;;;;"}
@@ -20,7 +20,7 @@ var Section = function Section(_ref) {
20
20
  var Icon = icons[icon] || settings;
21
21
  return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
22
22
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
23
- className: classNames__default['default']('js-toolTitle toolItem toolTitle d-flex a-center t-medium', {
23
+ className: classNames__default['default']('js-toolTitle toolItem toolTitle d-flex a-center t-normal', {
24
24
  hasAdditional: additionalComponent
25
25
  }),
26
26
  children: [icon && /*#__PURE__*/jsxRuntime.jsx("span", {
@@ -1 +1 @@
1
- {"version":3,"file":"Section.js","sources":["../../../../src/components/Builder/Section.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport * as icons from '../../utils/icons';\n\nconst Section = ({\n additionalComponent, children, icon, title,\n}) => {\n const Icon = icons[icon] || icons.settings;\n return (\n <>\n <div\n className={classNames(\n 'js-toolTitle toolItem toolTitle d-flex a-center t-medium',\n { hasAdditional: additionalComponent },\n )}\n >\n {icon\n && <span className={`titleIcon iconFor-${icon}`}><Icon className=\"jfReportSVG\" /></span>}\n <span className=\"titleName js-titleName\">\n {title}\n </span>\n {additionalComponent}\n </div>\n {children}\n </>\n );\n};\n\nSection.propTypes = {\n additionalComponent: PropTypes.any,\n children: PropTypes.any,\n icon: PropTypes.string,\n title: PropTypes.string,\n};\n\nSection.defaultProps = {\n additionalComponent: null,\n children: null,\n icon: '',\n title: '',\n};\n\nexport default memo(Section);\n"],"names":["Section","additionalComponent","children","icon","title","Icon","icons","_jsxs","classNames","hasAdditional","_jsx","propTypes","PropTypes","any","string","defaultProps","memo"],"mappings":";;;;;;;;;;;;;;AAKA,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAEV;AAAA,MADJC,mBACI,QADJA,mBACI;AAAA,MADiBC,QACjB,QADiBA,QACjB;AAAA,MAD2BC,IAC3B,QAD2BA,IAC3B;AAAA,MADiCC,KACjC,QADiCA,KACjC;AACJ,MAAMC,IAAI,GAAGC,KAAK,CAACH,IAAD,CAAL,IAAeG,QAA5B;AACA,sBACEC;AAAA,4BACEA;AACE,MAAA,SAAS,EAAEC,8BAAU,CACnB,0DADmB,EAEnB;AAAEC,QAAAA,aAAa,EAAER;AAAjB,OAFmB,CADvB;AAAA,iBAMGE,IAAI,iBACFO;AAAM,QAAA,SAAS,8BAAuBP,IAAvB,CAAf;AAAA,+BAA8CO,eAAC,IAAD;AAAM,UAAA,SAAS,EAAC;AAAhB;AAA9C,QAPL,eAQEA;AAAM,QAAA,SAAS,EAAC,wBAAhB;AAAA,kBACGN;AADH,QARF,EAWGH,mBAXH;AAAA,MADF,EAcGC,QAdH;AAAA,IADF;AAkBD,CAtBD;;AAwBAF,OAAO,CAACW,SAAR,GAAoB;AAClBV,EAAAA,mBAAmB,EAAEW,6BAAS,CAACC,GADb;AAElBX,EAAAA,QAAQ,EAAEU,6BAAS,CAACC,GAFF;AAGlBV,EAAAA,IAAI,EAAES,6BAAS,CAACE,MAHE;AAIlBV,EAAAA,KAAK,EAAEQ,6BAAS,CAACE;AAJC,CAApB;AAOAd,OAAO,CAACe,YAAR,GAAuB;AACrBd,EAAAA,mBAAmB,EAAE,IADA;AAErBC,EAAAA,QAAQ,EAAE,IAFW;AAGrBC,EAAAA,IAAI,EAAE,EAHe;AAIrBC,EAAAA,KAAK,EAAE;AAJc,CAAvB;AAOA,6BAAeY,UAAI,CAAChB,OAAD,CAAnB;;;;"}
1
+ {"version":3,"file":"Section.js","sources":["../../../../src/components/Builder/Section.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport * as icons from '../../utils/icons';\n\nconst Section = ({\n additionalComponent, children, icon, title,\n}) => {\n const Icon = icons[icon] || icons.settings;\n return (\n <>\n <div\n className={classNames(\n 'js-toolTitle toolItem toolTitle d-flex a-center t-normal',\n { hasAdditional: additionalComponent },\n )}\n >\n {icon\n && <span className={`titleIcon iconFor-${icon}`}><Icon className=\"jfReportSVG\" /></span>}\n <span className=\"titleName js-titleName\">\n {title}\n </span>\n {additionalComponent}\n </div>\n {children}\n </>\n );\n};\n\nSection.propTypes = {\n additionalComponent: PropTypes.any,\n children: PropTypes.any,\n icon: PropTypes.string,\n title: PropTypes.string,\n};\n\nSection.defaultProps = {\n additionalComponent: null,\n children: null,\n icon: '',\n title: '',\n};\n\nexport default memo(Section);\n"],"names":["Section","additionalComponent","children","icon","title","Icon","icons","_jsxs","classNames","hasAdditional","_jsx","propTypes","PropTypes","any","string","defaultProps","memo"],"mappings":";;;;;;;;;;;;;;AAKA,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAEV;AAAA,MADJC,mBACI,QADJA,mBACI;AAAA,MADiBC,QACjB,QADiBA,QACjB;AAAA,MAD2BC,IAC3B,QAD2BA,IAC3B;AAAA,MADiCC,KACjC,QADiCA,KACjC;AACJ,MAAMC,IAAI,GAAGC,KAAK,CAACH,IAAD,CAAL,IAAeG,QAA5B;AACA,sBACEC;AAAA,4BACEA;AACE,MAAA,SAAS,EAAEC,8BAAU,CACnB,0DADmB,EAEnB;AAAEC,QAAAA,aAAa,EAAER;AAAjB,OAFmB,CADvB;AAAA,iBAMGE,IAAI,iBACFO;AAAM,QAAA,SAAS,8BAAuBP,IAAvB,CAAf;AAAA,+BAA8CO,eAAC,IAAD;AAAM,UAAA,SAAS,EAAC;AAAhB;AAA9C,QAPL,eAQEA;AAAM,QAAA,SAAS,EAAC,wBAAhB;AAAA,kBACGN;AADH,QARF,EAWGH,mBAXH;AAAA,MADF,EAcGC,QAdH;AAAA,IADF;AAkBD,CAtBD;;AAwBAF,OAAO,CAACW,SAAR,GAAoB;AAClBV,EAAAA,mBAAmB,EAAEW,6BAAS,CAACC,GADb;AAElBX,EAAAA,QAAQ,EAAEU,6BAAS,CAACC,GAFF;AAGlBV,EAAAA,IAAI,EAAES,6BAAS,CAACE,MAHE;AAIlBV,EAAAA,KAAK,EAAEQ,6BAAS,CAACE;AAJC,CAApB;AAOAd,OAAO,CAACe,YAAR,GAAuB;AACrBd,EAAAA,mBAAmB,EAAE,IADA;AAErBC,EAAAA,QAAQ,EAAE,IAFW;AAGrBC,EAAAA,IAAI,EAAE,EAHe;AAIrBC,EAAAA,KAAK,EAAE;AAJc,CAAvB;AAOA,6BAAeY,UAAI,CAAChB,OAAD,CAAnB;;;;"}
@@ -1,39 +1,41 @@
1
1
  'use strict';
2
2
 
3
3
  require('core-js/modules/es.array.map.js');
4
- require('core-js/modules/es.object.to-string.js');
5
- require('core-js/modules/es.regexp.to-string.js');
6
4
  var React = require('react');
7
5
  var PropTypes = require('prop-types');
8
- var builderContext = require('../../../utils/builderContext.js');
9
- var propContext = require('../../../utils/propContext.js');
6
+ var builderContext = require('../../utils/builderContext.js');
7
+ var propContext = require('../../utils/propContext.js');
10
8
  var jsxRuntime = require('react/jsx-runtime');
11
9
 
12
10
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
11
 
14
12
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
15
13
 
16
- var SettingTabs = function SettingTabs(_ref) {
17
- var tabs = _ref.tabs;
14
+ var Tabs = function Tabs(_ref) {
15
+ var panel = _ref.panel,
16
+ tabs = _ref.tabs;
18
17
 
19
18
  var _useBuilderContext = builderContext.useBuilderContext(),
20
19
  activeTab = _useBuilderContext.activeTab,
20
+ isLeftPanelOpen = _useBuilderContext.isLeftPanelOpen,
21
+ isRightPanelOpen = _useBuilderContext.isRightPanelOpen,
21
22
  setActiveTab = _useBuilderContext.setActiveTab;
22
23
 
23
24
  var _usePropContext = propContext.usePropContext(),
24
25
  onAnEventTrigger = _usePropContext.onAnEventTrigger;
25
26
 
26
27
  var setCurrentTab = React.useCallback(function (index, tab) {
27
- setActiveTab(index);
28
+ setActiveTab(panel, index);
28
29
  onAnEventTrigger('settingTabChanged', tab);
29
- }, [setActiveTab, onAnEventTrigger]);
30
+ }, [setActiveTab, onAnEventTrigger, panel]);
30
31
  return tabs.length > 1 && /*#__PURE__*/jsxRuntime.jsxs("div", {
31
- className: "toolTabs d-flex p-relative",
32
+ className: "toolTabs d-flex p-relative ".concat(panel),
32
33
  "data-tab": tabs.length,
33
34
  children: [tabs.map(function (tab, index) {
35
+ var checked = activeTab[panel] === index && (panel === 'left' && isLeftPanelOpen || panel === 'right' && isRightPanelOpen);
34
36
  return /*#__PURE__*/jsxRuntime.jsxs(React.Fragment, {
35
37
  children: [/*#__PURE__*/jsxRuntime.jsx("input", {
36
- checked: activeTab === index,
38
+ checked: checked,
37
39
  className: "toolTabs-tab",
38
40
  id: tab,
39
41
  name: "tabs",
@@ -43,25 +45,28 @@ var SettingTabs = function SettingTabs(_ref) {
43
45
  "tab-count": index,
44
46
  type: "radio"
45
47
  }), /*#__PURE__*/jsxRuntime.jsx("label", {
46
- className: "t-medium js-tabLabel",
48
+ className: "t-normal js-tabLabel",
47
49
  htmlFor: tab,
48
- children: tab
50
+ children: /*#__PURE__*/jsxRuntime.jsx("span", {
51
+ children: tab
52
+ })
49
53
  })]
50
- }, index.toString());
54
+ }, tab);
51
55
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
52
- className: "toolTabs-indicator p-absolute bg-blue",
56
+ className: "toolTabs-indicator p-absolute",
53
57
  "data-tab": tabs.length
54
58
  })]
55
59
  });
56
60
  };
57
61
 
58
- SettingTabs.propTypes = {
62
+ Tabs.propTypes = {
63
+ panel: PropTypes__default['default'].string.isRequired,
59
64
  tabs: PropTypes__default['default'].arrayOf(PropTypes__default['default'].string)
60
65
  };
61
- SettingTabs.defaultProps = {
66
+ Tabs.defaultProps = {
62
67
  tabs: []
63
68
  };
64
- var SettingTabs$1 = /*#__PURE__*/React.memo(SettingTabs);
69
+ var Tabs$1 = /*#__PURE__*/React.memo(Tabs);
65
70
 
66
- module.exports = SettingTabs$1;
67
- //# sourceMappingURL=SettingTabs.js.map
71
+ module.exports = Tabs$1;
72
+ //# sourceMappingURL=Tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.js","sources":["../../../../src/components/Builder/Tabs.js"],"sourcesContent":["import { Fragment, memo, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\n\nconst Tabs = ({ panel, tabs }) => {\n const {\n activeTab,\n isLeftPanelOpen,\n isRightPanelOpen,\n setActiveTab,\n } = useBuilderContext();\n const {\n onAnEventTrigger,\n } = usePropContext();\n\n const setCurrentTab = useCallback((index, tab) => {\n setActiveTab(panel, index);\n onAnEventTrigger('settingTabChanged', tab);\n }, [setActiveTab, onAnEventTrigger, panel]);\n\n return (\n tabs.length > 1 && (\n <div\n className={`toolTabs d-flex p-relative ${panel}`}\n data-tab={tabs.length}\n >\n { tabs.map((tab, index) => {\n const checked = activeTab[panel] === index\n && ((panel === 'left' && isLeftPanelOpen) || (panel === 'right' && isRightPanelOpen));\n return (\n <Fragment key={tab}>\n <input\n checked={checked}\n className=\"toolTabs-tab\"\n id={tab}\n name=\"tabs\"\n onChange={() => setCurrentTab(index, tab)}\n tab-count={index}\n type=\"radio\"\n />\n <label\n className=\"t-normal js-tabLabel\"\n htmlFor={tab}\n >\n <span>\n {tab}\n </span>\n </label>\n </Fragment>\n );\n })}\n <div\n className=\"toolTabs-indicator p-absolute\"\n data-tab={tabs.length}\n />\n </div>\n )\n );\n};\n\nTabs.propTypes = {\n panel: PropTypes.string.isRequired,\n tabs: PropTypes.arrayOf(PropTypes.string),\n};\n\nTabs.defaultProps = {\n tabs: [],\n};\n\nexport default memo(Tabs);\n"],"names":["Tabs","panel","tabs","useBuilderContext","activeTab","isLeftPanelOpen","isRightPanelOpen","setActiveTab","usePropContext","onAnEventTrigger","setCurrentTab","useCallback","index","tab","length","_jsxs","map","checked","Fragment","_jsx","propTypes","PropTypes","string","isRequired","arrayOf","defaultProps","memo"],"mappings":";;;;;;;;;;;;;AAKA,IAAMA,IAAI,GAAG,SAAPA,IAAO,OAAqB;AAAA,MAAlBC,KAAkB,QAAlBA,KAAkB;AAAA,MAAXC,IAAW,QAAXA,IAAW;;AAAA,2BAM5BC,gCAAiB,EANW;AAAA,MAE9BC,SAF8B,sBAE9BA,SAF8B;AAAA,MAG9BC,eAH8B,sBAG9BA,eAH8B;AAAA,MAI9BC,gBAJ8B,sBAI9BA,gBAJ8B;AAAA,MAK9BC,YAL8B,sBAK9BA,YAL8B;;AAAA,wBAS5BC,0BAAc,EATc;AAAA,MAQ9BC,gBAR8B,mBAQ9BA,gBAR8B;;AAWhC,MAAMC,aAAa,GAAGC,iBAAW,CAAC,UAACC,KAAD,EAAQC,GAAR,EAAgB;AAChDN,IAAAA,YAAY,CAACN,KAAD,EAAQW,KAAR,CAAZ;AACAH,IAAAA,gBAAgB,CAAC,mBAAD,EAAsBI,GAAtB,CAAhB;AACD,GAHgC,EAG9B,CAACN,YAAD,EAAeE,gBAAf,EAAiCR,KAAjC,CAH8B,CAAjC;AAKA,SACEC,IAAI,CAACY,MAAL,GAAc,CAAd,iBACEC;AACE,IAAA,SAAS,uCAAgCd,KAAhC,CADX;AAEE,gBAAUC,IAAI,CAACY,MAFjB;AAAA,eAIIZ,IAAI,CAACc,GAAL,CAAS,UAACH,GAAD,EAAMD,KAAN,EAAgB;AACzB,UAAMK,OAAO,GAAGb,SAAS,CAACH,KAAD,CAAT,KAAqBW,KAArB,KACTX,KAAK,KAAK,MAAV,IAAoBI,eAArB,IAA0CJ,KAAK,KAAK,OAAV,IAAqBK,gBADrD,CAAhB;AAEA,0BACES,gBAACG,cAAD;AAAA,gCACEC;AACE,UAAA,OAAO,EAAEF,OADX;AAEE,UAAA,SAAS,EAAC,cAFZ;AAGE,UAAA,EAAE,EAAEJ,GAHN;AAIE,UAAA,IAAI,EAAC,MAJP;AAKE,UAAA,QAAQ,EAAE;AAAA,mBAAMH,aAAa,CAACE,KAAD,EAAQC,GAAR,CAAnB;AAAA,WALZ;AAME,uBAAWD,KANb;AAOE,UAAA,IAAI,EAAC;AAPP,UADF,eAUEO;AACE,UAAA,SAAS,EAAC,sBADZ;AAEE,UAAA,OAAO,EAAEN,GAFX;AAAA,iCAIEM;AAAA,sBACGN;AADH;AAJF,UAVF;AAAA,SAAeA,GAAf,CADF;AAqBD,KAxBC,CAJJ,eA6BEM;AACE,MAAA,SAAS,EAAC,+BADZ;AAEE,kBAAUjB,IAAI,CAACY;AAFjB,MA7BF;AAAA,IAFJ;AAsCD,CAtDD;;AAwDAd,IAAI,CAACoB,SAAL,GAAiB;AACfnB,EAAAA,KAAK,EAAEoB,6BAAS,CAACC,MAAV,CAAiBC,UADT;AAEfrB,EAAAA,IAAI,EAAEmB,6BAAS,CAACG,OAAV,CAAkBH,6BAAS,CAACC,MAA5B;AAFS,CAAjB;AAKAtB,IAAI,CAACyB,YAAL,GAAoB;AAClBvB,EAAAA,IAAI,EAAE;AADY,CAApB;AAIA,0BAAewB,UAAI,CAAC1B,IAAD,CAAnB;;;;"}
@@ -94,7 +94,7 @@ var settings = [{
94
94
  name: 'column',
95
95
  title: 'Column Chart'
96
96
  }],
97
- section: 'General',
97
+ section: 'GENERAL',
98
98
  type: 'selectBox'
99
99
  }];
100
100
  var details = {
@@ -1 +1 @@
1
- {"version":3,"file":"Chart.js","sources":["../../../../src/components/Elements/Chart.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n BarChart, Bar, PieChart, Pie, XAxis, YAxis, Legend, ResponsiveContainer, Cell,\n} from 'recharts';\nimport * as icons from '../../utils/icons';\n\nconst COLORS = ['#0088FE', '#00C49F', '#FFBB28', '#FF8042'];\n\nconst data = [\n { name: 'Page A', value: 2400 },\n { name: 'Page B', value: 1398 },\n { name: 'Page C', value: 9800 },\n { name: 'Page D', value: 3908 },\n];\n\nconst ChartColumn = () => (\n <ResponsiveContainer>\n <BarChart\n data={data}\n height={300}\n width={400}\n >\n <XAxis dataKey=\"name\" />\n <YAxis />\n <Bar\n dataKey=\"value\"\n fill=\"#8884d8\"\n isAnimationActive={false}\n />\n </BarChart>\n </ResponsiveContainer>\n);\n\nconst ChartPie = () => (\n <ResponsiveContainer>\n <PieChart\n height={300}\n width={400}\n >\n <Pie\n data={data}\n dataKey=\"value\"\n isAnimationActive={false}\n >\n {data.map((entry, index) => (\n <Cell\n key={`cell-${index.toString()}`}\n fill={COLORS[index % COLORS.length]}\n />\n ))}\n </Pie>\n <Legend height={36} />\n </PieChart>\n </ResponsiveContainer>\n);\n\nconst Chart = ({ item: { chartType } }) => (\n chartType === 'column' ? <ChartColumn /> : <ChartPie />\n);\n\nChart.propTypes = {\n item: PropTypes.shape({\n chartType: PropTypes.string,\n }),\n};\n\nChart.defaultProps = {\n item: {},\n};\n\nconst settings = [\n {\n key: 'chartType',\n label: 'Chart Type',\n options: [\n {\n icon: icons.pie,\n name: 'pie',\n title: 'Pie Chart',\n },\n {\n icon: icons.column,\n name: 'column',\n title: 'Column Chart',\n },\n ],\n section: 'General',\n type: 'selectBox',\n },\n];\n\nexport const details = {\n chartType: 'pie',\n height: 300,\n itemType: 'graphic',\n width: 420,\n};\n\nexport default {\n Component: memo(Chart),\n details,\n itemType: 'graphic',\n settings,\n};\n"],"names":["COLORS","data","name","value","ChartColumn","_jsx","ResponsiveContainer","_jsxs","BarChart","XAxis","YAxis","Bar","ChartPie","PieChart","Pie","map","entry","index","Cell","length","toString","Legend","Chart","chartType","item","propTypes","PropTypes","shape","string","defaultProps","settings","key","label","options","icon","icons","title","section","type","details","height","itemType","width","Component","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Chart.js","sources":["../../../../src/components/Elements/Chart.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n BarChart, Bar, PieChart, Pie, XAxis, YAxis, Legend, ResponsiveContainer, Cell,\n} from 'recharts';\nimport * as icons from '../../utils/icons';\n\nconst COLORS = ['#0088FE', '#00C49F', '#FFBB28', '#FF8042'];\n\nconst data = [\n { name: 'Page A', value: 2400 },\n { name: 'Page B', value: 1398 },\n { name: 'Page C', value: 9800 },\n { name: 'Page D', value: 3908 },\n];\n\nconst ChartColumn = () => (\n <ResponsiveContainer>\n <BarChart\n data={data}\n height={300}\n width={400}\n >\n <XAxis dataKey=\"name\" />\n <YAxis />\n <Bar\n dataKey=\"value\"\n fill=\"#8884d8\"\n isAnimationActive={false}\n />\n </BarChart>\n </ResponsiveContainer>\n);\n\nconst ChartPie = () => (\n <ResponsiveContainer>\n <PieChart\n height={300}\n width={400}\n >\n <Pie\n data={data}\n dataKey=\"value\"\n isAnimationActive={false}\n >\n {data.map((entry, index) => (\n <Cell\n key={`cell-${index.toString()}`}\n fill={COLORS[index % COLORS.length]}\n />\n ))}\n </Pie>\n <Legend height={36} />\n </PieChart>\n </ResponsiveContainer>\n);\n\nconst Chart = ({ item: { chartType } }) => (\n chartType === 'column' ? <ChartColumn /> : <ChartPie />\n);\n\nChart.propTypes = {\n item: PropTypes.shape({\n chartType: PropTypes.string,\n }),\n};\n\nChart.defaultProps = {\n item: {},\n};\n\nconst settings = [\n {\n key: 'chartType',\n label: 'Chart Type',\n options: [\n {\n icon: icons.pie,\n name: 'pie',\n title: 'Pie Chart',\n },\n {\n icon: icons.column,\n name: 'column',\n title: 'Column Chart',\n },\n ],\n section: 'GENERAL',\n type: 'selectBox',\n },\n];\n\nexport const details = {\n chartType: 'pie',\n height: 300,\n itemType: 'graphic',\n width: 420,\n};\n\nexport default {\n Component: memo(Chart),\n details,\n itemType: 'graphic',\n settings,\n};\n"],"names":["COLORS","data","name","value","ChartColumn","_jsx","ResponsiveContainer","_jsxs","BarChart","XAxis","YAxis","Bar","ChartPie","PieChart","Pie","map","entry","index","Cell","length","toString","Legend","Chart","chartType","item","propTypes","PropTypes","shape","string","defaultProps","settings","key","label","options","icon","icons","title","section","type","details","height","itemType","width","Component","memo"],"mappings":"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"}
@@ -26,23 +26,23 @@ var iconStyle = {
26
26
  var settings = [{
27
27
  key: 'iconType',
28
28
  label: 'Icon Type',
29
- section: 'General',
29
+ section: 'GENERAL',
30
30
  type: 'iconSelectBox'
31
- }, _objectSpread({}, staticSettings.fieldSet('Details', 'Icon Style')), {
31
+ }, _objectSpread({}, staticSettings.fieldSet('DETAILS', 'Icon Style')), {
32
32
  key: 'iconFillColor',
33
33
  label: 'Color',
34
- section: 'Details',
34
+ section: 'DETAILS',
35
35
  type: 'colorPicker'
36
36
  }, {
37
37
  key: 'opacity',
38
38
  label: 'Opacity',
39
39
  range: [0, 100],
40
- section: 'Details',
40
+ section: 'DETAILS',
41
41
  type: 'slider'
42
42
  }, {
43
43
  key: 'sizeSettings',
44
44
  label: 'Size',
45
- section: 'Details',
45
+ section: 'DETAILS',
46
46
  type: 'sizeSettings',
47
47
  value: function value(_, _ref) {
48
48
  var height = _ref.height,
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.js","sources":["../../../../src/components/Elements/Icon.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { fieldSet } from '../../utils/staticSettings';\nimport * as icons from '../../utils/iconSelector';\n\nconst ITEM_TYPE = 'icon';\nconst iconStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n key: 'iconType',\n label: 'Icon Type',\n section: 'General',\n type: 'iconSelectBox',\n },\n {\n ...fieldSet('Details', 'Icon Style'),\n },\n {\n key: 'iconFillColor',\n label: 'Color',\n section: 'Details',\n type: 'colorPicker',\n },\n {\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'Details',\n type: 'slider',\n },\n {\n key: 'sizeSettings',\n label: 'Size',\n section: 'Details',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n];\n\nexport const IconElement = ({\n item: {\n iconFillColor,\n iconType,\n opacity,\n },\n}) => {\n const Icon = icons[iconType];\n return (<Icon style={{ fill: iconFillColor, fillOpacity: opacity, ...iconStyle }} />);\n};\n\nIconElement.propTypes = {\n item: PropTypes.shape({\n height: PropTypes.number,\n iconFillColor: PropTypes.string,\n iconType: PropTypes.string,\n opacity: PropTypes.number,\n width: PropTypes.number,\n }),\n};\n\nIconElement.defaultProps = {\n item: {},\n};\n\nconst details = {\n height: 200,\n iconFillColor: '#000000',\n iconType: 'heart',\n itemType: ITEM_TYPE,\n opacity: 1,\n width: 200,\n};\n\nexport default {\n Component: memo(IconElement),\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","iconStyle","height","width","settings","key","label","section","type","fieldSet","range","value","_","IconElement","item","iconFillColor","iconType","opacity","Icon","icons","_jsx","fill","fillOpacity","propTypes","PropTypes","shape","number","string","defaultProps","details","itemType","Component","memo"],"mappings":";;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,SAAS,GAAG,MAAlB;AACA,IAAMC,SAAS,GAAG;AAChBC,EAAAA,MAAM,EAAE,MADQ;AAEhBC,EAAAA,KAAK,EAAE;AAFS,CAAlB;AAKA,IAAMC,QAAQ,GAAG,CACf;AACEC,EAAAA,GAAG,EAAE,UADP;AAEEC,EAAAA,KAAK,EAAE,WAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE;AAJR,CADe,oBAQVC,uBAAQ,CAAC,SAAD,EAAY,YAAZ,CARE,GAUf;AACEJ,EAAAA,GAAG,EAAE,eADP;AAEEC,EAAAA,KAAK,EAAE,OAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE;AAJR,CAVe,EAgBf;AACEH,EAAAA,GAAG,EAAE,SADP;AAEEC,EAAAA,KAAK,EAAE,SAFT;AAGEI,EAAAA,KAAK,EAAE,CAAC,CAAD,EAAI,GAAJ,CAHT;AAIEH,EAAAA,OAAO,EAAE,SAJX;AAKEC,EAAAA,IAAI,EAAE;AALR,CAhBe,EAuBf;AACEH,EAAAA,GAAG,EAAE,cADP;AAEEC,EAAAA,KAAK,EAAE,MAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE,cAJR;AAKEG,EAAAA,KAAK,EAAE,eAACC,CAAD;AAAA,QAAMV,MAAN,QAAMA,MAAN;AAAA,QAAcC,KAAd,QAAcA,KAAd;AAAA,qBAA6BA,KAA7B,cAAsCD,MAAtC;AAAA;AALT,CAvBe,CAAjB;IAgCaW,WAAW,GAAG,SAAdA,WAAc,QAMrB;AAAA,yBALJC,IAKI;AAAA,MAJFC,aAIE,cAJFA,aAIE;AAAA,MAHFC,QAGE,cAHFA,QAGE;AAAA,MAFFC,OAEE,cAFFA,OAEE;AACJ,MAAMC,IAAI,GAAGC,YAAK,CAACH,QAAD,CAAlB;AACA,sBAAQI,eAAC,IAAD;AAAM,IAAA,KAAK;AAAIC,MAAAA,IAAI,EAAEN,aAAV;AAAyBO,MAAAA,WAAW,EAAEL;AAAtC,OAAkDhB,SAAlD;AAAX,IAAR;AACD;AAEDY,WAAW,CAACU,SAAZ,GAAwB;AACtBT,EAAAA,IAAI,EAAEU,6BAAS,CAACC,KAAV,CAAgB;AACpBvB,IAAAA,MAAM,EAAEsB,6BAAS,CAACE,MADE;AAEpBX,IAAAA,aAAa,EAAES,6BAAS,CAACG,MAFL;AAGpBX,IAAAA,QAAQ,EAAEQ,6BAAS,CAACG,MAHA;AAIpBV,IAAAA,OAAO,EAAEO,6BAAS,CAACE,MAJC;AAKpBvB,IAAAA,KAAK,EAAEqB,6BAAS,CAACE;AALG,GAAhB;AADgB,CAAxB;AAUAb,WAAW,CAACe,YAAZ,GAA2B;AACzBd,EAAAA,IAAI,EAAE;AADmB,CAA3B;AAIA,IAAMe,OAAO,GAAG;AACd3B,EAAAA,MAAM,EAAE,GADM;AAEda,EAAAA,aAAa,EAAE,SAFD;AAGdC,EAAAA,QAAQ,EAAE,OAHI;AAIdc,EAAAA,QAAQ,EAAE9B,SAJI;AAKdiB,EAAAA,OAAO,EAAE,CALK;AAMdd,EAAAA,KAAK,EAAE;AANO,CAAhB;AASA,WAAe;AACb4B,EAAAA,SAAS,eAAEC,UAAI,CAACnB,WAAD,CADF;AAEbgB,EAAAA,OAAO,EAAPA,OAFa;AAGbC,EAAAA,QAAQ,EAAE9B,SAHG;AAIbI,EAAAA,QAAQ,EAARA;AAJa,CAAf;;;;;"}
1
+ {"version":3,"file":"Icon.js","sources":["../../../../src/components/Elements/Icon.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { fieldSet } from '../../utils/staticSettings';\nimport * as icons from '../../utils/iconSelector';\n\nconst ITEM_TYPE = 'icon';\nconst iconStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n key: 'iconType',\n label: 'Icon Type',\n section: 'GENERAL',\n type: 'iconSelectBox',\n },\n {\n ...fieldSet('DETAILS', 'Icon Style'),\n },\n {\n key: 'iconFillColor',\n label: 'Color',\n section: 'DETAILS',\n type: 'colorPicker',\n },\n {\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'DETAILS',\n type: 'slider',\n },\n {\n key: 'sizeSettings',\n label: 'Size',\n section: 'DETAILS',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n];\n\nexport const IconElement = ({\n item: {\n iconFillColor,\n iconType,\n opacity,\n },\n}) => {\n const Icon = icons[iconType];\n return (<Icon style={{ fill: iconFillColor, fillOpacity: opacity, ...iconStyle }} />);\n};\n\nIconElement.propTypes = {\n item: PropTypes.shape({\n height: PropTypes.number,\n iconFillColor: PropTypes.string,\n iconType: PropTypes.string,\n opacity: PropTypes.number,\n width: PropTypes.number,\n }),\n};\n\nIconElement.defaultProps = {\n item: {},\n};\n\nconst details = {\n height: 200,\n iconFillColor: '#000000',\n iconType: 'heart',\n itemType: ITEM_TYPE,\n opacity: 1,\n width: 200,\n};\n\nexport default {\n Component: memo(IconElement),\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","iconStyle","height","width","settings","key","label","section","type","fieldSet","range","value","_","IconElement","item","iconFillColor","iconType","opacity","Icon","icons","_jsx","fill","fillOpacity","propTypes","PropTypes","shape","number","string","defaultProps","details","itemType","Component","memo"],"mappings":";;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,SAAS,GAAG,MAAlB;AACA,IAAMC,SAAS,GAAG;AAChBC,EAAAA,MAAM,EAAE,MADQ;AAEhBC,EAAAA,KAAK,EAAE;AAFS,CAAlB;AAKA,IAAMC,QAAQ,GAAG,CACf;AACEC,EAAAA,GAAG,EAAE,UADP;AAEEC,EAAAA,KAAK,EAAE,WAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE;AAJR,CADe,oBAQVC,uBAAQ,CAAC,SAAD,EAAY,YAAZ,CARE,GAUf;AACEJ,EAAAA,GAAG,EAAE,eADP;AAEEC,EAAAA,KAAK,EAAE,OAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE;AAJR,CAVe,EAgBf;AACEH,EAAAA,GAAG,EAAE,SADP;AAEEC,EAAAA,KAAK,EAAE,SAFT;AAGEI,EAAAA,KAAK,EAAE,CAAC,CAAD,EAAI,GAAJ,CAHT;AAIEH,EAAAA,OAAO,EAAE,SAJX;AAKEC,EAAAA,IAAI,EAAE;AALR,CAhBe,EAuBf;AACEH,EAAAA,GAAG,EAAE,cADP;AAEEC,EAAAA,KAAK,EAAE,MAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE,cAJR;AAKEG,EAAAA,KAAK,EAAE,eAACC,CAAD;AAAA,QAAMV,MAAN,QAAMA,MAAN;AAAA,QAAcC,KAAd,QAAcA,KAAd;AAAA,qBAA6BA,KAA7B,cAAsCD,MAAtC;AAAA;AALT,CAvBe,CAAjB;IAgCaW,WAAW,GAAG,SAAdA,WAAc,QAMrB;AAAA,yBALJC,IAKI;AAAA,MAJFC,aAIE,cAJFA,aAIE;AAAA,MAHFC,QAGE,cAHFA,QAGE;AAAA,MAFFC,OAEE,cAFFA,OAEE;AACJ,MAAMC,IAAI,GAAGC,YAAK,CAACH,QAAD,CAAlB;AACA,sBAAQI,eAAC,IAAD;AAAM,IAAA,KAAK;AAAIC,MAAAA,IAAI,EAAEN,aAAV;AAAyBO,MAAAA,WAAW,EAAEL;AAAtC,OAAkDhB,SAAlD;AAAX,IAAR;AACD;AAEDY,WAAW,CAACU,SAAZ,GAAwB;AACtBT,EAAAA,IAAI,EAAEU,6BAAS,CAACC,KAAV,CAAgB;AACpBvB,IAAAA,MAAM,EAAEsB,6BAAS,CAACE,MADE;AAEpBX,IAAAA,aAAa,EAAES,6BAAS,CAACG,MAFL;AAGpBX,IAAAA,QAAQ,EAAEQ,6BAAS,CAACG,MAHA;AAIpBV,IAAAA,OAAO,EAAEO,6BAAS,CAACE,MAJC;AAKpBvB,IAAAA,KAAK,EAAEqB,6BAAS,CAACE;AALG,GAAhB;AADgB,CAAxB;AAUAb,WAAW,CAACe,YAAZ,GAA2B;AACzBd,EAAAA,IAAI,EAAE;AADmB,CAA3B;AAIA,IAAMe,OAAO,GAAG;AACd3B,EAAAA,MAAM,EAAE,GADM;AAEda,EAAAA,aAAa,EAAE,SAFD;AAGdC,EAAAA,QAAQ,EAAE,OAHI;AAIdc,EAAAA,QAAQ,EAAE9B,SAJI;AAKdiB,EAAAA,OAAO,EAAE,CALK;AAMdd,EAAAA,KAAK,EAAE;AANO,CAAhB;AASA,WAAe;AACb4B,EAAAA,SAAS,eAAEC,UAAI,CAACnB,WAAD,CADF;AAEbgB,EAAAA,OAAO,EAAPA,OAFa;AAGbC,EAAAA,QAAQ,EAAE9B,SAHG;AAIbI,EAAAA,QAAQ,EAARA;AAJa,CAAf;;;;;"}
@@ -7,10 +7,6 @@ var React = require('react');
7
7
  var PropTypes = require('prop-types');
8
8
  var jsxRuntime = require('react/jsx-runtime');
9
9
 
10
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
-
12
- var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
13
-
14
10
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
15
11
 
16
12
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
@@ -29,7 +25,7 @@ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(
29
25
 
30
26
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
31
27
  var ITEM_TYPE = 'image';
32
- var defaultURL = 'https://www.jotform.com/resources/assets/icon/jotform-logomark-transparent-400x400.png';
28
+ var DEFAULT_LOGO_SRC = 'https://www.jotform.com/resources/assets/icon/jotform-logomark-transparent-400x400.png';
33
29
  var imageWrapperStyle = {
34
30
  height: 'inherit',
35
31
  width: 'inherit'
@@ -55,8 +51,7 @@ var settings = [{
55
51
  }
56
52
  },
57
53
  key: 'url',
58
- label: 'Image Upload',
59
- section: 'General',
54
+ section: 'GENERAL',
60
55
  type: 'imageThumbnailWithDelete'
61
56
  }, {
62
57
  hideWhen: {
@@ -64,7 +59,7 @@ var settings = [{
64
59
  },
65
60
  key: 'sizeSettings',
66
61
  label: 'Size',
67
- section: 'General',
62
+ section: 'GENERAL',
68
63
  type: 'sizeSettings',
69
64
  value: function value(_, _ref) {
70
65
  var height = _ref.height,
@@ -78,7 +73,7 @@ var settings = [{
78
73
  key: 'roundedCorners',
79
74
  label: 'Rounded Corners',
80
75
  range: [0, 30],
81
- section: 'General',
76
+ section: 'GENERAL',
82
77
  showWhen: {
83
78
  shapeType: 'rectangle'
84
79
  },
@@ -91,12 +86,12 @@ var settings = [{
91
86
  key: 'opacity',
92
87
  label: 'Opacity',
93
88
  range: [0, 100],
94
- section: 'General',
89
+ section: 'GENERAL',
95
90
  type: 'slider'
96
91
  }, {
97
92
  key: 'url',
98
- label: 'Enter URL',
99
- section: 'Enter URL',
93
+ label: 'Enter Url',
94
+ section: 'ENTER URL',
100
95
  showWhen: {
101
96
  url: ''
102
97
  },
@@ -104,10 +99,8 @@ var settings = [{
104
99
  useImageSizeUpdate: true
105
100
  }];
106
101
  var ImageElement = function ImageElement(_ref2) {
107
- var _ref2$item = _ref2.item,
108
- opacity = _ref2$item.opacity,
109
- roundedCorners = _ref2$item.roundedCorners,
110
- url = _ref2$item.url;
102
+ var item = _ref2.item,
103
+ itemAccessor = _ref2.itemAccessor;
111
104
 
112
105
  var _useState = React.useState(true),
113
106
  _useState2 = _slicedToArray(_useState, 2),
@@ -119,6 +112,11 @@ var ImageElement = function ImageElement(_ref2) {
119
112
  isErrored = _useState4[0],
120
113
  setIsErrored = _useState4[1];
121
114
 
115
+ var opacity = item.opacity,
116
+ roundedCorners = item.roundedCorners,
117
+ url = item.url;
118
+ var additionalProps = itemAccessor(item);
119
+ var defaultURL = (additionalProps === null || additionalProps === void 0 ? void 0 : additionalProps.defaultURL) || DEFAULT_LOGO_SRC;
122
120
  React.useEffect(function () {
123
121
  setIsLoading(true);
124
122
  setIsErrored(false);
@@ -156,19 +154,22 @@ var ImageElement = function ImageElement(_ref2) {
156
154
  });
157
155
  };
158
156
  ImageElement.propTypes = {
159
- item: PropTypes__default['default'].shape({
160
- height: PropTypes__default['default'].oneOfType([PropTypes__default['default'].number, PropTypes__default['default'].string]),
161
- id: PropTypes__default['default'].string,
162
- opacity: PropTypes__default['default'].oneOfType([PropTypes__default['default'].number, PropTypes__default['default'].string]),
163
- roundedCorners: PropTypes__default['default'].oneOfType([PropTypes__default['default'].number, PropTypes__default['default'].string]),
164
- url: PropTypes__default['default'].string,
165
- width: PropTypes__default['default'].oneOfType([PropTypes__default['default'].number, PropTypes__default['default'].string])
166
- })
157
+ item: PropTypes.shape({
158
+ defaultURL: PropTypes.string,
159
+ height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
160
+ id: PropTypes.string,
161
+ opacity: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
162
+ roundedCorners: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
163
+ url: PropTypes.string,
164
+ width: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
165
+ }),
166
+ itemAccessor: PropTypes.func
167
167
  };
168
168
  ImageElement.defaultProps = {
169
169
  item: {
170
170
  opacity: 1
171
- }
171
+ },
172
+ itemAccessor: function itemAccessor() {}
172
173
  };
173
174
  var details = {
174
175
  height: 400,
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","sources":["../../../../src/components/Elements/Image.js"],"sourcesContent":["/* eslint max-len: [\"error\", { \"code\": 120 }] */\nimport { memo, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ITEM_TYPE = 'image';\nconst defaultURL = 'https://www.jotform.com/resources/assets/icon/jotform-logomark-transparent-400x400.png';\n\nconst imageWrapperStyle = {\n height: 'inherit',\n width: 'inherit',\n};\n\nconst imageStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n hideWhen: {\n url: '',\n },\n ifValueEquals: {\n '': {\n height: {\n cast: 'integer',\n value: 400,\n },\n width: {\n cast: 'integer',\n value: 400,\n },\n },\n },\n key: 'url',\n label: 'Image Upload',\n section: 'General',\n type: 'imageThumbnailWithDelete',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'sizeSettings',\n label: 'Size',\n section: 'General',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'roundedCorners',\n label: 'Rounded Corners',\n range: [0, 30],\n section: 'General',\n showWhen: {\n shapeType: 'rectangle',\n },\n simple: true,\n type: 'slider',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'General',\n type: 'slider',\n },\n {\n key: 'url',\n label: 'Enter URL',\n section: 'Enter URL',\n showWhen: { url: '' },\n type: 'enterImageURL',\n useImageSizeUpdate: true,\n },\n];\n\nexport const ImageElement = ({\n item: {\n opacity,\n roundedCorners,\n url,\n },\n}) => {\n const [isLoading, setIsLoading] = useState(true);\n const [isErrored, setIsErrored] = useState(false);\n\n useEffect(() => {\n setIsLoading(true);\n setIsErrored(false);\n }, [url, setIsLoading, setIsErrored]);\n\n // TODO :: do we want to show a loading placeholder?\n\n return (\n <>\n <div\n style={{\n ...imageWrapperStyle,\n display: isLoading || isErrored ? 'none' : 'block',\n }}\n >\n <img\n alt=\"reportImage\"\n onError={() => {\n setIsLoading(false);\n setIsErrored(true);\n }}\n onLoad={() => setIsLoading(false)}\n src={url || defaultURL}\n style={{\n ...imageStyle,\n borderRadius: `${roundedCorners}px`,\n display: isErrored ? 'none' : '',\n opacity: parseFloat(opacity),\n }}\n />\n </div>\n {isErrored && (\n <div\n style={{\n ...imageWrapperStyle,\n background: '#fafafa',\n paddingTop: '40%',\n textAlign: 'center',\n }}\n >\n Image was not loaded!\n </div>\n )}\n </>\n );\n};\n\nImageElement.propTypes = {\n item: PropTypes.shape({\n height: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n id: PropTypes.string,\n opacity: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n roundedCorners: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n url: PropTypes.string,\n width: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n};\n\nImageElement.defaultProps = {\n item: {\n opacity: 1,\n },\n};\n\nconst details = {\n height: 400,\n itemType: ITEM_TYPE,\n opacity: 1,\n roundedCorners: 0,\n url: '',\n width: 400,\n};\n\nexport default {\n Component: memo(ImageElement),\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","defaultURL","imageWrapperStyle","height","width","imageStyle","settings","hideWhen","url","ifValueEquals","cast","value","key","label","section","type","_","range","showWhen","shapeType","simple","useImageSizeUpdate","ImageElement","item","opacity","roundedCorners","useState","isLoading","setIsLoading","isErrored","setIsErrored","useEffect","_jsxs","_jsx","display","borderRadius","parseFloat","background","paddingTop","textAlign","propTypes","PropTypes","shape","oneOfType","number","string","id","defaultProps","details","itemType","Component","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Image.js","sources":["../../../../src/components/Elements/Image.js"],"sourcesContent":["/* eslint max-len: [\"error\", { \"code\": 120 }] */\nimport { memo, useState, useEffect } from 'react';\nimport {\n func,\n number,\n oneOfType,\n shape,\n string,\n} from 'prop-types';\n\nconst ITEM_TYPE = 'image';\n\nconst DEFAULT_LOGO_SRC = 'https://www.jotform.com/resources/assets/icon/jotform-logomark-transparent-400x400.png';\n\nconst imageWrapperStyle = {\n height: 'inherit',\n width: 'inherit',\n};\n\nconst imageStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n hideWhen: {\n url: '',\n },\n ifValueEquals: {\n '': {\n height: {\n cast: 'integer',\n value: 400,\n },\n width: {\n cast: 'integer',\n value: 400,\n },\n },\n },\n key: 'url',\n section: 'GENERAL',\n type: 'imageThumbnailWithDelete',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'sizeSettings',\n label: 'Size',\n section: 'GENERAL',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'roundedCorners',\n label: 'Rounded Corners',\n range: [0, 30],\n section: 'GENERAL',\n showWhen: {\n shapeType: 'rectangle',\n },\n simple: true,\n type: 'slider',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'GENERAL',\n type: 'slider',\n },\n {\n key: 'url',\n label: 'Enter Url',\n section: 'ENTER URL',\n showWhen: { url: '' },\n type: 'enterImageURL',\n useImageSizeUpdate: true,\n },\n];\n\nexport const ImageElement = ({ item, itemAccessor }) => {\n const [isLoading, setIsLoading] = useState(true);\n const [isErrored, setIsErrored] = useState(false);\n\n const {\n opacity,\n roundedCorners,\n url,\n } = item;\n\n const additionalProps = itemAccessor(item);\n const defaultURL = additionalProps?.defaultURL || DEFAULT_LOGO_SRC;\n\n useEffect(() => {\n setIsLoading(true);\n setIsErrored(false);\n }, [url, setIsLoading, setIsErrored]);\n\n // TODO :: do we want to show a loading placeholder?\n\n return (\n <>\n <div\n style={{\n ...imageWrapperStyle,\n display: isLoading || isErrored ? 'none' : 'block',\n }}\n >\n <img\n alt=\"reportImage\"\n onError={() => {\n setIsLoading(false);\n setIsErrored(true);\n }}\n onLoad={() => setIsLoading(false)}\n src={url || defaultURL}\n style={{\n ...imageStyle,\n borderRadius: `${roundedCorners}px`,\n display: isErrored ? 'none' : '',\n opacity: parseFloat(opacity),\n }}\n />\n </div>\n {isErrored && (\n <div\n style={{\n ...imageWrapperStyle,\n background: '#fafafa',\n paddingTop: '40%',\n textAlign: 'center',\n }}\n >\n Image was not loaded!\n </div>\n )}\n </>\n );\n};\n\nImageElement.propTypes = {\n item: shape({\n defaultURL: string,\n height: oneOfType([\n number,\n string,\n ]),\n id: string,\n opacity: oneOfType([\n number,\n string,\n ]),\n roundedCorners: oneOfType([\n number,\n string,\n ]),\n url: string,\n width: oneOfType([\n number,\n string,\n ]),\n }),\n itemAccessor: func,\n};\n\nImageElement.defaultProps = {\n item: {\n opacity: 1,\n },\n itemAccessor: () => {},\n};\n\nconst details = {\n height: 400,\n itemType: ITEM_TYPE,\n opacity: 1,\n roundedCorners: 0,\n url: '',\n width: 400,\n};\n\nexport default {\n Component: memo(ImageElement),\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","DEFAULT_LOGO_SRC","imageWrapperStyle","height","width","imageStyle","settings","hideWhen","url","ifValueEquals","cast","value","key","section","type","label","_","range","showWhen","shapeType","simple","useImageSizeUpdate","ImageElement","item","itemAccessor","useState","isLoading","setIsLoading","isErrored","setIsErrored","opacity","roundedCorners","additionalProps","defaultURL","useEffect","_jsxs","_jsx","display","borderRadius","parseFloat","background","paddingTop","textAlign","propTypes","shape","string","oneOfType","number","id","func","defaultProps","details","itemType","Component","memo"],"mappings":"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"}
@@ -7,24 +7,30 @@ var PropTypes = require('prop-types');
7
7
  var TextEditor = require('../TextEditor/TextEditor.js');
8
8
  var fonts = require('../../constants/fonts.js');
9
9
  var builderContext = require('../../utils/builderContext.js');
10
+ var staticSettings = require('../../utils/staticSettings.js');
10
11
  var jsxRuntime = require('react/jsx-runtime');
11
12
 
12
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
14
 
14
15
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
15
16
 
17
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
18
+
19
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
20
+
21
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
22
  var ITEM_TYPE = 'text';
17
23
  var settings = [{
18
24
  key: 'fontFamily',
19
25
  label: 'Font Family',
20
26
  options: fonts.fontTypes.fonts,
21
- section: 'General',
27
+ section: 'GENERAL',
22
28
  type: 'dropdown'
23
- }, {
29
+ }, _objectSpread({}, staticSettings.divider('GENERAL')), {
24
30
  key: 'opacity',
25
31
  label: 'Opacity',
26
32
  range: [0, 100],
27
- section: 'General',
33
+ section: 'GENERAL',
28
34
  type: 'slider'
29
35
  }];
30
36
  var defaultItem = {
@@ -1 +1 @@
1
- {"version":3,"file":"RichText.js","sources":["../../../../src/components/Elements/RichText.js"],"sourcesContent":["import {\n memo, useEffect, useRef, useCallback,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport TextEditor from '../TextEditor';\nimport { fontTypes } from '../../constants/fonts';\nimport { useBuilderContext } from '../../utils/builderContext';\n\nconst ITEM_TYPE = 'text';\n\nconst settings = [\n {\n key: 'fontFamily',\n label: 'Font Family',\n options: fontTypes.fonts,\n section: 'General',\n type: 'dropdown',\n },\n {\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'General',\n type: 'slider',\n },\n];\n\nconst defaultItem = {\n fontFamily: 'Circular Std',\n opacity: 1,\n value: '',\n};\n\nexport const RichTextElement = ({\n isSelected,\n item: {\n fontFamily,\n id,\n isLocked,\n opacity,\n value,\n },\n onItemChange,\n}) => {\n const reportItem = useRef({});\n const { isTextEditorOpen } = useBuilderContext();\n\n const textStyle = {\n fontFamily,\n opacity,\n };\n\n const handleSave = useCallback(newValue => {\n onItemChange(\n { id },\n { value: newValue },\n );\n }, [id]);\n\n const onFocus = e => {\n e.currentTarget.parentElement.setAttribute('draggable', false);\n };\n\n useEffect(() => {\n if (!isTextEditorOpen) {\n reportItem.current.parentElement.setAttribute('draggable', true);\n }\n }, [isTextEditorOpen]);\n\n return (\n <div\n ref={reportItem}\n className=\"reportItemInner f-height\"\n onFocus={onFocus}\n style={textStyle}\n >\n <TextEditor\n content={value}\n handleSave={handleSave}\n isLocked={isLocked}\n isSelected={isSelected}\n placeholder=\"Click to edit text\"\n />\n </div>\n );\n};\n\nRichTextElement.propTypes = {\n isSelected: PropTypes.bool,\n item: PropTypes.shape({\n fontFamily: PropTypes.string,\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n opacity: PropTypes.number,\n value: PropTypes.string,\n }),\n onItemChange: PropTypes.func,\n};\n\nRichTextElement.defaultProps = {\n isSelected: false,\n item: {},\n onItemChange: () => { },\n};\n\nconst details = {\n height: 65,\n itemType: ITEM_TYPE,\n width: 350,\n};\n\nexport default {\n Component: memo(RichTextElement),\n defaultItem,\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","settings","key","label","options","fontTypes","fonts","section","type","range","defaultItem","fontFamily","opacity","value","RichTextElement","isSelected","item","id","isLocked","onItemChange","reportItem","useRef","useBuilderContext","isTextEditorOpen","textStyle","handleSave","useCallback","newValue","onFocus","e","currentTarget","parentElement","setAttribute","useEffect","current","_jsx","propTypes","PropTypes","bool","shape","string","number","func","defaultProps","details","height","itemType","width","Component","memo"],"mappings":"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"}
1
+ {"version":3,"file":"RichText.js","sources":["../../../../src/components/Elements/RichText.js"],"sourcesContent":["import {\n memo, useEffect, useRef, useCallback,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport TextEditor from '../TextEditor';\nimport { fontTypes } from '../../constants/fonts';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { divider } from '../../utils/staticSettings';\n\nconst ITEM_TYPE = 'text';\n\nconst settings = [\n {\n key: 'fontFamily',\n label: 'Font Family',\n options: fontTypes.fonts,\n section: 'GENERAL',\n type: 'dropdown',\n },\n {\n ...divider('GENERAL'),\n },\n {\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'GENERAL',\n type: 'slider',\n },\n];\n\nconst defaultItem = {\n fontFamily: 'Circular Std',\n opacity: 1,\n value: '',\n};\n\nexport const RichTextElement = ({\n isSelected,\n item: {\n fontFamily,\n id,\n isLocked,\n opacity,\n value,\n },\n onItemChange,\n}) => {\n const reportItem = useRef({});\n const { isTextEditorOpen } = useBuilderContext();\n\n const textStyle = {\n fontFamily,\n opacity,\n };\n\n const handleSave = useCallback(newValue => {\n onItemChange(\n { id },\n { value: newValue },\n );\n }, [id]);\n\n const onFocus = e => {\n e.currentTarget.parentElement.setAttribute('draggable', false);\n };\n\n useEffect(() => {\n if (!isTextEditorOpen) {\n reportItem.current.parentElement.setAttribute('draggable', true);\n }\n }, [isTextEditorOpen]);\n\n return (\n <div\n ref={reportItem}\n className=\"reportItemInner f-height\"\n onFocus={onFocus}\n style={textStyle}\n >\n <TextEditor\n content={value}\n handleSave={handleSave}\n isLocked={isLocked}\n isSelected={isSelected}\n placeholder=\"Click to edit text\"\n />\n </div>\n );\n};\n\nRichTextElement.propTypes = {\n isSelected: PropTypes.bool,\n item: PropTypes.shape({\n fontFamily: PropTypes.string,\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n opacity: PropTypes.number,\n value: PropTypes.string,\n }),\n onItemChange: PropTypes.func,\n};\n\nRichTextElement.defaultProps = {\n isSelected: false,\n item: {},\n onItemChange: () => { },\n};\n\nconst details = {\n height: 65,\n itemType: ITEM_TYPE,\n width: 350,\n};\n\nexport default {\n Component: memo(RichTextElement),\n defaultItem,\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","settings","key","label","options","fontTypes","fonts","section","type","divider","range","defaultItem","fontFamily","opacity","value","RichTextElement","isSelected","item","id","isLocked","onItemChange","reportItem","useRef","useBuilderContext","isTextEditorOpen","textStyle","handleSave","useCallback","newValue","onFocus","e","currentTarget","parentElement","setAttribute","useEffect","current","_jsx","propTypes","PropTypes","bool","shape","string","number","func","defaultProps","details","height","itemType","width","Component","memo"],"mappings":"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"}