@abtnode/webapp 1.16.37 → 1.16.38-beta-20250110-003414-d3c1bfbd

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 (200) hide show
  1. package/blocklet.js +1 -1
  2. package/blocklet.yml +1 -1
  3. package/dist/assets/{Add-LNeK5jrT.js → Add-DMbK1vzy.js} +1 -1
  4. package/dist/assets/{ArrowDropDown-BMCAROdz.js → ArrowDropDown-DKLRovgu.js} +1 -1
  5. package/dist/assets/Autocomplete-72OfUAKA.js +1 -0
  6. package/dist/assets/{Breadcrumbs-D96Ji_Fg.js → Breadcrumbs-DvzeQG2v.js} +1 -1
  7. package/dist/assets/{ButtonGroup-DNhSwTTP.js → ButtonGroup-l0siWVyy.js} +1 -1
  8. package/dist/assets/{CSSTransition-CyKJ1XLf.js → CSSTransition-DD9Kx1Iq.js} +1 -1
  9. package/dist/assets/{CheckCircle-fa5-ji4k.js → CheckCircle-BgjyHaH-.js} +1 -1
  10. package/dist/assets/{ChevronLeft-CBG0DKr8.js → ChevronLeft-D3UVaBk1.js} +1 -1
  11. package/dist/assets/{ChevronRight-CiXNKrQ5.js → ChevronRight-CRdbPktx.js} +1 -1
  12. package/dist/assets/{Delete-SdWkobPu.js → Delete-VacyAtz7.js} +1 -1
  13. package/dist/assets/{DeleteOutline-DmY0qAVl.js → DeleteOutline-B4ZeZmby.js} +1 -1
  14. package/dist/assets/{Done-D93m_XkV.js → Done-Dm_L4cxw.js} +1 -1
  15. package/dist/assets/{Edit-CJLZw07X.js → Edit-udIPbjjy.js} +1 -1
  16. package/dist/assets/{EditIcon-FonE6fi3.js → EditIcon-D8Tco2Vt.js} +1 -1
  17. package/dist/assets/{ExpandMore-CqgNg-wv.js → ExpandMore-BMpZ8Wgn.js} +1 -1
  18. package/dist/assets/{Google-BfbvXp8-.js → Google-Ccj7tlHn.js} +1 -1
  19. package/dist/assets/{HelpOutline-jNej_Tmw.js → HelpOutline-CczYi4vf.js} +1 -1
  20. package/dist/assets/{Https-CqP1fmfy.js → Https-oAl-nB9G.js} +1 -1
  21. package/dist/assets/{InputAdornment-CtznPOEY.js → InputAdornment-DWZfDxJ5.js} +1 -1
  22. package/dist/assets/{Launch-CU2t4bei.js → Launch-Bh2GBEVm.js} +1 -1
  23. package/dist/assets/{Link-BPz9fTjE.js → Link-D4R9lXIc.js} +1 -1
  24. package/dist/assets/{ListItemButton-Ctd0Olny.js → ListItemButton-06IoaY7h.js} +1 -1
  25. package/dist/assets/{LoadingButton-CVn1jCOP.js → LoadingButton-C9iCYV5S.js} +1 -1
  26. package/dist/assets/{LockIcon-934wV3SA.js → LockIcon-lED3NuFb.js} +1 -1
  27. package/dist/assets/{Loop-Csp9pHLq.js → Loop-DwiO6dO7.js} +1 -1
  28. package/dist/assets/{MoreHoriz-kumMux-w.js → MoreHoriz-Dw0WqG6e.js} +1 -1
  29. package/dist/assets/{MoreVert-sneedYyB.js → MoreVert-C6wKUwAk.js} +1 -1
  30. package/dist/assets/{Public-BZcXc7nl.js → Public-CMOXQyK4.js} +1 -1
  31. package/dist/assets/{SchemaReference.es-DPFWnUmw.js → SchemaReference.es-Dlnv0kOV.js} +1 -1
  32. package/dist/assets/{Search-HG2-ZiCd.js → Search-B79uNwsG.js} +1 -1
  33. package/dist/assets/{ShoppingCart-B05O0lLg.js → ShoppingCart-Cbf3RE3D.js} +1 -1
  34. package/dist/assets/{Stepper-CGVylDau.js → Stepper-B03Gdn9z.js} +1 -1
  35. package/dist/assets/{ToggleButtonGroup-37A-_sW7.js → ToggleButtonGroup-D1XjcSzv.js} +1 -1
  36. package/dist/assets/{ViewColumn-Bw1Dr-Hv.js → ViewColumn-o0LIJqw8.js} +1 -1
  37. package/dist/assets/{ViewList-DtZNy2-d.js → ViewList-D8dbR_yl.js} +1 -1
  38. package/dist/assets/{_createAggregator-DVwXFFA3.js → _createAggregator-BJ_Gxlsc.js} +1 -1
  39. package/dist/assets/{actions-j_X8RXTm.js → actions-B3nBC3nT.js} +1 -1
  40. package/dist/assets/{actions-COHejXyQ.js → actions-BmNXubeF.js} +1 -1
  41. package/dist/assets/{agreement-CdA52x1A.js → agreement-9M0NNXBk.js} +1 -1
  42. package/dist/assets/api-BhoYn1LW.js +1 -0
  43. package/dist/assets/ar-DuHAbPhE.js +3 -0
  44. package/dist/assets/{audit-logs-D6otUrNH.js → audit-logs-C3C4F9zM.js} +1 -1
  45. package/dist/assets/{base32-CIv3UxMA.js → base32-DsZtf55n.js} +1 -1
  46. package/dist/assets/blocklet-WvBRbHhh.js +1 -0
  47. package/dist/assets/{brace-fold.es-SvvPxAcu.js → brace-fold.es-DlGtg1Ay.js} +1 -1
  48. package/dist/assets/{chart-CAbejja_.js → chart-DGkq-7L_.js} +1 -1
  49. package/dist/assets/{click-to-copy-DHZn0BU2.js → click-to-copy-C05ik3Tc.js} +1 -1
  50. package/dist/assets/{closebrackets.es-D0Vu1pph.js → closebrackets.es-BnxC_9rd.js} +1 -1
  51. package/dist/assets/{codemirror.es-BnDHzwS1.js → codemirror.es-Cq41RbvR.js} +1 -1
  52. package/dist/assets/{comment.es-CjNTzTkn.js → comment.es-DdPugZrN.js} +1 -1
  53. package/dist/assets/{config-navigation-CmYuYlOV.js → config-navigation-DDPZOOR-.js} +3 -3
  54. package/dist/assets/{connect-to-BE2k9kkw.js → connect-to-Crdst8cO.js} +1 -1
  55. package/dist/assets/de-CJi7wiel.js +3 -0
  56. package/dist/assets/{delete-confirm-BdV9ygjA.js → delete-confirm-DVXl439v.js} +1 -1
  57. package/dist/assets/{detail-DhWlLI9a.js → detail-BA6YG4e9.js} +3 -3
  58. package/dist/assets/{dialog.es-DAZEbvCl.js → dialog.es-mAWjZ4X4.js} +1 -1
  59. package/dist/assets/{download-CdMMZrfm.js → download-D3JXYHJu.js} +1 -1
  60. package/dist/assets/emotion-react.browser.esm-Cv2k92pS.js +1 -0
  61. package/dist/assets/es-ClwhOFrW.js +3 -0
  62. package/dist/assets/{foldgutter.es-Cj4Bse4O.js → foldgutter.es-CGXjckQe.js} +1 -1
  63. package/dist/assets/fr-CAkkNKvy.js +3 -0
  64. package/dist/assets/{get-safe-url-CPcoBNzz.js → get-safe-url-BkFcpbAL.js} +1 -1
  65. package/dist/assets/{get-safe-url-skqz94-m.js → get-safe-url-CW8aFZFz.js} +1 -1
  66. package/dist/assets/getValidReactChildren-CQZDoI1W.js +1 -0
  67. package/dist/assets/hi-CGrG89HI.js +1 -0
  68. package/dist/assets/{hint.es-D04OYf-Z.js → hint.es-BCbIeXfD.js} +1 -1
  69. package/dist/assets/{hint.es2--NLmq3n0.js → hint.es2-CH6AINL7.js} +1 -1
  70. package/dist/assets/id-D6PyIa8m.js +3 -0
  71. package/dist/assets/{iframe-DvBCKkSE.js → iframe-8AjXIKnl.js} +1 -1
  72. package/dist/assets/{index-CUO9cP5M.js → index-BJ4-V7tZ.js} +1 -1
  73. package/dist/assets/{index-CMxyXyyp.js → index-BJdqQbbW.js} +1 -1
  74. package/dist/assets/{index-D6UlG4np.js → index-BRQeDn6I.js} +1 -1
  75. package/dist/assets/{index-Bl6HgP2X.js → index-BWk_UMqc.js} +1 -1
  76. package/dist/assets/{index-Wpz0M9Lm.js → index-BY5fd9sZ.js} +1 -1
  77. package/dist/assets/{index-DqS8dcdo.js → index-Bp6z3aGT.js} +1 -1
  78. package/dist/assets/{index-CTEjUADr.js → index-C-tSf3Nu.js} +1 -1
  79. package/dist/assets/{index-C9zz2Y-O.js → index-C4Yo_q7y.js} +1 -1
  80. package/dist/assets/{index-CqXcJ23O.js → index-C92-6luS.js} +1 -1
  81. package/dist/assets/{index-CiMGLB06.js → index-CA15GHeA.js} +1 -1
  82. package/dist/assets/{index-DdlTTDA0.js → index-CBnuVUeW.js} +1 -1
  83. package/dist/assets/{index-DiahrB7x.js → index-CC2cdnYk.js} +1 -1
  84. package/dist/assets/{index-BDUwUVTl.js → index-CG1_igpG.js} +1 -1
  85. package/dist/assets/{index-CuGRRyR8.js → index-CG7xm8bB.js} +1 -1
  86. package/dist/assets/{index-CmTNtczD.js → index-CGvRuMnC.js} +1 -1
  87. package/dist/assets/{index-CME7w0y5.js → index-CIE4pfp7.js} +1 -1
  88. package/dist/assets/{index-Cu4oiqSG.js → index-CMc0Du4F.js} +21 -21
  89. package/dist/assets/{index-CenWKla5.js → index-CWbfhRhH.js} +78 -78
  90. package/dist/assets/{index-ZnkjBWZr.js → index-Cc-UKLvv.js} +1 -1
  91. package/dist/assets/{index-BQQ6HoHt.js → index-CdtPbsZF.js} +1 -1
  92. package/dist/assets/{index-BBVHal1U.js → index-CqJwdJfi.js} +1 -1
  93. package/dist/assets/{index-CeDvR2dF.js → index-D2R4EXnK.js} +4 -4
  94. package/dist/assets/{index-CdlDvYRv.js → index-D2u3Hmgc.js} +1 -1
  95. package/dist/assets/{index-BHOZSahD.js → index-D3NL2XyY.js} +1 -1
  96. package/dist/assets/{index-BUNJKpmD.js → index-D49YArUG.js} +124 -124
  97. package/dist/assets/{index-B-7NiZMn.js → index-D4cunB-D.js} +1 -1
  98. package/dist/assets/{index-Cq8gXYls.js → index-DHi3bYBp.js} +1 -1
  99. package/dist/assets/{index--g6tWKGz.js → index-DKi6BJy-.js} +1 -1
  100. package/dist/assets/{index-B_4PtLjv.js → index-Dc4xgOvt.js} +1 -1
  101. package/dist/assets/{index-DFZvQNhs.js → index-DhWjINOl.js} +1 -1
  102. package/dist/assets/{index-DbPjug53.js → index-DxpxiMNX.js} +1 -1
  103. package/dist/assets/{index-BZOzc2yh.js → index-GeGGg5FS.js} +1 -1
  104. package/dist/assets/{index-CTnaHN2F.js → index-JJP1bzc4.js} +1 -1
  105. package/dist/assets/{index-B7u6DMob.js → index-Jxsgp5Uf.js} +3 -3
  106. package/dist/assets/{index-CdjAgPV6.js → index-WAManj1W.js} +1 -1
  107. package/dist/assets/{index-BzJr8MZd.js → index-g54V2euN.js} +1 -1
  108. package/dist/assets/{index-sR_PZ0Y7.js → index-hLMcQc7k.js} +1 -1
  109. package/dist/assets/{index-BcFgJ4P7.js → index-n0yXt8Sx.js} +1 -1
  110. package/dist/assets/{index-DbM7eu_G.js → index-oSDNX64t.js} +3 -3
  111. package/dist/assets/{index-JwV9ZSj1.js → index-wrId3cmL.js} +1 -1
  112. package/dist/assets/{index-D_gJpdyF.js → index-zTokKslW.js} +2 -2
  113. package/dist/assets/{index.esm-BmJ6gVOZ.js → index.esm-CcF_wSql.js} +1 -1
  114. package/dist/assets/{info-addon.es-LRhGzFNO.js → info-addon.es-Zv7hO3v8.js} +1 -1
  115. package/dist/assets/{info.es-C-a7s3gR.js → info.es-_PvJk0Sn.js} +1 -1
  116. package/dist/assets/{install-from-url-SQrCQcYi.js → install-from-url-CHeZ3efm.js} +1 -1
  117. package/dist/assets/{invitation-DvJLTIS2.js → invitation-DSrQVBko.js} +1 -1
  118. package/dist/assets/is-path-prefix-equal-6Xk283GW.js +1 -0
  119. package/dist/assets/{item-BHaPtXP2.js → item-B8Ikm43l.js} +1 -1
  120. package/dist/assets/ja-C82Szos_.js +3 -0
  121. package/dist/assets/{javascript.es-C7DdWJKB.js → javascript.es-BRUVbIfm.js} +1 -1
  122. package/dist/assets/{jump-to-line.es-ivjE1mPV.js → jump-to-line.es-DwDv0xWQ.js} +1 -1
  123. package/dist/assets/{jump.es-D4TIjpbX.js → jump.es-Djy2R28D.js} +1 -1
  124. package/dist/assets/ko-zaXquvPm.js +3 -0
  125. package/dist/assets/{lint.es-DGHaTgxf.js → lint.es-CqwAPBE0.js} +1 -1
  126. package/dist/assets/{lint.es2-ivQKovR2.js → lint.es2-BzvK8jqN.js} +1 -1
  127. package/dist/assets/{lint.es3-Bt2w8cvz.js → lint.es3-DK49uIoO.js} +1 -1
  128. package/dist/assets/{list-header-BX4fmTdb.js → list-header-Dp2PLIET.js} +1 -1
  129. package/dist/assets/{log-zCc1coPH.js → log-DhOu9Kdc.js} +1 -1
  130. package/dist/assets/{logo-uploader-Dw-uh1T2.js → logo-uploader-Dj6giLFm.js} +4 -4
  131. package/dist/assets/{lottie-react.esm-CgEl2A0C.js → lottie-react.esm-Csdw9Vzz.js} +1 -1
  132. package/dist/assets/{matchbrackets.es-49-A2Uxh.js → matchbrackets.es-imT7Z0Y9.js} +1 -1
  133. package/dist/assets/{memory-BxEEk0to.js → memory-CCO4mC07.js} +1 -1
  134. package/dist/assets/{mode.es-CRvvIVYR.js → mode.es-230XBHtp.js} +1 -1
  135. package/dist/assets/{mode.es2-CH8NtrwB.js → mode.es2-DIyH3KiP.js} +1 -1
  136. package/dist/assets/{mode.es3-BSTnMxNC.js → mode.es3-MypnvBX7.js} +1 -1
  137. package/dist/assets/{onlineParser.es-BsaAMnEA.js → onlineParser.es-CIQBs0ab.js} +1 -1
  138. package/dist/assets/{overview-CbRHUR59.js → overview-f1KcRwxU.js} +1 -1
  139. package/dist/assets/{permission-Bkth4eV7.js → permission-Bcmsu5d5.js} +1 -1
  140. package/dist/assets/pt-CMq2TmiV.js +1 -0
  141. package/dist/assets/{resource-dialog-B39zqK45.js → resource-dialog-CjkV1JgT.js} +9 -9
  142. package/dist/assets/ru-BwmmHWZS.js +1 -0
  143. package/dist/assets/{runtime-C-QxOBAC.js → runtime-Bo8HSyE-.js} +1 -1
  144. package/dist/assets/schema-CCOnGjM-.js +29 -0
  145. package/dist/assets/sdk-qrY1rACG.js +1 -0
  146. package/dist/assets/{search.es-BwzP6MG0.js → search.es-DyMbgBDt.js} +1 -1
  147. package/dist/assets/{searchcursor.es-Bidk4QWP.js → searchcursor.es-BXpAUvZO.js} +1 -1
  148. package/dist/assets/{service-JO-3dMQL.js → service-CifH8b_H.js} +1 -1
  149. package/dist/assets/session-Oj9XmKr2.js +1 -0
  150. package/dist/assets/{shorten-label-Cyl52dM6.js → shorten-label-DWmSldhD.js} +1 -1
  151. package/dist/assets/{show-hint.es-BshPrCed.js → show-hint.es-E3psg9hY.js} +1 -1
  152. package/dist/assets/{simple-select-BMHJl3YE.js → simple-select-49kuuDJ_.js} +1 -1
  153. package/dist/assets/{slicedToArray-BNRTfgmS.js → slicedToArray-Yixr-oJu.js} +1 -1
  154. package/dist/assets/{spaces-BK8M5T_O.js → spaces-A_lKSdhY.js} +1 -1
  155. package/dist/assets/{status-CjSQkY6J.js → status-DCmFj-i0.js} +1 -1
  156. package/dist/assets/{sublime.es-DcKiuWNC.js → sublime.es-ComfFZLY.js} +1 -1
  157. package/dist/assets/{switch-control-BDeteUmz.js → switch-control-xE4sjHp6.js} +1 -1
  158. package/dist/assets/{table-icons-B2I5P9wN.js → table-icons-Q5LDmDtO.js} +1 -1
  159. package/dist/assets/{team-CT47mbew.js → team-3vCE6Gdh.js} +1 -1
  160. package/dist/assets/{th-CKxPcxWD.js → th-C-hKn9xa.js} +1 -1
  161. package/dist/assets/{toUpper-DanPvCnW.js → toUpper-0YthuLMH.js} +1 -1
  162. package/dist/assets/{traffic-DdIpuI4L.js → traffic-C-peaCPk.js} +1 -1
  163. package/dist/assets/{uniqBy-BwI-KO3U.js → uniqBy-nvRXjDh4.js} +1 -1
  164. package/dist/assets/{url-evaluation-BkGwhDBb.js → url-evaluation-Chv1gy0N.js} +1 -1
  165. package/dist/assets/{url-join-CXZZH1hT.js → url-join-Beajpd0B.js} +1 -1
  166. package/dist/assets/{use-mobile-DL3ieg5k.js → use-mobile-DRPYNh8e.js} +1 -1
  167. package/dist/assets/{useAsync-tkSQIJ7B.js → useAsync-BkCbq0Nt.js} +1 -1
  168. package/dist/assets/{useLocalStorage-BuIYftF5.js → useLocalStorage-DJrGEjBO.js} +1 -1
  169. package/dist/assets/{useThemeProps-CMeYnErS.js → useThemeProps-C9wZ4SLX.js} +1 -1
  170. package/dist/assets/{util-CJ7LZmNA.js → util-S0lCOd3M.js} +1 -1
  171. package/dist/assets/{vi-DsheN6LQ.js → vi-C_iM9J2X.js} +1 -1
  172. package/dist/assets/{wait-container-Bejv0Pdm.js → wait-container-izhq2H-L.js} +1 -1
  173. package/dist/assets/{withStyles-C7pv6jh1.js → withStyles-DcLZK18s.js} +1 -1
  174. package/dist/assets/wrap-locale-BEOy0Wuw.js +1 -0
  175. package/dist/assets/{zh-BJMvTFip.js → zh-DNY792IC.js} +1 -1
  176. package/dist/assets/zh-tw-9sY6BN2s.js +3 -0
  177. package/dist/index.html +1 -1
  178. package/dist/service-worker.js +1 -1
  179. package/package.json +1 -1
  180. package/dist/assets/Autocomplete-TOUUVKuI.js +0 -1
  181. package/dist/assets/api-Cs_T_Ea4.js +0 -1
  182. package/dist/assets/ar-DJ10cGfc.js +0 -3
  183. package/dist/assets/blocklet-B717ECiV.js +0 -1
  184. package/dist/assets/de-5ORoKwiw.js +0 -3
  185. package/dist/assets/emotion-react.browser.esm-CNy46FnI.js +0 -1
  186. package/dist/assets/es-CWClvbjs.js +0 -3
  187. package/dist/assets/fr-CE8mlhdK.js +0 -3
  188. package/dist/assets/getValidReactChildren-Cg0RyAku.js +0 -1
  189. package/dist/assets/hi-DVuJdQme.js +0 -1
  190. package/dist/assets/id-L6JUyxUh.js +0 -3
  191. package/dist/assets/is-path-prefix-equal-Bhvu_H7P.js +0 -1
  192. package/dist/assets/ja-C5orBePq.js +0 -3
  193. package/dist/assets/ko-BeIurXFC.js +0 -3
  194. package/dist/assets/pt-BED0VqHV.js +0 -1
  195. package/dist/assets/ru-B5wj2v7e.js +0 -1
  196. package/dist/assets/schema-BNNwED-s.js +0 -28
  197. package/dist/assets/sdk-DKS71jwM.js +0 -1
  198. package/dist/assets/session-Denx5-a_.js +0 -1
  199. package/dist/assets/wrap-locale-HbAVHA9D.js +0 -1
  200. package/dist/assets/zh-tw-B_su4eMW.js +0 -3
