@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,26 +1,23 @@
1
- import 'core-js/modules/es.array.concat.js';
2
1
  import 'core-js/modules/es.array.find.js';
3
2
  import 'core-js/modules/es.array.from.js';
4
3
  import 'core-js/modules/es.array.includes.js';
5
4
  import 'core-js/modules/es.array.map.js';
6
5
  import 'core-js/modules/es.object.keys.js';
7
6
  import 'core-js/modules/es.string.iterator.js';
8
- import { memo, useRef, useEffect } from 'react';
9
- import PropTypes from 'prop-types';
7
+ import { memo, useRef, useMemo, useEffect, useCallback } from 'react';
10
8
  import classNames from 'classnames';
11
9
  import Panel from '../../Builder/Panel.js';
12
10
  import Section from '../../Builder/Section.js';
13
11
  import Layout from '../../../constants/reportSettings.js';
14
12
  import Page from '../../../constants/pageSettings.js';
15
- import { useBuilderContext } from '../../../utils/builderContext.js';
16
- import { usePropContext } from '../../../utils/propContext.js';
17
- import { getTabsWithSettings, findItemById } from '../../../utils/functions.js';
13
+ import { useBuilderStore } from '../../../contexts/BuilderContext.js';
14
+ import { usePropStore } from '../../../contexts/PropContext.js';
15
+ import { findItemById, getTabsWithSettings } from '../../../utils/functions.js';
18
16
  import { useTranslatedTexts } from '../../../utils/hooks.js';
19
17
  import { REPORT_SETTINGS_ITEM_TYPE, PAGE_SETTINGS_ITEM_TYPE } from '../../../constants/itemTypes.js';
20
18
  import Tabs from '../../Builder/Tabs.js';
21
19
  import Settings from './Settings.js';
22
20
  import RightPanelToggler from './RightPanelToggler.js';
23
- import { capitalize } from '../../../utils/string.js';
24
21
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
25
22
 
26
23
  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; }
@@ -30,127 +27,143 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
30
27
  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; }
31
28
  var exceptionalClasses = ['pageSettingSideBtn', 'paneClose', 'paneToggler', 'forZoom', 'jSheetContextMenu'];
32
29
 
