adminizer 5.0.0-build.2 → 5.0.0-build.21

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 (300) hide show
  1. package/assets/abnfDiagram-VCTEODGH-CkmsvdDi.js +1 -0
  2. package/assets/add-CESPH_aI.js +1 -0
  3. package/assets/add-group-CQ4Xm8Ru.js +1 -0
  4. package/assets/add-user-B-QNjR4B.js +1 -0
  5. package/assets/ai-assistant/agent.es.js +28362 -0
  6. package/assets/app-C5Ju5Zra.css +1 -0
  7. package/assets/app-Ca5yUSBv.js +138 -0
  8. package/assets/arc-B-Dt8YNl.js +1 -0
  9. package/assets/architectureDiagram-5GKGNRK7-Ca58kq-l.js +36 -0
  10. package/assets/asmcrypto-DZeQH0LC.js +1 -0
  11. package/assets/blockDiagram-NRAW4CY4-CuqE52IG.js +129 -0
  12. package/assets/c4Diagram-UCG6FXSJ-Cx8z-0Bw.js +38 -0
  13. package/assets/catalog-CkSbxvx0.js +6 -0
  14. package/assets/channel-C9z6Pi_j.js +1 -0
  15. package/assets/chunk-2Q5K7J3B-CXISVKTC.js +1 -0
  16. package/assets/chunk-5VM5RSS4-DYGeeVYe.js +15 -0
  17. package/assets/chunk-F27PBJKO-BeY-dbKj.js +1 -0
  18. package/assets/chunk-G27WJ6UU-DeX_eH7C.js +231 -0
  19. package/assets/chunk-JWPE2WC7-DaxI9q0u.js +1 -0
  20. package/assets/chunk-LCL6LL3I-B7PkaEz_.js +206 -0
  21. package/assets/chunk-POPQ4Y6H-lwu6ZpsN.js +1 -0
  22. package/assets/chunk-SVP7TREG-CVFllgl1.js +88 -0
  23. package/assets/chunk-XXDRQBXY-DDLN0rcg.js +1 -0
  24. package/assets/classDiagram-DTDB5LWJ-BKtCIC3B.js +1 -0
  25. package/assets/classDiagram-v2-JRS7N3AN-BKtCIC3B.js +1 -0
  26. package/assets/controls/ckeditor.es.js +9370 -9306
  27. package/assets/controls/handsontable.es.js +11971 -11938
  28. package/assets/controls/jsoneditor.es.js +13104 -13008
  29. package/assets/controls/leaflet.es.js +1023 -1004
  30. package/assets/controls/toast-ui.es.js +1843 -1834
  31. package/assets/cose-bilkent-JH36ORCC-CWRyUkhQ.js +1 -0
  32. package/assets/cynefin-OW5HDTMX-B1iLDXCC.js +166 -0
  33. package/assets/cynefinDiagram-5FMLGOSQ-DaXQHr3l.js +62 -0
  34. package/assets/cytoscape.esm-yzknjiTM.js +321 -0
  35. package/assets/dagre-3AP2YEHR-DFORa4Hz.js +4 -0
  36. package/assets/dashboard-Ssa1_Of3.js +3 -0
  37. package/assets/debounce-B3mXI_sx.js +1 -0
  38. package/assets/defaultLocale-DX6XiGOO.js +1 -0
  39. package/assets/diagram-S7CK7UJ4-CgP6KBo0.js +30 -0
  40. package/assets/diagram-UQ7AKVKN-oYfQe6w0.js +41 -0
  41. package/assets/diagram-VSXAHHWV-DfCU5wgt.js +3 -0
  42. package/assets/diagram-VX7I27RA-BITJVrNY.js +24 -0
  43. package/assets/diagram-Z3DM3KII-D8J9Ssjy.js +24 -0
  44. package/assets/docs-DHMt_Rq1.js +1 -0
  45. package/assets/ebnfDiagram-PWID7BFC-qpNmoYgx.js +1 -0
  46. package/assets/erDiagram-SSCWMZ5O-DDF-Y0zs.js +99 -0
  47. package/assets/flowDiagram-A5DVABFB-CjKVkR9T.js +168 -0
  48. package/assets/ganttDiagram-EL5Y4UJY-BXGQ53w6.js +292 -0
  49. package/assets/gitGraphDiagram-WWUBYQGX-BLMevdLh.js +106 -0
  50. package/assets/history-tBOo2gd5.js +1 -0
  51. package/assets/infoDiagram-RXCK75RN-BAnPdnyw.js +2 -0
  52. package/assets/init-Gi6I4Gst.js +1 -0
  53. package/assets/init-user-DrNUHa6r.js +1 -0
  54. package/assets/isObject-DL-BuaBl.js +1 -0
  55. package/assets/ishikawaDiagram-5VMMS53U-PnL0Z4Li.js +70 -0
  56. package/assets/journeyDiagram-EYS64GPL-CLcsCSwF.js +139 -0
  57. package/assets/kanban-definition-3QL26DDD-C2eU3uBE.js +89 -0
  58. package/assets/katex-HP8lGamR.js +257 -0
  59. package/assets/layout-BXoYdHdx.js +1 -0
  60. package/assets/linear-BSzrP0oP.js +1 -0
  61. package/assets/list-CLg6xeIK.js +4 -0
  62. package/assets/login-Ce7o3-o_.js +1 -0
  63. package/assets/manifest.json +834 -58
  64. package/assets/{media-manager-BDbpSSjH.js → media-manager-D7G1P3fz.js} +3 -3
  65. package/assets/mermaid.core-aKMJHeEk.js +310 -0
  66. package/assets/mindmap-definition-FBJOCRG2-Dzbz5ghA.js +96 -0
  67. package/assets/module-BsXph_pA.js +1 -0
  68. package/assets/notification-D-Zz1gF_.js +20 -0
  69. package/assets/ordinal-Cboi1Yqb.js +1 -0
  70. package/assets/pegDiagram-XKGWAZYB-BTdWkU0Y.js +1 -0
  71. package/assets/pieDiagram-E7YTZNPT-Dnw8-TB-.js +39 -0
  72. package/assets/quadrantDiagram-AXDQQJYC-CALzLlg9.js +7 -0
  73. package/assets/railroadDiagram-O6MQD6OU-CTA1vzcv.js +1 -0
  74. package/assets/register-CNnBkzej.js +1 -0
  75. package/assets/requirementDiagram-EFPCY7ZU-UX2CF5HA.js +84 -0
  76. package/assets/ru-CoNgAwFK.js +1 -0
  77. package/assets/sankeyDiagram-P5KCCOFB-4aPp3ATV.js +40 -0
  78. package/assets/sequenceDiagram-WJ2MYXX4--kltkwJw.js +162 -0
  79. package/assets/sizeCapture-X5ZJPWSS-Ca9-g5QY.js +1 -0
  80. package/assets/stateDiagram-HBIQ2CUA-Diaf5Q7I.js +1 -0
  81. package/assets/stateDiagram-v2-4QOOHH4V-C6FlRp7u.js +1 -0
  82. package/assets/swimlanes-XN3QIQJK-DhqX_myE.js +1 -0
  83. package/assets/swimlanesDiagram-VK2B7HYN-i_3LTEBk.js +8 -0
  84. package/assets/timeline-definition-24CTP7MA-CwkJQbhq.js +120 -0
  85. package/assets/toNumber-DZb-r9sy.js +1 -0
  86. package/assets/use-appearance-DC-DESKB.js +1 -0
  87. package/assets/user-filters-list-W47DTBp2.js +1 -0
  88. package/assets/vennDiagram-4TSXK5OY-BNM3_cVS.js +34 -0
  89. package/assets/wardleyDiagram-VM6X3IG4-BODb1NP8.js +78 -0
  90. package/assets/welcome-BeBm6NIi.js +1 -0
  91. package/assets/with-app-layout-B90DtzYC.js +31 -0
  92. package/assets/xychartDiagram-S5SC5T6Z-DthqEh3g.js +7 -0
  93. package/controllers/access-rights/permissionOptions.d.ts +2 -0
  94. package/controllers/access-rights/permissionOptions.js +23 -0
  95. package/controllers/add.js +1 -1
  96. package/controllers/addGroup.js +15 -6
  97. package/controllers/ai/AiAgentController.d.ts +66 -0
  98. package/controllers/ai/AiAgentController.js +435 -0
  99. package/controllers/ai/AiAssistantController.d.ts +0 -4
  100. package/controllers/ai/AiAssistantController.js +4 -78
  101. package/controllers/catalog/FrontendCatalogAdapter.d.ts +1 -1
  102. package/controllers/catalog/FrontentCatalogAdapter.d.ts +1 -1
  103. package/controllers/docs/index.d.ts +22 -0
  104. package/controllers/docs/index.js +126 -0
  105. package/controllers/edit.js +1 -1
  106. package/controllers/editGroup.js +15 -6
  107. package/controllers/feedback/feedbackController.d.ts +1 -1
  108. package/controllers/filter-fields/savedFilters.js +1 -1
  109. package/controllers/history-actions/HistoryController.d.ts +1 -1
  110. package/controllers/history-actions/HistoryController.js +6 -6
  111. package/controllers/list.js +1 -1
  112. package/controllers/login.js +1 -1
  113. package/controllers/media-manager/mediaManagerAdapter.d.ts +1 -1
  114. package/controllers/notifications/NotificationController.js +14 -8
  115. package/controllers/view.js +2 -2
  116. package/controllers/widgets/filterInfo.js +1 -1
  117. package/helpers/accessRightsHelper.d.ts +11 -4
  118. package/helpers/accessRightsHelper.js +82 -12
  119. package/helpers/assetVersionHelper.d.ts +14 -0
  120. package/helpers/assetVersionHelper.js +42 -0
  121. package/helpers/configHelper.d.ts +3 -3
  122. package/helpers/configHelper.js +20 -18
  123. package/helpers/controllerHelper.d.ts +3 -2
  124. package/helpers/controllerHelper.js +25 -15
  125. package/helpers/fieldsHelper.d.ts +2 -2
  126. package/helpers/fieldsHelper.js +3 -3
  127. package/helpers/filterDatetimeHelper.d.ts +1 -1
  128. package/helpers/inertiaActionsHelper.d.ts +3 -3
  129. package/helpers/inertiaActionsHelper.js +4 -5
  130. package/helpers/inertiaAddHelper.d.ts +5 -5
  131. package/helpers/inertiaAddHelper.js +7 -6
  132. package/helpers/inertiaGroupHelper.d.ts +3 -3
  133. package/helpers/inertiaGroupHelper.js +10 -2
  134. package/helpers/inertiaListHelper.d.ts +4 -4
  135. package/helpers/inertiaListHelper.js +7 -8
  136. package/helpers/inertiaMenuHelper.d.ts +2 -3
  137. package/helpers/inertiaMenuHelper.js +3 -26
  138. package/helpers/inertiaUserHelper.d.ts +3 -3
  139. package/helpers/menuHelper.d.ts +2 -2
  140. package/helpers/modelResourceHelper.d.ts +9 -0
  141. package/helpers/modelResourceHelper.js +43 -0
  142. package/helpers/navigationAccessHelper.d.ts +13 -0
  143. package/helpers/navigationAccessHelper.js +40 -0
  144. package/helpers/translationHelper.d.ts +2 -2
  145. package/index.d.ts +69 -58
  146. package/index.js +11 -0
  147. package/interfaces/adminpanelConfig.d.ts +18 -5
  148. package/interfaces/global.d.ts +6 -6
  149. package/interfaces/internalModelAccess.d.ts +1 -1
  150. package/interfaces/listQueryBuilder.d.ts +1 -1
  151. package/interfaces/types.d.ts +171 -2
  152. package/lib/Adminizer.d.ts +46 -26
  153. package/lib/Adminizer.js +37 -1
  154. package/lib/DataAccessor.d.ts +7 -6
  155. package/lib/DataAccessor.js +50 -48
  156. package/lib/MiddlewareManager.d.ts +1 -1
  157. package/lib/access-rights/AccessRightsHandler.d.ts +2 -2
  158. package/lib/admin-links/AdminLinkHandler.d.ts +72 -0
  159. package/lib/admin-links/AdminLinkHandler.js +175 -0
  160. package/lib/ai-assistant/AbstractAiConversationHistoryService.d.ts +39 -0
  161. package/lib/ai-assistant/AbstractAiConversationHistoryService.js +98 -0
  162. package/lib/ai-assistant/AbstractAiModelService.d.ts +140 -3
  163. package/lib/ai-assistant/AbstractAiModelService.js +154 -1
  164. package/lib/ai-assistant/AiAgentRunManager.d.ts +35 -0
  165. package/lib/ai-assistant/AiAgentRunManager.js +109 -0
  166. package/lib/ai-assistant/AiAssistantAgentSkillHandler.d.ts +58 -0
  167. package/lib/ai-assistant/AiAssistantAgentSkillHandler.js +87 -0
  168. package/lib/ai-assistant/AiAssistantHandler.d.ts +16 -5
  169. package/lib/ai-assistant/AiAssistantHandler.js +35 -1
  170. package/lib/ai-assistant/AiAssistantUiMethodHandler.d.ts +60 -0
  171. package/lib/ai-assistant/AiAssistantUiMethodHandler.js +138 -0
  172. package/lib/ai-assistant/builtinAgentSkills.d.ts +9 -0
  173. package/lib/ai-assistant/builtinAgentSkills.js +256 -0
  174. package/lib/ai-assistant/jsonSafe.d.ts +13 -0
  175. package/lib/ai-assistant/jsonSafe.js +81 -0
  176. package/lib/app-manager/AdminizerApp.d.ts +40 -11
  177. package/lib/app-manager/AppManager.d.ts +2 -2
  178. package/lib/app-manager/AppManager.js +54 -50
  179. package/lib/app-manager/AssetHandler.d.ts +2 -2
  180. package/lib/app-manager/ConfigLayerHandler.d.ts +2 -2
  181. package/lib/app-manager/ControllerHandler.d.ts +2 -2
  182. package/lib/catalog/AbstractCatalog.d.ts +1 -1
  183. package/lib/catalog/CatalogHandler.d.ts +1 -1
  184. package/lib/controls/ControlsHandler.d.ts +1 -1
  185. package/lib/controls/codeEditor/MonacoEditor.d.ts +1 -1
  186. package/lib/controls/geojsoneditor/GeoEditor.d.ts +1 -1
  187. package/lib/controls/jsoneditor/JsonEditor.d.ts +1 -1
  188. package/lib/controls/markdown/ToastUiEditor.d.ts +1 -1
  189. package/lib/controls/table/Handsontable.d.ts +1 -1
  190. package/lib/controls/wysiwyg/CKeditor.d.ts +1 -1
  191. package/lib/docs/AbstractDocumentation.d.ts +100 -0
  192. package/lib/docs/AbstractDocumentation.js +108 -0
  193. package/lib/docs/DocumentationHandler.d.ts +100 -0
  194. package/lib/docs/DocumentationHandler.js +198 -0
  195. package/lib/docs/FileDocumentation.d.ts +47 -0
  196. package/lib/docs/FileDocumentation.js +189 -0
  197. package/lib/docs/docsAgentSkills.d.ts +10 -0
  198. package/lib/docs/docsAgentSkills.js +93 -0
  199. package/lib/feedback/FeedbackHandler.d.ts +2 -2
  200. package/lib/filters/ConditionValidator.d.ts +1 -1
  201. package/lib/filters/FilterCustomFieldHandler.d.ts +2 -2
  202. package/lib/filters/FilterService.d.ts +4 -4
  203. package/lib/filters/FilterService.js +4 -3
  204. package/lib/filters/index.d.ts +6 -6
  205. package/lib/history-actions/AbstractHistoryAdapter.d.ts +6 -6
  206. package/lib/history-actions/AbstractHistoryAdapter.js +11 -9
  207. package/lib/history-actions/DefaultHistoryAdapter.d.ts +4 -4
  208. package/lib/history-actions/HistoryHandler.d.ts +1 -1
  209. package/lib/list-query-builder/ListQueryBuilder.d.ts +7 -7
  210. package/lib/media-manager/AbstractMediaManager.d.ts +2 -2
  211. package/lib/media-manager/MediaManagerHandler.d.ts +1 -1
  212. package/lib/media-manager/Thumb.d.ts +1 -1
  213. package/lib/media-manager/helpers/MediaManagerHelper.d.ts +5 -5
  214. package/lib/model/AbstractModel.d.ts +11 -4
  215. package/lib/model/InternalModelAccessFactory.d.ts +2 -2
  216. package/lib/model/ModelHandler.d.ts +50 -5
  217. package/lib/model/ModelHandler.js +107 -8
  218. package/lib/model/adapter/sequelize.d.ts +7 -5
  219. package/lib/model/adapter/sequelize.js +79 -46
  220. package/lib/model/adapter/typeorm.d.ts +2 -2
  221. package/lib/model/adapter/typeorm.js +1 -1
  222. package/lib/model/internalModelRepository.d.ts +2 -2
  223. package/lib/notifications/AbstractNotificationService.d.ts +4 -4
  224. package/lib/notifications/GeneralNotificationService.d.ts +2 -2
  225. package/lib/notifications/GeneralNotificationService.js +6 -5
  226. package/lib/notifications/NotificationHandler.d.ts +2 -2
  227. package/lib/notifications/SystemNotificationService.d.ts +2 -2
  228. package/lib/notifications/SystemNotificationService.js +1 -1
  229. package/lib/requestProcessor.d.ts +1 -1
  230. package/lib/ui-i18n/uiTranslationKeys.d.ts +2 -1
  231. package/lib/ui-i18n/uiTranslationKeys.js +42 -1
  232. package/lib/widgets/abstractAction.d.ts +1 -1
  233. package/lib/widgets/abstractCustom.d.ts +2 -2
  234. package/lib/widgets/abstractInfo.d.ts +1 -1
  235. package/lib/widgets/abstractLink.d.ts +2 -2
  236. package/lib/widgets/abstractSwitch.d.ts +1 -1
  237. package/lib/widgets/abstractWidgetBase.d.ts +1 -1
  238. package/lib/widgets/widgetHandler.d.ts +9 -9
  239. package/lib/widgets/widgetHandler.js +5 -1
  240. package/models/Filter.d.ts +1 -1
  241. package/models/FilterColumn.d.ts +1 -1
  242. package/models/Group.d.ts +3 -2
  243. package/models/HistoryActions.d.ts +1 -1
  244. package/models/MediaManagerAP.d.ts +2 -2
  245. package/models/MediaManagerAssociationsAP.d.ts +1 -1
  246. package/models/MediaManagerMetaAP.d.ts +1 -1
  247. package/models/User.d.ts +2 -2
  248. package/models/UserNotification.d.ts +1 -1
  249. package/package.json +29 -20
  250. package/policies/authPolicies.js +6 -6
  251. package/policies/permissionResolvers.d.ts +1 -0
  252. package/policies/permissionResolvers.js +3 -0
  253. package/services/FeedService.d.ts +3 -3
  254. package/system/Router.d.ts +1 -1
  255. package/system/Router.js +27 -1
  256. package/system/bindAccessRights.d.ts +1 -1
  257. package/system/bindAccessRights.js +2 -3
  258. package/system/bindAuthorization.d.ts +1 -1
  259. package/system/bindControls.d.ts +1 -1
  260. package/system/bindCors.d.ts +1 -1
  261. package/system/bindCustomFilterHandlers.d.ts +1 -1
  262. package/system/bindDashboardWidgets.d.ts +1 -1
  263. package/system/bindDev.d.ts +1 -1
  264. package/system/bindDocs.d.ts +13 -0
  265. package/system/bindDocs.js +77 -0
  266. package/system/bindHistory.d.ts +1 -1
  267. package/system/bindInertia.d.ts +1 -1
  268. package/system/bindInertia.js +23 -1
  269. package/system/bindMediaManager.d.ts +1 -1
  270. package/system/bindNotifications.d.ts +1 -1
  271. package/system/bindReqFunctions.d.ts +1 -1
  272. package/system/bindTranslations.d.ts +1 -1
  273. package/system/buildInternalModelAccess.d.ts +3 -3
  274. package/system/buildInternalModelAccess.js +5 -2
  275. package/system/defaults.d.ts +1 -1
  276. package/system/routePolicies.d.ts +1 -1
  277. package/system/systemModelContracts.d.ts +1 -1
  278. package/system/systemModelContracts.js +11 -7
  279. package/system/validateSystemModels.d.ts +1 -1
  280. package/system/validateSystemModels.js +29 -9
  281. package/assets/add-group-BdHFzKng.js +0 -1
  282. package/assets/add-p6yGCoZ7.js +0 -1
  283. package/assets/add-user-CDspCLu4.js +0 -1
  284. package/assets/app-DNXiApCk.css +0 -1
  285. package/assets/app-layout-DCr_-JY3.js +0 -1
  286. package/assets/app.js +0 -138
  287. package/assets/catalog-XN-_p9TB.js +0 -6
  288. package/assets/dashboard-CHZO2QFY.js +0 -3
  289. package/assets/debounce-BMmXVQ06.js +0 -1
  290. package/assets/history-CQd0FojQ.js +0 -1
  291. package/assets/init-user-8aUohVDq.js +0 -1
  292. package/assets/list-PHWgTHsg.js +0 -4
  293. package/assets/login-CO4laf6m.js +0 -1
  294. package/assets/module-DVyQtIxm.js +0 -1
  295. package/assets/notification-B87XG8nQ.js +0 -20
  296. package/assets/register-DBYIMXGQ.js +0 -1
  297. package/assets/ru-rYKdQbWF.js +0 -1
  298. package/assets/use-appearance-_EbbjHTh.js +0 -1
  299. package/assets/user-filters-list-BRzDbPkx.js +0 -1
  300. package/assets/welcome-DiXmrTgc.js +0 -1
