@jotforminc/dnd-builder 3.0.0-alpha.2 → 3.0.0

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 (462) hide show
  1. package/CHANGELOG.md +193 -0
  2. package/lib/cjs/components/AlignmentGuides.js +11 -12
  3. package/lib/cjs/components/AlignmentGuides.js.map +1 -1
  4. package/lib/cjs/components/Builder/Builder.js +21 -131
  5. package/lib/cjs/components/Builder/Builder.js.map +1 -1
  6. package/lib/cjs/components/Builder/BuilderWrapper.js +64 -0
  7. package/lib/cjs/components/Builder/BuilderWrapper.js.map +1 -0
  8. package/lib/cjs/components/Builder/ContextMenu.js +31 -30
  9. package/lib/cjs/components/Builder/ContextMenu.js.map +1 -1
  10. package/lib/cjs/components/Builder/DndWrapper.js +16 -19
  11. package/lib/cjs/components/Builder/DndWrapper.js.map +1 -1
  12. package/lib/cjs/components/Builder/Element.js +51 -44
  13. package/lib/cjs/components/Builder/Element.js.map +1 -1
  14. package/lib/cjs/components/Builder/Page.js +127 -82
  15. package/lib/cjs/components/Builder/Page.js.map +1 -1
  16. package/lib/cjs/components/Builder/PageActions.js +35 -37
  17. package/lib/cjs/components/Builder/PageActions.js.map +1 -1
  18. package/lib/cjs/components/Builder/PageAdder.js +10 -11
  19. package/lib/cjs/components/Builder/PageAdder.js.map +1 -1
  20. package/lib/cjs/components/Builder/Panel.js +8 -10
  21. package/lib/cjs/components/Builder/Panel.js.map +1 -1
  22. package/lib/cjs/components/Builder/ReportItemRenderer.js +7 -6
  23. package/lib/cjs/components/Builder/ReportItemRenderer.js.map +1 -1
  24. package/lib/cjs/components/Builder/Scene.js +75 -205
  25. package/lib/cjs/components/Builder/Scene.js.map +1 -1
  26. package/lib/cjs/components/Builder/SearchInput.js +27 -58
  27. package/lib/cjs/components/Builder/SearchInput.js.map +1 -1
  28. package/lib/cjs/components/Builder/Section.js +8 -10
  29. package/lib/cjs/components/Builder/Section.js.map +1 -1
  30. package/lib/cjs/components/Builder/Tabs.js +19 -16
  31. package/lib/cjs/components/Builder/Tabs.js.map +1 -1
  32. package/lib/cjs/components/Builder/ZoomControls.js +20 -34
  33. package/lib/cjs/components/Builder/ZoomControls.js.map +1 -1
  34. package/lib/cjs/components/DraggableItem/DraggableItem.js +165 -157
  35. package/lib/cjs/components/DraggableItem/DraggableItem.js.map +1 -1
  36. package/lib/cjs/components/DraggableItem/DraggableItemActions.js +12 -14
  37. package/lib/cjs/components/DraggableItem/DraggableItemActions.js.map +1 -1
  38. package/lib/cjs/components/DraggableItem/DraggableItemLayer.js +25 -22
  39. package/lib/cjs/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  40. package/lib/cjs/components/Elements/Chart.js +3 -4
  41. package/lib/cjs/components/Elements/Chart.js.map +1 -1
  42. package/lib/cjs/components/Elements/Icon.js +3 -5
  43. package/lib/cjs/components/Elements/Icon.js.map +1 -1
  44. package/lib/cjs/components/Elements/Image.js +11 -12
  45. package/lib/cjs/components/Elements/Image.js.map +1 -1
  46. package/lib/cjs/components/Elements/RichText.js +16 -14
  47. package/lib/cjs/components/Elements/RichText.js.map +1 -1
  48. package/lib/cjs/components/Elements/Shapes.js +2 -4
  49. package/lib/cjs/components/Elements/Shapes.js.map +1 -1
  50. package/lib/cjs/components/ItemPositioner.js +6 -8
  51. package/lib/cjs/components/ItemPositioner.js.map +1 -1
  52. package/lib/cjs/components/PageItemResizer.js +3 -7
  53. package/lib/cjs/components/PageItemResizer.js.map +1 -1
  54. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js +25 -60
  55. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
  56. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
  57. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
  58. package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
  59. package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  60. package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js +56 -21
  61. package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
  62. package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +54 -0
  63. package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
  64. package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js +143 -47
  65. package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
  66. package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js +17 -18
  67. package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  68. package/lib/cjs/components/Panels/LeftPanel/Elements.js +48 -52
  69. package/lib/cjs/components/Panels/LeftPanel/Elements.js.map +1 -1
  70. package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js +6 -35
  71. package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
  72. package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js +4 -4
  73. package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
  74. package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js +4 -3
  75. package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
  76. package/lib/cjs/components/Panels/RightPanel/RightPanel.js +139 -144
  77. package/lib/cjs/components/Panels/RightPanel/RightPanel.js.map +1 -1
  78. package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js +7 -4
  79. package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
  80. package/lib/cjs/components/Panels/RightPanel/Settings.js +21 -22
  81. package/lib/cjs/components/Panels/RightPanel/Settings.js.map +1 -1
  82. package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js +105 -95
  83. package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  84. package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js +17 -18
  85. package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  86. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js +33 -67
  87. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  88. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js +9 -9
  89. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  90. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js +62 -28
  91. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
  92. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +54 -0
  93. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
  94. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js +8 -9
  95. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
  96. package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js +163 -109
  97. package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
  98. package/lib/cjs/components/Presentation/Presentation.js +19 -70
  99. package/lib/cjs/components/Presentation/Presentation.js.map +1 -1
  100. package/lib/cjs/components/Presentation/PresentationBar/PageNavigation.js +8 -10
  101. package/lib/cjs/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
  102. package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js +45 -12
  103. package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  104. package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js +44 -86
  105. package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
  106. package/lib/cjs/components/Presentation/PresentationBar/SelectZoom.js +8 -10
  107. package/lib/cjs/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
  108. package/lib/cjs/components/Presentation/PresentationWrapper.js +56 -59
  109. package/lib/cjs/components/Presentation/PresentationWrapper.js.map +1 -1
  110. package/lib/cjs/components/Presentation/ProgressBar.js +4 -6
  111. package/lib/cjs/components/Presentation/ProgressBar.js.map +1 -1
  112. package/lib/cjs/components/Preview/Preview.js +14 -69
  113. package/lib/cjs/components/Preview/Preview.js.map +1 -1
  114. package/lib/cjs/components/Preview/StaticItem.js +7 -28
  115. package/lib/cjs/components/Preview/StaticItem.js.map +1 -1
  116. package/lib/cjs/components/Preview/StaticPage.js +19 -33
  117. package/lib/cjs/components/Preview/StaticPage.js.map +1 -1
  118. package/lib/cjs/components/Preview/StaticScene.js +34 -56
  119. package/lib/cjs/components/Preview/StaticScene.js.map +1 -1
  120. package/lib/cjs/components/Print/Print.js +18 -62
  121. package/lib/cjs/components/Print/Print.js.map +1 -1
  122. package/lib/cjs/components/Print/PrintModal.js +55 -0
  123. package/lib/cjs/components/Print/PrintModal.js.map +1 -0
  124. package/lib/cjs/components/Print/{PrintModeWithoutContext.js → PrintWrapper.js} +11 -42
  125. package/lib/cjs/components/Print/PrintWrapper.js.map +1 -0
  126. package/lib/cjs/components/Report.js +29 -47
  127. package/lib/cjs/components/Report.js.map +1 -1
  128. package/lib/cjs/components/ReportItemsWrapper.js +22 -36
  129. package/lib/cjs/components/ReportItemsWrapper.js.map +1 -1
  130. package/lib/cjs/components/ReportWrapper.js +28 -57
  131. package/lib/cjs/components/ReportWrapper.js.map +1 -1
  132. package/lib/cjs/components/Settings/Button.js +8 -10
  133. package/lib/cjs/components/Settings/Button.js.map +1 -1
  134. package/lib/cjs/components/Settings/CheckboxGroup.js +8 -10
  135. package/lib/cjs/components/Settings/CheckboxGroup.js.map +1 -1
  136. package/lib/cjs/components/Settings/ColorPicker.js +18 -13
  137. package/lib/cjs/components/Settings/ColorPicker.js.map +1 -1
  138. package/lib/cjs/components/Settings/Dropdown.js +10 -12
  139. package/lib/cjs/components/Settings/Dropdown.js.map +1 -1
  140. package/lib/cjs/components/Settings/FieldSet.js +3 -4
  141. package/lib/cjs/components/Settings/FieldSet.js.map +1 -1
  142. package/lib/cjs/components/Settings/IconSelectBox.js +8 -10
  143. package/lib/cjs/components/Settings/IconSelectBox.js.map +1 -1
  144. package/lib/cjs/components/Settings/ImagePicker/EnterURL.js +4 -6
  145. package/lib/cjs/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  146. package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
  147. package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  148. package/lib/cjs/components/Settings/ImageUrl.js +8 -10
  149. package/lib/cjs/components/Settings/ImageUrl.js.map +1 -1
  150. package/lib/cjs/components/Settings/LayoutSizeSettings.js +4 -6
  151. package/lib/cjs/components/Settings/LayoutSizeSettings.js.map +1 -1
  152. package/lib/cjs/components/Settings/Orientation.js +8 -10
  153. package/lib/cjs/components/Settings/Orientation.js.map +1 -1
  154. package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js +128 -0
  155. package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
  156. package/lib/cjs/components/Settings/PageLayer/LayerItem.js +91 -32
  157. package/lib/cjs/components/Settings/PageLayer/LayerItem.js.map +1 -1
  158. package/lib/cjs/components/Settings/PageLayer/PageLayer.js +115 -50
  159. package/lib/cjs/components/Settings/PageLayer/PageLayer.js.map +1 -1
  160. package/lib/cjs/components/Settings/SegmentControl.js +8 -10
  161. package/lib/cjs/components/Settings/SegmentControl.js.map +1 -1
  162. package/lib/cjs/components/Settings/SelectBox.js +8 -10
  163. package/lib/cjs/components/Settings/SelectBox.js.map +1 -1
  164. package/lib/cjs/components/Settings/SettingsItemRenderer.js +9 -11
  165. package/lib/cjs/components/Settings/SettingsItemRenderer.js.map +1 -1
  166. package/lib/cjs/components/Settings/SizeSettings.js +4 -6
  167. package/lib/cjs/components/Settings/SizeSettings.js.map +1 -1
  168. package/lib/cjs/components/Settings/Slider.js +8 -10
  169. package/lib/cjs/components/Settings/Slider.js.map +1 -1
  170. package/lib/cjs/components/Settings/Switch.js +8 -10
  171. package/lib/cjs/components/Settings/Switch.js.map +1 -1
  172. package/lib/cjs/components/Settings/Textbox.js +12 -14
  173. package/lib/cjs/components/Settings/Textbox.js.map +1 -1
  174. package/lib/cjs/components/Settings/Toggle.js +8 -10
  175. package/lib/cjs/components/Settings/Toggle.js.map +1 -1
  176. package/lib/cjs/components/StaticElements/StaticRichText.js +26 -30
  177. package/lib/cjs/components/StaticElements/StaticRichText.js.map +1 -1
  178. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
  179. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  180. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
  181. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
  182. package/lib/cjs/components/TextEditor/QuillEditor.js +6 -11
  183. package/lib/cjs/components/TextEditor/QuillEditor.js.map +1 -1
  184. package/lib/cjs/components/TextEditor/TextEditor.js +17 -18
  185. package/lib/cjs/components/TextEditor/TextEditor.js.map +1 -1
  186. package/lib/cjs/components/withClickOutside.js +10 -11
  187. package/lib/cjs/components/withClickOutside.js.map +1 -1
  188. package/lib/cjs/components/withZoomPanPinchHOC.js +10 -12
  189. package/lib/cjs/components/withZoomPanPinchHOC.js.map +1 -1
  190. package/lib/cjs/constants/eventIgnoredRoles.js +13 -0
  191. package/lib/cjs/constants/eventIgnoredRoles.js.map +1 -0
  192. package/lib/cjs/constants/texts.js +11 -0
  193. package/lib/cjs/constants/texts.js.map +1 -1
  194. package/lib/cjs/contexts/BuilderContext.js +208 -0
  195. package/lib/cjs/contexts/BuilderContext.js.map +1 -0
  196. package/lib/cjs/contexts/PresentationContext.js +140 -0
  197. package/lib/cjs/contexts/PresentationContext.js.map +1 -0
  198. package/lib/cjs/contexts/PropContext.js +144 -0
  199. package/lib/cjs/contexts/PropContext.js.map +1 -0
  200. package/lib/cjs/contexts/Providers.js +70 -0
  201. package/lib/cjs/contexts/Providers.js.map +1 -0
  202. package/lib/cjs/index.js +0 -2
  203. package/lib/cjs/index.js.map +1 -1
  204. package/lib/cjs/styles/_jfPresentation.scss +0 -18
  205. package/lib/cjs/styles/_jfPrint.scss +17 -1
  206. package/lib/cjs/styles/_jfReportsModal.scss +9 -9
  207. package/lib/cjs/styles/_jfReportsPanels.scss +4 -1
  208. package/lib/cjs/styles/_jfReportsReportItem.scss +1 -1
  209. package/lib/cjs/styles/_jfReportsSVG.scss +0 -1
  210. package/lib/cjs/styles/_jfReportsTextEditor.scss +5 -0
  211. package/lib/cjs/styles/_jfReportsViewModes.scss +2 -5
  212. package/lib/cjs/styles/_jfSearchInput.scss +2 -2
  213. package/lib/cjs/utils/functions.js +19 -23
  214. package/lib/cjs/utils/functions.js.map +1 -1
  215. package/lib/cjs/utils/getDefaultPresentationActions.js +1 -1
  216. package/lib/cjs/utils/getDefaultPresentationActions.js.map +1 -1
  217. package/lib/cjs/utils/hooks.js +64 -47
  218. package/lib/cjs/utils/hooks.js.map +1 -1
  219. package/lib/esm/components/AlignmentGuides.js +11 -12
  220. package/lib/esm/components/AlignmentGuides.js.map +1 -1
  221. package/lib/esm/components/Builder/Builder.js +20 -129
  222. package/lib/esm/components/Builder/Builder.js.map +1 -1
  223. package/lib/esm/components/Builder/BuilderWrapper.js +58 -0
  224. package/lib/esm/components/Builder/BuilderWrapper.js.map +1 -0
  225. package/lib/esm/components/Builder/ContextMenu.js +31 -30
  226. package/lib/esm/components/Builder/ContextMenu.js.map +1 -1
  227. package/lib/esm/components/Builder/DndWrapper.js +10 -10
  228. package/lib/esm/components/Builder/DndWrapper.js.map +1 -1
  229. package/lib/esm/components/Builder/Element.js +50 -43
  230. package/lib/esm/components/Builder/Element.js.map +1 -1
  231. package/lib/esm/components/Builder/Page.js +128 -83
  232. package/lib/esm/components/Builder/Page.js.map +1 -1
  233. package/lib/esm/components/Builder/PageActions.js +35 -37
  234. package/lib/esm/components/Builder/PageActions.js.map +1 -1
  235. package/lib/esm/components/Builder/PageAdder.js +11 -12
  236. package/lib/esm/components/Builder/PageAdder.js.map +1 -1
  237. package/lib/esm/components/Builder/Panel.js +8 -10
  238. package/lib/esm/components/Builder/Panel.js.map +1 -1
  239. package/lib/esm/components/Builder/ReportItemRenderer.js +7 -6
  240. package/lib/esm/components/Builder/ReportItemRenderer.js.map +1 -1
  241. package/lib/esm/components/Builder/Scene.js +77 -203
  242. package/lib/esm/components/Builder/Scene.js.map +1 -1
  243. package/lib/esm/components/Builder/SearchInput.js +28 -58
  244. package/lib/esm/components/Builder/SearchInput.js.map +1 -1
  245. package/lib/esm/components/Builder/Section.js +8 -10
  246. package/lib/esm/components/Builder/Section.js.map +1 -1
  247. package/lib/esm/components/Builder/Tabs.js +19 -16
  248. package/lib/esm/components/Builder/Tabs.js.map +1 -1
  249. package/lib/esm/components/Builder/ZoomControls.js +20 -30
  250. package/lib/esm/components/Builder/ZoomControls.js.map +1 -1
  251. package/lib/esm/components/DraggableItem/DraggableItem.js +165 -156
  252. package/lib/esm/components/DraggableItem/DraggableItem.js.map +1 -1
  253. package/lib/esm/components/DraggableItem/DraggableItemActions.js +12 -14
  254. package/lib/esm/components/DraggableItem/DraggableItemActions.js.map +1 -1
  255. package/lib/esm/components/DraggableItem/DraggableItemLayer.js +23 -20
  256. package/lib/esm/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  257. package/lib/esm/components/Elements/Chart.js +3 -4
  258. package/lib/esm/components/Elements/Chart.js.map +1 -1
  259. package/lib/esm/components/Elements/Icon.js +3 -5
  260. package/lib/esm/components/Elements/Icon.js.map +1 -1
  261. package/lib/esm/components/Elements/Image.js +11 -12
  262. package/lib/esm/components/Elements/Image.js.map +1 -1
  263. package/lib/esm/components/Elements/RichText.js +16 -14
  264. package/lib/esm/components/Elements/RichText.js.map +1 -1
  265. package/lib/esm/components/Elements/Shapes.js +2 -4
  266. package/lib/esm/components/Elements/Shapes.js.map +1 -1
  267. package/lib/esm/components/ItemPositioner.js +6 -8
  268. package/lib/esm/components/ItemPositioner.js.map +1 -1
  269. package/lib/esm/components/PageItemResizer.js +3 -7
  270. package/lib/esm/components/PageItemResizer.js.map +1 -1
  271. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js +25 -59
  272. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
  273. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
  274. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
  275. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
  276. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  277. package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js +56 -22
  278. package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
  279. package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +48 -0
  280. package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
  281. package/lib/esm/components/Panels/AllSlidesPanel/PageList.js +140 -48
  282. package/lib/esm/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
  283. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js +17 -18
  284. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  285. package/lib/esm/components/Panels/LeftPanel/Elements.js +49 -53
  286. package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
  287. package/lib/esm/components/Panels/LeftPanel/LeftPanel.js +6 -34
  288. package/lib/esm/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
  289. package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js +4 -4
  290. package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
  291. package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js +4 -3
  292. package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
  293. package/lib/esm/components/Panels/RightPanel/RightPanel.js +141 -145
  294. package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
  295. package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js +7 -4
  296. package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
  297. package/lib/esm/components/Panels/RightPanel/Settings.js +21 -22
  298. package/lib/esm/components/Panels/RightPanel/Settings.js.map +1 -1
  299. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js +106 -96
  300. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  301. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js +17 -18
  302. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  303. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +33 -66
  304. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  305. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js +9 -9
  306. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  307. package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js +62 -28
  308. package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
  309. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +48 -0
  310. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
  311. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js +8 -9
  312. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
  313. package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js +165 -111
  314. package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
  315. package/lib/esm/components/Presentation/Presentation.js +19 -69
  316. package/lib/esm/components/Presentation/Presentation.js.map +1 -1
  317. package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js +8 -10
  318. package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
  319. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js +46 -13
  320. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  321. package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js +45 -87
  322. package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
  323. package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js +8 -10
  324. package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
  325. package/lib/esm/components/Presentation/PresentationWrapper.js +57 -60
  326. package/lib/esm/components/Presentation/PresentationWrapper.js.map +1 -1
  327. package/lib/esm/components/Presentation/ProgressBar.js +4 -6
  328. package/lib/esm/components/Presentation/ProgressBar.js.map +1 -1
  329. package/lib/esm/components/Preview/Preview.js +14 -68
  330. package/lib/esm/components/Preview/Preview.js.map +1 -1
  331. package/lib/esm/components/Preview/StaticItem.js +8 -28
  332. package/lib/esm/components/Preview/StaticItem.js.map +1 -1
  333. package/lib/esm/components/Preview/StaticPage.js +17 -30
  334. package/lib/esm/components/Preview/StaticPage.js.map +1 -1
  335. package/lib/esm/components/Preview/StaticScene.js +34 -56
  336. package/lib/esm/components/Preview/StaticScene.js.map +1 -1
  337. package/lib/esm/components/Print/Print.js +18 -57
  338. package/lib/esm/components/Print/Print.js.map +1 -1
  339. package/lib/esm/components/Print/PrintModal.js +49 -0
  340. package/lib/esm/components/Print/PrintModal.js.map +1 -0
  341. package/lib/esm/components/Print/{PrintModeWithoutContext.js → PrintWrapper.js} +11 -42
  342. package/lib/esm/components/Print/PrintWrapper.js.map +1 -0
  343. package/lib/esm/components/Report.js +30 -48
  344. package/lib/esm/components/Report.js.map +1 -1
  345. package/lib/esm/components/ReportItemsWrapper.js +20 -34
  346. package/lib/esm/components/ReportItemsWrapper.js.map +1 -1
  347. package/lib/esm/components/ReportWrapper.js +29 -58
  348. package/lib/esm/components/ReportWrapper.js.map +1 -1
  349. package/lib/esm/components/Settings/Button.js +8 -10
  350. package/lib/esm/components/Settings/Button.js.map +1 -1
  351. package/lib/esm/components/Settings/CheckboxGroup.js +8 -10
  352. package/lib/esm/components/Settings/CheckboxGroup.js.map +1 -1
  353. package/lib/esm/components/Settings/ColorPicker.js +18 -13
  354. package/lib/esm/components/Settings/ColorPicker.js.map +1 -1
  355. package/lib/esm/components/Settings/Dropdown.js +10 -12
  356. package/lib/esm/components/Settings/Dropdown.js.map +1 -1
  357. package/lib/esm/components/Settings/FieldSet.js +3 -4
  358. package/lib/esm/components/Settings/FieldSet.js.map +1 -1
  359. package/lib/esm/components/Settings/IconSelectBox.js +8 -10
  360. package/lib/esm/components/Settings/IconSelectBox.js.map +1 -1
  361. package/lib/esm/components/Settings/ImagePicker/EnterURL.js +4 -6
  362. package/lib/esm/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  363. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
  364. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  365. package/lib/esm/components/Settings/ImageUrl.js +8 -10
  366. package/lib/esm/components/Settings/ImageUrl.js.map +1 -1
  367. package/lib/esm/components/Settings/LayoutSizeSettings.js +4 -6
  368. package/lib/esm/components/Settings/LayoutSizeSettings.js.map +1 -1
  369. package/lib/esm/components/Settings/Orientation.js +8 -10
  370. package/lib/esm/components/Settings/Orientation.js.map +1 -1
  371. package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js +121 -0
  372. package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
  373. package/lib/esm/components/Settings/PageLayer/LayerItem.js +92 -34
  374. package/lib/esm/components/Settings/PageLayer/LayerItem.js.map +1 -1
  375. package/lib/esm/components/Settings/PageLayer/PageLayer.js +117 -52
  376. package/lib/esm/components/Settings/PageLayer/PageLayer.js.map +1 -1
  377. package/lib/esm/components/Settings/SegmentControl.js +8 -10
  378. package/lib/esm/components/Settings/SegmentControl.js.map +1 -1
  379. package/lib/esm/components/Settings/SelectBox.js +8 -10
  380. package/lib/esm/components/Settings/SelectBox.js.map +1 -1
  381. package/lib/esm/components/Settings/SettingsItemRenderer.js +9 -11
  382. package/lib/esm/components/Settings/SettingsItemRenderer.js.map +1 -1
  383. package/lib/esm/components/Settings/SizeSettings.js +4 -6
  384. package/lib/esm/components/Settings/SizeSettings.js.map +1 -1
  385. package/lib/esm/components/Settings/Slider.js +8 -10
  386. package/lib/esm/components/Settings/Slider.js.map +1 -1
  387. package/lib/esm/components/Settings/Switch.js +8 -10
  388. package/lib/esm/components/Settings/Switch.js.map +1 -1
  389. package/lib/esm/components/Settings/Textbox.js +12 -14
  390. package/lib/esm/components/Settings/Textbox.js.map +1 -1
  391. package/lib/esm/components/Settings/Toggle.js +8 -10
  392. package/lib/esm/components/Settings/Toggle.js.map +1 -1
  393. package/lib/esm/components/StaticElements/StaticRichText.js +26 -30
  394. package/lib/esm/components/StaticElements/StaticRichText.js.map +1 -1
  395. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
  396. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  397. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
  398. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
  399. package/lib/esm/components/TextEditor/QuillEditor.js +6 -11
  400. package/lib/esm/components/TextEditor/QuillEditor.js.map +1 -1
  401. package/lib/esm/components/TextEditor/TextEditor.js +17 -18
  402. package/lib/esm/components/TextEditor/TextEditor.js.map +1 -1
  403. package/lib/esm/components/withClickOutside.js +11 -12
  404. package/lib/esm/components/withClickOutside.js.map +1 -1
  405. package/lib/esm/components/withZoomPanPinchHOC.js +10 -12
  406. package/lib/esm/components/withZoomPanPinchHOC.js.map +1 -1
  407. package/lib/esm/constants/eventIgnoredRoles.js +9 -0
  408. package/lib/esm/constants/eventIgnoredRoles.js.map +1 -0
  409. package/lib/esm/constants/texts.js +11 -0
  410. package/lib/esm/constants/texts.js.map +1 -1
  411. package/lib/esm/contexts/BuilderContext.js +199 -0
  412. package/lib/esm/contexts/BuilderContext.js.map +1 -0
  413. package/lib/esm/contexts/PresentationContext.js +131 -0
  414. package/lib/esm/contexts/PresentationContext.js.map +1 -0
  415. package/lib/esm/contexts/PropContext.js +135 -0
  416. package/lib/esm/contexts/PropContext.js.map +1 -0
  417. package/lib/esm/contexts/Providers.js +64 -0
  418. package/lib/esm/contexts/Providers.js.map +1 -0
  419. package/lib/esm/index.js +0 -1
  420. package/lib/esm/index.js.map +1 -1
  421. package/lib/esm/styles/_jfPresentation.scss +0 -18
  422. package/lib/esm/styles/_jfPrint.scss +17 -1
  423. package/lib/esm/styles/_jfReportsModal.scss +9 -9
  424. package/lib/esm/styles/_jfReportsPanels.scss +4 -1
  425. package/lib/esm/styles/_jfReportsReportItem.scss +1 -1
  426. package/lib/esm/styles/_jfReportsSVG.scss +0 -1
  427. package/lib/esm/styles/_jfReportsTextEditor.scss +5 -0
  428. package/lib/esm/styles/_jfReportsViewModes.scss +2 -5
  429. package/lib/esm/styles/_jfSearchInput.scss +2 -2
  430. package/lib/esm/utils/functions.js +15 -22
  431. package/lib/esm/utils/functions.js.map +1 -1
  432. package/lib/esm/utils/getDefaultPresentationActions.js +1 -1
  433. package/lib/esm/utils/getDefaultPresentationActions.js.map +1 -1
  434. package/lib/esm/utils/hooks.js +66 -49
  435. package/lib/esm/utils/hooks.js.map +1 -1
  436. package/package.json +18 -14
  437. package/lib/cjs/components/Print/PrintMode.js +0 -59
  438. package/lib/cjs/components/Print/PrintMode.js.map +0 -1
  439. package/lib/cjs/components/Print/PrintModeWithoutContext.js.map +0 -1
  440. package/lib/cjs/components/Responsive/index.js +0 -107
  441. package/lib/cjs/components/Responsive/index.js.map +0 -1
  442. package/lib/cjs/components/ResponsiveContent.js +0 -15
  443. package/lib/cjs/components/ResponsiveContent.js.map +0 -1
  444. package/lib/cjs/utils/builderContext.js +0 -308
  445. package/lib/cjs/utils/builderContext.js.map +0 -1
  446. package/lib/cjs/utils/presentationContext.js +0 -144
  447. package/lib/cjs/utils/presentationContext.js.map +0 -1
  448. package/lib/cjs/utils/propContext.js +0 -133
  449. package/lib/cjs/utils/propContext.js.map +0 -1
  450. package/lib/esm/components/Print/PrintMode.js +0 -52
  451. package/lib/esm/components/Print/PrintMode.js.map +0 -1
  452. package/lib/esm/components/Print/PrintModeWithoutContext.js.map +0 -1
  453. package/lib/esm/components/Responsive/index.js +0 -100
  454. package/lib/esm/components/Responsive/index.js.map +0 -1
  455. package/lib/esm/components/ResponsiveContent.js +0 -13
  456. package/lib/esm/components/ResponsiveContent.js.map +0 -1
  457. package/lib/esm/utils/builderContext.js +0 -297
  458. package/lib/esm/utils/builderContext.js.map +0 -1
  459. package/lib/esm/utils/presentationContext.js +0 -133
  460. package/lib/esm/utils/presentationContext.js.map +0 -1
  461. package/lib/esm/utils/propContext.js +0 -122
  462. package/lib/esm/utils/propContext.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"LayoutSizeSettings.js","sources":["../../../../src/components/Settings/LayoutSizeSettings.js"],"sourcesContent":["import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { roundForDecimalPart } from '../../utils/functions';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst LayoutSizeSettings = ({ config, item, onItemChange }) => {\n const [aspectLock, setAspectLock] = useState(true);\n const { HEIGHT, WIDTH } = useTranslatedTexts();\n\n const { reportLayoutHeight: layoutHeight, reportLayoutWidth: layoutWidth } = item;\n\n const initialWidth = parseInt(layoutWidth, 10);\n const initialHeight = parseInt(layoutHeight, 10);\n\n const [sizes, setSizes] = useState({\n height: initialHeight,\n width: initialWidth,\n });\n\n const initialAspect = initialWidth / initialHeight;\n\n const onChange = e => {\n const property = e.target.getAttribute('name');\n const newValue = e.target.value;\n if (aspectLock) {\n if (property === 'width') {\n setSizes({\n ...sizes,\n height: Number(newValue / initialAspect),\n [property]: parseInt(newValue, 10),\n });\n } else {\n setSizes({\n ...sizes,\n [property]: parseInt(newValue, 10),\n width: Number(newValue * initialAspect),\n });\n }\n } else {\n setSizes({\n ...sizes,\n [property]: parseInt(newValue, 10),\n });\n }\n };\n\n const onBlur = () => {\n const newWidth = sizes.width < 200 ? 200 : sizes.width;\n const newHeight = sizes.height < 100 ? 100 : sizes.height;\n setSizes({\n height: newHeight,\n width: newWidth,\n });\n onItemChange(\n { id: item.id },\n {\n [config.key]: `${roundForDecimalPart(newWidth)}x${roundForDecimalPart(newHeight)}`,\n },\n );\n };\n\n const onKeyDown = e => {\n if (e.keyCode === 13) {\n onBlur();\n }\n };\n\n return (\n <>\n <div className=\"toolSection-wrapper d-flex\">\n <div className=\"toolSection-subItem\">\n <label\n className=\"d-flex dir-col hasUnit isPixel\"\n htmlFor=\"width-input\"\n >\n <input\n className=\"toolSection-input\"\n id=\"width-input\"\n name=\"width\"\n onBlur={onBlur}\n onChange={onChange}\n onKeyDown={onKeyDown}\n step=\"any\"\n type=\"number\"\n value={roundForDecimalPart(sizes.width)}\n />\n <span className=\"toolSection-subLabel\">{WIDTH}</span>\n </label>\n </div>\n <div className=\"toolSection-subItem hasAspect\">\n <button\n className=\"p-relative forAspect\"\n onClick={() => setAspectLock(!aspectLock)}\n type=\"button\"\n >\n {aspectLock\n ? <icons.lock className=\"jfReportSVG icon-aspectLock\" />\n : <icons.unlock className=\"jfReportSVG icon-aspectUnlock\" />}\n </button>\n </div>\n <div className=\"toolSection-subItem\">\n <label\n className=\"d-flex dir-col hasUnit isPixel\"\n htmlFor=\"width-input\"\n >\n <input\n className=\"toolSection-input\"\n id=\"height-input\"\n name=\"height\"\n onBlur={onBlur}\n onChange={onChange}\n onKeyDown={onKeyDown}\n step=\"any\"\n type=\"number\"\n value={roundForDecimalPart(sizes.height)}\n />\n <span className=\"toolSection-subLabel\">{HEIGHT}</span>\n </label>\n </div>\n </div>\n </>\n );\n};\n\nLayoutSizeSettings.propTypes = {\n config: PropTypes.shape({\n key: PropTypes.string,\n }).isRequired,\n item: PropTypes.shape({\n height: PropTypes.number,\n id: PropTypes.string,\n reportLayout: PropTypes.string,\n reportLayoutHeight: PropTypes.string,\n reportLayoutWidth: PropTypes.string,\n shapeType: PropTypes.string,\n url: PropTypes.string,\n width: PropTypes.number,\n }),\n onItemChange: PropTypes.func,\n};\n\nLayoutSizeSettings.defaultProps = {\n item: {},\n onItemChange: () => {},\n};\n\nexport default LayoutSizeSettings;\n"],"names":["LayoutSizeSettings","config","item","onItemChange","useState","aspectLock","setAspectLock","useTranslatedTexts","HEIGHT","WIDTH","layoutHeight","reportLayoutHeight","layoutWidth","reportLayoutWidth","initialWidth","parseInt","initialHeight","height","width","sizes","setSizes","initialAspect","onChange","e","property","target","getAttribute","newValue","value","Number","onBlur","newWidth","newHeight","id","key","roundForDecimalPart","onKeyDown","keyCode","_jsx","_jsxs","icons.lock","icons.unlock","propTypes","PropTypes","shape","string","isRequired","number","reportLayout","shapeType","url","func","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"LayoutSizeSettings.js","sources":["../../../../src/components/Settings/LayoutSizeSettings.js"],"sourcesContent":["import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { roundForDecimalPart } from '../../utils/functions';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst LayoutSizeSettings = ({\n config,\n item = {},\n onItemChange = () => {},\n}) => {\n const [aspectLock, setAspectLock] = useState(true);\n const { HEIGHT, WIDTH } = useTranslatedTexts();\n\n const { reportLayoutHeight: layoutHeight, reportLayoutWidth: layoutWidth } = item;\n\n const initialWidth = parseInt(layoutWidth, 10);\n const initialHeight = parseInt(layoutHeight, 10);\n\n const [sizes, setSizes] = useState({\n height: initialHeight,\n width: initialWidth,\n });\n\n const initialAspect = initialWidth / initialHeight;\n\n const onChange = e => {\n const property = e.target.getAttribute('name');\n const newValue = e.target.value;\n if (aspectLock) {\n if (property === 'width') {\n setSizes({\n ...sizes,\n height: Number(newValue / initialAspect),\n [property]: parseInt(newValue, 10),\n });\n } else {\n setSizes({\n ...sizes,\n [property]: parseInt(newValue, 10),\n width: Number(newValue * initialAspect),\n });\n }\n } else {\n setSizes({\n ...sizes,\n [property]: parseInt(newValue, 10),\n });\n }\n };\n\n const onBlur = () => {\n const newWidth = sizes.width < 200 ? 200 : sizes.width;\n const newHeight = sizes.height < 100 ? 100 : sizes.height;\n setSizes({\n height: newHeight,\n width: newWidth,\n });\n onItemChange(\n { id: item.id },\n {\n [config.key]: `${roundForDecimalPart(newWidth)}x${roundForDecimalPart(newHeight)}`,\n },\n );\n };\n\n const onKeyDown = e => {\n if (e.keyCode === 13) {\n onBlur();\n }\n };\n\n return (\n <>\n <div className=\"toolSection-wrapper d-flex\">\n <div className=\"toolSection-subItem\">\n <label\n className=\"d-flex dir-col hasUnit isPixel\"\n htmlFor=\"width-input\"\n >\n <input\n className=\"toolSection-input\"\n id=\"width-input\"\n name=\"width\"\n onBlur={onBlur}\n onChange={onChange}\n onKeyDown={onKeyDown}\n step=\"any\"\n type=\"number\"\n value={roundForDecimalPart(sizes.width)}\n />\n <span className=\"toolSection-subLabel\">{WIDTH}</span>\n </label>\n </div>\n <div className=\"toolSection-subItem hasAspect\">\n <button\n className=\"p-relative forAspect\"\n onClick={() => setAspectLock(!aspectLock)}\n type=\"button\"\n >\n {aspectLock\n ? <icons.lock className=\"jfReportSVG icon-aspectLock\" />\n : <icons.unlock className=\"jfReportSVG icon-aspectUnlock\" />}\n </button>\n </div>\n <div className=\"toolSection-subItem\">\n <label\n className=\"d-flex dir-col hasUnit isPixel\"\n htmlFor=\"width-input\"\n >\n <input\n className=\"toolSection-input\"\n id=\"height-input\"\n name=\"height\"\n onBlur={onBlur}\n onChange={onChange}\n onKeyDown={onKeyDown}\n step=\"any\"\n type=\"number\"\n value={roundForDecimalPart(sizes.height)}\n />\n <span className=\"toolSection-subLabel\">{HEIGHT}</span>\n </label>\n </div>\n </div>\n </>\n );\n};\n\nLayoutSizeSettings.propTypes = {\n config: PropTypes.shape({\n key: PropTypes.string,\n }).isRequired,\n item: PropTypes.shape({\n height: PropTypes.number,\n id: PropTypes.string,\n reportLayout: PropTypes.string,\n reportLayoutHeight: PropTypes.string,\n reportLayoutWidth: PropTypes.string,\n shapeType: PropTypes.string,\n url: PropTypes.string,\n width: PropTypes.number,\n }),\n onItemChange: PropTypes.func,\n};\n\nexport default LayoutSizeSettings;\n"],"names":["LayoutSizeSettings","config","item","onItemChange","useState","aspectLock","setAspectLock","useTranslatedTexts","HEIGHT","WIDTH","layoutHeight","reportLayoutHeight","layoutWidth","reportLayoutWidth","initialWidth","parseInt","initialHeight","height","width","sizes","setSizes","initialAspect","onChange","e","property","target","getAttribute","newValue","value","Number","onBlur","newWidth","newHeight","id","key","roundForDecimalPart","onKeyDown","keyCode","_jsx","_jsxs","icons.lock","icons.unlock","propTypes","PropTypes","shape","string","isRequired","number","reportLayout","shapeType","url","func"],"mappings":"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"}
@@ -24,10 +24,14 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
24
24
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
25
25
 
26
26
  var Orientation = function Orientation(_ref) {
27
- var config = _ref.config,
28
- item = _ref.item,
29
- onItemChange = _ref.onItemChange,
30
- value = _ref.value;
27
+ var _ref$config = _ref.config,
28
+ config = _ref$config === void 0 ? [] : _ref$config,
29
+ _ref$item = _ref.item,
30
+ item = _ref$item === void 0 ? {} : _ref$item,
31
+ _ref$onItemChange = _ref.onItemChange,
32
+ onItemChange = _ref$onItemChange === void 0 ? function () {} : _ref$onItemChange,
33
+ _ref$value = _ref.value,
34
+ value = _ref$value === void 0 ? '' : _ref$value;
31
35
  var multipleSelect = config.multipleSelect,
32
36
  options = config.options,
33
37
  optionsDisplay = config.optionsDisplay;
@@ -98,12 +102,6 @@ Orientation.propTypes = {
98
102
  onItemChange: PropTypes.func,
99
103
  value: PropTypes.string
100
104
  };
101
- Orientation.defaultProps = {
102
- config: [],
103
- item: {},
104
- onItemChange: function onItemChange() {},
105
- value: ''
106
- };
107
105
  var Orientation$1 = /*#__PURE__*/memo(Orientation);
108
106
 
109
107
  export default Orientation$1;
@@ -1 +1 @@
1
- {"version":3,"file":"Orientation.js","sources":["../../../../src/components/Settings/Orientation.js"],"sourcesContent":["import { memo, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { safeJSONParse } from '../../utils/functions';\n\nconst Orientation = ({\n config, item, onItemChange, value,\n}) => {\n const { multipleSelect, options, optionsDisplay } = config;\n const exactValue = !multipleSelect ? value : safeJSONParse(value, []);\n const onClick = type => {\n return () => {\n let newValue = type;\n if (multipleSelect) {\n newValue = [...exactValue];\n if (exactValue.includes(type)) {\n newValue = newValue.filter(v => v !== type);\n } else {\n newValue.push(type);\n }\n newValue = JSON.stringify(newValue);\n }\n if (newValue !== value) {\n onItemChange(\n { id: item.id },\n { [config.key]: newValue },\n );\n }\n };\n };\n return (\n <div className=\"toolSection-orientation d-flex dir-row\">\n {options.map(option => {\n const key = option.value ? option.value : option;\n return (\n <button\n key={key}\n className={classNames(\n 'toolSection-orientationItem',\n 'd-flex',\n 'j-center',\n {\n isSelected: !multipleSelect\n ? exactValue === key\n : exactValue && exactValue.includes(key),\n },\n )}\n data-orientation={key}\n onClick={onClick(key)}\n type=\"button\"\n >\n {optionsDisplay ? optionsDisplay.map(display => (\n <Fragment key={display}>\n <span className=\"orientationIcon d-flex a-center j-center\">\n {option[display]}\n </span>\n <span>\n {key.charAt(0).toUpperCase() + key.slice(1)}\n </span>\n </Fragment>\n )) : option.label}\n </button>\n );\n })}\n </div>\n );\n};\n\nOrientation.propTypes = {\n config: PropTypes.shape({\n key: PropTypes.string,\n multipleSelect: PropTypes.bool,\n options: PropTypes.arrayOf(PropTypes.any),\n optionsDisplay: PropTypes.arrayOf(PropTypes.any),\n }),\n item: PropTypes.shape({\n id: PropTypes.string,\n }),\n onItemChange: PropTypes.func,\n value: PropTypes.string,\n};\n\nOrientation.defaultProps = {\n config: [],\n item: {},\n onItemChange: () => {},\n value: '',\n};\n\nexport default memo(Orientation);\n"],"names":["Orientation","config","item","onItemChange","value","multipleSelect","options","optionsDisplay","exactValue","safeJSONParse","onClick","type","newValue","includes","filter","v","push","JSON","stringify","id","key","_jsx","map","option","classNames","isSelected","display","_jsxs","charAt","toUpperCase","slice","label","propTypes","PropTypes","shape","string","bool","arrayOf","any","func","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Orientation.js","sources":["../../../../src/components/Settings/Orientation.js"],"sourcesContent":["import { memo, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { safeJSONParse } from '../../utils/functions';\n\nconst Orientation = ({\n config = [],\n item = {},\n onItemChange = () => {},\n value = '',\n}) => {\n const { multipleSelect, options, optionsDisplay } = config;\n const exactValue = !multipleSelect ? value : safeJSONParse(value, []);\n const onClick = type => {\n return () => {\n let newValue = type;\n if (multipleSelect) {\n newValue = [...exactValue];\n if (exactValue.includes(type)) {\n newValue = newValue.filter(v => v !== type);\n } else {\n newValue.push(type);\n }\n newValue = JSON.stringify(newValue);\n }\n if (newValue !== value) {\n onItemChange(\n { id: item.id },\n { [config.key]: newValue },\n );\n }\n };\n };\n return (\n <div className=\"toolSection-orientation d-flex dir-row\">\n {options.map(option => {\n const key = option.value ? option.value : option;\n return (\n <button\n key={key}\n className={classNames(\n 'toolSection-orientationItem',\n 'd-flex',\n 'j-center',\n {\n isSelected: !multipleSelect\n ? exactValue === key\n : exactValue && exactValue.includes(key),\n },\n )}\n data-orientation={key}\n onClick={onClick(key)}\n type=\"button\"\n >\n {optionsDisplay ? optionsDisplay.map(display => (\n <Fragment key={display}>\n <span className=\"orientationIcon d-flex a-center j-center\">\n {option[display]}\n </span>\n <span>\n {key.charAt(0).toUpperCase() + key.slice(1)}\n </span>\n </Fragment>\n )) : option.label}\n </button>\n );\n })}\n </div>\n );\n};\n\nOrientation.propTypes = {\n config: PropTypes.shape({\n key: PropTypes.string,\n multipleSelect: PropTypes.bool,\n options: PropTypes.arrayOf(PropTypes.any),\n optionsDisplay: PropTypes.arrayOf(PropTypes.any),\n }),\n item: PropTypes.shape({\n id: PropTypes.string,\n }),\n onItemChange: PropTypes.func,\n value: PropTypes.string,\n};\n\nexport default memo(Orientation);\n"],"names":["Orientation","config","item","onItemChange","value","multipleSelect","options","optionsDisplay","exactValue","safeJSONParse","onClick","type","newValue","includes","filter","v","push","JSON","stringify","id","key","_jsx","map","option","classNames","isSelected","display","_jsxs","charAt","toUpperCase","slice","label","propTypes","PropTypes","shape","string","bool","arrayOf","any","func","memo"],"mappings":"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"}
@@ -0,0 +1,121 @@
1
+ import { memo } from 'react';
2
+ import { DragOverlay } from '@dnd-kit/core';
3
+ import PropTypes from 'prop-types';
4
+ import classNames from 'classnames';
5
+ import { capitalize, stripHTML } from '../../../utils/string.js';
6
+ import { useTranslatedTexts } from '../../../utils/hooks.js';
7
+ import { jsxs, jsx } from 'react/jsx-runtime';
8
+ import SvgDrag from '../../../assets/svg/settings/drag.svg.js';
9
+
10
+ var DragHandle = function DragHandle() {
11
+ return /*#__PURE__*/jsx("span", {
12
+ className: "jfReportSelectOption-drag",
13
+ children: /*#__PURE__*/jsx(SvgDrag, {
14
+ className: "jfReportSVG icon-drag"
15
+ })
16
+ });
17
+ };
18
+
19
+ var LayerDragOverlay = function LayerDragOverlay(_ref) {
20
+ var _ref$activeItemData = _ref.activeItemData,
21
+ activeItemData = _ref$activeItemData === void 0 ? null : _ref$activeItemData;
22
+
23
+ var _useTranslatedTexts = useTranslatedTexts(),
24
+ CHART_ELEMENT = _useTranslatedTexts.CHART_ELEMENT,
25
+ CLICK_TO_EDIT_TEXT = _useTranslatedTexts.CLICK_TO_EDIT_TEXT,
26
+ CLIK_TO_EDIT_HEADER = _useTranslatedTexts.CLIK_TO_EDIT_HEADER,
27
+ PAGE_ELEMENT = _useTranslatedTexts.PAGE_ELEMENT,
28
+ RECTANGLE = _useTranslatedTexts.RECTANGLE;
29
+
30
+ if (!activeItemData) return null;
31
+ var Icon = activeItemData.icon,
32
+ item = activeItemData.item;
33
+ var id = item.id,
34
+ isVisible = item.isVisible;
35
+ var isVisib = isVisible !== undefined ? isVisible : true;
36
+
37
+ var itemText = function itemText(passedItem) {
38
+ if (passedItem.itemType === 'shapes') {
39
+ return capitalize(passedItem.shapeType || RECTANGLE);
40
+ }
41
+
42
+ if (passedItem.itemType === 'chart') {
43
+ return passedItem.text || CHART_ELEMENT;
44
+ }
45
+
46
+ if (passedItem.itemType === 'header') {
47
+ return passedItem.headerText || CLIK_TO_EDIT_HEADER;
48
+ }
49
+
50
+ if (passedItem.itemType === 'text') {
51
+ return passedItem.value ? stripHTML(passedItem.value) : CLICK_TO_EDIT_TEXT;
52
+ }
53
+
54
+ return capitalize(passedItem.itemType || PAGE_ELEMENT);
55
+ };
56
+
57
+ var content = /*#__PURE__*/jsxs("div", {
58
+ className: "jfReportSelectOption",
59
+ children: [/*#__PURE__*/jsx("div", {
60
+ className: "jfReportSelectOption-icon",
61
+ children: /*#__PURE__*/jsx(Icon, {})
62
+ }), /*#__PURE__*/jsx("div", {
63
+ className: "jfReportSelectOption-text",
64
+ children: itemText(item)
65
+ })]
66
+ });
67
+
68
+ return /*#__PURE__*/jsx(DragOverlay, {
69
+ adjustScale: false,
70
+ dropAnimation: null,
71
+ style: {
72
+ cursor: 'grabbing'
73
+ },
74
+ children: /*#__PURE__*/jsxs("div", {
75
+ className: classNames('jfReportSelectOption forHelper withDnd', {
76
+ isSelected: isVisib
77
+ }),
78
+ style: {
79
+ opacity: 0.9,
80
+ transform: 'rotate(2deg)'
81
+ },
82
+ children: [/*#__PURE__*/jsx("div", {
83
+ className: "jfReportSelectOption-visibility",
84
+ children: /*#__PURE__*/jsxs("label", {
85
+ className: "jfReportChoice isLight hasNotText",
86
+ htmlFor: "overlay-".concat(id),
87
+ children: [/*#__PURE__*/jsx("input", {
88
+ checked: isVisib,
89
+ className: "jfReportChoice-input",
90
+ id: "overlay-".concat(id),
91
+ readOnly: true,
92
+ type: "checkbox"
93
+ }), /*#__PURE__*/jsx("div", {
94
+ className: "jfReportChoice-labelIcon",
95
+ children: /*#__PURE__*/jsx("div", {
96
+ className: "jfReportChoice-label checkbox"
97
+ })
98
+ })]
99
+ })
100
+ }), /*#__PURE__*/jsxs("div", {
101
+ className: "jfReportSelectOption-name",
102
+ children: [/*#__PURE__*/jsx(DragHandle, {}), content]
103
+ })]
104
+ })
105
+ });
106
+ };
107
+
108
+ LayerDragOverlay.propTypes = {
109
+ activeItemData: PropTypes.shape({
110
+ icon: PropTypes.elementType,
111
+ item: PropTypes.shape({
112
+ id: PropTypes.string.isRequired,
113
+ isVisible: PropTypes.bool,
114
+ itemType: PropTypes.string
115
+ })
116
+ })
117
+ };
118
+ var LayerDragOverlay$1 = /*#__PURE__*/memo(LayerDragOverlay);
119
+
120
+ export default LayerDragOverlay$1;
121
+ //# sourceMappingURL=LayerDragOverlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LayerDragOverlay.js","sources":["../../../../../src/components/Settings/PageLayer/LayerDragOverlay.js"],"sourcesContent":["import { memo } from 'react';\nimport { DragOverlay } from '@dnd-kit/core';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { capitalize, stripHTML } from '../../../utils/string';\nimport * as icons from '../../../utils/icons';\nimport { useTranslatedTexts } from '../../../utils/hooks';\n\nconst DragHandle = () => (\n <span className=\"jfReportSelectOption-drag\">\n <icons.drag className=\"jfReportSVG icon-drag\" />\n </span>\n);\n\nconst LayerDragOverlay = ({\n activeItemData = null,\n}) => {\n const {\n CHART_ELEMENT,\n CLICK_TO_EDIT_TEXT,\n CLIK_TO_EDIT_HEADER,\n PAGE_ELEMENT,\n RECTANGLE,\n } = useTranslatedTexts();\n\n if (!activeItemData) return null;\n\n const { icon: Icon, item } = activeItemData;\n const { id, isVisible } = item;\n const isVisib = isVisible !== undefined ? isVisible : true;\n\n const itemText = passedItem => {\n if (passedItem.itemType === 'shapes') {\n return capitalize(passedItem.shapeType || RECTANGLE);\n }\n if (passedItem.itemType === 'chart') {\n return passedItem.text || CHART_ELEMENT;\n }\n if (passedItem.itemType === 'header') {\n return passedItem.headerText || CLIK_TO_EDIT_HEADER;\n }\n if (passedItem.itemType === 'text') {\n return passedItem.value ? stripHTML(passedItem.value) : CLICK_TO_EDIT_TEXT;\n }\n return capitalize(passedItem.itemType || PAGE_ELEMENT);\n };\n\n const content = (\n <div className=\"jfReportSelectOption\">\n <div className=\"jfReportSelectOption-icon\">\n <Icon />\n </div>\n <div className=\"jfReportSelectOption-text\">\n {itemText(item)}\n </div>\n </div>\n );\n\n return (\n <DragOverlay\n adjustScale={false}\n dropAnimation={null}\n style={{ cursor: 'grabbing' }}\n >\n <div\n className={classNames('jfReportSelectOption forHelper withDnd', {\n isSelected: isVisib,\n })}\n style={{ opacity: 0.9, transform: 'rotate(2deg)' }}\n >\n <div className=\"jfReportSelectOption-visibility\">\n <label\n className=\"jfReportChoice isLight hasNotText\"\n htmlFor={`overlay-${id}`}\n >\n <input\n checked={isVisib}\n className=\"jfReportChoice-input\"\n id={`overlay-${id}`}\n readOnly\n type=\"checkbox\"\n />\n <div className=\"jfReportChoice-labelIcon\">\n <div className=\"jfReportChoice-label checkbox\" />\n </div>\n </label>\n </div>\n <div className=\"jfReportSelectOption-name\">\n <DragHandle />\n {content}\n </div>\n </div>\n </DragOverlay>\n );\n};\n\nLayerDragOverlay.propTypes = {\n activeItemData: PropTypes.shape({\n icon: PropTypes.elementType,\n item: PropTypes.shape({\n id: PropTypes.string.isRequired,\n isVisible: PropTypes.bool,\n itemType: PropTypes.string,\n }),\n }),\n};\n\nexport default memo(LayerDragOverlay);\n"],"names":["DragHandle","_jsx","icons.drag","LayerDragOverlay","activeItemData","useTranslatedTexts","CHART_ELEMENT","CLICK_TO_EDIT_TEXT","CLIK_TO_EDIT_HEADER","PAGE_ELEMENT","RECTANGLE","Icon","icon","item","id","isVisible","isVisib","undefined","itemText","passedItem","itemType","capitalize","shapeType","text","headerText","value","stripHTML","content","_jsxs","cursor","classNames","isSelected","opacity","transform","propTypes","PropTypes","shape","elementType","string","isRequired","bool","memo"],"mappings":"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"}
@@ -1,27 +1,66 @@
1
- import { memo, useCallback } from 'react';
2
- import { sortableHandle, sortableElement } from 'react-sortable-hoc';
1
+ import 'core-js/modules/es.object.to-string.js';
2
+ import 'core-js/modules/es.regexp.to-string.js';
3
+ import { memo, useMemo, useCallback } from 'react';
4
+ import { useSortable } from '@dnd-kit/sortable';
5
+ import { CSS } from '@dnd-kit/utilities';
3
6
  import classNames from 'classnames';
7
+ import PropTypes from 'prop-types';
4
8
  import { capitalize, stripHTML } from '../../../utils/string.js';
5
- import { jsx, jsxs } from 'react/jsx-runtime';
9
+ import { useTranslatedTexts } from '../../../utils/hooks.js';
10
+ import { jsxs, jsx } from 'react/jsx-runtime';
6
11
  import SvgDrag from '../../../assets/svg/settings/drag.svg.js';
7
12
 
8
- var DragHandle = sortableHandle(function () {
13
+ 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; }
14
+
15
+ 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; }
16
+
17
+ 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; }
18
+
19
+ var DragHandle = function DragHandle() {
9
20
  return /*#__PURE__*/jsx("span", {
10
21
  className: "jfReportSelectOption-drag",
11
22
  children: /*#__PURE__*/jsx(SvgDrag, {
12
23
  className: "jfReportSVG icon-drag"
13
24
  })
14
25
  });
15
- });
16
- var LayerItem = sortableElement(function (_ref) {
26
+ };
27
+
28
+ var LayerItem = function LayerItem(_ref) {
17
29
  var Icon = _ref.icon,
30
+ itemId = _ref.id,
18
31
  item = _ref.item,
19
32
  onItemChange = _ref.onItemChange,
20
33
  optionKey = _ref.optionKey,
21
34
  setActiveElement = _ref.setActiveElement;
35
+
36
+ var _useSortable = useSortable({
37
+ id: itemId
38
+ }),
39
+ attributes = _useSortable.attributes,
40
+ isDragging = _useSortable.isDragging,
41
+ listeners = _useSortable.listeners,
42
+ setNodeRef = _useSortable.setNodeRef,
43
+ transform = _useSortable.transform,
44
+ transition = _useSortable.transition;
45
+
46
+ var dragStyle = useMemo(function () {
47
+ return {
48
+ opacity: isDragging ? 0.5 : 1,
49
+ transform: CSS.Transform.toString(transform),
50
+ transition: transition
51
+ };
52
+ }, [transform, transition, isDragging]);
22
53
  var id = item.id,
23
54
  isVisible = item.isVisible;
24
55
  var isVisib = isVisible !== undefined ? isVisible : true;
56
+
57
+ var _useTranslatedTexts = useTranslatedTexts(),
58
+ CHART_ELEMENT = _useTranslatedTexts.CHART_ELEMENT,
59
+ CLICK_TO_EDIT_TEXT = _useTranslatedTexts.CLICK_TO_EDIT_TEXT,
60
+ CLIK_TO_EDIT_HEADER = _useTranslatedTexts.CLIK_TO_EDIT_HEADER,
61
+ PAGE_ELEMENT = _useTranslatedTexts.PAGE_ELEMENT,
62
+ RECTANGLE = _useTranslatedTexts.RECTANGLE;
63
+
25
64
  var handleItemLock = useCallback(function (_ref2) {
26
65
  var target = _ref2.target;
27
66
  onItemChange({
@@ -29,40 +68,40 @@ var LayerItem = sortableElement(function (_ref) {
29
68
  }, {
30
69
  isVisible: target.checked
31
70
  });
32
- }, [id]);
33
-
34
- var itemText = function itemText(passedItem) {
35
- if (passedItem.itemType === 'shapes') {
36
- return capitalize(passedItem.shapeType || 'Rectangle');
71
+ }, [id, onItemChange]);
72
+ var itemText = useMemo(function () {
73
+ if (item.itemType === 'shapes') {
74
+ return capitalize(item.shapeType || RECTANGLE);
37
75
  }
38
76
 
39
- if (passedItem.itemType === 'chart') {
40
- return passedItem.text || 'Chart Element';
77
+ if (item.itemType === 'chart') {
78
+ return item.text || CHART_ELEMENT;
41
79
  }
42
80
 
43
- if (passedItem.itemType === 'header') {
44
- return passedItem.headerText || 'Click to edit header';
81
+ if (item.itemType === 'header') {
82
+ return item.headerText || CLIK_TO_EDIT_HEADER;
45
83
  }
46
84
 
47
- if (passedItem.itemType === 'text') {
48
- return passedItem.value ? stripHTML(passedItem.value) : 'Click to edit text';
85
+ if (item.itemType === 'text') {
86
+ return item.value ? stripHTML(item.value) : CLICK_TO_EDIT_TEXT;
49
87
  }
50
88
 
51
- return capitalize(passedItem.itemType || 'Page Element');
52
- };
53
-
54
- var content = /*#__PURE__*/jsxs("div", {
55
- className: "jfReportSelectOption",
56
- children: [/*#__PURE__*/jsx("div", {
57
- className: "jfReportSelectOption-icon",
58
- children: /*#__PURE__*/jsx(Icon, {})
59
- }), /*#__PURE__*/jsx("div", {
60
- className: "jfReportSelectOption-text",
61
- children: itemText(item)
62
- })]
63
- });
64
-
65
- return /*#__PURE__*/jsxs("div", {
89
+ return capitalize(item.itemType || PAGE_ELEMENT);
90
+ }, [item]);
91
+ var content = useMemo(function () {
92
+ return /*#__PURE__*/jsxs("div", {
93
+ className: "jfReportSelectOption",
94
+ children: [/*#__PURE__*/jsx("div", {
95
+ className: "jfReportSelectOption-icon",
96
+ children: /*#__PURE__*/jsx(Icon, {})
97
+ }), /*#__PURE__*/jsx("div", {
98
+ className: "jfReportSelectOption-text",
99
+ children: itemText
100
+ })]
101
+ });
102
+ }, [itemText]);
103
+ return /*#__PURE__*/jsxs("div", _objectSpread(_objectSpread(_objectSpread({
104
+ ref: setNodeRef,
66
105
  className: classNames('jfReportSelectOption', {
67
106
  isSelected: isVisib
68
107
  }),
@@ -70,6 +109,8 @@ var LayerItem = sortableElement(function (_ref) {
70
109
  return setActiveElement(id, false);
71
110
  },
72
111
  onKeyDown: function onKeyDown() {},
112
+ style: dragStyle
113
+ }, attributes), listeners), {}, {
73
114
  children: [/*#__PURE__*/jsx("div", {
74
115
  className: "jfReportSelectOption-visibility",
75
116
  children: /*#__PURE__*/jsxs("label", {
@@ -94,8 +135,25 @@ var LayerItem = sortableElement(function (_ref) {
94
135
  ,
95
136
  children: [/*#__PURE__*/jsx(DragHandle, {}), content]
96
137
  })]
97
- });
98
- });
138
+ }));
139
+ };
140
+
141
+ LayerItem.propTypes = {
142
+ icon: PropTypes.elementType,
143
+ id: PropTypes.string,
144
+ item: PropTypes.shape({
145
+ headerText: PropTypes.string,
146
+ id: PropTypes.string,
147
+ isVisible: PropTypes.bool,
148
+ itemType: PropTypes.string,
149
+ shapeType: PropTypes.string,
150
+ text: PropTypes.string,
151
+ value: PropTypes.string
152
+ }),
153
+ onItemChange: PropTypes.func,
154
+ optionKey: PropTypes.string,
155
+ setActiveElement: PropTypes.func
156
+ };
99
157
  var LayerItem$1 = /*#__PURE__*/memo(LayerItem);
100
158
 
101
159
  export default LayerItem$1;
@@ -1 +1 @@
1
- {"version":3,"file":"LayerItem.js","sources":["../../../../../src/components/Settings/PageLayer/LayerItem.js"],"sourcesContent":["import { memo, useCallback } from 'react';\nimport { sortableElement, sortableHandle } from 'react-sortable-hoc';\nimport classNames from 'classnames';\nimport { capitalize, stripHTML } from '../../../utils/string';\nimport * as icons from '../../../utils/icons';\n\nconst DragHandle = sortableHandle(() => (\n <span className=\"jfReportSelectOption-drag\">\n <icons.drag className=\"jfReportSVG icon-drag\" />\n </span>\n));\n\nconst LayerItem = sortableElement(({\n icon: Icon,\n item,\n onItemChange,\n optionKey,\n setActiveElement,\n}) => {\n const { id, isVisible } = item;\n const isVisib = isVisible !== undefined ? isVisible : true;\n const handleItemLock = useCallback(({ target }) => {\n onItemChange({ id }, { isVisible: target.checked });\n }, [id]);\n\n const itemText = passedItem => {\n if (passedItem.itemType === 'shapes') {\n return capitalize(passedItem.shapeType || 'Rectangle');\n }\n if (passedItem.itemType === 'chart') {\n return passedItem.text || 'Chart Element';\n }\n if (passedItem.itemType === 'header') {\n return passedItem.headerText || 'Click to edit header';\n }\n if (passedItem.itemType === 'text') {\n return passedItem.value ? stripHTML(passedItem.value) : 'Click to edit text';\n }\n return capitalize(passedItem.itemType || 'Page Element');\n };\n const content = (\n <div className=\"jfReportSelectOption\">\n <div className=\"jfReportSelectOption-icon\">\n <Icon />\n </div>\n <div className=\"jfReportSelectOption-text\">\n {itemText(item)}\n </div>\n </div>\n );\n\n return (\n <div\n className={classNames('jfReportSelectOption', {\n isSelected: isVisib,\n })}\n onClick={() => setActiveElement(id, false)}\n onKeyDown={() => {}}\n >\n <div className=\"jfReportSelectOption-visibility\">\n <label\n className=\"jfReportChoice isLight hasNotText\"\n htmlFor={optionKey}\n >\n <input\n checked={isVisib}\n className=\"jfReportChoice-input\"\n data-option-key={optionKey}\n id={optionKey}\n onChange={handleItemLock}\n type=\"checkbox\"\n />\n <div className=\"jfReportChoice-labelIcon\">\n <div className=\"jfReportChoice-label checkbox\" />\n </div>\n </label>\n </div>\n <div\n className=\"jfReportSelectOption-name\"\n // style={{ backgroundColor: option.color }}\n >\n <DragHandle />\n {content}\n </div>\n </div>\n );\n});\n\nexport default memo(LayerItem);\n"],"names":["DragHandle","sortableHandle","_jsx","icons.drag","LayerItem","sortableElement","Icon","icon","item","onItemChange","optionKey","setActiveElement","id","isVisible","isVisib","undefined","handleItemLock","useCallback","target","checked","itemText","passedItem","itemType","capitalize","shapeType","text","headerText","value","stripHTML","content","_jsxs","classNames","isSelected","memo"],"mappings":"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"}
1
+ {"version":3,"file":"LayerItem.js","sources":["../../../../../src/components/Settings/PageLayer/LayerItem.js"],"sourcesContent":["import { memo, useCallback, useMemo } from 'react';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { capitalize, stripHTML } from '../../../utils/string';\nimport * as icons from '../../../utils/icons';\nimport { useTranslatedTexts } from '../../../utils/hooks';\n\nconst DragHandle = () => (\n <span className=\"jfReportSelectOption-drag\">\n <icons.drag className=\"jfReportSVG icon-drag\" />\n </span>\n);\n\nconst LayerItem = ({\n icon: Icon,\n id: itemId,\n item,\n onItemChange,\n optionKey,\n setActiveElement,\n}) => {\n const {\n attributes,\n isDragging,\n listeners,\n setNodeRef,\n transform,\n transition,\n } = useSortable({ id: itemId });\n\n const dragStyle = useMemo(() => ({\n opacity: isDragging ? 0.5 : 1,\n transform: CSS.Transform.toString(transform),\n transition: transition,\n }), [transform, transition, isDragging]);\n\n const { id, isVisible } = item;\n const isVisib = isVisible !== undefined ? isVisible : true;\n\n const {\n CHART_ELEMENT,\n CLICK_TO_EDIT_TEXT,\n CLIK_TO_EDIT_HEADER,\n PAGE_ELEMENT,\n RECTANGLE,\n } = useTranslatedTexts();\n\n const handleItemLock = useCallback(({ target }) => {\n onItemChange({ id }, { isVisible: target.checked });\n }, [id, onItemChange]);\n\n const itemText = useMemo(() => {\n if (item.itemType === 'shapes') {\n return capitalize(item.shapeType || RECTANGLE);\n }\n if (item.itemType === 'chart') {\n return item.text || CHART_ELEMENT;\n }\n if (item.itemType === 'header') {\n return item.headerText || CLIK_TO_EDIT_HEADER;\n }\n if (item.itemType === 'text') {\n return item.value ? stripHTML(item.value) : CLICK_TO_EDIT_TEXT;\n }\n return capitalize(item.itemType || PAGE_ELEMENT);\n }, [item]);\n\n const content = useMemo(() => (\n <div className=\"jfReportSelectOption\">\n <div className=\"jfReportSelectOption-icon\">\n <Icon />\n </div>\n <div className=\"jfReportSelectOption-text\">\n {itemText}\n </div>\n </div>\n ), [itemText]);\n\n return (\n <div\n ref={setNodeRef}\n className={classNames('jfReportSelectOption', {\n isSelected: isVisib,\n })}\n onClick={() => setActiveElement(id, false)}\n onKeyDown={() => {}}\n style={dragStyle}\n {...attributes}\n {...listeners}\n >\n <div className=\"jfReportSelectOption-visibility\">\n <label\n className=\"jfReportChoice isLight hasNotText\"\n htmlFor={optionKey}\n >\n <input\n checked={isVisib}\n className=\"jfReportChoice-input\"\n data-option-key={optionKey}\n id={optionKey}\n onChange={handleItemLock}\n type=\"checkbox\"\n />\n <div className=\"jfReportChoice-labelIcon\">\n <div className=\"jfReportChoice-label checkbox\" />\n </div>\n </label>\n </div>\n <div\n className=\"jfReportSelectOption-name\"\n // style={{ backgroundColor: option.color }}\n >\n <DragHandle />\n {content}\n </div>\n </div>\n );\n};\n\nLayerItem.propTypes = {\n icon: PropTypes.elementType,\n id: PropTypes.string,\n item: PropTypes.shape({\n headerText: PropTypes.string,\n id: PropTypes.string,\n isVisible: PropTypes.bool,\n itemType: PropTypes.string,\n shapeType: PropTypes.string,\n text: PropTypes.string,\n value: PropTypes.string,\n }),\n onItemChange: PropTypes.func,\n optionKey: PropTypes.string,\n setActiveElement: PropTypes.func,\n};\n\nexport default memo(LayerItem);\n"],"names":["DragHandle","_jsx","icons.drag","LayerItem","Icon","icon","itemId","id","item","onItemChange","optionKey","setActiveElement","useSortable","attributes","isDragging","listeners","setNodeRef","transform","transition","dragStyle","useMemo","opacity","CSS","Transform","toString","isVisible","isVisib","undefined","useTranslatedTexts","CHART_ELEMENT","CLICK_TO_EDIT_TEXT","CLIK_TO_EDIT_HEADER","PAGE_ELEMENT","RECTANGLE","handleItemLock","useCallback","target","checked","itemText","itemType","capitalize","shapeType","text","headerText","value","stripHTML","content","_jsxs","classNames","isSelected","propTypes","PropTypes","elementType","string","shape","bool","func","memo"],"mappings":"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"}