33
- var RightPanel = function RightPanel(_ref) {
34
- var itemAccessor = _ref.itemAccessor,
35
- onItemChange = _ref.onItemChange,
36
- onPageChange = _ref.onPageChange,
37
- onSettingChange = _ref.onSettingChange,
38
- pages = _ref.pages;
39
-
40
- var _useBuilderContext = useBuilderContext(),
41
- activeTab = _useBuilderContext.activeTab,
42
- editedElement = _useBuilderContext.editedElement,
43
- isRightPanelOpen = _useBuilderContext.isRightPanelOpen,
44
- isSlidesPanelOpen = _useBuilderContext.isSlidesPanelOpen,
45
- setActiveElement = _useBuilderContext.setActiveElement,
46
- setActiveTab = _useBuilderContext.setActiveTab,
47
- setIsRightPanelOpen = _useBuilderContext.setIsRightPanelOpen;
48
-
49
- var _usePropContext = usePropContext(),
50
- acceptedItems = _usePropContext.acceptedItems,
51
- layoutSettings = _usePropContext.settings;
52
-
30
+ var RightPanel = function RightPanel() {
31
+ var activeTab = useBuilderStore(function (state) {
32
+ return state.activeTab;
33
+ });
34
+ var editedElement = useBuilderStore(function (state) {
35
+ return state.editedElement;
36
+ });
37
+ var isRightPanelOpen = useBuilderStore(function (state) {
38
+ return state.isRightPanelOpen;
39
+ });
40
+ var isSlidesPanelOpen = useBuilderStore(function (state) {
41
+ return state.isSlidesPanelOpen;
42
+ });
43
+ var setActiveElement = useBuilderStore(function (state) {
44
+ return state.setActiveElement;
45
+ });
46
+ var setActiveTab = useBuilderStore(function (state) {
47
+ return state.setActiveTab;
48
+ });
49
+ var setIsRightPanelOpen = useBuilderStore(function (state) {
50
+ return state.setIsRightPanelOpen;
51
+ });
52
+ var acceptedItems = usePropStore(function (state) {
53
+ return state.acceptedItems;
54
+ });
55
+ var layoutSettings = usePropStore(function (state) {
56
+ return state.settings;
57
+ });
58
+ var onItemChange = usePropStore(function (state) {
59
+ return state.onItemChange;
60
+ });
61
+ var onPageChange = usePropStore(function (state) {
62
+ return state.onPageChange;
63
+ });
64
+ var onSettingChange = usePropStore(function (state) {
65
+ return state.onSettingChange;
66
+ });
67
+ var pages = usePropStore(function (state) {
68
+ return state.pages;
69
+ });
70
+ var itemAccessor = usePropStore(function (state) {
71
+ return state.itemAccessor;
72
+ });
53
73
  var panelRef = useRef(null);
54
-
55
- var _useTranslatedTexts = useTranslatedTexts(),
56
- LAYOUT_SETTINGS = _useTranslatedTexts.LAYOUT_SETTINGS,
57
- PAGE_SETTINGS = _useTranslatedTexts.PAGE_SETTINGS,
58
- SETTINGS = _useTranslatedTexts.SETTINGS;
59
-
60
- var settingMap = {
61
- i_: {
62
- details: function details(id) {
63
- var item = findItemById(id, pages);
64
- return item;
74
+ var translatedTexts = useTranslatedTexts();
75
+ var settingMap = useMemo(function () {
76
+ return {
77
+ i_: {
78
+ details: function details(id) {
79
+ var item = findItemById(id, pages);
80
+ return item;
81
+ },
82
+ settings: function settings(item) {
83
+ return acceptedItems[item.itemType];
84
+ },
85
+ title: function title(item) {
86
+ return translatedTexts["".concat((acceptedItems[item.itemType].title || item.itemType).toLocaleUpperCase(), "_SETTINGS")];
87
+ },
88
+ updater: onItemChange
65
89
  },
66
- settings: function settings(item) {
67
- return acceptedItems[item.itemType];
90
+ l_: {
91
+ details: function details() {
92
+ return _objectSpread(_objectSpread({}, layoutSettings), {}, {
93
+ id: REPORT_SETTINGS_ITEM_TYPE,
94
+ itemType: REPORT_SETTINGS_ITEM_TYPE
95
+ });
96
+ },
97
+ settings: function settings() {
98
+ return acceptedItems[REPORT_SETTINGS_ITEM_TYPE] || Layout;
99
+ },
100
+ title: function title() {
101
+ return translatedTexts.LAYOUT_SETTINGS;
102
+ },
103
+ updater: onSettingChange
68
104
  },
69
- title: function title(item) {
70
- return "".concat(capitalize(acceptedItems[item.itemType].title || item.itemType), " ").concat(SETTINGS);
71
- },
72
- updater: onItemChange
73
- },
74
- l_: {
75
- details: function details() {
76
- return _objectSpread(_objectSpread({}, layoutSettings), {}, {
77
- id: REPORT_SETTINGS_ITEM_TYPE,
78
- itemType: REPORT_SETTINGS_ITEM_TYPE
79
- });
80
- },
81
- settings: function settings() {
82
- return acceptedItems[REPORT_SETTINGS_ITEM_TYPE] || Layout;
83
- },
84
- title: function title() {
85
- return LAYOUT_SETTINGS;
86
- },
87
- updater: onSettingChange
88
- },
89
- p_: {
90
- details: function details(id) {
91
- return _objectSpread(_objectSpread({
92
- backgroundColor: layoutSettings.reportBackgroundColor
93
- }, pages.find(function (page) {
94
- return page.id === id;
95
- })), {}, {
96
- itemType: PAGE_SETTINGS_ITEM_TYPE
97
- });
98
- },
99
- settings: function settings() {
100
- var pageItem = acceptedItems[PAGE_SETTINGS_ITEM_TYPE] || Page;
101
- return _objectSpread(_objectSpread({}, pageItem), {}, {
102
- settings: pageItem.settings.map(function (setting) {
103
- if (setting.key === 'pageLayer') {
104
- return _objectSpread(_objectSpread({}, setting), {}, {
105
- setActiveElement: setActiveElement,
106
- updater: onItemChange
107
- });
108
- }
109
-
110
- return setting;
111
- }) || Page.settings
112
- });
113
- },
114
- title: function title() {
115
- return PAGE_SETTINGS;
116
- },
117
- updater: onPageChange
118
- }
119
- };
120
- var editedEl;
121
- var editedElId;
122
- var selectedItem;
123
- var element;
124
- var updateFunc;
125
- var title;
126
-
127
- var panelConfig = function panelConfig() {
128
- selectedItem = editedEl.details(editedElId);
129
- element = editedEl.settings(selectedItem);
130
- updateFunc = editedEl.updater;
131
- title = editedEl.title(selectedItem);
132
- };
133
-
134
- var fallback = function fallback() {
135
- setActiveElement(null);
136
- editedEl = settingMap.l_;
137
- editedElId = editedElement.substr(2);
138
- panelConfig();
139
- };
140
-
141
- try {
142
- editedEl = settingMap[editedElement.substr(0, 2)];
143
- editedElId = editedElement.substr(2);
144
- var checkSelectedItem = editedEl.details(editedElId);
145
-
146
- if (Object.keys(checkSelectedItem).length === 0) {
147
- fallback();
148
- } else {
149
- panelConfig();
105
+ p_: {
106
+ details: function details(id) {
107
+ return _objectSpread(_objectSpread({
108
+ backgroundColor: layoutSettings.reportBackgroundColor
109
+ }, pages.find(function (page) {
110
+ return page.id === id;
111
+ })), {}, {
112
+ itemType: PAGE_SETTINGS_ITEM_TYPE
113
+ });
114
+ },
115
+ settings: function settings() {
116
+ var pageItem = acceptedItems[PAGE_SETTINGS_ITEM_TYPE] || Page;
117
+ return _objectSpread(_objectSpread({}, pageItem), {}, {
118
+ settings: pageItem.settings.map(function (setting) {
119
+ if (setting.key === 'pageLayer') {
120
+ return _objectSpread(_objectSpread({}, setting), {}, {
121
+ setActiveElement: setActiveElement,
122
+ updater: onItemChange
123
+ });
124
+ }
125
+
126
+ return setting;
127
+ }) || Page.settings
128
+ });
129
+ },
130
+ title: function title() {
131
+ return translatedTexts.PAGE_SETTINGS;
132
+ },
133
+ updater: onPageChange
134
+ }
135
+ };
136
+ }, [acceptedItems, layoutSettings, onItemChange, onPageChange, onSettingChange, translatedTexts, pages, setActiveElement]);
137
+ var editedEl = useMemo(function () {
138
+ return settingMap[editedElement.substr(0, 2)] || settingMap.l_;
139
+ }, [editedElement, settingMap]);
140
+
141
+ var _useMemo = useMemo(function () {
142
+ var editedElId = editedElement.substr(2);
143
+
144
+ var _selectedItem = editedEl.details(editedElId);
145
+
146
+ if (!_selectedItem) {
147
+ var fallbackEditedEl = settingMap.l_;
148
+ return {
149
+ element: fallbackEditedEl.settings(),
150
+ selectedItem: fallbackEditedEl.details(),
151
+ title: fallbackEditedEl.title(),
152
+ updateFunc: fallbackEditedEl.updater
153
+ };
150
154
  }
151
- } catch (e) {
152
- fallback();
153
- } // Tabs
155
+
156
+ return {
157
+ element: editedEl.settings(_selectedItem),
158
+ selectedItem: _selectedItem,
159
+ title: editedEl.title(_selectedItem),
160
+ updateFunc: editedEl.updater
161
+ };
162
+ }, [editedEl, editedElement, settingMap.l_]),
163
+ element = _useMemo.element,
164
+ selectedItem = _useMemo.selectedItem,
165
+ title = _useMemo.title,
166
+ updateFunc = _useMemo.updateFunc; // Tabs
154
167
 
155
168
 
156
169
  var tabsWithSettings = getTabsWithSettings(element, selectedItem, itemAccessor);
@@ -162,14 +175,13 @@ var RightPanel = function RightPanel(_ref) {
162
175
  // This is due to conditionaly hiding tabs
163
176
  setActiveTab('right', 0);
164
177
  }
165
- }, [activeTab, tabs]); // Panel className
178
+ }, [activeTab, tabs, tabsWithSettings, setActiveTab]); // Panel className
166
179
 
167
180
  var panelAdditionalClassName = classNames('jfReport-settings forSettings f-height', {
168
181
  isIdle: !isRightPanelOpen,
169
182
  otherOpened: isSlidesPanelOpen
170
183
  });
171
-
172
- var onClickOutsideForPanel = function onClickOutsideForPanel(e) {
184
+ var onClickOutsideForPanel = useCallback(function (e) {
173
185
  if (editedElement.substr(0, 2) === 'i_' || panelRef.current.contains(e.target) || panelRef.current.contains(document.activeElement) || Array.from(e.target.classList).some(function (xClass) {
174
186
  return exceptionalClasses.includes(xClass);
175
187
  }) || exceptionalClasses.some(function (xClass) {
@@ -180,14 +192,13 @@ var RightPanel = function RightPanel(_ref) {
180
192
 
181
193
  setIsRightPanelOpen(false);
182
194
  setActiveElement(null);
183
- };
184
-
195
+ }, [editedElement, panelRef, setIsRightPanelOpen, setActiveElement]);
185
196
  useEffect(function () {
186
197
  if (isRightPanelOpen) window.addEventListener('click', onClickOutsideForPanel, false);
187
198
  return function () {
188
199
  window.removeEventListener('click', onClickOutsideForPanel, false);
189
200
  };
190
- }, [isRightPanelOpen]);
201
+ }, [isRightPanelOpen, onClickOutsideForPanel]);
191
202
  return /*#__PURE__*/jsx(Fragment, {
192
203
  children: /*#__PURE__*/jsxs(Panel, {
193
204
  ref: panelRef,
@@ -202,7 +213,6 @@ var RightPanel = function RightPanel(_ref) {
202
213
  }), /*#__PURE__*/jsx(Settings, {
203
214
  element: element,
204
215
  item: selectedItem,
205
- itemAccessor: itemAccessor,
206
216
  onChange: updateFunc,
207
217
  settings: tabsWithSettings,
208
218
  tabs: tabs
@@ -213,20 +223,6 @@ var RightPanel = function RightPanel(_ref) {
213
223
  });
214
224
  };
215
225
 
216
- RightPanel.propTypes = {
217
- itemAccessor: PropTypes.func,
218
- onItemChange: PropTypes.func,
219
- onPageChange: PropTypes.func,
220
- onSettingChange: PropTypes.func,
221
- pages: PropTypes.arrayOf(PropTypes.shape({}))
222
- };
223
- RightPanel.defaultProps = {
224
- itemAccessor: function itemAccessor() {},
225
- onItemChange: function onItemChange() {},
226
- onPageChange: function onPageChange() {},
227
- onSettingChange: function onSettingChange() {},
228
- pages: []
229
- };
230
226
  var RightPanel$1 = /*#__PURE__*/memo(RightPanel);
231
227
 
232
228
  export default RightPanel$1;
@@ -1 +1 @@
1
- {"version":3,"file":"RightPanel.js","sources":["../../../../../src/components/Panels/RightPanel/RightPanel.js"],"sourcesContent":["import {\n memo,\n useEffect,\n useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport Panel from '../../Builder/Panel';\nimport Section from '../../Builder/Section';\nimport Layout from '../../../constants/reportSettings';\nimport Page from '../../../constants/pageSettings';\nimport { useBuilderContext } from '../../../utils/builderContext';\nimport { usePropContext } from '../../../utils/propContext';\nimport { findItemById, getTabsWithSettings } from '../../../utils/functions';\nimport { useTranslatedTexts } from '../../../utils/hooks';\nimport {\n REPORT_SETTINGS_ITEM_TYPE, PAGE_SETTINGS_ITEM_TYPE,\n} from '../../../constants/itemTypes';\nimport Tabs from '../../Builder/Tabs';\nimport Settings from './Settings';\nimport RightPanelToggler from './RightPanelToggler';\nimport { capitalize } from '../../../utils/string';\n\nconst exceptionalClasses = [\n 'pageSettingSideBtn', 'paneClose', 'paneToggler', 'forZoom', 'jSheetContextMenu',\n];\n\nconst RightPanel = ({\n itemAccessor,\n onItemChange,\n onPageChange,\n onSettingChange,\n pages,\n}) => {\n const {\n activeTab,\n editedElement,\n isRightPanelOpen,\n isSlidesPanelOpen,\n setActiveElement,\n setActiveTab,\n setIsRightPanelOpen,\n } = useBuilderContext();\n const { acceptedItems, settings: layoutSettings } = usePropContext();\n const panelRef = useRef(null);\n const { LAYOUT_SETTINGS, PAGE_SETTINGS, SETTINGS } = useTranslatedTexts();\n const settingMap = {\n i_: {\n details: id => {\n const item = findItemById(id, pages);\n return item;\n },\n settings: item => {\n return acceptedItems[item.itemType];\n },\n title: item => {\n return `${capitalize(acceptedItems[item.itemType].title || item.itemType)} ${SETTINGS}`;\n },\n updater: onItemChange,\n },\n l_: {\n details: () => {\n return {\n ...layoutSettings,\n id: REPORT_SETTINGS_ITEM_TYPE,\n itemType: REPORT_SETTINGS_ITEM_TYPE,\n };\n },\n settings: () => {\n return acceptedItems[REPORT_SETTINGS_ITEM_TYPE] || Layout;\n },\n title: () => LAYOUT_SETTINGS,\n updater: onSettingChange,\n },\n p_: {\n details: id => {\n return {\n backgroundColor: layoutSettings.reportBackgroundColor,\n ...pages.find(page => page.id === id),\n itemType: PAGE_SETTINGS_ITEM_TYPE,\n };\n },\n settings: () => {\n const pageItem = acceptedItems[PAGE_SETTINGS_ITEM_TYPE] || Page;\n return {\n ...pageItem,\n settings: pageItem.settings.map(setting => {\n if (setting.key === 'pageLayer') {\n return { ...setting, setActiveElement, updater: onItemChange };\n }\n return setting;\n }) || Page.settings,\n };\n },\n title: () => PAGE_SETTINGS,\n updater: onPageChange,\n },\n };\n\n let editedEl;\n let editedElId;\n let selectedItem;\n let element;\n let updateFunc;\n let title;\n\n const panelConfig = () => {\n selectedItem = editedEl.details(editedElId);\n element = editedEl.settings(selectedItem);\n updateFunc = editedEl.updater;\n title = editedEl.title(selectedItem);\n };\n\n const fallback = () => {\n setActiveElement(null);\n editedEl = settingMap.l_;\n editedElId = editedElement.substr(2);\n panelConfig();\n };\n\n try {\n editedEl = settingMap[editedElement.substr(0, 2)];\n editedElId = editedElement.substr(2);\n const checkSelectedItem = editedEl.details(editedElId);\n if (Object.keys(checkSelectedItem).length === 0) {\n fallback();\n } else {\n panelConfig();\n }\n } catch (e) {\n fallback();\n }\n\n // Tabs\n const tabsWithSettings = getTabsWithSettings(element, selectedItem, itemAccessor);\n const tabs = Object.keys(tabsWithSettings);\n\n useEffect(() => {\n const currentTab = tabs[activeTab.right];\n if (!tabsWithSettings[currentTab]) {\n // This is due to conditionaly hiding tabs\n setActiveTab('right', 0);\n }\n }, [activeTab, tabs]);\n\n // Panel className\n const panelAdditionalClassName = classNames(\n 'jfReport-settings forSettings f-height',\n {\n isIdle: !isRightPanelOpen,\n otherOpened: isSlidesPanelOpen,\n },\n );\n\n const onClickOutsideForPanel = e => {\n if (editedElement.substr(0, 2) === 'i_'\n || panelRef.current.contains(e.target)\n || panelRef.current.contains(document.activeElement)\n || Array.from(e.target.classList).some(xClass => exceptionalClasses.includes(xClass))\n || exceptionalClasses.some(xClass => e.target.closest(`.${xClass}`))\n ) {\n return;\n }\n setIsRightPanelOpen(false);\n setActiveElement(null);\n };\n\n useEffect(() => {\n if (isRightPanelOpen) window.addEventListener('click', onClickOutsideForPanel, false);\n return () => {\n window.removeEventListener('click', onClickOutsideForPanel, false);\n };\n }, [isRightPanelOpen]);\n\n return (\n <>\n <Panel\n ref={panelRef}\n additionalClassName={panelAdditionalClassName}\n >\n {isSlidesPanelOpen ? null : <RightPanelToggler />}\n <div className=\"toolItemWrapper f-height d-flex dir-col\">\n <Section title={title}>\n <Tabs\n panel=\"right\"\n tabs={tabs}\n />\n <Settings\n key={selectedItem.id}\n element={element}\n item={selectedItem}\n itemAccessor={itemAccessor}\n onChange={updateFunc}\n settings={tabsWithSettings}\n tabs={tabs}\n />\n </Section>\n </div>\n </Panel>\n </>\n );\n};\n\nRightPanel.propTypes = {\n itemAccessor: PropTypes.func,\n onItemChange: PropTypes.func,\n onPageChange: PropTypes.func,\n onSettingChange: PropTypes.func,\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n};\n\nRightPanel.defaultProps = {\n itemAccessor: () => { },\n onItemChange: () => { },\n onPageChange: () => { },\n onSettingChange: () => { },\n pages: [],\n};\n\nexport default memo(RightPanel);\n"],"names":["exceptionalClasses","RightPanel","itemAccessor","onItemChange","onPageChange","onSettingChange","pages","useBuilderContext","activeTab","editedElement","isRightPanelOpen","isSlidesPanelOpen","setActiveElement","setActiveTab","setIsRightPanelOpen","usePropContext","acceptedItems","layoutSettings","settings","panelRef","useRef","useTranslatedTexts","LAYOUT_SETTINGS","PAGE_SETTINGS","SETTINGS","settingMap","i_","details","id","item","findItemById","itemType","title","capitalize","updater","l_","REPORT_SETTINGS_ITEM_TYPE","Layout","p_","backgroundColor","reportBackgroundColor","find","page","PAGE_SETTINGS_ITEM_TYPE","pageItem","Page","map","setting","key","editedEl","editedElId","selectedItem","element","updateFunc","panelConfig","fallback","substr","checkSelectedItem","Object","keys","length","e","tabsWithSettings","getTabsWithSettings","tabs","useEffect","currentTab","right","panelAdditionalClassName","classNames","isIdle","otherOpened","onClickOutsideForPanel","current","contains","target","document","activeElement","Array","from","classList","some","xClass","includes","closest","window","addEventListener","removeEventListener","_jsx","_jsxs","propTypes","PropTypes","func","arrayOf","shape","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"RightPanel.js","sources":["../../../../../src/components/Panels/RightPanel/RightPanel.js"],"sourcesContent":["import {\n memo,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n} from 'react';\nimport classNames from 'classnames';\nimport Panel from '../../Builder/Panel';\nimport Section from '../../Builder/Section';\nimport Layout from '../../../constants/reportSettings';\nimport Page from '../../../constants/pageSettings';\nimport { useBuilderStore } from '../../../contexts/BuilderContext';\nimport { usePropStore } from '../../../contexts/PropContext';\nimport { findItemById, getTabsWithSettings } from '../../../utils/functions';\nimport { useTranslatedTexts } from '../../../utils/hooks';\nimport {\n REPORT_SETTINGS_ITEM_TYPE, PAGE_SETTINGS_ITEM_TYPE,\n} from '../../../constants/itemTypes';\nimport Tabs from '../../Builder/Tabs';\nimport Settings from './Settings';\nimport RightPanelToggler from './RightPanelToggler';\n\nconst exceptionalClasses = [\n 'pageSettingSideBtn', 'paneClose', 'paneToggler', 'forZoom', 'jSheetContextMenu',\n];\n\nconst RightPanel = () => {\n const activeTab = useBuilderStore(state => state.activeTab);\n const editedElement = useBuilderStore(state => state.editedElement);\n const isRightPanelOpen = useBuilderStore(state => state.isRightPanelOpen);\n const isSlidesPanelOpen = useBuilderStore(state => state.isSlidesPanelOpen);\n const setActiveElement = useBuilderStore(state => state.setActiveElement);\n const setActiveTab = useBuilderStore(state => state.setActiveTab);\n const setIsRightPanelOpen = useBuilderStore(state => state.setIsRightPanelOpen);\n\n const acceptedItems = usePropStore(state => state.acceptedItems);\n const layoutSettings = usePropStore(state => state.settings);\n const onItemChange = usePropStore(state => state.onItemChange);\n const onPageChange = usePropStore(state => state.onPageChange);\n const onSettingChange = usePropStore(state => state.onSettingChange);\n const pages = usePropStore(state => state.pages);\n const itemAccessor = usePropStore(state => state.itemAccessor);\n\n const panelRef = useRef(null);\n const translatedTexts = useTranslatedTexts();\n\n const settingMap = useMemo(() => ({\n i_: {\n details: id => {\n const item = findItemById(id, pages);\n return item;\n },\n settings: item => {\n return acceptedItems[item.itemType];\n },\n title: item => {\n return translatedTexts[`${(acceptedItems[item.itemType].title || item.itemType).toLocaleUpperCase()}_SETTINGS`];\n },\n updater: onItemChange,\n },\n l_: {\n details: () => {\n return {\n ...layoutSettings,\n id: REPORT_SETTINGS_ITEM_TYPE,\n itemType: REPORT_SETTINGS_ITEM_TYPE,\n };\n },\n settings: () => {\n return acceptedItems[REPORT_SETTINGS_ITEM_TYPE] || Layout;\n },\n title: () => translatedTexts.LAYOUT_SETTINGS,\n updater: onSettingChange,\n },\n p_: {\n details: id => {\n return {\n backgroundColor: layoutSettings.reportBackgroundColor,\n ...pages.find(page => page.id === id),\n itemType: PAGE_SETTINGS_ITEM_TYPE,\n };\n },\n settings: () => {\n const pageItem = acceptedItems[PAGE_SETTINGS_ITEM_TYPE] || Page;\n return {\n ...pageItem,\n settings: pageItem.settings.map(setting => {\n if (setting.key === 'pageLayer') {\n return { ...setting, setActiveElement, updater: onItemChange };\n }\n return setting;\n }) || Page.settings,\n };\n },\n title: () => translatedTexts.PAGE_SETTINGS,\n updater: onPageChange,\n },\n }), [\n acceptedItems,\n layoutSettings,\n onItemChange,\n onPageChange,\n onSettingChange,\n translatedTexts,\n pages,\n setActiveElement,\n ]);\n\n const editedEl = useMemo(() => {\n return settingMap[editedElement.substr(0, 2)] || settingMap.l_;\n }, [editedElement, settingMap]);\n\n const {\n element, selectedItem, title, updateFunc,\n } = useMemo(() => {\n const editedElId = editedElement.substr(2);\n const _selectedItem = editedEl.details(editedElId);\n\n if (!_selectedItem) {\n const fallbackEditedEl = settingMap.l_;\n return {\n element: fallbackEditedEl.settings(),\n selectedItem: fallbackEditedEl.details(),\n title: fallbackEditedEl.title(),\n updateFunc: fallbackEditedEl.updater,\n };\n }\n\n return {\n element: editedEl.settings(_selectedItem),\n selectedItem: _selectedItem,\n title: editedEl.title(_selectedItem),\n updateFunc: editedEl.updater,\n };\n }, [editedEl, editedElement, settingMap.l_]);\n\n // Tabs\n const tabsWithSettings = getTabsWithSettings(element, selectedItem, itemAccessor);\n const tabs = Object.keys(tabsWithSettings);\n\n useEffect(() => {\n const currentTab = tabs[activeTab.right];\n if (!tabsWithSettings[currentTab]) {\n // This is due to conditionaly hiding tabs\n setActiveTab('right', 0);\n }\n }, [activeTab, tabs, tabsWithSettings, setActiveTab]);\n\n // Panel className\n const panelAdditionalClassName = classNames(\n 'jfReport-settings forSettings f-height',\n {\n isIdle: !isRightPanelOpen,\n otherOpened: isSlidesPanelOpen,\n },\n );\n\n const onClickOutsideForPanel = useCallback(e => {\n if (editedElement.substr(0, 2) === 'i_'\n || panelRef.current.contains(e.target)\n || panelRef.current.contains(document.activeElement)\n || Array.from(e.target.classList).some(xClass => exceptionalClasses.includes(xClass))\n || exceptionalClasses.some(xClass => e.target.closest(`.${xClass}`))\n ) {\n return;\n }\n setIsRightPanelOpen(false);\n setActiveElement(null);\n }, [editedElement, panelRef, setIsRightPanelOpen, setActiveElement]);\n\n useEffect(() => {\n if (isRightPanelOpen) window.addEventListener('click', onClickOutsideForPanel, false);\n return () => {\n window.removeEventListener('click', onClickOutsideForPanel, false);\n };\n }, [isRightPanelOpen, onClickOutsideForPanel]);\n\n return (\n <>\n <Panel\n ref={panelRef}\n additionalClassName={panelAdditionalClassName}\n >\n {isSlidesPanelOpen ? null : <RightPanelToggler />}\n <div className=\"toolItemWrapper f-height d-flex dir-col\">\n <Section title={title}>\n <Tabs\n panel=\"right\"\n tabs={tabs}\n />\n <Settings\n key={selectedItem.id}\n element={element}\n item={selectedItem}\n onChange={updateFunc}\n settings={tabsWithSettings}\n tabs={tabs}\n />\n </Section>\n </div>\n </Panel>\n </>\n );\n};\n\nexport default memo(RightPanel);\n"],"names":["exceptionalClasses","RightPanel","activeTab","useBuilderStore","state","editedElement","isRightPanelOpen","isSlidesPanelOpen","setActiveElement","setActiveTab","setIsRightPanelOpen","acceptedItems","usePropStore","layoutSettings","settings","onItemChange","onPageChange","onSettingChange","pages","itemAccessor","panelRef","useRef","translatedTexts","useTranslatedTexts","settingMap","useMemo","i_","details","id","item","findItemById","itemType","title","toLocaleUpperCase","updater","l_","REPORT_SETTINGS_ITEM_TYPE","Layout","LAYOUT_SETTINGS","p_","backgroundColor","reportBackgroundColor","find","page","PAGE_SETTINGS_ITEM_TYPE","pageItem","Page","map","setting","key","PAGE_SETTINGS","editedEl","substr","editedElId","_selectedItem","fallbackEditedEl","element","selectedItem","updateFunc","tabsWithSettings","getTabsWithSettings","tabs","Object","keys","useEffect","currentTab","right","panelAdditionalClassName","classNames","isIdle","otherOpened","onClickOutsideForPanel","useCallback","e","current","contains","target","document","activeElement","Array","from","classList","some","xClass","includes","closest","window","addEventListener","removeEventListener","_jsx","_jsxs","memo"],"mappings":"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"}
@@ -1,14 +1,17 @@
1
1
  import { memo } from 'react';
2
- import { useBuilderContext } from '../../../utils/builderContext.js';
2
+ import { useBuilderStore } from '../../../contexts/BuilderContext.js';
3
3
  import { useTranslatedTexts } from '../../../utils/hooks.js';
4
4
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
5
5
  import SvgSettingsToggle from '../../../assets/svg/settings_toggle.svg.js';
6
6
  import SvgClose from '../../../assets/svg/close.svg.js';
7
7
 
8
8
  var RightPanelToggler = function RightPanelToggler() {
9
- var _useBuilderContext = useBuilderContext(),
10
- setActiveElement = _useBuilderContext.setActiveElement,
11
- setIsRightPanelOpen = _useBuilderContext.setIsRightPanelOpen;
9
+ var setActiveElement = useBuilderStore(function (state) {
10
+ return state.setActiveElement;
11
+ });
12
+ var setIsRightPanelOpen = useBuilderStore(function (state) {
13
+ return state.setIsRightPanelOpen;
14
+ });
12
15
 
13
16
  var _useTranslatedTexts = useTranslatedTexts(),
14
17
  LAYOUT_SETTINGS = _useTranslatedTexts.LAYOUT_SETTINGS;
@@ -1 +1 @@
1
- {"version":3,"file":"RightPanelToggler.js","sources":["../../../../../src/components/Panels/RightPanel/RightPanelToggler.js"],"sourcesContent":["import { memo } from 'react';\nimport { useBuilderContext } from '../../../utils/builderContext';\nimport * as icons from '../../../utils/icons';\nimport { useTranslatedTexts } from '../../../utils/hooks';\n\nconst RightPanelToggler = () => {\n const {\n setActiveElement,\n setIsRightPanelOpen,\n } = useBuilderContext();\n const { LAYOUT_SETTINGS } = useTranslatedTexts();\n\n return (\n <>\n <button\n className=\"paneToggler js-openRightPanel settingsToggle\"\n onClick={() => {\n setActiveElement(null);\n setIsRightPanelOpen(true);\n }}\n title={LAYOUT_SETTINGS}\n type=\"button\"\n >\n <icons.settingsToggle className=\"jfReportSVG isTick\" />\n </button>\n <button\n className=\"paneClose p-absolute js-closeRightPanel\"\n onClick={() => setIsRightPanelOpen(false)}\n type=\"button\"\n >\n <icons.close className=\"jfReportSVG\" />\n </button>\n </>\n );\n};\n\nexport default memo(RightPanelToggler);\n"],"names":["RightPanelToggler","useBuilderContext","setActiveElement","setIsRightPanelOpen","useTranslatedTexts","LAYOUT_SETTINGS","_jsxs","_jsx","icons.settingsToggle","icons.close","memo"],"mappings":";;;;;;;AAKA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,GAAM;AAC9B,2BAGIC,iBAAiB,EAHrB;AAAA,MACEC,gBADF,sBACEA,gBADF;AAAA,MAEEC,mBAFF,sBAEEA,mBAFF;;AAIA,4BAA4BC,kBAAkB,EAA9C;AAAA,MAAQC,eAAR,uBAAQA,eAAR;;AAEA,sBACEC;AAAA,4BACEC;AACE,MAAA,SAAS,EAAC,8CADZ;AAEE,MAAA,OAAO,EAAE,mBAAM;AACbL,QAAAA,gBAAgB,CAAC,IAAD,CAAhB;AACAC,QAAAA,mBAAmB,CAAC,IAAD,CAAnB;AACD,OALH;AAME,MAAA,KAAK,EAAEE,eANT;AAOE,MAAA,IAAI,EAAC,QAPP;AAAA,6BASEE,IAACC,iBAAD;AAAsB,QAAA,SAAS,EAAC;AAAhC;AATF,MADF,eAYED;AACE,MAAA,SAAS,EAAC,yCADZ;AAEE,MAAA,OAAO,EAAE;AAAA,eAAMJ,mBAAmB,CAAC,KAAD,CAAzB;AAAA,OAFX;AAGE,MAAA,IAAI,EAAC,QAHP;AAAA,6BAKEI,IAACE,QAAD;AAAa,QAAA,SAAS,EAAC;AAAvB;AALF,MAZF;AAAA,IADF;AAsBD,CA7BD;;AA+BA,uCAAeC,IAAI,CAACV,iBAAD,CAAnB;;;;"}
1
+ {"version":3,"file":"RightPanelToggler.js","sources":["../../../../../src/components/Panels/RightPanel/RightPanelToggler.js"],"sourcesContent":["import { memo } from 'react';\nimport { useBuilderStore } from '../../../contexts/BuilderContext';\nimport * as icons from '../../../utils/icons';\nimport { useTranslatedTexts } from '../../../utils/hooks';\n\nconst RightPanelToggler = () => {\n const setActiveElement = useBuilderStore(state => state.setActiveElement);\n const setIsRightPanelOpen = useBuilderStore(state => state.setIsRightPanelOpen);\n const { LAYOUT_SETTINGS } = useTranslatedTexts();\n\n return (\n <>\n <button\n className=\"paneToggler js-openRightPanel settingsToggle\"\n onClick={() => {\n setActiveElement(null);\n setIsRightPanelOpen(true);\n }}\n title={LAYOUT_SETTINGS}\n type=\"button\"\n >\n <icons.settingsToggle className=\"jfReportSVG isTick\" />\n </button>\n <button\n className=\"paneClose p-absolute js-closeRightPanel\"\n onClick={() => setIsRightPanelOpen(false)}\n type=\"button\"\n >\n <icons.close className=\"jfReportSVG\" />\n </button>\n </>\n );\n};\n\nexport default memo(RightPanelToggler);\n"],"names":["RightPanelToggler","setActiveElement","useBuilderStore","state","setIsRightPanelOpen","useTranslatedTexts","LAYOUT_SETTINGS","_jsxs","_jsx","icons.settingsToggle","icons.close","memo"],"mappings":";;;;;;;AAKA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,GAAM;AAC9B,MAAMC,gBAAgB,GAAGC,eAAe,CAAC,UAAAC,KAAK;AAAA,WAAIA,KAAK,CAACF,gBAAV;AAAA,GAAN,CAAxC;AACA,MAAMG,mBAAmB,GAAGF,eAAe,CAAC,UAAAC,KAAK;AAAA,WAAIA,KAAK,CAACC,mBAAV;AAAA,GAAN,CAA3C;;AACA,4BAA4BC,kBAAkB,EAA9C;AAAA,MAAQC,eAAR,uBAAQA,eAAR;;AAEA,sBACEC;AAAA,4BACEC;AACE,MAAA,SAAS,EAAC,8CADZ;AAEE,MAAA,OAAO,EAAE,mBAAM;AACbP,QAAAA,gBAAgB,CAAC,IAAD,CAAhB;AACAG,QAAAA,mBAAmB,CAAC,IAAD,CAAnB;AACD,OALH;AAME,MAAA,KAAK,EAAEE,eANT;AAOE,MAAA,IAAI,EAAC,QAPP;AAAA,6BASEE,IAACC,iBAAD;AAAsB,QAAA,SAAS,EAAC;AAAhC;AATF,MADF,eAYED;AACE,MAAA,SAAS,EAAC,yCADZ;AAEE,MAAA,OAAO,EAAE;AAAA,eAAMJ,mBAAmB,CAAC,KAAD,CAAzB;AAAA,OAFX;AAGE,MAAA,IAAI,EAAC,QAHP;AAAA,6BAKEI,IAACE,QAAD;AAAa,QAAA,SAAS,EAAC;AAAvB;AALF,MAZF;AAAA,IADF;AAsBD,CA3BD;;AA6BA,uCAAeC,IAAI,CAACX,iBAAD,CAAnB;;;;"}
@@ -5,8 +5,8 @@ import 'core-js/modules/es.regexp.to-string.js';
5
5
  import { memo } from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import classNames from 'classnames';
8
- import { useBuilderContext } from '../../../utils/builderContext.js';
9
- import { usePropContext } from '../../../utils/propContext.js';
8
+ import { useBuilderStore } from '../../../contexts/BuilderContext.js';
9
+ import { usePropStore } from '../../../contexts/PropContext.js';
10
10
  import SettingsItemRenderer from '../../Settings/SettingsItemRenderer.js';
11
11
  import { onChangeFunction } from '../../../utils/functions.js';
12
12
  import ErrorBoundry from '../../ErrorBoundary.js';
@@ -19,19 +19,25 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
19
19
  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; }
20
20
 
21
21
  var Settings = function Settings(_ref) {
22
- var element = _ref.element,
23
- item = _ref.item,
24
- itemAccessor = _ref.itemAccessor,
25
- onChange = _ref.onChange,
26
- settings = _ref.settings,
27
- tabs = _ref.tabs;
28
-
29
- var _useBuilderContext = useBuilderContext(),
30
- activeTab = _useBuilderContext.activeTab;
31
-
32
- var _usePropContext = usePropContext(),
33
- useExperimentalFeatures = _usePropContext.useExperimentalFeatures;
34
-
22
+ var _ref$element = _ref.element,
23
+ element = _ref$element === void 0 ? {} : _ref$element,
24
+ _ref$item = _ref.item,
25
+ item = _ref$item === void 0 ? {} : _ref$item,
26
+ _ref$onChange = _ref.onChange,
27
+ onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
28
+ _ref$settings = _ref.settings,
29
+ settings = _ref$settings === void 0 ? {} : _ref$settings,
30
+ _ref$tabs = _ref.tabs,
31
+ tabs = _ref$tabs === void 0 ? [] : _ref$tabs;
32
+ var itemAccessor = usePropStore(function (state) {
33
+ return state.itemAccessor;
34
+ });
35
+ var activeTab = useBuilderStore(function (state) {
36
+ return state.activeTab;
37
+ });
38
+ var useExperimentalFeatures = usePropStore(function (state) {
39
+ return state.useExperimentalFeatures;
40
+ });
35
41
  return tabs.map(function (tabKey, index) {
36
42
  return /*#__PURE__*/jsx("div", {
37
43
  className: classNames('toolItem-tabContent', {
@@ -78,13 +84,6 @@ Settings.propTypes = {
78
84
  settings: PropTypes.shape({}),
79
85
  tabs: PropTypes.arrayOf(PropTypes.string)
80
86
  };
81
- Settings.defaultProps = {
82
- element: {},
83
- item: {},
84
- onChange: function onChange() {},
85
- settings: {},
86
- tabs: []
87
- };
88
87
  var Settings$1 = /*#__PURE__*/memo(Settings);
89
88
 
90
89
  export default Settings$1;
@@ -1 +1 @@
1
- {"version":3,"file":"Settings.js","sources":["../../../../../src/components/Panels/RightPanel/Settings.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { useBuilderContext } from '../../../utils/builderContext';\nimport { usePropContext } from '../../../utils/propContext';\nimport SettingsItemRenderer from '../../Settings/SettingsItemRenderer';\nimport { onChangeFunction } from '../../../utils/functions';\nimport ErrorBoundary from '../../ErrorBoundary';\n\nconst Settings = ({\n element,\n item,\n itemAccessor,\n onChange,\n settings,\n tabs,\n}) => {\n const { activeTab } = useBuilderContext();\n const { useExperimentalFeatures } = usePropContext();\n return (tabs.map((tabKey, index) => {\n return (\n <div\n key={index.toString()}\n className={classNames(\n 'toolItem-tabContent',\n { hidden: index !== activeTab.right },\n { hasInnerScroll: tabKey === 'MY IMAGES' },\n )}\n >\n {settings[tabKey].map((setting, itemIndex) => {\n if (setting.experimental && !useExperimentalFeatures) {\n return null;\n }\n const customUpdaterFunction = setting.onChange ? setting.onChange : false;\n const defaultItem = element.defaultItem || {};\n const value = (item[setting.key] || item[setting.key] === 0)\n ? item[setting.key] : defaultItem[setting.key] || null;\n const computedValue = setting.value ? setting.value(value, item, itemAccessor) : value;\n const newItem = { ...defaultItem, ...item };\n return (\n <SettingsItemRenderer\n key={`${itemIndex.toString()}_${item.id}_${setting.key}_${setting.uniqueId}`}\n setting={setting}\n settingValue={computedValue}\n >\n {SettingItem => {\n return (\n <ErrorBoundary>\n <SettingItem\n config={setting}\n item={newItem}\n itemAccessor={itemAccessor}\n onItemChange={onChangeFunction(\n setting,\n onChange,\n newItem,\n customUpdaterFunction,\n )}\n value={computedValue}\n />\n </ErrorBoundary>\n );\n }}\n </SettingsItemRenderer>\n );\n })}\n </div>\n );\n }));\n};\n\nSettings.propTypes = {\n element: PropTypes.shape({}),\n item: PropTypes.shape({}),\n onChange: PropTypes.func,\n settings: PropTypes.shape({}),\n tabs: PropTypes.arrayOf(PropTypes.string),\n};\n\nSettings.defaultProps = {\n element: {},\n item: {},\n onChange: () => {},\n settings: {},\n tabs: [],\n};\n\nexport default memo(Settings);\n"],"names":["Settings","element","item","itemAccessor","onChange","settings","tabs","useBuilderContext","activeTab","usePropContext","useExperimentalFeatures","map","tabKey","index","_jsx","classNames","hidden","right","hasInnerScroll","setting","itemIndex","experimental","customUpdaterFunction","defaultItem","value","key","computedValue","newItem","SettingItem","ErrorBoundary","onChangeFunction","toString","id","uniqueId","propTypes","PropTypes","shape","func","arrayOf","string","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Settings.js","sources":["../../../../../src/components/Panels/RightPanel/Settings.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { useBuilderStore } from '../../../contexts/BuilderContext';\nimport { usePropStore } from '../../../contexts/PropContext';\nimport SettingsItemRenderer from '../../Settings/SettingsItemRenderer';\nimport { onChangeFunction } from '../../../utils/functions';\nimport ErrorBoundary from '../../ErrorBoundary';\n\nconst Settings = ({\n element = {},\n item = {},\n onChange = () => {},\n settings = {},\n tabs = [],\n}) => {\n const itemAccessor = usePropStore(state => state.itemAccessor);\n const activeTab = useBuilderStore(state => state.activeTab);\n const useExperimentalFeatures = usePropStore(state => state.useExperimentalFeatures);\n\n return (tabs.map((tabKey, index) => {\n return (\n <div\n key={index.toString()}\n className={classNames(\n 'toolItem-tabContent',\n { hidden: index !== activeTab.right },\n { hasInnerScroll: tabKey === 'MY IMAGES' },\n )}\n >\n {settings[tabKey].map((setting, itemIndex) => {\n if (setting.experimental && !useExperimentalFeatures) {\n return null;\n }\n const customUpdaterFunction = setting.onChange ? setting.onChange : false;\n const defaultItem = element.defaultItem || {};\n const value = (item[setting.key] || item[setting.key] === 0)\n ? item[setting.key] : defaultItem[setting.key] || null;\n const computedValue = setting.value ? setting.value(value, item, itemAccessor) : value;\n const newItem = { ...defaultItem, ...item };\n return (\n <SettingsItemRenderer\n key={`${itemIndex.toString()}_${item.id}_${setting.key}_${setting.uniqueId}`}\n setting={setting}\n settingValue={computedValue}\n >\n {SettingItem => {\n return (\n <ErrorBoundary>\n <SettingItem\n config={setting}\n item={newItem}\n itemAccessor={itemAccessor}\n onItemChange={onChangeFunction(\n setting,\n onChange,\n newItem,\n customUpdaterFunction,\n )}\n value={computedValue}\n />\n </ErrorBoundary>\n );\n }}\n </SettingsItemRenderer>\n );\n })}\n </div>\n );\n }));\n};\n\nSettings.propTypes = {\n element: PropTypes.shape({}),\n item: PropTypes.shape({}),\n onChange: PropTypes.func,\n settings: PropTypes.shape({}),\n tabs: PropTypes.arrayOf(PropTypes.string),\n};\n\nexport default memo(Settings);\n"],"names":["Settings","element","item","onChange","settings","tabs","itemAccessor","usePropStore","state","activeTab","useBuilderStore","useExperimentalFeatures","map","tabKey","index","_jsx","classNames","hidden","right","hasInnerScroll","setting","itemIndex","experimental","customUpdaterFunction","defaultItem","value","key","computedValue","newItem","SettingItem","ErrorBoundary","onChangeFunction","toString","id","uniqueId","propTypes","PropTypes","shape","func","arrayOf","string","memo"],"mappings":";;;;;;;;;;;;;;;;;;;;AASA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAMX;AAAA,0BALJC,OAKI;AAAA,MALJA,OAKI,6BALM,EAKN;AAAA,uBAJJC,IAII;AAAA,MAJJA,IAII,0BAJG,EAIH;AAAA,2BAHJC,QAGI;AAAA,MAHJA,QAGI,8BAHO,YAAM,EAGb;AAAA,2BAFJC,QAEI;AAAA,MAFJA,QAEI,8BAFO,EAEP;AAAA,uBADJC,IACI;AAAA,MADJA,IACI,0BADG,EACH;AACJ,MAAMC,YAAY,GAAGC,YAAY,CAAC,UAAAC,KAAK;AAAA,WAAIA,KAAK,CAACF,YAAV;AAAA,GAAN,CAAjC;AACA,MAAMG,SAAS,GAAGC,eAAe,CAAC,UAAAF,KAAK;AAAA,WAAIA,KAAK,CAACC,SAAV;AAAA,GAAN,CAAjC;AACA,MAAME,uBAAuB,GAAGJ,YAAY,CAAC,UAAAC,KAAK;AAAA,WAAIA,KAAK,CAACG,uBAAV;AAAA,GAAN,CAA5C;AAEA,SAAQN,IAAI,CAACO,GAAL,CAAS,UAACC,MAAD,EAASC,KAAT,EAAmB;AAClC,wBACEC;AAEE,MAAA,SAAS,EAAEC,UAAU,CACnB,qBADmB,EAEnB;AAAEC,QAAAA,MAAM,EAAEH,KAAK,KAAKL,SAAS,CAACS;AAA9B,OAFmB,EAGnB;AAAEC,QAAAA,cAAc,EAAEN,MAAM,KAAK;AAA7B,OAHmB,CAFvB;AAAA,gBAQGT,QAAQ,CAACS,MAAD,CAAR,CAAiBD,GAAjB,CAAqB,UAACQ,OAAD,EAAUC,SAAV,EAAwB;AAC5C,YAAID,OAAO,CAACE,YAAR,IAAwB,CAACX,uBAA7B,EAAsD;AACpD,iBAAO,IAAP;AACD;;AACD,YAAMY,qBAAqB,GAAGH,OAAO,CAACjB,QAAR,GAAmBiB,OAAO,CAACjB,QAA3B,GAAsC,KAApE;AACA,YAAMqB,WAAW,GAAGvB,OAAO,CAACuB,WAAR,IAAuB,EAA3C;AACA,YAAMC,KAAK,GAAIvB,IAAI,CAACkB,OAAO,CAACM,GAAT,CAAJ,IAAqBxB,IAAI,CAACkB,OAAO,CAACM,GAAT,CAAJ,KAAsB,CAA5C,GACVxB,IAAI,CAACkB,OAAO,CAACM,GAAT,CADM,GACUF,WAAW,CAACJ,OAAO,CAACM,GAAT,CAAX,IAA4B,IADpD;AAEA,YAAMC,aAAa,GAAGP,OAAO,CAACK,KAAR,GAAgBL,OAAO,CAACK,KAAR,CAAcA,KAAd,EAAqBvB,IAArB,EAA2BI,YAA3B,CAAhB,GAA2DmB,KAAjF;;AACA,YAAMG,OAAO,mCAAQJ,WAAR,GAAwBtB,IAAxB,CAAb;;AACA,4BACEa,IAAC,oBAAD;AAEE,UAAA,OAAO,EAAEK,OAFX;AAGE,UAAA,YAAY,EAAEO,aAHhB;AAAA,oBAKG,kBAAAE,WAAW,EAAI;AACd,gCACEd,IAACe,YAAD;AAAA,qCACEf,IAAC,WAAD;AACE,gBAAA,MAAM,EAAEK,OADV;AAEE,gBAAA,IAAI,EAAEQ,OAFR;AAGE,gBAAA,YAAY,EAAEtB,YAHhB;AAIE,gBAAA,YAAY,EAAEyB,gBAAgB,CAC5BX,OAD4B,EAE5BjB,QAF4B,EAG5ByB,OAH4B,EAI5BL,qBAJ4B,CAJhC;AAUE,gBAAA,KAAK,EAAEI;AAVT;AADF,cADF;AAgBD;AAtBH,qBACUN,SAAS,CAACW,QAAV,EADV,cACkC9B,IAAI,CAAC+B,EADvC,cAC6Cb,OAAO,CAACM,GADrD,cAC4DN,OAAO,CAACc,QADpE,EADF;AA0BD,OApCA;AARH,OACOpB,KAAK,CAACkB,QAAN,EADP,CADF;AAgDD,GAjDO,CAAR;AAkDD,CA7DD;;AA+DAhC,QAAQ,CAACmC,SAAT,GAAqB;AACnBlC,EAAAA,OAAO,EAAEmC,SAAS,CAACC,KAAV,CAAgB,EAAhB,CADU;AAEnBnC,EAAAA,IAAI,EAAEkC,SAAS,CAACC,KAAV,CAAgB,EAAhB,CAFa;AAGnBlC,EAAAA,QAAQ,EAAEiC,SAAS,CAACE,IAHD;AAInBlC,EAAAA,QAAQ,EAAEgC,SAAS,CAACC,KAAV,CAAgB,EAAhB,CAJS;AAKnBhC,EAAAA,IAAI,EAAE+B,SAAS,CAACG,OAAV,CAAkBH,SAAS,CAACI,MAA5B;AALa,CAArB;AAQA,8BAAeC,IAAI,CAACzC,QAAD,CAAnB;;;;"}