@panphora/clayjs 1.24.1 → 1.25.1

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 (275) hide show
  1. package/dist/all.js +1 -1
  2. package/dist/clay-dom.js +1 -1
  3. package/dist/clay-events.js +1 -1
  4. package/dist/clay-internals.js +1 -1
  5. package/dist/clay-options.js +1 -1
  6. package/dist/clay-router.js +1 -1
  7. package/dist/clay-ui.js +1 -1
  8. package/dist/clay-utils.js +1 -1
  9. package/dist/clay.js +1 -1
  10. package/dist/clay.standalone.js +6060 -4662
  11. package/dist/m/attrs/{refetch-on-save-DPGJJMGN.js → refetch-on-save-5CBFUJUF.js} +1 -1
  12. package/dist/m/attrs/save-freeze-PUYX32AK.js +1 -0
  13. package/dist/m/{c-HIX5H5L7.js → c-2A2ATCIH.js} +1 -1
  14. package/dist/m/{c-BOMQIQ3V.js → c-2EFMJYGJ.js} +1 -1
  15. package/dist/m/{c-MP6S4AZU.js → c-2GB34XL4.js} +2 -2
  16. package/dist/m/c-2TJCFPX4.js +4 -0
  17. package/dist/m/c-33SS5A4Y.js +1 -0
  18. package/dist/m/{c-PCNJETUA.js → c-34J5HC7N.js} +1 -1
  19. package/dist/m/{c-AT7GLQGV.js → c-3AAQJAKJ.js} +1 -1
  20. package/dist/m/c-3F3AADKG.js +1 -0
  21. package/dist/m/{c-HL6BLJNA.js → c-3WX5FABT.js} +1 -1
  22. package/dist/m/c-3XNTQQEJ.js +1 -0
  23. package/dist/m/{c-ZRGEN6QQ.js → c-3Y234AUB.js} +2 -2
  24. package/dist/m/{c-SUXHUL7U.js → c-42RLKGEY.js} +1 -1
  25. package/dist/m/{c-2BLVA6IN.js → c-44WITKWQ.js} +1 -1
  26. package/dist/m/c-47M4QHCK.js +1 -0
  27. package/dist/m/{c-UOUUI265.js → c-4M2T676V.js} +1 -1
  28. package/dist/m/{c-SXGEWPFC.js → c-4NAYDOWH.js} +1 -1
  29. package/dist/m/{c-OCYG4NBQ.js → c-4OZZ7ENT.js} +2 -2
  30. package/dist/m/{c-UOOIF2AL.js → c-5IIEOPIV.js} +1 -1
  31. package/dist/m/{c-YDW4VCHP.js → c-755ZOHOM.js} +1 -1
  32. package/dist/m/c-7Q4XYDF4.js +1 -0
  33. package/dist/m/c-7RHOMAMR.js +1 -0
  34. package/dist/m/{c-7V6MGMX2.js → c-7Z2625LX.js} +1 -1
  35. package/dist/m/{c-CTGRDT6E.js → c-A3OKSYRI.js} +1 -1
  36. package/dist/m/{c-GNI7WHKF.js → c-A5IYL7JI.js} +1 -1
  37. package/dist/m/c-A5LASUEZ.js +1 -0
  38. package/dist/m/c-AQVQKFKB.js +1 -0
  39. package/dist/m/{c-FLEIU6CG.js → c-ASGHHLFX.js} +1 -1
  40. package/dist/m/c-ASMLERFA.js +7 -0
  41. package/dist/m/{c-LUXAB2XI.js → c-AZM34SPO.js} +1 -1
  42. package/dist/m/{c-ZFO5RW6G.js → c-BHLYQGTA.js} +1 -1
  43. package/dist/m/{c-C5AKJVRH.js → c-BJ2RRQBQ.js} +1 -1
  44. package/dist/m/{c-FVPNX2GO.js → c-C27EVUQ6.js} +1 -1
  45. package/dist/m/{c-DFKBGSN2.js → c-C5UGNOC2.js} +1 -1
  46. package/dist/m/c-C6DXZIXD.js +1 -0
  47. package/dist/m/{c-EDE45NM7.js → c-C7SUMNMI.js} +1 -1
  48. package/dist/m/{c-STRI73GQ.js → c-CL5LSATX.js} +1 -1
  49. package/dist/m/c-CPRGR2II.js +1 -0
  50. package/dist/m/{c-NFQFV7OP.js → c-D2OPWOWO.js} +1 -1
  51. package/dist/m/{c-ZKKAF4UT.js → c-D4N4UJCQ.js} +2 -2
  52. package/dist/m/{c-6LEYVQJK.js → c-DAUQ6JZ3.js} +1 -1
  53. package/dist/m/{c-ZGCO4J3H.js → c-DDCYVLGG.js} +1 -1
  54. package/dist/m/{c-KQKKIVLW.js → c-DVMDYRAE.js} +1 -1
  55. package/dist/m/{c-OG6GFSUX.js → c-DYTBSJBI.js} +1 -1
  56. package/dist/m/{c-P2HKMJAW.js → c-EAV7A6BT.js} +1 -1
  57. package/dist/m/{c-X75G43SZ.js → c-EEWPNUM2.js} +1 -1
  58. package/dist/m/c-EHAR4RJJ.js +3 -0
  59. package/dist/m/c-EIDZHQHZ.js +1 -0
  60. package/dist/m/c-ELXMSEN5.js +1 -0
  61. package/dist/m/{c-QQFHEODI.js → c-EQ5NBOGA.js} +1 -1
  62. package/dist/m/c-FC5RUFPR.js +1 -0
  63. package/dist/m/{c-ND3Q2G2I.js → c-GFASNR55.js} +1 -1
  64. package/dist/m/{c-A4L7APIU.js → c-GNFDX6SU.js} +1 -1
  65. package/dist/m/{c-LATNQ6Q5.js → c-H3M6UDNV.js} +1 -1
  66. package/dist/m/{c-YLHTD3KX.js → c-H4M2T4A6.js} +1 -1
  67. package/dist/m/{c-DDS23EY6.js → c-HXGNH6GY.js} +1 -1
  68. package/dist/m/{c-PDBNCJCT.js → c-HYNM5U6B.js} +1 -1
  69. package/dist/m/c-J2YYLEVM.js +1 -0
  70. package/dist/m/c-J2ZW4HMR.js +1 -0
  71. package/dist/m/{c-WCG6AKA7.js → c-JC4RZW4E.js} +1 -1
  72. package/dist/m/c-K2ZHQMPF.js +1 -0
  73. package/dist/m/{c-6IJEVE6B.js → c-KU3PX7LL.js} +1 -1
  74. package/dist/m/{c-YYMZWQLR.js → c-L6KVXPBO.js} +1 -1
  75. package/dist/m/{c-CV4T65JE.js → c-LUBZU4AZ.js} +4 -4
  76. package/dist/m/{c-5FXEKU4Y.js → c-LYNLY3MR.js} +1 -1
  77. package/dist/m/{c-NQAPWM7O.js → c-MHTO3QAD.js} +1 -1
  78. package/dist/m/{c-HDVH3MVC.js → c-MKAUC6DB.js} +1 -1
  79. package/dist/m/c-MLMJUNRV.js +1 -0
  80. package/dist/m/c-MMEVDN6D.js +1 -0
  81. package/dist/m/c-MOP5KBWZ.js +1 -0
  82. package/dist/m/{c-LA2BW7UY.js → c-MZCOGNZL.js} +1 -1
  83. package/dist/m/{c-XW5TIYYB.js → c-N4GEJMXW.js} +1 -1
  84. package/dist/m/{c-RS77ODLY.js → c-NL4I4KNG.js} +1 -1
  85. package/dist/m/{c-2PVGJFI5.js → c-NW4ZFKCY.js} +1 -1
  86. package/dist/m/{c-PYG2NGWU.js → c-O3DPFZCE.js} +1 -1
  87. package/dist/m/c-O4YIDULY.js +1 -0
  88. package/dist/m/{c-LTSPHVAK.js → c-OBMZASYQ.js} +1 -1
  89. package/dist/m/c-OZOACVUD.js +1 -0
  90. package/dist/m/{c-YK2L436K.js → c-OZVK3TFI.js} +1 -1
  91. package/dist/m/c-P73XPAOA.js +1 -0
  92. package/dist/m/c-PP3CUF3U.js +1 -0
  93. package/dist/m/{c-B7GOFGQR.js → c-Q2CB57UG.js} +1 -1
  94. package/dist/m/{c-TWCXBWS3.js → c-QCDVDZIR.js} +1 -1
  95. package/dist/m/{c-LSVN3OLG.js → c-QL4NYM2L.js} +1 -1
  96. package/dist/m/c-RES2S5Q3.js +1 -0
  97. package/dist/m/c-RFGELYEU.js +2 -0
  98. package/dist/m/c-RGFPLQGV.js +1 -0
  99. package/dist/m/c-SMLAJASY.js +1 -0
  100. package/dist/m/{c-MQKSKQHG.js → c-STAPQ2X6.js} +1 -1
  101. package/dist/m/c-SYVF6ZMF.js +1 -0
  102. package/dist/m/{c-SE3SIY7Y.js → c-T5IWJOMW.js} +1 -1
  103. package/dist/m/{c-DD26VXAP.js → c-T7LOTEWO.js} +1 -1
  104. package/dist/m/{c-47IBJGPQ.js → c-TWB5ZQU4.js} +1 -1
  105. package/dist/m/c-U35T5NAY.js +1 -0
  106. package/dist/m/c-U4TWEIKZ.js +1 -0
  107. package/dist/m/c-UW6MMZ4V.js +1 -0
  108. package/dist/m/{c-JWDCQL6J.js → c-V5L6HWVL.js} +1 -1
  109. package/dist/m/c-VGG3UR7I.js +1 -0
  110. package/dist/m/{c-CZHTXGJS.js → c-VO6RSFCO.js} +1 -1
  111. package/dist/m/c-VU4WEWPH.js +4 -0
  112. package/dist/m/c-W7LWCJHD.js +1 -0
  113. package/dist/m/c-WOJ2RTV4.js +1 -0
  114. package/dist/m/{c-T3P3AXEW.js → c-WOWGGNCJ.js} +1 -1
  115. package/dist/m/{c-6RGEQNVV.js → c-XCOQNISP.js} +1 -1
  116. package/dist/m/{c-SGGGCIVD.js → c-XS7G6U3Z.js} +1 -1
  117. package/dist/m/{c-4PO3YGDC.js → c-Y3J5LDKB.js} +1 -1
  118. package/dist/m/c-Y3MPVURA.js +1 -0
  119. package/dist/m/c-Y6HH7LTM.js +1 -0
  120. package/dist/m/{c-RO73MKKR.js → c-YRDKVEGR.js} +1 -1
  121. package/dist/m/{c-FEC6LGFF.js → c-YZGWSCMT.js} +1 -1
  122. package/dist/m/{c-7CM4GMTS.js → c-ZJ7726FO.js} +1 -1
  123. package/dist/m/{c-SKMIR5HQ.js → c-ZPI7M5U5.js} +1 -1
  124. package/dist/m/core/{admin-attrs-ONRWVXPK.js → admin-attrs-43JBA6JB.js} +1 -1
  125. package/dist/m/core/{autosave-TBKAAAFB.js → autosave-HD7Y7UNV.js} +1 -1
  126. package/dist/m/core/{conflict-notice-FOEE6I7E.js → conflict-notice-Y2NTMDGJ.js} +1 -1
  127. package/dist/m/core/draft-mode-M5XNYBMY.js +1 -0
  128. package/dist/m/core/{host-permission-X4BENZEU.js → host-permission-5BYP24GC.js} +1 -1
  129. package/dist/m/core/{is-edit-mode-FFHCQ5DR.js → is-edit-mode-73OXKK5H.js} +1 -1
  130. package/dist/m/core/{persist-6ILUR34S.js → persist-MX3VYVBN.js} +1 -1
  131. package/dist/m/core/{recovery-APWADU4K.js → recovery-VZF7RJZF.js} +1 -1
  132. package/dist/m/core/{save-6HT2LABE.js → save-JZ7R4ET2.js} +1 -1
  133. package/dist/m/core/{save-core-EVMNZQ4V.js → save-core-I4N6S4ED.js} +1 -1
  134. package/dist/m/core/{site-edits-G4BOZMV4.js → site-edits-TIJDPG6H.js} +1 -1
  135. package/dist/m/core/{snapshot-FJP5IJL3.js → snapshot-N5MKDGNI.js} +1 -1
  136. package/dist/m/core/unsaved-warning-BP6ZY3PG.js +1 -0
  137. package/dist/m/events/{index-B6TGDYMG.js → index-YKQIBZE5.js} +1 -1
  138. package/dist/m/internals/index-3LAVREAU.js +1 -0
  139. package/dist/m/lib/{cache-bust-NH7VBWHO.js → cache-bust-BL4KUQAJ.js} +1 -1
  140. package/dist/m/{loader-GLLVDUZA.js → loader-7ORQVRCK.js} +1 -1
  141. package/dist/m/manifest-A27A4278.js +1 -0
  142. package/dist/m/manifest-edit-E8A61EB4.js +1 -0
  143. package/dist/m/manifest.json +1608 -1498
  144. package/dist/m/options/{options-55LQHSJ4.js → options-LKIZ7YTG.js} +1 -1
  145. package/dist/m/page/{editor-KAZDJNND.js → editor-HS2CAV3W.js} +5 -5
  146. package/dist/m/plugins/{ai-edit-LABECCSN.js → ai-edit-WDV2GLDU.js} +2 -2
  147. package/dist/m/plugins/{cms-T2HLI7JG.js → cms-4KET6RZT.js} +9 -9
  148. package/dist/m/plugins/{demo-T7B4RIKL.js → demo-LMCMBILC.js} +1 -1
  149. package/dist/m/plugins/{derive-6LPJOCAV.js → derive-R4USHZ7P.js} +1 -1
  150. package/dist/m/plugins/{indicator-J4ABFARX.js → indicator-OLPZ4WFI.js} +1 -1
  151. package/dist/m/plugins/{live-PGBIEMGB.js → live-CO4VJS46.js} +1 -1
  152. package/dist/m/plugins/{menu-YZL3X2AJ.js → menu-ESEFQARM.js} +1 -1
  153. package/dist/m/plugins/{page-WOCNX2IN.js → page-L3VKIQU2.js} +2 -2
  154. package/dist/m/plugins/{page-view-SJODOOGE.js → page-view-6KNTXABH.js} +1 -1
  155. package/dist/m/plugins/{people-C4TCWFOQ.js → people-EBWE337I.js} +1 -1
  156. package/dist/m/plugins/quickcrop-VNRXGRPC.js +26 -0
  157. package/dist/m/plugins/{richclay-Y2NV44NA.js → richclay-V6WKJTUF.js} +17 -17
  158. package/dist/m/plugins/sortable-BAG3MSWS.js +1 -0
  159. package/dist/m/plugins/{source-YK7MO23W.js → source-OYHDXKTB.js} +1 -1
  160. package/dist/m/plugins/undo-WUK2NLBA.js +1 -0
  161. package/dist/m/plugins/{upgrade-NNTJBSK2.js → upgrade-SZQJYEQQ.js} +1 -1
  162. package/dist/m/plugins/{upload-ZKKJV76X.js → upload-NZET3DNQ.js} +1 -1
  163. package/dist/m/plugins/visitor-drafts-ZE6PCAFP.js +20 -0
  164. package/dist/m/plugins/{visitor-drafts-owner-LHUHFU3L.js → visitor-drafts-owner-TLECTYWS.js} +1 -1
  165. package/dist/m/plugins/{visitor-menu-FY4KM2SW.js → visitor-menu-5XY57JQA.js} +1 -1
  166. package/dist/m/plugins/wire-S5ATC4QI.js +1 -0
  167. package/dist/m/reader-core-AHOAP5DH.js +77 -0
  168. package/dist/m/sync/live-sync-DX4K5GDB.js +1 -0
  169. package/dist/m/ui/index-G7ZJXNMG.js +1 -0
  170. package/dist/m/vendor/sap-core.vendor-5TWOJYVM.js +7 -0
  171. package/dist/offline-manifest.json +844 -784
  172. package/dist/server/core.cjs +4245 -2614
  173. package/dist/server/markdown.cjs +1 -0
  174. package/dist/server/markdown.mjs +7 -0
  175. package/docs/guide.md +27 -37
  176. package/entries/clay-data.js +1 -1
  177. package/entries/sap.js +6 -5
  178. package/package.json +6 -2
  179. package/packed-contract.json +3 -0
  180. package/src/attrs/save-freeze.js +1 -1
  181. package/src/core/admin-contenteditable.js +1 -1
  182. package/src/core/admin-inputs.js +1 -1
  183. package/src/core/admin-onclick.js +1 -1
  184. package/src/core/admin-resources.js +5 -2
  185. package/src/core/conflict-notice-ui.js +59 -34
  186. package/src/core/draft-mode.js +5 -0
  187. package/src/core/save-core.js +10 -10
  188. package/src/core/save.js +10 -10
  189. package/src/core/snapshot.js +56 -43
  190. package/src/core/stale-host-notice.js +20 -7
  191. package/src/lib/dirty-gate.js +19 -0
  192. package/src/page/editor.js +10 -4
  193. package/src/page/import-markdown.js +22 -8
  194. package/src/page/save-projection.js +1 -1
  195. package/src/plugins/menu/visitor.js +33 -1
  196. package/src/plugins/quickcrop.js +128 -69
  197. package/src/plugins/sortable.js +25 -9
  198. package/src/plugins/visitor-drafts/commit.js +50 -3
  199. package/src/plugins/visitor-drafts/idb.js +8 -2
  200. package/src/plugins/visitor-drafts/recovery-menu.js +118 -0
  201. package/src/plugins/visitor-drafts/recovery.js +64 -0
  202. package/src/plugins/visitor-drafts/session.js +61 -13
  203. package/src/plugins/visitor-drafts/store.js +44 -8
  204. package/src/plugins/visitor-drafts.js +34 -5
  205. package/src/server/markdown/index.js +23 -0
  206. package/src/sync/conflicts.js +3 -1
  207. package/src/sync/data-guard-notice.js +137 -18
  208. package/src/sync/live-sync.js +1 -1
  209. package/src/sync/wire-profile.js +9 -4
  210. package/src/ui/bevel-controls.js +4 -1
  211. package/src/ui/dialogs.js +11 -7
  212. package/src/ui/modal.js +9 -7
  213. package/src/ui/toast.js +67 -32
  214. package/src/vendor/hyper-html-api-data.vendor.js +1 -1
  215. package/src/vendor/hyper-html-api-upgrade.vendor.js +2 -2
  216. package/src/vendor/hyper-undo.vendor.js +1 -1
  217. package/src/vendor/hypercms.vendor.js +7 -7
  218. package/src/vendor/richclay.vendor.js +16 -16
  219. package/src/vendor/sap-core.vendor.js +6 -5
  220. package/src/vendor/sap-ownership.vendor.js +181 -11
  221. package/tool-generation/context.md +69 -0
  222. package/tool-generation/system.md +2 -2
  223. package/dist/m/attrs/save-freeze-JZHKRQLR.js +0 -1
  224. package/dist/m/c-277QP5ET.js +0 -1
  225. package/dist/m/c-3UW5EJ77.js +0 -1
  226. package/dist/m/c-42ZNV7LI.js +0 -7
  227. package/dist/m/c-6Q6RGFBF.js +0 -1
  228. package/dist/m/c-APGHGDZM.js +0 -1
  229. package/dist/m/c-BGN7RCTJ.js +0 -1
  230. package/dist/m/c-CJ7QYEWI.js +0 -1
  231. package/dist/m/c-CVSWLX3X.js +0 -1
  232. package/dist/m/c-DXPOFLEJ.js +0 -1
  233. package/dist/m/c-EILLN2H2.js +0 -1
  234. package/dist/m/c-EODTTNVA.js +0 -1
  235. package/dist/m/c-ESK4S67I.js +0 -1
  236. package/dist/m/c-FDWR3FL7.js +0 -1
  237. package/dist/m/c-FYDKYW6E.js +0 -1
  238. package/dist/m/c-HKSLOVU4.js +0 -1
  239. package/dist/m/c-HTLYXCUH.js +0 -1
  240. package/dist/m/c-IUL7PU4P.js +0 -1
  241. package/dist/m/c-JQF2EUCG.js +0 -1
  242. package/dist/m/c-MFOSMAVM.js +0 -3
  243. package/dist/m/c-MQYEDF3Q.js +0 -1
  244. package/dist/m/c-MR75YPRT.js +0 -1
  245. package/dist/m/c-NHXOBD6A.js +0 -1
  246. package/dist/m/c-NVU3DORS.js +0 -1
  247. package/dist/m/c-OYHI67B6.js +0 -1
  248. package/dist/m/c-PWJSJEJU.js +0 -1
  249. package/dist/m/c-QENKN7QI.js +0 -1
  250. package/dist/m/c-R23UHMXG.js +0 -1
  251. package/dist/m/c-SGH3UTF3.js +0 -1
  252. package/dist/m/c-SXNSSHPP.js +0 -1
  253. package/dist/m/c-TFLRT5JX.js +0 -1
  254. package/dist/m/c-U4NTUVDZ.js +0 -1
  255. package/dist/m/c-V2U3F4QX.js +0 -1
  256. package/dist/m/c-VG5XIN4T.js +0 -1
  257. package/dist/m/c-VHSMPITY.js +0 -1
  258. package/dist/m/c-Z4G2UK6T.js +0 -4
  259. package/dist/m/core/draft-mode-4MCL3LYI.js +0 -1
  260. package/dist/m/core/unsaved-warning-ITZDIZ2I.js +0 -1
  261. package/dist/m/internals/index-HS3CQDFW.js +0 -1
  262. package/dist/m/manifest-50FF1C45.js +0 -1
  263. package/dist/m/manifest-edit-BE1A621D.js +0 -1
  264. package/dist/m/plugins/quickcrop-X5MRIBAP.js +0 -26
  265. package/dist/m/plugins/sortable-XCHQG65Z.js +0 -1
  266. package/dist/m/plugins/undo-VLRBQNPN.js +0 -1
  267. package/dist/m/plugins/visitor-drafts-RTZNONHT.js +0 -20
  268. package/dist/m/plugins/wire-M2NR354P.js +0 -1
  269. package/dist/m/reader-core-T2S3JC4E.js +0 -77
  270. package/dist/m/sync/live-sync-Z64YREWQ.js +0 -1
  271. package/dist/m/ui/index-MGTWOW2C.js +0 -1
  272. package/dist/m/vendor/sap-core.vendor-QAEPMETX.js +0 -6
  273. /package/dist/m/{c-QTTJYJMA.js → c-FILLTJA7.js} +0 -0
  274. /package/dist/m/plugins/{quickcrop-X5MRIBAP.js.LEGAL.txt → quickcrop-VNRXGRPC.js.LEGAL.txt} +0 -0
  275. /package/dist/m/plugins/{richclay-Y2NV44NA.js.LEGAL.txt → richclay-V6WKJTUF.js.LEGAL.txt} +0 -0