@@ -0,0 +1,4 @@
1
+ import{_ as m,ao as x,c as k,a8 as O,l as p,ap as A,aq as Y,ar as b,as as _,at as z,au as H,av as D,aw as J,ax as T,ay as X,aj as R,ah as F,az as j,aA as q}from"./mermaid.core-aKMJHeEk.js";import{l as W}from"./layout-BXoYdHdx.js";import"./app-Ca5yUSBv.js";import"./isObject-DL-BuaBl.js";import"./toNumber-DZb-r9sy.js";var C=m((t,e,r)=>Math.max(e,Math.min(r,t)),"clamp"),P=m((t="TB")=>{switch(t){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";default:return"top"}},"getDefaultSelfLoopSide"),U=m(t=>t==="flowchart"||t==="flowchart-v2"||t==="stateDiagram"||t==="er"||t==="classDiagram","shouldMergeSelfLoopSegments"),K=["x","y","width","height","labelBBox","intersect","calcIntersect","diff","clusterNode"],Q=m((t,e,r,d,a)=>{const f=[],h=new Set;if(r.forEach(({start:i,end:o})=>{i!==d&&h.add(i),o!==d&&h.add(o)}),h.forEach(i=>{const o=t.node(i);typeof o?.x=="number"&&typeof o?.y=="number"&&f.push(o)}),f.length===0&&r.forEach(({edge:i})=>{(i.points??[]).forEach(o=>{typeof o?.x=="number"&&typeof o?.y=="number"&&f.push(o)})}),f.length===0)return P(a);const c=f.reduce((i,o)=>({x:i.x+o.x/f.length,y:i.y+o.y/f.length}),{x:0,y:0}),l=c.x-e.x,s=c.y-e.y;return Math.abs(l)>Math.abs(s)?l>0?"right":"left":Math.abs(s)>0?s>0?"bottom":"top":P(a)},"getSelfLoopSide"),V=m((t,e="top",r=0,d=0)=>{const a=t.x,f=t.y-r,h=t.width/2,c=t.height/2,l=Math.max(36,Math.min(100,t.width*.8)),s=C(Math.max(d,t.width*.35),36,l),i=C(Math.min(t.width,t.height)*.45,24,48);switch(e){case"bottom":{const o=f+c;return[{x:a-s/2,y:o},{x:a-s/2,y:o+i},{x:a+s/2,y:o+i},{x:a+s/2,y:o}]}case"right":{const o=a+h;return[{x:o,y:f-s/2},{x:o+i,y:f-s/2},{x:o+i,y:f+s/2},{x:o,y:f+s/2}]}case"left":{const o=a-h;return[{x:o,y:f-s/2},{x:o-i,y:f-s/2},{x:o-i,y:f+s/2},{x:o,y:f+s/2}]}default:{const o=f-c;return[{x:a-s/2,y:o},{x:a-s/2,y:o-i},{x:a+s/2,y:o-i},{x:a+s/2,y:o}]}}},"getSelfLoopPoints"),Z=m((t,e,r="top",d=0,a={})=>{const h=t.x,c=t.y-d,l=a.width??0,s=a.height??0;switch(r){case"bottom":return{x:h,y:Math.max(...e.map(i=>i.y))+s/2+4};case"right":return{x:Math.max(...e.map(i=>i.x))+l/2+4,y:c};case"left":return{x:Math.min(...e.map(i=>i.x))-l/2-4,y:c};default:return{x:h,y:Math.min(...e.map(i=>i.y))-s/2-4}}},"getSelfLoopLabelPosition"),B=m((t,e=0,{mergeSelfLoops:r=!0}={})=>{const d=new Map,a=[],f=t.graph()?.rankdir;return t.edges().forEach(h=>{const c=t.edge(h);if(r&&c.selfLoop){const l=c.selfLoop.id;d.has(l)||d.set(l,[]),d.get(l).push({edge:c,start:h.v,end:h.w})}else a.push({edge:c,start:h.v,end:h.w})}),d.forEach(h=>{if(h.length!==3){h.forEach(u=>a.push(u));return}h.sort((u,E)=>u.edge.selfLoop.order-E.edge.selfLoop.order);const[c,l,s]=h,i=c.edge.originalEdge??l.edge.originalEdge??s.edge.originalEdge??l.edge,o=t.node(i.start);if(!o){h.forEach(u=>a.push(u));return}const n={width:l.edge.width,height:l.edge.height},L=Q(t,o,h,i.start,f),w=V(o,L,e,n.width??0),y=Z(o,w,L,e,n),g={...l.edge,...i,id:i.id,points:w,start:i.start,end:i.end,x:y.x,y:y.y,width:n.width,height:n.height,labelStyle:l.edge.labelStyle,fromCluster:c.edge.fromCluster??l.edge.fromCluster??s.edge.fromCluster,toCluster:c.edge.toCluster??l.edge.toCluster??s.edge.toCluster};delete g.selfLoop,delete g.originalEdge,a.push({edge:g,start:g.start,end:g.end})}),a},"getEdgesToRender"),I=m(async({element:t,graph:e,diagramType:r,id:d,parentCluster:a,siteConfig:f})=>{const h=e.graph().rankdir;p.trace("Dir in recursive render - dir:",h);const{clusters:c,edgePaths:l,edgeLabels:s,nodes:i,rootGroups:o}=_(t,{edgePathsClass:"edgePaths"});e.nodes()?p.info("Recursive render XXX",e.nodes()):p.info("No nodes found for",e),e.edges().length>0&&p.info("Recursive edges",e.edge(e.edges()[0]));const n=U(r);await Promise.all(e.nodes().map(async function(y){const g=e.node(y);if(a!==void 0){const u=JSON.parse(JSON.stringify(a.clusterData));p.trace(`Setting data for parent cluster XXX
2
+ Node.id = `,y,`
3
+ data=`,u.height,`
4
+ Parent cluster`,a.height),e.setNode(a.id,u),e.parent(y)||(p.trace("Setting parent",y,a.id),e.setParent(y,a.id,u))}if(p.info("(Insert) Node XXX"+y+": "+JSON.stringify(e.node(y))),g?.clusterNode){p.info("Cluster identified XBX",y,g.width,e.node(y));const{ranksep:u,nodesep:E}=e.graph();g.graph.setGraph({...g.graph.graph(),ranksep:u+25,nodesep:E});const S=await oe({element:i,graph:g.graph,diagramType:r,id:d,parentCluster:e.node(y),siteConfig:f}),N=S.elem;z(g,N),g.diff=S.diff||0,p.info("New compound node after recursive render XAX",y,"width",g.width,"height",g.height),H(N,g)}else e.children(y).length>0?(p.trace("Cluster - the non recursive path XBX",y,g.id,g,g.width,"Graph:",e),p.trace(D(g.id,e)),b.set(g.id,{id:D(g.id,e),node:g})):(p.trace("Node - the non recursive path XAX",y,i,e.node(y),h),await J(i,e.node(y),{config:f,dir:h}))})),await m(async()=>{const y=e.edges().map(async function(g){const u=e.edge(g.v,g.w,g.name);if(p.info("Edge "+g.v+" -> "+g.w+": "+JSON.stringify(g)),p.info("Edge "+g.v+" -> "+g.w+": ",g," ",JSON.stringify(e.edge(g))),p.info("Fix",b,"ids:",g.v,g.w,"Translating: ",b.get(g.v),b.get(g.w)),n&&u.selfLoop){if(u.selfLoop.order!==1)return;const E={...u.originalEdge,...u,id:u.selfLoop.id,startLabelLeft:u.originalEdge?.startLabelLeft??u.startLabelLeft,startLabelRight:u.originalEdge?.startLabelRight??u.startLabelRight,endLabelLeft:u.originalEdge?.endLabelLeft??u.endLabelLeft,endLabelRight:u.originalEdge?.endLabelRight??u.endLabelRight};await X(s,E),u.width=E.width,u.height=E.height,u.labelStyle=E.labelStyle;return}await X(s,u)});await Promise.all(y)},"processEdges")();const{subGraphTitleTotalMargin:w}=T(f);return{elem:o,graph:e,groups:{clusters:c,edgePaths:l,edgeLabels:s,nodes:i,rootGroups:o},diagramType:r,id:d,mergeSelfLoops:n,subGraphTitleTotalMargin:w}},"measureDagreGraph"),M=m(t=>{p.info("############################################# XXX"),p.info("### Layout ### XXX"),p.info("############################################# XXX"),W(t)},"runDagreGraphLayout"),$=m((t,e,r)=>{const d=t.node(e);if(!d)return;const a={...d};return d?.clusterNode?a.y=(d.y??0)+r:t.children(e).length>0?a.height=(d.height??0)+r:a.y=(d.y??0)+r/2,a},"normalizeDagreNode"),v=m((t,e)=>{K.forEach(r=>{e[r]!==void 0&&(t[r]=e[r])})},"applyDagreNodeLayout"),ee=m((t,e,r,d)=>({...t,start:t.start??e,end:t.end??r,points:(t.points??[]).map(a=>({...a,y:typeof a.y=="number"?a.y+d:a.y}))}),"normalizeDagreEdge"),te=m((t,e)=>{const{graph:r,mergeSelfLoops:d,subGraphTitleTotalMargin:a=0}=e,f=new Map(t.nodes.map(c=>[c.id,c]));x(r).forEach(c=>{const l=$(r,c,a);if(!l)return;v(r.node(c),l);const s=f.get(c);s&&v(s,l)});const h=a/2;return t.edges=B(r,h,{mergeSelfLoops:d}).map(({edge:c,start:l,end:s})=>ee(c,l,s,h)),t},"applyDagreLayoutResult"),re=m(async({elem:t,graph:e,groups:{clusters:r,edgePaths:d},diagramType:a,id:f,mergeSelfLoops:h,subGraphTitleTotalMargin:c})=>{let l=0;await Promise.all(x(e).map(async function(o){const n=e.node(o);if(p.info("Position XBX => "+o+": ("+n.x,","+n.y,") width: ",n.width," height: ",n.height),n?.clusterNode)n.y+=c,p.info("A tainted cluster node XBX1",o,n.id,n.width,n.height,n.x,n.y,e.parent(o)),b.get(n.id).node=n,R(n);else if(e.children(o).length>0){p.info("A pure cluster node XBX1",o,n.id,n.x,n.y,n.width,n.height,e.parent(o)),n.height+=c,e.node(n.parentId);const L=n?.padding/2||0,w=n?.labelBBox?.height||0,y=w-L||0;p.debug("OffsetY",y,"labelHeight",w,"halfPadding",L),await F(r,n),b.get(n.id).node=n}else{const L=e.node(n.parentId);n.y+=c/2,p.info("A regular node XBX1 - using the padding",n.id,"parent",n.parentId,n.width,n.height,n.x,n.y,"offsetY",n.offsetY,"parent",L,L?.offsetY,n),R(n)}}));const s=c/2;return B(e,s,{mergeSelfLoops:h}).forEach(function({edge:o,start:n,end:L}){p.info("Edge "+n+" -> "+L+": "+JSON.stringify(o),o),o.points.forEach(u=>u.y+=s);const w=e.node(n),y=e.node(L),g=j(d,o,b,a,w,y,f);q(o,g)}),e.nodes().forEach(function(o){const n=e.node(o);p.info(o,n.type,n.diff),n.isGroup&&(l=n.diff)}),p.warn("Returning from recursive render XAX",t,l),{elem:t,diff:l}},"paintDagreLayoutCore"),oe=m(async t=>{const e=await I(t);return M(e.graph),await re(e)},"renderDagreSubgraph"),G=m(t=>{const e=new O({multigraph:!0,compound:!0}).setGraph({rankdir:t.direction,nodesep:t.config?.nodeSpacing||t.nodeSpacing||t.config?.flowchart?.nodeSpacing,ranksep:t.config?.rankSpacing||t.rankSpacing||t.config?.flowchart?.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});return t.nodes.forEach(r=>{e.setNode(r.id,{...r}),r.parentId&&e.setParent(r.id,r.parentId)}),p.debug("Edges:",t.edges),t.edges.forEach(r=>{if(r.start===r.end){const d=r.start,a=d+"---"+d+"---1",f=d+"---"+d+"---2",h=e.node(d);e.setNode(a,{domId:a,id:a,parentId:h.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),e.setParent(a,h.parentId),e.setNode(f,{domId:f,id:f,parentId:h.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),e.setParent(f,h.parentId);const c=structuredClone(r),l=structuredClone(r),s=structuredClone(r),i=structuredClone(r);l.originalEdge=c,l.selfLoop={id:c.id,order:0},s.originalEdge=c,s.selfLoop={id:c.id,order:1},i.originalEdge=c,i.selfLoop={id:c.id,order:2},l.label="",l.arrowTypeEnd="none",l.endLabelLeft="",l.endLabelRight="",l.startLabelLeft="",l.id=d+"-cyclic-special-1",s.startLabelRight="",s.startLabelLeft="",s.endLabelLeft="",s.endLabelRight="",s.arrowTypeStart="none",s.arrowTypeEnd="none",s.id=d+"-cyclic-special-mid",i.label="",i.startLabelRight="",i.startLabelLeft="",i.arrowTypeStart="none",h.isGroup&&(l.fromCluster=d,i.toCluster=d),i.id=d+"-cyclic-special-2",i.arrowTypeStart="none",e.setEdge(d,a,l,d+"-cyclic-special-0"),e.setEdge(a,f,s,d+"-cyclic-special-1"),e.setEdge(f,d,i,d+"-cyclic-special-2")}else e.setEdge(r.start,r.end,{...r},r.id)}),A(e),{graph:e}},"prepareLayoutForDagre"),ae=m(async(t,{element:e,preparedLayout:r})=>{const d=r??G(t),a=k(),f=await I({element:e,graph:d.graph,diagramType:t.type,id:t.diagramId,parentCluster:void 0,siteConfig:a});return d.measuredLayout=f,f},"measureDagreLayout"),ne=m((t,e)=>{const r=e.preparedLayout?.measuredLayout;if(!r)throw new Error("runDagreLayoutCore requires measureDagreLayout to run first");return M(r.graph),te(t,r),r},"runDagreLayoutCore"),se=m((t,{measure:e})=>x(e.graph).map(r=>e.graph.node(r)).filter(Boolean),"getDagrePaintNodes"),ie=m((t,e,{measure:r})=>t?r.graph.node(t):void 0,"getDagreEdgeNode"),he=Y({prepareLayout:G,measureLayout:ae,runLayoutCore:ne,paintOptions:{clusterDb:b,getNodes:se,getEdgeNode:ie,skipNode:m((t,{measure:e})=>!e.graph.hasNode(t.id),"skipNode"),isCluster:m((t,{measure:e})=>e.graph.hasNode(t.id)&&(e.graph.children(t.id)??[]).length>0,"isCluster")}});export{te as applyDagreLayoutResult,B as getEdgesToRender,ae as measureDagreLayout,G as prepareLayoutForDagre,he as render,ne as runDagreLayoutCore};
@@ -0,0 +1,3 @@
1
+ import{bO as we,bP as st,bQ as er,q as je,a as Bt,r as ie,j as M,I as tr,bR as rr,bS as nr,bT as or,bU as ir,d as $e,o as mt,t as yt,b as sr,u as ar,T as lr,bV as Oe,K as ur,N as cr,O as dr,Q as fr,bf as pr,b1 as hr,bW as gr,b2 as mr,b3 as yr,b4 as vr,b6 as br}from"./app-Ca5yUSBv.js";import{c as lt,w as wr}from"./with-app-layout-B90DtzYC.js";import"./use-appearance-DC-DESKB.js";var Ze={exports:{}},Me={},Be={exports:{}},xr=Be.exports,vt;function ut(){return vt||(vt=1,(function(r,c){(function(s,d){d(c)})(xr,(function(s){function d(H){return function(re,Z,Q,le,fe,he,u){return H(re,Z,u)}}function v(H){return function(re,Z,Q,le){if(!re||!Z||typeof re!="object"||typeof Z!="object")return H(re,Z,Q,le);var fe=le.get(re),he=le.get(Z);if(fe&&he)return fe===Z&&he===re;le.set(re,Z),le.set(Z,re);var u=H(re,Z,Q,le);return le.delete(re),le.delete(Z),u}}function w(H,G){var re={};for(var Z in H)re[Z]=H[Z];for(var Z in G)re[Z]=G[Z];return re}function O(H){return H.constructor===Object||H.constructor==null}function N(H){return typeof H.then=="function"}function D(H,G){return H===G||H!==H&&G!==G}var P="[object Arguments]",z="[object Boolean]",j="[object Date]",T="[object RegExp]",k="[object Map]",C="[object Number]",f="[object Object]",t="[object Set]",n="[object String]",e=Object.prototype.toString;function a(H){var G=H.areArraysEqual,re=H.areDatesEqual,Z=H.areMapsEqual,Q=H.areObjectsEqual,le=H.areRegExpsEqual,fe=H.areSetsEqual,he=H.createIsNestedEqual,u=he(p);function p(m,S,I){if(m===S)return!0;if(!m||!S||typeof m!="object"||typeof S!="object")return m!==m&&S!==S;if(O(m)&&O(S))return Q(m,S,u,I);var q=Array.isArray(m),F=Array.isArray(S);if(q||F)return q===F&&G(m,S,u,I);var X=e.call(m);return X!==e.call(S)?!1:X===j?re(m,S,u,I):X===T?le(m,S,u,I):X===k?Z(m,S,u,I):X===t?fe(m,S,u,I):X===f||X===P?N(m)||N(S)?!1:Q(m,S,u,I):X===z||X===C||X===n?D(m.valueOf(),S.valueOf()):!1}return p}function l(H,G,re,Z){var Q=H.length;if(G.length!==Q)return!1;for(;Q-- >0;)if(!re(H[Q],G[Q],Q,Q,H,G,Z))return!1;return!0}var o=v(l);function h(H,G){return D(H.valueOf(),G.valueOf())}function g(H,G,re,Z){var Q=H.size===G.size;if(!Q)return!1;if(!H.size)return!0;var le={},fe=0;return H.forEach(function(he,u){if(Q){var p=!1,m=0;G.forEach(function(S,I){!p&&!le[m]&&(p=re(u,I,fe,m,H,G,Z)&&re(he,S,u,I,H,G,Z))&&(le[m]=!0),m++}),fe++,Q=p}}),Q}var x=v(g),R="_owner",_=Object.prototype.hasOwnProperty;function W(H,G,re,Z){var Q=Object.keys(H),le=Q.length;if(Object.keys(G).length!==le)return!1;for(var fe;le-- >0;){if(fe=Q[le],fe===R){var he=!!H.$$typeof,u=!!G.$$typeof;if((he||u)&&he!==u)return!1}if(!_.call(G,fe)||!re(H[fe],G[fe],fe,fe,H,G,Z))return!1}return!0}var B=v(W);function A(H,G){return H.source===G.source&&H.flags===G.flags}function U(H,G,re,Z){var Q=H.size===G.size;if(!Q)return!1;if(!H.size)return!0;var le={};return H.forEach(function(fe,he){if(Q){var u=!1,p=0;G.forEach(function(m,S){!u&&!le[p]&&(u=re(fe,m,he,S,H,G,Z))&&(le[p]=!0),p++}),Q=u}}),Q}var V=v(U),$=Object.freeze({areArraysEqual:l,areDatesEqual:h,areMapsEqual:g,areObjectsEqual:W,areRegExpsEqual:A,areSetsEqual:U,createIsNestedEqual:d}),Y=Object.freeze({areArraysEqual:o,areDatesEqual:h,areMapsEqual:x,areObjectsEqual:B,areRegExpsEqual:A,areSetsEqual:V,createIsNestedEqual:d}),K=a($);function se(H,G){return K(H,G,void 0)}var ae=a(w($,{createIsNestedEqual:function(){return D}}));function pe(H,G){return ae(H,G,void 0)}var J=a(Y);function ve(H,G){return J(H,G,new WeakMap)}var me=a(w(Y,{createIsNestedEqual:function(){return D}}));function xe(H,G){return me(H,G,new WeakMap)}function Le(H){return a(w($,H($)))}function Ee(H){var G=a(w(Y,H(Y)));return(function(re,Z,Q){return Q===void 0&&(Q=new WeakMap),G(re,Z,Q)})}s.circularDeepEqual=ve,s.circularShallowEqual=xe,s.createCustomCircularEqual=Ee,s.createCustomEqual=Le,s.deepEqual=se,s.sameValueZeroEqual=D,s.shallowEqual=pe,Object.defineProperty(s,"__esModule",{value:!0})}))})(Be,Be.exports)),Be.exports}var Ge={exports:{}},bt;function Ve(){if(bt)return Ge.exports;bt=1;function r(s){var d,v,w="";if(typeof s=="string"||typeof s=="number")w+=s;else if(typeof s=="object")if(Array.isArray(s)){var O=s.length;for(d=0;d<O;d++)s[d]&&(v=r(s[d]))&&(w&&(w+=" "),w+=v)}else for(v in s)s[v]&&(w&&(w+=" "),w+=v);return w}function c(){for(var s,d,v=0,w="",O=arguments.length;v<O;v++)(s=arguments[v])&&(d=r(s))&&(w&&(w+=" "),w+=d);return w}return Ge.exports=c,Ge.exports.clsx=c,Ge.exports}var te={},et,wt;function Sr(){return wt||(wt=1,et=function(c,s,d){return c===s?!0:c.className===s.className&&d(c.style,s.style)&&c.width===s.width&&c.autoSize===s.autoSize&&c.cols===s.cols&&c.draggableCancel===s.draggableCancel&&c.draggableHandle===s.draggableHandle&&d(c.verticalCompact,s.verticalCompact)&&d(c.compactType,s.compactType)&&d(c.layout,s.layout)&&d(c.margin,s.margin)&&d(c.containerPadding,s.containerPadding)&&c.rowHeight===s.rowHeight&&c.maxRows===s.maxRows&&c.isBounded===s.isBounded&&c.isDraggable===s.isDraggable&&c.isResizable===s.isResizable&&c.allowOverlap===s.allowOverlap&&c.preventCollision===s.preventCollision&&c.useCSSTransforms===s.useCSSTransforms&&c.transformScale===s.transformScale&&c.isDroppable===s.isDroppable&&d(c.resizeHandles,s.resizeHandles)&&d(c.resizeHandle,s.resizeHandle)&&c.onLayoutChange===s.onLayoutChange&&c.onDragStart===s.onDragStart&&c.onDrag===s.onDrag&&c.onDragStop===s.onDragStop&&c.onResizeStart===s.onResizeStart&&c.onResize===s.onResize&&c.onResizeStop===s.onResizeStop&&c.onDrop===s.onDrop&&d(c.droppingItem,s.droppingItem)&&d(c.innerRef,s.innerRef)}),et}var xt;function ke(){if(xt)return te;xt=1,Object.defineProperty(te,"__esModule",{value:!0}),te.bottom=D,te.childrenEqual=k,te.cloneLayout=P,te.cloneLayoutItem=T,te.collides=f,te.compact=t,te.compactItem=a,te.compactType=le,te.correctBounds=l,te.fastPositionEqual=C,te.fastRGLPropsEqual=void 0,te.getAllCollisions=g,te.getFirstCollision=h,te.getLayoutItem=o,te.getStatics=x,te.modifyLayout=z,te.moveElement=R,te.moveElementAwayFromCollision=_,te.noop=void 0,te.perc=W,te.resizeItemInDirection=xe,te.setTopLeft=Ee,te.setTransform=Le,te.sortLayoutItems=H,te.sortLayoutItemsByColRow=re,te.sortLayoutItemsByRowCol=G,te.synchronizeLayoutWithChildren=Z,te.validateLayout=Q,te.withLayoutItem=j;var r=ut(),c=s(we());function s(u){return u&&u.__esModule?u:{default:u}}function d(u,p){var m=Object.keys(u);if(Object.getOwnPropertySymbols){var S=Object.getOwnPropertySymbols(u);p&&(S=S.filter(function(I){return Object.getOwnPropertyDescriptor(u,I).enumerable})),m.push.apply(m,S)}return m}function v(u){for(var p=1;p<arguments.length;p++){var m=arguments[p]!=null?arguments[p]:{};p%2?d(Object(m),!0).forEach(function(S){w(u,S,m[S])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(m)):d(Object(m)).forEach(function(S){Object.defineProperty(u,S,Object.getOwnPropertyDescriptor(m,S))})}return u}function w(u,p,m){return(p=O(p))in u?Object.defineProperty(u,p,{value:m,enumerable:!0,configurable:!0,writable:!0}):u[p]=m,u}function O(u){var p=N(u,"string");return typeof p=="symbol"?p:p+""}function N(u,p){if(typeof u!="object"||!u)return u;var m=u[Symbol.toPrimitive];if(m!==void 0){var S=m.call(u,p);if(typeof S!="object")return S;throw new TypeError("@@toPrimitive must return a primitive value.")}return(p==="string"?String:Number)(u)}function D(u){let p=0,m;for(let S=0,I=u.length;S<I;S++)m=u[S].y+u[S].h,m>p&&(p=m);return p}function P(u){const p=Array(u.length);for(let m=0,S=u.length;m<S;m++)p[m]=T(u[m]);return p}function z(u,p){const m=Array(u.length);for(let S=0,I=u.length;S<I;S++)p.i===u[S].i?m[S]=p:m[S]=u[S];return m}function j(u,p,m){let S=o(u,p);return S?(S=m(T(S)),u=z(u,S),[u,S]):[u,null]}function T(u){return{w:u.w,h:u.h,x:u.x,y:u.y,i:u.i,minW:u.minW,maxW:u.maxW,minH:u.minH,maxH:u.maxH,moved:!!u.moved,static:!!u.static,isDraggable:u.isDraggable,isResizable:u.isResizable,resizeHandles:u.resizeHandles,isBounded:u.isBounded}}function k(u,p){return(0,r.deepEqual)(c.default.Children.map(u,m=>m?.key),c.default.Children.map(p,m=>m?.key))&&(0,r.deepEqual)(c.default.Children.map(u,m=>m?.props["data-grid"]),c.default.Children.map(p,m=>m?.props["data-grid"]))}te.fastRGLPropsEqual=Sr();function C(u,p){return u.left===p.left&&u.top===p.top&&u.width===p.width&&u.height===p.height}function f(u,p){return!(u.i===p.i||u.x+u.w<=p.x||u.x>=p.x+p.w||u.y+u.h<=p.y||u.y>=p.y+p.h)}function t(u,p,m,S){const I=x(u);let q=D(I);const F=H(u,p),X=Array(u.length);for(let ee=0,oe=F.length;ee<oe;ee++){let de=T(F[ee]);de.static||(de=a(I,de,p,m,F,S,q),q=Math.max(q,de.y+de.h),I.push(de)),X[u.indexOf(F[ee])]=de,de.moved=!1}return X}const n={x:"w",y:"h"};function e(u,p,m,S){const I=n[S];p[S]+=1;const q=u.map(F=>F.i).indexOf(p.i);for(let F=q+1;F<u.length;F++){const X=u[F];if(!X.static){if(X.y>p.y+p.h)break;f(p,X)&&e(u,X,m+p[I],S)}}p[S]=m}function a(u,p,m,S,I,q,F){const X=m==="vertical",ee=m==="horizontal";if(X)for(typeof F=="number"?p.y=Math.min(F,p.y):p.y=Math.min(D(u),p.y);p.y>0&&!h(u,p);)p.y--;else if(ee)for(;p.x>0&&!h(u,p);)p.x--;let oe;for(;(oe=h(u,p))&&!(m===null&&q);)if(ee?e(I,p,oe.x+oe.w,"x"):e(I,p,oe.y+oe.h,"y"),ee&&p.x+p.w>S)for(p.x=S-p.w,p.y++;p.x>0&&!h(u,p);)p.x--;return p.y=Math.max(p.y,0),p.x=Math.max(p.x,0),p}function l(u,p){const m=x(u);for(let S=0,I=u.length;S<I;S++){const q=u[S];if(q.x+q.w>p.cols&&(q.x=p.cols-q.w),q.x<0&&(q.x=0,q.w=p.cols),!q.static)m.push(q);else for(;h(m,q);)q.y++}return u}function o(u,p){for(let m=0,S=u.length;m<S;m++)if(u[m].i===p)return u[m]}function h(u,p){for(let m=0,S=u.length;m<S;m++)if(f(u[m],p))return u[m]}function g(u,p){return u.filter(m=>f(m,p))}function x(u){return u.filter(p=>p.static)}function R(u,p,m,S,I,q,F,X,ee){if(p.static&&p.isDraggable!==!0||p.y===S&&p.x===m)return u;"Moving element ".concat(p.i," to [").concat(String(m),",").concat(String(S),"] from [").concat(p.x,",").concat(p.y,"]");const oe=p.x,de=p.y;typeof m=="number"&&(p.x=m),typeof S=="number"&&(p.y=S),p.moved=!0;let ge=H(u,F);(F==="vertical"&&typeof S=="number"?de>=S:F==="horizontal"&&typeof m=="number"&&oe>=m)&&(ge=ge.reverse());const i=g(ge,p),y=i.length>0;if(y&&ee)return P(u);if(y&&q)return"Collision prevented on ".concat(p.i,", reverting."),p.x=oe,p.y=de,p.moved=!1,u;for(let b=0,E=i.length;b<E;b++){const L=i[b];"Resolving collision between ".concat(p.i," at [").concat(p.x,",").concat(p.y,"] and ").concat(L.i," at [").concat(L.x,",").concat(L.y,"]"),!L.moved&&(L.static?u=_(u,L,p,I,F):u=_(u,p,L,I,F))}return u}function _(u,p,m,S,I,q){const F=I==="horizontal",X=I==="vertical",ee=p.static;if(S){S=!1;const ge={x:F?Math.max(p.x-m.w,0):m.x,y:X?Math.max(p.y-m.h,0):m.y,w:m.w,h:m.h,i:"-1"},be=h(u,ge),i=be&&be.y+be.h>p.y,y=be&&p.x+p.w>be.x;if(be){if(i&&X)return R(u,m,void 0,m.y+1,S,ee,I);if(i&&I==null)return p.y=m.y,m.y=m.y+m.h,u;if(y&&F)return R(u,p,m.x,void 0,S,ee,I)}else return"Doing reverse collision on ".concat(m.i," up to [").concat(ge.x,",").concat(ge.y,"]."),R(u,m,F?ge.x:void 0,X?ge.y:void 0,S,ee,I)}const oe=F?m.x+1:void 0,de=X?m.y+1:void 0;return oe==null&&de==null?u:R(u,m,F?m.x+1:void 0,X?m.y+1:void 0,S,ee,I)}function W(u){return u*100+"%"}const B=(u,p,m,S)=>u+m>S?p:m,A=(u,p,m)=>u<0?p:m,U=u=>Math.max(0,u),V=u=>Math.max(0,u),$=(u,p,m)=>{let{left:S,height:I,width:q}=p;const F=u.top-(I-u.height);return{left:S,width:q,height:A(F,u.height,I),top:V(F)}},Y=(u,p,m)=>{let{top:S,left:I,height:q,width:F}=p;return{top:S,height:q,width:B(u.left,u.width,F,m),left:U(I)}},K=(u,p,m)=>{let{top:S,height:I,width:q}=p;const F=u.left-(q-u.width);return{height:I,width:F<0?u.width:B(u.left,u.width,q,m),top:V(S),left:U(F)}},se=(u,p,m)=>{let{top:S,left:I,height:q,width:F}=p;return{width:F,left:I,height:A(S,u.height,q),top:V(S)}},me={n:$,ne:function(){return $(arguments.length<=0?void 0:arguments[0],Y(...arguments))},e:Y,se:function(){return se(arguments.length<=0?void 0:arguments[0],Y(...arguments))},s:se,sw:function(){return se(arguments.length<=0?void 0:arguments[0],K(...arguments))},w:K,nw:function(){return $(arguments.length<=0?void 0:arguments[0],K(...arguments))}};function xe(u,p,m,S){const I=me[u];return I?I(p,v(v({},p),m),S):m}function Le(u){let{top:p,left:m,width:S,height:I}=u;const q="translate(".concat(m,"px,").concat(p,"px)");return{transform:q,WebkitTransform:q,MozTransform:q,msTransform:q,OTransform:q,width:"".concat(S,"px"),height:"".concat(I,"px"),position:"absolute"}}function Ee(u){let{top:p,left:m,width:S,height:I}=u;return{top:"".concat(p,"px"),left:"".concat(m,"px"),width:"".concat(S,"px"),height:"".concat(I,"px"),position:"absolute"}}function H(u,p){return p==="horizontal"?re(u):p==="vertical"?G(u):u}function G(u){return u.slice(0).sort(function(p,m){return p.y>m.y||p.y===m.y&&p.x>m.x?1:p.y===m.y&&p.x===m.x?0:-1})}function re(u){return u.slice(0).sort(function(p,m){return p.x>m.x||p.x===m.x&&p.y>m.y?1:-1})}function Z(u,p,m,S,I){u=u||[];const q=[];c.default.Children.forEach(p,X=>{if(X?.key==null)return;const ee=o(u,String(X.key)),oe=X.props["data-grid"];ee&&oe==null?q.push(T(ee)):oe?q.push(T(v(v({},oe),{},{i:X.key}))):q.push(T({w:1,h:1,x:0,y:D(q),i:String(X.key)}))});const F=l(q,{cols:m});return I?F:t(F,S,m)}function Q(u){let p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Layout";const m=["x","y","w","h"];if(!Array.isArray(u))throw new Error(p+" must be an array!");for(let S=0,I=u.length;S<I;S++){const q=u[S];for(let F=0;F<m.length;F++){const X=m[F],ee=q[X];if(typeof ee!="number"||Number.isNaN(ee))throw new Error("ReactGridLayout: ".concat(p,"[").concat(S,"].").concat(X," must be a number! Received: ").concat(ee," (").concat(typeof ee,")"))}if(typeof q.i<"u"&&typeof q.i!="string")throw new Error("ReactGridLayout: ".concat(p,"[").concat(S,"].i must be a string! Received: ").concat(q.i," (").concat(typeof q.i,")"))}}function le(u){const{verticalCompact:p,compactType:m}=u||{};return p===!1?null:m}function fe(){}const he=()=>{};return te.noop=he,te}var Se={},St;function ct(){if(St)return Se;St=1,Object.defineProperty(Se,"__esModule",{value:!0}),Se.calcGridColWidth=r,Se.calcGridItemPosition=s,Se.calcGridItemWHPx=c,Se.calcWH=v,Se.calcXY=d,Se.clamp=w;function r(O){const{margin:N,containerPadding:D,containerWidth:P,cols:z}=O;return(P-N[0]*(z-1)-D[0]*2)/z}function c(O,N,D){return Number.isFinite(O)?Math.round(N*O+Math.max(0,O-1)*D):O}function s(O,N,D,P,z,j){const{margin:T,containerPadding:k,rowHeight:C}=O,f=r(O),t={};return j&&j.resizing?(t.width=Math.round(j.resizing.width),t.height=Math.round(j.resizing.height)):(t.width=c(P,f,T[0]),t.height=c(z,C,T[1])),j&&j.dragging?(t.top=Math.round(j.dragging.top),t.left=Math.round(j.dragging.left)):j&&j.resizing&&typeof j.resizing.top=="number"&&typeof j.resizing.left=="number"?(t.top=Math.round(j.resizing.top),t.left=Math.round(j.resizing.left)):(t.top=Math.round((C+T[1])*D+k[1]),t.left=Math.round((f+T[0])*N+k[0])),t}function d(O,N,D,P,z){const{margin:j,containerPadding:T,cols:k,rowHeight:C,maxRows:f}=O,t=r(O);let n=Math.round((D-T[0])/(t+j[0])),e=Math.round((N-T[1])/(C+j[1]));return n=w(n,0,k-P),e=w(e,0,f-z),{x:n,y:e}}function v(O,N,D,P,z,j){const{margin:T,maxRows:k,cols:C,rowHeight:f}=O,t=r(O);let n=Math.round((N+T[0])/(t+T[0])),e=Math.round((D+T[1])/(f+T[1])),a=w(n,0,C-P),l=w(e,0,k-z);return["sw","w","nw"].indexOf(j)!==-1&&(a=w(n,0,C)),["nw","n","ne"].indexOf(j)!==-1&&(l=w(e,0,k)),{w:a,h:l}}function w(O,N,D){return Math.max(Math.min(O,D),N)}return Se}var Ne={},tt={exports:{}},rt,Rt;function Rr(){if(Rt)return rt;Rt=1;var r="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return rt=r,rt}var nt,Ot;function Or(){if(Ot)return nt;Ot=1;var r=Rr();function c(){}function s(){}return s.resetWarningCache=c,nt=function(){function d(O,N,D,P,z,j){if(j!==r){var T=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw T.name="Invariant Violation",T}}d.isRequired=d;function v(){return d}var w={array:d,bigint:d,bool:d,func:d,number:d,object:d,string:d,symbol:d,any:d,arrayOf:v,element:d,elementType:d,instanceOf:v,node:d,objectOf:v,oneOf:v,oneOfType:v,shape:v,exact:v,checkPropTypes:s,resetWarningCache:c};return w.PropTypes=w,w},nt}var Dt;function De(){return Dt||(Dt=1,tt.exports=Or()()),tt.exports}var Te={exports:{}},ot,_t;function Dr(){if(_t)return ot;_t=1;var r={},c=Object.create,s=Object.defineProperty,d=Object.getOwnPropertyDescriptor,v=Object.getOwnPropertyNames,w=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty,N=(i,y)=>{for(var b in y)s(i,b,{get:y[b],enumerable:!0})},D=(i,y,b,E)=>{if(y&&typeof y=="object"||typeof y=="function")for(let L of v(y))!O.call(i,L)&&L!==b&&s(i,L,{get:()=>y[L],enumerable:!(E=d(y,L))||E.enumerable});return i},P=(i,y,b)=>(b=i!=null?c(w(i)):{},D(!i||!i.__esModule?s(b,"default",{value:i,enumerable:!0}):b,i)),z=i=>D(s({},"__esModule",{value:!0}),i),j={};N(j,{DraggableCore:()=>ge,default:()=>be}),ot=z(j);var T=P(we()),k=P(De()),C=P(st()),f=Ve();function t(i,y){for(let b=0,E=i.length;b<E;b++)if(y.apply(y,[i[b],b,i]))return i[b]}function n(i){return typeof i=="function"||Object.prototype.toString.call(i)==="[object Function]"}function e(i){return typeof i=="number"&&!isNaN(i)}function a(i){return parseInt(i,10)}function l(i,y,b){if(i[y])return new Error(`Invalid prop ${y} passed to ${b} - do not set this, set it on the child.`)}var o=["Moz","Webkit","O","ms"];function h(i="transform"){var y,b;if(typeof window>"u")return"";const E=(b=(y=window.document)==null?void 0:y.documentElement)==null?void 0:b.style;if(!E||i in E)return"";for(let L=0;L<o.length;L++)if(g(i,o[L])in E)return o[L];return""}function g(i,y){return y?`${y}${x(i)}`:i}function x(i){let y="",b=!0;for(let E=0;E<i.length;E++)b?(y+=i[E].toUpperCase(),b=!1):i[E]==="-"?b=!0:y+=i[E];return y}var R=h(),_="";function W(i,y){var b;_||(_=(b=t(["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"],function(L){return n(i[L])}))!=null?b:"");const E=i[_];return n(E)?!!E.call(i,y):!1}function B(i,y,b){let E=i;do{if(W(E,y))return!0;if(E===b)return!1;E=E.parentNode}while(E);return!1}function A(i,y,b,E){if(!i)return;const L={capture:!0,...E},ue=b;i.addEventListener?i.addEventListener(y,ue,L):i.attachEvent?i.attachEvent("on"+y,ue):i["on"+y]=ue}function U(i,y,b,E){if(!i)return;const L={capture:!0,...E},ue=b;i.removeEventListener?i.removeEventListener(y,ue,L):i.detachEvent?i.detachEvent("on"+y,ue):i["on"+y]=null}function V(i){let y=i.clientHeight;const b=i.ownerDocument.defaultView.getComputedStyle(i);return y+=a(b.borderTopWidth),y+=a(b.borderBottomWidth),y}function $(i){let y=i.clientWidth;const b=i.ownerDocument.defaultView.getComputedStyle(i);return y+=a(b.borderLeftWidth),y+=a(b.borderRightWidth),y}function Y(i){let y=i.clientHeight;const b=i.ownerDocument.defaultView.getComputedStyle(i);return y-=a(b.paddingTop),y-=a(b.paddingBottom),y}function K(i){let y=i.clientWidth;const b=i.ownerDocument.defaultView.getComputedStyle(i);return y-=a(b.paddingLeft),y-=a(b.paddingRight),y}function se(i,y,b){const L=y===y.ownerDocument.body?{left:0,top:0}:y.getBoundingClientRect(),ue=(i.clientX+y.scrollLeft-L.left)/b,ne=(i.clientY+y.scrollTop-L.top)/b;return{x:ue,y:ne}}function ae(i,y){const b=J(i,y,"px");return{[g("transform",R)]:b}}function pe(i,y){return J(i,y,"")}function J({x:i,y},b,E){let L=`translate(${i}${E},${y}${E})`;if(b){const ue=`${typeof b.x=="string"?b.x:b.x+E}`,ne=`${typeof b.y=="string"?b.y:b.y+E}`;L=`translate(${ue}, ${ne})`+L}return L}function ve(i,y){return i.targetTouches&&t(i.targetTouches,b=>y===b.identifier)||i.changedTouches&&t(i.changedTouches,b=>y===b.identifier)}function me(i){if(i.targetTouches&&i.targetTouches[0])return i.targetTouches[0].identifier;if(i.changedTouches&&i.changedTouches[0])return i.changedTouches[0].identifier}function xe(){return typeof __webpack_nonce__<"u"?__webpack_nonce__:void 0}function Le(i,y){if(!i)return;let b=i.getElementById("react-draggable-style-el");if(!b){b=i.createElement("style"),b.type="text/css",b.id="react-draggable-style-el";const E=y??xe();E&&b.setAttribute("nonce",E),b.innerHTML=`.react-draggable-transparent-selection *::-moz-selection {all: inherit;}
2
+ `,b.innerHTML+=`.react-draggable-transparent-selection *::selection {all: inherit;}
3
+ `,i.getElementsByTagName("head")[0].appendChild(b)}i.body&&G(i.body,"react-draggable-transparent-selection")}function Ee(i){window.requestAnimationFrame?window.requestAnimationFrame(()=>{H(i)}):H(i)}function H(i){if(i)try{i.body&&re(i.body,"react-draggable-transparent-selection");const y=i.selection;if(y)y.empty();else{const b=(i.defaultView||window).getSelection();b&&b.type!=="Caret"&&b.removeAllRanges()}}catch{}}function G(i,y){i.classList?i.classList.add(y):i.className.match(new RegExp(`(?:^|\\s)${y}(?!\\S)`))||(i.className+=` ${y}`)}function re(i,y){i.classList?i.classList.remove(y):i.className=i.className.replace(new RegExp(`(?:^|\\s)${y}(?!\\S)`,"g"),"")}function Z(i,y,b){if(!i.props.bounds)return[y,b];let{bounds:E}=i.props;E=typeof E=="string"?E:m(E);const L=S(i);if(typeof E=="string"){const{ownerDocument:ue}=L,ne=ue.defaultView;if(!ne)throw new Error("Cannot resolve the owner window of the draggable node.");let ce;if(E==="parent"?ce=L.parentNode:ce=L.getRootNode().querySelector(E),!(ce instanceof ne.HTMLElement))throw new Error('Bounds selector "'+E+'" could not find an element.');const ye=ce,_e=ne.getComputedStyle(L),Ce=ne.getComputedStyle(ye);E={left:-L.offsetLeft+a(Ce.paddingLeft)+a(_e.marginLeft),top:-L.offsetTop+a(Ce.paddingTop)+a(_e.marginTop),right:K(ye)-$(L)-L.offsetLeft+a(Ce.paddingRight)-a(_e.marginRight),bottom:Y(ye)-V(L)-L.offsetTop+a(Ce.paddingBottom)-a(_e.marginBottom)}}return e(E.right)&&(y=Math.min(y,E.right)),e(E.bottom)&&(b=Math.min(b,E.bottom)),e(E.left)&&(y=Math.max(y,E.left)),e(E.top)&&(b=Math.max(b,E.top)),[y,b]}function Q(i,y,b){const E=Math.round(y/i[0])*i[0],L=Math.round(b/i[1])*i[1];return[E,L]}function le(i){return i.props.axis==="both"||i.props.axis==="x"}function fe(i){return i.props.axis==="both"||i.props.axis==="y"}function he(i,y,b){const E=typeof y=="number"?ve(i,y):null;if(typeof y=="number"&&!E)return null;const L=S(b),ue=b.props.offsetParent||L.offsetParent||L.ownerDocument.body;return se(E||i,ue,b.props.scale)}function u(i,y,b){const E=!e(i.lastX),L=S(i);return E?{node:L,deltaX:0,deltaY:0,lastX:y,lastY:b,x:y,y:b}:{node:L,deltaX:y-i.lastX,deltaY:b-i.lastY,lastX:i.lastX,lastY:i.lastY,x:y,y:b}}function p(i,y){const b=i.props.scale;return{node:y.node,x:i.state.x+y.deltaX/b,y:i.state.y+y.deltaY/b,deltaX:y.deltaX/b,deltaY:y.deltaY/b,lastX:i.state.x,lastY:i.state.y}}function m(i){return{left:i.left,top:i.top,right:i.right,bottom:i.bottom}}function S(i){const y=i.findDOMNode();if(!y)throw new Error("<DraggableCore>: Unmounted during event!");return y}var I=P(we()),q=P(De()),F=P(st()),X=typeof process<"u"&&r.DRAGGABLE_DEBUG?console.log.bind(console):function(){},ee=X,oe={touch:{start:"touchstart",move:"touchmove",stop:"touchend"},mouse:{start:"mousedown",move:"mousemove",stop:"mouseup"}},de=oe.mouse,ge=class extends I.Component{constructor(){super(...arguments),this.dragging=!1,this.lastX=NaN,this.lastY=NaN,this.touchIdentifier=null,this.mounted=!1,this.handleDragStart=i=>{if(this.props.onMouseDown(i),!this.props.allowAnyClick&&(typeof i.button=="number"&&i.button!==0||i.ctrlKey))return!1;const y=this.findDOMNode();if(!y||!y.ownerDocument||!y.ownerDocument.body)throw new Error("<DraggableCore> not mounted on DragStart!");const{ownerDocument:b}=y;if(this.props.disabled||!(i.target instanceof b.defaultView.Node)||this.props.handle&&!B(i.target,this.props.handle,y)||this.props.cancel&&B(i.target,this.props.cancel,y))return;i.type==="touchstart"&&!this.props.allowMobileScroll&&i.preventDefault();const E=me(i);this.touchIdentifier=E;const L=he(i,E,this);if(L==null)return;const{x:ue,y:ne}=L,ce=u(this,ue,ne);ee("DraggableCore: handleDragStart: %j",ce),ee("calling",this.props.onStart),!(this.props.onStart(i,ce)===!1||this.mounted===!1)&&(this.props.enableUserSelectHack&&Le(b,this.props.nonce),this.dragging=!0,this.lastX=ue,this.lastY=ne,A(b,de.move,this.handleDrag),A(b,de.stop,this.handleDragStop))},this.handleDrag=i=>{const y=he(i,this.touchIdentifier,this);if(y==null)return;let{x:b,y:E}=y;if(Array.isArray(this.props.grid)){let ne=b-this.lastX,ce=E-this.lastY;if([ne,ce]=Q(this.props.grid,ne,ce),!ne&&!ce)return;b=this.lastX+ne,E=this.lastY+ce}const L=u(this,b,E);if(ee("DraggableCore: handleDrag: %j",L),this.props.onDrag(i,L)===!1||this.mounted===!1){try{this.handleDragStop(new MouseEvent("mouseup"))}catch{const ne=document.createEvent("MouseEvents");ne.initMouseEvent("mouseup",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),this.handleDragStop(ne)}return}this.lastX=b,this.lastY=E},this.handleDragStop=i=>{if(!this.dragging)return;const y=he(i,this.touchIdentifier,this);if(y==null)return;let{x:b,y:E}=y;if(Array.isArray(this.props.grid)){let ce=b-this.lastX||0,ye=E-this.lastY||0;[ce,ye]=Q(this.props.grid,ce,ye),b=this.lastX+ce,E=this.lastY+ye}const L=u(this,b,E);if(this.props.onStop(i,L)===!1||this.mounted===!1)return!1;const ne=this.findDOMNode();ne&&this.props.enableUserSelectHack&&Ee(ne.ownerDocument),ee("DraggableCore: handleDragStop: %j",L),this.dragging=!1,this.lastX=NaN,this.lastY=NaN,ne&&(ee("DraggableCore: Removing handlers"),U(ne.ownerDocument,de.move,this.handleDrag),U(ne.ownerDocument,de.stop,this.handleDragStop))},this.onMouseDown=i=>(de=oe.mouse,this.handleDragStart(i)),this.onMouseUp=i=>(de=oe.mouse,this.handleDragStop(i)),this.onTouchStart=i=>(de=oe.touch,this.handleDragStart(i)),this.onTouchEnd=i=>(de=oe.touch,this.handleDragStop(i))}componentDidMount(){this.mounted=!0;const i=this.findDOMNode();i&&A(i,oe.touch.start,this.onTouchStart,{passive:!1})}componentWillUnmount(){this.mounted=!1;const i=this.findDOMNode();if(i){const{ownerDocument:y}=i;U(y,oe.mouse.move,this.handleDrag),U(y,oe.touch.move,this.handleDrag),U(y,oe.mouse.stop,this.handleDragStop),U(y,oe.touch.stop,this.handleDragStop),U(i,oe.touch.start,this.onTouchStart,{passive:!1}),this.props.enableUserSelectHack&&Ee(y)}}findDOMNode(){var i;if((i=this.props)!=null&&i.nodeRef)return this.props.nodeRef.current;const y=F.default;return typeof y.findDOMNode=="function"?y.findDOMNode(this):(ee("react-draggable: ReactDOM.findDOMNode is not available in React 19+. You must provide a nodeRef prop. See: https://github.com/react-grid-layout/react-draggable#noderef"),null)}render(){return I.cloneElement(I.Children.only(this.props.children),{onMouseDown:this.onMouseDown,onMouseUp:this.onMouseUp,onTouchEnd:this.onTouchEnd})}};ge.displayName="DraggableCore",ge.propTypes={allowAnyClick:q.default.bool,allowMobileScroll:q.default.bool,children:q.default.node.isRequired,disabled:q.default.bool,enableUserSelectHack:q.default.bool,offsetParent:function(i,y){if(i[y]&&i[y].nodeType!==1)throw new Error("Draggable's offsetParent must be a DOM Node.")},grid:q.default.arrayOf(q.default.number),handle:q.default.string,cancel:q.default.string,nodeRef:q.default.object,nonce:q.default.string,onStart:q.default.func,onDrag:q.default.func,onStop:q.default.func,onMouseDown:q.default.func,scale:q.default.number,className:l,style:l,transform:l},ge.defaultProps={allowAnyClick:!1,allowMobileScroll:!1,disabled:!1,enableUserSelectHack:!0,onStart:function(){},onDrag:function(){},onStop:function(){},onMouseDown:function(){},scale:1};var be=class extends T.Component{constructor(i){super(i),this.onDragStart=(y,b)=>{if(ee("Draggable: onDragStart: %j",b),this.props.onStart(y,p(this,b))===!1)return!1;this.setState({dragging:!0,dragged:!0})},this.onDrag=(y,b)=>{if(!this.state.dragging)return!1;ee("Draggable: onDrag: %j",b);const E=p(this,b),L={x:E.x,y:E.y,slackX:0,slackY:0};if(this.props.bounds){const{x:ne,y:ce}=L;L.x+=this.state.slackX,L.y+=this.state.slackY;const[ye,_e]=Z(this,L.x,L.y);L.x=ye,L.y=_e,L.slackX=this.state.slackX+(ne-L.x),L.slackY=this.state.slackY+(ce-L.y),E.x=L.x,E.y=L.y,E.deltaX=L.x-this.state.x,E.deltaY=L.y-this.state.y}if(this.props.onDrag(y,E)===!1)return!1;this.setState(L)},this.onDragStop=(y,b)=>{if(!this.state.dragging||this.props.onStop(y,p(this,b))===!1)return!1;ee("Draggable: onDragStop: %j",b);const L={dragging:!1,slackX:0,slackY:0};if(!!this.props.position){const{x:ne,y:ce}=this.props.position;L.x=ne,L.y=ce}this.setState(L)},this.state={dragging:!1,dragged:!1,x:i.position?i.position.x:i.defaultPosition.x,y:i.position?i.position.y:i.defaultPosition.y,prevPropsPosition:{...i.position},slackX:0,slackY:0,isElementSVG:!1},i.position&&!(i.onDrag||i.onStop)&&console.warn("A `position` was applied to this <Draggable>, without drag handlers. This will make this component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the `position` of this element.")}static getDerivedStateFromProps({position:i},{prevPropsPosition:y}){return i&&(!y||i.x!==y.x||i.y!==y.y)?(ee("Draggable: getDerivedStateFromProps %j",{position:i,prevPropsPosition:y}),{x:i.x,y:i.y,prevPropsPosition:{...i}}):null}componentDidMount(){typeof window.SVGElement<"u"&&this.findDOMNode()instanceof window.SVGElement&&this.setState({isElementSVG:!0})}componentWillUnmount(){this.state.dragging&&this.setState({dragging:!1})}findDOMNode(){var i;if((i=this.props)!=null&&i.nodeRef)return this.props.nodeRef.current;const y=C.default;return typeof y.findDOMNode=="function"?y.findDOMNode(this):null}render(){const{axis:i,bounds:y,children:b,defaultPosition:E,defaultClassName:L,defaultClassNameDragging:ue,defaultClassNameDragged:ne,position:ce,positionOffset:ye,scale:_e,...Ce}=this.props;let Je={},ft=null;const pt=!!!ce||this.state.dragging,ht=ce||E,gt={x:le(this)&&pt?this.state.x:ht.x,y:fe(this)&&pt?this.state.y:ht.y};this.state.isElementSVG?ft=pe(gt,ye):Je=ae(gt,ye);const Qe=T.Children.only(b),Zt=(0,f.clsx)(Qe.props.className||"",L,{[ue]:this.state.dragging,[ne]:this.state.dragged});return T.createElement(ge,{...Ce,onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop},T.cloneElement(Qe,{className:Zt,style:{...Qe.props.style,...Je},transform:ft}))}};return be.displayName="Draggable",be.propTypes={...ge.propTypes,axis:k.default.oneOf(["both","x","y","none"]),bounds:k.default.oneOfType([k.default.shape({left:k.default.number,right:k.default.number,top:k.default.number,bottom:k.default.number}),k.default.string,k.default.oneOf([!1])]),defaultClassName:k.default.string,defaultClassNameDragging:k.default.string,defaultClassNameDragged:k.default.string,defaultPosition:k.default.shape({x:k.default.number,y:k.default.number}),positionOffset:k.default.shape({x:k.default.oneOfType([k.default.number,k.default.string]),y:k.default.oneOfType([k.default.number,k.default.string])}),position:k.default.shape({x:k.default.number,y:k.default.number}),className:l,style:l,transform:l},be.defaultProps={...ge.defaultProps,axis:"both",bounds:!1,defaultClassName:"react-draggable",defaultClassNameDragging:"react-draggable-dragging",defaultClassNameDragged:"react-draggable-dragged",defaultPosition:{x:0,y:0},scale:1},ot}var Pt;function dt(){if(Pt)return Te.exports;Pt=1;const r=Dr(),c=r.DraggableCore,s=r.default||r;return Te.exports=s,Te.exports.default=s,Te.exports.DraggableCore=c,Te.exports}var qe={exports:{}},We={},Ue={},jt;function _r(){if(jt)return Ue;jt=1,Ue.__esModule=!0,Ue.cloneElement=N;var r=c(we());function c(D){return D&&D.__esModule?D:{default:D}}function s(D,P){var z=Object.keys(D);if(Object.getOwnPropertySymbols){var j=Object.getOwnPropertySymbols(D);P&&(j=j.filter(function(T){return Object.getOwnPropertyDescriptor(D,T).enumerable})),z.push.apply(z,j)}return z}function d(D){for(var P=1;P<arguments.length;P++){var z=arguments[P]!=null?arguments[P]:{};P%2?s(Object(z),!0).forEach(function(j){v(D,j,z[j])}):Object.getOwnPropertyDescriptors?Object.defineProperties(D,Object.getOwnPropertyDescriptors(z)):s(Object(z)).forEach(function(j){Object.defineProperty(D,j,Object.getOwnPropertyDescriptor(z,j))})}return D}function v(D,P,z){return(P=w(P))in D?Object.defineProperty(D,P,{value:z,enumerable:!0,configurable:!0,writable:!0}):D[P]=z,D}function w(D){var P=O(D,"string");return typeof P=="symbol"?P:P+""}function O(D,P){if(typeof D!="object"||!D)return D;var z=D[Symbol.toPrimitive];if(z!==void 0){var j=z.call(D,P);if(typeof j!="object")return j;throw new TypeError("@@toPrimitive must return a primitive value.")}return(P==="string"?String:Number)(D)}function N(D,P){return P.style&&D.props.style&&(P.style=d(d({},D.props.style),P.style)),P.className&&D.props.className&&(P.className=D.props.className+" "+P.className),r.default.cloneElement(D,P)}return Ue}var He={},Et;function Gt(){if(Et)return He;Et=1,He.__esModule=!0,He.resizableProps=void 0;var r=c(De());dt();function c(s){return s&&s.__esModule?s:{default:s}}return He.resizableProps={axis:r.default.oneOf(["both","x","y","none"]),className:r.default.string,children:r.default.element.isRequired,draggableOpts:r.default.shape({allowAnyClick:r.default.bool,cancel:r.default.string,children:r.default.node,disabled:r.default.bool,enableUserSelectHack:r.default.bool,offsetParent:typeof Element<"u"?r.default.instanceOf(Element):r.default.any,grid:r.default.arrayOf(r.default.number),handle:r.default.string,nodeRef:r.default.object,onStart:r.default.func,onDrag:r.default.func,onStop:r.default.func,onMouseDown:r.default.func,scale:r.default.number}),height:function(){for(var s=arguments.length,d=new Array(s),v=0;v<s;v++)d[v]=arguments[v];const w=d[0];return w.axis==="both"||w.axis==="y"?r.default.number.isRequired(...d):r.default.number(...d)},handle:r.default.oneOfType([r.default.node,r.default.func]),handleSize:r.default.arrayOf(r.default.number),lockAspectRatio:r.default.bool,maxConstraints:r.default.arrayOf(r.default.number),minConstraints:r.default.arrayOf(r.default.number),onResizeStop:r.default.func,onResizeStart:r.default.func,onResize:r.default.func,resizeHandles:r.default.arrayOf(r.default.oneOf(["s","w","e","n","sw","nw","se","ne"])),transformScale:r.default.number,width:function(){for(var s=arguments.length,d=new Array(s),v=0;v<s;v++)d[v]=arguments[v];const w=d[0];return w.axis==="both"||w.axis==="x"?r.default.number.isRequired(...d):r.default.number(...d)}},He}var Ct;function Ut(){if(Ct)return We;Ct=1,We.__esModule=!0,We.default=void 0;var r=w(we()),c=dt(),s=_r(),d=Gt();const v=["children","className","draggableOpts","width","height","handle","handleSize","lockAspectRatio","axis","minConstraints","maxConstraints","onResize","onResizeStop","onResizeStart","resizeHandles","transformScale"];function w(C,f){if(typeof WeakMap=="function")var t=new WeakMap,n=new WeakMap;return(w=function(e,a){if(!a&&e&&e.__esModule)return e;var l,o,h={__proto__:null,default:e};if(e===null||typeof e!="object"&&typeof e!="function")return h;if(l=a?n:t){if(l.has(e))return l.get(e);l.set(e,h)}for(const g in e)g!=="default"&&{}.hasOwnProperty.call(e,g)&&((o=(l=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,g))&&(o.get||o.set)?l(h,g,o):h[g]=e[g]);return h})(C,f)}function O(){return O=Object.assign?Object.assign.bind():function(C){for(var f=1;f<arguments.length;f++){var t=arguments[f];for(var n in t)({}).hasOwnProperty.call(t,n)&&(C[n]=t[n])}return C},O.apply(null,arguments)}function N(C,f){if(C==null)return{};var t={};for(var n in C)if({}.hasOwnProperty.call(C,n)){if(f.indexOf(n)!==-1)continue;t[n]=C[n]}return t}function D(C,f){var t=Object.keys(C);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(C);f&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(C,e).enumerable})),t.push.apply(t,n)}return t}function P(C){for(var f=1;f<arguments.length;f++){var t=arguments[f]!=null?arguments[f]:{};f%2?D(Object(t),!0).forEach(function(n){z(C,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(C,Object.getOwnPropertyDescriptors(t)):D(Object(t)).forEach(function(n){Object.defineProperty(C,n,Object.getOwnPropertyDescriptor(t,n))})}return C}function z(C,f,t){return(f=j(f))in C?Object.defineProperty(C,f,{value:t,enumerable:!0,configurable:!0,writable:!0}):C[f]=t,C}function j(C){var f=T(C,"string");return typeof f=="symbol"?f:f+""}function T(C,f){if(typeof C!="object"||!C)return C;var t=C[Symbol.toPrimitive];if(t!==void 0){var n=t.call(C,f);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(f==="string"?String:Number)(C)}let k=class extends r.Component{constructor(){super(...arguments),this.handleRefs={},this.lastHandleRect=null,this.slack=null,this.lastSize=null}componentWillUnmount(){this.resetData()}resetData(){this.lastHandleRect=this.slack=this.lastSize=null}runConstraints(f,t){const n=this.props,e=n.minConstraints,a=n.maxConstraints,l=n.lockAspectRatio;if(!e&&!a&&!l)return[f,t];if(l){const _=this.props.width/this.props.height,W=f-this.props.width,B=t-this.props.height;Math.abs(W)>Math.abs(B*_)?t=f/_:f=t*_}const o=f,h=t;let g=this.slack||[0,0],x=g[0],R=g[1];return f+=x,t+=R,e&&(f=Math.max(e[0],f),t=Math.max(e[1],t)),a&&(f=Math.min(a[0],f),t=Math.min(a[1],t)),this.slack=[x+(o-f),R+(h-t)],[f,t]}resizeHandler(f,t){return(n,e)=>{var a,l,o,h;let g=e.node,x=e.deltaX,R=e.deltaY;f==="onResizeStart"&&this.resetData();const _=(this.props.axis==="both"||this.props.axis==="x")&&t!=="n"&&t!=="s",W=(this.props.axis==="both"||this.props.axis==="y")&&t!=="e"&&t!=="w";if(!_&&!W)return;const B=t[0],A=t[t.length-1],U=g.getBoundingClientRect();if(this.lastHandleRect!=null){if(A==="w"){const me=U.left-this.lastHandleRect.left;x+=me}if(B==="n"){const me=U.top-this.lastHandleRect.top;R+=me}}this.lastHandleRect=U,A==="w"&&(x=-x),B==="n"&&(R=-R);const V=(a=(l=this.lastSize)==null?void 0:l.width)!=null?a:this.props.width,$=(o=(h=this.lastSize)==null?void 0:h.height)!=null?o:this.props.height;let Y=V+(_?x/this.props.transformScale:0),K=$+(W?R/this.props.transformScale:0);var se=this.runConstraints(Y,K);if(Y=se[0],K=se[1],f==="onResizeStop"&&this.lastSize){var ae=this.lastSize;Y=ae.width,K=ae.height}const pe=Y!==V||K!==$;f!=="onResizeStop"&&(this.lastSize={width:Y,height:K});const J=typeof this.props[f]=="function"?this.props[f]:null;J&&!(f==="onResize"&&!pe)&&(n.persist==null||n.persist(),J(n,{node:g,size:{width:Y,height:K},handle:t})),f==="onResizeStop"&&this.resetData()}}renderResizeHandle(f,t){const n=this.props.handle;if(!n)return r.createElement("span",{className:"react-resizable-handle react-resizable-handle-"+f,ref:t});if(typeof n=="function")return n(f,t);const e=typeof n.type=="string",a=P({ref:t},e?{}:{handleAxis:f});return r.cloneElement(n,a)}render(){const f=this.props,t=f.children,n=f.className,e=f.draggableOpts;f.width,f.height,f.handle,f.handleSize,f.lockAspectRatio,f.axis,f.minConstraints,f.maxConstraints,f.onResize,f.onResizeStop,f.onResizeStart;const a=f.resizeHandles;f.transformScale;const l=N(f,v);return(0,s.cloneElement)(t,P(P({},l),{},{className:(n?n+" ":"")+"react-resizable",children:[...r.Children.toArray(t.props.children),...a.map(o=>{var h;const g=(h=this.handleRefs[o])!=null?h:this.handleRefs[o]=r.createRef();return r.createElement(c.DraggableCore,O({},e,{nodeRef:g,key:"resizableHandle-"+o,onStop:this.resizeHandler("onResizeStop",o),onStart:this.resizeHandler("onResizeStart",o),onDrag:this.resizeHandler("onResize",o)}),this.renderResizeHandle(o,g))})]}))}};return We.default=k,k.propTypes=d.resizableProps,k.defaultProps={axis:"both",handleSize:[20,20],lockAspectRatio:!1,minConstraints:[20,20],maxConstraints:[1/0,1/0],resizeHandles:["se"],transformScale:1},We}var Ie={},zt;function Pr(){if(zt)return Ie;zt=1,Ie.__esModule=!0,Ie.default=void 0;var r=O(we()),c=w(De()),s=w(Ut()),d=Gt();const v=["handle","handleSize","onResize","onResizeStart","onResizeStop","draggableOpts","minConstraints","maxConstraints","lockAspectRatio","axis","width","height","resizeHandles","style","transformScale"];function w(f){return f&&f.__esModule?f:{default:f}}function O(f,t){if(typeof WeakMap=="function")var n=new WeakMap,e=new WeakMap;return(O=function(a,l){if(!l&&a&&a.__esModule)return a;var o,h,g={__proto__:null,default:a};if(a===null||typeof a!="object"&&typeof a!="function")return g;if(o=l?e:n){if(o.has(a))return o.get(a);o.set(a,g)}for(const x in a)x!=="default"&&{}.hasOwnProperty.call(a,x)&&((h=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(a,x))&&(h.get||h.set)?o(g,x,h):g[x]=a[x]);return g})(f,t)}function N(){return N=Object.assign?Object.assign.bind():function(f){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var e in n)({}).hasOwnProperty.call(n,e)&&(f[e]=n[e])}return f},N.apply(null,arguments)}function D(f,t){var n=Object.keys(f);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(f);t&&(e=e.filter(function(a){return Object.getOwnPropertyDescriptor(f,a).enumerable})),n.push.apply(n,e)}return n}function P(f){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?D(Object(n),!0).forEach(function(e){z(f,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(f,Object.getOwnPropertyDescriptors(n)):D(Object(n)).forEach(function(e){Object.defineProperty(f,e,Object.getOwnPropertyDescriptor(n,e))})}return f}function z(f,t,n){return(t=j(t))in f?Object.defineProperty(f,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):f[t]=n,f}function j(f){var t=T(f,"string");return typeof t=="symbol"?t:t+""}function T(f,t){if(typeof f!="object"||!f)return f;var n=f[Symbol.toPrimitive];if(n!==void 0){var e=n.call(f,t);if(typeof e!="object")return e;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(f)}function k(f,t){if(f==null)return{};var n={};for(var e in f)if({}.hasOwnProperty.call(f,e)){if(t.indexOf(e)!==-1)continue;n[e]=f[e]}return n}let C=class extends r.Component{constructor(){super(...arguments),this.state={width:this.props.width,height:this.props.height,propsWidth:this.props.width,propsHeight:this.props.height},this.onResize=(t,n)=>{const e=n.size;this.props.onResize?(t.persist==null||t.persist(),this.setState(e,()=>this.props.onResize&&this.props.onResize(t,n))):this.setState(e)}}static getDerivedStateFromProps(t,n){return n.propsWidth!==t.width||n.propsHeight!==t.height?{width:t.width,height:t.height,propsWidth:t.width,propsHeight:t.height}:null}render(){const t=this.props,n=t.handle,e=t.handleSize;t.onResize;const a=t.onResizeStart,l=t.onResizeStop,o=t.draggableOpts,h=t.minConstraints,g=t.maxConstraints,x=t.lockAspectRatio,R=t.axis;t.width,t.height;const _=t.resizeHandles,W=t.style,B=t.transformScale,A=k(t,v);return r.createElement(s.default,{axis:R,draggableOpts:o,handle:n,handleSize:e,height:this.state.height,lockAspectRatio:x,maxConstraints:g,minConstraints:h,onResizeStart:a,onResize:this.onResize,onResizeStop:l,resizeHandles:_,transformScale:B,width:this.state.width},r.createElement("div",N({},A,{style:P(P({},W),{},{width:this.state.width+"px",height:this.state.height+"px"})})))}};return Ie.default=C,C.propTypes=P(P({},d.resizableProps),{},{children:c.default.element}),Ie}var kt;function jr(){return kt||(kt=1,qe.exports=function(){throw new Error("Don't instantiate Resizable directly! Use require('react-resizable').Resizable")},qe.exports.Resizable=Ut().default,qe.exports.ResizableBox=Pr().default),qe.exports}var Re={},Lt;function Ft(){if(Lt)return Re;Lt=1,Object.defineProperty(Re,"__esModule",{value:!0}),Re.resizeHandleType=Re.resizeHandleAxesType=Re.default=void 0;var r=s(De()),c=s(we());function s(w){return w&&w.__esModule?w:{default:w}}const d=Re.resizeHandleAxesType=r.default.arrayOf(r.default.oneOf(["s","w","e","n","sw","nw","se","ne"])),v=Re.resizeHandleType=r.default.oneOfType([r.default.node,r.default.func]);return Re.default={className:r.default.string,style:r.default.object,width:r.default.number,autoSize:r.default.bool,cols:r.default.number,draggableCancel:r.default.string,draggableHandle:r.default.string,verticalCompact:function(w){w.verticalCompact},compactType:r.default.oneOf(["vertical","horizontal"]),layout:function(w){var O=w.layout;O!==void 0&&ke().validateLayout(O,"layout")},margin:r.default.arrayOf(r.default.number),containerPadding:r.default.arrayOf(r.default.number),rowHeight:r.default.number,maxRows:r.default.number,isBounded:r.default.bool,isDraggable:r.default.bool,isResizable:r.default.bool,allowOverlap:r.default.bool,preventCollision:r.default.bool,useCSSTransforms:r.default.bool,transformScale:r.default.number,isDroppable:r.default.bool,resizeHandles:d,resizeHandle:v,onLayoutChange:r.default.func,onDragStart:r.default.func,onDrag:r.default.func,onDragStop:r.default.func,onResizeStart:r.default.func,onResize:r.default.func,onResizeStop:r.default.func,onDrop:r.default.func,droppingItem:r.default.shape({i:r.default.string.isRequired,w:r.default.number.isRequired,h:r.default.number.isRequired}),children:function(w,O){const N=w[O],D={};c.default.Children.forEach(N,function(P){if(P?.key!=null){if(D[P.key])throw new Error('Duplicate child key "'+P.key+'" found! This will cause problems in ReactGridLayout.');D[P.key]=!0}})},innerRef:r.default.any},Re}var Mt;function Er(){if(Mt)return Ne;Mt=1,Object.defineProperty(Ne,"__esModule",{value:!0}),Ne.default=void 0;var r=P(we()),c=st(),s=P(De()),d=dt(),v=jr(),w=ke(),O=ct(),N=Ft(),D=P(Ve());function P(t){return t&&t.__esModule?t:{default:t}}function z(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);n&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(t,l).enumerable})),e.push.apply(e,a)}return e}function j(t){for(var n=1;n<arguments.length;n++){var e=arguments[n]!=null?arguments[n]:{};n%2?z(Object(e),!0).forEach(function(a){T(t,a,e[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):z(Object(e)).forEach(function(a){Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(e,a))})}return t}function T(t,n,e){return(n=k(n))in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function k(t){var n=C(t,"string");return typeof n=="symbol"?n:n+""}function C(t,n){if(typeof t!="object"||!t)return t;var e=t[Symbol.toPrimitive];if(e!==void 0){var a=e.call(t,n);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(t)}let f=class extends r.default.Component{constructor(){super(...arguments),T(this,"state",{resizing:null,dragging:null,className:""}),T(this,"elementRef",r.default.createRef()),T(this,"onDragStart",(n,e)=>{let{node:a}=e;const{onDragStart:l,transformScale:o}=this.props;if(!l)return;const h={top:0,left:0},{offsetParent:g}=a;if(!g)return;const x=g.getBoundingClientRect(),R=a.getBoundingClientRect(),_=R.left/o,W=x.left/o,B=R.top/o,A=x.top/o;h.left=_-W+g.scrollLeft,h.top=B-A+g.scrollTop,this.setState({dragging:h});const{x:U,y:V}=(0,O.calcXY)(this.getPositionParams(),h.top,h.left,this.props.w,this.props.h);return l.call(this,this.props.i,U,V,{e:n,node:a,newPosition:h})}),T(this,"onDrag",(n,e,a)=>{let{node:l,deltaX:o,deltaY:h}=e;const{onDrag:g}=this.props;if(!g)return;if(!this.state.dragging)throw new Error("onDrag called before onDragStart.");let x=this.state.dragging.top+h,R=this.state.dragging.left+o;const{isBounded:_,i:W,w:B,h:A,containerWidth:U}=this.props,V=this.getPositionParams();if(_){const{offsetParent:se}=l;if(se){const{margin:ae,rowHeight:pe}=this.props,J=se.clientHeight-(0,O.calcGridItemWHPx)(A,pe,ae[1]);x=(0,O.clamp)(x,0,J);const ve=(0,O.calcGridColWidth)(V),me=U-(0,O.calcGridItemWHPx)(B,ve,ae[0]);R=(0,O.clamp)(R,0,me)}}const $={top:x,left:R};a?this.setState({dragging:$}):(0,c.flushSync)(()=>{this.setState({dragging:$})});const{x:Y,y:K}=(0,O.calcXY)(V,x,R,B,A);return g.call(this,W,Y,K,{e:n,node:l,newPosition:$})}),T(this,"onDragStop",(n,e)=>{let{node:a}=e;const{onDragStop:l}=this.props;if(!l)return;if(!this.state.dragging)throw new Error("onDragEnd called before onDragStart.");const{w:o,h,i:g}=this.props,{left:x,top:R}=this.state.dragging,_={top:R,left:x};this.setState({dragging:null});const{x:W,y:B}=(0,O.calcXY)(this.getPositionParams(),R,x,o,h);return l.call(this,g,W,B,{e:n,node:a,newPosition:_})}),T(this,"onResizeStop",(n,e,a)=>this.onResizeHandler(n,e,a,"onResizeStop")),T(this,"onResizeStart",(n,e,a)=>this.onResizeHandler(n,e,a,"onResizeStart")),T(this,"onResize",(n,e,a)=>this.onResizeHandler(n,e,a,"onResize"))}shouldComponentUpdate(n,e){if(this.props.children!==n.children||this.props.droppingPosition!==n.droppingPosition)return!0;const a=(0,O.calcGridItemPosition)(this.getPositionParams(this.props),this.props.x,this.props.y,this.props.w,this.props.h,this.state),l=(0,O.calcGridItemPosition)(this.getPositionParams(n),n.x,n.y,n.w,n.h,e);return!(0,w.fastPositionEqual)(a,l)||this.props.useCSSTransforms!==n.useCSSTransforms}componentDidMount(){this.moveDroppingItem({})}componentDidUpdate(n){this.moveDroppingItem(n)}moveDroppingItem(n){const{droppingPosition:e}=this.props;if(!e)return;const a=this.elementRef.current;if(!a)return;const l=n.droppingPosition||{left:0,top:0},{dragging:o}=this.state,h=o&&e.left!==l.left||e.top!==l.top;if(!o)this.onDragStart(e.e,{node:a,deltaX:e.left,deltaY:e.top});else if(h){const g=e.left-o.left,x=e.top-o.top;this.onDrag(e.e,{node:a,deltaX:g,deltaY:x},!0)}}getPositionParams(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.props;return{cols:n.cols,containerPadding:n.containerPadding,containerWidth:n.containerWidth,margin:n.margin,maxRows:n.maxRows,rowHeight:n.rowHeight}}createStyle(n){const{usePercentages:e,containerWidth:a,useCSSTransforms:l}=this.props;let o;return l?o=(0,w.setTransform)(n):(o=(0,w.setTopLeft)(n),e&&(o.left=(0,w.perc)(n.left/a),o.width=(0,w.perc)(n.width/a))),o}mixinDraggable(n,e){return r.default.createElement(d.DraggableCore,{disabled:!e,onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop,handle:this.props.handle,cancel:".react-resizable-handle"+(this.props.cancel?","+this.props.cancel:""),scale:this.props.transformScale,nodeRef:this.elementRef},n)}curryResizeHandler(n,e){return(a,l)=>e(a,l,n)}mixinResizable(n,e,a){const{cols:l,minW:o,minH:h,maxW:g,maxH:x,transformScale:R,resizeHandles:_,resizeHandle:W}=this.props,B=this.getPositionParams(),A=(0,O.calcGridItemPosition)(B,0,0,l,0).width,U=(0,O.calcGridItemPosition)(B,0,0,o,h),V=(0,O.calcGridItemPosition)(B,0,0,g,x),$=[U.width,U.height],Y=[Math.min(V.width,A),Math.min(V.height,1/0)];return r.default.createElement(v.Resizable,{draggableOpts:{disabled:!a},className:a?void 0:"react-resizable-hide",width:e.width,height:e.height,minConstraints:$,maxConstraints:Y,onResizeStop:this.curryResizeHandler(e,this.onResizeStop),onResizeStart:this.curryResizeHandler(e,this.onResizeStart),onResize:this.curryResizeHandler(e,this.onResize),transformScale:R,resizeHandles:_,handle:W},n)}onResizeHandler(n,e,a,l){let{node:o,size:h,handle:g}=e;const x=this.props[l];if(!x)return;const{x:R,y:_,i:W,maxH:B,minH:A,containerWidth:U}=this.props,{minW:V,maxW:$}=this.props;let Y=h;o&&(Y=(0,w.resizeItemInDirection)(g,a,h,U),(0,c.flushSync)(()=>{this.setState({resizing:l==="onResizeStop"?null:Y})}));let{w:K,h:se}=(0,O.calcWH)(this.getPositionParams(),Y.width,Y.height,R,_,g);K=(0,O.clamp)(K,Math.max(V,1),$),se=(0,O.clamp)(se,A,B),x.call(this,W,K,se,{e:n,node:o,size:Y,handle:g})}render(){const{x:n,y:e,w:a,h:l,isDraggable:o,isResizable:h,droppingPosition:g,useCSSTransforms:x}=this.props,R=(0,O.calcGridItemPosition)(this.getPositionParams(),n,e,a,l,this.state),_=r.default.Children.only(this.props.children);let W=r.default.cloneElement(_,{ref:this.elementRef,className:(0,D.default)("react-grid-item",_.props.className,this.props.className,{static:this.props.static,resizing:!!this.state.resizing,"react-draggable":o,"react-draggable-dragging":!!this.state.dragging,dropping:!!g,cssTransforms:x}),style:j(j(j({},this.props.style),_.props.style),this.createStyle(R))});return W=this.mixinResizable(W,R,h),W=this.mixinDraggable(W,o),W}};return Ne.default=f,T(f,"propTypes",{children:s.default.element,cols:s.default.number.isRequired,containerWidth:s.default.number.isRequired,rowHeight:s.default.number.isRequired,margin:s.default.array.isRequired,maxRows:s.default.number.isRequired,containerPadding:s.default.array.isRequired,x:s.default.number.isRequired,y:s.default.number.isRequired,w:s.default.number.isRequired,h:s.default.number.isRequired,minW:function(t,n){const e=t[n];if(typeof e!="number")return new Error("minWidth not Number");if(e>t.w||e>t.maxW)return new Error("minWidth larger than item width/maxWidth")},maxW:function(t,n){const e=t[n];if(typeof e!="number")return new Error("maxWidth not Number");if(e<t.w||e<t.minW)return new Error("maxWidth smaller than item width/minWidth")},minH:function(t,n){const e=t[n];if(typeof e!="number")return new Error("minHeight not Number");if(e>t.h||e>t.maxH)return new Error("minHeight larger than item height/maxHeight")},maxH:function(t,n){const e=t[n];if(typeof e!="number")return new Error("maxHeight not Number");if(e<t.h||e<t.minH)return new Error("maxHeight smaller than item height/minHeight")},i:s.default.string.isRequired,resizeHandles:N.resizeHandleAxesType,resizeHandle:N.resizeHandleType,onDragStop:s.default.func,onDragStart:s.default.func,onDrag:s.default.func,onResizeStop:s.default.func,onResizeStart:s.default.func,onResize:s.default.func,isDraggable:s.default.bool.isRequired,isResizable:s.default.bool.isRequired,isBounded:s.default.bool.isRequired,static:s.default.bool,useCSSTransforms:s.default.bool.isRequired,transformScale:s.default.number,className:s.default.string,handle:s.default.string,cancel:s.default.string,droppingPosition:s.default.shape({e:s.default.object.isRequired,left:s.default.number.isRequired,top:s.default.number.isRequired})}),T(f,"defaultProps",{className:"",cancel:"",handle:"",minH:1,minW:1,maxH:1/0,maxW:1/0,transformScale:1}),Ne}var Nt;function $t(){if(Nt)return Me;Nt=1,Object.defineProperty(Me,"__esModule",{value:!0}),Me.default=void 0;var r=D(we()),c=ut(),s=N(Ve()),d=ke(),v=ct(),w=N(Er()),O=N(Ft());function N(n){return n&&n.__esModule?n:{default:n}}function D(n,e){if(typeof WeakMap=="function")var a=new WeakMap,l=new WeakMap;return(D=function(o,h){if(!h&&o&&o.__esModule)return o;var g,x,R={__proto__:null,default:o};if(o===null||typeof o!="object"&&typeof o!="function")return R;if(g=h?l:a){if(g.has(o))return g.get(o);g.set(o,R)}for(const _ in o)_!=="default"&&{}.hasOwnProperty.call(o,_)&&((x=(g=Object.defineProperty)&&Object.getOwnPropertyDescriptor(o,_))&&(x.get||x.set)?g(R,_,x):R[_]=o[_]);return R})(n,e)}function P(n,e){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(n);e&&(l=l.filter(function(o){return Object.getOwnPropertyDescriptor(n,o).enumerable})),a.push.apply(a,l)}return a}function z(n){for(var e=1;e<arguments.length;e++){var a=arguments[e]!=null?arguments[e]:{};e%2?P(Object(a),!0).forEach(function(l){j(n,l,a[l])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):P(Object(a)).forEach(function(l){Object.defineProperty(n,l,Object.getOwnPropertyDescriptor(a,l))})}return n}function j(n,e,a){return(e=T(e))in n?Object.defineProperty(n,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[e]=a,n}function T(n){var e=k(n,"string");return typeof e=="symbol"?e:e+""}function k(n,e){if(typeof n!="object"||!n)return n;var a=n[Symbol.toPrimitive];if(a!==void 0){var l=a.call(n,e);if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}const C="react-grid-layout";let f=!1;try{f=/firefox/i.test(navigator.userAgent)}catch{}let t=class extends r.Component{constructor(){super(...arguments),j(this,"state",{activeDrag:null,layout:(0,d.synchronizeLayoutWithChildren)(this.props.layout,this.props.children,this.props.cols,(0,d.compactType)(this.props),this.props.allowOverlap),mounted:!1,oldDragItem:null,oldLayout:null,oldResizeItem:null,resizing:!1,droppingDOMNode:null,children:[]}),j(this,"dragEnterCounter",0),j(this,"onDragStart",(e,a,l,o)=>{let{e:h,node:g}=o;const{layout:x}=this.state,R=(0,d.getLayoutItem)(x,e);if(!R)return;const _={w:R.w,h:R.h,x:R.x,y:R.y,placeholder:!0,i:e};return this.setState({oldDragItem:(0,d.cloneLayoutItem)(R),oldLayout:x,activeDrag:_}),this.props.onDragStart(x,R,R,null,h,g)}),j(this,"onDrag",(e,a,l,o)=>{let{e:h,node:g}=o;const{oldDragItem:x}=this.state;let{layout:R}=this.state;const{cols:_,allowOverlap:W,preventCollision:B}=this.props,A=(0,d.getLayoutItem)(R,e);if(!A)return;const U={w:A.w,h:A.h,x:A.x,y:A.y,placeholder:!0,i:e};R=(0,d.moveElement)(R,A,a,l,!0,B,(0,d.compactType)(this.props),_,W),this.props.onDrag(R,x,A,U,h,g),this.setState({layout:W?R:(0,d.compact)(R,(0,d.compactType)(this.props),_),activeDrag:U})}),j(this,"onDragStop",(e,a,l,o)=>{let{e:h,node:g}=o;if(!this.state.activeDrag)return;const{oldDragItem:x}=this.state;let{layout:R}=this.state;const{cols:_,preventCollision:W,allowOverlap:B}=this.props,A=(0,d.getLayoutItem)(R,e);if(!A)return;R=(0,d.moveElement)(R,A,a,l,!0,W,(0,d.compactType)(this.props),_,B);const V=B?R:(0,d.compact)(R,(0,d.compactType)(this.props),_);this.props.onDragStop(V,x,A,null,h,g);const{oldLayout:$}=this.state;this.setState({activeDrag:null,layout:V,oldDragItem:null,oldLayout:null}),this.onLayoutMaybeChanged(V,$)}),j(this,"onResizeStart",(e,a,l,o)=>{let{e:h,node:g}=o;const{layout:x}=this.state,R=(0,d.getLayoutItem)(x,e);R&&(this.setState({oldResizeItem:(0,d.cloneLayoutItem)(R),oldLayout:this.state.layout,resizing:!0}),this.props.onResizeStart(x,R,R,null,h,g))}),j(this,"onResize",(e,a,l,o)=>{let{e:h,node:g,size:x,handle:R}=o;const{oldResizeItem:_}=this.state,{layout:W}=this.state,{cols:B,preventCollision:A,allowOverlap:U}=this.props;let V=!1,$,Y,K;const[se,ae]=(0,d.withLayoutItem)(W,e,J=>{let ve;return Y=J.x,K=J.y,["sw","w","nw","n","ne"].indexOf(R)!==-1&&(["sw","nw","w"].indexOf(R)!==-1&&(Y=J.x+(J.w-a),a=J.x!==Y&&Y<0?J.w:a,Y=Y<0?0:Y),["ne","n","nw"].indexOf(R)!==-1&&(K=J.y+(J.h-l),l=J.y!==K&&K<0?J.h:l,K=K<0?0:K),V=!0),A&&!U&&(ve=(0,d.getAllCollisions)(W,z(z({},J),{},{w:a,h:l,x:Y,y:K})).filter(xe=>xe.i!==J.i).length>0,ve&&(K=J.y,l=J.h,Y=J.x,a=J.w,V=!1)),J.w=a,J.h=l,J});if(!ae)return;$=se,V&&($=(0,d.moveElement)(se,ae,Y,K,!0,this.props.preventCollision,(0,d.compactType)(this.props),B,U));const pe={w:ae.w,h:ae.h,x:ae.x,y:ae.y,static:!0,i:e};this.props.onResize($,_,ae,pe,h,g),this.setState({layout:U?$:(0,d.compact)($,(0,d.compactType)(this.props),B),activeDrag:pe})}),j(this,"onResizeStop",(e,a,l,o)=>{let{e:h,node:g}=o;const{layout:x,oldResizeItem:R}=this.state,{cols:_,allowOverlap:W}=this.props,B=(0,d.getLayoutItem)(x,e),A=W?x:(0,d.compact)(x,(0,d.compactType)(this.props),_);this.props.onResizeStop(A,R,B,null,h,g);const{oldLayout:U}=this.state;this.setState({activeDrag:null,layout:A,oldResizeItem:null,oldLayout:null,resizing:!1}),this.onLayoutMaybeChanged(A,U)}),j(this,"onDragOver",e=>{var a;if(e.preventDefault(),e.stopPropagation(),f&&!((a=e.nativeEvent.target)!==null&&a!==void 0&&a.classList.contains(C)))return!1;const{droppingItem:l,onDropDragOver:o,margin:h,cols:g,rowHeight:x,maxRows:R,width:_,containerPadding:W,transformScale:B}=this.props,A=o?.(e);if(A===!1)return this.state.droppingDOMNode&&this.removeDroppingPlaceholder(),!1;const U=z(z({},l),A),{layout:V}=this.state,$=e.currentTarget.getBoundingClientRect(),Y=e.clientX-$.left,K=e.clientY-$.top,se={left:Y/B,top:K/B,e};if(this.state.droppingDOMNode){if(this.state.droppingPosition){const{left:ae,top:pe}=this.state.droppingPosition;(ae!=Y||pe!=K)&&this.setState({droppingPosition:se})}}else{const ae={cols:g,margin:h,maxRows:R,rowHeight:x,containerWidth:_,containerPadding:W||h},pe=(0,v.calcXY)(ae,K,Y,U.w,U.h);this.setState({droppingDOMNode:r.createElement("div",{key:U.i}),droppingPosition:se,layout:[...V,z(z({},U),{},{x:pe.x,y:pe.y,static:!1,isDraggable:!0})]})}}),j(this,"removeDroppingPlaceholder",()=>{const{droppingItem:e,cols:a}=this.props,{layout:l}=this.state,o=(0,d.compact)(l.filter(h=>h.i!==e.i),(0,d.compactType)(this.props),a,this.props.allowOverlap);this.setState({layout:o,droppingDOMNode:null,activeDrag:null,droppingPosition:void 0})}),j(this,"onDragLeave",e=>{e.preventDefault(),e.stopPropagation(),this.dragEnterCounter--,this.dragEnterCounter===0&&this.removeDroppingPlaceholder()}),j(this,"onDragEnter",e=>{e.preventDefault(),e.stopPropagation(),this.dragEnterCounter++}),j(this,"onDrop",e=>{e.preventDefault(),e.stopPropagation();const{droppingItem:a}=this.props,{layout:l}=this.state,o=l.find(h=>h.i===a.i);this.dragEnterCounter=0,this.removeDroppingPlaceholder(),this.props.onDrop(l,o,e)})}componentDidMount(){this.setState({mounted:!0}),this.onLayoutMaybeChanged(this.state.layout,this.props.layout)}static getDerivedStateFromProps(e,a){let l;return a.activeDrag?null:(!(0,c.deepEqual)(e.layout,a.propsLayout)||e.compactType!==a.compactType?l=e.layout:(0,d.childrenEqual)(e.children,a.children)||(l=a.layout),l?{layout:(0,d.synchronizeLayoutWithChildren)(l,e.children,e.cols,(0,d.compactType)(e),e.allowOverlap),compactType:e.compactType,children:e.children,propsLayout:e.layout}:null)}shouldComponentUpdate(e,a){return this.props.children!==e.children||!(0,d.fastRGLPropsEqual)(this.props,e,c.deepEqual)||this.state.activeDrag!==a.activeDrag||this.state.mounted!==a.mounted||this.state.droppingPosition!==a.droppingPosition}componentDidUpdate(e,a){if(!this.state.activeDrag){const l=this.state.layout,o=a.layout;this.onLayoutMaybeChanged(l,o)}}containerHeight(){if(!this.props.autoSize)return;const e=(0,d.bottom)(this.state.layout),a=this.props.containerPadding?this.props.containerPadding[1]:this.props.margin[1];return e*this.props.rowHeight+(e-1)*this.props.margin[1]+a*2+"px"}onLayoutMaybeChanged(e,a){a||(a=this.state.layout),(0,c.deepEqual)(a,e)||this.props.onLayoutChange(e)}placeholder(){const{activeDrag:e}=this.state;if(!e)return null;const{width:a,cols:l,margin:o,containerPadding:h,rowHeight:g,maxRows:x,useCSSTransforms:R,transformScale:_}=this.props;return r.createElement(w.default,{w:e.w,h:e.h,x:e.x,y:e.y,i:e.i,className:"react-grid-placeholder ".concat(this.state.resizing?"placeholder-resizing":""),containerWidth:a,cols:l,margin:o,containerPadding:h||o,maxRows:x,rowHeight:g,isDraggable:!1,isResizable:!1,isBounded:!1,useCSSTransforms:R,transformScale:_},r.createElement("div",null))}processGridItem(e,a){if(!e||!e.key)return;const l=(0,d.getLayoutItem)(this.state.layout,String(e.key));if(!l)return null;const{width:o,cols:h,margin:g,containerPadding:x,rowHeight:R,maxRows:_,isDraggable:W,isResizable:B,isBounded:A,useCSSTransforms:U,transformScale:V,draggableCancel:$,draggableHandle:Y,resizeHandles:K,resizeHandle:se}=this.props,{mounted:ae,droppingPosition:pe}=this.state,J=typeof l.isDraggable=="boolean"?l.isDraggable:!l.static&&W,ve=typeof l.isResizable=="boolean"?l.isResizable:!l.static&&B,me=l.resizeHandles||K,xe=J&&A&&l.isBounded!==!1;return r.createElement(w.default,{containerWidth:o,cols:h,margin:g,containerPadding:x||g,maxRows:_,rowHeight:R,cancel:$,handle:Y,onDragStop:this.onDragStop,onDragStart:this.onDragStart,onDrag:this.onDrag,onResizeStart:this.onResizeStart,onResize:this.onResize,onResizeStop:this.onResizeStop,isDraggable:J,isResizable:ve,isBounded:xe,useCSSTransforms:U&&ae,usePercentages:!ae,transformScale:V,w:l.w,h:l.h,x:l.x,y:l.y,i:l.i,minH:l.minH,minW:l.minW,maxH:l.maxH,maxW:l.maxW,static:l.static,droppingPosition:a?pe:void 0,resizeHandles:me,resizeHandle:se},e)}render(){const{className:e,style:a,isDroppable:l,innerRef:o}=this.props,h=(0,s.default)(C,e),g=z({height:this.containerHeight()},a);return r.createElement("div",{ref:o,className:h,style:g,onDrop:l?this.onDrop:d.noop,onDragLeave:l?this.onDragLeave:d.noop,onDragEnter:l?this.onDragEnter:d.noop,onDragOver:l?this.onDragOver:d.noop},r.Children.map(this.props.children,x=>this.processGridItem(x)),l&&this.state.droppingDOMNode&&this.processGridItem(this.state.droppingDOMNode,!0),this.placeholder())}};return Me.default=t,j(t,"displayName","ReactGridLayout"),j(t,"propTypes",O.default),j(t,"defaultProps",{autoSize:!0,cols:12,className:"",style:{},draggableHandle:"",draggableCancel:"",containerPadding:null,rowHeight:150,maxRows:1/0,layout:[],margin:[10,10],isBounded:!1,isDraggable:!0,isResizable:!0,allowOverlap:!1,isDroppable:!1,useCSSTransforms:!0,transformScale:1,verticalCompact:!0,compactType:"vertical",preventCollision:!1,droppingItem:{i:"__dropping-elem__",h:1,w:1},resizeHandles:["se"],onLayoutChange:d.noop,onDragStart:d.noop,onDrag:d.noop,onDragStop:d.noop,onResizeStart:d.noop,onResize:d.noop,onResizeStop:d.noop,onDrop:d.noop,onDropDragOver:d.noop}),Me}var Ae={},Pe={},Tt;function Yt(){if(Tt)return Pe;Tt=1,Object.defineProperty(Pe,"__esModule",{value:!0}),Pe.findOrGenerateResponsiveLayout=d,Pe.getBreakpointFromWidth=c,Pe.getColsFromBreakpoint=s,Pe.sortBreakpoints=v;var r=ke();function c(w,O){const N=v(w);let D=N[0];for(let P=1,z=N.length;P<z;P++){const j=N[P];O>w[j]&&(D=j)}return D}function s(w,O){if(!O[w])throw new Error("ResponsiveReactGridLayout: `cols` entry for breakpoint "+w+" is missing!");return O[w]}function d(w,O,N,D,P,z){if(w[N])return(0,r.cloneLayout)(w[N]);let j=w[D];const T=v(O),k=T.slice(T.indexOf(N));for(let C=0,f=k.length;C<f;C++){const t=k[C];if(w[t]){j=w[t];break}}return j=(0,r.cloneLayout)(j||[]),(0,r.compact)((0,r.correctBounds)(j,{cols:P}),z,P)}function v(w){return Object.keys(w).sort(function(N,D){return w[N]-w[D]})}return Pe}var qt;function Cr(){if(qt)return Ae;qt=1,Object.defineProperty(Ae,"__esModule",{value:!0}),Ae.default=void 0;var r=D(we()),c=N(De()),s=ut(),d=ke(),v=Yt(),w=N($t());const O=["breakpoint","breakpoints","cols","layouts","margin","containerPadding","onBreakpointChange","onLayoutChange","onWidthChange"];function N(l){return l&&l.__esModule?l:{default:l}}function D(l,o){if(typeof WeakMap=="function")var h=new WeakMap,g=new WeakMap;return(D=function(x,R){if(!R&&x&&x.__esModule)return x;var _,W,B={__proto__:null,default:x};if(x===null||typeof x!="object"&&typeof x!="function")return B;if(_=R?g:h){if(_.has(x))return _.get(x);_.set(x,B)}for(const A in x)A!=="default"&&{}.hasOwnProperty.call(x,A)&&((W=(_=Object.defineProperty)&&Object.getOwnPropertyDescriptor(x,A))&&(W.get||W.set)?_(B,A,W):B[A]=x[A]);return B})(l,o)}function P(){return P=Object.assign?Object.assign.bind():function(l){for(var o=1;o<arguments.length;o++){var h=arguments[o];for(var g in h)({}).hasOwnProperty.call(h,g)&&(l[g]=h[g])}return l},P.apply(null,arguments)}function z(l,o){if(l==null)return{};var h,g,x=j(l,o);if(Object.getOwnPropertySymbols){var R=Object.getOwnPropertySymbols(l);for(g=0;g<R.length;g++)h=R[g],o.indexOf(h)===-1&&{}.propertyIsEnumerable.call(l,h)&&(x[h]=l[h])}return x}function j(l,o){if(l==null)return{};var h={};for(var g in l)if({}.hasOwnProperty.call(l,g)){if(o.indexOf(g)!==-1)continue;h[g]=l[g]}return h}function T(l,o){var h=Object.keys(l);if(Object.getOwnPropertySymbols){var g=Object.getOwnPropertySymbols(l);o&&(g=g.filter(function(x){return Object.getOwnPropertyDescriptor(l,x).enumerable})),h.push.apply(h,g)}return h}function k(l){for(var o=1;o<arguments.length;o++){var h=arguments[o]!=null?arguments[o]:{};o%2?T(Object(h),!0).forEach(function(g){C(l,g,h[g])}):Object.getOwnPropertyDescriptors?Object.defineProperties(l,Object.getOwnPropertyDescriptors(h)):T(Object(h)).forEach(function(g){Object.defineProperty(l,g,Object.getOwnPropertyDescriptor(h,g))})}return l}function C(l,o,h){return(o=f(o))in l?Object.defineProperty(l,o,{value:h,enumerable:!0,configurable:!0,writable:!0}):l[o]=h,l}function f(l){var o=t(l,"string");return typeof o=="symbol"?o:o+""}function t(l,o){if(typeof l!="object"||!l)return l;var h=l[Symbol.toPrimitive];if(h!==void 0){var g=h.call(l,o);if(typeof g!="object")return g;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(l)}const n=l=>Object.prototype.toString.call(l);function e(l,o){return l==null?null:Array.isArray(l)?l:l[o]}let a=class extends r.Component{constructor(){super(...arguments),C(this,"state",this.generateInitialState()),C(this,"onLayoutChange",o=>{this.props.onLayoutChange(o,k(k({},this.props.layouts),{},{[this.state.breakpoint]:o}))})}generateInitialState(){const{width:o,breakpoints:h,layouts:g,cols:x}=this.props,R=(0,v.getBreakpointFromWidth)(h,o),_=(0,v.getColsFromBreakpoint)(R,x),W=this.props.verticalCompact===!1?null:this.props.compactType;return{layout:(0,v.findOrGenerateResponsiveLayout)(g,h,R,R,_,W),breakpoint:R,cols:_}}static getDerivedStateFromProps(o,h){if(!(0,s.deepEqual)(o.layouts,h.layouts)){const{breakpoint:g,cols:x}=h;return{layout:(0,v.findOrGenerateResponsiveLayout)(o.layouts,o.breakpoints,g,g,x,o.compactType),layouts:o.layouts}}return null}componentDidUpdate(o){(this.props.width!=o.width||this.props.breakpoint!==o.breakpoint||!(0,s.deepEqual)(this.props.breakpoints,o.breakpoints)||!(0,s.deepEqual)(this.props.cols,o.cols))&&this.onWidthChange(o)}onWidthChange(o){const{breakpoints:h,cols:g,layouts:x,compactType:R}=this.props,_=this.props.breakpoint||(0,v.getBreakpointFromWidth)(this.props.breakpoints,this.props.width),W=this.state.breakpoint,B=(0,v.getColsFromBreakpoint)(_,g),A=k({},x);if(W!==_||o.breakpoints!==h||o.cols!==g){W in A||(A[W]=(0,d.cloneLayout)(this.state.layout));let $=(0,v.findOrGenerateResponsiveLayout)(A,h,_,W,B,R);$=(0,d.synchronizeLayoutWithChildren)($,this.props.children,B,R,this.props.allowOverlap),A[_]=$,this.props.onBreakpointChange(_,B),this.props.onLayoutChange($,A),this.setState({breakpoint:_,layout:$,cols:B})}const U=e(this.props.margin,_),V=e(this.props.containerPadding,_);this.props.onWidthChange(this.props.width,U,B,V)}render(){const o=this.props,{breakpoint:h,breakpoints:g,cols:x,layouts:R,margin:_,containerPadding:W,onBreakpointChange:B,onLayoutChange:A,onWidthChange:U}=o,V=z(o,O);return r.createElement(w.default,P({},V,{margin:e(_,this.state.breakpoint),containerPadding:e(W,this.state.breakpoint),onLayoutChange:this.onLayoutChange,layout:this.state.layout,cols:this.state.cols}))}};return Ae.default=a,C(a,"propTypes",{breakpoint:c.default.string,breakpoints:c.default.object,allowOverlap:c.default.bool,cols:c.default.object,margin:c.default.oneOfType([c.default.array,c.default.object]),containerPadding:c.default.oneOfType([c.default.array,c.default.object]),layouts(l,o){if(n(l[o])!=="[object Object]")throw new Error("Layout property must be an object. Received: "+n(l[o]));Object.keys(l[o]).forEach(h=>{if(!(h in l.breakpoints))throw new Error("Each key in layouts must align with a key in breakpoints.");(0,d.validateLayout)(l.layouts[h],"layouts."+h)})},width:c.default.number.isRequired,onBreakpointChange:c.default.func,onLayoutChange:c.default.func,onWidthChange:c.default.func}),C(a,"defaultProps",{breakpoints:{lg:1200,md:996,sm:768,xs:480,xxs:0},cols:{lg:12,md:10,sm:6,xs:4,xxs:2},containerPadding:{lg:null,md:null,sm:null,xs:null,xxs:null},layouts:{},margin:[10,10],allowOverlap:!1,onBreakpointChange:d.noop,onLayoutChange:d.noop,onWidthChange:d.noop}),Ae}var Fe={},Xt=(function(){if(typeof Map<"u")return Map;function r(c,s){var d=-1;return c.some(function(v,w){return v[0]===s?(d=w,!0):!1}),d}return(function(){function c(){this.__entries__=[]}return Object.defineProperty(c.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),c.prototype.get=function(s){var d=r(this.__entries__,s),v=this.__entries__[d];return v&&v[1]},c.prototype.set=function(s,d){var v=r(this.__entries__,s);~v?this.__entries__[v][1]=d:this.__entries__.push([s,d])},c.prototype.delete=function(s){var d=this.__entries__,v=r(d,s);~v&&d.splice(v,1)},c.prototype.has=function(s){return!!~r(this.__entries__,s)},c.prototype.clear=function(){this.__entries__.splice(0)},c.prototype.forEach=function(s,d){d===void 0&&(d=null);for(var v=0,w=this.__entries__;v<w.length;v++){var O=w[v];s.call(d,O[1],O[0])}},c})()})(),at=typeof window<"u"&&typeof document<"u"&&window.document===document,Ye=(function(){return typeof global<"u"&&global.Math===Math?global:typeof self<"u"&&self.Math===Math?self:typeof window<"u"&&window.Math===Math?window:Function("return this")()})(),zr=(function(){return typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(Ye):function(r){return setTimeout(function(){return r(Date.now())},1e3/60)}})(),kr=2;function Lr(r,c){var s=!1,d=!1,v=0;function w(){s&&(s=!1,r()),d&&N()}function O(){zr(w)}function N(){var D=Date.now();if(s){if(D-v<kr)return;d=!0}else s=!0,d=!1,setTimeout(O,c);v=D}return N}var Mr=20,Nr=["top","right","bottom","left","width","height","size","weight"],Tr=typeof MutationObserver<"u",qr=(function(){function r(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=Lr(this.refresh.bind(this),Mr)}return r.prototype.addObserver=function(c){~this.observers_.indexOf(c)||this.observers_.push(c),this.connected_||this.connect_()},r.prototype.removeObserver=function(c){var s=this.observers_,d=s.indexOf(c);~d&&s.splice(d,1),!s.length&&this.connected_&&this.disconnect_()},r.prototype.refresh=function(){var c=this.updateObservers_();c&&this.refresh()},r.prototype.updateObservers_=function(){var c=this.observers_.filter(function(s){return s.gatherActive(),s.hasActive()});return c.forEach(function(s){return s.broadcastActive()}),c.length>0},r.prototype.connect_=function(){!at||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),Tr?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},r.prototype.disconnect_=function(){!at||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},r.prototype.onTransitionEnd_=function(c){var s=c.propertyName,d=s===void 0?"":s,v=Nr.some(function(w){return!!~d.indexOf(w)});v&&this.refresh()},r.getInstance=function(){return this.instance_||(this.instance_=new r),this.instance_},r.instance_=null,r})(),Vt=(function(r,c){for(var s=0,d=Object.keys(c);s<d.length;s++){var v=d[s];Object.defineProperty(r,v,{value:c[v],enumerable:!1,writable:!1,configurable:!0})}return r}),ze=(function(r){var c=r&&r.ownerDocument&&r.ownerDocument.defaultView;return c||Ye}),Kt=Ke(0,0,0,0);function Xe(r){return parseFloat(r)||0}function Wt(r){for(var c=[],s=1;s<arguments.length;s++)c[s-1]=arguments[s];return c.reduce(function(d,v){var w=r["border-"+v+"-width"];return d+Xe(w)},0)}function Wr(r){for(var c=["top","right","bottom","left"],s={},d=0,v=c;d<v.length;d++){var w=v[d],O=r["padding-"+w];s[w]=Xe(O)}return s}function Hr(r){var c=r.getBBox();return Ke(0,0,c.width,c.height)}function Ir(r){var c=r.clientWidth,s=r.clientHeight;if(!c&&!s)return Kt;var d=ze(r).getComputedStyle(r),v=Wr(d),w=v.left+v.right,O=v.top+v.bottom,N=Xe(d.width),D=Xe(d.height);if(d.boxSizing==="border-box"&&(Math.round(N+w)!==c&&(N-=Wt(d,"left","right")+w),Math.round(D+O)!==s&&(D-=Wt(d,"top","bottom")+O)),!Br(r)){var P=Math.round(N+w)-c,z=Math.round(D+O)-s;Math.abs(P)!==1&&(N-=P),Math.abs(z)!==1&&(D-=z)}return Ke(v.left,v.top,N,D)}var Ar=(function(){return typeof SVGGraphicsElement<"u"?function(r){return r instanceof ze(r).SVGGraphicsElement}:function(r){return r instanceof ze(r).SVGElement&&typeof r.getBBox=="function"}})();function Br(r){return r===ze(r).document.documentElement}function Gr(r){return at?Ar(r)?Hr(r):Ir(r):Kt}function Ur(r){var c=r.x,s=r.y,d=r.width,v=r.height,w=typeof DOMRectReadOnly<"u"?DOMRectReadOnly:Object,O=Object.create(w.prototype);return Vt(O,{x:c,y:s,width:d,height:v,top:s,right:c+d,bottom:v+s,left:c}),O}function Ke(r,c,s,d){return{x:r,y:c,width:s,height:d}}var Fr=(function(){function r(c){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=Ke(0,0,0,0),this.target=c}return r.prototype.isActive=function(){var c=Gr(this.target);return this.contentRect_=c,c.width!==this.broadcastWidth||c.height!==this.broadcastHeight},r.prototype.broadcastRect=function(){var c=this.contentRect_;return this.broadcastWidth=c.width,this.broadcastHeight=c.height,c},r})(),$r=(function(){function r(c,s){var d=Ur(s);Vt(this,{target:c,contentRect:d})}return r})(),Yr=(function(){function r(c,s,d){if(this.activeObservations_=[],this.observations_=new Xt,typeof c!="function")throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=c,this.controller_=s,this.callbackCtx_=d}return r.prototype.observe=function(c){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(c instanceof ze(c).Element))throw new TypeError('parameter 1 is not of type "Element".');var s=this.observations_;s.has(c)||(s.set(c,new Fr(c)),this.controller_.addObserver(this),this.controller_.refresh())}},r.prototype.unobserve=function(c){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(c instanceof ze(c).Element))throw new TypeError('parameter 1 is not of type "Element".');var s=this.observations_;s.has(c)&&(s.delete(c),s.size||this.controller_.removeObserver(this))}},r.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},r.prototype.gatherActive=function(){var c=this;this.clearActive(),this.observations_.forEach(function(s){s.isActive()&&c.activeObservations_.push(s)})},r.prototype.broadcastActive=function(){if(this.hasActive()){var c=this.callbackCtx_,s=this.activeObservations_.map(function(d){return new $r(d.target,d.broadcastRect())});this.callback_.call(c,s,c),this.clearActive()}},r.prototype.clearActive=function(){this.activeObservations_.splice(0)},r.prototype.hasActive=function(){return this.activeObservations_.length>0},r})(),Jt=typeof WeakMap<"u"?new WeakMap:new Xt,Qt=(function(){function r(c){if(!(this instanceof r))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var s=qr.getInstance(),d=new Yr(c,s,this);Jt.set(this,d)}return r})();["observe","unobserve","disconnect"].forEach(function(r){Qt.prototype[r]=function(){var c;return(c=Jt.get(this))[r].apply(c,arguments)}});var Xr=(function(){return typeof Ye.ResizeObserver<"u"?Ye.ResizeObserver:Qt})();const Vr=Object.freeze(Object.defineProperty({__proto__:null,default:Xr},Symbol.toStringTag,{value:"Module"})),Kr=er(Vr);var Ht;function Jr(){if(Ht)return Fe;Ht=1,Object.defineProperty(Fe,"__esModule",{value:!0}),Fe.default=C;var r=O(we()),c=w(De()),s=w(Kr),d=w(Ve());const v=["measureBeforeMount"];function w(f){return f&&f.__esModule?f:{default:f}}function O(f,t){if(typeof WeakMap=="function")var n=new WeakMap,e=new WeakMap;return(O=function(a,l){if(!l&&a&&a.__esModule)return a;var o,h,g={__proto__:null,default:a};if(a===null||typeof a!="object"&&typeof a!="function")return g;if(o=l?e:n){if(o.has(a))return o.get(a);o.set(a,g)}for(const x in a)x!=="default"&&{}.hasOwnProperty.call(a,x)&&((h=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(a,x))&&(h.get||h.set)?o(g,x,h):g[x]=a[x]);return g})(f,t)}function N(){return N=Object.assign?Object.assign.bind():function(f){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var e in n)({}).hasOwnProperty.call(n,e)&&(f[e]=n[e])}return f},N.apply(null,arguments)}function D(f,t){if(f==null)return{};var n,e,a=P(f,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(f);for(e=0;e<l.length;e++)n=l[e],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(f,n)&&(a[n]=f[n])}return a}function P(f,t){if(f==null)return{};var n={};for(var e in f)if({}.hasOwnProperty.call(f,e)){if(t.indexOf(e)!==-1)continue;n[e]=f[e]}return n}function z(f,t,n){return(t=j(t))in f?Object.defineProperty(f,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):f[t]=n,f}function j(f){var t=T(f,"string");return typeof t=="symbol"?t:t+""}function T(f,t){if(typeof f!="object"||!f)return f;var n=f[Symbol.toPrimitive];if(n!==void 0){var e=n.call(f,t);if(typeof e!="object")return e;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(f)}const k="react-grid-layout";function C(f){var t;return t=class extends r.Component{constructor(){super(...arguments),z(this,"state",{width:1280}),z(this,"elementRef",r.createRef()),z(this,"mounted",!1),z(this,"resizeObserver",void 0)}componentDidMount(){this.mounted=!0,this.resizeObserver=new s.default(a=>{if(this.elementRef.current instanceof HTMLElement){const o=a[0].contentRect.width;this.setState({width:o})}});const e=this.elementRef.current;e instanceof HTMLElement&&this.resizeObserver.observe(e)}componentWillUnmount(){this.mounted=!1;const e=this.elementRef.current;e instanceof HTMLElement&&this.resizeObserver.unobserve(e),this.resizeObserver.disconnect()}render(){const e=this.props,{measureBeforeMount:a}=e,l=D(e,v);return a&&!this.mounted?r.createElement("div",{className:(0,d.default)(this.props.className,k),style:this.props.style,ref:this.elementRef}):r.createElement(f,N({innerRef:this.elementRef},l,this.state))}},z(t,"defaultProps",{measureBeforeMount:!1}),z(t,"propTypes",{measureBeforeMount:c.default.bool}),t}return Fe}var It;function Qr(){return It||(It=1,(function(r){r.exports=$t().default,r.exports.utils=ke(),r.exports.calculateUtils=ct(),r.exports.Responsive=Cr().default,r.exports.Responsive.utils=Yt(),r.exports.WidthProvider=Jr().default})(Ze)),Ze.exports}var At=Qr();async function Zr(){try{const r=localStorage.getItem("widgetsData");let c=[],s={lg:[],md:[],sm:[],xs:[],xxs:[]};if(r)try{const k=JSON.parse(r);c=k.widgets||[],s=k.layout||{lg:[],md:[],sm:[],xs:[],xxs:[]}}catch(k){console.error("Error parsing data from localStorage",k)}const d=await je.get(`${window.routePrefix}/widgets-get-all-db`);let v=d.data?.widgetsDB?.widgets??[],w=d.data?.widgetsDB?.layout??{lg:[],md:[],sm:[],xs:[],xxs:[]};const O=d.data?.widgetsDB?.defaultWidgets??[],D=(await je.get(`${window.routePrefix}/widgets-get-all`)).data.widgets,P=v.length>0&&v.some(k=>k.added===!0)&&O.length===0;let z=v,j=w;if(!P&&O.length>0){const k=[];let C=0,f=0;D.forEach(n=>{O.includes(n.id.split("__")[0])&&(n.added=!0,k.push(n))});const t={lg:[],md:[],sm:[],xs:[],xxs:[]};k.forEach(n=>{const e=n.size?.w||1,a=n.size?.h||1,l={x:C,y:f,w:e,h:a,i:n.id,id:n.id};t.lg.push(l),t.md.push(l),t.sm.push({...l,w:Math.min(e,4)}),t.xs.push({...l,w:Math.min(e,3)}),t.xxs.push({...l,w:2}),C+=e,C>=12&&(C=0,f+=a)}),z=k,j=t,localStorage.removeItem("widgetsData")}else if(P&&r){const k=v.map(n=>n.id).sort(),C=c.map(n=>n.id).sort();k.length===C.length&&k.every((n,e)=>n===C[e])&&c.length>0&&(z=c,j=s);const t={widgets:z,layout:j};localStorage.setItem("widgetsData",JSON.stringify(t))}const T=D.map(k=>{const C=z.find(f=>f.id===k.id);return C&&C.added?{...k,added:!0}:k});return{layout:j,widgets:T}}catch(r){throw console.error("Error initializing widgets:",r),r}}const en=({initWidgets:r,onAddWidgets:c,disabled:s,searchPlaceholder:d,actionsTitles:v})=>{const{t:w}=Bt(),[O,N]=ie.useState({switchers:{items:[],title:""},info:{items:[],title:""},actions:{items:[],title:""},links:{items:[],title:""},custom:{items:[],title:""},filters:{items:[],title:""}}),[D,P]=ie.useState([]),[z,j]=ie.useState(""),[T,k]=ie.useState("");ie.useEffect(()=>{const t={switchers:{items:[],title:""},info:{items:[],title:""},actions:{items:[],title:""},links:{items:[],title:""},custom:{items:[],title:""},filters:{items:[],title:""}},n=[];for(const e of r){if(e.group==="filters"){if(t.filters.items.push(e),n.find(a=>a.type==="filters"))continue;t.filters.title=v.Filters,n.push({type:"filters",title:v.Filters});continue}if(e.type==="switcher"){if(t.switchers.items.push(e),n.find(a=>a.type==="switchers"))continue;t.switchers.title=v.Switcher,n.push({type:"switchers",title:v.Switcher})}if(e.type==="info"){if(t.info.items.push(e),n.find(a=>a.type==="info"))continue;t.info.title=v.Info,n.push({type:"info",title:v.Info})}if(e.type==="action"){if(t.actions.items.push(e),n.find(a=>a.type==="actions"))continue;t.actions.title=v.Actions,n.push({type:"actions",title:v.Actions})}if(e.type==="link"){if(t.links.items.push(e),n.find(a=>a.type==="links"))continue;t.links.title=v["Fast links"],n.push({type:"links",title:v["Fast links"]})}if(e.type==="custom"){if(t.custom.items.push(e),n.find(a=>a.type==="custom"))continue;t.custom.title=v.Custom,n.push({type:"custom",title:v.Custom})}}N(t),P(n)},[r]);const C=ie.useCallback(()=>{if(z){const t=O[z];return T.length>=1?{[z]:{...t,items:t.items.filter(n=>n.name.toLowerCase().includes(T.toLowerCase()))}}:{[z]:t}}if(T.length>=1){let t={search:{items:[],title:w("Search")}};for(const n of Object.keys(O)){const e=O[n].items.filter(a=>a.name.toLowerCase().includes(T.toLowerCase()));t.search.items=[...t.search.items,...e]}return t}return O},[O,z,T]),f=ie.useCallback(t=>{c(t)},[O,c]);return M.jsxs("div",{className:s?"opacity-50 pointer-events-none":"",children:[M.jsxs("div",{className:"flex flex-col gap-4 pl-1",children:[M.jsxs("div",{className:"flex gap-x-7 gap-y-2 flex-wrap font-medium text-base md:text-lg",children:[M.jsx("div",{className:`cursor-pointer hover:text-primary hover:underline transition-all ${z?"":"text-primary underline"}`,onClick:()=>j(""),children:v.All}),D.length>0&&D.map(t=>M.jsx("div",{className:`cursor-pointer hover:text-primary hover:underline transition-all ${z===t.type?"text-primary underline":""}`,onClick:()=>j(t.type),children:t.title},t.type))]}),M.jsx(tr,{type:"search",className:"max-w-md",placeholder:d,value:T,onChange:t=>k(t.target.value)})]}),M.jsx("div",{className:"mt-6 flex flex-col gap-6",children:Object.entries(C()).map(([t,n])=>M.jsxs("div",{children:[M.jsx("h2",{className:"text-lg lg:text-xl font-medium mb-4",children:n.title}),n.items.length>0?M.jsx("div",{className:"mt-2 flex flex-wrap gap-2 justify-center md:justify-start",children:n.items.map(e=>M.jsxs(rr,{className:"min-h-[225px] min-w-[200px] justify-between",children:[M.jsx(nr,{children:M.jsxs(or,{className:"flex justify-between items-center gap-2 flex-wrap",children:[e.name,e.icon&&M.jsx(lt,{name:e.icon,className:"text-primary"})]})}),M.jsx(ir,{className:"justify-end",children:e.added?M.jsx($e,{variant:"destructive",onClick:()=>f(e.id),children:w("Hide")}):M.jsx($e,{onClick:()=>f(e.id),children:w("Show")})})]},e.id))}):M.jsx("p",{className:"text-muted-foreground",children:w("No widgets found")})]},t))})]})},it=["rgba(143, 116, 123, 1)","rgba(105, 143, 118, 1)","rgba(143, 105, 105, 1)","rgba(105, 143, 143, 1)","rgba(143, 105, 72, 1)","rgba(143, 143, 72, 1)","rgba(124, 105, 143, 1)","rgba(105, 143, 127, 1)","rgba(143, 104, 143, 1)","rgba(143, 128, 104, 1)","rgba(105, 143, 100, 1)","rgba(129, 105, 143, 1)","rgba(143, 105, 143, 1)","rgba(105, 143, 143, 1)","rgba(143, 135, 105, 1)","rgba(105, 143, 135, 1)"];function tn(r){let c=0;for(let s=0;s<r.length;s++)c=r.charCodeAt(s)+((c<<5)-c);return c}function rn(r){const c=tn(r.toString()),s=Math.abs(c%it.length);return it[s]||it[0]}const nn=({widgets:r,draggable:c,ID:s})=>{const{t:d}=Bt(),[v,w]=ie.useState(void 0),[O,N]=ie.useState({name:null,info:null,description:null,icon:"box",backgroundColor:"",state:null,scriptUrl:""}),[D,P]=ie.useState(null),[z,j]=ie.useState(!1),T=ie.useRef(null);ie.useEffect(()=>{const o=r.find(g=>g.id===s);if(!o)return;const h=o.type;switch(w(h),N(g=>({...g,name:o.name,description:o.description,icon:o.icon||"widgets",backgroundColor:o.backgroundCSS||rn(s),scriptUrl:o.scriptUrl||""})),h){case"info":o.api&&k(o.api);break;case"switcher":o.api&&C(o.api);break;case"custom":(async()=>{const R=(await import(o.scriptUrl)).default;P(M.jsx(R,{}))})();break}},[r,s]);const k=async o=>{try{const h=await je.get(o);N(g=>({...g,info:h.data}))}catch(h){console.error("Error fetching widget info:",h)}},C=async o=>{try{const h=await je.get(o);N(g=>({...g,state:h.data.state}))}catch(h){console.error("Error fetching widget state:",h)}},f=()=>{const o=r.find(h=>h.id===s);o?.link&&(o?.linkType==="self"?sr.visit(o.link):window.open(o.link,"_blank","noopener,noreferrer"))},t=async o=>{try{const h=await je.post(o);N(g=>({...g,state:h.data.state}))}catch(h){console.error("Error switching widget state:",h)}},n=async o=>{j(!0);try{await je.post(o),yt.success(d("Action completed"))}catch(h){console.error("Error performing widget action:",h),yt.error(d("Action failed"))}finally{j(!1)}},e=async()=>{if(!v||c||z)return;const o=r.find(g=>g.id===s);if(v==="info"&&!o?.link)return;const h=T.current;if(h){h.classList.add("widget--switching");try{const g=r.find(x=>x.id===s)?.api;switch(v){case"info":case"link":f();break;case"switcher":g&&await t(g);break;case"action":g&&await n(g);break;default:break}}finally{h.classList.remove("widget--switching")}}},a=()=>{if(c)return"widget-flexible--flex";const o=r.find(x=>x.id===s),h=v==="info"&&o?.link,g=v!=="info"||h?"cursor-pointer hover:brightness-110":"";return z?`${g} pointer-events-none opacity-60`:g},l=()=>{switch(v){case"info":return M.jsx("div",{children:O.info});case"switcher":return M.jsx("span",{className:"text-lg font-bold",children:O.state?d("On"):d("Off")});default:return null}};return M.jsx(M.Fragment,{children:v==="custom"?M.jsx("div",{className:"flex justify-center items-center w-full h-full rounded-md border",style:{backgroundColor:O.backgroundColor},children:D||M.jsx(mt,{className:"size-10 animate-spin text-neutral-500"})}):M.jsxs("div",{id:s,className:`relative transition rounded-md birder w-full h-full ${a()}`,style:{backgroundColor:O.backgroundColor},onClick:e,ref:T,children:[z&&M.jsx("div",{className:"absolute inset-0 z-10 flex items-center justify-center rounded-md bg-black/20",children:M.jsx(mt,{className:"size-8 animate-spin text-white"})}),M.jsxs("div",{className:"text-amber-50 flex flex-col justify-between gap-2.5 p-3 w-full h-full",children:[M.jsxs("div",{children:[M.jsx("span",{className:"font-bold",children:O.name}),M.jsx("p",{className:"text-sm",children:O.description})]}),M.jsxs("div",{className:"flex items-end justify-between gap-5",children:[l(),M.jsx("span",{className:"admin-widgets__icon",children:M.jsx(lt,{name:O.icon})})]})]})]})})},on=()=>{const r=ie.useMemo(()=>At.WidthProvider(At.Responsive),[]),[c,s]=ie.useState({lg:[],md:[],sm:[],xs:[],xxs:[]}),[d,v]=ie.useState([]),[w,O]=ie.useState(!1),[N,D]=ie.useState(0),[P,z]=ie.useState(!0),[j,T]=ie.useState(!1),[k,C]=ie.useState(null),f=ar(),t=ie.useCallback(()=>{if(!k)return"lg";const o=k.clientWidth;return o>=1200?"lg":o>=996?"md":o>=768?"sm":o>=480?"xs":"xxs"},[k]);ie.useEffect(()=>{async function o(){try{const{layout:h,widgets:g}=await Zr();v(g),s(h)}catch(h){console.error("Failed to load widgets:",h)}finally{z(!1)}}o()},[]);const n=ie.useCallback(o=>{T(o),o||l(d,c).then(()=>{setTimeout(()=>{O(!1)},300)})},[c,j]),e=o=>{const h=t();s(g=>{const x={...g},R=new Map(o.map(_=>[_.i,_]));return x[h]=x[h].map(_=>{const W=R.get(_.i);return W?{..._,x:W.x,y:W.y,w:W.w,h:W.h}:_}),x})},a=ie.useCallback(o=>{O(!0);const h=d.map(_=>_.id===o?{..._,added:!_.added}:_),g=c.lg,x=g.find(_=>_.i===o);let R={...c};if(x)for(const _ in R)R[_]=R[_].filter(W=>W.i!==o);else{const _=d.find($=>$.id===o),W=_?.size?_.size.w:1,B=_?.size?_.size.h:1,V={x:g.length===0||g[g.length-1].x+g[g.length-1].w>8||g[g.length-1].x+g[g.length-1].w+W>8?0:g[g.length-1].x+g[g.length-1].w,y:0,w:W,h:B,i:o,id:_?.id};for(const $ in R)R[$].some(Y=>Y.i===o)||(R[$]=[...R[$],{...V}])}v(h),s(R),D(_=>_+1),l(h,R).then(()=>{setTimeout(()=>{O(!1)},300)})},[c,d]),l=ie.useCallback(async(o,h)=>{try{const g=o.filter(R=>R.added===!0);await je.post(`${window.routePrefix}/widgets-get-all-db`,{widgets:g,layout:h});const x={widgets:g,layout:h};localStorage.setItem("widgetsData",JSON.stringify(x))}catch(g){console.log(g)}},[d]);return M.jsxs(M.Fragment,{children:[M.jsx(lr,{position:"top-center",richColors:!0,closeButton:!0}),M.jsx("div",{className:"flex h-full flex-1 flex-col gap-4 rounded-xl p-4 ",children:P?M.jsxs("div",{children:[M.jsx(Oe,{className:"h-8 w-full rounded-md"}),M.jsxs("div",{className:"flex flex-wrap mt-8 gap-6",children:[M.jsx(Oe,{className:"h-20 w-40 rounded-md"}),M.jsx(Oe,{className:"h-30 w-80 rounded-md"}),M.jsx(Oe,{className:"h-40 w-50 rounded-md"}),M.jsx(Oe,{className:"h-40 w-50 rounded-md"}),M.jsx(Oe,{className:"h-24 w-60 rounded-md"}),M.jsx(Oe,{className:"h-32 w-70 rounded-md"}),M.jsx(Oe,{className:"h-28 w-45 rounded-md"})]})]}):M.jsxs(M.Fragment,{children:[M.jsxs("div",{className:"flex justify-between items-center mr-16",children:[M.jsx("h1",{className:"font-bold text-xl",children:f.props.title}),M.jsxs("div",{className:"flex gap-4 items-center",children:[M.jsx(ur,{children:M.jsxs(cr,{children:[M.jsx(dr,{asChild:!0,children:M.jsx($e,{variant:"outline",className:"rounded-full !p-2 size-6 cursor-pointer",children:"?"})}),M.jsx(fr,{align:"end",side:"bottom",children:M.jsx("p",{children:f.props.tooltip})})]})}),M.jsx(pr,{className:"cursor-pointer",checked:j,onCheckedChange:n}),M.jsxs(hr,{children:[M.jsx(gr,{asChild:!0,children:M.jsx($e,{variant:"ghost",size:"icon",children:M.jsx(lt,{name:"add_box",className:"text-primary"})})}),M.jsx(mr,{}),M.jsx(yr,{children:M.jsx(vr,{children:M.jsxs("div",{className:"h-full",children:[M.jsx(br,{className:"font-bold leading-none tracking-tight py-4 mr-8 sticky border-b text-xl",children:f.props.title}),M.jsx("div",{className:"overflow-auto h-[calc(100%-64px)] pr-4 pt-4",children:M.jsx(en,{initWidgets:d,onAddWidgets:a,disabled:w,searchPlaceholder:f.props.searchPlaceholder,actionsTitles:f.props.actionsTitles})})]})})})]})]})]}),M.jsx("div",{ref:C,children:c.lg.length>0?M.jsx(r,{layouts:c,breakpoints:{lg:1200,md:996,sm:768,xs:480,xxs:0},cols:{lg:8,md:6,sm:4,xs:2,xxs:1},rowHeight:131,onDragStop:e,isResizable:!1,isDraggable:j,className:"overflow-hidden max-w-[1440px]",children:c.lg.map(o=>M.jsx("div",{children:M.jsx(nn,{draggable:j,widgets:d,ID:o.id})},o.i))},N):M.jsx("p",{className:"text-center mt-8 text-muted-foreground",children:f.props.notWidgets})})]})})]})},sn=[];function an(){return M.jsx(on,{})}const vn=wr(an,{breadcrumbs:sn});export{vn as default};
@@ -0,0 +1 @@
1
+ import{r as S,i as y}from"./isObject-DL-BuaBl.js";import{t as b}from"./toNumber-DZb-r9sy.js";var h=function(){return S.Date.now()},R="Expected a function",A=Math.max,F=Math.min;function _(x,i,a){var u,d,m,f,n,r,o=0,E=!1,l=!1,g=!0;if(typeof x!="function")throw new TypeError(R);i=b(i)||0,y(a)&&(E=!!a.leading,l="maxWait"in a,m=l?A(b(a.maxWait)||0,i):m,g="trailing"in a?!!a.trailing:g);function v(e){var t=u,c=d;return u=d=void 0,o=e,f=x.apply(c,t),f}function p(e){return o=e,n=setTimeout(s,i),E?v(e):f}function C(e){var t=e-r,c=e-o,W=i-t;return l?F(W,m-c):W}function k(e){var t=e-r,c=e-o;return r===void 0||t>=i||t<0||l&&c>=m}function s(){var e=h();if(k(e))return I(e);n=setTimeout(s,C(e))}function I(e){return n=void 0,g&&u?v(e):(u=d=void 0,f)}function L(){n!==void 0&&clearTimeout(n),o=0,u=r=d=n=void 0}function M(){return n===void 0?f:I(h())}function T(){var e=h(),t=k(e);if(u=arguments,d=this,r=e,t){if(n===void 0)return p(r);if(l)return clearTimeout(n),n=setTimeout(s,i),v(r)}return n===void 0&&(n=setTimeout(s,i)),f}return T.cancel=L,T.flush=M,T}export{_ as d};
@@ -0,0 +1 @@
1
+ function J(n){return Math.abs(n=Math.round(n))>=1e21?n.toLocaleString("en").replace(/,/g,""):n.toString(10)}function j(n,t){if(!isFinite(n)||n===0)return null;var e=(n=t?n.toExponential(t-1):n.toExponential()).indexOf("e"),i=n.slice(0,e);return[i.length>1?i[0]+i.slice(2):i,+n.slice(e+1)]}function K(n){return n=j(Math.abs(n)),n?n[1]:NaN}function Q(n,t){return function(e,i){for(var o=e.length,a=[],c=0,h=n[0],M=0;o>0&&h>0&&(M+h+1>i&&(h=Math.max(1,i-M)),a.push(e.substring(o-=h,o+h)),!((M+=h+1)>i));)h=n[c=(c+1)%n.length];return a.reverse().join(t)}}function V(n){return function(t){return t.replace(/[0-9]/g,function(e){return n[+e]})}}var W=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function $(n){if(!(t=W.exec(n)))throw new Error("invalid format: "+n);var t;return new L({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}$.prototype=L.prototype;function L(n){this.fill=n.fill===void 0?" ":n.fill+"",this.align=n.align===void 0?">":n.align+"",this.sign=n.sign===void 0?"-":n.sign+"",this.symbol=n.symbol===void 0?"":n.symbol+"",this.zero=!!n.zero,this.width=n.width===void 0?void 0:+n.width,this.comma=!!n.comma,this.precision=n.precision===void 0?void 0:+n.precision,this.trim=!!n.trim,this.type=n.type===void 0?"":n.type+""}L.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function _(n){n:for(var t=n.length,e=1,i=-1,o;e<t;++e)switch(n[e]){case".":i=o=e;break;case"0":i===0&&(i=e),o=e;break;default:if(!+n[e])break n;i>0&&(i=0);break}return i>0?n.slice(0,i)+n.slice(o+1):n}var N;function v(n,t){var e=j(n,t);if(!e)return N=void 0,n.toPrecision(t);var i=e[0],o=e[1],a=o-(N=Math.max(-8,Math.min(8,Math.floor(o/3)))*3)+1,c=i.length;return a===c?i:a>c?i+new Array(a-c+1).join("0"):a>0?i.slice(0,a)+"."+i.slice(a):"0."+new Array(1-a).join("0")+j(n,Math.max(0,t+a-1))[0]}function X(n,t){var e=j(n,t);if(!e)return n+"";var i=e[0],o=e[1];return o<0?"0."+new Array(-o).join("0")+i:i.length>o+1?i.slice(0,o+1)+"."+i.slice(o+1):i+new Array(o-i.length+2).join("0")}const O={"%":(n,t)=>(n*100).toFixed(t),b:n=>Math.round(n).toString(2),c:n=>n+"",d:J,e:(n,t)=>n.toExponential(t),f:(n,t)=>n.toFixed(t),g:(n,t)=>n.toPrecision(t),o:n=>Math.round(n).toString(8),p:(n,t)=>X(n*100,t),r:X,s:v,X:n=>Math.round(n).toString(16).toUpperCase(),x:n=>Math.round(n).toString(16)};function R(n){return n}var U=Array.prototype.map,Y=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function nn(n){var t=n.grouping===void 0||n.thousands===void 0?R:Q(U.call(n.grouping,Number),n.thousands+""),e=n.currency===void 0?"":n.currency[0]+"",i=n.currency===void 0?"":n.currency[1]+"",o=n.decimal===void 0?".":n.decimal+"",a=n.numerals===void 0?R:V(U.call(n.numerals,String)),c=n.percent===void 0?"%":n.percent+"",h=n.minus===void 0?"−":n.minus+"",M=n.nan===void 0?"NaN":n.nan+"";function T(f,g){f=$(f);var b=f.fill,p=f.align,m=f.sign,w=f.symbol,S=f.zero,E=f.width,F=f.comma,y=f.precision,C=f.trim,d=f.type;d==="n"?(F=!0,d="g"):O[d]||(y===void 0&&(y=12),C=!0,d="g"),(S||b==="0"&&p==="=")&&(S=!0,b="0",p="=");var q=(g&&g.prefix!==void 0?g.prefix:"")+(w==="$"?e:w==="#"&&/[boxX]/.test(d)?"0"+d.toLowerCase():""),B=(w==="$"?i:/[%p]/.test(d)?c:"")+(g&&g.suffix!==void 0?g.suffix:""),D=O[d],H=/[defgprs%]/.test(d);y=y===void 0?6:/[gprs]/.test(d)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y));function G(r){var l=q,u=B,x,I,k;if(d==="c")u=D(r)+u,r="";else{r=+r;var P=r<0||1/r<0;if(r=isNaN(r)?M:D(Math.abs(r),y),C&&(r=_(r)),P&&+r==0&&m!=="+"&&(P=!1),l=(P?m==="("?m:h:m==="-"||m==="("?"":m)+l,u=(d==="s"&&!isNaN(r)&&N!==void 0?Y[8+N/3]:"")+u+(P&&m==="("?")":""),H){for(x=-1,I=r.length;++x<I;)if(k=r.charCodeAt(x),48>k||k>57){u=(k===46?o+r.slice(x+1):r.slice(x))+u,r=r.slice(0,x);break}}}F&&!S&&(r=t(r,1/0));var z=l.length+r.length+u.length,s=z<E?new Array(E-z+1).join(b):"";switch(F&&S&&(r=t(s+r,s.length?E-u.length:1/0),s=""),p){case"<":r=l+r+u+s;break;case"=":r=l+s+r+u;break;case"^":r=s.slice(0,z=s.length>>1)+l+r+u+s.slice(z);break;default:r=s+l+r+u;break}return a(r)}return G.toString=function(){return f+""},G}function Z(f,g){var b=Math.max(-8,Math.min(8,Math.floor(K(g)/3)))*3,p=Math.pow(10,-b),m=T((f=$(f),f.type="f",f),{suffix:Y[8+b/3]});return function(w){return m(p*w)}}return{format:T,formatPrefix:Z}}var A,tn,rn;en({thousands:",",grouping:[3],currency:["$",""]});function en(n){return A=nn(n),tn=A.format,rn=A.formatPrefix,A}export{rn as a,tn as b,K as e,$ as f};
@@ -0,0 +1,30 @@
1
+ import{I as X}from"./chunk-2Q5K7J3B-CXISVKTC.js";import{p as z}from"./chunk-JWPE2WC7-DaxI9q0u.js";import{n as O,b as G,s as Y,o as P,g as F,a as Z,_ as g,A as N,l as A,D as q,d as U,y as E,B as j,p as J,i as K,ak as Q,al as ee}from"./mermaid.core-aKMJHeEk.js";import{p as te}from"./cynefin-OW5HDTMX-B1iLDXCC.js";import"./app-Ca5yUSBv.js";import"./isObject-DL-BuaBl.js";var D=/[─━│┃└┗├┣]/,L=/[└┗├┣]/,ne=/[─━]/,k=/^[\s│┃]+$/,T=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,V=/^\s*%%/,re=" ";function _(n){return n.some(t=>D.test(t))}g(_,"isBoxDrawingFormat");function M(n){for(const t of n){const e=L.exec(t);if(e?.index&&e.index>0)return e.index}return 4}g(M,"inferSegmentWidth");function S(n,t){return n.replace(/\bline\s+(\d+)\b/gi,(e,r)=>{const s=parseInt(r,10),i=t.get(s);return i?`line ${i}`:e})}g(S,"remapErrorLines");function R(n){const t=n.split(`
2
+ `),e=new Map;let r=-1;for(const[p,c]of t.entries())if(c.trim()==="treeView-beta"){r=p;break}if(r===-1)return{text:n,lineMap:e};const s=[];for(let p=r+1;p<t.length;p++){const c=t[p];c.trim()===""||V.test(c)||T.test(c)||k.test(c)||s.push(c.replace(/\t/g," "))}if(!_(s))return{text:n,lineMap:e};const i=M(s),o=[];let a=0;for(let p=0;p<=r;p++)o.push(t[p]),a++,e.set(a,p+1);for(let p=r+1;p<t.length;p++){const c=t[p],d=c.trim(),h=p+1;if(d===""){o.push(c),a++,e.set(a,h);continue}if(V.test(c)){o.push(c),a++,e.set(a,h);continue}if(T.test(c)){o.push(c),a++,e.set(a,h);continue}if(k.test(c))continue;const l=c.replace(/\t/g," "),w=L.exec(l);if(w?.index!==void 0){const f=w.index,m=Math.round(f/i)+1;let u=f+1;for(;u<l.length&&ne.test(l[u]);)u++;for(;u<l.length&&l[u]===" ";)u++;const v=l.slice(u).trimEnd();if(!v)throw new Error(`Line ${h}: Empty node — expected a filename or directory name after the box-drawing prefix`);const W=re.repeat(m);o.push(W+v),a++,e.set(a,h)}else{if(/^[\s─━│┃└┗├┣]+$/.test(l))continue;if(D.test(l))o.push(c),a++,e.set(a,h);else{if(/^\s+/.test(l))throw new Error(`Line ${h}: Unexpected indentation without box-drawing characters. In box-drawing format, use ├── or └── prefixes for indented nodes.`);o.push(c),a++,e.set(a,h)}}}return{text:o.join(`
3
+ `),lineMap:e}}g(R,"preprocessBoxDrawing");var x=new X(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),ie=g(()=>{x.reset(),J()},"clear"),oe=g(()=>x.records.stack[0],"getRoot"),se=g(()=>x.records.cnt,"getCount"),ae=j.treeView,ce=g(()=>N(ae,E().treeView),"getConfig"),le=g((n,t,e,r,s,i)=>{for(;n<=x.records.stack[x.records.stack.length-1].level;)x.records.stack.pop();const o={id:x.records.cnt++,level:n,name:t,nodeType:e,icon:s,cssClass:r,description:i,children:[]};x.records.stack[x.records.stack.length-1].children.push(o),x.records.stack.push(o)},"addNode"),de={clear:ie,addNode:le,getRoot:oe,getCount:se,getConfig:ce,getAccTitle:Z,getAccDescription:F,getDiagramTitle:P,setAccDescription:Y,setAccTitle:G,setDiagramTitle:O},I=de,he=g(n=>{z(n,I);for(const t of n.nodes){const e=typeof t.indent=="number"?t.indent:0;let r=t.name;const s=r.endsWith("/");s&&(r=r.slice(0,-1));const i=s?"directory":"file",o=t.classAnnotation||void 0,a=t.iconAnnotation,p=a!==void 0?a||"none":void 0,c=t.descAnnotation||void 0,d=c?K(c,E()):void 0;I.addNode(e,r,i,o,p,d)}},"populate"),pe={parse:g(async n=>{const{text:t,lineMap:e}=R(n);try{const r=await te("treeView",t);A.debug(r),he(r)}catch(r){throw e.size>0&&r instanceof Error&&(r.message=S(r.message,e)),r}},"parse")},b={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};function H(n,t){const e=t?.filenameIcons?.[n];if(e)return e;const r=n.lastIndexOf(".");if(r>0){const s=n.substring(r).toLowerCase(),i=t?.extensionIcons;return i?.[s]??i?.[s.slice(1)]}}g(H,"detectIcon");function C(n,t){return n.includes(":")?n:n in b.icons||!t?`${b.prefix}:${n}`:`${t}:${n}`}g(C,"qualifyIcon");function B(n,t){if(n.icon!=="none"){if(n.icon)return C(n.icon,t.defaultIconPack);if(t.showIcons){if(n.nodeType==="file"){const e=H(n.name,t);if(e==="none")return;if(e)return C(e,t.defaultIconPack)}return`${b.prefix}:${n.nodeType==="directory"?"folder":"file"}`}}}g(B,"getNodeIcon");ee([{name:b.prefix,icons:b}]);var y=14,ge=4,fe=16,ue=g(async(n,t)=>{const e=[],r=g(i=>{const o=B(i,t);o&&e.push({icon:o,node:i}),i.children.forEach(r)},"collect");r(n);const s=await Promise.all(e.map(async({icon:i,node:o})=>({id:o.id,svg:await Q(i,{height:y,width:y})})));return new Map(s.map(({id:i,svg:o})=>[i,o]))},"resolveNodeIcons"),we=g((n,t,e,r,s,i)=>{const o=r.append("g");let a="treeView-node-label";e.nodeType==="directory"&&(a+=" treeView-node-dir"),e.cssClass&&(a+=` ${e.cssClass}`);const p=y+ge,c=B(e,s),d=c!==void 0;c&&o.append("g").attr("class","treeView-node-icon").attr("transform",`translate(${n+s.paddingX}, ${t+s.paddingY})`).html(i.get(e.id)??"");const h=o.append("text").text(e.name).attr("dominant-baseline","middle").attr("class",a),{height:l,width:w}=h.node().getBBox(),f=l+s.paddingY*2,m=n+s.paddingX+(d?p:0);h.attr("x",m),h.attr("y",t+f/2);const u=m+w,v=w+s.paddingX*2+(d?p:0);return e.BBox={x:n,y:t,width:v,height:f},e.cssClass?.split(/\s+/).includes("highlight")&&o.insert("rect",":first-child").attr("x",n).attr("y",t+1).attr("width",0).attr("height",f-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:e,nodeGroup:o,labelRightEdge:u,centerY:t+f/2}},"positionLabel"),$=g((n,t,e,r,s,i)=>n.append("line").attr("x1",t).attr("y1",e).attr("x2",r).attr("y2",s).attr("stroke-width",i).attr("class","treeView-node-line"),"positionLine"),me=g((n,t,e,r)=>{let s=0,i=0;const o=[],a=g((d,h,l,w)=>{const f=w*(l.rowIndent+l.paddingX),m=we(f,s,h,d,l,r);o.push(m);const{height:u,width:v}=h.BBox;$(d,f-l.rowIndent,s+u/2,f,s+u/2,l.lineThickness),i=Math.max(i,f+v),s+=u},"drawNode"),p=g((d,h=0)=>{a(n,d,e,h),d.children.forEach(m=>{p(m,h+1)});const{x:l,y:w,height:f}=d.BBox;if(d.children.length){const{y:m,height:u}=d.children[d.children.length-1].BBox;$(n,l+e.paddingX,w+f,l+e.paddingX,m+u/2+e.lineThickness/2,e.lineThickness)}},"processNode");p(t);const c=o.filter(d=>d.node.description);if(c.length>0){const h=Math.max(...o.map(l=>l.labelRightEdge))+fe;for(const l of c){const f=l.nodeGroup.append("text").text(l.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",h).attr("y",l.centerY).node().getBBox();i=Math.max(i,h+f.width+e.paddingX)}}for(const d of o)if(d.node.cssClass?.split(/\s+/).includes("highlight")){const h=d.nodeGroup.select(".treeView-highlight-bg");if(!h.empty()){const l=i-d.node.BBox.x+8;h.attr("width",l),i=Math.max(i,d.node.BBox.x+l+2)}}return{totalHeight:s,totalWidth:i}},"drawTree"),xe=g(async(n,t,e,r)=>{A.debug(`Rendering treeView diagram
4
+ `+n);const s=r.db,i=s.getRoot(),o=s.getConfig(),a=q(t),p=a.append("g");p.attr("class","tree-view");const c=await ue(i,o),{totalHeight:d,totalWidth:h}=me(p,i,o,c);a.attr("viewBox",`-${o.lineThickness/2} 0 ${h} ${d}`),U(a,d,h,o.useMaxWidth)},"draw"),ve={draw:xe},be=ve,Ie={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},Ce=g(({treeView:n})=>{const{labelFontSize:t,labelColor:e,lineColor:r,iconColor:s,descriptionColor:i,highlightBg:o,highlightStroke:a}=N(Ie,n);return`
5
+ .treeView-node-label {
6
+ font-size: ${t};
7
+ fill: ${e};
8
+ white-space: pre;
9
+ }
10
+ .treeView-node-dir {
11
+ font-weight: bold;
12
+ }
13
+ .treeView-node-line {
14
+ stroke: ${r};
15
+ }
16
+ .treeView-node-icon {
17
+ color: ${s};
18
+ }
19
+ .treeView-node-description {
20
+ font-size: ${t};
21
+ fill: ${i};
22
+ font-style: italic;
23
+ white-space: pre;
24
+ }
25
+ .treeView-highlight-bg {
26
+ fill: ${o};
27
+ stroke: ${a};
28
+ stroke-width: 1;
29
+ }
30
+ `},"styles"),ye=Ce,Ae={db:I,renderer:be,parser:pe,styles:ye};export{Ae as diagram};
@@ -0,0 +1,41 @@
1
+ import{p as I}from"./chunk-JWPE2WC7-DaxI9q0u.js";import{s as _,g as E,o as D,n as F,a as P,b as z,_ as c,D as G,p as B,A as w,B as W,y as C,l as b,E as V,d as H}from"./mermaid.core-aKMJHeEk.js";import{p as j}from"./cynefin-OW5HDTMX-B1iLDXCC.js";import"./app-Ca5yUSBv.js";import"./isObject-DL-BuaBl.js";var x={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},y=32,A={axes:[],curves:[],options:x},m=structuredClone(A),U=W.radar,X=c(()=>w({...U,...C().radar}),"getConfig"),M=c(()=>m.axes,"getAxes"),K=c(()=>m.curves,"getCurves"),N=c(()=>m.options,"getOptions"),Y=c(a=>{m.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),Z=c(a=>{m.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:q(t.entries)}))},"setCurves"),q=c(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=M();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>s.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),J=c(a=>{const t=a.reduce((e,r)=>(e[r.name]=r,e),{});m.options={showLegend:t.showLegend?.value??x.showLegend,ticks:t.ticks?.value??x.ticks,max:t.max?.value??x.max,min:t.min?.value??x.min,graticule:t.graticule?.value??x.graticule},m.options.ticks>y&&(b.warn(`Radar diagram ticks (${m.options.ticks}) exceeds maximum allowed (${y}). Using ${y} instead.`),m.options.ticks=y)},"setOptions"),Q=c(()=>{B(),m=structuredClone(A)},"clear"),$={getAxes:M,getCurves:K,getOptions:N,setAxes:Y,setCurves:Z,setOptions:J,getConfig:X,clear:Q,setAccTitle:z,getAccTitle:P,setDiagramTitle:F,getDiagramTitle:D,getAccDescription:E,setAccDescription:_},tt=c(a=>{I(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),et={parse:c(async a=>{const t=await j("radar",a);b.debug(t),tt(t)},"parse")},at=c((a,t,e,r)=>{const s=r.db,i=s.getAxes(),l=s.getCurves(),n=s.getOptions(),o=s.getConfig(),d=s.getDiagramTitle(),p=G(t),u=rt(p,o),g=n.max??Math.max(...l.map(f=>Math.max(...f.entries))),h=n.min,v=Math.min(o.width,o.height)/2;st(u,i,v,n.ticks,n.graticule),nt(u,i,v,o),L(u,i,l,h,g,n.graticule,o),k(u,l,n.showLegend,o),u.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-o.height/2-o.marginTop)},"draw"),rt=c((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return H(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`).attr("overflow","visible"),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),st=c((a,t,e,r,s)=>{if(s==="circle")for(let i=0;i<r;i++){const l=e*(i+1)/r;a.append("circle").attr("r",l).attr("class","radarGraticule")}else if(s==="polygon"){const i=t.length;for(let l=0;l<r;l++){const n=e*(l+1)/r,o=t.map((d,p)=>{const u=2*p*Math.PI/i-Math.PI/2,g=n*Math.cos(u),h=n*Math.sin(u);return`${g},${h}`}).join(" ");a.append("polygon").attr("points",o).attr("class","radarGraticule")}}},"drawGraticule"),nt=c((a,t,e,r)=>{const s=t.length;for(let i=0;i<s;i++){const l=t[i].label,n=2*i*Math.PI/s-Math.PI/2,o=Math.cos(n),d=Math.sin(n);a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*o).attr("y2",e*r.axisScaleFactor*d).attr("class","radarAxisLine");const p=o>.01?"start":o<-.01?"end":"middle",u=d>.01?"hanging":d<-.01?"auto":"central",g=4;a.append("text").text(l).attr("x",e*r.axisLabelFactor*o+g*o).attr("y",e*r.axisLabelFactor*d+g*d).attr("text-anchor",p).attr("dominant-baseline",u).attr("class","radarAxisLabel")}},"drawAxes");function L(a,t,e,r,s,i,l){const n=t.length,o=Math.min(l.width,l.height)/2;e.forEach((d,p)=>{if(d.entries.length!==n)return;const u=d.entries.map((g,h)=>{const v=2*Math.PI*h/n-Math.PI/2,f=T(g,r,s,o),O=f*Math.cos(v),R=f*Math.sin(v);return{x:O,y:R}});i==="circle"?a.append("path").attr("d",S(u,l.curveTension)).attr("class",`radarCurve-${p}`):i==="polygon"&&a.append("polygon").attr("points",u.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${p}`)})}c(L,"drawCurves");function T(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}c(T,"relativeRadius");function S(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<e;s++){const i=a[(s-1+e)%e],l=a[s],n=a[(s+1)%e],o=a[(s+2)%e],d={x:l.x+(n.x-i.x)*t,y:l.y+(n.y-i.y)*t},p={x:n.x-(o.x-l.x)*t,y:n.y-(o.y-l.y)*t};r+=` C${d.x},${d.y} ${p.x},${p.y} ${n.x},${n.y}`}return`${r} Z`}c(S,"closedRoundCurve");function k(a,t,e,r){if(!e)return;const s=(r.width/2+r.marginRight)*3/4,i=-(r.height/2+r.marginTop)*3/4,l=20;t.forEach((n,o)=>{const d=a.append("g").attr("transform",`translate(${s}, ${i+o*l})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${o}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}c(k,"drawLegend");var ot={draw:at},it=c((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];e+=`
2
+ .radarCurve-${r} {
3
+ color: ${s};
4
+ fill: ${s};
5
+ fill-opacity: ${t.curveOpacity};
6
+ stroke: ${s};
7
+ stroke-width: ${t.curveStrokeWidth};
8
+ }
9
+ .radarLegendBox-${r} {
10
+ fill: ${s};
11
+ fill-opacity: ${t.curveOpacity};
12
+ stroke: ${s};
13
+ }
14
+ `}return e},"genIndexStyles"),lt=c(a=>{const t=V(),e=C(),r=w(t,e.themeVariables),s=w(r.radar,a);return{themeVariables:r,radarOptions:s}},"buildRadarStyleOptions"),ct=c(({radar:a}={})=>{const{themeVariables:t,radarOptions:e}=lt(a);return`
15
+ .radarTitle {
16
+ font-size: ${t.fontSize};
17
+ color: ${t.titleColor};
18
+ dominant-baseline: hanging;
19
+ text-anchor: middle;
20
+ }
21
+ .radarAxisLine {
22
+ stroke: ${e.axisColor};
23
+ stroke-width: ${e.axisStrokeWidth};
24
+ }
25
+ .radarAxisLabel {
26
+ font-size: ${e.axisLabelFontSize}px;
27
+ color: ${e.axisColor};
28
+ }
29
+ .radarGraticule {
30
+ fill: ${e.graticuleColor};
31
+ fill-opacity: ${e.graticuleOpacity};
32
+ stroke: ${e.graticuleColor};
33
+ stroke-width: ${e.graticuleStrokeWidth};
34
+ }
35
+ .radarLegendText {
36
+ text-anchor: start;
37
+ font-size: ${e.legendFontSize}px;
38
+ dominant-baseline: hanging;
39
+ }
40
+ ${it(t,e)}
41
+ `},"styles"),xt={parser:et,db:$,renderer:ot,styles:ct};export{xt as diagram};
@@ -0,0 +1,3 @@
1
+ import{p as re}from"./chunk-JWPE2WC7-DaxI9q0u.js";import{o as oe,n as se,s as de,g as le,a as ce,b as me,_ as o,l as g,c as T,j as ue,z as xe,p as fe,A as ge,B as he,y as M,i as y,w as P,am as pe}from"./mermaid.core-aKMJHeEk.js";import{p as be,i as ve}from"./cynefin-OW5HDTMX-B1iLDXCC.js";import"./app-Ca5yUSBv.js";import"./isObject-DL-BuaBl.js";var $="position frame",D="frame positioned",S="position relation",N="relation positioned",we=o(function(e){g.debug("options str",e)},"setOptions"),ye=o(function(){return{}},"getOptions"),Pe=o(function(){C(),fe()},"clear");function C(){B={}}o(C,"reset");var Se=he.eventmodeling,ke=o(()=>ge({...Se,...M().eventmodeling}),"getConfig"),B={};function O(){let e=Fe;const{ast:n}=B,t=E();if(!n)throw new Error("No data for EventModel");return n.frames.forEach((i,a)=>{const r=G(i,n.dataEntities,t);e=v(e,{$kind:$,index:a,frame:i,textProps:r});let d;K(i)?(g.debug("source frame",i.sourceFrames),d=n.frames.filter(l=>i.sourceFrames.some(c=>c.$refText===l.name)),d.forEach(l=>{e=v(e,{$kind:S,index:a,frame:i,sourceFrame:l})})):e=v(e,{$kind:S,index:a,frame:i})}),e={...e,sortedSwimlanesArray:A(e.swimlanes)},e}o(O,"getState");function I(e){B.ast=e}o(I,"setAst");var s={swimlaneMinHeight:70,swimlanePadding:15,swimlaneGap:10,boxPadding:10,boxOverlap:90,boxDefaultY:0,boxMinWidth:80,boxMaxWidth:450,boxMinHeight:80,boxMaxHeight:750,contentStartX:250,textMaxWidth:430,boxTextFontWeight:"bold",boxTextPadding:10,swimlaneTextFontWeight:"bold",labelUiAutomation:"UI/Automation",labelUiAutomationPrefix:"UI/A: ",labelCommandReadModel:"Command/Read Model",labelCommandReadModelPrefix:"C/RM: ",labelEvents:"Events",labelEventsPrefix:"Stream: "};function E(){return s}o(E,"getDiagramProps");var Fe={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};function W(e){const n=e.split(".");if(n.length===2)return n[0]}o(W,"extractNamespace");function H(e){const n=e.split(".");return n.length===2?n[1]:e}o(H,"extractName");function U(e,n){if(!(!n||n.length===0))return Object.values(e).find(t=>t.namespace===n)}o(U,"findSwimlaneByNamespace");function b(e,n,t){return Math.max(n,...Object.keys(e).filter(i=>{const a=Number.parseInt(i);return a>n&&a<t}).map(i=>Number.parseInt(i)))+1}o(b,"findNextAvailableIndex");function _(e,n){const t=W(e.entityIdentifier),i=U(n,t);switch(e.modelEntityType){case"ui":case"pcr":case"processor":return i?{index:i.index,label:i.namespace||s.labelUiAutomation}:t?{index:b(n,0,100),label:s.labelUiAutomationPrefix+t}:{index:0,label:s.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":return i?{index:i.index,label:i.namespace||s.labelCommandReadModel}:t?{index:b(n,100,200),label:s.labelCommandReadModelPrefix+t}:{index:100,label:s.labelCommandReadModel};default:return i?{index:i.index,label:i.namespace||s.labelEvents}:t?{index:b(n,200,300),label:s.labelEventsPrefix+t}:{index:200,label:s.labelEvents}}}o(_,"calculateSwimlaneProps");function L(e){const{themeVariables:n}=M();switch(e.modelEntityType){case"ui":return{fill:n.emUiFill??"white",stroke:n.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:n.emProcessorFill??"#edb3f6",stroke:n.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:n.emReadModelFill??"#d3f1a2",stroke:n.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:n.emCommandFill??"#bcd6fe",stroke:n.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:n.emEventFill??"#ffb778",stroke:n.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}o(L,"calculateEntityVisualProps");function G(e,n,t){const i=M(),a=y(H(e.entityIdentifier)??"",i);let r;const d={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"<br/>"};let c=`<b>${P(a,t.textMaxWidth,d)}</b>`;if(e.dataInlineValue&&(r=e.dataInlineValue,r=r.substring(r.indexOf("{")+1),r=r.substring(0,r.lastIndexOf("}")-1),r=y(r,i),r=P(r,t.textMaxWidth,d),r=r.replaceAll(" ","&nbsp;")),e.dataReference){const p=n.find(w=>w.name===e.dataReference?.$refText);p&&(r=p.dataBlockValue,r=r.substring(r.indexOf(`{
2
+ `)+2),r=r.substring(0,r.lastIndexOf("}")-1),r=y(r,i),r=P(r,t.textMaxWidth,d),r=r.replaceAll(" ","&nbsp;"),r+="<br/>")}const m=r!==void 0;m&&(c+=`<br/><br/><code style="text-align: left; display: block;max-width:${t.textMaxWidth}px">${r}</code>`);const x={fontSize:d.fontSize,fontWeight:d.fontWeight,fontFamily:d.fontFamily},u=pe(c,x),h=m?u.width/3:u.width,f={content:c,width:h,height:u.height};return g.debug(`[${e.name}] ${e.entityIdentifier} text`,f),f}o(G,"calculateTextProps");function V(e,n){const t=n,i=L(t.frame),a={width:t.textProps.width+2*s.boxTextPadding,height:t.textProps.height+2*s.boxTextPadding};return[{$kind:D,frame:t.frame,index:t.index,visual:i,dimension:a,textProps:t.textProps}]}o(V,"decidePositionFrame");function X(e,n,t){return n===void 0?s.contentStartX:n.index===e.index&&e.r?e.r+s.boxPadding:t===void 0?s.contentStartX:t.r-s.boxOverlap+s.boxPadding}o(X,"calculateX");function j(e,n){const t=[...e.map(i=>i.r),n];return Math.max(...t)}o(j,"calculateMaxRight");function A(e){return Object.values(e).sort((n,t)=>n.index-t.index)}o(A,"sortedSwimlanesArray");function Y(e,n){const t=n,i=_(t.frame,e.swimlanes);let a;i.index in e.swimlanes?a=e.swimlanes[i.index]:a={index:i.index,label:i.label,r:0,y:i.index*s.swimlaneMinHeight+s.swimlaneGap,height:s.swimlaneMinHeight,maxHeight:s.swimlaneMinHeight};const r=e.boxes.length>0?e.boxes[e.boxes.length-1]:void 0,d=e.previousSwimlaneNumber!==void 0?e.swimlanes[e.previousSwimlaneNumber]:void 0,l={width:Math.max(s.boxMinWidth,Math.min(s.boxMaxWidth,t.dimension.width))+2*s.boxPadding,height:Math.max(s.boxMinHeight,Math.min(s.boxMaxHeight,t.dimension.height))+2*s.boxPadding},c=X(a,d,r),m=c+l.width+s.boxPadding,x=j(Object.values(e.swimlanes),m);a.r=c+l.width,a.maxHeight=Math.max(a.maxHeight,l.height),a.height=Math.max(s.swimlaneMinHeight,a.maxHeight)+2*s.swimlanePadding;const u={x:c,y:s.swimlanePadding+a.y,r:m,dimension:l,leftSibling:!1,swimlane:a,visual:t.visual,text:t.textProps.content,frame:t.frame,index:t.index},h={...e,boxes:[...e.boxes,u],swimlanes:{...e.swimlanes,[`${a.index}`]:a},previousSwimlaneNumber:i.index,previousFrame:t.frame,maxR:x},f=A(h.swimlanes);f.length>0&&(f[0].y=0);for(let p=1;p<f.length;p++){const w=f[p],R=f[p-1];w.y=R.y+R.height+s.swimlaneGap}return h}o(Y,"evolveFramePositioned");function z(e,n){return e===0&&n.sourceFrames.length===0}o(z,"isFirstFrame");function K(e){return e.sourceFrames!==void 0&&e.sourceFrames!==null&&e.sourceFrames.length>0}o(K,"hasSourceFrame");function k(e,n){if(n!=null)return e.find(t=>t.frame.name===n.name)}o(k,"findBoxByFrame");function q(e,n,t){if(!(t<0))for(let i=t;i>=0;i--){const a=e[i];if(a.swimlane.index!==n)return a}}o(q,"findBoxByLineIndex");function J(e,n){const t=n;if(ve(t.frame)||z(t.index,t.frame))return[];const i=k(e.boxes,t.frame);if(i===void 0)throw new Error(`Target box not found for frame ${t.frame.name}`);let a;return t.sourceFrame?a=k(e.boxes,t.sourceFrame):a=q(e.boxes,i.swimlane.index,t.index-1),a===void 0?[]:[{$kind:N,frame:t.frame,index:t.index,sourceBox:a,targetBox:i}]}o(J,"decidePositionRelation");function Q(e,n){const t=n,i={visual:{fill:"none",stroke:"#000"},source:{x:t.sourceBox.x,y:t.sourceBox.y},target:{x:t.targetBox.x,y:t.targetBox.y},sourceBox:t.sourceBox,targetBox:t.targetBox};return{...e,relations:[...e.relations,i]}}o(Q,"evolveRelationPositioned");var Me={[$]:V,[S]:J},Be={[D]:Y,[N]:Q};function Z(e,n){const t=Me[n.$kind];if(t==null)return[];const i=t(e,n);return g.debug("decided events",i),i}o(Z,"decide");function ee(e,n){const t=n.reduce((i,a)=>{const r=Be[a.$kind];return r==null?i:r(i,a)},e);return g.debug("evolve events",{state:e,newState:t,events:n}),t}o(ee,"evolve");function v(e,n){const t=Z(e,n);return ee(e,t)}o(v,"dispatch");var F={getConfig:ke,setOptions:we,getOptions:ye,clear:Pe,setAccTitle:me,getAccTitle:ce,getAccDescription:le,setAccDescription:de,setDiagramTitle:se,getDiagramTitle:oe,setAst:I,getDiagramProps:E,getState:O},Ee={parse:o(async e=>{const n=await be("eventmodeling",e);g.debug(n),F.setAst(n),re(n,F)},"parse")},Ae=T(),Re=Ae?.eventmodeling;function te(e,n){return t=>{const i=t.swimlane.y+n.swimlanePadding,a=e.append("g").attr("class","em-box");a.append("rect").attr("x",t.x).attr("y",i).attr("rx","3").attr("width",t.dimension.width).attr("height",t.dimension.height).attr("stroke",t.visual.stroke).attr("fill",t.visual.fill),a.append("foreignObject").attr("x",t.x+n.boxPadding).attr("y",i+10).attr("width",t.dimension.width-2*n.boxPadding).attr("height",t.dimension.height-2*n.boxPadding).append("xhtml:div").style("display","table").style("height","100%").style("width","100%").append("span").style("display","table-cell").style("text-align","center").style("vertical-align","middle").html(t.text)}}o(te,"renderD3Box");function ne(e,n){return e>n}o(ne,"dirUpwards");function ie(e,n,t,i){return a=>{const r=a.sourceBox.swimlane.y+n.swimlanePadding,d=a.targetBox.swimlane.y+n.swimlanePadding,l=ne(r,d),c=a.sourceBox.x+a.sourceBox.dimension.width*2/3,m=a.targetBox.x+a.targetBox.dimension.width/3;let x,u;g.debug(`rendering relation up=${l} for `,{sourceBox:a.sourceBox,targetBox:a.targetBox}),l?(x=r,u=d+a.targetBox.dimension.height):(x=r+a.sourceBox.dimension.height,u=d);const h=i.emRelationStroke??a.visual.stroke;e.append("path").attr("class","em-relation").attr("fill",a.visual.fill).attr("stroke",h).attr("stroke-width","1").attr("marker-end",`url(#${t})`).attr("d",`M${c} ${x} L${m} ${u}`)}}o(ie,"renderD3Relation");function ae(e,n,t,i){return a=>{const r=e.append("g").attr("class","em-swimlane"),d=i.emSwimlaneBackgroundOdd??"rgb(250,250,250)",l=i.emSwimlaneBackgroundStroke??"rgb(240,240,240)";r.append("rect").attr("x",0).attr("y",a.y).attr("rx","3").attr("width",n+t.swimlanePadding).attr("height",a.height).attr("fill",d).attr("stroke",l),r.append("text").attr("font-weight",t.swimlaneTextFontWeight).attr("x",30).attr("y",a.y+30).text(a.label)}}o(ae,"renderD3Swimlane");var Te=o(function(e,n,t,i){if(g.debug("in eventmodeling renderer",e+`
3
+ `,"id:",n,t),!Re)throw new Error("EventModeling config not found");const a=i.db,{themeVariables:r,eventmodeling:d}=T(),l=ue(`[id="${n}"]`),c=a.getDiagramProps(),m=a.getState(),x=`em-arrowhead-${n}`,u=r.emArrowhead??"#000000";m.sortedSwimlanesArray.forEach(ae(l,m.maxR,c,r)),m.boxes.forEach(te(l,c)),m.relations.forEach(ie(l,c,x,r)),l.append("defs").append("marker").attr("id",x).attr("markerWidth","10").attr("markerHeight","7").attr("refX","10").attr("refY","3.5").attr("orient","auto").append("polygon").attr("points","0 0, 10 3.5, 0 7").attr("fill",u),xe(void 0,l,d?.padding??30,d?.useMaxWidth)},"draw"),$e={draw:Te},De=o(e=>"","getStyles"),Ne=De,Ue={parser:Ee,db:F,renderer:$e,styles:Ne};export{Ue as diagram};
@@ -0,0 +1,24 @@
1
+ import{p as ge}from"./chunk-JWPE2WC7-DaxI9q0u.js";import{_ as w,E as ye,y as ae,A as ee,D as Se,d as ve,l as te,aQ as B,j as Q,b as xe,a as be,n as we,o as Ce,g as Te,s as Le,B as $e,aR as Ae,p as Fe}from"./mermaid.core-aKMJHeEk.js";import{s as Ne}from"./chunk-POPQ4Y6H-lwu6ZpsN.js";import{p as Me}from"./cynefin-OW5HDTMX-B1iLDXCC.js";import{b as O}from"./defaultLocale-DX6XiGOO.js";import{o as K}from"./ordinal-Cboi1Yqb.js";import"./app-Ca5yUSBv.js";import"./isObject-DL-BuaBl.js";import"./init-Gi6I4Gst.js";function _e(t){var a=0,l=t.children,n=l&&l.length;if(!n)a=1;else for(;--n>=0;)a+=l[n].value;t.value=a}function ke(){return this.eachAfter(_e)}function ze(t,a){let l=-1;for(const n of this)t.call(a,n,++l,this);return this}function Ve(t,a){for(var l=this,n=[l],r,i,h=-1;l=n.pop();)if(t.call(a,l,++h,this),r=l.children)for(i=r.length-1;i>=0;--i)n.push(r[i]);return this}function De(t,a){for(var l=this,n=[l],r=[],i,h,d,g=-1;l=n.pop();)if(r.push(l),i=l.children)for(h=0,d=i.length;h<d;++h)n.push(i[h]);for(;l=r.pop();)t.call(a,l,++g,this);return this}function Pe(t,a){let l=-1;for(const n of this)if(t.call(a,n,++l,this))return n}function Be(t){return this.eachAfter(function(a){for(var l=+t(a.data)||0,n=a.children,r=n&&n.length;--r>=0;)l+=n[r].value;a.value=l})}function Ee(t){return this.eachBefore(function(a){a.children&&a.children.sort(t)})}function Re(t){for(var a=this,l=We(a,t),n=[a];a!==l;)a=a.parent,n.push(a);for(var r=n.length;t!==l;)n.splice(r,0,t),t=t.parent;return n}function We(t,a){if(t===a)return t;var l=t.ancestors(),n=a.ancestors(),r=null;for(t=l.pop(),a=n.pop();t===a;)r=t,t=l.pop(),a=n.pop();return r}function He(){for(var t=this,a=[t];t=t.parent;)a.push(t);return a}function Ie(){return Array.from(this)}function Oe(){var t=[];return this.eachBefore(function(a){a.children||t.push(a)}),t}function Ge(){var t=this,a=[];return t.each(function(l){l!==t&&a.push({source:l.parent,target:l})}),a}function*qe(){var t=this,a,l=[t],n,r,i;do for(a=l.reverse(),l=[];t=a.pop();)if(yield t,n=t.children)for(r=0,i=n.length;r<i;++r)l.push(n[r]);while(l.length)}function ne(t,a){t instanceof Map?(t=[void 0,t],a===void 0&&(a=Ye)):a===void 0&&(a=je);for(var l=new U(t),n,r=[l],i,h,d,g;n=r.pop();)if((h=a(n.data))&&(g=(h=Array.from(h)).length))for(n.children=h,d=g-1;d>=0;--d)r.push(i=h[d]=new U(h[d])),i.parent=n,i.depth=n.depth+1;return l.eachBefore(Ue)}function Xe(){return ne(this).eachBefore(Qe)}function je(t){return t.children}function Ye(t){return Array.isArray(t)?t[1]:null}function Qe(t){t.data.value!==void 0&&(t.value=t.data.value),t.data=t.data.data}function Ue(t){var a=0;do t.height=a;while((t=t.parent)&&t.height<++a)}function U(t){this.data=t,this.depth=this.height=0,this.parent=null}U.prototype=ne.prototype={constructor:U,count:ke,each:ze,eachAfter:De,eachBefore:Ve,find:Pe,sum:Be,sort:Ee,path:Re,ancestors:He,descendants:Ie,leaves:Oe,links:Ge,copy:Xe,[Symbol.iterator]:qe};function Ze(t){if(typeof t!="function")throw new Error;return t}function G(){return 0}function q(t){return function(){return t}}function Je(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function Ke(t,a,l,n,r){for(var i=t.children,h,d=-1,g=i.length,c=t.value&&(n-a)/t.value;++d<g;)h=i[d],h.y0=l,h.y1=r,h.x0=a,h.x1=a+=h.value*c}function et(t,a,l,n,r){for(var i=t.children,h,d=-1,g=i.length,c=t.value&&(r-l)/t.value;++d<g;)h=i[d],h.x0=a,h.x1=n,h.y0=l,h.y1=l+=h.value*c}var tt=(1+Math.sqrt(5))/2;function at(t,a,l,n,r,i){for(var h=[],d=a.children,g,c,p=0,b=0,s=d.length,x,S,v=a.value,u,y,N,$,V,W,M;p<s;){x=r-l,S=i-n;do u=d[b++].value;while(!u&&b<s);for(y=N=u,W=Math.max(S/x,x/S)/(v*t),M=u*u*W,V=Math.max(N/M,M/y);b<s;++b){if(u+=c=d[b].value,c<y&&(y=c),c>N&&(N=c),M=u*u*W,$=Math.max(N/M,M/y),$>V){u-=c;break}V=$}h.push(g={value:u,dice:x<S,children:d.slice(p,b)}),g.dice?Ke(g,l,n,r,v?n+=S*u/v:i):et(g,l,n,v?l+=x*u/v:r,i),v-=u,p=b}return h}const nt=(function t(a){function l(n,r,i,h,d){at(a,n,r,i,h,d)}return l.ratio=function(n){return t((n=+n)>1?n:1)},l})(tt);function lt(){var t=nt,a=!1,l=1,n=1,r=[0],i=G,h=G,d=G,g=G,c=G;function p(s){return s.x0=s.y0=0,s.x1=l,s.y1=n,s.eachBefore(b),r=[0],a&&s.eachBefore(Je),s}function b(s){var x=r[s.depth],S=s.x0+x,v=s.y0+x,u=s.x1-x,y=s.y1-x;u<S&&(S=u=(S+u)/2),y<v&&(v=y=(v+y)/2),s.x0=S,s.y0=v,s.x1=u,s.y1=y,s.children&&(x=r[s.depth+1]=i(s)/2,S+=c(s)-x,v+=h(s)-x,u-=d(s)-x,y-=g(s)-x,u<S&&(S=u=(S+u)/2),y<v&&(v=y=(v+y)/2),t(s,S,v,u,y))}return p.round=function(s){return arguments.length?(a=!!s,p):a},p.size=function(s){return arguments.length?(l=+s[0],n=+s[1],p):[l,n]},p.tile=function(s){return arguments.length?(t=Ze(s),p):t},p.padding=function(s){return arguments.length?p.paddingInner(s).paddingOuter(s):p.paddingInner()},p.paddingInner=function(s){return arguments.length?(i=typeof s=="function"?s:q(+s),p):i},p.paddingOuter=function(s){return arguments.length?p.paddingTop(s).paddingRight(s).paddingBottom(s).paddingLeft(s):p.paddingTop()},p.paddingTop=function(s){return arguments.length?(h=typeof s=="function"?s:q(+s),p):h},p.paddingRight=function(s){return arguments.length?(d=typeof s=="function"?s:q(+s),p):d},p.paddingBottom=function(s){return arguments.length?(g=typeof s=="function"?s:q(+s),p):g},p.paddingLeft=function(s){return arguments.length?(c=typeof s=="function"?s:q(+s),p):c},p}var R,oe=(R=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=xe,this.getAccTitle=be,this.setDiagramTitle=we,this.getDiagramTitle=Ce,this.getAccDescription=Te,this.setAccDescription=Le}getNodes(){return this.nodes}getConfig(){const a=$e,l=ae();return ee({...a.treemap,...l.treemap??{}})}addNode(a,l){this.nodes.push(a),this.levels.set(a,l),l===0&&(this.outerNodes.push(a),this.root??=a)}getRoot(){return{name:"",children:this.outerNodes}}addClass(a,l){const n=this.classes.get(a)??{id:a,styles:[],textStyles:[]},r=l.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");r&&r.forEach(i=>{Ae(i)&&(n?.textStyles?n.textStyles.push(i):n.textStyles=[i]),n?.styles?n.styles.push(i):n.styles=[i]}),this.classes.set(a,n)}getClasses(){return this.classes}getStylesForClass(a){return this.classes.get(a)?.styles??[]}clear(){Fe(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}},w(R,"TreeMapDB"),R);function ce(t){if(!t.length)return[];const a=[],l=[];return t.forEach(n=>{const r={name:n.name,children:n.type==="Leaf"?void 0:[]};for(r.classSelector=n?.classSelector,n?.cssCompiledStyles&&(r.cssCompiledStyles=n.cssCompiledStyles),n.type==="Leaf"&&n.value!==void 0&&(r.value=n.value);l.length>0&&l[l.length-1].level>=n.level;)l.pop();if(l.length===0)a.push(r);else{const i=l[l.length-1].node;i.children?i.children.push(r):i.children=[r]}n.type!=="Leaf"&&l.push({node:r,level:n.level})}),a}w(ce,"buildHierarchy");var rt=w((t,a)=>{ge(t,a);const l=[];for(const i of t.TreemapRows??[])i.$type==="ClassDefStatement"&&a.addClass(i.className??"",i.styleText??"");for(const i of t.TreemapRows??[]){const h=i.item;if(!h)continue;const d=i.indent?parseInt(i.indent):0,g=st(h),c=h.classSelector?a.getStylesForClass(h.classSelector):[],p=c.length>0?c:void 0,b={level:d,name:g,type:h.$type,value:h.value,classSelector:h.classSelector,cssCompiledStyles:p};l.push(b)}const n=ce(l),r=w((i,h)=>{for(const d of i)a.addNode(d,h),d.children&&d.children.length>0&&r(d.children,h+1)},"addNodesRecursively");r(n,0)},"populate"),st=w(t=>t.name?String(t.name):"","getItemName"),he={parser:{yy:void 0},parse:w(async t=>{try{const l=await Me("treemap",t);te.debug("Treemap AST:",l);const n=he.parser?.yy;if(!(n instanceof oe))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");rt(l,n)}catch(a){throw te.error("Error parsing treemap:",a),a}},"parse")},it=10,E=10,X=25,ot=w((t,a,l,n)=>{const r=n.db,i=r.getConfig(),h=i.padding??it,d=r.getDiagramTitle(),g=r.getRoot(),{themeVariables:c}=ae();if(!g)return;const p=d?30:0,b=Se(a),s=i.nodeWidth?i.nodeWidth*E:960,x=i.nodeHeight?i.nodeHeight*E:500,S=s,v=x+p;b.attr("viewBox",`0 0 ${S} ${v}`),ve(b,v,S,i.useMaxWidth);let u;try{const e=i.valueFormat||",";if(e==="$0,0")u=w(o=>"$"+O(",")(o),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){const o=/\.\d+/.exec(e),f=o?o[0]:"";u=w(C=>"$"+O(","+f)(C),"valueFormat")}else if(e.startsWith("$")){const o=e.substring(1);u=w(f=>"$"+O(o||"")(f),"valueFormat")}else u=O(e)}catch(e){te.error("Error creating format function:",e),u=O(",")}const y=K().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),N=K().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),$=K().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);d&&b.append("text").attr("x",S/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(d);const V=b.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),W=ne(g).sum(e=>e.value??0).sort((e,o)=>(o.value??0)-(e.value??0)),le=lt().size([s,x]).paddingTop(e=>e.children&&e.children.length>0?X+E:0).paddingInner(h).paddingLeft(e=>e.children&&e.children.length>0?E:0).paddingRight(e=>e.children&&e.children.length>0?E:0).paddingBottom(e=>e.children&&e.children.length>0?E:0).round(!0)(W),de=le.descendants().filter(e=>e.children&&e.children.length>0),H=V.selectAll(".treemapSection").data(de).enter().append("g").attr("class","treemapSection").attr("transform",e=>`translate(${e.x0},${e.y0})`);H.append("rect").attr("width",e=>e.x1-e.x0).attr("height",X).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",e=>e.depth===0?"display: none;":""),H.append("clipPath").attr("id",(e,o)=>`clip-section-${a}-${o}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-12)).attr("height",X),H.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class",(e,o)=>`treemapSection section${o}`).attr("fill",e=>y(e.data.name)).attr("fill-opacity",.6).attr("stroke",e=>N(e.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",e=>{if(e.depth===0)return"display: none;";const o=B({cssCompiledStyles:e.data.cssCompiledStyles});return o.nodeStyles+";"+o.borderStyles.join(";")}),H.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",X/2).attr("dominant-baseline","middle").text(e=>e.depth===0?"":e.data.name).attr("font-weight","bold").attr("clip-path",(e,o)=>`url(#clip-section-${a}-${o})`).attr("style",e=>{if(e.depth===0)return"display: none;";const o="dominant-baseline: middle; font-size: 12px; fill:"+$(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=B({cssCompiledStyles:e.data.cssCompiledStyles});return o+f.labelStyles.replace("color:","fill:")}).each(function(e){if(e.depth===0)return;const o=Q(this),f=e.data.name;o.text(f);const C=e.x1-e.x0,L=6;let T;i.showValues!==!1&&e.value?T=C-10-30-10-L:T=C-L-6;const m=Math.max(15,T),_=o.node();if(_.getComputedTextLength()>m){let z=f;for(;z.length>0;){if(z=f.substring(0,z.length-1),z.length===0){o.text("..."),_.getComputedTextLength()>m&&o.text("");break}if(o.text(z+"..."),_.getComputedTextLength()<=m)break}}}),i.showValues!==!1&&H.append("text").attr("class","treemapSectionValue").attr("x",e=>e.x1-e.x0-10).attr("y",X/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(e=>e.value?u(e.value):"").attr("font-style","italic").attr("style",e=>{if(e.depth===0)return"display: none;";const o="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+$(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=B({cssCompiledStyles:e.data.cssCompiledStyles});return o+f.labelStyles.replace("color:","fill:")});const re=le.leaves(),A=re.length>20,pe=A?16:38,j=A?14:28,D=A?4:8,I=A?4:6,Z=A?2:4,se=A?8:10,J=A?1:2,Y=V.selectAll(".treemapLeafGroup").data(re).enter().append("g").attr("class",(e,o)=>`treemapNode treemapLeafGroup leaf${o}${e.data.classSelector?` ${e.data.classSelector}`:""}x`).attr("transform",e=>`translate(${e.x0},${e.y0})`);Y.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class","treemapLeaf").attr("fill",e=>e.parent?y(e.parent.data.name):y(e.data.name)).attr("style",e=>B({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",e=>e.parent?y(e.parent.data.name):y(e.data.name)).attr("stroke-width",3),Y.append("clipPath").attr("id",(e,o)=>`clip-${a}-${o}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-4)).attr("height",e=>Math.max(0,e.y1-e.y0-4)),Y.append("text").attr("class","treemapLabel").attr("x",e=>(e.x1-e.x0)/2).attr("y",e=>(e.y1-e.y0)/2).attr("style",e=>{const o=`text-anchor: middle; dominant-baseline: middle; font-size: ${pe}px;fill:`+$(e.data.name)+";",f=B({cssCompiledStyles:e.data.cssCompiledStyles});return o+f.labelStyles.replace("color:","fill:")}).attr("clip-path",(e,o)=>`url(#clip-${a}-${o})`).text(e=>e.data.name).each(function(e){const o=Q(this),f=e.x1-e.x0,C=e.y1-e.y0,L=o.node(),T=f-2*Z,P=C-2*Z;if(T<se||P<se){o.style("display","none");return}let m=parseInt(o.style("font-size"),10);const _=.6;for(;L.getComputedTextLength()>T&&m>D;)m--,o.style("font-size",`${m}px`);let F=Math.max(I,Math.min(j,Math.round(m*_))),k=m+J+F;for(;k>P&&m>D&&(m--,F=Math.max(I,Math.min(j,Math.round(m*_))),!(F<I&&m===D));)o.style("font-size",`${m}px`),k=m+J+F;o.style("font-size",`${m}px`),A?(m<D||P<D)&&o.style("display","none"):(L.getComputedTextLength()>T||m<D||P<m)&&o.style("display","none")}),i.showValues!==!1&&Y.append("text").attr("class","treemapValue").attr("x",o=>(o.x1-o.x0)/2).attr("y",function(o){return(o.y1-o.y0)/2}).attr("style",o=>{const f=`text-anchor: middle; dominant-baseline: hanging; font-size: ${j}px;fill:`+$(o.data.name)+";",C=B({cssCompiledStyles:o.data.cssCompiledStyles});return f+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(o,f)=>`url(#clip-${a}-${f})`).text(o=>o.value?u(o.value):"").each(function(o){const f=Q(this),C=this.parentNode;if(!C){f.style("display","none");return}const L=Q(C).select(".treemapLabel");if(L.empty()||L.style("display")==="none"){f.style("display","none");return}const T=parseFloat(L.style("font-size")),m=Math.max(I,Math.min(j,Math.round(T*.6)));f.style("font-size",`${m}px`);const F=(o.y1-o.y0)/2+T/2+J;f.attr("y",F);const k=o.x1-o.x0,ie=o.y1-o.y0-4,me=k-2*Z;f.node().getComputedTextLength()>me||F+m>ie||m<I?f.style("display","none"):f.style("display",null)});const ue=i.diagramPadding??8;Ne(b,ue,"flowchart",i?.useMaxWidth||!1)},"draw"),ct=w(function(t,a){return a.db.getClasses()},"getClasses"),ht={draw:ot,getClasses:ct},dt={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},pt=w(({treemap:t}={})=>{const a=ye(),l=ae(),n=ee(a,l.themeVariables),r=ee(dt,t),i=r.titleColor??n.titleColor,h=r.labelColor??n.textColor,d=r.valueColor??n.textColor;return`
2
+ .treemapNode.section {
3
+ stroke: ${r.sectionStrokeColor};
4
+ stroke-width: ${r.sectionStrokeWidth};
5
+ fill: ${r.sectionFillColor};
6
+ }
7
+ .treemapNode.leaf {
8
+ stroke: ${r.leafStrokeColor};
9
+ stroke-width: ${r.leafStrokeWidth};
10
+ fill: ${r.leafFillColor};
11
+ }
12
+ .treemapLabel {
13
+ fill: ${h};
14
+ font-size: ${r.labelFontSize};
15
+ }
16
+ .treemapValue {
17
+ fill: ${d};
18
+ font-size: ${r.valueFontSize};
19
+ }
20
+ .treemapTitle {
21
+ fill: ${i};
22
+ font-size: ${r.titleFontSize};
23
+ }
24
+ `},"getStyles"),ut=pt,Tt={parser:he,get db(){return new oe},renderer:ht,styles:ut};export{Tt as diagram};
@@ -0,0 +1,24 @@
1
+ import{p as $}from"./chunk-JWPE2WC7-DaxI9q0u.js";import{_ as b,A as m,D as C,d as S,l as w,b as D,a as T,n as P,o as z,g as A,s as E,B as F,y as W,p as _}from"./mermaid.core-aKMJHeEk.js";import{p as N}from"./cynefin-OW5HDTMX-B1iLDXCC.js";import"./app-Ca5yUSBv.js";import"./isObject-DL-BuaBl.js";var L=F.packet,u,v=(u=class{constructor(){this.packet=[],this.setAccTitle=D,this.getAccTitle=T,this.setDiagramTitle=P,this.getDiagramTitle=z,this.getAccDescription=A,this.setAccDescription=E}getConfig(){const t=m({...L,...W().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){_(),this.packet=[]}},b(u,"PacketDB"),u),M=1e4,Y=b((e,t)=>{$(e,t);let r=-1,o=[],n=1;const{bitsPerRow:l}=t.getConfig();for(let{start:a,end:i,bits:d,label:c}of e.blocks){if(a!==void 0&&i!==void 0&&i<a)throw new Error(`Packet block ${a} - ${i} is invalid. End must be greater than start.`);if(a??=r+1,a!==r+1)throw new Error(`Packet block ${a} - ${i??a} is not contiguous. It should start from ${r+1}.`);if(d===0)throw new Error(`Packet block ${a} is invalid. Cannot have a zero bit field.`);for(i??=a+(d??1)-1,d??=i-a+1,r=i,w.debug(`Packet block ${a} - ${r} with label ${c}`);o.length<=l+1&&t.getPacket().length<M;){const[p,s]=I({start:a,end:i,bits:d,label:c},n,l);if(o.push(p),p.end+1===n*l&&(t.pushWord(o),o=[],n++),!s)break;({start:a,end:i,bits:d,label:c}=s)}}t.pushWord(o)},"populate"),I=b((e,t,r)=>{if(e.start===void 0)throw new Error("start should have been set during first phase");if(e.end===void 0)throw new Error("end should have been set during first phase");if(e.start>e.end)throw new Error(`Block start ${e.start} is greater than block end ${e.end}.`);if(e.end+1<=t*r)return[e,void 0];const o=t*r-1,n=t*r;return[{start:e.start,end:o,label:e.label,bits:o-e.start},{start:n,end:e.end,label:e.label,bits:e.end-n}]},"getNextFittingBlock"),x={parser:{yy:void 0},parse:b(async e=>{const t=await N("packet",e),r=x.parser?.yy;if(!(r instanceof v))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");w.debug(t),Y(t,r)},"parse")},O=b((e,t,r,o)=>{const n=o.db,l=n.getConfig(),{rowHeight:a,paddingY:i,bitWidth:d,bitsPerRow:c}=l,p=n.getPacket(),s=n.getDiagramTitle(),h=a+i,g=h*(p.length+1)-(s?0:a),k=d*c+2,f=C(t);f.attr("viewBox",`0 0 ${k} ${g}`),S(f,g,k,l.useMaxWidth);for(const[y,B]of p.entries())j(f,B,y,l);f.append("text").text(s).attr("x",k/2).attr("y",g-h/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),j=b((e,t,r,{rowHeight:o,paddingX:n,paddingY:l,bitWidth:a,bitsPerRow:i,showBits:d})=>{const c=e.append("g"),p=r*(o+l)+l;for(const s of t){const h=s.start%i*a+1,g=(s.end-s.start+1)*a-n;if(c.append("rect").attr("x",h).attr("y",p).attr("width",g).attr("height",o).attr("class","packetBlock"),c.append("text").attr("x",h+g/2).attr("y",p+o/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(s.label),!d)continue;const k=s.end===s.start,f=p-2;c.append("text").attr("x",h+(k?g/2:0)).attr("y",f).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(s.start),k||c.append("text").attr("x",h+g).attr("y",f).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(s.end)}},"drawWord"),G={draw:O},H={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},K=b(({packet:e}={})=>{const t=m(H,e);return`
2
+ .packetByte {
3
+ font-size: ${t.byteFontSize};
4
+ }
5
+ .packetByte.start {
6
+ fill: ${t.startByteColor};
7
+ }
8
+ .packetByte.end {
9
+ fill: ${t.endByteColor};
10
+ }
11
+ .packetLabel {
12
+ fill: ${t.labelColor};
13
+ font-size: ${t.labelFontSize};
14
+ }
15
+ .packetTitle {
16
+ fill: ${t.titleColor};
17
+ font-size: ${t.titleFontSize};
18
+ }
19
+ .packetBlock {
20
+ stroke: ${t.blockStrokeColor};
21
+ stroke-width: ${t.blockStrokeWidth};
22
+ fill: ${t.blockFillColor};
23
+ }
24
+ `},"styles"),Q={parser:x,get db(){return new v},renderer:G,styles:K};export{Q as diagram};
@@ -0,0 +1 @@
1
+ import{a as H,r as o,b as $,j as e,S as U,I as Q,X as V,c as h,F as X,B as G,d as g,C as A,e as J,f as W}from"./app-Ca5yUSBv.js";import{w as Y,u as Z,a as _,d as N,b as I,e as ee,s as se,M as te}from"./with-app-layout-B90DtzYC.js";import"./use-appearance-DC-DESKB.js";const ne=()=>{const r=new URLSearchParams(window.location.search);return{query:r.get("q")??"",keywords:(r.get("keyword")??"").split(",").map(a=>a.trim()).filter(Boolean)}},w=(r,a)=>{const i=new URLSearchParams;r.trim()&&i.set("q",r.trim()),a.length>0&&i.set("keyword",a.join(","));const p=i.toString();return p?`?${p}`:""},ae=({docId:r})=>{const{t:a,locale:i}=H(),{isEnabled:p,openChat:D}=Z(),y=o.useMemo(ne,[]),[c,k]=o.useState(y.query),[d,E]=o.useState(y.keywords),[u,S]=o.useState(null),[C,z]=o.useState({}),[j,v]=o.useState(null),[P,L]=o.useState(void 0),{content:l,docLinks:R,loading:T,error:q}=_(r,P??i);o.useEffect(()=>L(void 0),[r]),o.useEffect(()=>{const s=new AbortController;return N.list(i,s.signal).then(S).catch(()=>S([])),N.keywords(i,s.signal).then(z).catch(()=>z({})),()=>s.abort()},[i]),o.useEffect(()=>{const s=w(c,d);if(window.history.replaceState(null,"",`${window.location.pathname}${s}${window.location.hash}`),!c.trim()&&d.length===0){v(null);return}const t=new AbortController,n=setTimeout(()=>{N.search({query:c,keywords:d,locale:i},t.signal).then(v).catch(()=>v([]))},300);return()=>{clearTimeout(n),t.abort()}},[d,c,i]);const f=o.useCallback(s=>{$.visit(`${I(s)}${w(c,d)}`,{preserveState:!0,preserveScroll:!0})},[d,c]),B=s=>{E(t=>t.includes(s)?t.filter(n=>n!==s):[...t,s])},b=j??u??[],O=o.useMemo(()=>{const s=new Map;for(const t of b){const n=t.section??"";s.set(n,[...s.get(n)??[],t])}return[...s.entries()]},[b]),x=o.useMemo(()=>{if(!r||!u)return{previous:null,next:null};const s=u.find(m=>m.id===r);if(!s)return{previous:null,next:null};const t=u.filter(m=>(m.section??"")===(s.section??"")),n=t.findIndex(m=>m.id===r);return{previous:n>0?t[n-1]:null,next:n>=0&&n<t.length-1?t[n+1]:null}},[r,u]),M=o.useMemo(()=>l?ee(l.markdown):[],[l]),F=s=>j?.find(t=>t.id===s)?.snippets??[];return e.jsxs("div",{className:"flex min-h-0 w-full flex-1",children:[e.jsxs("aside",{className:h("bg-sidebar/40 flex w-72 shrink-0 flex-col border-e",r?"max-lg:hidden":"max-lg:w-full"),children:[e.jsxs("div",{className:"flex flex-col gap-2 border-b p-3",children:[e.jsxs("div",{className:"relative",children:[e.jsx(U,{className:"text-muted-foreground pointer-events-none absolute start-2.5 top-1/2 size-4 -translate-y-1/2"}),e.jsx(Q,{value:c,onChange:s=>k(s.target.value),placeholder:a("Search documentation"),className:"ps-8 pe-8"}),c&&e.jsx("button",{type:"button",onClick:()=>k(""),"aria-label":a("Clear"),className:"text-muted-foreground hover:text-foreground absolute end-2.5 top-1/2 -translate-y-1/2",children:e.jsx(V,{className:"size-4"})})]}),Object.keys(C).length>0&&e.jsx("div",{className:"flex flex-wrap gap-1",children:Object.keys(C).sort().map(s=>e.jsx("button",{type:"button",onClick:()=>B(s),className:h("rounded-full border px-2 py-0.5 text-xs transition-colors",d.includes(s)?"bg-primary text-primary-foreground border-transparent":"hover:bg-accent"),children:s},s))})]}),e.jsx("nav",{className:"min-h-0 flex-1 overflow-y-auto p-2",children:u===null?e.jsx("p",{className:"text-muted-foreground px-2 py-1 text-sm",children:a("Loading...")}):b.length===0?e.jsx("p",{className:"text-muted-foreground px-2 py-1 text-sm",children:a(j?"Nothing found":"There is no documentation yet")}):O.map(([s,t])=>e.jsxs("div",{className:"mb-3 flex flex-col gap-0.5",children:[s&&e.jsx("div",{className:"text-muted-foreground px-2 py-1 text-xs font-medium uppercase",children:s}),t.map(n=>e.jsxs("button",{type:"button",onClick:()=>f(n.id),className:h("hover:bg-accent flex flex-col gap-0.5 rounded-md px-2 py-1.5 text-start text-sm transition-colors",n.id===r&&"bg-accent font-medium"),children:[e.jsxs("span",{className:"flex items-center gap-2",children:[e.jsx(X,{className:"text-muted-foreground size-4 shrink-0"}),e.jsx("span",{className:"truncate",children:n.title})]}),F(n.id).slice(0,2).map((m,K)=>e.jsx("span",{className:"text-muted-foreground ps-6 text-xs",children:m},K))]},n.id))]},s))})]}),e.jsx("section",{className:"flex min-h-0 min-w-0 flex-1 flex-col",children:r?T&&!l?e.jsx("p",{className:"text-muted-foreground p-6 text-sm",children:a("Loading...")}):q||!l?e.jsx("p",{className:"text-muted-foreground p-6 text-sm",children:a("Document not found")}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 border-b px-6 py-4",children:[e.jsx(g,{variant:"ghost",size:"icon",className:"-ms-2 lg:hidden","aria-label":a("Contents"),onClick:()=>$.visit(`${window.routePrefix}/docs${w(c,d)}`,{preserveState:!0,preserveScroll:!0}),children:e.jsx(A,{className:"size-4"})}),e.jsxs("div",{className:"flex min-w-0 flex-col gap-1",children:[l.meta.section&&e.jsx("span",{className:"text-muted-foreground text-xs uppercase",children:l.meta.section}),e.jsx("h1",{className:"truncate text-xl font-semibold",children:l.meta.title})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[(l.meta.locales?.length??0)>1&&e.jsx("div",{className:"flex items-center gap-1",children:l.meta.locales?.map(s=>e.jsx("button",{type:"button",onClick:()=>L(s),className:h("rounded-full border px-2 py-0.5 text-xs uppercase transition-colors",s===l.locale?"bg-primary text-primary-foreground border-transparent":"hover:bg-accent"),children:s},s))}),p&&e.jsxs(g,{variant:"outline",size:"sm",onClick:()=>{D(),se({id:l.meta.id,title:l.meta.title})},children:[e.jsx(J,{className:"size-4"}),a("Send to assistant")]})]})]}),e.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto px-6 py-4",children:e.jsxs("div",{className:"mx-auto flex w-full max-w-3xl flex-col gap-4",children:[M.length>=3&&e.jsxs("nav",{className:"bg-muted/30 rounded-xl border p-3 text-sm",children:[e.jsx("div",{className:"text-muted-foreground mb-1 text-xs font-medium uppercase",children:a("In this document")}),e.jsx("ul",{className:"flex flex-col gap-1",children:M.map(s=>e.jsx("li",{className:s.depth>2?"ps-4":void 0,children:e.jsx("a",{className:"text-primary hover:underline",href:`#${s.slug}`,children:s.title})},s.slug))})]}),e.jsx(te,{markdown:l.markdown,docLinks:R,onDocLink:f}),(x.previous||x.next)&&e.jsxs("div",{className:"mt-4 flex items-center justify-between gap-2 border-t pt-4",children:[x.previous?e.jsxs(g,{variant:"ghost",size:"sm",onClick:()=>f(x.previous.id),children:[e.jsx(A,{className:"size-4"}),x.previous.title]}):e.jsx("span",{}),x.next&&e.jsxs(g,{variant:"ghost",size:"sm",onClick:()=>f(x.next.id),children:[x.next.title,e.jsx(W,{className:"size-4"})]})]})]})})]}):e.jsxs("div",{className:"text-muted-foreground flex flex-1 flex-col items-center justify-center gap-2 p-8 text-sm",children:[e.jsx(G,{className:"size-8"}),e.jsx("span",{children:a("Select a document to read")})]})})]})},ie=Y(ae,{className:"overflow-hidden"});export{ie as default};
@@ -0,0 +1 @@
1
+ import{g as l,r as m,d as n}from"./chunk-SVP7TREG-CVFllgl1.js";import{p}from"./chunk-JWPE2WC7-DaxI9q0u.js";import{_ as t,l as o}from"./mermaid.core-aKMJHeEk.js";import{M as u,a as f}from"./cynefin-OW5HDTMX-B1iLDXCC.js";import"./app-Ca5yUSBv.js";import"./isObject-DL-BuaBl.js";var c=f().RailroadEbnf.parser.LangiumParser,s=t(e=>{const r=e.alternatives.map(E);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformChoice"),E=t(e=>{const r=e.elements.map(d);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformSequence"),i=t(e=>{switch(e.$type){case"EbnfTerminal":return{type:"terminal",value:e.value};case"EbnfNonTerminal":return{type:"nonterminal",name:e.name};case"EbnfSpecial":return{type:"special",text:e.text};case"EbnfGroup":return s(e.element);case"EbnfOptional":return{type:"optional",element:s(e.element)};case"EbnfRepetition":return{type:"repetition",element:s(e.element),min:0,max:1/0};default:throw new Error(`Unsupported EBNF primary node: ${e.$type}`)}},"transformPrimary"),b=t((e,r)=>{switch(r.$type){case"EbnfOptionalPostfix":return{type:"optional",element:e};case"EbnfZeroOrMorePostfix":return{type:"repetition",element:e,min:0,max:1/0};case"EbnfOneOrMorePostfix":return{type:"repetition",element:e,min:1,max:1/0};case"EbnfExceptionPostfix":return{type:"sequence",elements:[e,{type:"terminal",value:"-"},i(r.except)]};default:throw new Error(`Unsupported EBNF postfix node: ${r.$type}`)}},"transformPostfix"),d=t(e=>e.postfixes.reduce((r,a)=>b(r,a),i(e.base)),"transformTerm"),y=t(e=>({name:e.name,definition:s(e.definition)}),"transformRule"),v=t(e=>{p(e,n),e.title&&n.setTitle(e.title),e.rules.map(r=>n.addRule(y(r)))},"populateDb"),g={parse:t(e=>{n.clear(),o.debug("[EBNF Parser] Starting Langium parse");const r=c.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new u(r);const a=r.value;o.debug("[EBNF Parser] Parsed rules:",a.rules.length),v(a),o.debug("[EBNF Parser] Parse complete")},"parse"),parser:{yy:n}},S={parser:g,db:n,renderer:m,styles:l};export{S as diagram};