@@ -0,0 +1,29 @@
1
+ import{f7 as tr,cN as rr,f8 as sr,f9 as nr,fa as ir,H as Se,cS as oe,fb as ar,E as or,c as lr}from"./index-CWbfhRhH.js";import{p as cr}from"./index-BY5fd9sZ.js";var F={},ur=null,nt=ur,it={exports:{}};(function(w,$){(function(j,I){w.exports=I()})(self,()=>{return j={7629:(A,R,y)=>{const o=y(375),d=y(8571),h=y(9474),c=y(1687),e=y(8652),i=y(8160),s=y(3292),r=y(6354),t=y(8901),l=y(9708),n=y(6914),a=y(2294),f=y(6133),m=y(1152),g=y(8863),S=y(2036),E={Base:class{constructor(u){this.type=u,this.$_root=null,this._definition={},this._reset()}_reset(){this._ids=new a.Ids,this._preferences=null,this._refs=new f.Manager,this._cache=null,this._valids=null,this._invalids=null,this._flags={},this._rules=[],this._singleRules=new Map,this.$_terms={},this.$_temp={ruleset:null,whens:{}}}describe(){return o(typeof l.describe=="function","Manifest functionality disabled"),l.describe(this)}allow(...u){return i.verifyFlat(u,"allow"),this._values(u,"_valids")}alter(u){o(u&&typeof u=="object"&&!Array.isArray(u),"Invalid targets argument"),o(!this._inRuleset(),"Cannot set alterations inside a ruleset");const p=this.clone();p.$_terms.alterations=p.$_terms.alterations||[];for(const v in u){const O=u[v];o(typeof O=="function","Alteration adjuster for",v,"must be a function"),p.$_terms.alterations.push({target:v,adjuster:O})}return p.$_temp.ruleset=!1,p}artifact(u){return o(u!==void 0,"Artifact cannot be undefined"),o(!this._cache,"Cannot set an artifact with a rule cache"),this.$_setFlag("artifact",u)}cast(u){return o(u===!1||typeof u=="string","Invalid to value"),o(u===!1||this._definition.cast[u],"Type",this.type,"does not support casting to",u),this.$_setFlag("cast",u===!1?void 0:u)}default(u,p){return this._default("default",u,p)}description(u){return o(u&&typeof u=="string","Description must be a non-empty string"),this.$_setFlag("description",u)}empty(u){const p=this.clone();return u!==void 0&&(u=p.$_compile(u,{override:!1})),p.$_setFlag("empty",u,{clone:!1})}error(u){return o(u,"Missing error"),o(u instanceof Error||typeof u=="function","Must provide a valid Error object or a function"),this.$_setFlag("error",u)}example(u,p={}){return o(u!==void 0,"Missing example"),i.assertOptions(p,["override"]),this._inner("examples",u,{single:!0,override:p.override})}external(u,p){return typeof u=="object"&&(o(!p,"Cannot combine options with description"),p=u.description,u=u.method),o(typeof u=="function","Method must be a function"),o(p===void 0||p&&typeof p=="string","Description must be a non-empty string"),this._inner("externals",{method:u,description:p},{single:!0})}failover(u,p){return this._default("failover",u,p)}forbidden(){return this.presence("forbidden")}id(u){return u?(o(typeof u=="string","id must be a non-empty string"),o(/^[^\.]+$/.test(u),"id cannot contain period character"),this.$_setFlag("id",u)):this.$_setFlag("id",void 0)}invalid(...u){return this._values(u,"_invalids")}label(u){return o(u&&typeof u=="string","Label name must be a non-empty string"),this.$_setFlag("label",u)}meta(u){return o(u!==void 0,"Meta cannot be undefined"),this._inner("metas",u,{single:!0})}note(...u){o(u.length,"Missing notes");for(const p of u)o(p&&typeof p=="string","Notes must be non-empty strings");return this._inner("notes",u)}only(u=!0){return o(typeof u=="boolean","Invalid mode:",u),this.$_setFlag("only",u)}optional(){return this.presence("optional")}prefs(u){o(u,"Missing preferences"),o(u.context===void 0,"Cannot override context"),o(u.externals===void 0,"Cannot override externals"),o(u.warnings===void 0,"Cannot override warnings"),o(u.debug===void 0,"Cannot override debug"),i.checkPreferences(u);const p=this.clone();return p._preferences=i.preferences(p._preferences,u),p}presence(u){return o(["optional","required","forbidden"].includes(u),"Unknown presence mode",u),this.$_setFlag("presence",u)}raw(u=!0){return this.$_setFlag("result",u?"raw":void 0)}result(u){return o(["raw","strip"].includes(u),"Unknown result mode",u),this.$_setFlag("result",u)}required(){return this.presence("required")}strict(u){const p=this.clone(),v=u!==void 0&&!u;return p._preferences=i.preferences(p._preferences,{convert:v}),p}strip(u=!0){return this.$_setFlag("result",u?"strip":void 0)}tag(...u){o(u.length,"Missing tags");for(const p of u)o(p&&typeof p=="string","Tags must be non-empty strings");return this._inner("tags",u)}unit(u){return o(u&&typeof u=="string","Unit name must be a non-empty string"),this.$_setFlag("unit",u)}valid(...u){i.verifyFlat(u,"valid");const p=this.allow(...u);return p.$_setFlag("only",!!p._valids,{clone:!1}),p}when(u,p){const v=this.clone();v.$_terms.whens||(v.$_terms.whens=[]);const O=s.when(v,u,p);if(!["any","link"].includes(v.type)){const L=O.is?[O]:O.switch;for(const N of L)o(!N.then||N.then.type==="any"||N.then.type===v.type,"Cannot combine",v.type,"with",N.then&&N.then.type),o(!N.otherwise||N.otherwise.type==="any"||N.otherwise.type===v.type,"Cannot combine",v.type,"with",N.otherwise&&N.otherwise.type)}return v.$_terms.whens.push(O),v.$_mutateRebuild()}cache(u){o(!this._inRuleset(),"Cannot set caching inside a ruleset"),o(!this._cache,"Cannot override schema cache"),o(this._flags.artifact===void 0,"Cannot cache a rule with an artifact");const p=this.clone();return p._cache=u||e.provider.provision(),p.$_temp.ruleset=!1,p}clone(){const u=Object.create(Object.getPrototypeOf(this));return this._assign(u)}concat(u){o(i.isSchema(u),"Invalid schema object"),o(this.type==="any"||u.type==="any"||u.type===this.type,"Cannot merge type",this.type,"with another type:",u.type),o(!this._inRuleset(),"Cannot concatenate onto a schema with open ruleset"),o(!u._inRuleset(),"Cannot concatenate a schema with open ruleset");let p=this.clone();if(this.type==="any"&&u.type!=="any"){const v=u.clone();for(const O of Object.keys(p))O!=="type"&&(v[O]=p[O]);p=v}p._ids.concat(u._ids),p._refs.register(u,f.toSibling),p._preferences=p._preferences?i.preferences(p._preferences,u._preferences):u._preferences,p._valids=S.merge(p._valids,u._valids,u._invalids),p._invalids=S.merge(p._invalids,u._invalids,u._valids);for(const v of u._singleRules.keys())p._singleRules.has(v)&&(p._rules=p._rules.filter(O=>O.keep||O.name!==v),p._singleRules.delete(v));for(const v of u._rules)u._definition.rules[v.method].multi||p._singleRules.set(v.name,v),p._rules.push(v);if(p._flags.empty&&u._flags.empty){p._flags.empty=p._flags.empty.concat(u._flags.empty);const v=Object.assign({},u._flags);delete v.empty,c(p._flags,v)}else if(u._flags.empty){p._flags.empty=u._flags.empty;const v=Object.assign({},u._flags);delete v.empty,c(p._flags,v)}else c(p._flags,u._flags);for(const v in u.$_terms){const O=u.$_terms[v];O?p.$_terms[v]?p.$_terms[v]=p.$_terms[v].concat(O):p.$_terms[v]=O.slice():p.$_terms[v]||(p.$_terms[v]=O)}return this.$_root._tracer&&this.$_root._tracer._combine(p,[this,u]),p.$_mutateRebuild()}extend(u){return o(!u.base,"Cannot extend type with another base"),t.type(this,u)}extract(u){return u=Array.isArray(u)?u:u.split("."),this._ids.reach(u)}fork(u,p){o(!this._inRuleset(),"Cannot fork inside a ruleset");let v=this;for(let O of[].concat(u))O=Array.isArray(O)?O:O.split("."),v=v._ids.fork(O,p,v);return v.$_temp.ruleset=!1,v}rule(u){const p=this._definition;i.assertOptions(u,Object.keys(p.modifiers)),o(this.$_temp.ruleset!==!1,"Cannot apply rules to empty ruleset or the last rule added does not support rule properties");const v=this.$_temp.ruleset===null?this._rules.length-1:this.$_temp.ruleset;o(v>=0&&v<this._rules.length,"Cannot apply rules to empty ruleset");const O=this.clone();for(let L=v;L<O._rules.length;++L){const N=O._rules[L],D=d(N);for(const q in u)p.modifiers[q](D,u[q]),o(D.name===N.name,"Cannot change rule name");O._rules[L]=D,O._singleRules.get(D.name)===N&&O._singleRules.set(D.name,D)}return O.$_temp.ruleset=!1,O.$_mutateRebuild()}get ruleset(){o(!this._inRuleset(),"Cannot start a new ruleset without closing the previous one");const u=this.clone();return u.$_temp.ruleset=u._rules.length,u}get $(){return this.ruleset}tailor(u){u=[].concat(u),o(!this._inRuleset(),"Cannot tailor inside a ruleset");let p=this;if(this.$_terms.alterations)for(const{target:v,adjuster:O}of this.$_terms.alterations)u.includes(v)&&(p=O(p),o(i.isSchema(p),"Alteration adjuster for",v,"failed to return a schema object"));return p=p.$_modify({each:v=>v.tailor(u),ref:!1}),p.$_temp.ruleset=!1,p.$_mutateRebuild()}tracer(){return m.location?m.location(this):this}validate(u,p){return g.entry(u,this,p)}validateAsync(u,p){return g.entryAsync(u,this,p)}$_addRule(u){typeof u=="string"&&(u={name:u}),o(u&&typeof u=="object","Invalid options"),o(u.name&&typeof u.name=="string","Invalid rule name");for(const N in u)o(N[0]!=="_","Cannot set private rule properties");const p=Object.assign({},u);p._resolve=[],p.method=p.method||p.name;const v=this._definition.rules[p.method],O=p.args;o(v,"Unknown rule",p.method);const L=this.clone();if(O){o(Object.keys(O).length===1||Object.keys(O).length===this._definition.rules[p.name].args.length,"Invalid rule definition for",this.type,p.name);for(const N in O){let D=O[N];if(v.argsByName){const q=v.argsByName.get(N);if(q.ref&&i.isResolvable(D))p._resolve.push(N),L.$_mutateRegister(D);else if(q.normalize&&(D=q.normalize(D),O[N]=D),q.assert){const z=i.validateArg(D,N,q);o(!z,z,"or reference")}}D!==void 0?O[N]=D:delete O[N]}}return v.multi||(L._ruleRemove(p.name,{clone:!1}),L._singleRules.set(p.name,p)),L.$_temp.ruleset===!1&&(L.$_temp.ruleset=null),v.priority?L._rules.unshift(p):L._rules.push(p),L}$_compile(u,p){return s.schema(this.$_root,u,p)}$_createError(u,p,v,O,L,N={}){const D=N.flags!==!1?this._flags:{},q=N.messages?n.merge(this._definition.messages,N.messages):this._definition.messages;return new r.Report(u,p,v,D,q,O,L)}$_getFlag(u){return this._flags[u]}$_getRule(u){return this._singleRules.get(u)}$_mapLabels(u){return u=Array.isArray(u)?u:u.split("."),this._ids.labels(u)}$_match(u,p,v,O){(v=Object.assign({},v)).abortEarly=!0,v._externals=!1,p.snapshot();const L=!g.validate(u,this,p,v,O).errors;return p.restore(),L}$_modify(u){return i.assertOptions(u,["each","once","ref","schema"]),a.schema(this,u)||this}$_mutateRebuild(){return o(!this._inRuleset(),"Cannot add this rule inside a ruleset"),this._refs.reset(),this._ids.reset(),this.$_modify({each:(u,{source:p,name:v,path:O,key:L})=>{const N=this._definition[p][v]&&this._definition[p][v].register;N!==!1&&this.$_mutateRegister(u,{family:N,key:L})}}),this._definition.rebuild&&this._definition.rebuild(this),this.$_temp.ruleset=!1,this}$_mutateRegister(u,{family:p,key:v}={}){this._refs.register(u,p),this._ids.register(u,{key:v})}$_property(u){return this._definition.properties[u]}$_reach(u){return this._ids.reach(u)}$_rootReferences(){return this._refs.roots()}$_setFlag(u,p,v={}){o(u[0]==="_"||!this._inRuleset(),"Cannot set flag inside a ruleset");const O=this._definition.flags[u]||{};if(h(p,O.default)&&(p=void 0),h(p,this._flags[u]))return this;const L=v.clone!==!1?this.clone():this;return p!==void 0?(L._flags[u]=p,L.$_mutateRegister(p)):delete L._flags[u],u[0]!=="_"&&(L.$_temp.ruleset=!1),L}$_parent(u,...p){return this[u][i.symbols.parent].call(this,...p)}$_validate(u,p,v){return g.validate(u,this,p,v)}_assign(u){u.type=this.type,u.$_root=this.$_root,u.$_temp=Object.assign({},this.$_temp),u.$_temp.whens={},u._ids=this._ids.clone(),u._preferences=this._preferences,u._valids=this._valids&&this._valids.clone(),u._invalids=this._invalids&&this._invalids.clone(),u._rules=this._rules.slice(),u._singleRules=d(this._singleRules,{shallow:!0}),u._refs=this._refs.clone(),u._flags=Object.assign({},this._flags),u._cache=null,u.$_terms={};for(const p in this.$_terms)u.$_terms[p]=this.$_terms[p]?this.$_terms[p].slice():null;u.$_super={};for(const p in this.$_super)u.$_super[p]=this._super[p].bind(u);return u}_bare(){const u=this.clone();u._reset();const p=u._definition.terms;for(const v in p){const O=p[v];u.$_terms[v]=O.init}return u.$_mutateRebuild()}_default(u,p,v={}){return i.assertOptions(v,"literal"),o(p!==void 0,"Missing",u,"value"),o(typeof p=="function"||!v.literal,"Only function value supports literal option"),typeof p=="function"&&v.literal&&(p={[i.symbols.literal]:!0,literal:p}),this.$_setFlag(u,p)}_generate(u,p,v){if(!this.$_terms.whens)return{schema:this};const O=[],L=[];for(let q=0;q<this.$_terms.whens.length;++q){const z=this.$_terms.whens[q];if(z.concat){O.push(z.concat),L.push(`${q}.concat`);continue}const U=z.ref?z.ref.resolve(u,p,v):u,X=z.is?[z]:z.switch,te=L.length;for(let W=0;W<X.length;++W){const{is:G,then:J,otherwise:Q}=X[W],se=`${q}${z.switch?"."+W:""}`;if(G.$_match(U,p.nest(G,`${se}.is`),v)){if(J){const fe=p.localize([...p.path,`${se}.then`],p.ancestors,p.schemas),{schema:ge,id:me}=J._generate(u,fe,v);O.push(ge),L.push(`${se}.then${me?`(${me})`:""}`);break}}else if(Q){const fe=p.localize([...p.path,`${se}.otherwise`],p.ancestors,p.schemas),{schema:ge,id:me}=Q._generate(u,fe,v);O.push(ge),L.push(`${se}.otherwise${me?`(${me})`:""}`);break}}if(z.break&&L.length>te)break}const N=L.join(", ");if(p.mainstay.tracer.debug(p,"rule","when",N),!N)return{schema:this};if(!p.mainstay.tracer.active&&this.$_temp.whens[N])return{schema:this.$_temp.whens[N],id:N};let D=this;this._definition.generate&&(D=this._definition.generate(this,u,p,v));for(const q of O)D=D.concat(q);return this.$_root._tracer&&this.$_root._tracer._combine(D,[this,...O]),this.$_temp.whens[N]=D,{schema:D,id:N}}_inner(u,p,v={}){o(!this._inRuleset(),`Cannot set ${u} inside a ruleset`);const O=this.clone();return O.$_terms[u]&&!v.override||(O.$_terms[u]=[]),v.single?O.$_terms[u].push(p):O.$_terms[u].push(...p),O.$_temp.ruleset=!1,O}_inRuleset(){return this.$_temp.ruleset!==null&&this.$_temp.ruleset!==!1}_ruleRemove(u,p={}){if(!this._singleRules.has(u))return this;const v=p.clone!==!1?this.clone():this;v._singleRules.delete(u);const O=[];for(let L=0;L<v._rules.length;++L){const N=v._rules[L];N.name!==u||N.keep?O.push(N):v._inRuleset()&&L<v.$_temp.ruleset&&--v.$_temp.ruleset}return v._rules=O,v}_values(u,p){i.verifyFlat(u,p.slice(1,-1));const v=this.clone(),O=u[0]===i.symbols.override;if(O&&(u=u.slice(1)),!v[p]&&u.length?v[p]=new S:O&&(v[p]=u.length?new S:null,v.$_mutateRebuild()),!v[p])return v;O&&v[p].override();for(const L of u){o(L!==void 0,"Cannot call allow/valid/invalid with undefined"),o(L!==i.symbols.override,"Override must be the first value");const N=p==="_invalids"?"_valids":"_invalids";v[N]&&(v[N].remove(L),v[N].length||(o(p==="_valids"||!v._flags.only,"Setting invalid value",L,"leaves schema rejecting all values due to previous valid rule"),v[N]=null)),v[p].add(L,v._refs)}return v}}};E.Base.prototype[i.symbols.any]={version:i.version,compile:s.compile,root:"$_root"},E.Base.prototype.isImmutable=!0,E.Base.prototype.deny=E.Base.prototype.invalid,E.Base.prototype.disallow=E.Base.prototype.invalid,E.Base.prototype.equal=E.Base.prototype.valid,E.Base.prototype.exist=E.Base.prototype.required,E.Base.prototype.not=E.Base.prototype.invalid,E.Base.prototype.options=E.Base.prototype.prefs,E.Base.prototype.preferences=E.Base.prototype.prefs,A.exports=new E.Base},8652:(A,R,y)=>{const o=y(375),d=y(8571),h=y(8160),c={max:1e3,supported:new Set(["undefined","boolean","number","string"])};R.provider={provision:e=>new c.Cache(e)},c.Cache=class{constructor(e={}){h.assertOptions(e,["max"]),o(e.max===void 0||e.max&&e.max>0&&isFinite(e.max),"Invalid max cache size"),this._max=e.max||c.max,this._map=new Map,this._list=new c.List}get length(){return this._map.size}set(e,i){if(e!==null&&!c.supported.has(typeof e))return;let s=this._map.get(e);if(s)return s.value=i,void this._list.first(s);s=this._list.unshift({key:e,value:i}),this._map.set(e,s),this._compact()}get(e){const i=this._map.get(e);if(i)return this._list.first(i),d(i.value)}_compact(){if(this._map.size>this._max){const e=this._list.pop();this._map.delete(e.key)}}},c.List=class{constructor(){this.tail=null,this.head=null}unshift(e){return e.next=null,e.prev=this.head,this.head&&(this.head.next=e),this.head=e,this.tail||(this.tail=e),e}first(e){e!==this.head&&(this._remove(e),this.unshift(e))}pop(){return this._remove(this.tail)}_remove(e){const{next:i,prev:s}=e;return i.prev=s,s&&(s.next=i),e===this.tail&&(this.tail=i),e.prev=null,e.next=null,e}}},8160:(A,R,y)=>{const o=y(375),d=y(7916),h=y(5934);let c,e;const i={isoDate:/^(?:[-+]\d{2})?(?:\d{4}(?!\d{2}\b))(?:(-?)(?:(?:0[1-9]|1[0-2])(?:\1(?:[12]\d|0[1-9]|3[01]))?|W(?:[0-4]\d|5[0-2])(?:-?[1-7])?|(?:00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[1-6])))(?![T]$|[T][\d]+Z$)(?:[T\s](?:(?:(?:[01]\d|2[0-3])(?:(:?)[0-5]\d)?|24\:?00)(?:[.,]\d+(?!:))?)(?:\2[0-5]\d(?:[.,]\d+)?)?(?:[Z]|(?:[+-])(?:[01]\d|2[0-3])(?::?[0-5]\d)?)?)?)?$/};R.version=h.version,R.defaults={abortEarly:!0,allowUnknown:!1,artifacts:!1,cache:!0,context:null,convert:!0,dateFormat:"iso",errors:{escapeHtml:!1,label:"path",language:null,render:!0,stack:!1,wrap:{label:'"',array:"[]"}},externals:!0,messages:{},nonEnumerables:!1,noDefaults:!1,presence:"optional",skipFunctions:!1,stripUnknown:!1,warnings:!1},R.symbols={any:Symbol.for("@hapi/joi/schema"),arraySingle:Symbol("arraySingle"),deepDefault:Symbol("deepDefault"),errors:Symbol("errors"),literal:Symbol("literal"),override:Symbol("override"),parent:Symbol("parent"),prefs:Symbol("prefs"),ref:Symbol("ref"),template:Symbol("template"),values:Symbol("values")},R.assertOptions=function(s,r,t="Options"){o(s&&typeof s=="object"&&!Array.isArray(s),"Options must be of type object");const l=Object.keys(s).filter(n=>!r.includes(n));o(l.length===0,`${t} contain unknown keys: ${l}`)},R.checkPreferences=function(s){e=e||y(3378);const r=e.preferences.validate(s);if(r.error)throw new d([r.error.details[0].message])},R.compare=function(s,r,t){switch(t){case"=":return s===r;case">":return s>r;case"<":return s<r;case">=":return s>=r;case"<=":return s<=r}},R.default=function(s,r){return s===void 0?r:s},R.isIsoDate=function(s){return i.isoDate.test(s)},R.isNumber=function(s){return typeof s=="number"&&!isNaN(s)},R.isResolvable=function(s){return!!s&&(s[R.symbols.ref]||s[R.symbols.template])},R.isSchema=function(s,r={}){const t=s&&s[R.symbols.any];return!!t&&(o(r.legacy||t.version===R.version,"Cannot mix different versions of joi schemas"),!0)},R.isValues=function(s){return s[R.symbols.values]},R.limit=function(s){return Number.isSafeInteger(s)&&s>=0},R.preferences=function(s,r){c=c||y(6914),s=s||{},r=r||{};const t=Object.assign({},s,r);return r.errors&&s.errors&&(t.errors=Object.assign({},s.errors,r.errors),t.errors.wrap=Object.assign({},s.errors.wrap,r.errors.wrap)),r.messages&&(t.messages=c.compile(r.messages,s.messages)),delete t[R.symbols.prefs],t},R.tryWithPath=function(s,r,t={}){try{return s()}catch(l){throw l.path!==void 0?l.path=r+"."+l.path:l.path=r,t.append&&(l.message=`${l.message} (${l.path})`),l}},R.validateArg=function(s,r,{assert:t,message:l}){if(R.isSchema(t)){const n=t.validate(s);return n.error?n.error.message:void 0}if(!t(s))return r?`${r} ${l}`:l},R.verifyFlat=function(s,r){for(const t of s)o(!Array.isArray(t),"Method no longer accepts array arguments:",r)}},3292:(A,R,y)=>{const o=y(375),d=y(8160),h=y(6133),c={};R.schema=function(e,i,s={}){d.assertOptions(s,["appendPath","override"]);try{return c.schema(e,i,s)}catch(r){throw s.appendPath&&r.path!==void 0&&(r.message=`${r.message} (${r.path})`),r}},c.schema=function(e,i,s){o(i!==void 0,"Invalid undefined schema"),Array.isArray(i)&&(o(i.length,"Invalid empty array schema"),i.length===1&&(i=i[0]));const r=(t,...l)=>s.override!==!1?t.valid(e.override,...l):t.valid(...l);if(c.simple(i))return r(e,i);if(typeof i=="function")return e.custom(i);if(o(typeof i=="object","Invalid schema content:",typeof i),d.isResolvable(i))return r(e,i);if(d.isSchema(i))return i;if(Array.isArray(i)){for(const t of i)if(!c.simple(t))return e.alternatives().try(...i);return r(e,...i)}return i instanceof RegExp?e.string().regex(i):i instanceof Date?r(e.date(),i):(o(Object.getPrototypeOf(i)===Object.getPrototypeOf({}),"Schema can only contain plain objects"),e.object().keys(i))},R.ref=function(e,i){return h.isRef(e)?e:h.create(e,i)},R.compile=function(e,i,s={}){d.assertOptions(s,["legacy"]);const r=i&&i[d.symbols.any];if(r)return o(s.legacy||r.version===d.version,"Cannot mix different versions of joi schemas:",r.version,d.version),i;if(typeof i!="object"||!s.legacy)return R.schema(e,i,{appendPath:!0});const t=c.walk(i);return t?t.compile(t.root,i):R.schema(e,i,{appendPath:!0})},c.walk=function(e){if(typeof e!="object")return null;if(Array.isArray(e)){for(const s of e){const r=c.walk(s);if(r)return r}return null}const i=e[d.symbols.any];if(i)return{root:e[i.root],compile:i.compile};o(Object.getPrototypeOf(e)===Object.getPrototypeOf({}),"Schema can only contain plain objects");for(const s in e){const r=c.walk(e[s]);if(r)return r}return null},c.simple=function(e){return e===null||["boolean","string","number"].includes(typeof e)},R.when=function(e,i,s){if(s===void 0&&(o(i&&typeof i=="object","Missing options"),s=i,i=h.create(".")),Array.isArray(s)&&(s={switch:s}),d.assertOptions(s,["is","not","then","otherwise","switch","break"]),d.isSchema(i))return o(s.is===void 0,'"is" can not be used with a schema condition'),o(s.not===void 0,'"not" can not be used with a schema condition'),o(s.switch===void 0,'"switch" can not be used with a schema condition'),c.condition(e,{is:i,then:s.then,otherwise:s.otherwise,break:s.break});if(o(h.isRef(i)||typeof i=="string","Invalid condition:",i),o(s.not===void 0||s.is===void 0,'Cannot combine "is" with "not"'),s.switch===void 0){let t=s;s.not!==void 0&&(t={is:s.not,then:s.otherwise,otherwise:s.then,break:s.break});let l=t.is!==void 0?e.$_compile(t.is):e.$_root.invalid(null,!1,0,"").required();return o(t.then!==void 0||t.otherwise!==void 0,'options must have at least one of "then", "otherwise", or "switch"'),o(t.break===void 0||t.then===void 0||t.otherwise===void 0,"Cannot specify then, otherwise, and break all together"),s.is===void 0||h.isRef(s.is)||d.isSchema(s.is)||(l=l.required()),c.condition(e,{ref:R.ref(i),is:l,then:t.then,otherwise:t.otherwise,break:t.break})}o(Array.isArray(s.switch),'"switch" must be an array'),o(s.is===void 0,'Cannot combine "switch" with "is"'),o(s.not===void 0,'Cannot combine "switch" with "not"'),o(s.then===void 0,'Cannot combine "switch" with "then"');const r={ref:R.ref(i),switch:[],break:s.break};for(let t=0;t<s.switch.length;++t){const l=s.switch[t],n=t===s.switch.length-1;d.assertOptions(l,n?["is","then","otherwise"]:["is","then"]),o(l.is!==void 0,'Switch statement missing "is"'),o(l.then!==void 0,'Switch statement missing "then"');const a={is:e.$_compile(l.is),then:e.$_compile(l.then)};if(h.isRef(l.is)||d.isSchema(l.is)||(a.is=a.is.required()),n){o(s.otherwise===void 0||l.otherwise===void 0,'Cannot specify "otherwise" inside and outside a "switch"');const f=s.otherwise!==void 0?s.otherwise:l.otherwise;f!==void 0&&(o(r.break===void 0,"Cannot specify both otherwise and break"),a.otherwise=e.$_compile(f))}r.switch.push(a)}return r},c.condition=function(e,i){for(const s of["then","otherwise"])i[s]===void 0?delete i[s]:i[s]=e.$_compile(i[s]);return i}},6354:(A,R,y)=>{const o=y(5688),d=y(8160),h=y(3328);R.Report=class{constructor(c,e,i,s,r,t,l){if(this.code=c,this.flags=s,this.messages=r,this.path=t.path,this.prefs=l,this.state=t,this.value=e,this.message=null,this.template=null,this.local=i||{},this.local.label=R.label(this.flags,this.state,this.prefs,this.messages),this.value===void 0||this.local.hasOwnProperty("value")||(this.local.value=this.value),this.path.length){const n=this.path[this.path.length-1];typeof n!="object"&&(this.local.key=n)}}_setTemplate(c){if(this.template=c,!this.flags.label&&this.path.length===0){const e=this._template(this.template,"root");e&&(this.local.label=e)}}toString(){if(this.message)return this.message;const c=this.code;if(!this.prefs.errors.render)return this.code;const e=this._template(this.template)||this._template(this.prefs.messages)||this._template(this.messages);return e===void 0?`Error code "${c}" is not defined, your custom type is missing the correct messages definition`:(this.message=e.render(this.value,this.state,this.prefs,this.local,{errors:this.prefs.errors,messages:[this.prefs.messages,this.messages]}),this.prefs.errors.label||(this.message=this.message.replace(/^"" /,"").trim()),this.message)}_template(c,e){return R.template(this.value,c,e||this.code,this.state,this.prefs)}},R.path=function(c){let e="";for(const i of c)typeof i!="object"&&(typeof i=="string"?(e&&(e+="."),e+=i):e+=`[${i}]`);return e},R.template=function(c,e,i,s,r){if(!e)return;if(h.isTemplate(e))return i!=="root"?e:null;let t=r.errors.language;if(d.isResolvable(t)&&(t=t.resolve(c,s,r)),t&&e[t]){if(e[t][i]!==void 0)return e[t][i];if(e[t]["*"]!==void 0)return e[t]["*"]}return e[i]?e[i]:e["*"]},R.label=function(c,e,i,s){if(c.label)return c.label;if(!i.errors.label)return"";let r=e.path;return i.errors.label==="key"&&e.path.length>1&&(r=e.path.slice(-1)),R.path(r)||R.template(null,i.messages,"root",e,i)||s&&R.template(null,s,"root",e,i)||"value"},R.process=function(c,e,i){if(!c)return null;const{override:s,message:r,details:t}=R.details(c);if(s)return s;if(i.errors.stack)return new R.ValidationError(r,t,e);const l=Error.stackTraceLimit;Error.stackTraceLimit=0;const n=new R.ValidationError(r,t,e);return Error.stackTraceLimit=l,n},R.details=function(c,e={}){let i=[];const s=[];for(const r of c){if(r instanceof Error){if(e.override!==!1)return{override:r};const l=r.toString();i.push(l),s.push({message:l,type:"override",context:{error:r}});continue}const t=r.toString();i.push(t),s.push({message:t,path:r.path.filter(l=>typeof l!="object"),type:r.code,context:r.local})}return i.length>1&&(i=[...new Set(i)]),{message:i.join(". "),details:s}},R.ValidationError=class extends Error{constructor(c,e,i){super(c),this._original=i,this.details=e}static isError(c){return c instanceof R.ValidationError}},R.ValidationError.prototype.isJoi=!0,R.ValidationError.prototype.name="ValidationError",R.ValidationError.prototype.annotate=o.error},8901:(A,R,y)=>{const o=y(375),d=y(8571),h=y(8160),c=y(6914),e={};R.type=function(i,s){const r=Object.getPrototypeOf(i),t=d(r),l=i._assign(Object.create(t)),n=Object.assign({},s);delete n.base,t._definition=n;const a=r._definition||{};n.messages=c.merge(a.messages,n.messages),n.properties=Object.assign({},a.properties,n.properties),l.type=n.type,n.flags=Object.assign({},a.flags,n.flags);const f=Object.assign({},a.terms);if(n.terms)for(const E in n.terms){const u=n.terms[E];o(l.$_terms[E]===void 0,"Invalid term override for",n.type,E),l.$_terms[E]=u.init,f[E]=u}n.terms=f,n.args||(n.args=a.args),n.prepare=e.prepare(n.prepare,a.prepare),n.coerce&&(typeof n.coerce=="function"&&(n.coerce={method:n.coerce}),n.coerce.from&&!Array.isArray(n.coerce.from)&&(n.coerce={method:n.coerce.method,from:[].concat(n.coerce.from)})),n.coerce=e.coerce(n.coerce,a.coerce),n.validate=e.validate(n.validate,a.validate);const m=Object.assign({},a.rules);if(n.rules)for(const E in n.rules){const u=n.rules[E];o(typeof u=="object","Invalid rule definition for",n.type,E);let p=u.method;if(p===void 0&&(p=function(){return this.$_addRule(E)}),p&&(o(!t[E],"Rule conflict in",n.type,E),t[E]=p),o(!m[E],"Rule conflict in",n.type,E),m[E]=u,u.alias){const v=[].concat(u.alias);for(const O of v)t[O]=u.method}u.args&&(u.argsByName=new Map,u.args=u.args.map(v=>(typeof v=="string"&&(v={name:v}),o(!u.argsByName.has(v.name),"Duplicated argument name",v.name),h.isSchema(v.assert)&&(v.assert=v.assert.strict().label(v.name)),u.argsByName.set(v.name,v),v)))}n.rules=m;const g=Object.assign({},a.modifiers);if(n.modifiers)for(const E in n.modifiers){o(!t[E],"Rule conflict in",n.type,E);const u=n.modifiers[E];o(typeof u=="function","Invalid modifier definition for",n.type,E);const p=function(v){return this.rule({[E]:v})};t[E]=p,g[E]=u}if(n.modifiers=g,n.overrides){t._super=r,l.$_super={};for(const E in n.overrides)o(r[E],"Cannot override missing",E),n.overrides[E][h.symbols.parent]=r[E],l.$_super[E]=r[E].bind(l);Object.assign(t,n.overrides)}n.cast=Object.assign({},a.cast,n.cast);const S=Object.assign({},a.manifest,n.manifest);return S.build=e.build(n.manifest&&n.manifest.build,a.manifest&&a.manifest.build),n.manifest=S,n.rebuild=e.rebuild(n.rebuild,a.rebuild),l},e.build=function(i,s){return i&&s?function(r,t){return s(i(r,t),t)}:i||s},e.coerce=function(i,s){return i&&s?{from:i.from&&s.from?[...new Set([...i.from,...s.from])]:null,method(r,t){let l;if((!s.from||s.from.includes(typeof r))&&(l=s.method(r,t),l)){if(l.errors||l.value===void 0)return l;r=l.value}if(!i.from||i.from.includes(typeof r)){const n=i.method(r,t);if(n)return n}return l}}:i||s},e.prepare=function(i,s){return i&&s?function(r,t){const l=i(r,t);if(l){if(l.errors||l.value===void 0)return l;r=l.value}return s(r,t)||l}:i||s},e.rebuild=function(i,s){return i&&s?function(r){s(r),i(r)}:i||s},e.validate=function(i,s){return i&&s?function(r,t){const l=s(r,t);if(l){if(l.errors&&(!Array.isArray(l.errors)||l.errors.length))return l;r=l.value}return i(r,t)||l}:i||s}},5107:(A,R,y)=>{const o=y(375),d=y(8571),h=y(8652),c=y(8160),e=y(3292),i=y(6354),s=y(8901),r=y(9708),t=y(6133),l=y(3328),n=y(1152);let a;const f={types:{alternatives:y(4946),any:y(8068),array:y(546),boolean:y(4937),date:y(7500),function:y(390),link:y(8785),number:y(3832),object:y(8966),string:y(7417),symbol:y(8826)},aliases:{alt:"alternatives",bool:"boolean",func:"function"},root:function(){const m={_types:new Set(Object.keys(f.types))};for(const g of m._types)m[g]=function(...S){return o(!S.length||["alternatives","link","object"].includes(g),"The",g,"type does not allow arguments"),f.generate(this,f.types[g],S)};for(const g of["allow","custom","disallow","equal","exist","forbidden","invalid","not","only","optional","options","prefs","preferences","required","strip","valid","when"])m[g]=function(...S){return this.any()[g](...S)};Object.assign(m,f.methods);for(const g in f.aliases){const S=f.aliases[g];m[g]=m[S]}return m.x=m.expression,n.setup&&n.setup(m),m}};f.methods={ValidationError:i.ValidationError,version:c.version,cache:h.provider,assert(m,g,...S){f.assert(m,g,!0,S)},attempt:(m,g,...S)=>f.assert(m,g,!1,S),build(m){return o(typeof r.build=="function","Manifest functionality disabled"),r.build(this,m)},checkPreferences(m){c.checkPreferences(m)},compile(m,g){return e.compile(this,m,g)},defaults(m){o(typeof m=="function","modifier must be a function");const g=Object.assign({},this);for(const S of g._types){const E=m(g[S]());o(c.isSchema(E),"modifier must return a valid schema object"),g[S]=function(...u){return f.generate(this,E,u)}}return g},expression:(...m)=>new l(...m),extend(...m){c.verifyFlat(m,"extend"),a=a||y(3378),o(m.length,"You need to provide at least one extension"),this.assert(m,a.extensions);const g=Object.assign({},this);g._types=new Set(g._types);for(let S of m){typeof S=="function"&&(S=S(g)),this.assert(S,a.extension);const E=f.expandExtension(S,g);for(const u of E){o(g[u.type]===void 0||g._types.has(u.type),"Cannot override name",u.type);const p=u.base||this.any(),v=s.type(p,u);g._types.add(u.type),g[u.type]=function(...O){return f.generate(this,v,O)}}}return g},isError:i.ValidationError.isError,isExpression:l.isTemplate,isRef:t.isRef,isSchema:c.isSchema,in:(...m)=>t.in(...m),override:c.symbols.override,ref:(...m)=>t.create(...m),types(){const m={};for(const g of this._types)m[g]=this[g]();for(const g in f.aliases)m[g]=this[g]();return m}},f.assert=function(m,g,S,E){const u=E[0]instanceof Error||typeof E[0]=="string"?E[0]:null,p=u!==null?E[1]:E[0],v=g.validate(m,c.preferences({errors:{stack:!0}},p||{}));let O=v.error;if(!O)return v.value;if(u instanceof Error)throw u;const L=S&&typeof O.annotate=="function"?O.annotate():O.message;throw O instanceof i.ValidationError==0&&(O=d(O)),O.message=u?`${u} ${L}`:L,O},f.generate=function(m,g,S){return o(m,"Must be invoked on a Joi instance."),g.$_root=m,g._definition.args&&S.length?g._definition.args(g,...S):g},f.expandExtension=function(m,g){if(typeof m.type=="string")return[m];const S=[];for(const E of g._types)if(m.type.test(E)){const u=Object.assign({},m);u.type=E,u.base=g[E](),S.push(u)}return S},A.exports=f.root()},6914:(A,R,y)=>{const o=y(375),d=y(8571),h=y(3328);R.compile=function(c,e){if(typeof c=="string")return o(!e,"Cannot set single message string"),new h(c);if(h.isTemplate(c))return o(!e,"Cannot set single message template"),c;o(typeof c=="object"&&!Array.isArray(c),"Invalid message options"),e=e?d(e):{};for(let i in c){const s=c[i];if(i==="root"||h.isTemplate(s)){e[i]=s;continue}if(typeof s=="string"){e[i]=new h(s);continue}o(typeof s=="object"&&!Array.isArray(s),"Invalid message for",i);const r=i;for(i in e[r]=e[r]||{},s){const t=s[i];i==="root"||h.isTemplate(t)?e[r][i]=t:(o(typeof t=="string","Invalid message for",i,"in",r),e[r][i]=new h(t))}}return e},R.decompile=function(c){const e={};for(let i in c){const s=c[i];if(i==="root"){e.root=s;continue}if(h.isTemplate(s)){e[i]=s.describe({compact:!0});continue}const r=i;for(i in e[r]={},s){const t=s[i];i!=="root"?e[r][i]=t.describe({compact:!0}):e[r].root=t}}return e},R.merge=function(c,e){if(!c)return R.compile(e);if(!e)return c;if(typeof e=="string")return new h(e);if(h.isTemplate(e))return e;const i=d(c);for(let s in e){const r=e[s];if(s==="root"||h.isTemplate(r)){i[s]=r;continue}if(typeof r=="string"){i[s]=new h(r);continue}o(typeof r=="object"&&!Array.isArray(r),"Invalid message for",s);const t=s;for(s in i[t]=i[t]||{},r){const l=r[s];s==="root"||h.isTemplate(l)?i[t][s]=l:(o(typeof l=="string","Invalid message for",s,"in",t),i[t][s]=new h(l))}}return i}},2294:(A,R,y)=>{const o=y(375),d=y(8160),h=y(6133),c={};R.Ids=c.Ids=class{constructor(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}clone(){const e=new c.Ids;return e._byId=new Map(this._byId),e._byKey=new Map(this._byKey),e._schemaChain=this._schemaChain,e}concat(e){e._schemaChain&&(this._schemaChain=!0);for(const[i,s]of e._byId.entries())o(!this._byKey.has(i),"Schema id conflicts with existing key:",i),this._byId.set(i,s);for(const[i,s]of e._byKey.entries())o(!this._byId.has(i),"Schema key conflicts with existing id:",i),this._byKey.set(i,s)}fork(e,i,s){const r=this._collect(e);r.push({schema:s});const t=r.shift();let l={id:t.id,schema:i(t.schema)};o(d.isSchema(l.schema),"adjuster function failed to return a joi schema type");for(const n of r)l={id:n.id,schema:c.fork(n.schema,l.id,l.schema)};return l.schema}labels(e,i=[]){const s=e[0],r=this._get(s);if(!r)return[...i,...e].join(".");const t=e.slice(1);return i=[...i,r.schema._flags.label||s],t.length?r.schema._ids.labels(t,i):i.join(".")}reach(e,i=[]){const s=e[0],r=this._get(s);o(r,"Schema does not contain path",[...i,...e].join("."));const t=e.slice(1);return t.length?r.schema._ids.reach(t,[...i,s]):r.schema}register(e,{key:i}={}){if(!e||!d.isSchema(e))return;(e.$_property("schemaChain")||e._ids._schemaChain)&&(this._schemaChain=!0);const s=e._flags.id;if(s){const r=this._byId.get(s);o(!r||r.schema===e,"Cannot add different schemas with the same id:",s),o(!this._byKey.has(s),"Schema id conflicts with existing key:",s),this._byId.set(s,{schema:e,id:s})}i&&(o(!this._byKey.has(i),"Schema already contains key:",i),o(!this._byId.has(i),"Schema key conflicts with existing id:",i),this._byKey.set(i,{schema:e,id:i}))}reset(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}_collect(e,i=[],s=[]){const r=e[0],t=this._get(r);o(t,"Schema does not contain path",[...i,...e].join(".")),s=[t,...s];const l=e.slice(1);return l.length?t.schema._ids._collect(l,[...i,r],s):s}_get(e){return this._byId.get(e)||this._byKey.get(e)}},c.fork=function(e,i,s){const r=R.schema(e,{each:(t,{key:l})=>{if(i===(t._flags.id||l))return s},ref:!1});return r?r.$_mutateRebuild():e},R.schema=function(e,i){let s;for(const r in e._flags){if(r[0]==="_")continue;const t=c.scan(e._flags[r],{source:"flags",name:r},i);t!==void 0&&(s=s||e.clone(),s._flags[r]=t)}for(let r=0;r<e._rules.length;++r){const t=e._rules[r],l=c.scan(t.args,{source:"rules",name:t.name},i);if(l!==void 0){s=s||e.clone();const n=Object.assign({},t);n.args=l,s._rules[r]=n,s._singleRules.get(t.name)===t&&s._singleRules.set(t.name,n)}}for(const r in e.$_terms){if(r[0]==="_")continue;const t=c.scan(e.$_terms[r],{source:"terms",name:r},i);t!==void 0&&(s=s||e.clone(),s.$_terms[r]=t)}return s},c.scan=function(e,i,s,r,t){const l=r||[];if(e===null||typeof e!="object")return;let n;if(Array.isArray(e)){for(let a=0;a<e.length;++a){const f=i.source==="terms"&&i.name==="keys"&&e[a].key,m=c.scan(e[a],i,s,[a,...l],f);m!==void 0&&(n=n||e.slice(),n[a]=m)}return n}if(s.schema!==!1&&d.isSchema(e)||s.ref!==!1&&h.isRef(e)){const a=s.each(e,{...i,path:l,key:t});return a===e?void 0:a}for(const a in e){if(a[0]==="_")continue;const f=c.scan(e[a],i,s,[a,...l],t);f!==void 0&&(n=n||Object.assign({},e),n[a]=f)}return n}},6133:(A,R,y)=>{const o=y(375),d=y(8571),h=y(9621),c=y(8160);let e;const i={symbol:Symbol("ref"),defaults:{adjust:null,in:!1,iterables:null,map:null,separator:".",type:"value"}};R.create=function(s,r={}){o(typeof s=="string","Invalid reference key:",s),c.assertOptions(r,["adjust","ancestor","in","iterables","map","prefix","render","separator"]),o(!r.prefix||typeof r.prefix=="object","options.prefix must be of type object");const t=Object.assign({},i.defaults,r);delete t.prefix;const l=t.separator,n=i.context(s,l,r.prefix);if(t.type=n.type,s=n.key,t.type==="value")if(n.root&&(o(!l||s[0]!==l,"Cannot specify relative path with root prefix"),t.ancestor="root",s||(s=null)),l&&l===s)s=null,t.ancestor=0;else if(t.ancestor!==void 0)o(!l||!s||s[0]!==l,"Cannot combine prefix with ancestor option");else{const[a,f]=i.ancestor(s,l);f&&(s=s.slice(f))===""&&(s=null),t.ancestor=a}return t.path=l?s===null?[]:s.split(l):[s],new i.Ref(t)},R.in=function(s,r={}){return R.create(s,{...r,in:!0})},R.isRef=function(s){return!!s&&!!s[c.symbols.ref]},i.Ref=class{constructor(s){o(typeof s=="object","Invalid reference construction"),c.assertOptions(s,["adjust","ancestor","in","iterables","map","path","render","separator","type","depth","key","root","display"]),o([!1,void 0].includes(s.separator)||typeof s.separator=="string"&&s.separator.length===1,"Invalid separator"),o(!s.adjust||typeof s.adjust=="function","options.adjust must be a function"),o(!s.map||Array.isArray(s.map),"options.map must be an array"),o(!s.map||!s.adjust,"Cannot set both map and adjust options"),Object.assign(this,i.defaults,s),o(this.type==="value"||this.ancestor===void 0,"Non-value references cannot reference ancestors"),Array.isArray(this.map)&&(this.map=new Map(this.map)),this.depth=this.path.length,this.key=this.path.length?this.path.join(this.separator):null,this.root=this.path[0],this.updateDisplay()}resolve(s,r,t,l,n={}){return o(!this.in||n.in,"Invalid in() reference usage"),this.type==="global"?this._resolve(t.context,r,n):this.type==="local"?this._resolve(l,r,n):this.ancestor?this.ancestor==="root"?this._resolve(r.ancestors[r.ancestors.length-1],r,n):(o(this.ancestor<=r.ancestors.length,"Invalid reference exceeds the schema root:",this.display),this._resolve(r.ancestors[this.ancestor-1],r,n)):this._resolve(s,r,n)}_resolve(s,r,t){let l;if(this.type==="value"&&r.mainstay.shadow&&t.shadow!==!1&&(l=r.mainstay.shadow.get(this.absolute(r))),l===void 0&&(l=h(s,this.path,{iterables:this.iterables,functions:!0})),this.adjust&&(l=this.adjust(l)),this.map){const n=this.map.get(l);n!==void 0&&(l=n)}return r.mainstay&&r.mainstay.tracer.resolve(r,this,l),l}toString(){return this.display}absolute(s){return[...s.path.slice(0,-this.ancestor),...this.path]}clone(){return new i.Ref(this)}describe(){const s={path:this.path};this.type!=="value"&&(s.type=this.type),this.separator!=="."&&(s.separator=this.separator),this.type==="value"&&this.ancestor!==1&&(s.ancestor=this.ancestor),this.map&&(s.map=[...this.map]);for(const r of["adjust","iterables","render"])this[r]!==null&&this[r]!==void 0&&(s[r]=this[r]);return this.in!==!1&&(s.in=!0),{ref:s}}updateDisplay(){const s=this.key!==null?this.key:"";if(this.type!=="value")return void(this.display=`ref:${this.type}:${s}`);if(!this.separator)return void(this.display=`ref:${s}`);if(!this.ancestor)return void(this.display=`ref:${this.separator}${s}`);if(this.ancestor==="root")return void(this.display=`ref:root:${s}`);if(this.ancestor===1)return void(this.display=`ref:${s||".."}`);const r=new Array(this.ancestor+1).fill(this.separator).join("");this.display=`ref:${r}${s||""}`}},i.Ref.prototype[c.symbols.ref]=!0,R.build=function(s){return(s=Object.assign({},i.defaults,s)).type==="value"&&s.ancestor===void 0&&(s.ancestor=1),new i.Ref(s)},i.context=function(s,r,t={}){if(s=s.trim(),t){const l=t.global===void 0?"$":t.global;if(l!==r&&s.startsWith(l))return{key:s.slice(l.length),type:"global"};const n=t.local===void 0?"#":t.local;if(n!==r&&s.startsWith(n))return{key:s.slice(n.length),type:"local"};const a=t.root===void 0?"/":t.root;if(a!==r&&s.startsWith(a))return{key:s.slice(a.length),type:"value",root:!0}}return{key:s,type:"value"}},i.ancestor=function(s,r){if(!r)return[1,0];if(s[0]!==r)return[1,0];if(s[1]!==r)return[0,1];let t=2;for(;s[t]===r;)++t;return[t-1,t]},R.toSibling=0,R.toParent=1,R.Manager=class{constructor(){this.refs=[]}register(s,r){if(s)if(r=r===void 0?R.toParent:r,Array.isArray(s))for(const t of s)this.register(t,r);else if(c.isSchema(s))for(const t of s._refs.refs)t.ancestor-r>=0&&this.refs.push({ancestor:t.ancestor-r,root:t.root});else R.isRef(s)&&s.type==="value"&&s.ancestor-r>=0&&this.refs.push({ancestor:s.ancestor-r,root:s.root}),e=e||y(3328),e.isTemplate(s)&&this.register(s.refs(),r)}get length(){return this.refs.length}clone(){const s=new R.Manager;return s.refs=d(this.refs),s}reset(){this.refs=[]}roots(){return this.refs.filter(s=>!s.ancestor).map(s=>s.root)}}},3378:(A,R,y)=>{const o=y(5107),d={};d.wrap=o.string().min(1).max(2).allow(!1),R.preferences=o.object({allowUnknown:o.boolean(),abortEarly:o.boolean(),artifacts:o.boolean(),cache:o.boolean(),context:o.object(),convert:o.boolean(),dateFormat:o.valid("date","iso","string","time","utc"),debug:o.boolean(),errors:{escapeHtml:o.boolean(),label:o.valid("path","key",!1),language:[o.string(),o.object().ref()],render:o.boolean(),stack:o.boolean(),wrap:{label:d.wrap,array:d.wrap,string:d.wrap}},externals:o.boolean(),messages:o.object(),noDefaults:o.boolean(),nonEnumerables:o.boolean(),presence:o.valid("required","optional","forbidden"),skipFunctions:o.boolean(),stripUnknown:o.object({arrays:o.boolean(),objects:o.boolean()}).or("arrays","objects").allow(!0,!1),warnings:o.boolean()}).strict(),d.nameRx=/^[a-zA-Z0-9]\w*$/,d.rule=o.object({alias:o.array().items(o.string().pattern(d.nameRx)).single(),args:o.array().items(o.string(),o.object({name:o.string().pattern(d.nameRx).required(),ref:o.boolean(),assert:o.alternatives([o.function(),o.object().schema()]).conditional("ref",{is:!0,then:o.required()}),normalize:o.function(),message:o.string().when("assert",{is:o.function(),then:o.required()})})),convert:o.boolean(),manifest:o.boolean(),method:o.function().allow(!1),multi:o.boolean(),validate:o.function()}),R.extension=o.object({type:o.alternatives([o.string(),o.object().regex()]).required(),args:o.function(),cast:o.object().pattern(d.nameRx,o.object({from:o.function().maxArity(1).required(),to:o.function().minArity(1).maxArity(2).required()})),base:o.object().schema().when("type",{is:o.object().regex(),then:o.forbidden()}),coerce:[o.function().maxArity(3),o.object({method:o.function().maxArity(3).required(),from:o.array().items(o.string()).single()})],flags:o.object().pattern(d.nameRx,o.object({setter:o.string(),default:o.any()})),manifest:{build:o.function().arity(2)},messages:[o.object(),o.string()],modifiers:o.object().pattern(d.nameRx,o.function().minArity(1).maxArity(2)),overrides:o.object().pattern(d.nameRx,o.function()),prepare:o.function().maxArity(3),rebuild:o.function().arity(1),rules:o.object().pattern(d.nameRx,d.rule),terms:o.object().pattern(d.nameRx,o.object({init:o.array().allow(null).required(),manifest:o.object().pattern(/.+/,[o.valid("schema","single"),o.object({mapped:o.object({from:o.string().required(),to:o.string().required()}).required()})])})),validate:o.function().maxArity(3)}).strict(),R.extensions=o.array().items(o.object(),o.function().arity(1)).strict(),d.desc={buffer:o.object({buffer:o.string()}),func:o.object({function:o.function().required(),options:{literal:!0}}),override:o.object({override:!0}),ref:o.object({ref:o.object({type:o.valid("value","global","local"),path:o.array().required(),separator:o.string().length(1).allow(!1),ancestor:o.number().min(0).integer().allow("root"),map:o.array().items(o.array().length(2)).min(1),adjust:o.function(),iterables:o.boolean(),in:o.boolean(),render:o.boolean()}).required()}),regex:o.object({regex:o.string().min(3)}),special:o.object({special:o.valid("deep").required()}),template:o.object({template:o.string().required(),options:o.object()}),value:o.object({value:o.alternatives([o.object(),o.array()]).required()})},d.desc.entity=o.alternatives([o.array().items(o.link("...")),o.boolean(),o.function(),o.number(),o.string(),d.desc.buffer,d.desc.func,d.desc.ref,d.desc.regex,d.desc.special,d.desc.template,d.desc.value,o.link("/")]),d.desc.values=o.array().items(null,o.boolean(),o.function(),o.number().allow(1/0,-1/0),o.string().allow(""),o.symbol(),d.desc.buffer,d.desc.func,d.desc.override,d.desc.ref,d.desc.regex,d.desc.template,d.desc.value),d.desc.messages=o.object().pattern(/.+/,[o.string(),d.desc.template,o.object().pattern(/.+/,[o.string(),d.desc.template])]),R.description=o.object({type:o.string().required(),flags:o.object({cast:o.string(),default:o.any(),description:o.string(),empty:o.link("/"),failover:d.desc.entity,id:o.string(),label:o.string(),only:!0,presence:["optional","required","forbidden"],result:["raw","strip"],strip:o.boolean(),unit:o.string()}).unknown(),preferences:{allowUnknown:o.boolean(),abortEarly:o.boolean(),artifacts:o.boolean(),cache:o.boolean(),convert:o.boolean(),dateFormat:["date","iso","string","time","utc"],errors:{escapeHtml:o.boolean(),label:["path","key"],language:[o.string(),d.desc.ref],wrap:{label:d.wrap,array:d.wrap}},externals:o.boolean(),messages:d.desc.messages,noDefaults:o.boolean(),nonEnumerables:o.boolean(),presence:["required","optional","forbidden"],skipFunctions:o.boolean(),stripUnknown:o.object({arrays:o.boolean(),objects:o.boolean()}).or("arrays","objects").allow(!0,!1),warnings:o.boolean()},allow:d.desc.values,invalid:d.desc.values,rules:o.array().min(1).items({name:o.string().required(),args:o.object().min(1),keep:o.boolean(),message:[o.string(),d.desc.messages],warn:o.boolean()}),keys:o.object().pattern(/.*/,o.link("/")),link:d.desc.ref}).pattern(/^[a-z]\w*$/,o.any())},493:(A,R,y)=>{const o=y(8571),d=y(9621),h=y(8160),c={value:Symbol("value")};A.exports=c.State=class{constructor(e,i,s){this.path=e,this.ancestors=i,this.mainstay=s.mainstay,this.schemas=s.schemas,this.debug=null}localize(e,i=null,s=null){const r=new c.State(e,i,this);return s&&r.schemas&&(r.schemas=[c.schemas(s),...r.schemas]),r}nest(e,i){const s=new c.State(this.path,this.ancestors,this);return s.schemas=s.schemas&&[c.schemas(e),...s.schemas],s.debug=i,s}shadow(e,i){this.mainstay.shadow=this.mainstay.shadow||new c.Shadow,this.mainstay.shadow.set(this.path,e,i)}snapshot(){this.mainstay.shadow&&(this._snapshot=o(this.mainstay.shadow.node(this.path))),this.mainstay.snapshot()}restore(){this.mainstay.shadow&&(this.mainstay.shadow.override(this.path,this._snapshot),this._snapshot=void 0),this.mainstay.restore()}commit(){this.mainstay.shadow&&(this.mainstay.shadow.override(this.path,this._snapshot),this._snapshot=void 0),this.mainstay.commit()}},c.schemas=function(e){return h.isSchema(e)?{schema:e}:e},c.Shadow=class{constructor(){this._values=null}set(e,i,s){if(!e.length||s==="strip"&&typeof e[e.length-1]=="number")return;this._values=this._values||new Map;let r=this._values;for(let t=0;t<e.length;++t){const l=e[t];let n=r.get(l);n||(n=new Map,r.set(l,n)),r=n}r[c.value]=i}get(e){const i=this.node(e);if(i)return i[c.value]}node(e){if(this._values)return d(this._values,e,{iterables:!0})}override(e,i){if(!this._values)return;const s=e.slice(0,-1),r=e[e.length-1],t=d(this._values,s,{iterables:!0});i?t.set(r,i):t&&t.delete(r)}}},3328:(A,R,y)=>{const o=y(375),d=y(8571),h=y(5277),c=y(1447),e=y(8160),i=y(6354),s=y(6133),r={symbol:Symbol("template"),opens:new Array(1e3).join("\0"),closes:new Array(1e3).join(""),dateFormat:{date:Date.prototype.toDateString,iso:Date.prototype.toISOString,string:Date.prototype.toString,time:Date.prototype.toTimeString,utc:Date.prototype.toUTCString}};A.exports=r.Template=class{constructor(t,l){if(o(typeof t=="string","Template source must be a string"),o(!t.includes("\0")&&!t.includes(""),"Template source cannot contain reserved control characters"),this.source=t,this.rendered=t,this._template=null,l){const{functions:n,...a}=l;this._settings=Object.keys(a).length?d(a):void 0,this._functions=n,this._functions&&(o(Object.keys(this._functions).every(f=>typeof f=="string"),"Functions keys must be strings"),o(Object.values(this._functions).every(f=>typeof f=="function"),"Functions values must be functions"))}else this._settings=void 0,this._functions=void 0;this._parse()}_parse(){if(!this.source.includes("{"))return;const t=r.encode(this.source),l=r.split(t);let n=!1;const a=[],f=l.shift();f&&a.push(f);for(const m of l){const g=m[0]!=="{",S=g?"}":"}}",E=m.indexOf(S);if(E===-1||m[1]==="{"){a.push(`{${r.decode(m)}`);continue}let u=m.slice(g?0:1,E);const p=u[0]===":";p&&(u=u.slice(1));const v=this._ref(r.decode(u),{raw:g,wrapped:p});a.push(v),typeof v!="string"&&(n=!0);const O=m.slice(E+S.length);O&&a.push(r.decode(O))}n?this._template=a:this.rendered=a.join("")}static date(t,l){return r.dateFormat[l.dateFormat].call(t)}describe(t={}){if(!this._settings&&t.compact)return this.source;const l={template:this.source};return this._settings&&(l.options=this._settings),this._functions&&(l.functions=this._functions),l}static build(t){return new r.Template(t.template,t.options||t.functions?{...t.options,functions:t.functions}:void 0)}isDynamic(){return!!this._template}static isTemplate(t){return!!t&&!!t[e.symbols.template]}refs(){if(!this._template)return;const t=[];for(const l of this._template)typeof l!="string"&&t.push(...l.refs);return t}resolve(t,l,n,a){return this._template&&this._template.length===1?this._part(this._template[0],t,l,n,a,{}):this.render(t,l,n,a)}_part(t,...l){return t.ref?t.ref.resolve(...l):t.formula.evaluate(l)}render(t,l,n,a,f={}){if(!this.isDynamic())return this.rendered;const m=[];for(const g of this._template)if(typeof g=="string")m.push(g);else{const S=this._part(g,t,l,n,a,f),E=r.stringify(S,t,l,n,a,f);if(E!==void 0){const u=g.raw||(f.errors&&f.errors.escapeHtml)===!1?E:h(E);m.push(r.wrap(u,g.wrapped&&n.errors.wrap.label))}}return m.join("")}_ref(t,{raw:l,wrapped:n}){const a=[],f=g=>{const S=s.create(g,this._settings);return a.push(S),E=>{const u=S.resolve(...E);return u!==void 0?u:null}};try{const g=this._functions?{...r.functions,...this._functions}:r.functions;var m=new c.Parser(t,{reference:f,functions:g,constants:r.constants})}catch(g){throw g.message=`Invalid template variable "${t}" fails due to: ${g.message}`,g}if(m.single){if(m.single.type==="reference"){const g=a[0];return{ref:g,raw:l,refs:a,wrapped:n||g.type==="local"&&g.key==="label"}}return r.stringify(m.single.value)}return{formula:m,raw:l,refs:a}}toString(){return this.source}},r.Template.prototype[e.symbols.template]=!0,r.Template.prototype.isImmutable=!0,r.encode=function(t){return t.replace(/\\(\{+)/g,(l,n)=>r.opens.slice(0,n.length)).replace(/\\(\}+)/g,(l,n)=>r.closes.slice(0,n.length))},r.decode=function(t){return t.replace(/\u0000/g,"{").replace(/\u0001/g,"}")},r.split=function(t){const l=[];let n="";for(let a=0;a<t.length;++a){const f=t[a];if(f==="{"){let m="";for(;a+1<t.length&&t[a+1]==="{";)m+="{",++a;l.push(n),n=m}else n+=f}return l.push(n),l},r.wrap=function(t,l){return l?l.length===1?`${l}${t}${l}`:`${l[0]}${t}${l[1]}`:t},r.stringify=function(t,l,n,a,f,m={}){const g=typeof t,S=a&&a.errors&&a.errors.wrap||{};let E=!1;if(s.isRef(t)&&t.render&&(E=t.in,t=t.resolve(l,n,a,f,{in:t.in,...m})),t===null)return"null";if(g==="string")return r.wrap(t,m.arrayItems&&S.string);if(g==="number"||g==="function"||g==="symbol")return t.toString();if(g!=="object")return JSON.stringify(t);if(t instanceof Date)return r.Template.date(t,a);if(t instanceof Map){const p=[];for(const[v,O]of t.entries())p.push(`${v.toString()} -> ${O.toString()}`);t=p}if(!Array.isArray(t))return t.toString();const u=[];for(const p of t)u.push(r.stringify(p,l,n,a,f,{arrayItems:!0,...m}));return r.wrap(u.join(", "),!E&&S.array)},r.constants={true:!0,false:!1,null:null,second:1e3,minute:6e4,hour:36e5,day:864e5},r.functions={if:(t,l,n)=>t?l:n,length:t=>typeof t=="string"?t.length:t&&typeof t=="object"?Array.isArray(t)?t.length:Object.keys(t).length:null,msg(t){const[l,n,a,f,m]=this,g=m.messages;if(!g)return"";const S=i.template(l,g[0],t,n,a)||i.template(l,g[1],t,n,a);return S?S.render(l,n,a,f,m):""},number:t=>typeof t=="number"?t:typeof t=="string"?parseFloat(t):typeof t=="boolean"?t?1:0:t instanceof Date?t.getTime():null}},4946:(A,R,y)=>{const o=y(375),d=y(1687),h=y(8068),c=y(8160),e=y(3292),i=y(6354),s=y(6133),r={};A.exports=h.extend({type:"alternatives",flags:{match:{default:"any"}},terms:{matches:{init:[],register:s.toSibling}},args:(t,...l)=>l.length===1&&Array.isArray(l[0])?t.try(...l[0]):t.try(...l),validate(t,l){const{schema:n,error:a,state:f,prefs:m}=l;if(n._flags.match){const S=[],E=[];for(let p=0;p<n.$_terms.matches.length;++p){const v=n.$_terms.matches[p],O=f.nest(v.schema,`match.${p}`);O.snapshot();const L=v.schema.$_validate(t,O,m);L.errors?(E.push(L.errors),O.restore()):(S.push(L.value),O.commit())}if(S.length===0)return{errors:a("alternatives.any",{details:E.map(p=>i.details(p,{override:!1}))})};if(n._flags.match==="one")return S.length===1?{value:S[0]}:{errors:a("alternatives.one")};if(S.length!==n.$_terms.matches.length)return{errors:a("alternatives.all",{details:E.map(p=>i.details(p,{override:!1}))})};const u=p=>p.$_terms.matches.some(v=>v.schema.type==="object"||v.schema.type==="alternatives"&&u(v.schema));return u(n)?{value:S.reduce((p,v)=>d(p,v,{mergeArrays:!1}))}:{value:S[S.length-1]}}const g=[];for(let S=0;S<n.$_terms.matches.length;++S){const E=n.$_terms.matches[S];if(E.schema){const v=f.nest(E.schema,`match.${S}`);v.snapshot();const O=E.schema.$_validate(t,v,m);if(!O.errors)return v.commit(),O;v.restore(),g.push({schema:E.schema,reports:O.errors});continue}const u=E.ref?E.ref.resolve(t,f,m):t,p=E.is?[E]:E.switch;for(let v=0;v<p.length;++v){const O=p[v],{is:L,then:N,otherwise:D}=O,q=`match.${S}${E.switch?"."+v:""}`;if(L.$_match(u,f.nest(L,`${q}.is`),m)){if(N)return N.$_validate(t,f.nest(N,`${q}.then`),m)}else if(D)return D.$_validate(t,f.nest(D,`${q}.otherwise`),m)}}return r.errors(g,l)},rules:{conditional:{method(t,l){o(!this._flags._endedSwitch,"Unreachable condition"),o(!this._flags.match,"Cannot combine match mode",this._flags.match,"with conditional rule"),o(l.break===void 0,"Cannot use break option with alternatives conditional");const n=this.clone(),a=e.when(n,t,l),f=a.is?[a]:a.switch;for(const m of f)if(m.then&&m.otherwise){n.$_setFlag("_endedSwitch",!0,{clone:!1});break}return n.$_terms.matches.push(a),n.$_mutateRebuild()}},match:{method(t){if(o(["any","one","all"].includes(t),"Invalid alternatives match mode",t),t!=="any")for(const l of this.$_terms.matches)o(l.schema,"Cannot combine match mode",t,"with conditional rules");return this.$_setFlag("match",t)}},try:{method(...t){o(t.length,"Missing alternative schemas"),c.verifyFlat(t,"try"),o(!this._flags._endedSwitch,"Unreachable condition");const l=this.clone();for(const n of t)l.$_terms.matches.push({schema:l.$_compile(n)});return l.$_mutateRebuild()}}},overrides:{label(t){return this.$_parent("label",t).$_modify({each:(l,n)=>n.path[0]!=="is"&&typeof l._flags.label!="string"?l.label(t):void 0,ref:!1})}},rebuild(t){t.$_modify({each:l=>{c.isSchema(l)&&l.type==="array"&&t.$_setFlag("_arrayItems",!0,{clone:!1})}})},manifest:{build(t,l){if(l.matches)for(const n of l.matches){const{schema:a,ref:f,is:m,not:g,then:S,otherwise:E}=n;t=a?t.try(a):f?t.conditional(f,{is:m,then:S,not:g,otherwise:E,switch:n.switch}):t.conditional(m,{then:S,otherwise:E})}return t}},messages:{"alternatives.all":"{{#label}} does not match all of the required types","alternatives.any":"{{#label}} does not match any of the allowed types","alternatives.match":"{{#label}} does not match any of the allowed types","alternatives.one":"{{#label}} matches more than one allowed type","alternatives.types":"{{#label}} must be one of {{#types}}"}}),r.errors=function(t,{error:l,state:n}){if(!t.length)return{errors:l("alternatives.any")};if(t.length===1)return{errors:t[0].reports};const a=new Set,f=[];for(const{reports:m,schema:g}of t){if(m.length>1)return r.unmatched(t,l);const S=m[0];if(S instanceof i.Report==0)return r.unmatched(t,l);if(S.state.path.length!==n.path.length){f.push({type:g.type,report:S});continue}if(S.code==="any.only"){for(const p of S.local.valids)a.add(p);continue}const[E,u]=S.code.split(".");u==="base"?a.add(E):f.push({type:g.type,report:S})}return f.length?f.length===1?{errors:f[0].report}:r.unmatched(t,l):{errors:l("alternatives.types",{types:[...a]})}},r.unmatched=function(t,l){const n=[];for(const a of t)n.push(...a.reports);return{errors:l("alternatives.match",i.details(n,{override:!1}))}}},8068:(A,R,y)=>{const o=y(375),d=y(7629),h=y(8160),c=y(6914);A.exports=d.extend({type:"any",flags:{only:{default:!1}},terms:{alterations:{init:null},examples:{init:null},externals:{init:null},metas:{init:[]},notes:{init:[]},shared:{init:null},tags:{init:[]},whens:{init:null}},rules:{custom:{method(e,i){return o(typeof e=="function","Method must be a function"),o(i===void 0||i&&typeof i=="string","Description must be a non-empty string"),this.$_addRule({name:"custom",args:{method:e,description:i}})},validate(e,i,{method:s}){try{return s(e,i)}catch(r){return i.error("any.custom",{error:r})}},args:["method","description"],multi:!0},messages:{method(e){return this.prefs({messages:e})}},shared:{method(e){o(h.isSchema(e)&&e._flags.id,"Schema must be a schema with an id");const i=this.clone();return i.$_terms.shared=i.$_terms.shared||[],i.$_terms.shared.push(e),i.$_mutateRegister(e),i}},warning:{method(e,i){return o(e&&typeof e=="string","Invalid warning code"),this.$_addRule({name:"warning",args:{code:e,local:i},warn:!0})},validate:(e,i,{code:s,local:r})=>i.error(s,r),args:["code","local"],multi:!0}},modifiers:{keep(e,i=!0){e.keep=i},message(e,i){e.message=c.compile(i)},warn(e,i=!0){e.warn=i}},manifest:{build(e,i){for(const s in i){const r=i[s];if(["examples","externals","metas","notes","tags"].includes(s))for(const t of r)e=e[s.slice(0,-1)](t);else if(s!=="alterations")if(s!=="whens"){if(s==="shared")for(const t of r)e=e.shared(t)}else for(const t of r){const{ref:l,is:n,not:a,then:f,otherwise:m,concat:g}=t;e=g?e.concat(g):l?e.when(l,{is:n,not:a,then:f,otherwise:m,switch:t.switch,break:t.break}):e.when(n,{then:f,otherwise:m,break:t.break})}else{const t={};for(const{target:l,adjuster:n}of r)t[l]=n;e=e.alter(t)}}return e}},messages:{"any.custom":"{{#label}} failed custom validation because {{#error.message}}","any.default":"{{#label}} threw an error when running default method","any.failover":"{{#label}} threw an error when running failover method","any.invalid":"{{#label}} contains an invalid value","any.only":'{{#label}} must be {if(#valids.length == 1, "", "one of ")}{{#valids}}',"any.ref":"{{#label}} {{#arg}} references {{:#ref}} which {{#reason}}","any.required":"{{#label}} is required","any.unknown":"{{#label}} is not allowed"}})},546:(A,R,y)=>{const o=y(375),d=y(9474),h=y(9621),c=y(8068),e=y(8160),i=y(3292),s={};A.exports=c.extend({type:"array",flags:{single:{default:!1},sparse:{default:!1}},terms:{items:{init:[],manifest:"schema"},ordered:{init:[],manifest:"schema"},_exclusions:{init:[]},_inclusions:{init:[]},_requireds:{init:[]}},coerce:{from:"object",method(r,{schema:t,state:l,prefs:n}){if(!Array.isArray(r))return;const a=t.$_getRule("sort");return a?s.sort(t,r,a.args.options,l,n):void 0}},validate(r,{schema:t,error:l}){if(!Array.isArray(r)){if(t._flags.single){const n=[r];return n[e.symbols.arraySingle]=!0,{value:n}}return{errors:l("array.base")}}if(t.$_getRule("items")||t.$_terms.externals)return{value:r.slice()}},rules:{has:{method(r){r=this.$_compile(r,{appendPath:!0});const t=this.$_addRule({name:"has",args:{schema:r}});return t.$_mutateRegister(r),t},validate(r,{state:t,prefs:l,error:n},{schema:a}){const f=[r,...t.ancestors];for(let g=0;g<r.length;++g){const S=t.localize([...t.path,g],f,a);if(a.$_match(r[g],S,l))return r}const m=a._flags.label;return m?n("array.hasKnown",{patternLabel:m}):n("array.hasUnknown",null)},multi:!0},items:{method(...r){e.verifyFlat(r,"items");const t=this.$_addRule("items");for(let l=0;l<r.length;++l){const n=e.tryWithPath(()=>this.$_compile(r[l]),l,{append:!0});t.$_terms.items.push(n)}return t.$_mutateRebuild()},validate(r,{schema:t,error:l,state:n,prefs:a,errorsArray:f}){const m=t.$_terms._requireds.slice(),g=t.$_terms.ordered.slice(),S=[...t.$_terms._inclusions,...m],E=!r[e.symbols.arraySingle];delete r[e.symbols.arraySingle];const u=f();let p=r.length;for(let v=0;v<p;++v){const O=r[v];let L=!1,N=!1;const D=E?v:new Number(v),q=[...n.path,D];if(!t._flags.sparse&&O===void 0){if(u.push(l("array.sparse",{key:D,path:q,pos:v,value:void 0},n.localize(q))),a.abortEarly)return u;g.shift();continue}const z=[r,...n.ancestors];for(const W of t.$_terms._exclusions)if(W.$_match(O,n.localize(q,z,W),a,{presence:"ignore"})){if(u.push(l("array.excludes",{pos:v,value:O},n.localize(q))),a.abortEarly)return u;L=!0,g.shift();break}if(L)continue;if(t.$_terms.ordered.length){if(g.length){const W=g.shift(),G=W.$_validate(O,n.localize(q,z,W),a);if(G.errors){if(u.push(...G.errors),a.abortEarly)return u}else if(W._flags.result==="strip")s.fastSplice(r,v),--v,--p;else{if(!t._flags.sparse&&G.value===void 0){if(u.push(l("array.sparse",{key:D,path:q,pos:v,value:void 0},n.localize(q))),a.abortEarly)return u;continue}r[v]=G.value}continue}if(!t.$_terms.items.length){if(u.push(l("array.orderedLength",{pos:v,limit:t.$_terms.ordered.length})),a.abortEarly)return u;break}}const U=[];let X=m.length;for(let W=0;W<X;++W){const G=n.localize(q,z,m[W]);G.snapshot();const J=m[W].$_validate(O,G,a);if(U[W]=J,!J.errors){if(G.commit(),r[v]=J.value,N=!0,s.fastSplice(m,W),--W,--X,!t._flags.sparse&&J.value===void 0&&(u.push(l("array.sparse",{key:D,path:q,pos:v,value:void 0},n.localize(q))),a.abortEarly))return u;break}G.restore()}if(N)continue;const te=a.stripUnknown&&!!a.stripUnknown.arrays||!1;X=S.length;for(const W of S){let G;const J=m.indexOf(W);if(J!==-1)G=U[J];else{const Q=n.localize(q,z,W);if(Q.snapshot(),G=W.$_validate(O,Q,a),!G.errors){Q.commit(),W._flags.result==="strip"?(s.fastSplice(r,v),--v,--p):t._flags.sparse||G.value!==void 0?r[v]=G.value:(u.push(l("array.sparse",{key:D,path:q,pos:v,value:void 0},n.localize(q))),L=!0),N=!0;break}Q.restore()}if(X===1){if(te){s.fastSplice(r,v),--v,--p,N=!0;break}if(u.push(...G.errors),a.abortEarly)return u;L=!0;break}}if(!L&&(t.$_terms._inclusions.length||t.$_terms._requireds.length)&&!N){if(te){s.fastSplice(r,v),--v,--p;continue}if(u.push(l("array.includes",{pos:v,value:O},n.localize(q))),a.abortEarly)return u}}return m.length&&s.fillMissedErrors(t,u,m,r,n,a),g.length&&(s.fillOrderedErrors(t,u,g,r,n,a),u.length||s.fillDefault(g,r,n,a)),u.length?u:r},priority:!0,manifest:!1},length:{method(r){return this.$_addRule({name:"length",args:{limit:r},operator:"="})},validate:(r,t,{limit:l},{name:n,operator:a,args:f})=>e.compare(r.length,l,a)?r:t.error("array."+n,{limit:f.limit,value:r}),args:[{name:"limit",ref:!0,assert:e.limit,message:"must be a positive integer"}]},max:{method(r){return this.$_addRule({name:"max",method:"length",args:{limit:r},operator:"<="})}},min:{method(r){return this.$_addRule({name:"min",method:"length",args:{limit:r},operator:">="})}},ordered:{method(...r){e.verifyFlat(r,"ordered");const t=this.$_addRule("items");for(let l=0;l<r.length;++l){const n=e.tryWithPath(()=>this.$_compile(r[l]),l,{append:!0});s.validateSingle(n,t),t.$_mutateRegister(n),t.$_terms.ordered.push(n)}return t.$_mutateRebuild()}},single:{method(r){const t=r===void 0||!!r;return o(!t||!this._flags._arrayItems,"Cannot specify single rule when array has array items"),this.$_setFlag("single",t)}},sort:{method(r={}){e.assertOptions(r,["by","order"]);const t={order:r.order||"ascending"};return r.by&&(t.by=i.ref(r.by,{ancestor:0}),o(!t.by.ancestor,"Cannot sort by ancestor")),this.$_addRule({name:"sort",args:{options:t}})},validate(r,{error:t,state:l,prefs:n,schema:a},{options:f}){const{value:m,errors:g}=s.sort(a,r,f,l,n);if(g)return g;for(let S=0;S<r.length;++S)if(r[S]!==m[S])return t("array.sort",{order:f.order,by:f.by?f.by.key:"value"});return r},convert:!0},sparse:{method(r){const t=r===void 0||!!r;return this._flags.sparse===t?this:(t?this.clone():this.$_addRule("items")).$_setFlag("sparse",t,{clone:!1})}},unique:{method(r,t={}){o(!r||typeof r=="function"||typeof r=="string","comparator must be a function or a string"),e.assertOptions(t,["ignoreUndefined","separator"]);const l={name:"unique",args:{options:t,comparator:r}};if(r)if(typeof r=="string"){const n=e.default(t.separator,".");l.path=n?r.split(n):[r]}else l.comparator=r;return this.$_addRule(l)},validate(r,{state:t,error:l,schema:n},{comparator:a,options:f},{comparator:m,path:g}){const S={string:Object.create(null),number:Object.create(null),undefined:Object.create(null),boolean:Object.create(null),object:new Map,function:new Map,custom:new Map},E=m||d,u=f.ignoreUndefined;for(let p=0;p<r.length;++p){const v=g?h(r[p],g):r[p],O=m?S.custom:S[typeof v];if(o(O,"Failed to find unique map container for type",typeof v),O instanceof Map){const L=O.entries();let N;for(;!(N=L.next()).done;)if(E(N.value[0],v)){const D=t.localize([...t.path,p],[r,...t.ancestors]),q={pos:p,value:r[p],dupePos:N.value[1],dupeValue:r[N.value[1]]};return g&&(q.path=a),l("array.unique",q,D)}O.set(v,p)}else{if((!u||v!==void 0)&&O[v]!==void 0){const L={pos:p,value:r[p],dupePos:O[v],dupeValue:r[O[v]]};return g&&(L.path=a),l("array.unique",L,t.localize([...t.path,p],[r,...t.ancestors]))}O[v]=p}}return r},args:["comparator","options"],multi:!0}},cast:{set:{from:Array.isArray,to:(r,t)=>new Set(r)}},rebuild(r){r.$_terms._inclusions=[],r.$_terms._exclusions=[],r.$_terms._requireds=[];for(const t of r.$_terms.items)s.validateSingle(t,r),t._flags.presence==="required"?r.$_terms._requireds.push(t):t._flags.presence==="forbidden"?r.$_terms._exclusions.push(t):r.$_terms._inclusions.push(t);for(const t of r.$_terms.ordered)s.validateSingle(t,r)},manifest:{build:(r,t)=>(t.items&&(r=r.items(...t.items)),t.ordered&&(r=r.ordered(...t.ordered)),r)},messages:{"array.base":"{{#label}} must be an array","array.excludes":"{{#label}} contains an excluded value","array.hasKnown":"{{#label}} does not contain at least one required match for type {:#patternLabel}","array.hasUnknown":"{{#label}} does not contain at least one required match","array.includes":"{{#label}} does not match any of the allowed types","array.includesRequiredBoth":"{{#label}} does not contain {{#knownMisses}} and {{#unknownMisses}} other required value(s)","array.includesRequiredKnowns":"{{#label}} does not contain {{#knownMisses}}","array.includesRequiredUnknowns":"{{#label}} does not contain {{#unknownMisses}} required value(s)","array.length":"{{#label}} must contain {{#limit}} items","array.max":"{{#label}} must contain less than or equal to {{#limit}} items","array.min":"{{#label}} must contain at least {{#limit}} items","array.orderedLength":"{{#label}} must contain at most {{#limit}} items","array.sort":"{{#label}} must be sorted in {#order} order by {{#by}}","array.sort.mismatching":"{{#label}} cannot be sorted due to mismatching types","array.sort.unsupported":"{{#label}} cannot be sorted due to unsupported type {#type}","array.sparse":"{{#label}} must not be a sparse array item","array.unique":"{{#label}} contains a duplicate value"}}),s.fillMissedErrors=function(r,t,l,n,a,f){const m=[];let g=0;for(const S of l){const E=S._flags.label;E?m.push(E):++g}m.length?g?t.push(r.$_createError("array.includesRequiredBoth",n,{knownMisses:m,unknownMisses:g},a,f)):t.push(r.$_createError("array.includesRequiredKnowns",n,{knownMisses:m},a,f)):t.push(r.$_createError("array.includesRequiredUnknowns",n,{unknownMisses:g},a,f))},s.fillOrderedErrors=function(r,t,l,n,a,f){const m=[];for(const g of l)g._flags.presence==="required"&&m.push(g);m.length&&s.fillMissedErrors(r,t,m,n,a,f)},s.fillDefault=function(r,t,l,n){const a=[];let f=!0;for(let m=r.length-1;m>=0;--m){const g=r[m],S=[t,...l.ancestors],E=g.$_validate(void 0,l.localize(l.path,S,g),n).value;if(f){if(E===void 0)continue;f=!1}a.unshift(E)}a.length&&t.push(...a)},s.fastSplice=function(r,t){let l=t;for(;l<r.length;)r[l++]=r[l];--r.length},s.validateSingle=function(r,t){(r.type==="array"||r._flags._arrayItems)&&(o(!t._flags.single,"Cannot specify array item with single rule enabled"),t.$_setFlag("_arrayItems",!0,{clone:!1}))},s.sort=function(r,t,l,n,a){const f=l.order==="ascending"?1:-1,m=-1*f,g=f,S=(E,u)=>{let p=s.compare(E,u,m,g);if(p!==null||(l.by&&(E=l.by.resolve(E,n,a),u=l.by.resolve(u,n,a)),p=s.compare(E,u,m,g),p!==null))return p;const v=typeof E;if(v!==typeof u)throw r.$_createError("array.sort.mismatching",t,null,n,a);if(v!=="number"&&v!=="string")throw r.$_createError("array.sort.unsupported",t,{type:v},n,a);return v==="number"?(E-u)*f:E<u?m:g};try{return{value:t.slice().sort(S)}}catch(E){return{errors:E}}},s.compare=function(r,t,l,n){return r===t?0:r===void 0?1:t===void 0?-1:r===null?n:t===null?l:null}},4937:(A,R,y)=>{const o=y(375),d=y(8068),h=y(8160),c=y(2036),e={isBool:function(i){return typeof i=="boolean"}};A.exports=d.extend({type:"boolean",flags:{sensitive:{default:!1}},terms:{falsy:{init:null,manifest:"values"},truthy:{init:null,manifest:"values"}},coerce(i,{schema:s}){if(typeof i!="boolean"){if(typeof i=="string"){const r=s._flags.sensitive?i:i.toLowerCase();i=r==="true"||r!=="false"&&i}return typeof i!="boolean"&&(i=s.$_terms.truthy&&s.$_terms.truthy.has(i,null,null,!s._flags.sensitive)||(!s.$_terms.falsy||!s.$_terms.falsy.has(i,null,null,!s._flags.sensitive))&&i),{value:i}}},validate(i,{error:s}){if(typeof i!="boolean")return{value:i,errors:s("boolean.base")}},rules:{truthy:{method(...i){h.verifyFlat(i,"truthy");const s=this.clone();s.$_terms.truthy=s.$_terms.truthy||new c;for(let r=0;r<i.length;++r){const t=i[r];o(t!==void 0,"Cannot call truthy with undefined"),s.$_terms.truthy.add(t)}return s}},falsy:{method(...i){h.verifyFlat(i,"falsy");const s=this.clone();s.$_terms.falsy=s.$_terms.falsy||new c;for(let r=0;r<i.length;++r){const t=i[r];o(t!==void 0,"Cannot call falsy with undefined"),s.$_terms.falsy.add(t)}return s}},sensitive:{method(i=!0){return this.$_setFlag("sensitive",i)}}},cast:{number:{from:e.isBool,to:(i,s)=>i?1:0},string:{from:e.isBool,to:(i,s)=>i?"true":"false"}},manifest:{build:(i,s)=>(s.truthy&&(i=i.truthy(...s.truthy)),s.falsy&&(i=i.falsy(...s.falsy)),i)},messages:{"boolean.base":"{{#label}} must be a boolean"}})},7500:(A,R,y)=>{const o=y(375),d=y(8068),h=y(8160),c=y(3328),e={isDate:function(i){return i instanceof Date}};A.exports=d.extend({type:"date",coerce:{from:["number","string"],method:(i,{schema:s})=>({value:e.parse(i,s._flags.format)||i})},validate(i,{schema:s,error:r,prefs:t}){if(i instanceof Date&&!isNaN(i.getTime()))return;const l=s._flags.format;return t.convert&&l&&typeof i=="string"?{value:i,errors:r("date.format",{format:l})}:{value:i,errors:r("date.base")}},rules:{compare:{method:!1,validate(i,s,{date:r},{name:t,operator:l,args:n}){const a=r==="now"?Date.now():r.getTime();return h.compare(i.getTime(),a,l)?i:s.error("date."+t,{limit:n.date,value:i})},args:[{name:"date",ref:!0,normalize:i=>i==="now"?i:e.parse(i),assert:i=>i!==null,message:"must have a valid date format"}]},format:{method(i){return o(["iso","javascript","unix"].includes(i),"Unknown date format",i),this.$_setFlag("format",i)}},greater:{method(i){return this.$_addRule({name:"greater",method:"compare",args:{date:i},operator:">"})}},iso:{method(){return this.format("iso")}},less:{method(i){return this.$_addRule({name:"less",method:"compare",args:{date:i},operator:"<"})}},max:{method(i){return this.$_addRule({name:"max",method:"compare",args:{date:i},operator:"<="})}},min:{method(i){return this.$_addRule({name:"min",method:"compare",args:{date:i},operator:">="})}},timestamp:{method(i="javascript"){return o(["javascript","unix"].includes(i),'"type" must be one of "javascript, unix"'),this.format(i)}}},cast:{number:{from:e.isDate,to:(i,s)=>i.getTime()},string:{from:e.isDate,to:(i,{prefs:s})=>c.date(i,s)}},messages:{"date.base":"{{#label}} must be a valid date","date.format":'{{#label}} must be in {msg("date.format." + #format) || #format} format',"date.greater":"{{#label}} must be greater than {{:#limit}}","date.less":"{{#label}} must be less than {{:#limit}}","date.max":"{{#label}} must be less than or equal to {{:#limit}}","date.min":"{{#label}} must be greater than or equal to {{:#limit}}","date.format.iso":"ISO 8601 date","date.format.javascript":"timestamp or number of milliseconds","date.format.unix":"timestamp or number of seconds"}}),e.parse=function(i,s){if(i instanceof Date)return i;if(typeof i!="string"&&(isNaN(i)||!isFinite(i))||/^\s*$/.test(i))return null;if(s==="iso")return h.isIsoDate(i)?e.date(i.toString()):null;const r=i;if(typeof i=="string"&&/^[+-]?\d+(\.\d+)?$/.test(i)&&(i=parseFloat(i)),s){if(s==="javascript")return e.date(1*i);if(s==="unix")return e.date(1e3*i);if(typeof r=="string")return null}return e.date(i)},e.date=function(i){const s=new Date(i);return isNaN(s.getTime())?null:s}},390:(A,R,y)=>{const o=y(375),d=y(7824);A.exports=d.extend({type:"function",properties:{typeof:"function"},rules:{arity:{method(h){return o(Number.isSafeInteger(h)&&h>=0,"n must be a positive integer"),this.$_addRule({name:"arity",args:{n:h}})},validate:(h,c,{n:e})=>h.length===e?h:c.error("function.arity",{n:e})},class:{method(){return this.$_addRule("class")},validate:(h,c)=>/^\s*class\s/.test(h.toString())?h:c.error("function.class",{value:h})},minArity:{method(h){return o(Number.isSafeInteger(h)&&h>0,"n must be a strict positive integer"),this.$_addRule({name:"minArity",args:{n:h}})},validate:(h,c,{n:e})=>h.length>=e?h:c.error("function.minArity",{n:e})},maxArity:{method(h){return o(Number.isSafeInteger(h)&&h>=0,"n must be a positive integer"),this.$_addRule({name:"maxArity",args:{n:h}})},validate:(h,c,{n:e})=>h.length<=e?h:c.error("function.maxArity",{n:e})}},messages:{"function.arity":"{{#label}} must have an arity of {{#n}}","function.class":"{{#label}} must be a class","function.maxArity":"{{#label}} must have an arity lesser or equal to {{#n}}","function.minArity":"{{#label}} must have an arity greater or equal to {{#n}}"}})},7824:(A,R,y)=>{const o=y(978),d=y(375),h=y(8571),c=y(3652),e=y(8068),i=y(8160),s=y(3292),r=y(6354),t=y(6133),l=y(3328),n={renameDefaults:{alias:!1,multiple:!1,override:!1}};A.exports=e.extend({type:"_keys",properties:{typeof:"object"},flags:{unknown:{default:!1}},terms:{dependencies:{init:null},keys:{init:null,manifest:{mapped:{from:"schema",to:"key"}}},patterns:{init:null},renames:{init:null}},args:(a,f)=>a.keys(f),validate(a,{schema:f,error:m,state:g,prefs:S}){if(!a||typeof a!==f.$_property("typeof")||Array.isArray(a))return{value:a,errors:m("object.base",{type:f.$_property("typeof")})};if(!(f.$_terms.renames||f.$_terms.dependencies||f.$_terms.keys||f.$_terms.patterns||f.$_terms.externals))return;a=n.clone(a,S);const E=[];if(f.$_terms.renames&&!n.rename(f,a,g,S,E))return{value:a,errors:E};if(!f.$_terms.keys&&!f.$_terms.patterns&&!f.$_terms.dependencies)return{value:a,errors:E};const u=new Set(Object.keys(a));if(f.$_terms.keys){const p=[a,...g.ancestors];for(const v of f.$_terms.keys){const O=v.key,L=a[O];u.delete(O);const N=g.localize([...g.path,O],p,v),D=v.schema.$_validate(L,N,S);if(D.errors){if(S.abortEarly)return{value:a,errors:D.errors};D.value!==void 0&&(a[O]=D.value),E.push(...D.errors)}else v.schema._flags.result==="strip"||D.value===void 0&&L!==void 0?delete a[O]:D.value!==void 0&&(a[O]=D.value)}}if(u.size||f._flags._hasPatternMatch){const p=n.unknown(f,a,u,E,g,S);if(p)return p}if(f.$_terms.dependencies)for(const p of f.$_terms.dependencies){if(p.key!==null&&n.isPresent(p.options)(p.key.resolve(a,g,S,null,{shadow:!1}))===!1)continue;const v=n.dependencies[p.rel](f,p,a,g,S);if(v){const O=f.$_createError(v.code,a,v.context,g,S);if(S.abortEarly)return{value:a,errors:O};E.push(O)}}return{value:a,errors:E}},rules:{and:{method(...a){return i.verifyFlat(a,"and"),n.dependency(this,"and",null,a)}},append:{method(a){return a==null||Object.keys(a).length===0?this:this.keys(a)}},assert:{method(a,f,m){l.isTemplate(a)||(a=s.ref(a)),d(m===void 0||typeof m=="string","Message must be a string"),f=this.$_compile(f,{appendPath:!0});const g=this.$_addRule({name:"assert",args:{subject:a,schema:f,message:m}});return g.$_mutateRegister(a),g.$_mutateRegister(f),g},validate(a,{error:f,prefs:m,state:g},{subject:S,schema:E,message:u}){const p=S.resolve(a,g,m),v=t.isRef(S)?S.absolute(g):[];return E.$_match(p,g.localize(v,[a,...g.ancestors],E),m)?a:f("object.assert",{subject:S,message:u})},args:["subject","schema","message"],multi:!0},instance:{method(a,f){return d(typeof a=="function","constructor must be a function"),f=f||a.name,this.$_addRule({name:"instance",args:{constructor:a,name:f}})},validate:(a,f,{constructor:m,name:g})=>a instanceof m?a:f.error("object.instance",{type:g,value:a}),args:["constructor","name"]},keys:{method(a){d(a===void 0||typeof a=="object","Object schema must be a valid object"),d(!i.isSchema(a),"Object schema cannot be a joi schema");const f=this.clone();if(a)if(Object.keys(a).length){f.$_terms.keys=f.$_terms.keys?f.$_terms.keys.filter(m=>!a.hasOwnProperty(m.key)):new n.Keys;for(const m in a)i.tryWithPath(()=>f.$_terms.keys.push({key:m,schema:this.$_compile(a[m])}),m)}else f.$_terms.keys=new n.Keys;else f.$_terms.keys=null;return f.$_mutateRebuild()}},length:{method(a){return this.$_addRule({name:"length",args:{limit:a},operator:"="})},validate:(a,f,{limit:m},{name:g,operator:S,args:E})=>i.compare(Object.keys(a).length,m,S)?a:f.error("object."+g,{limit:E.limit,value:a}),args:[{name:"limit",ref:!0,assert:i.limit,message:"must be a positive integer"}]},max:{method(a){return this.$_addRule({name:"max",method:"length",args:{limit:a},operator:"<="})}},min:{method(a){return this.$_addRule({name:"min",method:"length",args:{limit:a},operator:">="})}},nand:{method(...a){return i.verifyFlat(a,"nand"),n.dependency(this,"nand",null,a)}},or:{method(...a){return i.verifyFlat(a,"or"),n.dependency(this,"or",null,a)}},oxor:{method(...a){return n.dependency(this,"oxor",null,a)}},pattern:{method(a,f,m={}){const g=a instanceof RegExp;g||(a=this.$_compile(a,{appendPath:!0})),d(f!==void 0,"Invalid rule"),i.assertOptions(m,["fallthrough","matches"]),g&&d(!a.flags.includes("g")&&!a.flags.includes("y"),"pattern should not use global or sticky mode"),f=this.$_compile(f,{appendPath:!0});const S=this.clone();S.$_terms.patterns=S.$_terms.patterns||[];const E={[g?"regex":"schema"]:a,rule:f};return m.matches&&(E.matches=this.$_compile(m.matches),E.matches.type!=="array"&&(E.matches=E.matches.$_root.array().items(E.matches)),S.$_mutateRegister(E.matches),S.$_setFlag("_hasPatternMatch",!0,{clone:!1})),m.fallthrough&&(E.fallthrough=!0),S.$_terms.patterns.push(E),S.$_mutateRegister(f),S}},ref:{method(){return this.$_addRule("ref")},validate:(a,f)=>t.isRef(a)?a:f.error("object.refType",{value:a})},regex:{method(){return this.$_addRule("regex")},validate:(a,f)=>a instanceof RegExp?a:f.error("object.regex",{value:a})},rename:{method(a,f,m={}){d(typeof a=="string"||a instanceof RegExp,"Rename missing the from argument"),d(typeof f=="string"||f instanceof l,"Invalid rename to argument"),d(f!==a,"Cannot rename key to same name:",a),i.assertOptions(m,["alias","ignoreUndefined","override","multiple"]);const g=this.clone();g.$_terms.renames=g.$_terms.renames||[];for(const S of g.$_terms.renames)d(S.from!==a,"Cannot rename the same key multiple times");return f instanceof l&&g.$_mutateRegister(f),g.$_terms.renames.push({from:a,to:f,options:o(n.renameDefaults,m)}),g}},schema:{method(a="any"){return this.$_addRule({name:"schema",args:{type:a}})},validate:(a,f,{type:m})=>!i.isSchema(a)||m!=="any"&&a.type!==m?f.error("object.schema",{type:m}):a},unknown:{method(a){return this.$_setFlag("unknown",a!==!1)}},with:{method(a,f,m={}){return n.dependency(this,"with",a,f,m)}},without:{method(a,f,m={}){return n.dependency(this,"without",a,f,m)}},xor:{method(...a){return i.verifyFlat(a,"xor"),n.dependency(this,"xor",null,a)}}},overrides:{default(a,f){return a===void 0&&(a=i.symbols.deepDefault),this.$_parent("default",a,f)}},rebuild(a){if(a.$_terms.keys){const f=new c.Sorter;for(const m of a.$_terms.keys)i.tryWithPath(()=>f.add(m,{after:m.schema.$_rootReferences(),group:m.key}),m.key);a.$_terms.keys=new n.Keys(...f.nodes)}},manifest:{build(a,f){if(f.keys&&(a=a.keys(f.keys)),f.dependencies)for(const{rel:m,key:g=null,peers:S,options:E}of f.dependencies)a=n.dependency(a,m,g,S,E);if(f.patterns)for(const{regex:m,schema:g,rule:S,fallthrough:E,matches:u}of f.patterns)a=a.pattern(m||g,S,{fallthrough:E,matches:u});if(f.renames)for(const{from:m,to:g,options:S}of f.renames)a=a.rename(m,g,S);return a}},messages:{"object.and":"{{#label}} contains {{#presentWithLabels}} without its required peers {{#missingWithLabels}}","object.assert":'{{#label}} is invalid because {if(#subject.key, `"` + #subject.key + `" failed to ` + (#message || "pass the assertion test"), #message || "the assertion failed")}',"object.base":"{{#label}} must be of type {{#type}}","object.instance":"{{#label}} must be an instance of {{:#type}}","object.length":'{{#label}} must have {{#limit}} key{if(#limit == 1, "", "s")}',"object.max":'{{#label}} must have less than or equal to {{#limit}} key{if(#limit == 1, "", "s")}',"object.min":'{{#label}} must have at least {{#limit}} key{if(#limit == 1, "", "s")}',"object.missing":"{{#label}} must contain at least one of {{#peersWithLabels}}","object.nand":"{{:#mainWithLabel}} must not exist simultaneously with {{#peersWithLabels}}","object.oxor":"{{#label}} contains a conflict between optional exclusive peers {{#peersWithLabels}}","object.pattern.match":"{{#label}} keys failed to match pattern requirements","object.refType":"{{#label}} must be a Joi reference","object.regex":"{{#label}} must be a RegExp object","object.rename.multiple":"{{#label}} cannot rename {{:#from}} because multiple renames are disabled and another key was already renamed to {{:#to}}","object.rename.override":"{{#label}} cannot rename {{:#from}} because override is disabled and target {{:#to}} exists","object.schema":"{{#label}} must be a Joi schema of {{#type}} type","object.unknown":"{{#label}} is not allowed","object.with":"{{:#mainWithLabel}} missing required peer {{:#peerWithLabel}}","object.without":"{{:#mainWithLabel}} conflict with forbidden peer {{:#peerWithLabel}}","object.xor":"{{#label}} contains a conflict between exclusive peers {{#peersWithLabels}}"}}),n.clone=function(a,f){if(typeof a=="object"){if(f.nonEnumerables)return h(a,{shallow:!0});const g=Object.create(Object.getPrototypeOf(a));return Object.assign(g,a),g}const m=function(...g){return a.apply(this,g)};return m.prototype=h(a.prototype),Object.defineProperty(m,"name",{value:a.name,writable:!1}),Object.defineProperty(m,"length",{value:a.length,writable:!1}),Object.assign(m,a),m},n.dependency=function(a,f,m,g,S){d(m===null||typeof m=="string",f,"key must be a strings"),S||(S=g.length>1&&typeof g[g.length-1]=="object"?g.pop():{}),i.assertOptions(S,["separator","isPresent"]),g=[].concat(g);const E=i.default(S.separator,"."),u=[];for(const v of g)d(typeof v=="string",f,"peers must be strings"),u.push(s.ref(v,{separator:E,ancestor:0,prefix:!1}));m!==null&&(m=s.ref(m,{separator:E,ancestor:0,prefix:!1}));const p=a.clone();return p.$_terms.dependencies=p.$_terms.dependencies||[],p.$_terms.dependencies.push(new n.Dependency(f,m,u,g,S)),p},n.dependencies={and(a,f,m,g,S){const E=[],u=[],p=f.peers.length,v=n.isPresent(f.options);for(const O of f.peers)v(O.resolve(m,g,S,null,{shadow:!1}))===!1?E.push(O.key):u.push(O.key);if(E.length!==p&&u.length!==p)return{code:"object.and",context:{present:u,presentWithLabels:n.keysToLabels(a,u),missing:E,missingWithLabels:n.keysToLabels(a,E)}}},nand(a,f,m,g,S){const E=[],u=n.isPresent(f.options);for(const O of f.peers)u(O.resolve(m,g,S,null,{shadow:!1}))&&E.push(O.key);if(E.length!==f.peers.length)return;const p=f.paths[0],v=f.paths.slice(1);return{code:"object.nand",context:{main:p,mainWithLabel:n.keysToLabels(a,p),peers:v,peersWithLabels:n.keysToLabels(a,v)}}},or(a,f,m,g,S){const E=n.isPresent(f.options);for(const u of f.peers)if(E(u.resolve(m,g,S,null,{shadow:!1})))return;return{code:"object.missing",context:{peers:f.paths,peersWithLabels:n.keysToLabels(a,f.paths)}}},oxor(a,f,m,g,S){const E=[],u=n.isPresent(f.options);for(const v of f.peers)u(v.resolve(m,g,S,null,{shadow:!1}))&&E.push(v.key);if(!E.length||E.length===1)return;const p={peers:f.paths,peersWithLabels:n.keysToLabels(a,f.paths)};return p.present=E,p.presentWithLabels=n.keysToLabels(a,E),{code:"object.oxor",context:p}},with(a,f,m,g,S){const E=n.isPresent(f.options);for(const u of f.peers)if(E(u.resolve(m,g,S,null,{shadow:!1}))===!1)return{code:"object.with",context:{main:f.key.key,mainWithLabel:n.keysToLabels(a,f.key.key),peer:u.key,peerWithLabel:n.keysToLabels(a,u.key)}}},without(a,f,m,g,S){const E=n.isPresent(f.options);for(const u of f.peers)if(E(u.resolve(m,g,S,null,{shadow:!1})))return{code:"object.without",context:{main:f.key.key,mainWithLabel:n.keysToLabels(a,f.key.key),peer:u.key,peerWithLabel:n.keysToLabels(a,u.key)}}},xor(a,f,m,g,S){const E=[],u=n.isPresent(f.options);for(const v of f.peers)u(v.resolve(m,g,S,null,{shadow:!1}))&&E.push(v.key);if(E.length===1)return;const p={peers:f.paths,peersWithLabels:n.keysToLabels(a,f.paths)};return E.length===0?{code:"object.missing",context:p}:(p.present=E,p.presentWithLabels=n.keysToLabels(a,E),{code:"object.xor",context:p})}},n.keysToLabels=function(a,f){return Array.isArray(f)?f.map(m=>a.$_mapLabels(m)):a.$_mapLabels(f)},n.isPresent=function(a){return typeof a.isPresent=="function"?a.isPresent:f=>f!==void 0},n.rename=function(a,f,m,g,S){const E={};for(const u of a.$_terms.renames){const p=[],v=typeof u.from!="string";if(v)for(const O in f){if(f[O]===void 0&&u.options.ignoreUndefined||O===u.to)continue;const L=u.from.exec(O);L&&p.push({from:O,to:u.to,match:L})}else!Object.prototype.hasOwnProperty.call(f,u.from)||f[u.from]===void 0&&u.options.ignoreUndefined||p.push(u);for(const O of p){const L=O.from;let N=O.to;if(N instanceof l&&(N=N.render(f,m,g,O.match)),L!==N){if(!u.options.multiple&&E[N]&&(S.push(a.$_createError("object.rename.multiple",f,{from:L,to:N,pattern:v},m,g)),g.abortEarly)||Object.prototype.hasOwnProperty.call(f,N)&&!u.options.override&&!E[N]&&(S.push(a.$_createError("object.rename.override",f,{from:L,to:N,pattern:v},m,g)),g.abortEarly))return!1;f[L]===void 0?delete f[N]:f[N]=f[L],E[N]=!0,u.options.alias||delete f[L]}}}return!0},n.unknown=function(a,f,m,g,S,E){if(a.$_terms.patterns){let u=!1;const p=a.$_terms.patterns.map(O=>{if(O.matches)return u=!0,[]}),v=[f,...S.ancestors];for(const O of m){const L=f[O],N=[...S.path,O];for(let D=0;D<a.$_terms.patterns.length;++D){const q=a.$_terms.patterns[D];if(q.regex){const X=q.regex.test(O);if(S.mainstay.tracer.debug(S,"rule",`pattern.${D}`,X?"pass":"error"),!X)continue}else if(!q.schema.$_match(O,S.nest(q.schema,`pattern.${D}`),E))continue;m.delete(O);const z=S.localize(N,v,{schema:q.rule,key:O}),U=q.rule.$_validate(L,z,E);if(U.errors){if(E.abortEarly)return{value:f,errors:U.errors};g.push(...U.errors)}if(q.matches&&p[D].push(O),f[O]=U.value,!q.fallthrough)break}}if(u)for(let O=0;O<p.length;++O){const L=p[O];if(!L)continue;const N=a.$_terms.patterns[O].matches,D=S.localize(S.path,v,N),q=N.$_validate(L,D,E);if(q.errors){const z=r.details(q.errors,{override:!1});z.matches=L;const U=a.$_createError("object.pattern.match",f,z,S,E);if(E.abortEarly)return{value:f,errors:U};g.push(U)}}}if(m.size&&(a.$_terms.keys||a.$_terms.patterns)){if(E.stripUnknown&&!a._flags.unknown||E.skipFunctions){const u=!(!E.stripUnknown||E.stripUnknown!==!0&&!E.stripUnknown.objects);for(const p of m)u?(delete f[p],m.delete(p)):typeof f[p]=="function"&&m.delete(p)}if(!i.default(a._flags.unknown,E.allowUnknown))for(const u of m){const p=S.localize([...S.path,u],[]),v=a.$_createError("object.unknown",f[u],{child:u},p,E,{flags:!1});if(E.abortEarly)return{value:f,errors:v};g.push(v)}}},n.Dependency=class{constructor(a,f,m,g,S){this.rel=a,this.key=f,this.peers=m,this.paths=g,this.options=S}describe(){const a={rel:this.rel,peers:this.paths};return this.key!==null&&(a.key=this.key.key),this.peers[0].separator!=="."&&(a.options={...a.options,separator:this.peers[0].separator}),this.options.isPresent&&(a.options={...a.options,isPresent:this.options.isPresent}),a}},n.Keys=class extends Array{concat(a){const f=this.slice(),m=new Map;for(let g=0;g<f.length;++g)m.set(f[g].key,g);for(const g of a){const S=g.key,E=m.get(S);E!==void 0?f[E]={key:S,schema:f[E].schema.concat(g.schema)}:f.push(g)}return f}}},8785:(A,R,y)=>{const o=y(375),d=y(8068),h=y(8160),c=y(3292),e=y(6354),i={};A.exports=d.extend({type:"link",properties:{schemaChain:!0},terms:{link:{init:null,manifest:"single",register:!1}},args:(s,r)=>s.ref(r),validate(s,{schema:r,state:t,prefs:l}){o(r.$_terms.link,"Uninitialized link schema");const n=i.generate(r,s,t,l),a=r.$_terms.link[0].ref;return n.$_validate(s,t.nest(n,`link:${a.display}:${n.type}`),l)},generate:(s,r,t,l)=>i.generate(s,r,t,l),rules:{ref:{method(s){o(!this.$_terms.link,"Cannot reinitialize schema"),s=c.ref(s),o(s.type==="value"||s.type==="local","Invalid reference type:",s.type),o(s.type==="local"||s.ancestor==="root"||s.ancestor>0,"Link cannot reference itself");const r=this.clone();return r.$_terms.link=[{ref:s}],r}},relative:{method(s=!0){return this.$_setFlag("relative",s)}}},overrides:{concat(s){o(this.$_terms.link,"Uninitialized link schema"),o(h.isSchema(s),"Invalid schema object"),o(s.type!=="link","Cannot merge type link with another link");const r=this.clone();return r.$_terms.whens||(r.$_terms.whens=[]),r.$_terms.whens.push({concat:s}),r.$_mutateRebuild()}},manifest:{build:(s,r)=>(o(r.link,"Invalid link description missing link"),s.ref(r.link))}}),i.generate=function(s,r,t,l){let n=t.mainstay.links.get(s);if(n)return n._generate(r,t,l).schema;const a=s.$_terms.link[0].ref,{perspective:f,path:m}=i.perspective(a,t);i.assert(f,"which is outside of schema boundaries",a,s,t,l);try{n=m.length?f.$_reach(m):f}catch{i.assert(!1,"to non-existing schema",a,s,t,l)}return i.assert(n.type!=="link","which is another link",a,s,t,l),s._flags.relative||t.mainstay.links.set(s,n),n._generate(r,t,l).schema},i.perspective=function(s,r){if(s.type==="local"){for(const{schema:t,key:l}of r.schemas){if((t._flags.id||l)===s.path[0])return{perspective:t,path:s.path.slice(1)};if(t.$_terms.shared){for(const n of t.$_terms.shared)if(n._flags.id===s.path[0])return{perspective:n,path:s.path.slice(1)}}}return{perspective:null,path:null}}return s.ancestor==="root"?{perspective:r.schemas[r.schemas.length-1].schema,path:s.path}:{perspective:r.schemas[s.ancestor]&&r.schemas[s.ancestor].schema,path:s.path}},i.assert=function(s,r,t,l,n,a){s||o(!1,`"${e.label(l._flags,n,a)}" contains link reference "${t.display}" ${r}`)}},3832:(A,R,y)=>{const o=y(375),d=y(8068),h=y(8160),c={numberRx:/^\s*[+-]?(?:(?:\d+(?:\.\d*)?)|(?:\.\d+))(?:e([+-]?\d+))?\s*$/i,precisionRx:/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/,exponentialPartRegex:/[eE][+-]?\d+$/,leadingSignAndZerosRegex:/^[+-]?(0*)?/,dotRegex:/\./,trailingZerosRegex:/0+$/,decimalPlaces(e){const i=e.toString(),s=i.indexOf("."),r=i.indexOf("e");return(s<0?0:(r<0?i.length:r)-s-1)+(r<0?0:Math.max(0,-parseInt(i.slice(r+1))))}};A.exports=d.extend({type:"number",flags:{unsafe:{default:!1}},coerce:{from:"string",method(e,{schema:i,error:s}){if(!e.match(c.numberRx))return;e=e.trim();const r={value:parseFloat(e)};if(r.value===0&&(r.value=0),!i._flags.unsafe)if(e.match(/e/i)){if(c.extractSignificantDigits(e)!==c.extractSignificantDigits(String(r.value)))return r.errors=s("number.unsafe"),r}else{const t=r.value.toString();if(t.match(/e/i))return r;if(t!==c.normalizeDecimal(e))return r.errors=s("number.unsafe"),r}return r}},validate(e,{schema:i,error:s,prefs:r}){if(e===1/0||e===-1/0)return{value:e,errors:s("number.infinity")};if(!h.isNumber(e))return{value:e,errors:s("number.base")};const t={value:e};if(r.convert){const l=i.$_getRule("precision");if(l){const n=Math.pow(10,l.args.limit);t.value=Math.round(t.value*n)/n}}return t.value===0&&(t.value=0),!i._flags.unsafe&&(e>Number.MAX_SAFE_INTEGER||e<Number.MIN_SAFE_INTEGER)&&(t.errors=s("number.unsafe")),t},rules:{compare:{method:!1,validate:(e,i,{limit:s},{name:r,operator:t,args:l})=>h.compare(e,s,t)?e:i.error("number."+r,{limit:l.limit,value:e}),args:[{name:"limit",ref:!0,assert:h.isNumber,message:"must be a number"}]},greater:{method(e){return this.$_addRule({name:"greater",method:"compare",args:{limit:e},operator:">"})}},integer:{method(){return this.$_addRule("integer")},validate:(e,i)=>Math.trunc(e)-e==0?e:i.error("number.integer")},less:{method(e){return this.$_addRule({name:"less",method:"compare",args:{limit:e},operator:"<"})}},max:{method(e){return this.$_addRule({name:"max",method:"compare",args:{limit:e},operator:"<="})}},min:{method(e){return this.$_addRule({name:"min",method:"compare",args:{limit:e},operator:">="})}},multiple:{method(e){const i=typeof e=="number"?c.decimalPlaces(e):null,s=Math.pow(10,i);return this.$_addRule({name:"multiple",args:{base:e,baseDecimalPlace:i,pfactor:s}})},validate:(e,i,{base:s,baseDecimalPlace:r,pfactor:t},l)=>c.decimalPlaces(e)>r?i.error("number.multiple",{multiple:l.args.base,value:e}):Math.round(t*e)%Math.round(t*s)==0?e:i.error("number.multiple",{multiple:l.args.base,value:e}),args:[{name:"base",ref:!0,assert:e=>typeof e=="number"&&isFinite(e)&&e>0,message:"must be a positive number"},"baseDecimalPlace","pfactor"],multi:!0},negative:{method(){return this.sign("negative")}},port:{method(){return this.$_addRule("port")},validate:(e,i)=>Number.isSafeInteger(e)&&e>=0&&e<=65535?e:i.error("number.port")},positive:{method(){return this.sign("positive")}},precision:{method(e){return o(Number.isSafeInteger(e),"limit must be an integer"),this.$_addRule({name:"precision",args:{limit:e}})},validate(e,i,{limit:s}){const r=e.toString().match(c.precisionRx);return Math.max((r[1]?r[1].length:0)-(r[2]?parseInt(r[2],10):0),0)<=s?e:i.error("number.precision",{limit:s,value:e})},convert:!0},sign:{method(e){return o(["negative","positive"].includes(e),"Invalid sign",e),this.$_addRule({name:"sign",args:{sign:e}})},validate:(e,i,{sign:s})=>s==="negative"&&e<0||s==="positive"&&e>0?e:i.error(`number.${s}`)},unsafe:{method(e=!0){return o(typeof e=="boolean","enabled must be a boolean"),this.$_setFlag("unsafe",e)}}},cast:{string:{from:e=>typeof e=="number",to:(e,i)=>e.toString()}},messages:{"number.base":"{{#label}} must be a number","number.greater":"{{#label}} must be greater than {{#limit}}","number.infinity":"{{#label}} cannot be infinity","number.integer":"{{#label}} must be an integer","number.less":"{{#label}} must be less than {{#limit}}","number.max":"{{#label}} must be less than or equal to {{#limit}}","number.min":"{{#label}} must be greater than or equal to {{#limit}}","number.multiple":"{{#label}} must be a multiple of {{#multiple}}","number.negative":"{{#label}} must be a negative number","number.port":"{{#label}} must be a valid port","number.positive":"{{#label}} must be a positive number","number.precision":"{{#label}} must have no more than {{#limit}} decimal places","number.unsafe":"{{#label}} must be a safe number"}}),c.extractSignificantDigits=function(e){return e.replace(c.exponentialPartRegex,"").replace(c.dotRegex,"").replace(c.trailingZerosRegex,"").replace(c.leadingSignAndZerosRegex,"")},c.normalizeDecimal=function(e){return(e=e.replace(/^\+/,"").replace(/\.0*$/,"").replace(/^(-?)\.([^\.]*)$/,"$10.$2").replace(/^(-?)0+([0-9])/,"$1$2")).includes(".")&&e.endsWith("0")&&(e=e.replace(/0+$/,"")),e==="-0"?"0":e}},8966:(A,R,y)=>{const o=y(7824);A.exports=o.extend({type:"object",cast:{map:{from:d=>d&&typeof d=="object",to:(d,h)=>new Map(Object.entries(d))}}})},7417:(A,R,y)=>{const o=y(375),d=y(5380),h=y(1745),c=y(9959),e=y(6064),i=y(9926),s=y(5752),r=y(8068),t=y(8160),l={tlds:i instanceof Set&&{tlds:{allow:i,deny:null}},base64Regex:{true:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}==|[\w\-]{3}=)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/},false:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}(==)?|[\w\-]{3}=?)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}(==)?|[A-Za-z0-9+\/]{3}=?)?$/}},dataUriRegex:/^data:[\w+.-]+\/[\w+.-]+;((charset=[\w-]+|base64),)?(.*)$/,hexRegex:{withPrefix:/^0x[0-9a-f]+$/i,withOptionalPrefix:/^(?:0x)?[0-9a-f]+$/i,withoutPrefix:/^[0-9a-f]+$/i},ipRegex:c.regex({cidr:"forbidden"}).regex,isoDurationRegex:/^P(?!$)(\d+Y)?(\d+M)?(\d+W)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?$/,guidBrackets:{"{":"}","[":"]","(":")","":""},guidVersions:{uuidv1:"1",uuidv2:"2",uuidv3:"3",uuidv4:"4",uuidv5:"5",uuidv6:"6",uuidv7:"7",uuidv8:"8"},guidSeparators:new Set([void 0,!0,!1,"-",":"]),normalizationForms:["NFC","NFD","NFKC","NFKD"]};A.exports=r.extend({type:"string",flags:{insensitive:{default:!1},truncate:{default:!1}},terms:{replacements:{init:null}},coerce:{from:"string",method(n,{schema:a,state:f,prefs:m}){const g=a.$_getRule("normalize");g&&(n=n.normalize(g.args.form));const S=a.$_getRule("case");S&&(n=S.args.direction==="upper"?n.toLocaleUpperCase():n.toLocaleLowerCase());const E=a.$_getRule("trim");if(E&&E.args.enabled&&(n=n.trim()),a.$_terms.replacements)for(const p of a.$_terms.replacements)n=n.replace(p.pattern,p.replacement);const u=a.$_getRule("hex");if(u&&u.args.options.byteAligned&&n.length%2!=0&&(n=`0${n}`),a.$_getRule("isoDate")){const p=l.isoDate(n);p&&(n=p)}if(a._flags.truncate){const p=a.$_getRule("max");if(p){let v=p.args.limit;if(t.isResolvable(v)&&(v=v.resolve(n,f,m),!t.limit(v)))return{value:n,errors:a.$_createError("any.ref",v,{ref:p.args.limit,arg:"limit",reason:"must be a positive integer"},f,m)};n=n.slice(0,v)}}return{value:n}}},validate(n,{schema:a,error:f}){if(typeof n!="string")return{value:n,errors:f("string.base")};if(n===""){const m=a.$_getRule("min");return m&&m.args.limit===0?void 0:{value:n,errors:f("string.empty")}}},rules:{alphanum:{method(){return this.$_addRule("alphanum")},validate:(n,a)=>/^[a-zA-Z0-9]+$/.test(n)?n:a.error("string.alphanum")},base64:{method(n={}){return t.assertOptions(n,["paddingRequired","urlSafe"]),n={urlSafe:!1,paddingRequired:!0,...n},o(typeof n.paddingRequired=="boolean","paddingRequired must be boolean"),o(typeof n.urlSafe=="boolean","urlSafe must be boolean"),this.$_addRule({name:"base64",args:{options:n}})},validate:(n,a,{options:f})=>l.base64Regex[f.paddingRequired][f.urlSafe].test(n)?n:a.error("string.base64")},case:{method(n){return o(["lower","upper"].includes(n),"Invalid case:",n),this.$_addRule({name:"case",args:{direction:n}})},validate:(n,a,{direction:f})=>f==="lower"&&n===n.toLocaleLowerCase()||f==="upper"&&n===n.toLocaleUpperCase()?n:a.error(`string.${f}case`),convert:!0},creditCard:{method(){return this.$_addRule("creditCard")},validate(n,a){let f=n.length,m=0,g=1;for(;f--;){const S=n.charAt(f)*g;m+=S-9*(S>9),g^=3}return m>0&&m%10==0?n:a.error("string.creditCard")}},dataUri:{method(n={}){return t.assertOptions(n,["paddingRequired"]),n={paddingRequired:!0,...n},o(typeof n.paddingRequired=="boolean","paddingRequired must be boolean"),this.$_addRule({name:"dataUri",args:{options:n}})},validate(n,a,{options:f}){const m=n.match(l.dataUriRegex);return m&&(!m[2]||m[2]!=="base64"||l.base64Regex[f.paddingRequired].false.test(m[3]))?n:a.error("string.dataUri")}},domain:{method(n){n&&t.assertOptions(n,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);const a=l.addressOptions(n);return this.$_addRule({name:"domain",args:{options:n},address:a})},validate:(n,a,f,{address:m})=>d.isValid(n,m)?n:a.error("string.domain")},email:{method(n={}){t.assertOptions(n,["allowFullyQualified","allowUnicode","ignoreLength","maxDomainSegments","minDomainSegments","multiple","separator","tlds"]),o(n.multiple===void 0||typeof n.multiple=="boolean","multiple option must be an boolean");const a=l.addressOptions(n),f=new RegExp(`\\s*[${n.separator?e(n.separator):","}]\\s*`);return this.$_addRule({name:"email",args:{options:n},regex:f,address:a})},validate(n,a,{options:f},{regex:m,address:g}){const S=f.multiple?n.split(m):[n],E=[];for(const u of S)h.isValid(u,g)||E.push(u);return E.length?a.error("string.email",{value:n,invalids:E}):n}},guid:{alias:"uuid",method(n={}){t.assertOptions(n,["version","separator"]);let a="";if(n.version){const g=[].concat(n.version);o(g.length>=1,"version must have at least 1 valid version specified");const S=new Set;for(let E=0;E<g.length;++E){const u=g[E];o(typeof u=="string","version at position "+E+" must be a string");const p=l.guidVersions[u.toLowerCase()];o(p,"version at position "+E+" must be one of "+Object.keys(l.guidVersions).join(", ")),o(!S.has(p),"version at position "+E+" must not be a duplicate"),a+=p,S.add(p)}}o(l.guidSeparators.has(n.separator),'separator must be one of true, false, "-", or ":"');const f=n.separator===void 0?"[:-]?":n.separator===!0?"[:-]":n.separator===!1?"[]?":`\\${n.separator}`,m=new RegExp(`^([\\[{\\(]?)[0-9A-F]{8}(${f})[0-9A-F]{4}\\2?[${a||"0-9A-F"}][0-9A-F]{3}\\2?[${a?"89AB":"0-9A-F"}][0-9A-F]{3}\\2?[0-9A-F]{12}([\\]}\\)]?)$`,"i");return this.$_addRule({name:"guid",args:{options:n},regex:m})},validate(n,a,f,{regex:m}){const g=m.exec(n);return g?l.guidBrackets[g[1]]!==g[g.length-1]?a.error("string.guid"):n:a.error("string.guid")}},hex:{method(n={}){return t.assertOptions(n,["byteAligned","prefix"]),n={byteAligned:!1,prefix:!1,...n},o(typeof n.byteAligned=="boolean","byteAligned must be boolean"),o(typeof n.prefix=="boolean"||n.prefix==="optional",'prefix must be boolean or "optional"'),this.$_addRule({name:"hex",args:{options:n}})},validate:(n,a,{options:f})=>(f.prefix==="optional"?l.hexRegex.withOptionalPrefix:f.prefix===!0?l.hexRegex.withPrefix:l.hexRegex.withoutPrefix).test(n)?f.byteAligned&&n.length%2!=0?a.error("string.hexAlign"):n:a.error("string.hex")},hostname:{method(){return this.$_addRule("hostname")},validate:(n,a)=>d.isValid(n,{minDomainSegments:1})||l.ipRegex.test(n)?n:a.error("string.hostname")},insensitive:{method(){return this.$_setFlag("insensitive",!0)}},ip:{method(n={}){t.assertOptions(n,["cidr","version"]);const{cidr:a,versions:f,regex:m}=c.regex(n),g=n.version?f:void 0;return this.$_addRule({name:"ip",args:{options:{cidr:a,version:g}},regex:m})},validate:(n,a,{options:f},{regex:m})=>m.test(n)?n:f.version?a.error("string.ipVersion",{value:n,cidr:f.cidr,version:f.version}):a.error("string.ip",{value:n,cidr:f.cidr})},isoDate:{method(){return this.$_addRule("isoDate")},validate:(n,{error:a})=>l.isoDate(n)?n:a("string.isoDate")},isoDuration:{method(){return this.$_addRule("isoDuration")},validate:(n,a)=>l.isoDurationRegex.test(n)?n:a.error("string.isoDuration")},length:{method(n,a){return l.length(this,"length",n,"=",a)},validate(n,a,{limit:f,encoding:m},{name:g,operator:S,args:E}){const u=!m&&n.length;return t.compare(u,f,S)?n:a.error("string."+g,{limit:E.limit,value:n,encoding:m})},args:[{name:"limit",ref:!0,assert:t.limit,message:"must be a positive integer"},"encoding"]},lowercase:{method(){return this.case("lower")}},max:{method(n,a){return l.length(this,"max",n,"<=",a)},args:["limit","encoding"]},min:{method(n,a){return l.length(this,"min",n,">=",a)},args:["limit","encoding"]},normalize:{method(n="NFC"){return o(l.normalizationForms.includes(n),"normalization form must be one of "+l.normalizationForms.join(", ")),this.$_addRule({name:"normalize",args:{form:n}})},validate:(n,{error:a},{form:f})=>n===n.normalize(f)?n:a("string.normalize",{value:n,form:f}),convert:!0},pattern:{alias:"regex",method(n,a={}){o(n instanceof RegExp,"regex must be a RegExp"),o(!n.flags.includes("g")&&!n.flags.includes("y"),"regex should not use global or sticky mode"),typeof a=="string"&&(a={name:a}),t.assertOptions(a,["invert","name"]);const f=["string.pattern",a.invert?".invert":"",a.name?".name":".base"].join("");return this.$_addRule({name:"pattern",args:{regex:n,options:a},errorCode:f})},validate:(n,a,{regex:f,options:m},{errorCode:g})=>f.test(n)^m.invert?n:a.error(g,{name:m.name,regex:f,value:n}),args:["regex","options"],multi:!0},replace:{method(n,a){typeof n=="string"&&(n=new RegExp(e(n),"g")),o(n instanceof RegExp,"pattern must be a RegExp"),o(typeof a=="string","replacement must be a String");const f=this.clone();return f.$_terms.replacements||(f.$_terms.replacements=[]),f.$_terms.replacements.push({pattern:n,replacement:a}),f}},token:{method(){return this.$_addRule("token")},validate:(n,a)=>/^\w+$/.test(n)?n:a.error("string.token")},trim:{method(n=!0){return o(typeof n=="boolean","enabled must be a boolean"),this.$_addRule({name:"trim",args:{enabled:n}})},validate:(n,a,{enabled:f})=>f&&n!==n.trim()?a.error("string.trim"):n,convert:!0},truncate:{method(n=!0){return o(typeof n=="boolean","enabled must be a boolean"),this.$_setFlag("truncate",n)}},uppercase:{method(){return this.case("upper")}},uri:{method(n={}){t.assertOptions(n,["allowRelative","allowQuerySquareBrackets","domain","relativeOnly","scheme"]),n.domain&&t.assertOptions(n.domain,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);const{regex:a,scheme:f}=s.regex(n),m=n.domain?l.addressOptions(n.domain):null;return this.$_addRule({name:"uri",args:{options:n},regex:a,domain:m,scheme:f})},validate(n,a,{options:f},{regex:m,domain:g,scheme:S}){if(["http:/","https:/"].includes(n))return a.error("string.uri");const E=m.exec(n);if(E){const u=E[1]||E[2];return!g||f.allowRelative&&!u||d.isValid(u,g)?n:a.error("string.domain",{value:u})}return f.relativeOnly?a.error("string.uriRelativeOnly"):f.scheme?a.error("string.uriCustomScheme",{scheme:S,value:n}):a.error("string.uri")}}},manifest:{build(n,a){if(a.replacements)for(const{pattern:f,replacement:m}of a.replacements)n=n.replace(f,m);return n}},messages:{"string.alphanum":"{{#label}} must only contain alpha-numeric characters","string.base":"{{#label}} must be a string","string.base64":"{{#label}} must be a valid base64 string","string.creditCard":"{{#label}} must be a credit card","string.dataUri":"{{#label}} must be a valid dataUri string","string.domain":"{{#label}} must contain a valid domain name","string.email":"{{#label}} must be a valid email","string.empty":"{{#label}} is not allowed to be empty","string.guid":"{{#label}} must be a valid GUID","string.hex":"{{#label}} must only contain hexadecimal characters","string.hexAlign":"{{#label}} hex decoded representation must be byte aligned","string.hostname":"{{#label}} must be a valid hostname","string.ip":"{{#label}} must be a valid ip address with a {{#cidr}} CIDR","string.ipVersion":"{{#label}} must be a valid ip address of one of the following versions {{#version}} with a {{#cidr}} CIDR","string.isoDate":"{{#label}} must be in iso format","string.isoDuration":"{{#label}} must be a valid ISO 8601 duration","string.length":"{{#label}} length must be {{#limit}} characters long","string.lowercase":"{{#label}} must only contain lowercase characters","string.max":"{{#label}} length must be less than or equal to {{#limit}} characters long","string.min":"{{#label}} length must be at least {{#limit}} characters long","string.normalize":"{{#label}} must be unicode normalized in the {{#form}} form","string.token":"{{#label}} must only contain alpha-numeric and underscore characters","string.pattern.base":"{{#label}} with value {:[.]} fails to match the required pattern: {{#regex}}","string.pattern.name":"{{#label}} with value {:[.]} fails to match the {{#name}} pattern","string.pattern.invert.base":"{{#label}} with value {:[.]} matches the inverted pattern: {{#regex}}","string.pattern.invert.name":"{{#label}} with value {:[.]} matches the inverted {{#name}} pattern","string.trim":"{{#label}} must not have leading or trailing whitespace","string.uri":"{{#label}} must be a valid uri","string.uriCustomScheme":"{{#label}} must be a valid uri with a scheme matching the {{#scheme}} pattern","string.uriRelativeOnly":"{{#label}} must be a valid relative uri","string.uppercase":"{{#label}} must only contain uppercase characters"}}),l.addressOptions=function(n){if(!n)return l.tlds||n;if(o(n.minDomainSegments===void 0||Number.isSafeInteger(n.minDomainSegments)&&n.minDomainSegments>0,"minDomainSegments must be a positive integer"),o(n.maxDomainSegments===void 0||Number.isSafeInteger(n.maxDomainSegments)&&n.maxDomainSegments>0,"maxDomainSegments must be a positive integer"),n.tlds===!1)return n;if(n.tlds===!0||n.tlds===void 0)return o(l.tlds,"Built-in TLD list disabled"),Object.assign({},n,l.tlds);o(typeof n.tlds=="object","tlds must be true, false, or an object");const a=n.tlds.deny;if(a)return Array.isArray(a)&&(n=Object.assign({},n,{tlds:{deny:new Set(a)}})),o(n.tlds.deny instanceof Set,"tlds.deny must be an array, Set, or boolean"),o(!n.tlds.allow,"Cannot specify both tlds.allow and tlds.deny lists"),l.validateTlds(n.tlds.deny,"tlds.deny"),n;const f=n.tlds.allow;return f?f===!0?(o(l.tlds,"Built-in TLD list disabled"),Object.assign({},n,l.tlds)):(Array.isArray(f)&&(n=Object.assign({},n,{tlds:{allow:new Set(f)}})),o(n.tlds.allow instanceof Set,"tlds.allow must be an array, Set, or boolean"),l.validateTlds(n.tlds.allow,"tlds.allow"),n):n},l.validateTlds=function(n,a){for(const f of n)o(d.isValid(f,{minDomainSegments:1,maxDomainSegments:1}),`${a} must contain valid top level domain names`)},l.isoDate=function(n){if(!t.isIsoDate(n))return null;/.*T.*[+-]\d\d$/.test(n)&&(n+="00");const a=new Date(n);return isNaN(a.getTime())?null:a.toISOString()},l.length=function(n,a,f,m,g){return o(!g||!1,"Invalid encoding:",g),n.$_addRule({name:a,method:"length",args:{limit:f,encoding:g},operator:m})}},8826:(A,R,y)=>{const o=y(375),d=y(8068),h={};h.Map=class extends Map{slice(){return new h.Map(this)}},A.exports=d.extend({type:"symbol",terms:{map:{init:new h.Map}},coerce:{method(c,{schema:e,error:i}){const s=e.$_terms.map.get(c);return s&&(c=s),e._flags.only&&typeof c!="symbol"?{value:c,errors:i("symbol.map",{map:e.$_terms.map})}:{value:c}}},validate(c,{error:e}){if(typeof c!="symbol")return{value:c,errors:e("symbol.base")}},rules:{map:{method(c){c&&!c[Symbol.iterator]&&typeof c=="object"&&(c=Object.entries(c)),o(c&&c[Symbol.iterator],"Iterable must be an iterable or object");const e=this.clone(),i=[];for(const s of c){o(s&&s[Symbol.iterator],"Entry must be an iterable");const[r,t]=s;o(typeof r!="object"&&typeof r!="function"&&typeof r!="symbol","Key must not be of type object, function, or Symbol"),o(typeof t=="symbol","Value must be a Symbol"),e.$_terms.map.set(r,t),i.push(t)}return e.valid(...i)}}},manifest:{build:(c,e)=>(e.map&&(c=c.map(e.map)),c)},messages:{"symbol.base":"{{#label}} must be a symbol","symbol.map":"{{#label}} must be one of {{#map}}"}})},8863:(A,R,y)=>{const o=y(375),d=y(8571),h=y(738),c=y(9621),e=y(8160),i=y(6354),s=y(493),r={result:Symbol("result")};R.entry=function(t,l,n){let a=e.defaults;n&&(o(n.warnings===void 0,"Cannot override warnings preference in synchronous validation"),o(n.artifacts===void 0,"Cannot override artifacts preference in synchronous validation"),a=e.preferences(e.defaults,n));const f=r.entry(t,l,a);o(!f.mainstay.externals.length,"Schema with external rules must use validateAsync()");const m={value:f.value};return f.error&&(m.error=f.error),f.mainstay.warnings.length&&(m.warning=i.details(f.mainstay.warnings)),f.mainstay.debug&&(m.debug=f.mainstay.debug),f.mainstay.artifacts&&(m.artifacts=f.mainstay.artifacts),m},R.entryAsync=async function(t,l,n){let a=e.defaults;n&&(a=e.preferences(e.defaults,n));const f=r.entry(t,l,a),m=f.mainstay;if(f.error)throw m.debug&&(f.error.debug=m.debug),f.error;if(m.externals.length){let S=f.value;const E=[];for(const u of m.externals){const p=u.state.path,v=u.schema.type==="link"?m.links.get(u.schema):null;let O,L,N=S;const D=p.length?[S]:[],q=p.length?c(t,p):t;if(p.length){O=p[p.length-1];let z=S;for(const U of p.slice(0,-1))z=z[U],D.unshift(z);L=D[0],N=L[O]}try{const z=(X,te)=>(v||u.schema).$_createError(X,N,te,u.state,a),U=await u.method(N,{schema:u.schema,linked:v,state:u.state,prefs:n,original:q,error:z,errorsArray:r.errorsArray,warn:(X,te)=>m.warnings.push((v||u.schema).$_createError(X,N,te,u.state,a)),message:(X,te)=>(v||u.schema).$_createError("external",N,te,u.state,a,{messages:X})});if(U===void 0||U===N)continue;if(U instanceof i.Report){if(m.tracer.log(u.schema,u.state,"rule","external","error"),E.push(U),a.abortEarly)break;continue}if(Array.isArray(U)&&U[e.symbols.errors]){if(m.tracer.log(u.schema,u.state,"rule","external","error"),E.push(...U),a.abortEarly)break;continue}L?(m.tracer.value(u.state,"rule",N,U,"external"),L[O]=U):(m.tracer.value(u.state,"rule",S,U,"external"),S=U)}catch(z){throw a.errors.label&&(z.message+=` (${u.label})`),z}}if(f.value=S,E.length)throw f.error=i.process(E,t,a),m.debug&&(f.error.debug=m.debug),f.error}if(!a.warnings&&!a.debug&&!a.artifacts)return f.value;const g={value:f.value};return m.warnings.length&&(g.warning=i.details(m.warnings)),m.debug&&(g.debug=m.debug),m.artifacts&&(g.artifacts=m.artifacts),g},r.Mainstay=class{constructor(t,l,n){this.externals=[],this.warnings=[],this.tracer=t,this.debug=l,this.links=n,this.shadow=null,this.artifacts=null,this._snapshots=[]}snapshot(){this._snapshots.push({externals:this.externals.slice(),warnings:this.warnings.slice()})}restore(){const t=this._snapshots.pop();this.externals=t.externals,this.warnings=t.warnings}commit(){this._snapshots.pop()}},r.entry=function(t,l,n){const{tracer:a,cleanup:f}=r.tracer(l,n),m=n.debug?[]:null,g=l._ids._schemaChain?new Map:null,S=new r.Mainstay(a,m,g),E=l._ids._schemaChain?[{schema:l}]:null,u=new s([],[],{mainstay:S,schemas:E}),p=R.validate(t,l,u,n);f&&l.$_root.untrace();const v=i.process(p.errors,t,n);return{value:p.value,error:v,mainstay:S}},r.tracer=function(t,l){return t.$_root._tracer?{tracer:t.$_root._tracer._register(t)}:l.debug?(o(t.$_root.trace,"Debug mode not supported"),{tracer:t.$_root.trace()._register(t),cleanup:!0}):{tracer:r.ignore}},R.validate=function(t,l,n,a,f={}){if(l.$_terms.whens&&(l=l._generate(t,n,a).schema),l._preferences&&(a=r.prefs(l,a)),l._cache&&a.cache){const v=l._cache.get(t);if(n.mainstay.tracer.debug(n,"validate","cached",!!v),v)return v}const m=(v,O,L)=>l.$_createError(v,t,O,L||n,a),g={original:t,prefs:a,schema:l,state:n,error:m,errorsArray:r.errorsArray,warn:(v,O,L)=>n.mainstay.warnings.push(m(v,O,L)),message:(v,O)=>l.$_createError("custom",t,O,n,a,{messages:v})};n.mainstay.tracer.entry(l,n);const S=l._definition;if(S.prepare&&t!==void 0&&a.convert){const v=S.prepare(t,g);if(v){if(n.mainstay.tracer.value(n,"prepare",t,v.value),v.errors)return r.finalize(v.value,[].concat(v.errors),g);t=v.value}}if(S.coerce&&t!==void 0&&a.convert&&(!S.coerce.from||S.coerce.from.includes(typeof t))){const v=S.coerce.method(t,g);if(v){if(n.mainstay.tracer.value(n,"coerced",t,v.value),v.errors)return r.finalize(v.value,[].concat(v.errors),g);t=v.value}}const E=l._flags.empty;E&&E.$_match(r.trim(t,l),n.nest(E),e.defaults)&&(n.mainstay.tracer.value(n,"empty",t,void 0),t=void 0);const u=f.presence||l._flags.presence||(l._flags._endedSwitch?null:a.presence);if(t===void 0){if(u==="forbidden")return r.finalize(t,null,g);if(u==="required")return r.finalize(t,[l.$_createError("any.required",t,null,n,a)],g);if(u==="optional"){if(l._flags.default!==e.symbols.deepDefault)return r.finalize(t,null,g);n.mainstay.tracer.value(n,"default",t,{}),t={}}}else if(u==="forbidden")return r.finalize(t,[l.$_createError("any.unknown",t,null,n,a)],g);const p=[];if(l._valids){const v=l._valids.get(t,n,a,l._flags.insensitive);if(v)return a.convert&&(n.mainstay.tracer.value(n,"valids",t,v.value),t=v.value),n.mainstay.tracer.filter(l,n,"valid",v),r.finalize(t,null,g);if(l._flags.only){const O=l.$_createError("any.only",t,{valids:l._valids.values({display:!0})},n,a);if(a.abortEarly)return r.finalize(t,[O],g);p.push(O)}}if(l._invalids){const v=l._invalids.get(t,n,a,l._flags.insensitive);if(v){n.mainstay.tracer.filter(l,n,"invalid",v);const O=l.$_createError("any.invalid",t,{invalids:l._invalids.values({display:!0})},n,a);if(a.abortEarly)return r.finalize(t,[O],g);p.push(O)}}if(S.validate){const v=S.validate(t,g);if(v&&(n.mainstay.tracer.value(n,"base",t,v.value),t=v.value,v.errors)){if(!Array.isArray(v.errors))return p.push(v.errors),r.finalize(t,p,g);if(v.errors.length)return p.push(...v.errors),r.finalize(t,p,g)}}return l._rules.length?r.rules(t,p,g):r.finalize(t,p,g)},r.rules=function(t,l,n){const{schema:a,state:f,prefs:m}=n;for(const g of a._rules){const S=a._definition.rules[g.method];if(S.convert&&m.convert){f.mainstay.tracer.log(a,f,"rule",g.name,"full");continue}let E,u=g.args;if(g._resolve.length){u=Object.assign({},u);for(const v of g._resolve){const O=S.argsByName.get(v),L=u[v].resolve(t,f,m),N=O.normalize?O.normalize(L):L,D=e.validateArg(N,null,O);if(D){E=a.$_createError("any.ref",L,{arg:v,ref:u[v],reason:D},f,m);break}u[v]=N}}E=E||S.validate(t,n,u,g);const p=r.rule(E,g);if(p.errors){if(f.mainstay.tracer.log(a,f,"rule",g.name,"error"),g.warn){f.mainstay.warnings.push(...p.errors);continue}if(m.abortEarly)return r.finalize(t,p.errors,n);l.push(...p.errors)}else f.mainstay.tracer.log(a,f,"rule",g.name,"pass"),f.mainstay.tracer.value(f,"rule",t,p.value,g.name),t=p.value}return r.finalize(t,l,n)},r.rule=function(t,l){return t instanceof i.Report?(r.error(t,l),{errors:[t],value:null}):Array.isArray(t)&&t[e.symbols.errors]?(t.forEach(n=>r.error(n,l)),{errors:t,value:null}):{errors:null,value:t}},r.error=function(t,l){return l.message&&t._setTemplate(l.message),t},r.finalize=function(t,l,n){l=l||[];const{schema:a,state:f,prefs:m}=n;if(l.length){const S=r.default("failover",void 0,l,n);S!==void 0&&(f.mainstay.tracer.value(f,"failover",t,S),t=S,l=[])}if(l.length&&a._flags.error)if(typeof a._flags.error=="function"){l=a._flags.error(l),Array.isArray(l)||(l=[l]);for(const S of l)o(S instanceof Error||S instanceof i.Report,"error() must return an Error object")}else l=[a._flags.error];if(t===void 0){const S=r.default("default",t,l,n);f.mainstay.tracer.value(f,"default",t,S),t=S}if(a._flags.cast&&t!==void 0){const S=a._definition.cast[a._flags.cast];if(S.from(t)){const E=S.to(t,n);f.mainstay.tracer.value(f,"cast",t,E,a._flags.cast),t=E}}if(a.$_terms.externals&&m.externals&&m._externals!==!1)for(const{method:S}of a.$_terms.externals)f.mainstay.externals.push({method:S,schema:a,state:f,label:i.label(a._flags,f,m)});const g={value:t,errors:l.length?l:null};return a._flags.result&&(g.value=a._flags.result==="strip"?void 0:n.original,f.mainstay.tracer.value(f,a._flags.result,t,g.value),f.shadow(t,a._flags.result)),a._cache&&m.cache!==!1&&!a._refs.length&&a._cache.set(n.original,g),t===void 0||g.errors||a._flags.artifact===void 0||(f.mainstay.artifacts=f.mainstay.artifacts||new Map,f.mainstay.artifacts.has(a._flags.artifact)||f.mainstay.artifacts.set(a._flags.artifact,[]),f.mainstay.artifacts.get(a._flags.artifact).push(f.path)),g},r.prefs=function(t,l){const n=l===e.defaults;return n&&t._preferences[e.symbols.prefs]?t._preferences[e.symbols.prefs]:(l=e.preferences(l,t._preferences),n&&(t._preferences[e.symbols.prefs]=l),l)},r.default=function(t,l,n,a){const{schema:f,state:m,prefs:g}=a,S=f._flags[t];if(g.noDefaults||S===void 0)return l;if(m.mainstay.tracer.log(f,m,"rule",t,"full"),!S)return S;if(typeof S=="function"){const E=S.length?[d(m.ancestors[0]),a]:[];try{return S(...E)}catch(u){return void n.push(f.$_createError(`any.${t}`,null,{error:u},m,g))}}return typeof S!="object"?S:S[e.symbols.literal]?S.literal:e.isResolvable(S)?S.resolve(l,m,g):d(S)},r.trim=function(t,l){if(typeof t!="string")return t;const n=l.$_getRule("trim");return n&&n.args.enabled?t.trim():t},r.ignore={active:!1,debug:h,entry:h,filter:h,log:h,resolve:h,value:h},r.errorsArray=function(){const t=[];return t[e.symbols.errors]=!0,t}},2036:(A,R,y)=>{const o=y(375),d=y(9474),h=y(8160),c={};A.exports=c.Values=class{constructor(e,i){this._values=new Set(e),this._refs=new Set(i),this._lowercase=c.lowercases(e),this._override=!1}get length(){return this._values.size+this._refs.size}add(e,i){h.isResolvable(e)?this._refs.has(e)||(this._refs.add(e),i&&i.register(e)):this.has(e,null,null,!1)||(this._values.add(e),typeof e=="string"&&this._lowercase.set(e.toLowerCase(),e))}static merge(e,i,s){if(e=e||new c.Values,i){if(i._override)return i.clone();for(const r of[...i._values,...i._refs])e.add(r)}if(s)for(const r of[...s._values,...s._refs])e.remove(r);return e.length?e:null}remove(e){h.isResolvable(e)?this._refs.delete(e):(this._values.delete(e),typeof e=="string"&&this._lowercase.delete(e.toLowerCase()))}has(e,i,s,r){return!!this.get(e,i,s,r)}get(e,i,s,r){if(!this.length)return!1;if(this._values.has(e))return{value:e};if(typeof e=="string"&&e&&r){const t=this._lowercase.get(e.toLowerCase());if(t)return{value:t}}if(!this._refs.size&&typeof e!="object")return!1;if(typeof e=="object"){for(const t of this._values)if(d(t,e))return{value:t}}if(i)for(const t of this._refs){const l=t.resolve(e,i,s,null,{in:!0});if(l===void 0)continue;const n=t.in&&typeof l=="object"?Array.isArray(l)?l:Object.keys(l):[l];for(const a of n)if(typeof a==typeof e){if(r&&e&&typeof e=="string"){if(a.toLowerCase()===e.toLowerCase())return{value:a,ref:t}}else if(d(a,e))return{value:a,ref:t}}}return!1}override(){this._override=!0}values(e){if(e&&e.display){const i=[];for(const s of[...this._values,...this._refs])s!==void 0&&i.push(s);return i}return Array.from([...this._values,...this._refs])}clone(){const e=new c.Values(this._values,this._refs);return e._override=this._override,e}concat(e){o(!e._override,"Cannot concat override set of values");const i=new c.Values([...this._values,...e._values],[...this._refs,...e._refs]);return i._override=this._override,i}describe(){const e=[];this._override&&e.push({override:!0});for(const i of this._values.values())e.push(i&&typeof i=="object"?{value:i}:i);for(const i of this._refs.values())e.push(i.describe());return e}},c.Values.prototype[h.symbols.values]=!0,c.Values.prototype.slice=c.Values.prototype.clone,c.lowercases=function(e){const i=new Map;if(e)for(const s of e)typeof s=="string"&&i.set(s.toLowerCase(),s);return i}},978:(A,R,y)=>{const o=y(375),d=y(8571),h=y(1687),c=y(9621),e={};A.exports=function(i,s,r={}){if(o(i&&typeof i=="object","Invalid defaults value: must be an object"),o(!s||s===!0||typeof s=="object","Invalid source value: must be true, falsy or an object"),o(typeof r=="object","Invalid options: must be an object"),!s)return null;if(r.shallow)return e.applyToDefaultsWithShallow(i,s,r);const t=d(i);if(s===!0)return t;const l=r.nullOverride!==void 0&&r.nullOverride;return h(t,s,{nullOverride:l,mergeArrays:!1})},e.applyToDefaultsWithShallow=function(i,s,r){const t=r.shallow;o(Array.isArray(t),"Invalid keys");const l=new Map,n=s===!0?null:new Set;for(let m of t){m=Array.isArray(m)?m:m.split(".");const g=c(i,m);g&&typeof g=="object"?l.set(g,n&&c(s,m)||g):n&&n.add(m)}const a=d(i,{},l);if(!n)return a;for(const m of n)e.reachCopy(a,s,m);const f=r.nullOverride!==void 0&&r.nullOverride;return h(a,s,{nullOverride:f,mergeArrays:!1})},e.reachCopy=function(i,s,r){for(const n of r){if(!(n in s))return;const a=s[n];if(typeof a!="object"||a===null)return;s=a}const t=s;let l=i;for(let n=0;n<r.length-1;++n){const a=r[n];typeof l[a]!="object"&&(l[a]={}),l=l[a]}l[r[r.length-1]]=t}},375:(A,R,y)=>{const o=y(7916);A.exports=function(d,...h){if(!d)throw h.length===1&&h[0]instanceof Error?h[0]:new o(h)}},8571:(A,R,y)=>{const o=y(9621),d=y(4277),h=y(7043),c={needsProtoHack:new Set([d.set,d.map,d.weakSet,d.weakMap])};A.exports=c.clone=function(e,i={},s=null){if(typeof e!="object"||e===null)return e;let r=c.clone,t=s;if(i.shallow){if(i.shallow!==!0)return c.cloneWithShallow(e,i);r=f=>f}else if(t){const f=t.get(e);if(f)return f}else t=new Map;const l=d.getInternalProto(e);if(l===d.buffer)return!1;if(l===d.date)return new Date(e.getTime());if(l===d.regex)return new RegExp(e);const n=c.base(e,l,i);if(n===e)return e;if(t&&t.set(e,n),l===d.set)for(const f of e)n.add(r(f,i,t));else if(l===d.map)for(const[f,m]of e)n.set(f,r(m,i,t));const a=h.keys(e,i);for(const f of a){if(f==="__proto__")continue;if(l===d.array&&f==="length"){n.length=e.length;continue}const m=Object.getOwnPropertyDescriptor(e,f);m?m.get||m.set?Object.defineProperty(n,f,m):m.enumerable?n[f]=r(e[f],i,t):Object.defineProperty(n,f,{enumerable:!1,writable:!0,configurable:!0,value:r(e[f],i,t)}):Object.defineProperty(n,f,{enumerable:!0,writable:!0,configurable:!0,value:r(e[f],i,t)})}return n},c.cloneWithShallow=function(e,i){const s=i.shallow;(i=Object.assign({},i)).shallow=!1;const r=new Map;for(const t of s){const l=o(e,t);typeof l!="object"&&typeof l!="function"||r.set(l,l)}return c.clone(e,i,r)},c.base=function(e,i,s){if(s.prototype===!1)return c.needsProtoHack.has(i)?new i.constructor:i===d.array?[]:{};const r=Object.getPrototypeOf(e);if(r&&r.isImmutable)return e;if(i===d.array){const t=[];return r!==i&&Object.setPrototypeOf(t,r),t}if(c.needsProtoHack.has(i)){const t=new r.constructor;return r!==i&&Object.setPrototypeOf(t,r),t}return Object.create(r)}},9474:(A,R,y)=>{const o=y(4277),d={mismatched:null};A.exports=function(h,c,e){return e=Object.assign({prototype:!0},e),!!d.isDeepEqual(h,c,e,[])},d.isDeepEqual=function(h,c,e,i){if(h===c)return h!==0||1/h==1/c;const s=typeof h;if(s!==typeof c||h===null||c===null)return!1;if(s==="function"){if(!e.deepFunction||h.toString()!==c.toString())return!1}else if(s!=="object")return h!=h&&c!=c;const r=d.getSharedType(h,c,!!e.prototype);switch(r){case o.buffer:return!1;case o.promise:return h===c;case o.regex:return h.toString()===c.toString();case d.mismatched:return!1}for(let t=i.length-1;t>=0;--t)if(i[t].isSame(h,c))return!0;i.push(new d.SeenEntry(h,c));try{return!!d.isDeepEqualObj(r,h,c,e,i)}finally{i.pop()}},d.getSharedType=function(h,c,e){if(e)return Object.getPrototypeOf(h)!==Object.getPrototypeOf(c)?d.mismatched:o.getInternalProto(h);const i=o.getInternalProto(h);return i!==o.getInternalProto(c)?d.mismatched:i},d.valueOf=function(h){const c=h.valueOf;if(c===void 0)return h;try{return c.call(h)}catch(e){return e}},d.hasOwnEnumerableProperty=function(h,c){return Object.prototype.propertyIsEnumerable.call(h,c)},d.isSetSimpleEqual=function(h,c){for(const e of Set.prototype.values.call(h))if(!Set.prototype.has.call(c,e))return!1;return!0},d.isDeepEqualObj=function(h,c,e,i,s){const{isDeepEqual:r,valueOf:t,hasOwnEnumerableProperty:l}=d,{keys:n,getOwnPropertySymbols:a}=Object;if(h===o.array){if(!i.part){if(c.length!==e.length)return!1;for(let E=0;E<c.length;++E)if(!r(c[E],e[E],i,s))return!1;return!0}for(const E of c)for(const u of e)if(r(E,u,i,s))return!0}else if(h===o.set){if(c.size!==e.size)return!1;if(!d.isSetSimpleEqual(c,e)){const E=new Set(Set.prototype.values.call(e));for(const u of Set.prototype.values.call(c)){if(E.delete(u))continue;let p=!1;for(const v of E)if(r(u,v,i,s)){E.delete(v),p=!0;break}if(!p)return!1}}}else if(h===o.map){if(c.size!==e.size)return!1;for(const[E,u]of Map.prototype.entries.call(c))if(u===void 0&&!Map.prototype.has.call(e,E)||!r(u,Map.prototype.get.call(e,E),i,s))return!1}else if(h===o.error&&(c.name!==e.name||c.message!==e.message))return!1;const f=t(c),m=t(e);if((c!==f||e!==m)&&!r(f,m,i,s))return!1;const g=n(c);if(!i.part&&g.length!==n(e).length&&!i.skip)return!1;let S=0;for(const E of g)if(i.skip&&i.skip.includes(E))e[E]===void 0&&++S;else if(!l(e,E)||!r(c[E],e[E],i,s))return!1;if(!i.part&&g.length-S!==n(e).length)return!1;if(i.symbols!==!1){const E=a(c),u=new Set(a(e));for(const p of E){if(!i.skip||!i.skip.includes(p)){if(l(c,p)){if(!l(e,p)||!r(c[p],e[p],i,s))return!1}else if(l(e,p))return!1}u.delete(p)}for(const p of u)if(l(e,p))return!1}return!0},d.SeenEntry=class{constructor(h,c){this.obj=h,this.ref=c}isSame(h,c){return this.obj===h&&this.ref===c}}},7916:(A,R,y)=>{const o=y(8761);A.exports=class extends Error{constructor(d){super(d.filter(h=>h!=="").map(h=>typeof h=="string"?h:h instanceof Error?h.message:o(h)).join(" ")||"Unknown error"),typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,R.assert)}}},5277:A=>{const R={};A.exports=function(y){if(!y)return"";let o="";for(let d=0;d<y.length;++d){const h=y.charCodeAt(d);R.isSafe(h)?o+=y[d]:o+=R.escapeHtmlChar(h)}return o},R.escapeHtmlChar=function(y){return R.namedHtml.get(y)||(y>=256?"&#"+y+";":`&#x${y.toString(16).padStart(2,"0")};`)},R.isSafe=function(y){return R.safeCharCodes.has(y)},R.namedHtml=new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[34,"&quot;"],[160,"&nbsp;"],[162,"&cent;"],[163,"&pound;"],[164,"&curren;"],[169,"&copy;"],[174,"&reg;"]]),R.safeCharCodes=function(){const y=new Set;for(let o=32;o<123;++o)(o>=97||o>=65&&o<=90||o>=48&&o<=57||o===32||o===46||o===44||o===45||o===58||o===95)&&y.add(o);return y}()},6064:A=>{A.exports=function(R){return R.replace(/[\^\$\.\*\+\-\?\=\!\:\|\\\/\(\)\[\]\{\}\,]/g,"\\$&")}},738:A=>{A.exports=function(){}},1687:(A,R,y)=>{const o=y(375),d=y(8571),h=y(7043),c={};A.exports=c.merge=function(e,i,s){if(o(e&&typeof e=="object","Invalid target value: must be an object"),o(i==null||typeof i=="object","Invalid source value: must be null, undefined, or an object"),!i)return e;if(s=Object.assign({nullOverride:!0,mergeArrays:!0},s),Array.isArray(i)){o(Array.isArray(e),"Cannot merge array onto an object"),s.mergeArrays||(e.length=0);for(let t=0;t<i.length;++t)e.push(d(i[t],{symbols:s.symbols}));return e}const r=h.keys(i,s);for(let t=0;t<r.length;++t){const l=r[t];if(l==="__proto__"||!Object.prototype.propertyIsEnumerable.call(i,l))continue;const n=i[l];if(n&&typeof n=="object"){if(e[l]===n)continue;!e[l]||typeof e[l]!="object"||Array.isArray(e[l])!==Array.isArray(n)||n instanceof Date||n instanceof RegExp?e[l]=d(n,{symbols:s.symbols}):c.merge(e[l],n,s)}else(n!=null||s.nullOverride)&&(e[l]=n)}return e}},9621:(A,R,y)=>{const o=y(375),d={};A.exports=function(h,c,e){if(c===!1||c==null)return h;typeof(e=e||{})=="string"&&(e={separator:e});const i=Array.isArray(c);o(!i||!e.separator,"Separator option is not valid for array-based chain");const s=i?c:c.split(e.separator||".");let r=h;for(let t=0;t<s.length;++t){let l=s[t];const n=e.iterables&&d.iterables(r);if(Array.isArray(r)||n==="set"){const a=Number(l);Number.isInteger(a)&&(l=a<0?r.length+a:a)}if(!r||typeof r=="function"&&e.functions===!1||!n&&r[l]===void 0){o(!e.strict||t+1===s.length,"Missing segment",l,"in reach path ",c),o(typeof r=="object"||e.functions===!0||typeof r!="function","Invalid segment",l,"in reach path ",c),r=e.default;break}r=n?n==="set"?[...r][l]:r.get(l):r[l]}return r},d.iterables=function(h){return h instanceof Set?"set":h instanceof Map?"map":void 0}},8761:A=>{A.exports=function(...R){try{return JSON.stringify(...R)}catch(y){return"[Cannot display object: "+y.message+"]"}}},4277:(A,R)=>{const y={};R=A.exports={array:Array.prototype,buffer:!1,date:Date.prototype,error:Error.prototype,generic:Object.prototype,map:Map.prototype,promise:Promise.prototype,regex:RegExp.prototype,set:Set.prototype,weakMap:WeakMap.prototype,weakSet:WeakSet.prototype},y.typeMap=new Map([["[object Error]",R.error],["[object Map]",R.map],["[object Promise]",R.promise],["[object Set]",R.set],["[object WeakMap]",R.weakMap],["[object WeakSet]",R.weakSet]]),R.getInternalProto=function(o){if(Array.isArray(o))return R.array;if(o instanceof Date)return R.date;if(o instanceof RegExp)return R.regex;if(o instanceof Error)return R.error;const d=Object.prototype.toString.call(o);return y.typeMap.get(d)||R.generic}},7043:(A,R)=>{R.keys=function(y,o={}){return o.symbols!==!1?Reflect.ownKeys(y):Object.getOwnPropertyNames(y)}},3652:(A,R,y)=>{const o=y(375),d={};R.Sorter=class{constructor(){this._items=[],this.nodes=[]}add(h,c){const e=[].concat((c=c||{}).before||[]),i=[].concat(c.after||[]),s=c.group||"?",r=c.sort||0;o(!e.includes(s),`Item cannot come before itself: ${s}`),o(!e.includes("?"),"Item cannot come before unassociated items"),o(!i.includes(s),`Item cannot come after itself: ${s}`),o(!i.includes("?"),"Item cannot come after unassociated items"),Array.isArray(h)||(h=[h]);for(const t of h){const l={seq:this._items.length,sort:r,before:e,after:i,group:s,node:t};this._items.push(l)}if(!c.manual){const t=this._sort();o(t,"item",s!=="?"?`added into group ${s}`:"","created a dependencies error")}return this.nodes}merge(h){Array.isArray(h)||(h=[h]);for(const e of h)if(e)for(const i of e._items)this._items.push(Object.assign({},i));this._items.sort(d.mergeSort);for(let e=0;e<this._items.length;++e)this._items[e].seq=e;const c=this._sort();return o(c,"merge created a dependencies error"),this.nodes}sort(){const h=this._sort();return o(h,"sort created a dependencies error"),this.nodes}_sort(){const h={},c=Object.create(null),e=Object.create(null);for(const l of this._items){const n=l.seq,a=l.group;e[a]=e[a]||[],e[a].push(n),h[n]=l.before;for(const f of l.after)c[f]=c[f]||[],c[f].push(n)}for(const l in h){const n=[];for(const a in h[l]){const f=h[l][a];e[f]=e[f]||[],n.push(...e[f])}h[l]=n}for(const l in c)if(e[l])for(const n of e[l])h[n].push(...c[l]);const i={};for(const l in h){const n=h[l];for(const a of n)i[a]=i[a]||[],i[a].push(l)}const s={},r=[];for(let l=0;l<this._items.length;++l){let n=l;if(i[l]){n=null;for(let a=0;a<this._items.length;++a){if(s[a]===!0)continue;i[a]||(i[a]=[]);const f=i[a].length;let m=0;for(let g=0;g<f;++g)s[i[a][g]]&&++m;if(m===f){n=a;break}}}n!==null&&(s[n]=!0,r.push(n))}if(r.length!==this._items.length)return!1;const t={};for(const l of this._items)t[l.seq]=l;this._items=[],this.nodes=[];for(const l of r){const n=t[l];this.nodes.push(n.node),this._items.push(n)}return!0}},d.mergeSort=(h,c)=>h.sort===c.sort?0:h.sort<c.sort?-1:1},5380:(A,R,y)=>{const o=y(443),d=y(2178),h={minDomainSegments:2,nonAsciiRx:/[^\x00-\x7f]/,domainControlRx:/[\x00-\x20@\:\/\\#!\$&\'\(\)\*\+,;=\?]/,tldSegmentRx:/^[a-zA-Z](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,domainSegmentRx:/^[a-zA-Z0-9](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,URL:o.URL||URL};R.analyze=function(c,e={}){if(!c)return d.code("DOMAIN_NON_EMPTY_STRING");if(typeof c!="string")throw new Error("Invalid input: domain must be a string");if(c.length>256)return d.code("DOMAIN_TOO_LONG");if(h.nonAsciiRx.test(c)){if(e.allowUnicode===!1)return d.code("DOMAIN_INVALID_UNICODE_CHARS");c=c.normalize("NFC")}if(h.domainControlRx.test(c))return d.code("DOMAIN_INVALID_CHARS");c=h.punycode(c),e.allowFullyQualified&&c[c.length-1]==="."&&(c=c.slice(0,-1));const i=e.minDomainSegments||h.minDomainSegments,s=c.split(".");if(s.length<i)return d.code("DOMAIN_SEGMENTS_COUNT");if(e.maxDomainSegments&&s.length>e.maxDomainSegments)return d.code("DOMAIN_SEGMENTS_COUNT_MAX");const r=e.tlds;if(r){const t=s[s.length-1].toLowerCase();if(r.deny&&r.deny.has(t)||r.allow&&!r.allow.has(t))return d.code("DOMAIN_FORBIDDEN_TLDS")}for(let t=0;t<s.length;++t){const l=s[t];if(!l.length)return d.code("DOMAIN_EMPTY_SEGMENT");if(l.length>63)return d.code("DOMAIN_LONG_SEGMENT");if(t<s.length-1){if(!h.domainSegmentRx.test(l))return d.code("DOMAIN_INVALID_CHARS")}else if(!h.tldSegmentRx.test(l))return d.code("DOMAIN_INVALID_TLDS_CHARS")}return null},R.isValid=function(c,e){return!R.analyze(c,e)},h.punycode=function(c){c.includes("%")&&(c=c.replace(/%/g,"%25"));try{return new h.URL(`http://${c}`).host}catch{return c}}},1745:(A,R,y)=>{const o=y(9848),d=y(5380),h=y(2178),c={nonAsciiRx:/[^\x00-\x7f]/,encoder:new(o.TextEncoder||TextEncoder)};R.analyze=function(e,i){return c.email(e,i)},R.isValid=function(e,i){return!c.email(e,i)},c.email=function(e,i={}){if(typeof e!="string")throw new Error("Invalid input: email must be a string");if(!e)return h.code("EMPTY_STRING");const s=!c.nonAsciiRx.test(e);if(!s){if(i.allowUnicode===!1)return h.code("FORBIDDEN_UNICODE");e=e.normalize("NFC")}const r=e.split("@");if(r.length!==2)return r.length>2?h.code("MULTIPLE_AT_CHAR"):h.code("MISSING_AT_CHAR");const[t,l]=r;if(!t)return h.code("EMPTY_LOCAL");if(!i.ignoreLength){if(e.length>254)return h.code("ADDRESS_TOO_LONG");if(c.encoder.encode(t).length>64)return h.code("LOCAL_TOO_LONG")}return c.local(t,s)||d.analyze(l,i)},c.local=function(e,i){const s=e.split(".");for(const r of s){if(!r.length)return h.code("EMPTY_LOCAL_SEGMENT");if(i){if(!c.atextRx.test(r))return h.code("INVALID_LOCAL_CHARS")}else for(const t of r){if(c.atextRx.test(t))continue;const l=c.binary(t);if(!c.atomRx.test(l))return h.code("INVALID_LOCAL_CHARS")}}},c.binary=function(e){return Array.from(c.encoder.encode(e)).map(i=>String.fromCharCode(i)).join("")},c.atextRx=/^[\w!#\$%&'\*\+\-/=\?\^`\{\|\}~]+$/,c.atomRx=new RegExp(["(?:[\\xc2-\\xdf][\\x80-\\xbf])","(?:\\xe0[\\xa0-\\xbf][\\x80-\\xbf])|(?:[\\xe1-\\xec][\\x80-\\xbf]{2})|(?:\\xed[\\x80-\\x9f][\\x80-\\xbf])|(?:[\\xee-\\xef][\\x80-\\xbf]{2})","(?:\\xf0[\\x90-\\xbf][\\x80-\\xbf]{2})|(?:[\\xf1-\\xf3][\\x80-\\xbf]{3})|(?:\\xf4[\\x80-\\x8f][\\x80-\\xbf]{2})"].join("|"))},2178:(A,R)=>{R.codes={EMPTY_STRING:"Address must be a non-empty string",FORBIDDEN_UNICODE:"Address contains forbidden Unicode characters",MULTIPLE_AT_CHAR:"Address cannot contain more than one @ character",MISSING_AT_CHAR:"Address must contain one @ character",EMPTY_LOCAL:"Address local part cannot be empty",ADDRESS_TOO_LONG:"Address too long",LOCAL_TOO_LONG:"Address local part too long",EMPTY_LOCAL_SEGMENT:"Address local part contains empty dot-separated segment",INVALID_LOCAL_CHARS:"Address local part contains invalid character",DOMAIN_NON_EMPTY_STRING:"Domain must be a non-empty string",DOMAIN_TOO_LONG:"Domain too long",DOMAIN_INVALID_UNICODE_CHARS:"Domain contains forbidden Unicode characters",DOMAIN_INVALID_CHARS:"Domain contains invalid character",DOMAIN_INVALID_TLDS_CHARS:"Domain contains invalid tld character",DOMAIN_SEGMENTS_COUNT:"Domain lacks the minimum required number of segments",DOMAIN_SEGMENTS_COUNT_MAX:"Domain contains too many segments",DOMAIN_FORBIDDEN_TLDS:"Domain uses forbidden TLD",DOMAIN_EMPTY_SEGMENT:"Domain contains empty dot-separated segment",DOMAIN_LONG_SEGMENT:"Domain contains dot-separated segment that is too long"},R.code=function(y){return{code:y,error:R.codes[y]}}},9959:(A,R,y)=>{const o=y(375),d=y(5752);R.regex=function(h={}){o(h.cidr===void 0||typeof h.cidr=="string","options.cidr must be a string");const c=h.cidr?h.cidr.toLowerCase():"optional";o(["required","optional","forbidden"].includes(c),"options.cidr must be one of required, optional, forbidden"),o(h.version===void 0||typeof h.version=="string"||Array.isArray(h.version),"options.version must be a string or an array of string");let e=h.version||["ipv4","ipv6","ipvfuture"];Array.isArray(e)||(e=[e]),o(e.length>=1,"options.version must have at least 1 version specified");for(let r=0;r<e.length;++r)o(typeof e[r]=="string","options.version must only contain strings"),e[r]=e[r].toLowerCase(),o(["ipv4","ipv6","ipvfuture"].includes(e[r]),"options.version contains unknown version "+e[r]+" - must be one of ipv4, ipv6, ipvfuture");e=Array.from(new Set(e));const i=`(?:${e.map(r=>{if(c==="forbidden")return d.ip[r];const t=`\\/${r==="ipv4"?d.ip.v4Cidr:d.ip.v6Cidr}`;return c==="required"?`${d.ip[r]}${t}`:`${d.ip[r]}(?:${t})?`}).join("|")})`,s=new RegExp(`^${i}$`);return{cidr:c,versions:e,regex:s,raw:i}}},5752:(A,R,y)=>{const o=y(375),d=y(6064),h={generate:function(){const c={},e="\\dA-Fa-f",i="["+e+"]",s="\\w-\\.~",r="!\\$&'\\(\\)\\*\\+,;=",t="%"+e,l=s+t+r+":@",n="["+l+"]",a="(?:0{0,2}\\d|0?[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])";c.ipv4address="(?:"+a+"\\.){3}"+a;const f=i+"{1,4}",m="(?:"+f+":"+f+"|"+c.ipv4address+")",g="(?:"+f+":){6}"+m,S="::(?:"+f+":){5}"+m,E="(?:"+f+")?::(?:"+f+":){4}"+m,u="(?:(?:"+f+":){0,1}"+f+")?::(?:"+f+":){3}"+m,p="(?:(?:"+f+":){0,2}"+f+")?::(?:"+f+":){2}"+m,v="(?:(?:"+f+":){0,3}"+f+")?::"+f+":"+m,O="(?:(?:"+f+":){0,4}"+f+")?::"+m,L="(?:(?:"+f+":){0,5}"+f+")?::"+f,N="(?:(?:"+f+":){0,6}"+f+")?::";c.ipv4Cidr="(?:\\d|[1-2]\\d|3[0-2])",c.ipv6Cidr="(?:0{0,2}\\d|0?[1-9]\\d|1[01]\\d|12[0-8])",c.ipv6address="(?:"+g+"|"+S+"|"+E+"|"+u+"|"+p+"|"+v+"|"+O+"|"+L+"|"+N+")",c.ipvFuture="v"+i+"+\\.["+s+r+":]+",c.scheme="[a-zA-Z][a-zA-Z\\d+-\\.]*",c.schemeRegex=new RegExp(c.scheme);const D="["+s+t+r+":]*",q="["+s+t+r+"]{1,255}",z="(?:\\[(?:"+c.ipv6address+"|"+c.ipvFuture+")\\]|"+c.ipv4address+"|"+q+")",U="(?:"+D+"@)?"+z+"(?::\\d*)?",X="(?:"+D+"@)?("+z+")(?::\\d*)?",te=n+"*",W=n+"+",G="(?:\\/"+te+")*",J="\\/(?:"+W+G+")?",Q=W+G,se="["+s+t+r+"@]+"+G,fe="(?:\\/\\/\\/"+te+G+")";return c.hierPart="(?:(?:\\/\\/"+U+G+")|"+J+"|"+Q+"|"+fe+")",c.hierPartCapture="(?:(?:\\/\\/"+X+G+")|"+J+"|"+Q+")",c.relativeRef="(?:(?:\\/\\/"+U+G+")|"+J+"|"+se+"|)",c.relativeRefCapture="(?:(?:\\/\\/"+X+G+")|"+J+"|"+se+"|)",c.query="["+l+"\\/\\?]*(?=#|$)",c.queryWithSquareBrackets="["+l+"\\[\\]\\/\\?]*(?=#|$)",c.fragment="["+l+"\\/\\?]*",c}};h.rfc3986=h.generate(),R.ip={v4Cidr:h.rfc3986.ipv4Cidr,v6Cidr:h.rfc3986.ipv6Cidr,ipv4:h.rfc3986.ipv4address,ipv6:h.rfc3986.ipv6address,ipvfuture:h.rfc3986.ipvFuture},h.createRegex=function(c){const e=h.rfc3986,i="(?:\\?"+(c.allowQuerySquareBrackets?e.queryWithSquareBrackets:e.query)+")?(?:#"+e.fragment+")?",s=c.domain?e.relativeRefCapture:e.relativeRef;if(c.relativeOnly)return h.wrap(s+i);let r="";if(c.scheme){o(c.scheme instanceof RegExp||typeof c.scheme=="string"||Array.isArray(c.scheme),"scheme must be a RegExp, String, or Array");const n=[].concat(c.scheme);o(n.length>=1,"scheme must have at least 1 scheme specified");const a=[];for(let f=0;f<n.length;++f){const m=n[f];o(m instanceof RegExp||typeof m=="string","scheme at position "+f+" must be a RegExp or String"),m instanceof RegExp?a.push(m.source.toString()):(o(e.schemeRegex.test(m),"scheme at position "+f+" must be a valid scheme"),a.push(d(m)))}r=a.join("|")}const t="(?:"+(r?"(?:"+r+")":e.scheme)+":"+(c.domain?e.hierPartCapture:e.hierPart)+")",l=c.allowRelative?"(?:"+t+"|"+s+")":t;return h.wrap(l+i,r)},h.wrap=function(c,e){return{raw:c=`(?=.)(?!https?:/(?:$|[^/]))(?!https?:///)(?!https?:[^/])${c}`,regex:new RegExp(`^${c}$`),scheme:e}},h.uriRegex=h.createRegex({}),R.regex=function(c={}){return c.scheme||c.allowRelative||c.relativeOnly||c.allowQuerySquareBrackets||c.domain?h.createRegex(c):h.uriRegex}},1447:(A,R)=>{const y={operators:["!","^","*","/","%","+","-","<","<=",">",">=","==","!=","&&","||","??"],operatorCharacters:["!","^","*","/","%","+","-","<","=",">","&","|","?"],operatorsOrder:[["^"],["*","/","%"],["+","-"],["<","<=",">",">="],["==","!="],["&&"],["||","??"]],operatorsPrefix:["!","n"],literals:{'"':'"',"`":"`","'":"'","[":"]"},numberRx:/^(?:[0-9]*(\.[0-9]*)?){1}$/,tokenRx:/^[\w\$\#\.\@\:\{\}]+$/,symbol:Symbol("formula"),settings:Symbol("settings")};R.Parser=class{constructor(o,d={}){if(!d[y.settings]&&d.constants)for(const h in d.constants){const c=d.constants[h];if(c!==null&&!["boolean","number","string"].includes(typeof c))throw new Error(`Formula constant ${h} contains invalid ${typeof c} value type`)}this.settings=d[y.settings]?d:Object.assign({[y.settings]:!0,constants:{},functions:{}},d),this.single=null,this._parts=null,this._parse(o)}_parse(o){let d=[],h="",c=0,e=!1;const i=r=>{if(c)throw new Error("Formula missing closing parenthesis");const t=d.length?d[d.length-1]:null;if(e||h||r){if(t&&t.type==="reference"&&r===")")return t.type="function",t.value=this._subFormula(h,t.value),void(h="");if(r===")"){const l=new R.Parser(h,this.settings);d.push({type:"segment",value:l})}else if(e){if(e==="]")return d.push({type:"reference",value:h}),void(h="");d.push({type:"literal",value:h})}else if(y.operatorCharacters.includes(h))t&&t.type==="operator"&&y.operators.includes(t.value+h)?t.value+=h:d.push({type:"operator",value:h});else if(h.match(y.numberRx))d.push({type:"constant",value:parseFloat(h)});else if(this.settings.constants[h]!==void 0)d.push({type:"constant",value:this.settings.constants[h]});else{if(!h.match(y.tokenRx))throw new Error(`Formula contains invalid token: ${h}`);d.push({type:"reference",value:h})}h=""}};for(const r of o)e?r===e?(i(),e=!1):h+=r:c?r==="("?(h+=r,++c):r===")"?(--c,c?h+=r:i(r)):h+=r:r in y.literals?e=y.literals[r]:r==="("?(i(),++c):y.operatorCharacters.includes(r)?(i(),h=r,i()):r!==" "?h+=r:i();i(),d=d.map((r,t)=>r.type!=="operator"||r.value!=="-"||t&&d[t-1].type!=="operator"?r:{type:"operator",value:"n"});let s=!1;for(const r of d){if(r.type==="operator"){if(y.operatorsPrefix.includes(r.value))continue;if(!s)throw new Error("Formula contains an operator in invalid position");if(!y.operators.includes(r.value))throw new Error(`Formula contains an unknown operator ${r.value}`)}else if(s)throw new Error("Formula missing expected operator");s=!s}if(!s)throw new Error("Formula contains invalid trailing operator");d.length===1&&["reference","literal","constant"].includes(d[0].type)&&(this.single={type:d[0].type==="reference"?"reference":"value",value:d[0].value}),this._parts=d.map(r=>{if(r.type==="operator")return y.operatorsPrefix.includes(r.value)?r:r.value;if(r.type!=="reference")return r.value;if(this.settings.tokenRx&&!this.settings.tokenRx.test(r.value))throw new Error(`Formula contains invalid reference ${r.value}`);return this.settings.reference?this.settings.reference(r.value):y.reference(r.value)})}_subFormula(o,d){const h=this.settings.functions[d];if(typeof h!="function")throw new Error(`Formula contains unknown function ${d}`);let c=[];if(o){let e="",i=0,s=!1;const r=()=>{if(!e)throw new Error(`Formula contains function ${d} with invalid arguments ${o}`);c.push(e),e=""};for(let t=0;t<o.length;++t){const l=o[t];s?(e+=l,l===s&&(s=!1)):l in y.literals&&!i?(e+=l,s=y.literals[l]):l!==","||i?(e+=l,l==="("?++i:l===")"&&--i):r()}r()}return c=c.map(e=>new R.Parser(e,this.settings)),function(e){const i=[];for(const s of c)i.push(s.evaluate(e));return h.call(e,...i)}}evaluate(o){const d=this._parts.slice();for(let h=d.length-2;h>=0;--h){const c=d[h];if(c&&c.type==="operator"){const e=d[h+1];d.splice(h+1,1);const i=y.evaluate(e,o);d[h]=y.single(c.value,i)}}return y.operatorsOrder.forEach(h=>{for(let c=1;c<d.length-1;)if(h.includes(d[c])){const e=d[c],i=y.evaluate(d[c-1],o),s=y.evaluate(d[c+1],o);d.splice(c,2);const r=y.calculate(e,i,s);d[c-1]=r===0?0:r}else c+=2}),y.evaluate(d[0],o)}},R.Parser.prototype[y.symbol]=!0,y.reference=function(o){return function(d){return d&&d[o]!==void 0?d[o]:null}},y.evaluate=function(o,d){return o===null?null:typeof o=="function"?o(d):o[y.symbol]?o.evaluate(d):o},y.single=function(o,d){if(o==="!")return!d;const h=-d;return h===0?0:h},y.calculate=function(o,d,h){if(o==="??")return y.exists(d)?d:h;if(typeof d=="string"||typeof h=="string"){if(o==="+")return(d=y.exists(d)?d:"")+(y.exists(h)?h:"")}else switch(o){case"^":return Math.pow(d,h);case"*":return d*h;case"/":return d/h;case"%":return d%h;case"+":return d+h;case"-":return d-h}switch(o){case"<":return d<h;case"<=":return d<=h;case">":return d>h;case">=":return d>=h;case"==":return d===h;case"!=":return d!==h;case"&&":return d&&h;case"||":return d||h}return null},y.exists=function(o){return o!=null}},9926:()=>{},5688:()=>{},9708:()=>{},1152:()=>{},443:()=>{},9848:()=>{},5934:A=>{A.exports=JSON.parse('{"version":"17.12.2"}')}},I={},function A(R){var y=I[R];if(y!==void 0)return y.exports;var o=I[R]={exports:{}};return j[R](o,o.exports,A),o.exports}(5107);var j,I})})(it);var Le=it.exports;const fr=["ᄀ-ᇹ"," -〿","ぁ-ゔ","゙-ゞ","ァ-ヾ","ㄱ-ㆎ","㆐-㆟","㈀-㈜","㈠-㉃","㉠-㊰","㋀-㍶","㍻-㏝","㏠-㏾","一-龥","가-힣","-","豈-鶴"],mr=["︰-﹄","﹉-﹒","﹔-﹫","!-~","¢-₩"];var hr={charsWide:fr,charsFullWidth:mr};const{charsWide:dr,charsFullWidth:pr}=hr,at=new RegExp(`[${dr.join("")}${pr.join("")}]`,"g"),gr=w=>w.replace(at,"xx").length;var yr={default:gr,charsRegex:at};/*!
2
+ * is-extglob <https://github.com/jonschlinkert/is-extglob>
3
+ *
4
+ * Copyright (c) 2014-2016, Jon Schlinkert.
5
+ * Licensed under the MIT License.
6
+ */var vr=function($){if(typeof $!="string"||$==="")return!1;for(var j;j=/(\\).|([@?!+*]\(.*\))/g.exec($);){if(j[2])return!0;$=$.slice(j.index+j[0].length)}return!1};/*!
7
+ * is-glob <https://github.com/jonschlinkert/is-glob>
8
+ *
9
+ * Copyright (c) 2014-2017, Jon Schlinkert.
10
+ * Released under the MIT License.
11
+ */var br=vr,ot={"{":"}","(":")","[":"]"},_r=function(w){if(w[0]==="!")return!0;for(var $=0,j=-2,I=-2,A=-2,R=-2,y=-2;$<w.length;){if(w[$]==="*"||w[$+1]==="?"&&/[\].+)]/.test(w[$])||I!==-1&&w[$]==="["&&w[$+1]!=="]"&&(I<$&&(I=w.indexOf("]",$)),I>$&&(y===-1||y>I||(y=w.indexOf("\\",$),y===-1||y>I)))||A!==-1&&w[$]==="{"&&w[$+1]!=="}"&&(A=w.indexOf("}",$),A>$&&(y=w.indexOf("\\",$),y===-1||y>A))||R!==-1&&w[$]==="("&&w[$+1]==="?"&&/[:!=]/.test(w[$+2])&&w[$+3]!==")"&&(R=w.indexOf(")",$),R>$&&(y=w.indexOf("\\",$),y===-1||y>R))||j!==-1&&w[$]==="("&&w[$+1]!=="|"&&(j<$&&(j=w.indexOf("|",$)),j!==-1&&w[j+1]!==")"&&(R=w.indexOf(")",j),R>j&&(y=w.indexOf("\\",j),y===-1||y>R))))return!0;if(w[$]==="\\"){var o=w[$+1];$+=2;var d=ot[o];if(d){var h=w.indexOf(d,$);h!==-1&&($=h+1)}if(w[$]==="!")return!0}else $++}return!1},wr=function(w){if(w[0]==="!")return!0;for(var $=0;$<w.length;){if(/[*?{}()[\]]/.test(w[$]))return!0;if(w[$]==="\\"){var j=w[$+1];$+=2;var I=ot[j];if(I){var A=w.indexOf(I,$);A!==-1&&($=A+1)}if(w[$]==="!")return!0}else $++}return!1},Er=function($,j){if(typeof $!="string"||$==="")return!1;if(br($))return!0;var I=_r;return j&&j.strict===!1&&(I=wr),I($)},Ie={exports:{}};(function(w,$){var j={};$=w.exports=u;var I;typeof tr=="object"&&j&&j.NODE_DEBUG&&/\bsemver\b/i.test(j.NODE_DEBUG)?I=function(){var b=Array.prototype.slice.call(arguments,0);b.unshift("SEMVER"),console.log.apply(console,b)}:I=function(){},$.SEMVER_SPEC_VERSION="2.0.0";var A=256,R=Number.MAX_SAFE_INTEGER||9007199254740991,y=16,o=A-6,d=$.re=[],h=$.safeRe=[],c=$.src=[],e=$.tokens={},i=0;function s(b){e[b]=i++}var r="[a-zA-Z0-9-]",t=[["\\s",1],["\\d",A],[r,o]];function l(b){for(var x=0;x<t.length;x++){var k=t[x][0],T=t[x][1];b=b.split(k+"*").join(k+"{0,"+T+"}").split(k+"+").join(k+"{1,"+T+"}")}return b}s("NUMERICIDENTIFIER"),c[e.NUMERICIDENTIFIER]="0|[1-9]\\d*",s("NUMERICIDENTIFIERLOOSE"),c[e.NUMERICIDENTIFIERLOOSE]="\\d+",s("NONNUMERICIDENTIFIER"),c[e.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-]"+r+"*",s("MAINVERSION"),c[e.MAINVERSION]="("+c[e.NUMERICIDENTIFIER]+")\\.("+c[e.NUMERICIDENTIFIER]+")\\.("+c[e.NUMERICIDENTIFIER]+")",s("MAINVERSIONLOOSE"),c[e.MAINVERSIONLOOSE]="("+c[e.NUMERICIDENTIFIERLOOSE]+")\\.("+c[e.NUMERICIDENTIFIERLOOSE]+")\\.("+c[e.NUMERICIDENTIFIERLOOSE]+")",s("PRERELEASEIDENTIFIER"),c[e.PRERELEASEIDENTIFIER]="(?:"+c[e.NUMERICIDENTIFIER]+"|"+c[e.NONNUMERICIDENTIFIER]+")",s("PRERELEASEIDENTIFIERLOOSE"),c[e.PRERELEASEIDENTIFIERLOOSE]="(?:"+c[e.NUMERICIDENTIFIERLOOSE]+"|"+c[e.NONNUMERICIDENTIFIER]+")",s("PRERELEASE"),c[e.PRERELEASE]="(?:-("+c[e.PRERELEASEIDENTIFIER]+"(?:\\."+c[e.PRERELEASEIDENTIFIER]+")*))",s("PRERELEASELOOSE"),c[e.PRERELEASELOOSE]="(?:-?("+c[e.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+c[e.PRERELEASEIDENTIFIERLOOSE]+")*))",s("BUILDIDENTIFIER"),c[e.BUILDIDENTIFIER]=r+"+",s("BUILD"),c[e.BUILD]="(?:\\+("+c[e.BUILDIDENTIFIER]+"(?:\\."+c[e.BUILDIDENTIFIER]+")*))",s("FULL"),s("FULLPLAIN"),c[e.FULLPLAIN]="v?"+c[e.MAINVERSION]+c[e.PRERELEASE]+"?"+c[e.BUILD]+"?",c[e.FULL]="^"+c[e.FULLPLAIN]+"$",s("LOOSEPLAIN"),c[e.LOOSEPLAIN]="[v=\\s]*"+c[e.MAINVERSIONLOOSE]+c[e.PRERELEASELOOSE]+"?"+c[e.BUILD]+"?",s("LOOSE"),c[e.LOOSE]="^"+c[e.LOOSEPLAIN]+"$",s("GTLT"),c[e.GTLT]="((?:<|>)?=?)",s("XRANGEIDENTIFIERLOOSE"),c[e.XRANGEIDENTIFIERLOOSE]=c[e.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",s("XRANGEIDENTIFIER"),c[e.XRANGEIDENTIFIER]=c[e.NUMERICIDENTIFIER]+"|x|X|\\*",s("XRANGEPLAIN"),c[e.XRANGEPLAIN]="[v=\\s]*("+c[e.XRANGEIDENTIFIER]+")(?:\\.("+c[e.XRANGEIDENTIFIER]+")(?:\\.("+c[e.XRANGEIDENTIFIER]+")(?:"+c[e.PRERELEASE]+")?"+c[e.BUILD]+"?)?)?",s("XRANGEPLAINLOOSE"),c[e.XRANGEPLAINLOOSE]="[v=\\s]*("+c[e.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+c[e.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+c[e.XRANGEIDENTIFIERLOOSE]+")(?:"+c[e.PRERELEASELOOSE]+")?"+c[e.BUILD]+"?)?)?",s("XRANGE"),c[e.XRANGE]="^"+c[e.GTLT]+"\\s*"+c[e.XRANGEPLAIN]+"$",s("XRANGELOOSE"),c[e.XRANGELOOSE]="^"+c[e.GTLT]+"\\s*"+c[e.XRANGEPLAINLOOSE]+"$",s("COERCE"),c[e.COERCE]="(^|[^\\d])(\\d{1,"+y+"})(?:\\.(\\d{1,"+y+"}))?(?:\\.(\\d{1,"+y+"}))?(?:$|[^\\d])",s("COERCERTL"),d[e.COERCERTL]=new RegExp(c[e.COERCE],"g"),h[e.COERCERTL]=new RegExp(l(c[e.COERCE]),"g"),s("LONETILDE"),c[e.LONETILDE]="(?:~>?)",s("TILDETRIM"),c[e.TILDETRIM]="(\\s*)"+c[e.LONETILDE]+"\\s+",d[e.TILDETRIM]=new RegExp(c[e.TILDETRIM],"g"),h[e.TILDETRIM]=new RegExp(l(c[e.TILDETRIM]),"g");var n="$1~";s("TILDE"),c[e.TILDE]="^"+c[e.LONETILDE]+c[e.XRANGEPLAIN]+"$",s("TILDELOOSE"),c[e.TILDELOOSE]="^"+c[e.LONETILDE]+c[e.XRANGEPLAINLOOSE]+"$",s("LONECARET"),c[e.LONECARET]="(?:\\^)",s("CARETTRIM"),c[e.CARETTRIM]="(\\s*)"+c[e.LONECARET]+"\\s+",d[e.CARETTRIM]=new RegExp(c[e.CARETTRIM],"g"),h[e.CARETTRIM]=new RegExp(l(c[e.CARETTRIM]),"g");var a="$1^";s("CARET"),c[e.CARET]="^"+c[e.LONECARET]+c[e.XRANGEPLAIN]+"$",s("CARETLOOSE"),c[e.CARETLOOSE]="^"+c[e.LONECARET]+c[e.XRANGEPLAINLOOSE]+"$",s("COMPARATORLOOSE"),c[e.COMPARATORLOOSE]="^"+c[e.GTLT]+"\\s*("+c[e.LOOSEPLAIN]+")$|^$",s("COMPARATOR"),c[e.COMPARATOR]="^"+c[e.GTLT]+"\\s*("+c[e.FULLPLAIN]+")$|^$",s("COMPARATORTRIM"),c[e.COMPARATORTRIM]="(\\s*)"+c[e.GTLT]+"\\s*("+c[e.LOOSEPLAIN]+"|"+c[e.XRANGEPLAIN]+")",d[e.COMPARATORTRIM]=new RegExp(c[e.COMPARATORTRIM],"g"),h[e.COMPARATORTRIM]=new RegExp(l(c[e.COMPARATORTRIM]),"g");var f="$1$2$3";s("HYPHENRANGE"),c[e.HYPHENRANGE]="^\\s*("+c[e.XRANGEPLAIN]+")\\s+-\\s+("+c[e.XRANGEPLAIN]+")\\s*$",s("HYPHENRANGELOOSE"),c[e.HYPHENRANGELOOSE]="^\\s*("+c[e.XRANGEPLAINLOOSE]+")\\s+-\\s+("+c[e.XRANGEPLAINLOOSE]+")\\s*$",s("STAR"),c[e.STAR]="(<|>)?=?\\s*\\*";for(var m=0;m<i;m++)I(m,c[m]),d[m]||(d[m]=new RegExp(c[m]),h[m]=new RegExp(l(c[m])));$.parse=g;function g(b,x){if((!x||typeof x!="object")&&(x={loose:!!x,includePrerelease:!1}),b instanceof u)return b;if(typeof b!="string"||b.length>A)return null;var k=x.loose?h[e.LOOSE]:h[e.FULL];if(!k.test(b))return null;try{return new u(b,x)}catch{return null}}$.valid=S;function S(b,x){var k=g(b,x);return k?k.version:null}$.clean=E;function E(b,x){var k=g(b.trim().replace(/^[=v]+/,""),x);return k?k.version:null}$.SemVer=u;function u(b,x){if((!x||typeof x!="object")&&(x={loose:!!x,includePrerelease:!1}),b instanceof u){if(b.loose===x.loose)return b;b=b.version}else if(typeof b!="string")throw new TypeError("Invalid Version: "+b);if(b.length>A)throw new TypeError("version is longer than "+A+" characters");if(!(this instanceof u))return new u(b,x);I("SemVer",b,x),this.options=x,this.loose=!!x.loose;var k=b.trim().match(x.loose?h[e.LOOSE]:h[e.FULL]);if(!k)throw new TypeError("Invalid Version: "+b);if(this.raw=b,this.major=+k[1],this.minor=+k[2],this.patch=+k[3],this.major>R||this.major<0)throw new TypeError("Invalid major version");if(this.minor>R||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>R||this.patch<0)throw new TypeError("Invalid patch version");k[4]?this.prerelease=k[4].split(".").map(function(T){if(/^[0-9]+$/.test(T)){var C=+T;if(C>=0&&C<R)return C}return T}):this.prerelease=[],this.build=k[5]?k[5].split("."):[],this.format()}u.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version},u.prototype.toString=function(){return this.version},u.prototype.compare=function(b){return I("SemVer.compare",this.version,this.options,b),b instanceof u||(b=new u(b,this.options)),this.compareMain(b)||this.comparePre(b)},u.prototype.compareMain=function(b){return b instanceof u||(b=new u(b,this.options)),L(this.major,b.major)||L(this.minor,b.minor)||L(this.patch,b.patch)},u.prototype.comparePre=function(b){if(b instanceof u||(b=new u(b,this.options)),this.prerelease.length&&!b.prerelease.length)return-1;if(!this.prerelease.length&&b.prerelease.length)return 1;if(!this.prerelease.length&&!b.prerelease.length)return 0;var x=0;do{var k=this.prerelease[x],T=b.prerelease[x];if(I("prerelease compare",x,k,T),k===void 0&&T===void 0)return 0;if(T===void 0)return 1;if(k===void 0)return-1;if(k===T)continue;return L(k,T)}while(++x)},u.prototype.compareBuild=function(b){b instanceof u||(b=new u(b,this.options));var x=0;do{var k=this.build[x],T=b.build[x];if(I("prerelease compare",x,k,T),k===void 0&&T===void 0)return 0;if(T===void 0)return 1;if(k===void 0)return-1;if(k===T)continue;return L(k,T)}while(++x)},u.prototype.inc=function(b,x){switch(b){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",x);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",x);break;case"prepatch":this.prerelease.length=0,this.inc("patch",x),this.inc("pre",x);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",x),this.inc("pre",x);break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{for(var k=this.prerelease.length;--k>=0;)typeof this.prerelease[k]=="number"&&(this.prerelease[k]++,k=-2);k===-1&&this.prerelease.push(0)}x&&(this.prerelease[0]===x?isNaN(this.prerelease[1])&&(this.prerelease=[x,0]):this.prerelease=[x,0]);break;default:throw new Error("invalid increment argument: "+b)}return this.format(),this.raw=this.version,this},$.inc=p;function p(b,x,k,T){typeof k=="string"&&(T=k,k=void 0);try{return new u(b,k).inc(x,T).version}catch{return null}}$.diff=v;function v(b,x){if(fe(b,x))return null;var k=g(b),T=g(x),C="";if(k.prerelease.length||T.prerelease.length){C="pre";var P="prerelease"}for(var M in k)if((M==="major"||M==="minor"||M==="patch")&&k[M]!==T[M])return C+M;return P}$.compareIdentifiers=L;var O=/^[0-9]+$/;function L(b,x){var k=O.test(b),T=O.test(x);return k&&T&&(b=+b,x=+x),b===x?0:k&&!T?-1:T&&!k?1:b<x?-1:1}$.rcompareIdentifiers=N;function N(b,x){return L(x,b)}$.major=D;function D(b,x){return new u(b,x).major}$.minor=q;function q(b,x){return new u(b,x).minor}$.patch=z;function z(b,x){return new u(b,x).patch}$.compare=U;function U(b,x,k){return new u(b,k).compare(new u(x,k))}$.compareLoose=X;function X(b,x){return U(b,x,!0)}$.compareBuild=te;function te(b,x,k){var T=new u(b,k),C=new u(x,k);return T.compare(C)||T.compareBuild(C)}$.rcompare=W;function W(b,x,k){return U(x,b,k)}$.sort=G;function G(b,x){return b.sort(function(k,T){return $.compareBuild(k,T,x)})}$.rsort=J;function J(b,x){return b.sort(function(k,T){return $.compareBuild(T,k,x)})}$.gt=Q;function Q(b,x,k){return U(b,x,k)>0}$.lt=se;function se(b,x,k){return U(b,x,k)<0}$.eq=fe;function fe(b,x,k){return U(b,x,k)===0}$.neq=ge;function ge(b,x,k){return U(b,x,k)!==0}$.gte=me;function me(b,x,k){return U(b,x,k)>=0}$.lte=ke;function ke(b,x,k){return U(b,x,k)<=0}$.cmp=$e;function $e(b,x,k,T){switch(x){case"===":return typeof b=="object"&&(b=b.version),typeof k=="object"&&(k=k.version),b===k;case"!==":return typeof b=="object"&&(b=b.version),typeof k=="object"&&(k=k.version),b!==k;case"":case"=":case"==":return fe(b,k,T);case"!=":return ge(b,k,T);case">":return Q(b,k,T);case">=":return me(b,k,T);case"<":return se(b,k,T);case"<=":return ke(b,k,T);default:throw new TypeError("Invalid operator: "+x)}}$.Comparator=ie;function ie(b,x){if((!x||typeof x!="object")&&(x={loose:!!x,includePrerelease:!1}),b instanceof ie){if(b.loose===!!x.loose)return b;b=b.value}if(!(this instanceof ie))return new ie(b,x);b=b.trim().split(/\s+/).join(" "),I("comparator",b,x),this.options=x,this.loose=!!x.loose,this.parse(b),this.semver===ye?this.value="":this.value=this.operator+this.semver.version,I("comp",this)}var ye={};ie.prototype.parse=function(b){var x=this.options.loose?h[e.COMPARATORLOOSE]:h[e.COMPARATOR],k=b.match(x);if(!k)throw new TypeError("Invalid comparator: "+b);this.operator=k[1]!==void 0?k[1]:"",this.operator==="="&&(this.operator=""),k[2]?this.semver=new u(k[2],this.options.loose):this.semver=ye},ie.prototype.toString=function(){return this.value},ie.prototype.test=function(b){if(I("Comparator.test",b,this.options.loose),this.semver===ye||b===ye)return!0;if(typeof b=="string")try{b=new u(b,this.options)}catch{return!1}return $e(b,this.operator,this.semver,this.options)},ie.prototype.intersects=function(b,x){if(!(b instanceof ie))throw new TypeError("a Comparator is required");(!x||typeof x!="object")&&(x={loose:!!x,includePrerelease:!1});var k;if(this.operator==="")return this.value===""?!0:(k=new K(b.value,x),Re(this.value,k,x));if(b.operator==="")return b.value===""?!0:(k=new K(this.value,x),Re(b.semver,k,x));var T=(this.operator===">="||this.operator===">")&&(b.operator===">="||b.operator===">"),C=(this.operator==="<="||this.operator==="<")&&(b.operator==="<="||b.operator==="<"),P=this.semver.version===b.semver.version,M=(this.operator===">="||this.operator==="<=")&&(b.operator===">="||b.operator==="<="),V=$e(this.semver,"<",b.semver,x)&&(this.operator===">="||this.operator===">")&&(b.operator==="<="||b.operator==="<"),B=$e(this.semver,">",b.semver,x)&&(this.operator==="<="||this.operator==="<")&&(b.operator===">="||b.operator===">");return T||C||P&&M||V||B},$.Range=K;function K(b,x){if((!x||typeof x!="object")&&(x={loose:!!x,includePrerelease:!1}),b instanceof K)return b.loose===!!x.loose&&b.includePrerelease===!!x.includePrerelease?b:new K(b.raw,x);if(b instanceof ie)return new K(b.value,x);if(!(this instanceof K))return new K(b,x);if(this.options=x,this.loose=!!x.loose,this.includePrerelease=!!x.includePrerelease,this.raw=b.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(function(k){return this.parseRange(k.trim())},this).filter(function(k){return k.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+this.raw);this.format()}K.prototype.format=function(){return this.range=this.set.map(function(b){return b.join(" ").trim()}).join("||").trim(),this.range},K.prototype.toString=function(){return this.range},K.prototype.parseRange=function(b){var x=this.options.loose,k=x?h[e.HYPHENRANGELOOSE]:h[e.HYPHENRANGE];b=b.replace(k,Vt),I("hyphen replace",b),b=b.replace(h[e.COMPARATORTRIM],f),I("comparator trim",b,h[e.COMPARATORTRIM]),b=b.replace(h[e.TILDETRIM],n),b=b.replace(h[e.CARETTRIM],a),b=b.split(/\s+/).join(" ");var T=x?h[e.COMPARATORLOOSE]:h[e.COMPARATOR],C=b.split(" ").map(function(P){return Dt(P,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(C=C.filter(function(P){return!!P.match(T)})),C=C.map(function(P){return new ie(P,this.options)},this),C},K.prototype.intersects=function(b,x){if(!(b instanceof K))throw new TypeError("a Range is required");return this.set.some(function(k){return He(k,x)&&b.set.some(function(T){return He(T,x)&&k.every(function(C){return T.every(function(P){return C.intersects(P,x)})})})})};function He(b,x){for(var k=!0,T=b.slice(),C=T.pop();k&&T.length;)k=T.every(function(P){return C.intersects(P,x)}),C=T.pop();return k}$.toComparators=Ct;function Ct(b,x){return new K(b,x).set.map(function(k){return k.map(function(T){return T.value}).join(" ").trim().split(" ")})}function Dt(b,x){return I("comp",b,x),b=Ft(b,x),I("caret",b),b=Pt(b,x),I("tildes",b),b=Bt(b,x),I("xrange",b),b=zt(b,x),I("stars",b),b}function re(b){return!b||b.toLowerCase()==="x"||b==="*"}function Pt(b,x){return b.trim().split(/\s+/).map(function(k){return Mt(k,x)}).join(" ")}function Mt(b,x){var k=x.loose?h[e.TILDELOOSE]:h[e.TILDE];return b.replace(k,function(T,C,P,M,V){I("tilde",b,T,C,P,M,V);var B;return re(C)?B="":re(P)?B=">="+C+".0.0 <"+(+C+1)+".0.0":re(M)?B=">="+C+"."+P+".0 <"+C+"."+(+P+1)+".0":V?(I("replaceTilde pr",V),B=">="+C+"."+P+"."+M+"-"+V+" <"+C+"."+(+P+1)+".0"):B=">="+C+"."+P+"."+M+" <"+C+"."+(+P+1)+".0",I("tilde return",B),B})}function Ft(b,x){return b.trim().split(/\s+/).map(function(k){return qt(k,x)}).join(" ")}function qt(b,x){I("caret",b,x);var k=x.loose?h[e.CARETLOOSE]:h[e.CARET];return b.replace(k,function(T,C,P,M,V){I("caret",b,T,C,P,M,V);var B;return re(C)?B="":re(P)?B=">="+C+".0.0 <"+(+C+1)+".0.0":re(M)?C==="0"?B=">="+C+"."+P+".0 <"+C+"."+(+P+1)+".0":B=">="+C+"."+P+".0 <"+(+C+1)+".0.0":V?(I("replaceCaret pr",V),C==="0"?P==="0"?B=">="+C+"."+P+"."+M+"-"+V+" <"+C+"."+P+"."+(+M+1):B=">="+C+"."+P+"."+M+"-"+V+" <"+C+"."+(+P+1)+".0":B=">="+C+"."+P+"."+M+"-"+V+" <"+(+C+1)+".0.0"):(I("no pr"),C==="0"?P==="0"?B=">="+C+"."+P+"."+M+" <"+C+"."+P+"."+(+M+1):B=">="+C+"."+P+"."+M+" <"+C+"."+(+P+1)+".0":B=">="+C+"."+P+"."+M+" <"+(+C+1)+".0.0"),I("caret return",B),B})}function Bt(b,x){return I("replaceXRanges",b,x),b.split(/\s+/).map(function(k){return Ut(k,x)}).join(" ")}function Ut(b,x){b=b.trim();var k=x.loose?h[e.XRANGELOOSE]:h[e.XRANGE];return b.replace(k,function(T,C,P,M,V,B){I("xRange",b,T,C,P,M,V,B);var le=re(P),ce=le||re(M),ae=ce||re(V),ne=ae;return C==="="&&ne&&(C=""),B=x.includePrerelease?"-0":"",le?C===">"||C==="<"?T="<0.0.0-0":T="*":C&&ne?(ce&&(M=0),V=0,C===">"?(C=">=",ce?(P=+P+1,M=0,V=0):(M=+M+1,V=0)):C==="<="&&(C="<",ce?P=+P+1:M=+M+1),T=C+P+"."+M+"."+V+B):ce?T=">="+P+".0.0"+B+" <"+(+P+1)+".0.0"+B:ae&&(T=">="+P+"."+M+".0"+B+" <"+P+"."+(+M+1)+".0"+B),I("xRange return",T),T})}function zt(b,x){return I("replaceStars",b,x),b.trim().replace(h[e.STAR],"")}function Vt(b,x,k,T,C,P,M,V,B,le,ce,ae,ne){return re(k)?x="":re(T)?x=">="+k+".0.0":re(C)?x=">="+k+"."+T+".0":x=">="+x,re(B)?V="":re(le)?V="<"+(+B+1)+".0.0":re(ce)?V="<"+B+"."+(+le+1)+".0":ae?V="<="+B+"."+le+"."+ce+"-"+ae:V="<="+V,(x+" "+V).trim()}K.prototype.test=function(b){if(!b)return!1;if(typeof b=="string")try{b=new u(b,this.options)}catch{return!1}for(var x=0;x<this.set.length;x++)if(Gt(this.set[x],b,this.options))return!0;return!1};function Gt(b,x,k){for(var T=0;T<b.length;T++)if(!b[T].test(x))return!1;if(x.prerelease.length&&!k.includePrerelease){for(T=0;T<b.length;T++)if(I(b[T].semver),b[T].semver!==ye&&b[T].semver.prerelease.length>0){var C=b[T].semver;if(C.major===x.major&&C.minor===x.minor&&C.patch===x.patch)return!0}return!1}return!0}$.satisfies=Re;function Re(b,x,k){try{x=new K(x,k)}catch{return!1}return x.test(b)}$.maxSatisfying=Wt;function Wt(b,x,k){var T=null,C=null;try{var P=new K(x,k)}catch{return null}return b.forEach(function(M){P.test(M)&&(!T||C.compare(M)===-1)&&(T=M,C=new u(T,k))}),T}$.minSatisfying=Kt;function Kt(b,x,k){var T=null,C=null;try{var P=new K(x,k)}catch{return null}return b.forEach(function(M){P.test(M)&&(!T||C.compare(M)===1)&&(T=M,C=new u(T,k))}),T}$.minVersion=Ht;function Ht(b,x){b=new K(b,x);var k=new u("0.0.0");if(b.test(k)||(k=new u("0.0.0-0"),b.test(k)))return k;k=null;for(var T=0;T<b.set.length;++T){var C=b.set[T];C.forEach(function(P){var M=new u(P.semver.version);switch(P.operator){case">":M.prerelease.length===0?M.patch++:M.prerelease.push(0),M.raw=M.format();case"":case">=":(!k||Q(k,M))&&(k=M);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+P.operator)}})}return k&&b.test(k)?k:null}$.validRange=Xt;function Xt(b,x){try{return new K(b,x).range||"*"}catch{return null}}$.ltr=Zt;function Zt(b,x,k){return Ae(b,x,"<",k)}$.gtr=Yt;function Yt(b,x,k){return Ae(b,x,">",k)}$.outside=Ae;function Ae(b,x,k,T){b=new u(b,T),x=new K(x,T);var C,P,M,V,B;switch(k){case">":C=Q,P=ke,M=se,V=">",B=">=";break;case"<":C=se,P=me,M=Q,V="<",B="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Re(b,x,T))return!1;for(var le=0;le<x.set.length;++le){var ce=x.set[le],ae=null,ne=null;if(ce.forEach(function(he){he.semver===ye&&(he=new ie(">=0.0.0")),ae=ae||he,ne=ne||he,C(he.semver,ae.semver,T)?ae=he:M(he.semver,ne.semver,T)&&(ne=he)}),ae.operator===V||ae.operator===B||(!ne.operator||ne.operator===V)&&P(b,ne.semver))return!1;if(ne.operator===B&&M(b,ne.semver))return!1}return!0}$.prerelease=Jt;function Jt(b,x){var k=g(b,x);return k&&k.prerelease.length?k.prerelease:null}$.intersects=Qt;function Qt(b,x,k){return b=new K(b,k),x=new K(x,k),b.intersects(x)}$.coerce=er;function er(b,x){if(b instanceof u)return b;if(typeof b=="number"&&(b=String(b)),typeof b!="string")return null;x=x||{};var k=null;if(!x.rtl)k=b.match(h[e.COERCE]);else{for(var T;(T=h[e.COERCERTL].exec(b))&&(!k||k.index+k[0].length!==b.length);)(!k||T.index+T[0].length!==k.index+k[0].length)&&(k=T),h[e.COERCERTL].lastIndex=T.index+T[1].length+T[2].length;h[e.COERCERTL].lastIndex=-1}return k===null?null:g(k[2]+"."+(k[3]||"0")+"."+(k[4]||"0"),x)}})(Ie,Ie.exports);var $r=Ie.exports;const lt=Le,ue=$r,Y="semver",Rr={base:lt.string(),type:"semverRange",validate:function(w,{error:$}){return ue.validRange(w)?{value:w}:{errors:$(`${Y}.valid`)}},messages:{[`${Y}.valid`]:"{{#label}} needs to be a valid semver range"}},pe={};pe.compare={method:!1,validate:function(w,$,{exp:j},{name:I}){return ue[I](w,j)?w:$.error(`${Y}.${I}`,{exp:j})},args:[{name:"exp",assert:ue.valid,message:"needs to be a valid semver expression"}]};["gt","gte","lt","lte","eq","neq"].forEach(function(w){pe[w]={method:function($){return this.$_addRule({name:w,method:"compare",args:{exp:$}})}}});pe.cmp={method:function(w,$){return this.$_addRule({name:"cmp",args:{cmp:w,exp:$}})},validate:function(w,$,{cmp:j,exp:I}){return ue.cmp(w,j,I)?w:$.error(`${Y}.cmp`,{cmp:j,exp:I})},args:[{name:"cmp",assert:w=>["===","!==","","=","==","!=",">",">=","<","<="].includes(w),message:"needs to be a valid comparator"},{name:"exp",assert:ue.valid,message:"needs to be a valid semver expression"}]};pe.compareRange={method:!1,validate:function(w,$,{rng:j},{name:I}){return ue[I](w,j)?w:$.error(`${Y}.${I}`,{rng:j})},args:[{name:"rng",assert:ue.validRange,message:"needs to be a valid semver range"}]};["satisfies","gtr","ltr"].forEach(function(w){pe[w]={method:function($){return this.$_addRule({name:w,method:"compareRange",args:{rng:$}})}}});pe.outside={method:function(w,$){return this.$_addRule({name:"outside",args:{hilo:w,rng:$}})},validate:function(w,$,{hilo:j,rng:I}){return ue.outside(w,I,j)?w:$.error(`${Y}.outside`,{hilo:j,rng:I})},args:[{name:"hilo",assert:w=>[">","<"].includes(w),message:"needs to be a valid comparator"},{name:"rng",assert:ue.validRange,message:"needs to be a valid semver range"}]};const Sr={base:lt.string(),type:"semver",validate:function(w,{error:$}){return ue.valid(w)?{value:w}:{errors:$(`${Y}.valid`)}},messages:{[`${Y}.valid`]:"{{#label}} needs to be a valid semver expression",[`${Y}.gt`]:"{{#label}} needs to be greater than {{#exp}}",[`${Y}.gte`]:"{{#label}} needs to be greater than or equal to {{#exp}}",[`${Y}.lt`]:"{{#label}} needs to be less than {{#exp}}",[`${Y}.lte`]:"{{#label}} needs to be less than or equal to {{#exp}}",[`${Y}.eq`]:"{{#label}} needs to be logically equivalent to {{#exp}}",[`${Y}.neq`]:"{{#label}} needs to be logically different than {{#exp}}",[`${Y}.cmp`]:"{{#label}} needs to satisfy {{#cmp}} on {{#exp}}",[`${Y}.satisfies`]:"{{#label}} needs to satisfy {{#rng}}",[`${Y}.gtr`]:"{{#label}} needs to be greater than range {{#rng}}",[`${Y}.ltr`]:"{{#label}} needs to be less than range {{#rng}}",[`${Y}.outside`]:"{{#label}} needs to be {{#hilo}} than range {{#rng}}"},rules:pe};var xr={semver:Sr,semverRange:Rr};/*!
12
+ * is-var-name | ISC (c) Shinnosuke Watanabe
13
+ * https://github.com/shinnn/is-var-name
14
+ */function Or(w){if(typeof w!="string"||w.trim()!==w)return!1;try{new Function(w,"var "+w)}catch{return!1}return!0}const kr=Object.freeze(Object.defineProperty({__proto__:null,default:Or},Symbol.toStringTag,{value:"Module"})),Ar=rr(kr);var ee={};const Ir=Le;function jr(w){return w&&typeof w=="object"&&"default"in w?w.default:w}const Z=jr(Ir),ct={"-a":"--attach","-d":"--detach","-e":"--env","-h":"--hostname","-i":"--interactive","-it":"-it","-rm":"-rm","-m":"--memory","-p":"--publish","-P":"--publish-all","-l":"--label","-n":"--name","-q":"--quiet","-x":"--x-registry","-t":"--tty","-u":"--user","-v":"--volume","-w":"--workdir","-cgroupns":"--cgroupns","-cpus":"--cpus","-g":"--gpus","-ip6":"--ip6","--read-only":"--read-only","--add-host":"--add-host","--attach":"--attach","--blkio-weight":"--blkio-weight","--blkio-weight-device":"--blkio-weight-device","--cap-add":"--cap-add","--cap-drop":"--cap-drop","--cgroup-parent":"--cgroup-parent","--cidfile":"--cidfile","--cpu-period":"--cpu-period","--cpu-quota":"--cpu-quota","--cpu-rt-period":"--cpu-rt-period","--cpu-rt-runtime":"--cpu-rt-runtime","--cpu-shares":"--cpu-shares","--cpus":"--cpus","--cpuset-cpus":"--cpuset-cpus","--cpuset-mems":"--cpuset-mems","--detach":"--detach","--detach-keys":"--detach-keys","--device":"--device","--device-cgroup-rule":"--device-cgroup-rule","--device-read-bps":"--device-read-bps","--device-read-iops":"--device-read-iops","--device-write-bps":"--device-write-bps","--device-write-iops":"--device-write-iops","--disable-content-trust":"--disable-content-trust","--dns":"--dns","--dns-opt":"--dns-opt","--dns-search":"--dns-search","--domainname":"--domainname","--entrypoint":"--entrypoint","--env":"--env","--env-file":"--env-file","--expose":"--expose","--gpus":"--gpus","--group-add":"--group-add","--health-cmd":"--health-cmd","--health-interval":"--health-interval","--health-retries":"--health-retries","--health-start-period":"--health-start-period","--health-timeout":"--health-timeout","--help":"--help","--hostname":"--hostname","--init":"--init","--interactive":"--interactive","--ip":"--ip","--ip6":"--ip6","--ipc":"--ipc","--isolation":"--isolation","--kernel-memory":"--kernel-memory","--label":"--label","--label-file":"--label-file","--link":"--link","--link-local-ip":"--link-local-ip","--log-driver":"--log-driver","--log-opt":"--log-opt","--mac-address":"--mac-address","--memory":"--memory","--memory-reservation":"--memory-reservation","--memory-swap":"--memory-swap","--memory-swappiness":"--memory-swappiness","--mount":"--mount","--name":"--name","--network":"--network","--network-alias":"--network-alias","--no-healthcheck":"--no-healthcheck","--oom-kill-disable":"--oom-kill-disable","--oom-score-adj":"--oom-score-adj","--pid":"--pid","--pids-limit":"--pids-limit","--platform":"--platform","--privileged":"--privileged","--publish":"--publish","--publish-all":"--publish-all","--pull":"--pull","--restart":"--restart","--rm":"--rm","--runtime":"--runtime","--security-opt":"--security-opt","--shm-size":"--shm-size","--stop-signal":"--stop-signal","--stop-timeout":"--stop-timeout","--storage-opt":"--storage-opt","--sysctl":"--sysctl","--tmpfs":"--tmpfs","--tty":"--tty","--ulimit":"--ulimit","--user":"--user","--userns":"--userns","--uts":"--uts","--volume":"--volume","--volume-driver":"--volume-driver","--volumes-from":"--volumes-from","--workdir":"--workdir"},ut={"--env":!0,"--publish":!0,"--volume":!0,"--attach":!0,"--quiet":!0,"--workdir":!0,"--cidfile":!0,"--detach-keys":!0,"--disable-content-trust":!0,"--domainname":!0,"--expose":!0,"--ip":!0,"--link-local-ip":!0,"--platform":!0},Tr={"-rm":!0,"--name":!0,"--label":!0,"--network":!0,"--user":!0},Lr={"--volume":!0,"--publish":!0},Nr=new Set(["--publish","--volume"]);function Cr(w){return w.map($=>$.key==="--volume"&&!$.value.startsWith("$BLOCKLET_APP_DIR/")&&!$.value.startsWith("$BLOCKLET_DATA_DIR/")?{...$,value:$.value.startsWith("/")?`$BLOCKLET_DATA_DIR${$.value}`:`$BLOCKLET_DATA_DIR/${$.value}`}:$)}function Dr(w){if(!w)return{dockerArgs:[],dockerEnvs:[],dockerImage:""};if(w=w.trim(),w.startsWith("$ docker run")&&(w=w.replace("$ docker run","docker run")),!w.startsWith("docker run"))return{dockerArgs:[],dockerEnvs:[],dockerImage:""};const j=w.replace(/\\\n/g,"").replace(/\n/g," ").trim().match(/(?:[^\s"']+|'[^']*'|"[^"]*")+/g);if(!j)return{dockerArgs:[],dockerEnvs:[],dockerImage:""};const I=[],A=[];let R=0,y="";for(;R<j.length;){const d=j[R];if(!d){R++;continue}if(d==="docker"||d==="run"){R++;continue}if((d==="-e"||d==="--env")&&R+1<j.length){const h=j[R+1]||"",[c,...e]=h.split("=");if(c){const i=e.join("=").replace(/^['"]|['"]$/g,"");A.push({key:c,value:i})}R+=2;continue}if(d.startsWith("-")){const h=d.indexOf("=");let c=d,e=null;h!==-1&&(c=d.substring(0,h),e=d.substring(h+1).replace(/^['"]|['"]$/g,""));const i=ct[c];if(!i){R++;continue}if(i==="--publish"){let s="";if(e)s=e,I.push({key:i,value:s});else if(R+1<j.length&&!(j[R+1]||"").startsWith("-")){s=(j[R+1]||"").replace(/^['"]|['"]$/g,""),I.push({key:i,value:s}),R+=2;continue}else{I.push({key:i,value:"true"}),R++;continue}R++;continue}if(e!==null){I.push({key:i,value:e}),R++;continue}else if(R+1<j.length&&!(j[R+1]||"").startsWith("-")){const s=(j[R+1]||"").replace(/^['"]|['"]$/g,"");I.push({key:i,value:s}),R+=2;continue}else{I.push({key:i,value:"true"}),R++;continue}}y=d.replace(/^['"]|['"]$/g,""),R++}const o=[];for(const d of I)d.name="",d.path="",d.prefix="",d.protocol="",d.type="docker",!(Nr.has(d.key)&&d.value==="true")&&o.push(d);for(const d of A)d.custom="",d.description="",d.secure=!1,d.shared=!1,d.required=!1;return{dockerArgs:Cr(o),dockerEnvs:A,dockerImage:y}}function Pr({dockerArgs:w,dockerEnvs:$,dockerImage:j}){var R;if(w.length===0&&$.length===0&&!j)return"";const I=["docker run \\"],A=new Set(["--publish","--volume","--expose","--device","--mount","--label","--cap-add","--cap-drop","--add-host","--dns","--network-alias","--sysctl","--ulimit","--network"]);for(const y of w){const{key:o,value:d}=y;if(A.has(o))if(d==="true")I.push(` ${o} \\`);else{const h=/[\s"']/g.test(d)?`"${d}"`:d;I.push(` ${o} ${h} \\`)}else if(!I.some(h=>h.startsWith(` ${o}`)))if(d==="true")I.push(` ${o} \\`);else{const h=/[\s"']/g.test(d)?`"${d}"`:d;I.push(` ${o} ${h} \\`)}}for(const y of $){const{key:o,value:d}=y,h=/["']/g.test(d)?d:`"${d}"`;I.push(` -e ${o}=${h} \\`)}return j?I.push(` ${j}`):(R=I[I.length-1])!=null&&R.endsWith("\\")&&(I[I.length-1]=(I[I.length-1]||"").slice(0,-1).trim()),I.join(`
15
+ `)}const ft={"--volume":w=>!w.startsWith("$BLOCKLET_APP_DIR/")&&!w.startsWith("$BLOCKLET_DATA_DIR/")?"Volume must start with $BLOCKLET_APP_DIR or $BLOCKLET_DATA_DIR":w.indexOf("..")>-1?'Volume cannot contain ".."':""},Ne=w=>w.replace(/^[-]+/,"").replace(/-([a-z])/g,(I,A)=>A.toUpperCase()),mt=w=>`--${w.replace(/([A-Z])/g,"-$1").toLowerCase()}`,Mr=Array.from(new Set(Object.keys(ut).map(Ne))),Ce=["publish","volume"],ht=Z.object({workdir:Z.string().trim().optional(),image:Z.string().trim().regex(/^[^\s]+$/).optional(),shell:Z.string().trim().optional(),volumes:Z.array().items(Z.string().trim()).optional(),script:Z.string().trim().optional(),installNodeModules:Z.boolean().optional(),command:Z.string().trim().optional(),runBaseScript:Z.boolean().optional(),...Mr.reduce((w,$)=>{const j=ft[mt($)];return Ce.includes($)?(w[$]=Z.array().items(Z.string().trim()).optional(),j?w[$]=Z.array().items(Z.string().trim().custom((I,A)=>{const R=j(I);return R?A.message(R):I})).optional():w[$]=Z.array().items(Z.string().trim()).optional(),w):(j?w[$]=Z.string().trim().custom((I,A)=>{const R=j(I);return R?A.message(R):I}).optional():w[$]=Z.string().trim().optional(),w)},{})}).optional(),Fr=w=>{const $=/^(?:[a-zA-Z0-9.-]+(?::[0-9]+)?\/)?(?:[a-z0-9]+(?:[._-][a-z0-9]+)*\/)?[a-z0-9]+(?:[._-][a-z0-9]+)*(:[a-zA-Z0-9_.-]+)?$/;return Z.string().trim().regex($).required().validate(w)},qr=(w,$)=>{const j={};$.forEach(A=>{const R=Ne(A.key);Ce.includes(R)?j[R]=[...j[R]||[],A.value]:j[R]=A.value});const{error:I}=Fr(w);return I?{error:I,value:j}:(j.image=w,ht.validate(j))};function Br(w,$){const j=JSON.parse(JSON.stringify($)),I=new Map;let A=1;const R=[];return j.forEach(y=>{if(y.key==="--publish"){const d=y.value.split(":");let h="127.0.0.1",c="",e="";d.length===2?[c,e]=d:d.length===3?[h,c,e]=d:d.length===1&&(e=d[0]||"");let i=I.get(c||"");i||(i=`$BLOCKLET_PORT_${A++}`,I.set(c||"",i)),R.find(s=>s.port===c)||R.push({type:R.length===0?"web":"docker",name:`${w}-${R.length+1}`,path:`/${w}-${R.length+1}`,port:c||e,containerPort:Number(e)||0,hostIP:h})}}),R}function Ur(w,$=!1){const j=[];if(!w)return j;for(const I of w){const A={name:I.key,default:I.value===`$${I.key}`?"":I.value,secure:I.secure!==void 0?I.secure:!1,shared:I.shared!==void 0?I.shared:!1,required:I.required!==void 0?I.required:!1,description:I.description||I.key};$||(A.custom=I.custom||""),j.push(A)}return j}function zr(w,$){const j=JSON.parse(JSON.stringify(w));return $.split(".").map(A=>{const R=A.match(/(.+)\[(.+?)\]/);return R?[R[1],R[2]]:A}).flat().filter(Boolean).reduce((A,R)=>{if(!A||!R)return;const y=R==null?void 0:R.match(/(.+?)=(.+)/);if(Array.isArray(A)&&y){const[,d,h]=y;return d&&h&&(A=A.find(c=>{const e=Object.keys(c).find(i=>i.toLowerCase()===d.toLowerCase());return e&&c[e]===h})),A}const o=Object.keys(A).find(d=>d.toLowerCase()===R.toLowerCase());return o?A[o]:void 0},j)}ee.allowDockerArgs=ut;ee.autoSetDockerArgs=Tr;ee.dockerArgsToCamelCase=Ne;ee.dockerArgsValidator=ft;ee.dockerBuildCommand=Pr;ee.dockerCamelCaseToDash=mt;ee.dockerParseCommand=Dr;ee.dockerParseEnvironments=Ur;ee.dockerParsePublishPorts=Br;ee.dockerSchema=ht;ee.getObjByPath=zr;ee.multiValueArgs=Ce;ee.notAllowUseCustomDockerArgs=Lr;ee.parseDockerArgsToSchema=qr;ee.whiteDockerArgs=ct;const Vr=nr,Gr=ir,Xe=Se,Wr=w=>{if((0,Xe.isValid)(w))return w;const $=(0,Gr.toHex)(sr.from(typeof w=="string"?w.trim():w));return(0,Xe.fromPublicKey)($,{role:Vr.types.RoleType.ROLE_ANY})};var Kr=Wr,de={},dt=oe&&oe.__importDefault||function(w){return w&&w.__esModule?w:{default:w}};Object.defineProperty(de,"__esModule",{value:!0});de.didExtension=de.fileExtension=void 0;const Ze=dt(nt),Hr=dt(cr),Xr=Se,pt=w=>({type:"file",base:w.string(),validate($,{error:j}){return $&&typeof $=="string"?{value:$}:{errors:j("file.empty",{file:$})}},messages:{"file.empty":'file "{{#file}}" must be non-empty string',"file.enoent":'file "{{#file}}" does not exist',"file.error.generic":'file could not be read. message: "{{#message}}"'},rules:{exists:{multi:!1,method({baseDir:$=null,canSkip:j=()=>!1}={}){return this.$_addRule({name:"exists",args:{baseDir:$,canSkip:j}})},args:[{name:"baseDir",assert:$=>Ze.default.existsSync($),message:"baseDir must exist"},{name:"canSkip",assert:$=>typeof $=="function",message:"canSkip must be a function"}],validate($,{error:j},{baseDir:I,canSkip:A}={}){if(typeof A=="function"&&A(I,$))return $;try{return Ze.default.statSync(Hr.default.join(I,$)),$}catch(R){switch(R.code){case"ENOENT":return j("file.enoent",{file:$})}return j("file.error.generic",{message:R.message})}}}}});de.fileExtension=pt;const gt=w=>({type:"DID",base:w.string(),validate($,{error:j}){return!$||typeof $!="string"?{errors:j("did.empty",{did:$})}:(0,Xr.isValid)($)===!1?{errors:j("did.invalid",{did:$})}:{value:$}},messages:{"did.empty":'did "{{#did}}" must be non-empty string',"did.invalid":'did "{{#did}}" is not valid'}});de.didExtension=gt;de.default={fileExtension:pt,didExtension:gt};var yt={},vt={exports:{}};const Zr=["assert","buffer","child_process","cluster","console","constants","crypto","dgram","dns","domain","events","fs","http","https","module","net","os","path","process","punycode","querystring","readline","repl","stream","string_decoder","timers","tls","tty","url","util","v8","vm","zlib"];var bt=new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$"),Yr=Zr,Jr=["node_modules","favicon.ico"],Qr=vt.exports=function(w){var $=[],j=[];if(w===null)return j.push("name cannot be null"),_e($,j);if(w===void 0)return j.push("name cannot be undefined"),_e($,j);if(typeof w!="string")return j.push("name must be a string"),_e($,j);if(w.length||j.push("name length must be greater than zero"),w.match(/^\./)&&j.push("name cannot start with a period"),w.match(/^_/)&&j.push("name cannot start with an underscore"),w.trim()!==w&&j.push("name cannot contain leading or trailing spaces"),Jr.forEach(function(y){w.toLowerCase()===y&&j.push(y+" is a blacklisted name")}),Yr.forEach(function(y){w.toLowerCase()===y&&$.push(y+" is a core module name")}),w.length>214&&$.push("name can no longer contain more than 214 characters"),w.toLowerCase()!==w&&$.push("name can no longer contain capital letters"),/[~'!()*]/.test(w.split("/").slice(-1)[0])&&$.push(`name can no longer contain special characters ("~'!()*")`),encodeURIComponent(w)!==w){var I=w.match(bt);if(I){var A=I[1],R=I[2];if(encodeURIComponent(A)===A&&encodeURIComponent(R)===R)return _e($,j)}j.push("name can only contain URL-friendly characters")}return _e($,j)};Qr.scopedPackagePattern=bt;var _e=function(w,$){var j={validForNewPackages:$.length===0&&w.length===0,validForOldPackages:$.length===0,warnings:w,errors:$};return j.warnings.length||delete j.warnings,j.errors.length||delete j.errors,j},es=vt.exports;(function(w){var $=oe&&oe.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(w,"__esModule",{value:!0}),w.validateName=w.validateNewDid=void 0;const j=Se,I=$(es),A=32,R=o=>{if((0,j.toTypeInfo)(o).role!==j.types.RoleType.ROLE_BLOCKLET)throw new Error("Blocklet DID's type must be ROLE_BLOCKLET")};w.validateNewDid=R;const y=(o,{checkDid:d=!0}={})=>{if((0,j.isValid)(o))d&&(0,w.validateNewDid)(o);else{const{validForNewPackages:h,errors:c=[],warnings:e=[]}=(0,I.default)(o);if(!h)throw new Error(c[0]||e[0]);if(o.length>A)throw new Error("Blocklet name is too long")}};w.validateName=y,w.default={validateName:w.validateName,validateNewDid:w.validateNewDid}})(yt);var ts=oe&&oe.__createBinding||(Object.create?function(w,$,j,I){I===void 0&&(I=j);var A=Object.getOwnPropertyDescriptor($,j);(!A||("get"in A?!$.__esModule:A.writable||A.configurable))&&(A={enumerable:!0,get:function(){return $[j]}}),Object.defineProperty(w,I,A)}:function(w,$,j,I){I===void 0&&(I=j),w[I]=$[j]}),rs=oe&&oe.__setModuleDefault||(Object.create?function(w,$){Object.defineProperty(w,"default",{enumerable:!0,value:$})}:function(w,$){w.default=$}),ss=oe&&oe.__importStar||function(){var w=function($){return w=Object.getOwnPropertyNames||function(j){var I=[];for(var A in j)Object.prototype.hasOwnProperty.call(j,A)&&(I[I.length]=A);return I},w($)};return function($){if($&&$.__esModule)return $;var j={};if($!=null)for(var I=w($),A=0;A<I.length;A++)I[A]!=="default"&&ts(j,$,I[A]);return rs(j,$),j}}(),be=oe&&oe.__importDefault||function(w){return w&&w.__esModule?w:{default:w}};Object.defineProperty(F,"__esModule",{value:!0});F.Joi=gs=F.installBlockletDescriptionSchema=ps=F.installBlockletTitleSchema=F.resourceBundleSchema=F.authConfigSchema=F.cacheableSchema=F.statsSchema=ds=F.titleSchema=F.themeSchema=F.signatureSchema=F.serviceSchema=F.scriptsSchema=F.personSchema=F.navigationSchema=F.navigationItemSchema=F.updateMountPointSchema=F.mountPointSchema=F.logoSchema=F.interfaceSchema=F.environmentNameSchema=F.environmentSchema=F.engineSchema=F.endpointSchema=F.distSchema=F.descriptionSchema=F.createBlockletSchema=F.componentSchema=F.blockletNameSchema=F.blockletMetaSchema=void 0;const ns=be(nt),is=be(Le),as=be(yr),os=be(Er),Ye=xr,ls=be(Ar),Je=or,cs=Se,us=ee,H=lr,fs=be(Kr),Qe=de,je=yt,De=ss(ar),ms=as.default.default,et="/.well-known",_=is.default.extend(Ye.semver).extend(Ye.semverRange).extend(Qe.fileExtension).extend(Qe.didExtension);F.Joi=_;const tt=(w,$)=>(0,De.checkLink)(w)?w:$.message(`Invalid navigation link: ${w}
16
+
17
+ A valid navigation link should be a relative url which start with '/' or a absolute url, such as:
18
+ - /en/home
19
+ - /zh/home
20
+ - https://www.arcblock.io
21
+ `),hs=(w,$)=>!w||(0,ls.default)(w)?w:$.message(`Invalid navigation id: ${w}
22
+
23
+ A valid navigation id is should follow the rules of javascript variables, such as:
24
+ - foo
25
+ - fooBar
26
+ - foo123
27
+
28
+ see detail in https://www.npmjs.com/package/is-var-name
29
+ `),xe=_.string().trim().min(1).custom(w=>{if(ms(w)>H.MAX_TITLE_LENGTH)throw new Error(`title length should not exceed ${H.MAX_TITLE_LENGTH} (see: https://www.npmjs.com/package/cjk-length)`);if(w.includes("."))throw new Error('title cannot contain "."');return w}).meta({className:"TTitle"});var ds=F.titleSchema=xe;const Oe=_.string().trim().min(3).max(160).meta({className:"TDescription"});F.descriptionSchema=Oe;const _t=_.string().trim().min(3).max(20).messages({"*":"Title length must be between 3 and 20 characters"}).meta({className:"TInstallBlockletTitle"});var ps=F.installBlockletTitleSchema=_t;const wt=_.string().trim().min(3).max(80).messages({"*":"Description length must be between 3 and 80 characters"}).meta({className:"TInstallBlockletDescription"});var gs=F.installBlockletDescriptionSchema=wt;const Et=_.string().uri({scheme:["http","https"],allowRelative:!0}).allow("").custom((w,$)=>w.includes(Je.WELLKNOWN_BLOCKLET_LOGO_PATH)?$.message(`logo url should not include ${Je.WELLKNOWN_BLOCKLET_LOGO_PATH}`):w).meta({className:"TLogo"});F.logoSchema=Et;const $t=_.string().trim().min(1),Pe=$t.meta({className:"TMountPoint"}).custom((w,$)=>(0,De.isValidUrlPath)(w)?w:$.message(`mountPoint cannot contain such characters space $*+~()'"!:@\\`));F.mountPointSchema=Pe;const Rt=$t.meta({className:"TUpdateMountPoint"}).custom(w=>(0,De.default)(w));F.updateMountPointSchema=Rt;const ve=_.string().custom(w=>((0,je.validateName)(w),w)).meta({className:"TBlockletName"});F.blockletNameSchema=ve;const ys=[],Me=_.string().trim().min(1).max(50).required().custom((w,$)=>w.startsWith("BLOCKLET")&&!ys.includes(w)?$.message("Env name can not start with BLOCKLET_"):w.startsWith("COMPONENT")?$.message("Env name can not start with COMPONENT_"):w.startsWith("ABTNODE")?$.message("Env name can not start with ABTNODE_"):/[^\w]/.test(w)?$.message('Env name can include only numbers or letters or "_"'):w).meta({className:"TEnvironmentName",unknownType:"any"});F.environmentNameSchema=Me;const Fe=_.object({name:Me.required(),description:_.string().trim().required(),default:_.string().optional().allow("").default(""),required:_.boolean().default(!1),secure:_.boolean().default(!1),validation:_.string().optional(),shared:_.boolean().default(w=>w.secure?!1:void 0)}).custom((w,$)=>w.secure&&w.default?$.message(`Cannot declare default value for secure env ${w.name}`):w).meta({className:"TEnvironment",unknownType:"any"});F.environmentSchema=Fe;const qe=_.object({dev:_.string().trim().min(1),e2eDev:_.string().trim().min(1),preFlight:_.string().trim().min(1),preInstall:_.string().trim().min(1),postInstall:_.string().trim().min(1),preStart:_.string().trim().min(1),postStart:_.string().trim().min(1),preStop:_.string().trim().min(1),preUninstall:_.string().trim().min(1),preConfig:_.string().trim().min(1)}).rename("pre-flight","preFlight").rename("pre-install","preInstall").rename("post-install","postInstall").rename("pre-start","preStart").rename("post-start","postStart").rename("pre-stop","preStop").rename("pre-uninstall","preUninstall").rename("pre-config","preConfig").optional().meta({className:"TScripts",unknownType:"any"});F.scriptsSchema=qe;const Be=_.object({name:_.string().required().trim(),config:_.object().optional().default({})}).unknown(!0).meta({className:"TService",unknownType:"any"});F.serviceSchema=Be;const Ue=_.object({type:_.string().trim(!0).min(1).required(),path:_.string().required(),meta:_.object({vcType:_.string(),payable:_.boolean(),params:_.array().items({name:_.string().required().trim(),description:_.string().required().trim()})})}).meta({className:"TEndpoint",unknownType:"any"});F.endpointSchema=Ue;const St=_.string().trim().custom((w,$)=>{const j=w.split("/").filter(Boolean);return j.length===0?$.message("cacheable path must be a valid pathname that is not /"):`/${j.join("/")}`}).meta({className:"TPathPrefix",unknownType:"any"});F.cacheableSchema=St;const ze=_.object({type:_.string().lowercase().valid(...H.BLOCKLET_INTERFACE_TYPES).required(),name:_.string().trim().required(),path:_.string().trim().default("/"),prefix:_.string().trim().min(1).default(H.BLOCKLET_DYNAMIC_PATH_PREFIX),containerPort:_.number().port().optional(),hostIP:_.string().trim().ip({version:["ipv4","ipv6"]}).optional(),protocol:_.string().lowercase().valid(...H.BLOCKLET_INTERFACE_PROTOCOLS).default("http"),port:_.alternatives().try(_.string().uppercase().default(H.BLOCKLET_DEFAULT_PORT_NAME),_.object({internal:_.string().uppercase().required(),external:_.number().port().required()})).default(H.BLOCKLET_DEFAULT_PORT_NAME),cacheable:_.array().items(St).unique(),services:_.array().items(Be).unique("name"),endpoints:_.array().items(Ue).unique("type"),pageGroups:_.array().items(_.string().min(1).max(255).trim()).unique()}).meta({className:"TInterface",unknownType:"any"});F.interfaceSchema=ze;const vs=_.alternatives().try(_.string().required(),_.object({url:_.string().uri({scheme:["http","https","file"]}).required(),name:ve.required(),version:_.alternatives().try(_.string().valid("latest"),_.semverRange().valid())}),_.object({store:_.string().uri({scheme:["http","https"]}).required(),name:ve.required(),version:_.alternatives().try(_.string().valid("latest"),_.semverRange().valid()).default("latest")})),Te=_.object({platform:_.string().valid(...H.BLOCKLET_PLATFORMS).optional(),interpreter:_.string().valid("binary","node","blocklet").default("node"),source:vs,args:_.array().items(_.string()).optional().default([])}).meta({className:"TEngine",unknownType:"any"});F.engineSchema=Te;const we=_.object({name:_.string().min(1).required(),email:_.string().email({tlds:!1}).optional(),url:_.string().uri().optional()}).meta({className:"TPerson",unknownType:"any"});F.personSchema=we;const Ee=_.object({tarball:_.alternatives().try(_.string().uri(),_.string()).required(),integrity:_.string().required(),size:_.number().optional()}).meta({className:"TDist",unknownType:"any"});F.distSchema=Ee;const xt=_.object({downloads:_.number().integer().greater(-1),star:_.number().default(0),purchases:_.number().default(0)}).meta({className:"TStats",unknownType:"any"});F.statsSchema=xt;const bs=_.alternatives().try(_.object({url:_.alternatives().try(_.string().uri(),_.array().items(_.string().uri()).min(1)).required(),version:_.alternatives().try(_.string().valid("latest"),_.semverRange().valid())}),_.object({store:_.string().uri({scheme:["http","https"]}),name:ve.required(),version:_.alternatives().try(_.string().valid("latest"),_.semverRange().valid()).default("latest")})),Ot={source:bs.required(),required:_.boolean(),title:xe,description:Oe,mountPoint:Pe,name:ve},kt=(w,$)=>_.object(w).custom((j,I)=>!$&&j.source&&j.source.name&&!j.source.store?I.message(`missing 'store' in source of component ${j.name}`):j),Ve=kt(Ot).meta({className:"TComponent",unknownType:"any"});F.componentSchema=Ve;const _s=kt(Ot,!0),At=({checkStore:w}={})=>{const $=[Ve,_s];return _.array().items(w?$[0]:$[1]).optional().default([])},It=_.object({type:_.string().required(),name:_.string().required(),signer:_.string().required(),pk:_.string().required(),created:_.string().isoDate().required(),sig:_.string().required(),excludes:_.array().items(_.string()).optional(),appended:_.array().items(_.string()).optional(),delegatee:_.string(),delegateePk:_.string(),delegation:_.string()}).meta({className:"TSignature",unknownType:"any"});F.signatureSchema=It;const rt=["en","zh","fr","ru","ar","es","de","pt","ja","hi"],st={id:_.string().custom(hs),title:_.alternatives().try(_.string().min(1).max(H.MAX_TITLE_LENGTH),_.object().min(1).pattern(_.string().valid(...rt),_.string().min(1).max(H.MAX_TITLE_LENGTH))).required(),link:_.alternatives().try(_.string().custom(tt),_.object().min(1).pattern(_.string().valid(...rt),_.string().custom(tt))),component:_.string().min(1),section:_.array().items(_.string().min(1)).single(),role:_.array().items(_.string().min(1)).single(),icon:_.string().min(1),visible:_.boolean()},jt=_.object({...st,items:_.array().items(_.object({...st}).rename("child","component"))}).rename("child","component").meta({className:"TNavigationItem",unknownType:"any"});F.navigationItemSchema=jt;const Ge=_.array().items(jt).unique((w,$)=>w.id&&$.id?w.id===$.id:!1).meta({className:"TNavigation",unknownType:"any"});F.navigationSchema=Ge;const We=_.object({background:_.alternatives().try(_.string().min(1),_.object({header:_.string().min(1),footer:_.string().min(1),default:_.string().min(1)}).min(1))}).meta({className:"TTheme",unknownType:"any"});F.themeSchema=We;const Tt=_.object({whoCanAccess:_.string().valid("owner","invited","all"),profileFields:_.array().items(_.string().valid("fullName","email","avatar","phone")).unique(),ignoreUrls:_.array().items(_.string().min(1)),allowSwitchProfile:_.boolean(),blockUnauthenticated:_.boolean(),blockUnauthorized:_.boolean()}).options({stripUnknown:!0}).meta({className:"TAuthConfig",unknownType:"any"});F.authConfigSchema=Tt;const ws=_.object({type:_.string().trim().min(1).required(),description:_.string().trim().min(1)}),Ke=_.object({did:_.DID().trim().required(),type:_.string().trim().min(1).required(),public:_.boolean()}).meta({className:"TResourceBundle",unknownType:"any"});F.resourceBundleSchema=Ke;const Lt={did:_.DID().trim().required(),version:_.semver().valid().required(),name:_.string().optional(),description:Oe.required(),group:_.string().valid(...H.BLOCKLET_GROUPS),main:_.string().trim(),title:xe.optional().allow(""),logo:_.string().trim().optional(),specVersion:_.semver().valid().gte("1.0.0").optional(),author:we.optional(),contributors:_.array().items(we).optional(),maintainers:_.array().items(we).optional(),community:_.string().uri().optional().allow("").default(""),documentation:_.string().uri().optional().allow("").default(""),homepage:_.string().uri().optional().allow("").default(""),license:_.string().optional().allow("").default(""),support:_.alternatives().try(_.string().uri(),_.string().email({tlds:!1})).optional(),nftFactory:_.DID().optional().allow("").default(""),payment:_.object({price:_.array().max(1).items(_.object({value:_.number().greater(0).required(),address:_.DID().required()})).default([]),share:_.array().max(4).items(_.object({name:_.string().required(),address:_.DID().required(),value:_.number().greater(0).max(1).required()})).default([]).custom(w=>{if(w.length===0)return w;const $=w.reduce((j,I)=>j+I.value,0);if($!==1)throw new Error(`Invalid blocklet payment share config: total share must be 1, got ${$}`);return w},"invalid blocklet share"),componentPrice:_.array().items(_.object({parentPriceRange:_.array().items(_.number()).custom((w,$)=>w.length!==2?$.message("length of range should be 2"):w[0]<0?$.message("the first value should not less than 0 in range"):w[1]<=w[0]?$.message("the second value should greater than the first value in range"):w),type:_.string().valid("fixed","percentage").required(),value:_.number().greater(0).required()})).single()}).default({price:[],share:[]}),keywords:_.alternatives().try(_.string().trim().min(1),_.array().items(_.string().min(1))).optional(),tags:_.alternatives().try(_.string().trim().min(1),_.array().items(_.string().min(1))).optional(),gitHash:_.string().optional().allow(""),repository:_.alternatives().try(_.string().min(1),_.object({type:_.string().valid("git","https","svn").required(),url:_.string().uri().required(),directory:_.string()})).optional(),timeout:_.object({start:_.number().min(10).max(600),script:_.number().min(1).max(1800)}).default({start:60}),requirements:_.object({abtnode:_.semverRange().valid(),server:_.semverRange().valid(),os:_.alternatives().try(_.string().valid("*",...H.BLOCKLET_PLATFORMS),_.array().items(_.string().valid(...H.BLOCKLET_PLATFORMS)).min(1)),cpu:_.alternatives().try(_.string().valid("*",...H.BLOCKLET_ARCHITECTURES),_.array().items(_.string().valid(...H.BLOCKLET_ARCHITECTURES)).min(1)),fuels:_.array().items(_.object({endpoint:_.string().trim().required(),address:_.string().trim(),value:_.string().trim().required(),reason:_.string().trim().required()})),nodejs:_.semverRange().valid()}).default({server:H.BLOCKLET_LATEST_REQUIREMENT_SERVER,os:"*",cpu:"*",nodejs:"*"}),interfaces:_.array().items(ze).unique("name").custom((w,$)=>{if(w.filter(A=>A.type===H.BLOCKLET_INTERFACE_TYPE_WEB).length>1)return $.message(`Only one ${H.BLOCKLET_INTERFACE_TYPE_WEB} interface can be declared`);const I=w.filter(A=>A.type===H.BLOCKLET_INTERFACE_TYPE_WELLKNOWN);for(const A of I)if(!A.prefix.startsWith(et))return $.message(`Wellknown path prefix must start with: ${et}`);return w}).default([]),environments:_.array().items(Fe).default([]).optional().custom((w,$)=>{if(w&&w.length){const j=w.filter((I,A)=>w.findIndex(R=>R.name===I.name)!==A);if(j.length)return $.message(`find duplicate environment names ${j.map(I=>I.name).join(", ")}`)}return w}),scripts:qe,capabilities:_.object({clusterMode:_.boolean(),didSpace:_.string().valid(...Object.values(H.BLOCKLET_APP_SPACE_REQUIREMENT)).optional(),navigation:_.boolean().default(!0),serverless:_.boolean().optional(),component:_.boolean(),sitemap:_.boolean().optional()}).default({}),files:_.array().items(_.string().trim()).optional(),resource:_.object({exportApi:_.string().trim(),bundles:_.array().items(Ke),types:_.array().items(ws).max(10)}),engine:_.alternatives().try(Te,_.array().items(Te)).optional(),screenshots:_.array().items(_.string().min(1)).optional().default([]),videos:_.array().items(_.string().pattern(/^https:\/\/(www\.)?(youtube\.com|youtu\.be|vimeo\.com)\/[\w\-/?&=]+/).message("Each video URL must be a valid YouTube or Vimeo link")).max(3).optional(),logoUrl:_.string().optional().allow(""),dist:Ee.optional(),stats:xt.optional(),htmlAst:_.any().optional(),path:_.string().optional(),signatures:_.array().items(It).optional(),lastPublishedAt:_.string().isoDate().optional(),components:At(),navigation:Ge,theme:We,copyright:_.object({owner:_.string().min(1),year:_.alternatives().try(_.string(),_.number())}),bundleName:_.string(),bundleDid:_.DID().trim(),storeId:_.string()},Es=_.object(Lt).options({stripUnknown:!0,noDefaults:!1}).meta({className:"TBlockletMeta",unknownType:"any"});F.blockletMetaSchema=Es;const Nt=(w,{ensureFiles:$=!1,ensureDist:j=!1,ensureComponentStore:I=!0,ensureName:A=!1,skipValidateDidName:R=!1,...y}={})=>((!w||!ns.default.existsSync(w))&&($=!1),_.object({...Lt,owner:_.object({avatar:_.string().optional(),did:_.DID().trim().required(),fullName:_.string().trim().required(),email:_.string().optional().allow(null).empty("").default("")}).optional(),logo:$?_.file().trim().exists({baseDir:w}).optional():_.string().trim().optional(),files:_.array().items($?_.file().exists({baseDir:w,canSkip:(o,d)=>[H.BLOCKLET_ENTRY_FILE,H.BLOCKLET_BUNDLE_FILE].includes(d)||(0,os.default)(d)}):_.string().trim()).optional(),dist:j?Ee.required():Ee.optional(),components:At({checkStore:I}),name:A?_.string().optional():_.string().required(),egress:_.boolean().optional().default(!0),docker:us.dockerSchema}).options({stripUnknown:!0,noDefaults:!1,...y}).rename("children","components").custom((o,d)=>{const{did:h,name:c,docker:e}=o;if(e){const{image:s,dockerfile:r,network:t}=e;if(!s&&!r)return d.message("Image or dockerfile must be set");if(s&&r)return d.message("Image and dockerfile cannot be set at the same time");if(t)return d.message("ExportPorts and network cannot be set at the same time");if(r&&(o.files||(o.files=[]),o.files.push(r)),e.volumes)for(const l of e.volumes){if(!l.startsWith("$BLOCKLET_APP_DIR/")&&!l.startsWith("$BLOCKLET_DATA_DIR/"))return d.message("Volume must start with $BLOCKLET_APP_DIR or $BLOCKLET_DATA_DIR");if(l.indexOf("..")>-1)return d.message('Volume cannot contain ".."')}}let i;if((0,cs.isValid)(h))try{return(0,je.validateNewDid)(h),o}catch(s){i=s}if(c){(0,je.validateName)(c,{checkDid:!R});const s=(0,fs.default)(c);return s!==h?d.message(`The did of name "${c}" should be "${s}"`):o}return i?d.message(i.message):o}));F.createBlockletSchema=Nt;F.default={blockletNameSchema:ve,componentSchema:Ve,endpointSchema:Ue,serviceSchema:Be,createBlockletSchema:Nt,interfaceSchema:ze,environmentSchema:Fe,environmentNameSchema:Me,scriptsSchema:qe,personSchema:we,distSchema:Ee,titleSchema:xe,descriptionSchema:Oe,logoSchema:Et,navigationSchema:Ge,themeSchema:We,mountPointSchema:Pe,updateMountPointSchema:Rt,authConfigSchema:Tt,resourceBundleSchema:Ke,installBlockletTitleSchema:_t,installBlockletDescriptionSchema:wt,Joi:_};export{gs as a,ps as i,yt as n,F as s,ds as t};
@@ -0,0 +1 @@
1
+ import{h2 as o}from"./index-CWbfhRhH.js";const t=new o,c=t;export{c as b};