@@ -1,6 +0,0 @@
1
- import"../c-VHNSBD2M.js";var Qn=(()=>{var ue=Object.defineProperty,dt=Object.getOwnPropertyDescriptor,pt=Object.getOwnPropertyNames,mt=Object.prototype.hasOwnProperty,ht=(e,t)=>{for(var r in t)ue(e,r,{get:t[r],enumerable:!0})},bt=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of pt(t))!mt.call(e,a)&&a!==r&&ue(e,a,{get:()=>t[a],enumerable:!(n=dt(t,a))||n.enumerable});return e},gt=e=>bt(ue({},"__esModule",{value:!0}),e),Ee={};ht(Ee,{FULL_SAPJS:()=>X,Sap:()=>Y,default:()=>Kn,mount:()=>Xn,mountAll:()=>ct,needsFullSapjs:()=>we,runtime:()=>Yn});function yt(e){let t=!1,r=new Set,n=[];function a(i){i&&(n.push(i),n.length>8&&n.shift())}function l(i,d){if(a(d),i._broken){if(d==="mutation")return;c(i)}r.add(i),!t&&(t=!0,queueMicrotask(o))}function o(){t=!1;let i=[...r];r.clear();for(let d of i)f(d)}function f(i,d=!1){if(!(i._broken||i.halted)){if(i._passes=(i._passes||0)+1,i._passes>50){i._broken=!0,i._breakerRing=n.slice(),e(i,{breaker:!0});return}i._resetArmed||(i._resetArmed=!0,setTimeout(()=>{i._passes=0,i._resetArmed=!1},0)),e(i,d?{full:!0}:{})}}function u(i,d){a(d),i._broken&&c(i),f(i,!0)}function c(i){i._broken=!1,i._passes=0}return{schedule:l,runNow:u,rearm:c,ring:n}}var ke={E01:{slug:"foreign-dialect",behavior:"HALT"},E02:{slug:"moustaches-in-text",behavior:"HALT"},E04:{slug:"duplicate-declaration",behavior:"HALT"},E05:{slug:"reserved-name",behavior:"HALT"},E06:{slug:"global-html-name",behavior:"HALT"},E07:{slug:"calc-cycle",behavior:"ERR"},E08:{slug:"expression-syntax",behavior:"HALT"},E10:{slug:"orphan-item",behavior:"HALT"},E12:{slug:"unknown-state-key",behavior:"ERR"},E15:{slug:"write-to-undeclared-key",behavior:"ERR"},E16:{slug:"write-to-computed-field",behavior:"ERR"},E17:{slug:"unresolvable-action-target",behavior:"HALT"},E18:{slug:"paint-on-form-control",behavior:"HALT"},E20:{slug:"bind-on-non-control",behavior:"HALT"},E22:{slug:"format-type",behavior:"ERR"},E24:{slug:"runtime-expression-throw",behavior:"ERR"},E26:{slug:"circuit-breaker",behavior:"HALT"},E30:{slug:"attr-on-bound-control",behavior:"HALT"},E31:{slug:"password-without-transient",behavior:"HALT"},E32:{slug:"file-bind",behavior:"HALT"},E33:{slug:"dialog-state-open",behavior:"HALT"},E34:{slug:"transient-persist-collision",behavior:"HALT"},E35:{slug:"presence-state-misuse",behavior:"HALT"},E40:{slug:"each-not-array",behavior:"ERR"},E41:{slug:"each-bad-key",behavior:"ERR"},E42:{slug:"each-template",behavior:"ERR"},E43:{slug:"bind-in-each-row",behavior:"ERR"},E50:{slug:"needs-full-sapjs",behavior:"HALT"},W03:{slug:"unknown-colon-attribute",behavior:"WARN"},W04:{slug:"expression-in-when",behavior:"WARN"},W30:{slug:"nonzero-mount-writes",behavior:"WARN"},W31:{slug:"detail-dialog-saved-open",behavior:"WARN"}},ce=["disabled","readonly","required","checked","selected","multiple","open","inert","autofocus","novalidate","hidden"],xe=new Set(["title","style","hidden","lang","dir","translate","class","id","nonce","autofocus","tabindex","contenteditable","spellcheck","draggable","role","slot","part","name","value","type","itemscope","itemtype","itemid","itemprop","itemref"]),vt=new Set(["sap","scope","items","item","template","bind","calc","text","show","attr","set","trigger","move","sort","detail","each","effect","invalid","confirm","transient","default","persist","sortable","editmode"]);function wt(e){if(!e||e.nodeType!==1)return"?";if(e.id)return`${e.tagName.toLowerCase()}#${e.id}`;let t=[],r=e,n=0;for(;r&&r.nodeType===1&&n<4;){let a=r.tagName.toLowerCase();if(r.hasAttribute("sap"))a+="[sap]";else if(r.parentElement){let l=0,o=0;for(let f=r.parentElement.firstElementChild;f;f=f.nextElementSibling)f.tagName===r.tagName&&(l++,f===r&&(o=l));l>1&&(a+=`:nth-of-type(${o})`)}if(t.unshift(a),r.hasAttribute("sap"))break;r=r.parentElement,n++}return t.join(" > ")}var At=class{constructor(e){this.appName=e,this.errors=[],this.warnings=[],this.halted=!1,this.haltReason=null}block(e,t,r={}){let n=(ke[e]||{}).slug||"error",a={code:e,slug:n,el:wt(t),attr:r.attr||null,expr:r.expr||null,key:r.key||null,problem:r.problem||"",didYouMean:r.didYouMean||null,fix:r.fix||null,phase:r.phase||"runtime"},l=[`
2
- `+(e[0]==="W"?"sap \u26A0 ":"sap \u2717 ")+e+" "+n];return l.push(` at ${a.el}${a.attr?` \u2014 ${a.attr}="${a.expr??""}"`:""}`),a.problem&&l.push(` problem: ${a.problem}`),a.didYouMean&&l.push(` did you mean: ${a.didYouMean}`),a.fix&&l.push(` fix: ${a.fix}`),(e[0]==="W"?console.warn:console.error)(l.join(`
3
- `)),a}error(e,t,r={}){let n=this.block(e,t,r);return this.errors.push(n),n}warn(e,t,r={}){let n=this.block(e,t,r);return this.warnings.push(n),n}report(){return{ok:this.errors.length===0&&!this.halted,app:this.appName,halted:this.halted,haltReason:this.haltReason,errors:this.errors.slice(),warnings:this.warnings.slice()}}};function K(e,t){e&&e.getAttribute("sap-error")!==t&&e.setAttribute("sap-error",t)}function Et(e){e&&e.hasAttribute("sap-error")&&e.removeAttribute("sap-error")}function Se(e,t){let r=null,n=3;for(let a of t){let l=kt(e,a);l<n&&(n=l,r=a)}return r}function kt(e,t){let r=e.length,n=t.length,a=Array.from({length:r+1},(l,o)=>[o,...new Array(n).fill(0)]);for(let l=0;l<=n;l++)a[0][l]=l;for(let l=1;l<=r;l++)for(let o=1;o<=n;o++)a[l][o]=Math.min(a[l-1][o]+1,a[l][o-1]+1,a[l-1][o-1]+(e[l-1]===t[o-1]?0:1));return a[r][n]}var xt=new Set(ce),St={readonly:"readOnly",novalidate:"noValidate"},Nt=0,Ne=new WeakMap;function $t(e,t="sap"){let r=e.getAttribute("data-id");if(r)return r;if(e.id)return e.id;let n=Ne.get(e);return n||(n=`${t}-${(Nt++).toString(36)}`,Ne.set(e,n)),n}function Lt(e){let t=[];for(let r=e.firstElementChild;r;r=r.nextElementSibling)r.hasAttribute("item")&&!r.hasAttribute("template")&&!r.hasAttribute("cms-template")&&t.push(r);return t}function $e(e,t){if(!e||!t)return null;let r=[...e.querySelectorAll(`template[items="${t}"]`)].find(a=>a.closest("[sap]")===e),n=r&&r.content.firstElementChild;return n&&n.hasAttribute("item")?n:null}function Tt(e){for(let t=e.firstElementChild;t;t=t.nextElementSibling)if(t.hasAttribute("item")&&t.hasAttribute("template"))return t;return $e(e.closest("[sap]"),e.getAttribute("items"))}function Le(e){let t=[];if(!e)return t;for(let r of e.trim().split(/\s+/)){if(!r)continue;let n=r,a,l=n.indexOf("=");l>=0&&(a=n.slice(l+1),n=n.slice(0,l));let o=n.split(":"),f=o[0],u="string",c=!1;for(let p of o.slice(1))p==="num"?u="num":p==="bool"?u="bool":p==="presence"?u="presence":p==="transient"&&(c=!0);let i=f,d=i.startsWith("data-")&&i.length>5?i.slice(5).replace(/-([a-z])/g,(p,k)=>k.toUpperCase()):i;t.push({name:d,attr:i,type:u,default:a,transient:c})}return t}function fe(e,t){if(t==="num"){if(e==null||e==="")return 0;let r=Number(e);return Number.isNaN(r)?0:r}return t==="bool"?e==="true"||e===""||e==="1":e??""}function _t(e,t){return t==="bool"?e?"true":"false":e==null?"":String(e)}function Te(e,t){return xt.has(t)&&typeof e[St[t]||t]=="boolean"}function _e(e,t){return t.type==="presence"||t.type!=="num"&&Te(e,t.attr||t.name)}function Ce(e){return e.default!=null?e.default:e.type==="num"?"0":e.type==="bool"?"false":""}function Ct(e,t){let r=t.attr||t.name,n=e._sapTransient||(e._sapTransient={});if(!(t.name in n)){let a=e.getAttribute(r);a==null&&(a=Ce(t)),n[t.name]=fe(a,t.type)}return e.hasAttribute(r)&&e.removeAttribute(r),n[t.name]}function R(e){if(typeof e=="number")return e;if(e==null||e==="")return 0;let t=Number(typeof e=="string"?e.replace(/[$,%\s]/g,""):e);return Number.isNaN(t)?0:t}function J(e,t){return Array.isArray(e)?t==null?e:e.map(r=>typeof t=="function"?t(r):r?.[t]):[]}function Re(e,t){return J(e,t).reduce((r,n)=>r+R(n),0)}function Rt(e,t){return Array.isArray(e)?t==null?e.length:e.reduce((r,n)=>r+(t(n)?1:0),0):0}function jt(e,t){let r=J(e,t);return r.length?Re(e,t)/r.length:0}function Mt(e,t){let r=J(e,t).filter(n=>n!=null&&n!=="");return r.length?r.every(n=>typeof n=="number"||!Number.isNaN(Number(n)))?Math.min(...r.map(Number)):r.reduce((n,a)=>String(n)<=String(a)?n:a):0}function Pt(e,t){let r=J(e,t).filter(n=>n!=null&&n!=="");return r.length?r.every(n=>typeof n=="number"||!Number.isNaN(Number(n)))?Math.max(...r.map(Number)):r.reduce((n,a)=>String(n)>=String(a)?n:a):0}function Wt(e,t,r){let n=R(e)===1?t:r??t+"s";return`${e} ${n}`}function Ot(e,t){let r=new Date(e),n=new Date(t);return Number.isNaN(+r)||Number.isNaN(+n)?0:Math.round((n-r)/864e5)}function j(e){return typeof e=="number"?e:Number(e)}var Q={usd:e=>"$"+j(e).toLocaleString("en-US",{maximumFractionDigits:0}),usd2:e=>"$"+j(e).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}),pct:e=>Math.round(j(e))+"%",pct1:e=>j(e).toFixed(1)+"%",int:e=>Math.round(j(e)).toLocaleString("en-US"),num:e=>j(e).toLocaleString("en-US"),num2:e=>j(e).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}),compact:e=>j(e).toLocaleString("en-US",{notation:"compact"}),date:e=>{let t=new Date(e);return Number.isNaN(+t)?String(e):t.toLocaleDateString("en-US")},clock:e=>{let t=j(e),r=Math.floor(t/100),n=r%10,a=Math.floor(r/10)%60;return`${Math.floor(r/600)}:${String(a).padStart(2,"0")}.${n}`}},Dt=new Set(["usd","usd2","pct","pct1","int","num","num2","compact","clock"]);function Bt(e,t){if(!e)return t==null?"":String(t);let r=Q[e];if(typeof r!="function"){let n=new Error(`unknown format "${e}"`);throw n.sapCode="E22",n}if(Dt.has(e)){let n=typeof t=="number"?t:Number(t);if(!Number.isFinite(n)){let a=new Error(`format "${e}" received ${typeof t=="string"?`"${t}"`:t}`);throw a.sapCode="E22",a}}return r(t)}var Ft=["state","item","el","root","fmt","num","sum","count","avg","min","max","plural","days"],Z=new Map,je=/\bstate\.([a-z][a-z0-9_]*)/g,Me=/\bitem\.([a-z][a-z0-9_]*)/g;function Ht(e){let t=new Set,r=new Set,n;for(je.lastIndex=0;n=je.exec(e);)t.add(n[1]);for(Me.lastIndex=0;n=Me.exec(e);)r.add(n[1]);return{state:t,item:r}}function M(e,t=!1){let r=(t?"!":"")+e,n=Z.get(r);if(n)return n;Z.size>512&&Z.clear();try{let a=t?`"use strict";
4
- ${e}`:`"use strict"; return (${e});`;n={fn:new Function(...Ft,a),src:e,statement:t,deps:Ht(e),error:null}}catch(a){n={fn:null,src:e,statement:t,deps:{state:new Set,item:new Set},error:a}}return Z.set(r,n),n}function It(e,t,r,n,a){if(e.error)throw e.error;return e.fn(t,r,n,a,Q,R,Re,Rt,jt,Mt,Pt,Wt,Ot)}var U={},G=null,Pe=!0,ee=!1;function zt(){U={}}function qt(e){let t=ee;return G?We(G.takeRecords()):Pe&&Gt(),ee=!!G&&e.getRootNode()===document,t}function Ut(e){ee=e}function Gt(){if(typeof document>"u"||typeof MutationObserver!="function"){Pe=!1;return}G=new MutationObserver(We),G.observe(document,{attributes:!0,childList:!0,subtree:!0})}function We(e){for(let t of e)if(t.type==="attributes")t.target._sapPlan&&(t.target._sapPlan=null);else for(let r of t.addedNodes)r.nodeType===1&&Oe(r)}function Oe(e){e._sapPlan&&(e._sapPlan=null);for(let t=e.firstElementChild;t;t=t.nextElementSibling)Oe(t)}function de(e){if(!ee)return De(e);let t=e._sapPlan;return t&&t.gen===U?t:e._sapPlan=De(e)}function De(e){let t={gen:U,inert:e.tagName==="TEMPLATE",template:!1,cms:!1,item:!1,scope:!1,items:!1,detail:!1,each:!1,boundary:null,bind:null,transient:!1,decls:null,calcs:null,paints:null,effects:null,invalids:null};for(let r of e.attributes){let n=r.name,a=r.value,l=n.indexOf(":");if(l<0){switch(n){case"sap-ignore":t.inert=!0;break;case"cms-template":t.inert=!0,t.cms=!0;break;case"template":t.inert=!0,t.template=!0;break;case"item":t.item=!0;break;case"scope":t.scope=!0;break;case"items":t.items=!0;break;case"detail":t.detail=!0;break;case"each":t.each=!0;break;case"bind":t.bind=a;break;case"transient":t.transient=!0;break;case"state":t.decls=Le(a);break;case"text":(t.paints||(t.paints=[])).push({kind:"text",fmt:null,entry:M(a)});break;case"show":(t.paints||(t.paints=[])).push({kind:"show",entry:M(a)});break;case"effect":(t.effects||(t.effects=[])).push({entry:M(a,!0)});break;case"invalid":(t.invalids||(t.invalids=[])).push({entry:M(a)});break}continue}let o=n.slice(0,l),f=n.slice(l+1);switch(o){case"calc":(t.calcs||(t.calcs=[])).push({name:f,entry:M(a)});break;case"text":(t.paints||(t.paints=[])).push({kind:"text",fmt:f,entry:M(a)});break;case"attr":(t.paints||(t.paints=[])).push({kind:"attr",arg:f,entry:M(a)});break;case"class":(t.paints||(t.paints=[])).push({kind:"class",arg:f,entry:M(a)});break;case"css":(t.paints||(t.paints=[])).push({kind:"css",arg:f,entry:M(a)});break;case"show-when":case"option":(t.paints||(t.paints=[])).push({kind:"when",match:"show",field:f,values:a.split("|")});break;case"hide-when":(t.paints||(t.paints=[])).push({kind:"when",match:"hide",field:f,values:a.split("|")});break;case"option-not":(t.paints||(t.paints=[])).push({kind:"when",match:"show-not",field:f,values:a.split("|")});break}}return t.boundary=t.scope?"scope":t.items?"items":t.detail?"detail":t.each?"each":null,Yt(t)?Xt():t}var te=null;function Xt(){return(!te||te.gen!==U)&&(te=Object.freeze({gen:U,inert:!1,template:!1,cms:!1,item:!1,scope:!1,items:!1,detail:!1,each:!1,boundary:null,bind:null,transient:!1,decls:null,calcs:null,paints:null,effects:null,invalids:null})),te}function Yt(e){return!e.inert&&!e.item&&e.boundary===null&&e.bind===null&&!e.transient&&!e.decls&&!e.calcs&&!e.paints&&!e.effects&&!e.invalids}var D=new WeakMap,B=new WeakMap,F=null,P=!1;function Vt(){D=new WeakMap,B=new WeakMap}function Be(e){for(let t of e){let r=t.target.nodeType===1?t.target:t.target.parentElement;for(let n=r;n;n=n.parentElement)B.delete(n);if(t.type==="attributes"){D.delete(t.target);continue}for(let n=r;n;n=n.parentElement)D.delete(n);for(let n of t.addedNodes||[])if(n.nodeType===1){D.delete(n),B.delete(n);for(let a of n.querySelectorAll("*"))D.delete(a),B.delete(a)}}}function Kt(){return P}function Jt(e){return P?B.get(e):void 0}function Qt(e,t){P&&B.set(e,t)}function Zt(e){B.delete(e)}function en(e){let t=P;return!F&&typeof MutationObserver=="function"&&(F=new MutationObserver(Be),F.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})),F&&Be(F.takeRecords()),P=!!F&&e.getRootNode()===document,t}function tn(e){P=e}function Fe(e){let t=D.get(e);return t||D.set(e,t={attrs:new Map,hasText:!1,text:""}),t}function nn(e,t){if(!P)return e.getAttribute(t);let r=Fe(e);return r.attrs.has(t)||r.attrs.set(t,e.getAttribute(t)),r.attrs.get(t)}function rn(e){if(!P)return e.textContent;let t=Fe(e);return t.hasText||(t.text=e.textContent,t.hasText=!0),t.text}function He(e){return(e.getAttribute("type")||"text").toLowerCase()}function pe(e){let t=e.tagName;if(t==="INPUT"){let r=He(e);r==="checkbox"||r==="radio"?e.checked?e.setAttribute("checked",""):e.removeAttribute("checked"):e.setAttribute("value",e.value);return}if(t==="TEXTAREA"){e.setAttribute("data-value",e.value);return}if(t==="SELECT"){let r=e.options;for(let n=0;n<r.length;n++)r[n].selected?r[n].setAttribute("selected",""):r[n].removeAttribute("selected")}}function an(e,t=e){let r=e.tagName;if(r==="INPUT"){let n=He(e);n==="checkbox"||n==="radio"?t.checked?e.hasAttribute("checked")||e.setAttribute("checked",""):e.removeAttribute("checked"):t.value!==(e.getAttribute("value")??"")&&e.setAttribute("value",t.value);return}if(r==="TEXTAREA"){let n=t.value.startsWith(`
5
- `)?`
6
- `+t.value:t.value;e.textContent!==n&&(e.textContent=n),e.removeAttribute("data-value");return}if(r==="SELECT"){let n=e.options,a=t.options;for(let l=0;l<n.length;l++)a[l]&&a[l].selected?n[l].hasAttribute("selected")||n[l].setAttribute("selected",""):n[l].removeAttribute("selected")}}function Ie(e){e.tagName!=="TEXTAREA"||!e.hasAttribute("data-value")||e!==e.ownerDocument.activeElement&&(e.textContent=e.getAttribute("data-value"),e.removeAttribute("data-value"))}function T(e){if(typeof window>"u")return null;let t=window.clay,r=window.hyperclay;return e==="consent"?t?.confirm||r?.consent||null:t?.[e]||r?.[e]||null}function on(){let e=T("visitorDrafts");return!!(e&&typeof e.restored=="function"&&e.restored()?.restored)}var ze=["clay:mutation-ready","hyperclay:mutation-ready"],ln=["clay:sync-applied","hyperclay:livesync-applied"],sn=["clay:ready","hyperclay:ready"],un=["clay:route"],cn=["clay:modechange"];function ne(e,t,r){let n=null,a=l=>{n!==null&&n!==l.type||(n=l.type,queueMicrotask(()=>{n=null}),r(l))};for(let l of t)e.addEventListener(l,a);return()=>{for(let l of t)e.removeEventListener(l,a)}}function fn(e){let t=typeof window<"u"&&window.clay&&window.clay.ready;t&&typeof t.then=="function"?t.then(()=>e(),()=>e()):e()}function qe(e){let t=T("region");return!t||typeof t.resolveRegionPolicy!="function"||typeof t.skipForPolicy!="function"?!1:t.skipForPolicy(t.resolveRegionPolicy(e),void 0,["no-save","freeze"])}function Ue(){return typeof window>"u"?null:window.clay?.modeLifecycle||null}function me(e,{transient:t=!1}={}){if(t)return!0;let r=Ue();return typeof r?.canWrite!="function"||T("region")?.resolveRegionPolicy?.(e)?.persist==="none"?!0:r.canWrite()}function dn(e,t){if(typeof t!="function")throw new Error("Sap.batch(label, fn): fn must be a function");let r=T("undo");r&&r.flush&&r.flush();let n=t();if(n&&typeof n.then=="function")throw new Error("Sap.batch fn must be synchronous (it returned a promise)");return r&&r.commitCaptured&&r.commitCaptured(e),n}function pn(e){if(typeof window>"u"||typeof document>"u")return;let t=()=>{let p=!1;for(let k of e.apps())k.root.isConnected?e.runNow(k,"platform"):p=!0;p&&e.pruneDisconnected(),e.remountIfPresent()},r=T("derived"),n=r&&typeof r.register=="function"?r.register(t):null,a=typeof n=="function"?null:ne(document,ln,t),l=ne(document,un,t),o=null,f=!1,u=()=>{let p=o;o=null,p&&(p[2](),p[3]())},c=()=>{if(f)return!1;let p=T("undo"),k=Ue()?.state?.generation;if(o&&o[0]===p&&o[1]===k)return!0;if(u(),!p||typeof p.on!="function")return!1;let L=p.on("undo",t);if(typeof L!="function")return!1;let _=p.on("redo",t);return typeof _!="function"?(L(),!1):(o=[p,k,L,_],!0)};c();let i=[ze,sn,cn].map(p=>ne(document,p,c)),d=T("ready");return d&&typeof d.then=="function"&&d.then(c,()=>{}),()=>{f=!0,typeof n=="function"&&n(),a&&a(),l();for(let p of i)p();u()}}function Ge(e){let t=e.tagName;if(t==="INPUT"){let r=(e.getAttribute("type")||"text").toLowerCase();return r==="checkbox"?"checkbox":r==="radio"?"radio":r==="number"||r==="range"?"number":r==="hidden"?"hidden":"text"}return t==="TEXTAREA"?"text":t==="SELECT"?e.multiple?"select-multiple":"select-one":"leaf"}function mn(e){if(e.validity&&e.validity.badInput)return e.hasAttribute("value")?Number(e.getAttribute("value"))||0:e._sapLastGood??0;if(e.value==="")return 0;let t=Number(e.value);return Number.isNaN(t)?e._sapLastGood??0:(e._sapLastGood=t,t)}function Xe(e,t){switch(t){case"checkbox":return e.checked;case"radio":return e.checked?e.value:void 0;case"number":return mn(e);case"select-one":return e.value;case"select-multiple":return[...e.selectedOptions].map(r=>r.value);case"hidden":case"text":return e.value;case"leaf":return e.textContent;default:return e.value}}function hn(e,t,r){switch(t){case"checkbox":e.checked=!!r;break;case"radio":e.checked=String(e.value)===String(r);break;case"number":case"text":case"hidden":e.value=r==null?"":String(r);break;case"select-one":e.value=r==null?"":String(r);break;case"select-multiple":{let n=new Set((Array.isArray(r)?r:[r]).map(String));for(let a of e.options)a.selected=n.has(a.value);break}case"leaf":e.textContent=r==null?"":String(r);break;default:e.value=r==null?"":String(r)}}function Ye(e){if(e.hasAttribute("transient")){e.removeAttribute("value"),e.removeAttribute("checked"),e.removeAttribute("data-value");return}qe(e)||pe(e)}function bn(e){e.dispatchEvent(new Event("input",{bubbles:!0})),e.dispatchEvent(new Event("change",{bubbles:!0}))}function gn(e,t){return Xe(e,t)}function yn(e){let t=Ge(e);return{el:e,kind:t,read(){return Xe(e,t)},write(r,n={}){hn(e,t,r),n.noMirror||Ye(e),n.silent||bn(e)},mirror(){Ye(e)}}}var W=null,re=!1,H=null;function Ve(e){let t=null;return{kind:"hub",subscribe(r){let n=e.onAnyChange({debounce:0,require:"observed"},r);typeof n=="function"&&(t=n)},suppress(r){e.pause();try{return r()}finally{e.resume()}},teardown(){if(t){try{t()}catch{}t=null}}}}function vn(){let e=null;return{kind:"native",subscribe(t){e=new MutationObserver(n=>t(wn(n)));let r=typeof document<"u"&&document.body||typeof document<"u"&&document.documentElement;r&&e.observe(r,{childList:!0,subtree:!0,attributes:!0,characterData:!0})},suppress(t){let r=T("undo");r&&r.pause&&r.pause();try{return t()}finally{e&&e.takeRecords(),r&&r.resume&&r.resume()}},teardown(){e&&(e.disconnect(),e=null)}}}function wn(e){let t=[];for(let r of e)if(r.type==="attributes"){let n=r.target;n&&n.nodeType===1&&!ae(n)&&t.push({type:"attribute",element:n})}else if(r.type==="characterData"){let n=r.target&&r.target.parentElement;n&&!ae(n)&&t.push({type:"characterData",element:n})}else if(r.type==="childList"){for(let n of r.addedNodes)if(!(n.nodeType!==1||ae(n))&&(t.push({type:"add",element:n}),n.querySelectorAll))for(let a of n.querySelectorAll("*"))ae(a)||t.push({type:"add",element:a});for(let n of r.removedNodes)n.nodeType===1&&t.push({type:"remove",element:n,parent:r.target})}return t}function ae(e){return!!(e.closest&&e.closest("[sap-ignore],[template],[cms-template]"))}function An(e,t){e.pruneDisconnected();let r=new Set,n=!1;for(let a of t){let l=a.type==="remove"?a.parent:a.element,o=l&&e.appFor(l);o&&r.add(o),a.type==="add"&&a.element&&a.element.nodeType===1&&a.element.hasAttribute&&a.element.hasAttribute("sap")&&!(e.isRegistered&&e.isRegistered(a.element))&&(n=!0)}n&&e.remountIfPresent();for(let a of r)a.root.isConnected&&e.schedule(a,"mutation")}function En(e){if(W)return W.suppress(e);let t=T("undo");if(t&&t.pause&&t.resume){t.pause();try{return e()}finally{t.resume()}}return e()}function he(e,t){re=!0,W=e,e.subscribe(r=>An(t,r))}function Ke(e){if(re||typeof window>"u"||typeof document>"u")return;let t=T("Mutation");if(t&&typeof t.onAnyChange=="function"){he(Ve(t),e);return}typeof MutationObserver=="function"&&(he(vn(),e),H=ne(document,ze,function(){let r=T("Mutation");r&&(H(),H=null,W&&W.teardown(),re=!1,he(Ve(r),e))}))}function Je(){if(W)try{W.teardown()}catch{}H&&typeof document<"u"&&H(),W=null,re=!1,H=null}var kn=new Set(ce),oe=Object.freeze([]),O=[],Qe={},Ze={};function xn(e){O.includes(e)||(O.push(e),e.boundary&&Object.assign(Qe,e.boundary),e.paintKinds&&Object.assign(Ze,e.paintKinds))}function et(e,t={}){if(t.breaker){e.diag.error("E26",e.root,{problem:"recompute loop halted after 50 passes; recent triggers: "+(e._breakerRing||[]).join(", ")}),K(e.root,"loop");return}t.full&&(zt(),Vt());let r=qt(e.root);try{En(()=>Sn(e,t))}finally{Ut(r)}e._viewsChanged&&(e._viewsChanged=!1,e.root.dispatchEvent(new CustomEvent("sap:views-updated",{bubbles:!0})))}function Sn(e,t){let r=e.root,n={},a=[],l=[],o=new Set;e.diag.errors=[];let f={root:n,state:n,item:null,ownerEl:r,projection:!1},u=null;function c(s,h,b=!1){let m=h.attr||h.name,g=b?nn(s,m):s.getAttribute(m);return g==null&&(g=Ce(h),l.push({el:s,name:h.name,attr:m,value:_t(fe(g,h.type),h.type)})),fe(g,h.type)}function i(s,h,b,m){let g=h.decls;if(!g)return;let A=!!m.item&&!m.projection&&!m.view;for(let S of g){if(S.transient){u&&(u.pure=!1),b[S.name]=Ct(s,S);continue}if(_e(s,S)){b[S.name]=s.hasAttribute(S.attr);continue}b[S.name]=c(s,S,A)}}function d(s,h,b){let m=h.bind,g=b.item||b.state,A=Ge(s);u&&(A!=="leaf"||h.transient)&&(u.pure=!1),A==="radio"?(m in g||(g[m]=""),s.checked&&(g[m]=s.value)):A==="leaf"&&b.item&&!b.projection&&!b.view?g[m]=rn(s):g[m]=gn(s,A),h.transient&&(s.removeAttribute("value"),s.removeAttribute("checked"))}function p(s,h,b){let m=!1;if(h.paints){m=!0;for(let g of h.paints)g.kind==="when"&&o.add(g.field),a.push({def:g,el:s,ctx:b})}for(let g of O)g.collect&&g.collect(w,s,h,b)!==!1&&(m=!0);u&&m&&(h.calcs&&(u.pure=!1),u.collects.push(s,h))}function k(s,h,b){Object.defineProperty(s,"$key",{value:$t(h,"row"),enumerable:!1}),Object.defineProperty(s,"$index",{value:b,enumerable:!1,configurable:!0}),Object.defineProperty(s,"$el",{value:h,enumerable:!1})}function L(s,h,b){let m=de(s);i(s,m,h,b),s._sapScope=h,!b.projection&&m.bind!=null&&d(s,m,b),p(s,m,b),m.items?le(s,h,b):_(s,h,b)}function _(s,h,b){for(let m=s.firstElementChild;m;m=m.nextElementSibling)z(m,h,b)}function z(s,h,b){let m=de(s);if(!m.inert){if(m.boundary){u&&(u.pure=!1),m.boundary==="scope"?ie(s,h,b):m.boundary==="items"?(p(s,m,b),le(s,h,b)):Qe[m.boundary](w,s,m,h,b);return}!b.projection&&!b.view&&m.bind!=null&&d(s,m,b),p(s,m,b);for(let g=s.firstElementChild;g;g=g.nextElementSibling)z(g,h,b)}}function ie(s,h,b){let m=s.getAttribute("scope"),g={};h[m]=g;let A={root:b.root,state:g,item:null,ownerEl:s,projection:b.projection};L(s,g,A)}function le(s,h,b){u&&(u.pure=!1);let m=s.getAttribute("items"),g=[];h[m]=g,s._sapList=g;let A=!b.projection&&!b.view&&Kt(),S=0;for(let N=s.firstElementChild;N;N=N.nextElementSibling){let E=de(N);if(!E.item||E.template||E.cms)continue;let $=A?Jt(N):void 0;g.push($&&$.plan===E&&Object.isExtensible($.obj)&&se($,N,S,b)||V(N,E,S,b,A)),S++}}function V(s,h,b,m,g){let A={};k(A,s,b);let S={root:m.root,state:m.state,item:A,ownerEl:s,projection:m.projection};if(!g)return L(s,A,S),A;let N=u,E={plan:h,obj:A,fields:null,presence:oe,pending:oe,collects:[],pure:!0},$=l.length,Jn=e.diag.errors.length;u=E;try{L(s,A,S)}finally{u=N}if(!E.pure||e.halted||e.diag.errors.length!==Jn)return A;let ft=[];for(let q of Object.keys(A)){let Ae=A[q];if(Ae!==null&&typeof Ae=="object")return A;ft.push(q,Ae)}if(h.decls)for(let q of h.decls)_e(s,q)&&(E.presence===oe?E.presence=[]:E.presence).push(q.name,q.attr);return l.length>$&&(E.pending=l.slice($)),E.collects.length||(E.collects=oe),E.fields=ft,Qt(s,E),A}function se(s,h,b,m){let g=s.obj;try{g.$index!==b&&Object.defineProperty(g,"$index",{value:b,enumerable:!1,configurable:!0});let N=s.presence;for(let $=0;$<N.length;$+=2)g[N[$]]=h.hasAttribute(N[$+1]);let E=s.fields;for(let $=0;$<E.length;$+=2)g[E[$]]=E[$+1]}catch{return Zt(h),null}h._sapScope=g;let A=s.pending;for(let N=0;N<A.length;N++)l.push(A[N]);let S=s.collects;if(S.length){let N={root:m.root,state:m.state,item:g,ownerEl:h,projection:m.projection};for(let E=0;E<S.length;E+=2)p(S[E],S[E+1],N)}return g}let w={app:e,root:r,rootObj:n,paints:a,stats:{calcs:0,lists:0},resolveDefault:c,collectEl:p,walkScope:_};for(let s of O)s.begin&&s.begin(w);let y=t.cacheReads===!1?null:en(r);try{L(r,n,f)}finally{t.cacheReads!==!1&&tn(y)}if(e.halted)return;for(let s of O)s.afterIntake&&s.afterIntake(w);if(l.length&&o.size)for(let s of l)o.has(s.attr)&&s.el.getAttribute(s.attr)==null&&s.el.setAttribute(s.attr,s.value);for(let s of O)s.compute&&s.compute(w);let v=0;for(let s of O)s.reconcile&&(v+=s.reconcile(w));let x=0,C=v;for(let s of a){let h=$n(s,e);s.ctx.view?C+=h:x+=h}for(let s of O)s.afterPaint&&s.afterPaint(w);e._state=n,e._stats={fields:Object.keys(n).filter(s=>typeof n[s]!="function").length,calcs:w.stats.calcs,paints:a.length,lists:w.stats.lists,writes:x,viewWrites:C},e._viewsChanged=C>0,e._lastPass={trigger:t.trigger||"refresh",writes:x},e._debug&&console.log(`sap pass \xB7 trigger: ${e._lastPass.trigger} \xB7 writes ${x}/${a.length}`)}function Nn(e){return e.kind==="text"?e.fmt?"text:"+e.fmt:"text":e.kind==="attr"?"attr:"+e.arg:e.kind==="class"?"class:"+e.arg:e.kind==="css"?"css:"+e.arg:e.kind==="when"?(e.match==="hide"?"hide-when:":e.match==="show-not"?"option-not:":"show-when:")+e.field:e.kind}function be(e,t,r,n){let a=e;for(;a&&a.nodeType===1;){if(a.hasAttribute&&a.hasAttribute(t)){let l=r.includes(a.getAttribute(t));if(n?!l:l)return!0}a=a.parentElement}return!1}function $n(e,t){let r=e.def,n=e.el,a=Ze[r.kind];if(a)return a(e,t);if(r.kind==="when")return tt(r,n,null);try{let l=It(r.entry,e.ctx.state,e.ctx.item,n,e.ctx.root),o=tt(r,n,l);return Et(n),o}catch(l){return t.diag.error(l.sapCode==="E22"?"E22":"E24",n,{attr:Nn(r),expr:r.entry&&r.entry.src,problem:String(l.message)}),K(n,l.sapCode||"E24"),0}}function tt(e,t,r){switch(e.kind){case"text":{let n=e.fmt!=null?Bt(e.fmt,r):r==null?"":String(r);return t.textContent!==n?(t.textContent=n,1):0}case"show":{let n=!r;return t.hidden!==n?(t.hidden=n,1):0}case"when":{let n=T("optionVisibility");if(n&&n._started)return t._sapWhen&&t.hidden?(t.hidden=!1,t._sapWhen=!1,1):0;let a;e.match==="hide"?a=!be(t,e.field,e.values,!1):e.match==="show-not"?a=be(t,e.field,e.values,!0):a=be(t,e.field,e.values,!1),t._sapWhen=!0;let l=!a;return t.hidden!==l?(t.hidden=l,1):0}case"attr":{let n=e.arg;if((n==="checked"||n==="selected")&&typeof t[n]=="boolean"&&!t.hasAttribute("bind")&&!t.closest("select[bind]")){let l=0;return t[n]!==!!r&&(t[n]=!!r,l=1),!!r!==t.hasAttribute(n)&&(r?t.setAttribute(n,""):t.removeAttribute(n),l=1),l}if(kn.has(n)){let l=t.hasAttribute(n);return r&&!l?(t.setAttribute(n,""),1):!r&&l?(t.removeAttribute(n),1):0}let a=typeof r=="boolean"?String(r):r==null?"":String(r);return t.getAttribute(n)!==a?(t.setAttribute(n,a),1):0}case"class":{let n=!!r;return t.classList.contains(e.arg)!==n?(t.classList.toggle(e.arg,n),1):0}case"css":{let n=r==null?"":String(r);return t.style.getPropertyValue("--"+e.arg)!==n?(t.style.setProperty("--"+e.arg,n),1):0}default:return 0}}var Ln=new Set(ce),nt=new Set(["calc","text","attr","class","css","set","move","sort","option","option-not","show-when","hide-when","editmode","viewmode"]),Tn=new Set(["show-when","hide-when","option","option-not"]),_n=/\b(?:state|item|root)\.|===|!==|&&|\|\||[()]|^\s*!/,rt=new Set(["sap","scope","items","item","template","bind","show","effect","invalid","detail","state","transient","confirm","default","persist","sortable","trigger-add","trigger-remove","trigger-reset","sap-ignore","sap-error","no-save","no-watch","no-undo","no-trigger-autosave","freeze","mutations-ignore","save-remove","save-ignore","save-freeze"]),ge=[];function Cn(e){ge.includes(e)||ge.push(e)}function Rn(e){return e.tagName==="INPUT"||e.tagName==="SELECT"||e.tagName==="TEXTAREA"}function ye(e){return e.hasAttribute("bind")}function jn(e,t){t(e);for(let n=e.firstElementChild;n;n=n.nextElementSibling)r(n);function r(n){if(!n.hasAttribute("sap-ignore")){if(n.tagName==="TEMPLATE"){if(n.hasAttribute("items"))for(let a=n.content.firstElementChild;a;a=a.nextElementSibling)r(a);return}t(n);for(let a=n.firstElementChild;a;a=a.nextElementSibling)r(a)}}}function Mn(e,t){let r=!1,n=(o,f,u)=>{t.error(o,f,u),r=!0},a=e.ownerDocument.createTreeWalker(e,4),l;for(;l=a.nextNode();)if(/\{\{.*\}\}/.test(l.nodeValue||"")){n("E02",l.parentElement||e,{problem:"moustaches in text content are not a Sap feature",fix:'move the expression onto the element: text="state.x"'});break}return jn(e,o=>{let f=new Set;for(let c of ge)c(o,n,i=>f.add(i));let u=o.closest&&o.closest("[detail]");for(let c of[...o.attributes]){let i=c.name;if(f.has(i))continue;if(i.includes(":")){let p=i.slice(0,i.indexOf(":"));if(nt.has(p)){if(Tn.has(p)&&_n.test(c.value)){let k=i.slice(i.indexOf(":")+1);t.warn("W04",o,{attr:i,expr:c.value,problem:`${p}: compares the "${k}" attribute against a literal value, not a JS expression`,fix:`use show="${c.value}" for an expression, or a literal like ${p}:${k}="overview"`})}}else{let k=Se(p,[...nt]);t.warn("W03",o,{attr:i,problem:`unknown "${p}:" attribute`,didYouMean:k?`${k}:`:null})}}else if(!rt.has(i)&&!xe.has(i)&&!Ln.has(i)&&!/^(data-|aria-|on)/.test(i)&&!(i in o)){let p=Se(i,[...rt]);p&&t.warn("W03",o,{attr:i,problem:`unknown "${i}" attribute`,didYouMean:p})}i==="attr:hidden"&&t.warn("W03",o,{attr:i,problem:"attr:hidden paints the wrong attribute",fix:'use show="expr"'});let d=ye(o)||i==="attr:selected"&&o.tagName==="OPTION"&&!!o.closest("select[bind]");(i==="attr:value"||i==="attr:checked"||i==="attr:selected")&&d&&n("E30",o,{attr:i,problem:"attr: on a bound control collides with persist ownership",fix:"remove it; bind owns this attribute"}),i==="effect"&&ye(o)&&/\b(value|checked)\s*=[^=]/.test(c.value)&&n("E30",o,{attr:i,expr:c.value,problem:"effect writes value/checked on a bound control (writes a stale value with no synthetic event)",fix:"write through onclick + Sap(this) instead"}),(i==="text"||i.startsWith("text:")||i==="show")&&Rn(o)&&(i==="show"||n("E18",o,{attr:i,problem:"paint belongs on output elements, not form controls",fix:"move the paint to an <output> or <span>"}))}if(o.hasAttribute("state")){let c=Le(o.getAttribute("state")),i=new Set;for(let d of c){d.name.includes("-")&&n("E08",o,{attr:"state",problem:`field "${d.name}" is not a valid identifier (the hyphen parses as subtraction)`,fix:`rename to ${d.name.replace(/-/g,"")}`}),i.has(d.name)&&n("E04",o,{attr:"state",problem:`field "${d.name}" is declared twice in one scope`}),i.add(d.name),vt.has(d.attr)&&n("E05",o,{attr:"state",problem:`"${d.name}" is a reserved Sap word`}),xe.has(d.attr)&&n("E06",o,{attr:"state",problem:`"${d.name}" is a global HTML attribute name; pick another field name`}),d.name==="open"&&o.tagName==="DIALOG"&&n("E33",o,{attr:"state",problem:"dialog open is transient",fix:"use showModal() \u2014 declare state= only on <details> or popovers"});let p=Te(o,d.attr);p&&(d.attr==="checked"||d.attr==="selected")&&n("E35",o,{attr:"state",problem:`"${d.attr}" on a form control is the control's own state, not a declared field`,fix:'bind the control instead, e.g. <input type="checkbox" bind="done">'}),p&&d.type==="num"&&n("E35",o,{attr:"state",problem:`"${d.attr}" is an HTML boolean attribute; it cannot hold a number`,fix:`declare it bare: state="${d.attr}"`}),d.transient&&(p||d.type==="presence")&&n("E35",o,{attr:"state",problem:`"${d.name}" is carried by attribute presence, which transient would strip`,fix:"declare a separate name:bool:transient field and paint the attribute from it"})}}if(ye(o)){if(o.hasAttribute("-"),o.tagName==="INPUT"){let c=(o.getAttribute("type")||"text").toLowerCase();c==="file"&&n("E32",o,{attr:"bind",problem:"files never serialize into an HTML file",fix:"use no-save + effect instead of bind"}),c==="password"&&!o.hasAttribute("transient")&&n("E31",o,{attr:"bind",problem:"a password must never serialize into a world-readable file",fix:"add transient to the password input"})}else if(o.tagName!=="SELECT"&&o.tagName!=="TEXTAREA"){let c=o.getAttribute("contenteditable");!(c!=null&&c!=="false")&&o.children.length>0&&n("E20",o,{attr:"bind",problem:"bind on a container element is not a control; a write would overwrite its children",fix:"bind a control (input/select/textarea), a contenteditable, or an empty text leaf"})}}if(o.hasAttribute("transient")&&o.hasAttribute("persist")&&n("E34",o,{problem:"transient and persist are opposite: persist forces the live value into the saved bytes, leaking exactly what transient drops",fix:"remove one \u2014 transient to keep it out of the file, or persist to save it"}),o.tagName==="DIALOG"&&o.hasAttribute("detail")&&!(o.parentElement&&o.parentElement.closest('[clay~="freeze"], [freeze], [save-freeze]'))&&t.warn("W31",o,{attr:"detail",problem:"a detail dialog writes open when it opens, and that attribute would be saved into the file",fix:'wrap the dialog in an element with clay="freeze" (not editor-ui, which removes it from the file), and make its key field transient'}),o.hasAttribute("item")&&!o.hasAttribute("template")&&o.parentNode&&o.parentNode.nodeType===1){let c=o.parentElement;(!c||!c.hasAttribute("items"))&&n("E10",o,{problem:"an [item] must be a direct child of an [items] list",fix:'wrap it in a container with items="name"'})}if(o.hasAttribute("items")&&u&&n("E17",o,{attr:"items",problem:"nested items inside a detail panel is a v1 mount error (nested collections ship in v1.1)"}),o.hasAttribute("items")){let c=e.querySelector(`[trigger-add="${o.getAttribute("items")}"]`);!Tt(o)&&!$e(e,o.getAttribute("items"))&&Lt(o).length===0&&c&&n("E17",o,{attr:"items",problem:`trigger-add targets items="${o.getAttribute("items")}" but it has no [item template] to clone`})}}),r&&(t.halted=!0,t.haltReason=t.errors[0]?t.errors[0].code:"halt",K(e,t.haltReason)),!r}var at="sap-styles",ot="[item][template]{display:none!important}[hidden]{display:none!important}[sap-error]{outline:2px solid #e5484d;outline-offset:1px}",ve=new WeakSet;function Pn(e){if(ve.has(e))return;let t=e.defaultView,r=t&&t.CSSStyleSheet;if(r&&"adoptedStyleSheets"in e)try{let n=new r;n.replaceSync(ot),e.adoptedStyleSheets=[...e.adoptedStyleSheets,n],ve.add(e);return}catch{}if(!e.getElementById(at)){let n=e.createElement("style");n.id=at,n.textContent=ot,(e.head||e.documentElement).appendChild(n)}ve.add(e)}var Wn=0;function it(){return typeof performance<"u"&&performance.now?performance.now():0}function lt(e){let t=e.id||e.getAttribute("sap")||`app-${Wn++}`,r=new At(t),n={root:e,name:t,diag:r,_state:null,_stats:null,_lastPass:null,_passes:0,_broken:!1,_mountMs:0,_mountWrites:0};if(!Mn(e,r))return n.halted=!0,n;Pn(e.ownerDocument);for(let l of e.querySelectorAll("textarea[data-value]"))Ie(l);let a=it();return et(n,{trigger:"mount",full:!0}),n._mountMs=it()-a,n._mountWrites=n._stats?n._stats.writes:0,n._mountWrites>0&&!on()&&!T("derived")&&r.warn("W30",e,{problem:`${n._mountWrites} paint(s) ran at mount; the saved file was out of sync with its declared state`,fix:"re-save once so the file mounts clean (a settled file writes nothing)"}),n}var st=/^(set:|move:|sort:|trigger-add$|trigger-remove$|trigger-reset$)/;function On(e){return`${e.tagName.toLowerCase()}[sap]`}function Dn(e){let t=0;for(let r of e.querySelectorAll("*"))for(let n of r.attributes)if(st.test(n.name)){t++;break}for(let r of e.attributes)if(st.test(r.name)){t++;break}return t}function Bn(e){function t(f){let u=f._stats||{},c=f.root;return{root:On(c),fields:u.fields||0,calcs:u.calcs||0,paints:u.paints||0,actions:Dn(c),lists:(c.hasAttribute("items")?1:0)+c.querySelectorAll("[items]").length,rows:c.querySelectorAll("[item]:not([template])").length,warnings:f.diag.warnings.length,errors:f.diag.errors.length,mountWrites:f._mountWrites||0,ms:Math.round((f._mountMs||0)*10)/10,passes:f._passes||0,lastPass:f._lastPass||null,ok:f.diag.errors.length===0&&!f.halted}}function r(){let f=e.apps().map(t);return{ok:f.every(u=>u.ok),apps:f}}function n(f){let u=t(f);return u.ok?`sap \u2713 ${u.root} \xB7 fields ${u.fields} \xB7 calcs ${u.calcs} \xB7 paints ${u.paints} \xB7 actions ${u.actions} \xB7 lists ${u.lists} \xB7 rows ${u.rows} \xB7 warnings ${u.warnings} \xB7 mount writes ${u.mountWrites} \xB7 ${u.ms}ms`:`sap \u2717 ${u.root} \xB7 errors ${u.errors} \xB7 warnings ${u.warnings} \xB7 ${u.ms}ms`}function a(){for(let f of e.apps()){let u=n(f);f.diag.errors.length||f.halted?console.error(u):console.log(u)}}function l(){let f=[],u=[];for(let c of e.apps())f.push(...c.diag.errors),u.push(...c.diag.warnings);return{ok:f.length===0,errors:f,warnings:u,counts:{errors:f.length,warnings:u.length}}}function o(f){let u=f===void 0?!0:!!f;for(let c of e.apps())c._debug=u;return console.log(`sap debug ${u?"on":"off"} \u2014 per-pass headers will ${u?"":"no longer "}log`),u}return{status:r,report:l,debug:o,greenLine:n,printGreenLines:a,REGISTRY:ke}}var Fn="0.8.0";function Hn({createAccessor:e,installInput:t,debugExtras:r}){let n=new Map,a=[],l=yt(et);function o(y){let v=y;for(;v;){if(v.nodeType===1&&v.hasAttribute&&v.hasAttribute("sap"))return n.get(v)||null;v=v.parentNode&&v.parentNode.host?v.parentNode.host:v.parentElement}return null}function f(){for(let y=a.length-1;y>=0;y--){let v=a[y];v.root.isConnected||(n.delete(v.root),a.splice(y,1))}}function u(y,v){if(y.moveBefore)try{y.moveBefore(v,null);return}catch{}y.appendChild(v)}function c(y,v){let x=v.parentElement;if(x){if(x.moveBefore)try{x.moveBefore(y,v);return}catch{}x.insertBefore(y,v)}}let i={apps:()=>a.slice(),appFor:o,isRegistered:y=>n.has(y),pruneDisconnected:f,schedule:(y,v)=>l.schedule(y,v),runNow:(y,v)=>l.runNow(y,v),moveInto:u,placeBefore:c,remountIfPresent:()=>V()},d=e(i),p=Bn(i),k=r?r(i,p):{},L=!1,_=!1,z=null;function ie(){L||(L=!0,t(i,d,document),z=pn(i))}function le(){let y=T("derived");y&&typeof y.mounted=="function"&&y.mounted()}function V(y=document){if(_)return[];ie(),Ke(i);let v=y.querySelectorAll("[sap]"),x=[];for(let C of v){if(n.has(C))continue;let s=lt(C);n.set(C,s),a.push(s),x.push(s)}for(let C of x){let s=p.greenLine(C);C.diag.errors.length||C.halted?console.error(s):console.log(s)}return le(),x}function se(y){if(_)return null;if(ie(),Ke(i),!y)return V();let v=typeof y=="string"?document.querySelector(y):y;if(!v)return null;if(n.has(v))return n.get(v);let x=lt(v);n.set(v,x),a.push(x);let C=p.greenLine(x);return x.diag.errors.length||x.halted?console.error(C):console.log(C),x}let w=d.Sap;return w.version=Fn,w.refresh=function(){for(let y of a)y.root.isConnected&&l.runNow(y,"refresh")},w.batch=dn,w.status=p.status,w.report=p.report,w.why=k.why,w.debug=p.debug,w.doctor=k.doctor,w.greenLine=p.greenLine,w.formats=Q,w.serializeControlToAttributes=pe,w.finalizeControlForSave=an,w.rehydrateControlFromAttributes=Ie,w.mount=se,w.config=function(y={}){return y.formats&&Object.assign(Q,y.formats),w},w._registry=n,w._reset=function(){n.clear(),a.length=0,Je()},w.unmount=function(){_=!0,n.clear(),a.length=0,Je(),typeof z=="function"&&z()},{Sap:w,mountAll:V,mount:se,runtime:i}}function In(e){if(typeof document>"u")return;let t=()=>fn(()=>e());document.readyState==="loading"?document.addEventListener("DOMContentLoaded",t):t()}function zn(e){let t=[];function r(u){let c=u.target;if(!c||c.nodeType!==1)return;let i=e.appFor(c);if(i){c.hasAttribute("persist")&&!qe(c)&&me(c)&&pe(c);for(let d of t)if(d(c,i))return;e.schedule(i,u.type+" "+(c.id||c.tagName.toLowerCase()))}}function n(u){let c=u.target,i=e.appFor(c);i&&[...c.querySelectorAll("[bind]")].every(d=>me(d))&&setTimeout(()=>{c.querySelectorAll("[bind]").forEach(d=>{d.dispatchEvent(new Event("input",{bubbles:!0})),d.dispatchEvent(new Event("change",{bubbles:!0}))}),e.schedule(i,"reset")},0)}function a(u){let c=e.appFor(u.target);c&&e.schedule(c,"toggle")}function l(u){let c=u.detail||{};for(let i of[c.from,c.to,u.target]){if(!i||i.nodeType!==1)continue;let d=e.appFor(i);d&&e.schedule(d,"sorted")}}function o(u){if(u.key!=="ArrowUp"&&u.key!=="ArrowDown")return;let c=u.target;if(!c||c.nodeType!==1||c.tagName!=="INPUT"||!c.hasAttribute("bind")||!c.hasAttribute("step"))return;let i=(c.getAttribute("type")||"text").toLowerCase();if(i!=="text"&&i!=="tel"&&i!=="search"||!e.appFor(c)||!me(c))return;u.preventDefault();let d=R(c.getAttribute("step"))||1,p=u.key==="ArrowUp"?1:-1,k=R(c.value)+d*(u.shiftKey?10:1)*p,L=c.getAttribute("min"),_=c.getAttribute("max");L!==null&&L!==""&&k<R(L)&&(k=R(L)),_!==null&&_!==""&&k>R(_)&&(k=R(_)),yn(c).write(String(Number(k.toFixed(2))))}function f(u=document){u.addEventListener("reset",n),u.addEventListener("toggle",a,!0),u.addEventListener("input",r),u.addEventListener("change",r),u.addEventListener("clay:sorted",l),u.addEventListener("keydown",o)}return{install:f,addRouter:u=>t.push(u)}}var X="https://clayjs.com/v1/sap.js",qn=/^(calc|set|move|sort):/,Un=new Set(["each","detail","effect","invalid","confirm","trigger-add","trigger-remove","trigger-reset"]);function we(e){return qn.test(e)||Un.has(e)}Cn((e,t)=>{for(let r of e.attributes)we(r.name)&&t("E50",e,{attr:r.name,expr:r.value,problem:`${r.name} is full sapjs; the sapjs core only paints declared state`,fix:`load ${X}; the markup stays as it is`})});function I(e,t,r){e.app.diag.error("E50",t,{attr:r,problem:`${r} is full sapjs; the sapjs core only paints declared state`,fix:`load ${X}; the markup stays as it is`}),K(t,"E50"),e.app.halted=!0}xn({name:"core-only",collect(e,t,r){r.calcs&&I(e,t,"calc:"+r.calcs[0].name),r.effects&&I(e,t,"effect"),r.invalids&&I(e,t,"invalid");for(let n of t.attributes)we(n.name)&&(n.name.startsWith("calc:")&&r.calcs||n.name==="effect"&&r.effects||n.name==="invalid"&&r.invalids||I(e,t,n.name));return!1},boundary:{each(e,t){I(e,t,"each")},detail(e,t){I(e,t,"detail")}}});function Gn(){return{Sap:function(){throw new Error(`Sap(el) is full sapjs; load ${X}`)}}}var ut=e=>()=>(console.warn(`Sap.${e} is full sapjs; load ${X}`),null),{Sap:Y,mountAll:ct,mount:Xn,runtime:Yn}=Hn({createAccessor:Gn,debugExtras:()=>({why:ut("why"),doctor:ut("doctor")}),installInput(e,t,r){zn(e).install(r)}});Y.core=!0;var Vn=typeof window<"u"&&window.Sap&&!window.Sap.core;Vn?Y.unmount():In(ct),typeof window<"u"&&!window.Sap&&(window.Sap=Y);var Kn=Y;return gt(Ee)})(),Zn=Qn.default;export{Zn as default};
File without changes