@jxsuite/studio 8.0.1 → 8.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/dist/chunks/{2020-5wtzce5g.js → 2020-dg097k3e.js} +3 -3
  2. package/dist/chunks/adapter-tck81zft.js +4 -0
  3. package/dist/chunks/{add-new-flow-psym14sn.js → add-new-flow-a1w0bnm6.js} +3 -3
  4. package/dist/chunks/{cf-account-picker-haqazq5r.js → cf-account-picker-ce3kp3x1.js} +3 -3
  5. package/dist/chunks/cf-settings-7ye6x7g2.js +4 -0
  6. package/dist/chunks/color-4gj49xq6.js +4 -0
  7. package/dist/chunks/{color-area-6rbra5dy.js → color-area-vh9cew51.js} +2 -2
  8. package/dist/chunks/{color-field-gy56c94g.js → color-field-e78f16bs.js} +3 -3
  9. package/dist/chunks/{color-slider-sqqdyf6c.js → color-slider-fg4yhvk6.js} +2 -2
  10. package/dist/chunks/{combobox-72h32ejk.js → combobox-6hs00996.js} +2 -2
  11. package/dist/chunks/components-qce0v93f.js +4 -0
  12. package/dist/chunks/content-source-jjx8kgzr.js +4 -0
  13. package/dist/chunks/{convert-to-repeater-he70fc2b.js → convert-to-repeater-grnmea6c.js} +3 -3
  14. package/dist/chunks/editor-bkja5dbv.js +4 -0
  15. package/dist/chunks/entry-commands-1wh0btvg.js +4 -0
  16. package/dist/chunks/{extension-sections-0egb88dm.js → extension-sections-rp7fkega.js} +3 -3
  17. package/dist/chunks/file-ops-6pe4z7an.js +4 -0
  18. package/dist/chunks/files-ybpp3j38.js +4 -0
  19. package/dist/chunks/format-host-3mtbhxk1.js +4 -0
  20. package/dist/chunks/fs-events-xfanfxds.js +4 -0
  21. package/dist/chunks/grid-open-dg5qmnaj.js +4 -0
  22. package/dist/chunks/{grid-view-qg1b5eqx.js → grid-view-x26rfpz1.js} +16 -15
  23. package/dist/chunks/{icons-63bjtbs7.js → icons-853n6qt3.js} +2 -2
  24. package/dist/chunks/{iframe-entry-2zggzajv.js → iframe-entry-02wzcyvy.js} +4 -4
  25. package/dist/chunks/{iframe-entry-99nr5zfb.js → iframe-entry-42hpmwz5.js} +4 -4
  26. package/dist/chunks/{iframe-entry-76j8vwwx.js → iframe-entry-b5qgggyp.js} +2 -2
  27. package/dist/chunks/iframe-host-j2bk2xkc.js +4 -0
  28. package/dist/chunks/{index-32eqzv1k.js → index-203h71wy.js} +3 -3
  29. package/dist/chunks/index-fkrm7pdk.js +4 -0
  30. package/dist/chunks/{javascript-pjp734q4.js → javascript-ww5pv5ae.js} +2 -2
  31. package/dist/chunks/{jsonMode-njkvsa02.js → jsonMode-vwbdwwq3.js} +6 -6
  32. package/dist/chunks/jx-validate-w7v32f6a.js +4 -0
  33. package/dist/chunks/layers-g7j732cm.js +4 -0
  34. package/dist/chunks/layers-panel-gjrsxcck.js +4 -0
  35. package/dist/chunks/{listbox-c421cf8c.js → listbox-7gka1h86.js} +2 -2
  36. package/dist/chunks/lit-html-jdfz9rhc.js +4 -0
  37. package/dist/chunks/media-library-9j0v4wmk.js +4 -0
  38. package/dist/chunks/media-picker-cpyyt2m0.js +4 -0
  39. package/dist/chunks/{menu-bdpzbfvs.js → menu-d2jxpgma.js} +2 -2
  40. package/dist/chunks/{monaco-binding-vq1hgnn0.js → monaco-binding-63tqze27.js} +3 -3
  41. package/dist/chunks/monaco-buffer-9wcme176.js +4 -0
  42. package/dist/chunks/{monaco-setup-xrd2cbkp.js → monaco-setup-zyyynnj8.js} +3 -3
  43. package/dist/chunks/notify-rahnnnv4.js +4 -0
  44. package/dist/chunks/platform-b2aqv7v5.js +4 -0
  45. package/dist/chunks/{popover-b89sfej7.js → popover-9tf4cjrk.js} +2 -2
  46. package/dist/chunks/publish-panel-4yk2461b.js +4 -0
  47. package/dist/chunks/{publish-quick-qx2455cj.js → publish-quick-ajzdhhs6.js} +3 -3
  48. package/dist/chunks/publish-workspace-mxestzcf.js +4 -0
  49. package/dist/chunks/quick-search-9g6z65b0.js +4 -0
  50. package/dist/chunks/references-c26enpxs.js +4 -0
  51. package/dist/chunks/right-panel-9d0e0yg7.js +4 -0
  52. package/dist/chunks/source-control-xyn3a8ds.js +4 -0
  53. package/dist/chunks/{split-c9zfdgxf.js → split-m5rwn31z.js} +2 -2
  54. package/dist/chunks/{studio-x9hsze61.js → studio-02phtmqn.js} +4 -4
  55. package/dist/chunks/{studio-4hp8pkyt.js → studio-0khd0xdw.js} +4 -4
  56. package/dist/chunks/studio-1fvzq9vs.js +5 -0
  57. package/dist/chunks/studio-1gdfsr49.js +12 -0
  58. package/dist/chunks/{studio-3q40e3rj.js → studio-1meqbxns.js} +4 -4
  59. package/dist/chunks/{studio-q0tccd43.js → studio-1yhz0s8p.js} +4 -4
  60. package/dist/chunks/studio-25a5by3h.js +5 -0
  61. package/dist/chunks/{studio-k3xxbagr.js → studio-2b8443ms.js} +3 -3
  62. package/dist/chunks/{studio-3qqjeep5.js → studio-2c2mjyzj.js} +5 -5
  63. package/dist/chunks/studio-2dtc90zs.js +10 -0
  64. package/dist/chunks/{studio-9tmebf0s.js → studio-332hesdk.js} +4 -4
  65. package/dist/chunks/{studio-03ct6yfv.js → studio-3pndhat0.js} +8 -8
  66. package/dist/chunks/{studio-s32578pn.js → studio-3q6n9qvq.js} +4 -4
  67. package/dist/chunks/studio-4dsdnan2.js +9 -0
  68. package/dist/chunks/{studio-ed1hp6zf.js → studio-4fjqdzrb.js} +5 -5
  69. package/dist/chunks/{studio-jcnsdaep.js → studio-533py3yy.js} +4 -4
  70. package/dist/chunks/studio-5abge3wy.js +5 -0
  71. package/dist/chunks/{studio-8tr6cfrc.js → studio-6vrxzkba.js} +4 -4
  72. package/dist/chunks/{studio-jaaz8ce9.js → studio-73wz63nn.js} +4 -4
  73. package/dist/chunks/{studio-bavb31r0.js → studio-74nzv280.js} +4 -4
  74. package/dist/chunks/{studio-q7rtx6zq.js → studio-7cg75gtj.js} +7 -7
  75. package/dist/chunks/studio-89cwmnae.js +5 -0
  76. package/dist/chunks/studio-8m1t83kn.js +7 -0
  77. package/dist/chunks/{studio-q0mvbaq6.js → studio-8nyw10dp.js} +4 -4
  78. package/dist/chunks/{studio-83mk4bgg.js → studio-94ppxeqy.js} +8 -8
  79. package/dist/chunks/{studio-qmn1xc24.js → studio-957jg8g3.js} +4 -4
  80. package/dist/chunks/{studio-r5qy30vx.js → studio-9wyqyfqy.js} +4 -4
  81. package/dist/chunks/studio-a3evp7f6.js +6 -0
  82. package/dist/chunks/{studio-n0c5h6mf.js → studio-a6x058ew.js} +4 -4
  83. package/dist/chunks/studio-ana67wax.js +5 -0
  84. package/dist/chunks/studio-b4xhpcwy.js +4 -0
  85. package/dist/chunks/studio-bf0rgyf7.js +5 -0
  86. package/dist/chunks/{studio-x1x167jh.js → studio-bqgs90r8.js} +4 -4
  87. package/dist/chunks/{studio-qwdqwkj0.js → studio-c4rcaftm.js} +4 -4
  88. package/dist/chunks/{studio-mn0476ag.js → studio-c5dj3dzk.js} +4 -4
  89. package/dist/chunks/studio-cgjt1zce.js +5 -0
  90. package/dist/chunks/{studio-bbe4c90a.js → studio-cpdzrdgp.js} +4 -4
  91. package/dist/chunks/studio-cq87hree.js +5 -0
  92. package/dist/chunks/studio-d140sy8e.js +5 -0
  93. package/dist/chunks/{studio-jsgf2q5k.js → studio-dmn7gpba.js} +5 -5
  94. package/dist/chunks/studio-e8pzjjhf.js +5 -0
  95. package/dist/chunks/{studio-dgk4dqtx.js → studio-f8kz3krj.js} +5 -5
  96. package/dist/chunks/{studio-qgh13jtz.js → studio-fqs1a22a.js} +4 -4
  97. package/dist/chunks/{studio-syreb644.js → studio-fw3jp9m7.js} +4 -4
  98. package/dist/chunks/{studio-ed3xx40h.js → studio-g6ysm05p.js} +6 -6
  99. package/dist/chunks/studio-gmhd0j3f.js +5 -0
  100. package/dist/chunks/{studio-p4nrkvqr.js → studio-gqpty626.js} +4 -4
  101. package/dist/chunks/{studio-kt3pjkwd.js → studio-grp684wx.js} +4 -4
  102. package/dist/chunks/{studio-df0baea9.js → studio-h98520qr.js} +4 -4
  103. package/dist/chunks/{studio-8m0y2qe7.js → studio-hnx1h1pr.js} +4 -4
  104. package/dist/chunks/studio-hvxt8z79.js +5 -0
  105. package/dist/chunks/{studio-43sd2mam.js → studio-hw60n5dh.js} +3 -3
  106. package/dist/chunks/{studio-wbcjbhy1.js → studio-hxq1ebp0.js} +6 -6
  107. package/dist/chunks/{studio-wys23mxz.js → studio-j4e627w1.js} +4 -4
  108. package/dist/chunks/{studio-ccv2svc6.js → studio-j5jqvyn3.js} +4 -4
  109. package/dist/chunks/{studio-881z1xrx.js → studio-jqrg9xxg.js} +4 -4
  110. package/dist/chunks/{studio-b7y5mr30.js → studio-kdseew9m.js} +4 -4
  111. package/dist/chunks/studio-kt2j51sa.js +5 -0
  112. package/dist/chunks/{studio-d5grtb9e.js → studio-m4w6sygj.js} +9 -9
  113. package/dist/chunks/{studio-zz9qe3rw.js → studio-mmqr9awv.js} +37 -37
  114. package/dist/chunks/{studio-5g0rprdt.js → studio-nm9qev4p.js} +5 -5
  115. package/dist/chunks/{studio-tft6r105.js → studio-nsv7g1qn.js} +4 -4
  116. package/dist/chunks/{studio-3e54qh39.js → studio-p89w12s2.js} +5 -5
  117. package/dist/chunks/{studio-y3ahhdpx.js → studio-pbagym4j.js} +4 -4
  118. package/dist/chunks/{studio-w4rz9hdk.js → studio-pr23qhrw.js} +4 -4
  119. package/dist/chunks/{studio-6m380wp7.js → studio-r4ya3sb2.js} +4 -4
  120. package/dist/chunks/studio-rdnezzkd.js +6 -0
  121. package/dist/chunks/{studio-f14e1zdj.js → studio-rm9m3z60.js} +4 -4
  122. package/dist/chunks/studio-tpmnbgmt.js +5 -0
  123. package/dist/chunks/studio-ttxhq5yt.js +5 -0
  124. package/dist/chunks/{studio-nh6d342n.js → studio-txkx6586.js} +6 -6
  125. package/dist/chunks/{studio-a2bvaptz.js → studio-v0gsjav0.js} +4 -4
  126. package/dist/chunks/{studio-fbhxxc5f.js → studio-v2ek69cb.js} +4 -4
  127. package/dist/chunks/{studio-y0n7yxea.js → studio-wcakp5bt.js} +7 -7
  128. package/dist/chunks/{studio-k7evxqh4.js → studio-x3ge4rts.js} +4 -4
  129. package/dist/chunks/{studio-pbxa5fpc.js → studio-xddgbwhe.js} +3 -3
  130. package/dist/chunks/{studio-c05wdnt3.js → studio-y1x65h5r.js} +4 -4
  131. package/dist/chunks/{studio-rthyg42z.js → studio-z42kysg7.js} +169 -169
  132. package/dist/chunks/studio-zf188hnd.js +5 -0
  133. package/dist/chunks/{studio-tfkznv39.js → studio-zht0x0v3.js} +4 -4
  134. package/dist/chunks/{studio-svb7yyve.js → studio-zm7dnr9g.js} +4 -4
  135. package/dist/chunks/{tooltip-yypz28gq.js → tooltip-dj1pvgz7.js} +2 -2
  136. package/dist/chunks/{tree-9xa4hm7n.js → tree-j0ebwr5s.js} +2 -2
  137. package/dist/chunks/{tsMode-epyfz1hv.js → tsMode-vra2hh7y.js} +5 -5
  138. package/dist/chunks/workspace-3nt93k48.js +4 -0
  139. package/dist/chunks/workspace-home-zbgyqqws.js +4 -0
  140. package/dist/chunks/{ws-client-bv552sfx.js → ws-client-72x5n99j.js} +3 -3
  141. package/dist/iframe-entry.js +14 -14
  142. package/dist/manifest.json +75 -75
  143. package/dist/studio.js +80 -80
  144. package/package.json +11 -11
  145. package/src/browse/component-examples.ts +15 -224
  146. package/src/browse/library-preview.ts +6 -13
  147. package/src/browse/preview-root.ts +7 -4
  148. package/src/canvas/canvas-utils.ts +18 -4
  149. package/src/canvas/iframe-editable-root.ts +13 -4
  150. package/src/canvas/iframe-entry.ts +3 -1
  151. package/src/canvas/iframe-interaction.ts +11 -2
  152. package/src/canvas/iframe-render.ts +25 -3
  153. package/src/canvas/preview-placeholder.ts +120 -0
  154. package/src/editor/shortcuts.ts +3 -0
  155. package/src/panels/component-preview.ts +5 -0
  156. package/src/panels/pane-context.ts +43 -18
  157. package/src/panels/site-model.ts +7 -19
  158. package/src/panels/site-panel.ts +2 -25
  159. package/src/panels/stylebook-doc.ts +2 -53
  160. package/src/services/references.ts +0 -0
  161. package/src/style/stylebook-specimens.ts +11 -15
  162. package/src/surfaces/pane-context.json +286 -265
  163. package/src/surfaces/pane-context.ts +17 -8
  164. package/src/tabs/tab.ts +5 -6
  165. package/src/utils/geometry.ts +49 -2
  166. package/dist/chunks/adapter-5tphg7xe.js +0 -4
  167. package/dist/chunks/cf-settings-h2wrh6hq.js +0 -4
  168. package/dist/chunks/color-m7r1vk54.js +0 -4
  169. package/dist/chunks/components-r22xca09.js +0 -4
  170. package/dist/chunks/content-source-mmppmcyg.js +0 -4
  171. package/dist/chunks/editor-ccd9jwsa.js +0 -4
  172. package/dist/chunks/entry-commands-6qxz9e8p.js +0 -4
  173. package/dist/chunks/file-ops-qnab36ek.js +0 -4
  174. package/dist/chunks/files-rcn56qvm.js +0 -4
  175. package/dist/chunks/format-host-yxz0kjjs.js +0 -4
  176. package/dist/chunks/fs-events-d1qxq4z4.js +0 -4
  177. package/dist/chunks/grid-open-4z1g062t.js +0 -4
  178. package/dist/chunks/iframe-host-ssv7kyj0.js +0 -4
  179. package/dist/chunks/index-f0jn7nnp.js +0 -4
  180. package/dist/chunks/jx-validate-ttasrbh7.js +0 -4
  181. package/dist/chunks/layers-bgyr11tr.js +0 -4
  182. package/dist/chunks/layers-panel-7ez66zeq.js +0 -4
  183. package/dist/chunks/lit-html-v9gh687x.js +0 -4
  184. package/dist/chunks/media-library-sq468wts.js +0 -4
  185. package/dist/chunks/media-picker-shfe59pt.js +0 -4
  186. package/dist/chunks/monaco-buffer-3afgwvbp.js +0 -4
  187. package/dist/chunks/notify-kzrjr3fv.js +0 -4
  188. package/dist/chunks/platform-7v4rtd7m.js +0 -4
  189. package/dist/chunks/publish-panel-2z9gw8ee.js +0 -4
  190. package/dist/chunks/publish-workspace-wrc1dgwx.js +0 -4
  191. package/dist/chunks/quick-search-n0t0eqxb.js +0 -4
  192. package/dist/chunks/references-9547rg5s.js +0 -4
  193. package/dist/chunks/right-panel-wsgnr9pn.js +0 -4
  194. package/dist/chunks/source-control-kwktr9y6.js +0 -4
  195. package/dist/chunks/studio-07rcfje3.js +0 -5
  196. package/dist/chunks/studio-3exxhz5g.js +0 -5
  197. package/dist/chunks/studio-3qeh9t0h.js +0 -6
  198. package/dist/chunks/studio-58xg6j2q.js +0 -9
  199. package/dist/chunks/studio-80jyh1xh.js +0 -4
  200. package/dist/chunks/studio-8vcvfs7r.js +0 -6
  201. package/dist/chunks/studio-fyh0jc96.js +0 -5
  202. package/dist/chunks/studio-gcxk20n7.js +0 -5
  203. package/dist/chunks/studio-m8g16bgz.js +0 -5
  204. package/dist/chunks/studio-mx1smyq0.js +0 -5
  205. package/dist/chunks/studio-pgmvdv7z.js +0 -7
  206. package/dist/chunks/studio-ph84avkf.js +0 -5
  207. package/dist/chunks/studio-rj9eamf8.js +0 -5
  208. package/dist/chunks/studio-rptgsk96.js +0 -5
  209. package/dist/chunks/studio-s19tp1xr.js +0 -5
  210. package/dist/chunks/studio-tf9jryb1.js +0 -10
  211. package/dist/chunks/studio-txf2kysx.js +0 -5
  212. package/dist/chunks/studio-v8867ddv.js +0 -12
  213. package/dist/chunks/studio-vxq7fcvv.js +0 -5
  214. package/dist/chunks/studio-wc649wss.js +0 -5
  215. package/dist/chunks/studio-z97c48fk.js +0 -5
  216. package/dist/chunks/studio-zat62m0c.js +0 -5
  217. package/dist/chunks/studio-zcd2e7yz.js +0 -5
  218. package/dist/chunks/workspace-dz7nxfhv.js +0 -4
  219. package/dist/chunks/workspace-home-xsd7hkjw.js +0 -4
@@ -1,5 +1,5 @@
1
- import{mt,io}from"./studio-k3xxbagr.js";import{UA,bC,Pt,Nt,uh,ZA,ae}from"./studio-q7rtx6zq.js";import{ge,ne,g,eu,C,Lh}from"./studio-43sd2mam.js";import{Q}from"./studio-nqxqf8p2.js";import{n,te}from"./studio-vxq7fcvv.js";var qe="data-jx-region",fe=["rail","navigator","inspector","pane","dock.bottom","statusbar","commandbar","overlay"],pe=new Set(["dock.bottom"]);function me(e){let t=e.indexOf("/"),o=t===-1?e:e.slice(0,t),r=t===-1?void 0:e.slice(t+1);if(r===""||o==="")return null;let s=o,i;if(!pe.has(o)){let c=o.indexOf(".");if(c!==-1){if(s=o.slice(0,c),i=o.slice(c+1),i==="")return null}}let l=fe.find((c)=>c===s);if(l===void 0)return null;return i===void 0?r===void 0?{surface:l}:{part:r,surface:l}:r===void 0?{instance:i,surface:l}:{instance:i,part:r,surface:l}}function ve(e){return me(e)!==null}function he(e){if(e==="pane")return"pane.primary";return e.startsWith("pane/")?`pane.primary/${e.slice(5)}`:e}function X(e){return e??document}var be=[{locate:([,e],t)=>{let r=Mp(`inspector/field:${e}`,t)?.querySelector('[part="browse"]');return r?[r]:[]},pattern:/^inspector\/field:(.+)\/browse$/},{locate:([,e],t)=>{let o=Mp("inspector",t);return o?[...o.querySelectorAll(`[data-prop="${CSS.escape(e)}"]`)]:[]},pattern:/^inspector\/field:(.+)$/}];function ye(e,t){let o=he(e);if(!ve(o))return[];let r=[...X(t).querySelectorAll(`[data-jx-region="${CSS.escape(o)}"]`)];if(r.length>0)return r;for(let s of be){let i=o.match(s.pattern);if(i)return s.locate(i,X(t))}return[]}function Mp(e,t){return ye(e,t).at(-1)??null}var b$={dock:"dock.bottom",inspector:"inspector",navigator:"navigator",pane:"pane.primary",rail:"rail",status:"statusbar"};function wi(e,t){return t?`pane.${e}/${t}`:`pane.${e}`}function FA(e){return wi(e,"tabs")}function jA(e){return`navigator/panel:${e}`}function HA(e){return`inspector/tab:${e}`}var BA="navigator/statements";function zA(e){return`inspector/statements:${e}`}function fx(e){return`dock.bottom/panel:${e}`}var xe={dialog:"dialog",modal:"dialog",popover:"menu",toast:"toasts"};function ft(e,t){let o=xe[e];return t?`overlay.${o}:${t}`:`overlay.${o}`}var _=new Map,Z=1;function ee(e){let t=Z;return Z+=1,_.set(t,{...e,id:t}),t}function I(e){_.delete(e)}function oe(){return[..._.values()]}function MA(e){let t=e.toLowerCase();return oe().filter((o)=>o.elements.has(t))}function PA(e){return oe().filter((t)=>t.name===e)}var F=null;function g$(e=document){return F??=ZA({document:e}),F}function re(){return F??g$()}var E="jx-studio:/surfaces/",M=new Map;function T(e,t){M.set(e,t),bC(Se(e),t)}function Se(e){return`${E}${e}.json`}function WA(e){return M.get(e)}function $e(e){if(!e.startsWith(E)||!e.endsWith(".json"))return;return M.get(e.slice(E.length,-5))}async function R(e,t,o,r={}){let s=M.get(e);if(!s)throw Error(`Studio surface "${e}" is not registered`);if(await re(),r.region)o.setAttribute(qe,r.region);let i={scope:t,base:E,resolver:$e};if(r.onNodeCreated)i.onNodeCreated=r.onNodeCreated;if(r.onNodeMoved)i.onNodeMoved=r.onNodeMoved;if(r.signal)i.signal=r.signal;let l=await UA(s,o,i),c=(a)=>({dispose:a,elements:l.elements,root:l.root,scope:l.scope});if(r.signal?.aborted)return c(l.dispose);let d=0,p=()=>{l.dispose(),I(d)};return d=ee({elements:l.elements,host:o,name:e,remount:async()=>{p(),await R(e,t,o,r)}}),r.signal?.addEventListener("abort",()=>I(d),{once:!0}),c(p)}var ie={$schema:"https://jxsuite.com/schema/v1",$id:"StudioDialog",$description:"Studio's confirm, save-or-discard and prompt dialogs: one jx-dialog whose body is projected from the adapter's scope. `message` is a sentence; `choice` is a `jx-select` over the options; `field` is the prompt's jx-textfield with its refusal. The four answers call the host's functions, and the host decides when the dialog closes.",tagName:"jx-dialog",$props:{headline:{$ref:"#/state/headline"},confirmLabel:{$ref:"#/state/confirmLabel"},secondaryLabel:{$ref:"#/state/secondaryLabel"},cancelLabel:{$ref:"#/state/cancelLabel"},destructive:{$ref:"#/state/destructive"},size:{$ref:"#/state/size"}},attributes:{headline:"${state.headline}","confirm-label":"${state.confirmLabel || null}","secondary-label":"${state.secondaryLabel || null}","cancel-label":"${state.cancelLabel || null}",part:"dialog-host"},onconfirm:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/confirm"},value:[]}]},onsecondary:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/secondary"},value:[]}]},oncancel:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/cancel"},value:[]}]},onclose:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/closed"},value:[]}]},style:{'& [part="message"]':{$description:"The one part of a dialog that is text rather than interface, so it opts back in to selection. The root sets `user-select: none` and `styles/tokens.json` restates it on every `dialog`, so the headline, the labels and the buttons around this sentence stay unselectable; a message is often the thing a reader copies into a search or a bug report.",margin:"0 0 var(--jx-space-3)",userSelect:"text"},'& [part="message"]:last-child':{margin:"0"},'& [part="island"] > p, & [part="island"] > span, & [part="island"] > strong, & [part="island"] > em, & [part="island"] > code':{$description:"The island's own prose is the message's other form — a body richer than a sentence, written straight into the island from a lit template (studio-ui-guidelines.md §9.4) — so it is selectable for the same reason `[part=\"message\"]` is. The opt-in stops at those children because the island is ALSO the mount point for a whole document: the Open Grid picker and Push Schema's plan put their surfaces here, and `user-select` inherits, so a rule on the island itself would hand selection to every heading, source row and button they draw, which is the interface the policy exists to keep unselectable. A mounted surface roots a `div`; a message writes paragraphs and text-level spans, so the two forms are told apart by the child that arrives.",userSelect:"text"},'& [part="island"]:empty':{display:"none"},'& [part="message-slot"], & [part="choice-slot"], & [part="field-slot"]':{display:"contents"},'& [part="choice-row"]':{display:"flex",flexDirection:"column",gap:"var(--jx-space-1)",margin:"0 0 var(--jx-space-3)"},'& [part="choice-label"]':{fontSize:"var(--jx-text-sm)",color:"var(--jx-fg-dim)"},"& jx-textfield":{width:"100%"}},children:[{tagName:"div",attributes:{part:"message-slot",role:"none"},$switch:{$ref:"#/state/hasMessage"},cases:{true:{tagName:"p",attributes:{part:"message"},textContent:"${state.message}"}}},{tagName:"div",attributes:{part:"island"}},{tagName:"div",attributes:{part:"choice-slot",role:"none"},$switch:{$ref:"#/state/hasChoice"},cases:{true:{tagName:"div",attributes:{part:"choice-row"},children:[{tagName:"span",attributes:{part:"choice-label"},textContent:"${state.choiceLabel}"},{tagName:"jx-select",$props:{label:{$ref:"#/state/choiceLabel"},options:{$ref:"#/state/options"},value:{$ref:"#/state/chosen"}},attributes:{part:"choice"},onchange:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/pick"},value:[{$ref:"event#/target/value"}]}]}}]}}},{tagName:"div",attributes:{part:"field-slot",role:"none"},$switch:{$ref:"#/state/hasField"},cases:{true:{tagName:"jx-textfield",$props:{label:{$ref:"#/state/headline"},value:{$ref:"#/state/value"},placeholder:{$ref:"#/state/placeholder"},invalid:{$ref:"#/state/invalid"},error:{$ref:"#/state/error"},multiline:{$ref:"#/state/multiline"},rows:{$ref:"#/state/rows"},mono:{$ref:"#/state/mono"}},attributes:{part:"field"},oninput:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/input"},value:[{$ref:"event#/target/value"}]}]},onkeydown:{$prototype:"Function",body:[{$switch:{$ref:"#/state/singleLine"},cases:{true:[{$switch:{$ref:"event#/key"},cases:{Enter:[{preventDefault:!0},{operator:"call",target:{$ref:"#/state/confirm"},value:[]}]}}]}}]},$description:"The prompt's one field. `multiline` is what makes it a paste box rather than a line: an import the author copied out of a `_redirects` file is column-aligned, so it also asks for `mono`. A multiline field takes Enter as a newline, which is why the Enter-confirms handler below is guarded on it — a paste box whose second line submits the dialog cannot be typed into."}}}]};T("dialog",ie);function Jt(e){if(e.querySelector('[part="dialog"]'))return Promise.resolve(e);return new Promise((t)=>{e.addEventListener("jx-ready",function o(r){if(r.target!==e&&!e.querySelector('[part="dialog"]'))return;e.removeEventListener("jx-ready",o),t(e)})})}function Zs(e){let t=document.createElement("div");t.style.pointerEvents="auto",t.setAttribute(qe,ft("dialog",e.region)),e.layer.append(t);let o=g({cancel:()=>{e.onCancel()},cancelLabel:e.cancelLabel,choiceLabel:e.choice?.label??"",chosen:e.choice?.chosen??"",closed:()=>{e.onClosed()},confirm:()=>{e.onConfirm()},confirmLabel:e.confirmLabel,destructive:e.destructive===!0,error:"",hasChoice:e.choice!==void 0,hasField:e.field!==void 0,mono:e.field?.mono===!0,multiline:e.field?.multiline===!0,rows:e.field?.rows??"3",singleLine:e.field!==void 0&&e.field.multiline!==!0?"true":"false",hasMessage:e.message!==void 0&&e.message!=="",headline:e.headline,input:(a)=>{o.value=a,e.onInput?.(a)},invalid:!1,message:e.message??"",options:e.choice?.options??[],pick:(a)=>{e.onPick?.(a)},placeholder:e.field?.placeholder??"",secondary:()=>{e.onSecondary?.()},secondaryLabel:e.secondaryLabel??"",size:e.size??"sm",value:e.field?.value??""}),r=null,s=!1,i=()=>s,l=()=>{},c=new Promise((a)=>{l=a}),p=R("dialog",o,t).then(async(a)=>{let u=a.root;if(i())return a.dispose(),u;if(r=a,await Promise.race([Jt(u),c]),i())return u;if(e.island?.(u.querySelector('[part="island"]')??u),Pt(u),e.field){let x=u.querySelector("jx-textfield");if(x)setTimeout(()=>{if(!s)uh(x,e.field?.select??"all")},0)}return u});return{close(){if(s)return;s=!0,l();let a=r?.root;if(a instanceof HTMLElement)Nt(a);r?.dispose(),r=null,t.remove()},host:t,ready:p,update(a){if(a.confirmLabel!==void 0)o.confirmLabel=a.confirmLabel;if(a.cancelLabel!==void 0)o.cancelLabel=a.cancelLabel;if(a.secondaryLabel!==void 0)o.secondaryLabel=a.secondaryLabel;if(a.message!==void 0)o.message=a.message,o.hasMessage=a.message!=="";if(a.value!==void 0)o.value=a.value;if(a.placeholder!==void 0)o.placeholder=a.placeholder;if(a.invalid!==void 0)o.invalid=a.invalid;if(a.error!==void 0)if(a.error!==""&&a.error===o.error){o.error="";let u=a.error;queueMicrotask(()=>{o.error=u})}else o.error=a.error;if(a.options!==void 0)o.options=a.options;if(a.chosen!==void 0)o.chosen=a.chosen}}}var se={$schema:"https://jxsuite.com/schema/v1",$id:"StudioToasts",$description:"The toast stack: a rendering of the notification service's toasts, newest last. Each row is projected by ui/layers.ts with its severity glyph and, where a recovery command exists, that command's title and gate; the two buttons call back into the host, which owns the records and their timers.",tagName:"div",attributes:{part:"stack"},style:{position:"absolute",right:"var(--jx-space-4)",bottom:"36px",display:"flex",flexDirection:"column",gap:"var(--jx-space-3)",alignItems:"flex-end",maxWidth:"min(420px, calc(100vw - 24px))",'& [part="toast"]':{display:"flex",alignItems:"center",gap:"var(--jx-space-3)",pointerEvents:"auto",padding:"var(--jx-space-3)",border:"1px solid var(--jx-border)",borderLeft:"3px solid var(--jx-fg-dim)",borderRadius:"var(--jx-radius-md)",background:"var(--jx-bg-panel)",color:"var(--jx-fg)",fontSize:"var(--jx-text-sm)",lineHeight:"var(--jx-leading-sm)",boxShadow:"var(--jx-shadow-popover)"},'& [part="toast"][data-severity="success"]':{borderLeftColor:"var(--jx-success)"},'& [part="toast"][data-severity="info"]':{borderLeftColor:"var(--jx-accent)"},'& [part="toast"][data-severity="warn"]':{borderLeftColor:"var(--jx-warning)"},'& [part="toast"][data-severity="error"]':{borderLeftColor:"var(--jx-danger)"},'& [part="icon"]':{flex:"none",width:"14px",textAlign:"center",fontWeight:"700"},'& [data-severity="success"] [part="icon"]':{color:"var(--jx-success)"},'& [data-severity="info"] [part="icon"]':{color:"var(--jx-accent)"},'& [data-severity="warn"] [part="icon"]':{color:"var(--jx-warning)"},'& [data-severity="error"] [part="icon"]':{color:"var(--jx-danger)"},'& [part="message"]':{flex:"1",minWidth:"0",overflow:"hidden",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"3"},'& [part="action-slot"]':{display:"contents"},'& [part="action"] > [part="control"]':{color:"var(--jx-accent)"}},children:[{$prototype:"Array",items:{$ref:"#/state/toasts"},key:{$ref:"$map/item/id"},map:{tagName:"div",attributes:{part:"toast","data-severity":"${$map.item.severity}"},children:[{tagName:"span",attributes:{part:"icon","aria-hidden":"true"},textContent:"${$map.item.icon}"},{tagName:"span",attributes:{part:"message"},textContent:"${$map.item.message}"},{tagName:"span",attributes:{part:"action-slot",role:"none"},$switch:{$ref:"$map/item/hasAction"},cases:{true:{tagName:"jx-button",$props:{size:"sm",quiet:!0,disabled:{$ref:"$map/item/actionDisabled"}},attributes:{part:"action",title:"${$map.item.actionTitle}"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/runAction"},value:[{$ref:"$map/item/id"}]}]},children:[{tagName:"span",textContent:"${$map.item.actionLabel}"}]}}},{tagName:"jx-action-button",$props:{label:"Dismiss notification",hint:"Dismiss notification",icon:"x",size:"sm"},attributes:{part:"dismiss"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/dismissToast"},value:[{$ref:"$map/item/id"}]}]}}]}}]};function Te(e){return e instanceof RangeError||e instanceof Error&&e.name==="CommandUnavailableError"}function Tn(e,t,o,r=t){let s=(l)=>{if(!Te(l))console.error(`${r}: command "${t}" failed`,l);C.error(Q(l),{key:`command.run:${t}`,source:r})},i;try{i=e.run(t,o)}catch(l){return s(l),Promise.resolve()}return Promise.resolve(i).catch(s)}function rt(e,t,o){let r=ae();return r?Tn(r,e,t,o):Promise.resolve()}var de=null,z=null,J=null,j=null;function tt(e){return(e==="popover"?de:e==="modal"?z:e==="toast"?j:J)??document.body}function v$(){de=document.querySelector("#layer-popover"),z=document.querySelector("#layer-modal"),J=document.querySelector("#layer-dialog"),j=document.querySelector("#layer-toast"),Ne()}var le="jx-dialog[data-open], dialog[open]";function Wb(){return Boolean(J?.querySelector(le)||z?.querySelector(le))}function y$(){return document.querySelector(":popover-open")!==null}function Ko(e,t,o={}){let{confirmLabel:r="Confirm",cancelLabel:s="Cancel",destructive:i=!1}=o;return new Promise((l)=>{let c=!1,d=(a)=>{if(c)return;c=!0,p.close(),l(a)},p=Zs({cancelLabel:s,confirmLabel:r,destructive:i,headline:e,layer:tt("dialog"),...U(t),onCancel:()=>d(!1),onClosed:()=>d(!1),onConfirm:()=>d(!0)})})}function gC(e,t,o={}){let{saveLabel:r="Save",discardLabel:s="Discard",cancelLabel:i="Cancel"}=o;return new Promise((l)=>{let c=!1,d=(a)=>{if(c)return;c=!0,p.close(),l(a)},p=Zs({cancelLabel:i,confirmLabel:r,headline:e,layer:tt("dialog"),...U(t),onCancel:()=>d("cancel"),onClosed:()=>d("cancel"),onConfirm:()=>d("save"),onSecondary:()=>d("discard"),secondaryLabel:s})})}function U(e){if(n(e))return{message:e};return{island:(t)=>{io(e,t)}}}function xi(e,t={}){let{cancelLabel:o="Cancel",choice:r,confirmLabel:s="OK",message:i,mono:l=!1,multiline:c=!1,placeholder:d="",rows:p="3",select:a="all",size:u,validate:x,value:ue=""}=t,P=(v)=>x?x(v,L):v.trim()?"":"Enter a value.",h=ue,L=r?.initial??"",m="",V=!1,W=()=>te(d)?d():d,K=()=>r?r.options().map((v)=>({label:v.label,value:v.value})):[];return new Promise((v)=>{let B=!1,D=(f)=>{if(B)return;B=!0,k.close(),v(f)},Y=(f)=>{m=f,k.update({error:m,invalid:m!==""})},S={cancelLabel:o,confirmLabel:s,headline:e,layer:tt("dialog"),onCancel:()=>D(null),onClosed:()=>D(null),onConfirm:()=>{let f=P(h);if(f){Y(f);return}D(h.trim())},onInput:(f)=>{V=!0,h=f;let w=P(h);if(w!==m)Y(w)},onPick:(f)=>{L=f,r?.onChange?.(f);let w=P(h);m=V||m?w:"",k.update({chosen:L,error:m,invalid:m!=="",options:K(),placeholder:W()})}};if(i!==void 0)Object.assign(S,U(i));if(r)S.choice={chosen:L,label:r.label,options:K()};if(S.field={mono:l,multiline:c,placeholder:W(),rows:p,select:a,value:h},u!==void 0)S.size=u;let k=Zs(S)})}var N=new Map;function Xs(e,t){let o=`${e}:${t}`,r=N.get(o);if(r&&r.parentElement)return r;return r=document.createElement("div"),r.style.pointerEvents="auto",r.setAttribute(qe,ft(e,t)),tt(e).append(r),N.set(o,r),r}function Vb(e,t){let o=`${e}:${t}`,r=N.get(o);if(r)io(mt,r),r.remove(),N.delete(o)}var we=180,Ee={error:"✕",info:"ℹ",success:"✓",warn:"!"},A=null,y=new Map,b=new Set;function Me(){if(!("matchMedia"in globalThis))return!1;return globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches===!0}function Oe(){try{return new URLSearchParams(globalThis.location.search).get("automation")==="1"}catch{return!1}}function w$(){return[...b].map((e)=>`overlay: toast ${e} settling in`)}function q(e){let t=y.get(e);if(t!==void 0)clearTimeout(t),y.delete(e);b.delete(e),Lh(e)}function Ce(e){if(y.has(e.id)||b.has(e.id))return;let t=Me()?0:we;if(t>0)b.add(e.id),setTimeout(()=>b.delete(e.id),t);let o=e.timeoutMs??0;if(o<=0||Oe())return;y.set(e.id,setTimeout(()=>q(e.id),o))}T("toasts",se);var G=null,H=null,O=null;function ce(){return G??=g({dismissToast:(e)=>{q(e)},runAction:(e)=>{let t=eu.find((r)=>r.id===e),o=ae();if(!t?.action||!o)return;q(e),Tn(o,t.action,t.actionArgs,"Notifications")},toasts:[]}),G}function je(e){let t=e.action===void 0?null:ae(),o=e.action,r=t&&o!==void 0?t.get(o):void 0,s=r&&o!==void 0&&t.isVisible(o)?r:null,i=s&&o!==void 0?t.disabledReason(o):void 0;return{actionDisabled:i!==void 0,actionLabel:s?.title??"",actionTitle:s===null?"":i===void 0?s.title:`${s.title} — requires ${i}`,hasAction:s!==null,icon:Ee[e.severity],id:e.id,message:e.message,severity:e.severity}}function Ne(){if(Ae(),!j)return;A=ge(),A.run(()=>{ne(()=>{eu.length,ae();for(let e of eu)Ce(e);ce().toasts=eu.map((e)=>je(e))})}),H=R("toasts",ce(),j),H.then((e)=>{O=e})}function Ae(){A?.stop(),A=null;for(let t of y.values())clearTimeout(t);y.clear(),b.clear();let e=H;if(H=null,O)O.dispose(),O=null;else if(e)e.then((t)=>t.dispose());G=null}
2
- export{MA,PA,g$,qe,Mp,b$,wi,FA,jA,HA,BA,zA,fx,ft,T,WA,R,Jt,Zs,Tn,rt,tt,v$,Wb,y$,Ko,gC,xi,Xs,Vb,w$};
1
+ import{mt,no}from"./studio-2b8443ms.js";import{HA,hC,Mt,Nt,uh,qA,ae}from"./studio-7cg75gtj.js";import{ge,ne,g,Qd,C,Lh}from"./studio-hw60n5dh.js";import{Q}from"./studio-nqxqf8p2.js";import{n,te}from"./studio-kt2j51sa.js";var qe="data-jx-region",fe=["rail","navigator","inspector","pane","dock.bottom","statusbar","commandbar","overlay"],pe=new Set(["dock.bottom"]);function me(e){let t=e.indexOf("/"),o=t===-1?e:e.slice(0,t),r=t===-1?void 0:e.slice(t+1);if(r===""||o==="")return null;let s=o,i;if(!pe.has(o)){let c=o.indexOf(".");if(c!==-1){if(s=o.slice(0,c),i=o.slice(c+1),i==="")return null}}let l=fe.find((c)=>c===s);if(l===void 0)return null;return i===void 0?r===void 0?{surface:l}:{part:r,surface:l}:r===void 0?{instance:i,surface:l}:{instance:i,part:r,surface:l}}function ve(e){return me(e)!==null}function he(e){if(e==="pane")return"pane.primary";return e.startsWith("pane/")?`pane.primary/${e.slice(5)}`:e}function X(e){return e??document}var be=[{locate:([,e],t)=>{let r=Mp(`inspector/field:${e}`,t)?.querySelector('[part="browse"]');return r?[r]:[]},pattern:/^inspector\/field:(.+)\/browse$/},{locate:([,e],t)=>{let o=Mp("inspector",t);return o?[...o.querySelectorAll(`[data-prop="${CSS.escape(e)}"]`)]:[]},pattern:/^inspector\/field:(.+)$/}];function ye(e,t){let o=he(e);if(!ve(o))return[];let r=[...X(t).querySelectorAll(`[data-jx-region="${CSS.escape(o)}"]`)];if(r.length>0)return r;for(let s of be){let i=o.match(s.pattern);if(i)return s.locate(i,X(t))}return[]}function Mp(e,t){return ye(e,t).at(-1)??null}var u$={dock:"dock.bottom",inspector:"inspector",navigator:"navigator",pane:"pane.primary",rail:"rail",status:"statusbar"};function wi(e,t){return t?`pane.${e}/${t}`:`pane.${e}`}function NA(e){return wi(e,"tabs")}function AA(e){return`navigator/panel:${e}`}function OA(e){return`inspector/tab:${e}`}var MA="navigator/statements";function PA(e){return`inspector/statements:${e}`}function ux(e){return`dock.bottom/panel:${e}`}var xe={dialog:"dialog",modal:"dialog",popover:"menu",toast:"toasts"};function ft(e,t){let o=xe[e];return t?`overlay.${o}:${t}`:`overlay.${o}`}var _=new Map,Z=1;function ee(e){let t=Z;return Z+=1,_.set(t,{...e,id:t}),t}function I(e){_.delete(e)}function oe(){return[..._.values()]}function RA(e){let t=e.toLowerCase();return oe().filter((o)=>o.elements.has(t))}function DA(e){return oe().filter((t)=>t.name===e)}var F=null;function d$(e=document){return F??=qA({document:e}),F}function re(){return F??d$()}var E="jx-studio:/surfaces/",M=new Map;function T(e,t){M.set(e,t),hC(Se(e),t)}function Se(e){return`${E}${e}.json`}function FA(e){return M.get(e)}function $e(e){if(!e.startsWith(E)||!e.endsWith(".json"))return;return M.get(e.slice(E.length,-5))}async function R(e,t,o,r={}){let s=M.get(e);if(!s)throw Error(`Studio surface "${e}" is not registered`);if(await re(),r.region)o.setAttribute(qe,r.region);let i={scope:t,base:E,resolver:$e};if(r.onNodeCreated)i.onNodeCreated=r.onNodeCreated;if(r.onNodeMoved)i.onNodeMoved=r.onNodeMoved;if(r.signal)i.signal=r.signal;let l=await HA(s,o,i),c=(a)=>({dispose:a,elements:l.elements,root:l.root,scope:l.scope});if(r.signal?.aborted)return c(l.dispose);let d=0,p=()=>{l.dispose(),I(d)};return d=ee({elements:l.elements,host:o,name:e,remount:async()=>{p(),await R(e,t,o,r)}}),r.signal?.addEventListener("abort",()=>I(d),{once:!0}),c(p)}var ie={$schema:"https://jxsuite.com/schema/v1",$id:"StudioDialog",$description:"Studio's confirm, save-or-discard and prompt dialogs: one jx-dialog whose body is projected from the adapter's scope. `message` is a sentence; `choice` is a `jx-select` over the options; `field` is the prompt's jx-textfield with its refusal. The four answers call the host's functions, and the host decides when the dialog closes.",tagName:"jx-dialog",$props:{headline:{$ref:"#/state/headline"},confirmLabel:{$ref:"#/state/confirmLabel"},secondaryLabel:{$ref:"#/state/secondaryLabel"},cancelLabel:{$ref:"#/state/cancelLabel"},destructive:{$ref:"#/state/destructive"},size:{$ref:"#/state/size"}},attributes:{headline:"${state.headline}","confirm-label":"${state.confirmLabel || null}","secondary-label":"${state.secondaryLabel || null}","cancel-label":"${state.cancelLabel || null}",part:"dialog-host"},onconfirm:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/confirm"},value:[]}]},onsecondary:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/secondary"},value:[]}]},oncancel:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/cancel"},value:[]}]},onclose:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/closed"},value:[]}]},style:{'& [part="message"]':{$description:"The one part of a dialog that is text rather than interface, so it opts back in to selection. The root sets `user-select: none` and `styles/tokens.json` restates it on every `dialog`, so the headline, the labels and the buttons around this sentence stay unselectable; a message is often the thing a reader copies into a search or a bug report.",margin:"0 0 var(--jx-space-3)",userSelect:"text"},'& [part="message"]:last-child':{margin:"0"},'& [part="island"] > p, & [part="island"] > span, & [part="island"] > strong, & [part="island"] > em, & [part="island"] > code':{$description:"The island's own prose is the message's other form — a body richer than a sentence, written straight into the island from a lit template (studio-ui-guidelines.md §9.4) — so it is selectable for the same reason `[part=\"message\"]` is. The opt-in stops at those children because the island is ALSO the mount point for a whole document: the Open Grid picker and Push Schema's plan put their surfaces here, and `user-select` inherits, so a rule on the island itself would hand selection to every heading, source row and button they draw, which is the interface the policy exists to keep unselectable. A mounted surface roots a `div`; a message writes paragraphs and text-level spans, so the two forms are told apart by the child that arrives.",userSelect:"text"},'& [part="island"]:empty':{display:"none"},'& [part="message-slot"], & [part="choice-slot"], & [part="field-slot"]':{display:"contents"},'& [part="choice-row"]':{display:"flex",flexDirection:"column",gap:"var(--jx-space-1)",margin:"0 0 var(--jx-space-3)"},'& [part="choice-label"]':{fontSize:"var(--jx-text-sm)",color:"var(--jx-fg-dim)"},"& jx-textfield":{width:"100%"}},children:[{tagName:"div",attributes:{part:"message-slot",role:"none"},$switch:{$ref:"#/state/hasMessage"},cases:{true:{tagName:"p",attributes:{part:"message"},textContent:"${state.message}"}}},{tagName:"div",attributes:{part:"island"}},{tagName:"div",attributes:{part:"choice-slot",role:"none"},$switch:{$ref:"#/state/hasChoice"},cases:{true:{tagName:"div",attributes:{part:"choice-row"},children:[{tagName:"span",attributes:{part:"choice-label"},textContent:"${state.choiceLabel}"},{tagName:"jx-select",$props:{label:{$ref:"#/state/choiceLabel"},options:{$ref:"#/state/options"},value:{$ref:"#/state/chosen"}},attributes:{part:"choice"},onchange:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/pick"},value:[{$ref:"event#/target/value"}]}]}}]}}},{tagName:"div",attributes:{part:"field-slot",role:"none"},$switch:{$ref:"#/state/hasField"},cases:{true:{tagName:"jx-textfield",$props:{label:{$ref:"#/state/headline"},value:{$ref:"#/state/value"},placeholder:{$ref:"#/state/placeholder"},invalid:{$ref:"#/state/invalid"},error:{$ref:"#/state/error"},multiline:{$ref:"#/state/multiline"},rows:{$ref:"#/state/rows"},mono:{$ref:"#/state/mono"}},attributes:{part:"field"},oninput:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/input"},value:[{$ref:"event#/target/value"}]}]},onkeydown:{$prototype:"Function",body:[{$switch:{$ref:"#/state/singleLine"},cases:{true:[{$switch:{$ref:"event#/key"},cases:{Enter:[{preventDefault:!0},{operator:"call",target:{$ref:"#/state/confirm"},value:[]}]}}]}}]},$description:"The prompt's one field. `multiline` is what makes it a paste box rather than a line: an import the author copied out of a `_redirects` file is column-aligned, so it also asks for `mono`. A multiline field takes Enter as a newline, which is why the Enter-confirms handler below is guarded on it — a paste box whose second line submits the dialog cannot be typed into."}}}]};T("dialog",ie);function Jt(e){if(e.querySelector('[part="dialog"]'))return Promise.resolve(e);return new Promise((t)=>{e.addEventListener("jx-ready",function o(r){if(r.target!==e&&!e.querySelector('[part="dialog"]'))return;e.removeEventListener("jx-ready",o),t(e)})})}function Ys(e){let t=document.createElement("div");t.style.pointerEvents="auto",t.setAttribute(qe,ft("dialog",e.region)),e.layer.append(t);let o=g({cancel:()=>{e.onCancel()},cancelLabel:e.cancelLabel,choiceLabel:e.choice?.label??"",chosen:e.choice?.chosen??"",closed:()=>{e.onClosed()},confirm:()=>{e.onConfirm()},confirmLabel:e.confirmLabel,destructive:e.destructive===!0,error:"",hasChoice:e.choice!==void 0,hasField:e.field!==void 0,mono:e.field?.mono===!0,multiline:e.field?.multiline===!0,rows:e.field?.rows??"3",singleLine:e.field!==void 0&&e.field.multiline!==!0?"true":"false",hasMessage:e.message!==void 0&&e.message!=="",headline:e.headline,input:(a)=>{o.value=a,e.onInput?.(a)},invalid:!1,message:e.message??"",options:e.choice?.options??[],pick:(a)=>{e.onPick?.(a)},placeholder:e.field?.placeholder??"",secondary:()=>{e.onSecondary?.()},secondaryLabel:e.secondaryLabel??"",size:e.size??"sm",value:e.field?.value??""}),r=null,s=!1,i=()=>s,l=()=>{},c=new Promise((a)=>{l=a}),p=R("dialog",o,t).then(async(a)=>{let u=a.root;if(i())return a.dispose(),u;if(r=a,await Promise.race([Jt(u),c]),i())return u;if(e.island?.(u.querySelector('[part="island"]')??u),Mt(u),e.field){let x=u.querySelector("jx-textfield");if(x)setTimeout(()=>{if(!s)uh(x,e.field?.select??"all")},0)}return u});return{close(){if(s)return;s=!0,l();let a=r?.root;if(a instanceof HTMLElement)Nt(a);r?.dispose(),r=null,t.remove()},host:t,ready:p,update(a){if(a.confirmLabel!==void 0)o.confirmLabel=a.confirmLabel;if(a.cancelLabel!==void 0)o.cancelLabel=a.cancelLabel;if(a.secondaryLabel!==void 0)o.secondaryLabel=a.secondaryLabel;if(a.message!==void 0)o.message=a.message,o.hasMessage=a.message!=="";if(a.value!==void 0)o.value=a.value;if(a.placeholder!==void 0)o.placeholder=a.placeholder;if(a.invalid!==void 0)o.invalid=a.invalid;if(a.error!==void 0)if(a.error!==""&&a.error===o.error){o.error="";let u=a.error;queueMicrotask(()=>{o.error=u})}else o.error=a.error;if(a.options!==void 0)o.options=a.options;if(a.chosen!==void 0)o.chosen=a.chosen}}}var se={$schema:"https://jxsuite.com/schema/v1",$id:"StudioToasts",$description:"The toast stack: a rendering of the notification service's toasts, newest last. Each row is projected by ui/layers.ts with its severity glyph and, where a recovery command exists, that command's title and gate; the two buttons call back into the host, which owns the records and their timers.",tagName:"div",attributes:{part:"stack"},style:{position:"absolute",right:"var(--jx-space-4)",bottom:"36px",display:"flex",flexDirection:"column",gap:"var(--jx-space-3)",alignItems:"flex-end",maxWidth:"min(420px, calc(100vw - 24px))",'& [part="toast"]':{display:"flex",alignItems:"center",gap:"var(--jx-space-3)",pointerEvents:"auto",padding:"var(--jx-space-3)",border:"1px solid var(--jx-border)",borderLeft:"3px solid var(--jx-fg-dim)",borderRadius:"var(--jx-radius-md)",background:"var(--jx-bg-panel)",color:"var(--jx-fg)",fontSize:"var(--jx-text-sm)",lineHeight:"var(--jx-leading-sm)",boxShadow:"var(--jx-shadow-popover)"},'& [part="toast"][data-severity="success"]':{borderLeftColor:"var(--jx-success)"},'& [part="toast"][data-severity="info"]':{borderLeftColor:"var(--jx-accent)"},'& [part="toast"][data-severity="warn"]':{borderLeftColor:"var(--jx-warning)"},'& [part="toast"][data-severity="error"]':{borderLeftColor:"var(--jx-danger)"},'& [part="icon"]':{flex:"none",width:"14px",textAlign:"center",fontWeight:"700"},'& [data-severity="success"] [part="icon"]':{color:"var(--jx-success)"},'& [data-severity="info"] [part="icon"]':{color:"var(--jx-accent)"},'& [data-severity="warn"] [part="icon"]':{color:"var(--jx-warning)"},'& [data-severity="error"] [part="icon"]':{color:"var(--jx-danger)"},'& [part="message"]':{flex:"1",minWidth:"0",overflow:"hidden",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"3"},'& [part="action-slot"]':{display:"contents"},'& [part="action"] > [part="control"]':{color:"var(--jx-accent)"}},children:[{$prototype:"Array",items:{$ref:"#/state/toasts"},key:{$ref:"$map/item/id"},map:{tagName:"div",attributes:{part:"toast","data-severity":"${$map.item.severity}"},children:[{tagName:"span",attributes:{part:"icon","aria-hidden":"true"},textContent:"${$map.item.icon}"},{tagName:"span",attributes:{part:"message"},textContent:"${$map.item.message}"},{tagName:"span",attributes:{part:"action-slot",role:"none"},$switch:{$ref:"$map/item/hasAction"},cases:{true:{tagName:"jx-button",$props:{size:"sm",quiet:!0,disabled:{$ref:"$map/item/actionDisabled"}},attributes:{part:"action",title:"${$map.item.actionTitle}"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/runAction"},value:[{$ref:"$map/item/id"}]}]},children:[{tagName:"span",textContent:"${$map.item.actionLabel}"}]}}},{tagName:"jx-action-button",$props:{label:"Dismiss notification",hint:"Dismiss notification",icon:"x",size:"sm"},attributes:{part:"dismiss"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/dismissToast"},value:[{$ref:"$map/item/id"}]}]}}]}}]};function Te(e){return e instanceof RangeError||e instanceof Error&&e.name==="CommandUnavailableError"}function En(e,t,o,r=t){let s=(l)=>{if(!Te(l))console.error(`${r}: command "${t}" failed`,l);C.error(Q(l),{key:`command.run:${t}`,source:r})},i;try{i=e.run(t,o)}catch(l){return s(l),Promise.resolve()}return Promise.resolve(i).catch(s)}function rt(e,t,o){let r=ae();return r?En(r,e,t,o):Promise.resolve()}var de=null,z=null,J=null,j=null;function tt(e){return(e==="popover"?de:e==="modal"?z:e==="toast"?j:J)??document.body}function h$(){de=document.querySelector("#layer-popover"),z=document.querySelector("#layer-modal"),J=document.querySelector("#layer-dialog"),j=document.querySelector("#layer-toast"),Ne()}var le="jx-dialog[data-open], dialog[open]";function Bb(){return Boolean(J?.querySelector(le)||z?.querySelector(le))}function p$(){return document.querySelector(":popover-open")!==null}function Ko(e,t,o={}){let{confirmLabel:r="Confirm",cancelLabel:s="Cancel",destructive:i=!1}=o;return new Promise((l)=>{let c=!1,d=(a)=>{if(c)return;c=!0,p.close(),l(a)},p=Ys({cancelLabel:s,confirmLabel:r,destructive:i,headline:e,layer:tt("dialog"),...U(t),onCancel:()=>d(!1),onClosed:()=>d(!1),onConfirm:()=>d(!0)})})}function uC(e,t,o={}){let{saveLabel:r="Save",discardLabel:s="Discard",cancelLabel:i="Cancel"}=o;return new Promise((l)=>{let c=!1,d=(a)=>{if(c)return;c=!0,p.close(),l(a)},p=Ys({cancelLabel:i,confirmLabel:r,headline:e,layer:tt("dialog"),...U(t),onCancel:()=>d("cancel"),onClosed:()=>d("cancel"),onConfirm:()=>d("save"),onSecondary:()=>d("discard"),secondaryLabel:s})})}function U(e){if(n(e))return{message:e};return{island:(t)=>{no(e,t)}}}function xi(e,t={}){let{cancelLabel:o="Cancel",choice:r,confirmLabel:s="OK",message:i,mono:l=!1,multiline:c=!1,placeholder:d="",rows:p="3",select:a="all",size:u,validate:x,value:ue=""}=t,P=(v)=>x?x(v,L):v.trim()?"":"Enter a value.",h=ue,L=r?.initial??"",m="",V=!1,W=()=>te(d)?d():d,K=()=>r?r.options().map((v)=>({label:v.label,value:v.value})):[];return new Promise((v)=>{let B=!1,D=(f)=>{if(B)return;B=!0,k.close(),v(f)},Y=(f)=>{m=f,k.update({error:m,invalid:m!==""})},S={cancelLabel:o,confirmLabel:s,headline:e,layer:tt("dialog"),onCancel:()=>D(null),onClosed:()=>D(null),onConfirm:()=>{let f=P(h);if(f){Y(f);return}D(h.trim())},onInput:(f)=>{V=!0,h=f;let w=P(h);if(w!==m)Y(w)},onPick:(f)=>{L=f,r?.onChange?.(f);let w=P(h);m=V||m?w:"",k.update({chosen:L,error:m,invalid:m!=="",options:K(),placeholder:W()})}};if(i!==void 0)Object.assign(S,U(i));if(r)S.choice={chosen:L,label:r.label,options:K()};if(S.field={mono:l,multiline:c,placeholder:W(),rows:p,select:a,value:h},u!==void 0)S.size=u;let k=Ys(S)})}var N=new Map;function Zs(e,t){let o=`${e}:${t}`,r=N.get(o);if(r&&r.parentElement)return r;return r=document.createElement("div"),r.style.pointerEvents="auto",r.setAttribute(qe,ft(e,t)),tt(e).append(r),N.set(o,r),r}function zb(e,t){let o=`${e}:${t}`,r=N.get(o);if(r)no(mt,r),r.remove(),N.delete(o)}var we=180,Ee={error:"✕",info:"ℹ",success:"✓",warn:"!"},A=null,y=new Map,b=new Set;function Me(){if(!("matchMedia"in globalThis))return!1;return globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches===!0}function Oe(){try{return new URLSearchParams(globalThis.location.search).get("automation")==="1"}catch{return!1}}function f$(){return[...b].map((e)=>`overlay: toast ${e} settling in`)}function q(e){let t=y.get(e);if(t!==void 0)clearTimeout(t),y.delete(e);b.delete(e),Lh(e)}function Ce(e){if(y.has(e.id)||b.has(e.id))return;let t=Me()?0:we;if(t>0)b.add(e.id),setTimeout(()=>b.delete(e.id),t);let o=e.timeoutMs??0;if(o<=0||Oe())return;y.set(e.id,setTimeout(()=>q(e.id),o))}T("toasts",se);var G=null,H=null,O=null;function ce(){return G??=g({dismissToast:(e)=>{q(e)},runAction:(e)=>{let t=Qd.find((r)=>r.id===e),o=ae();if(!t?.action||!o)return;q(e),En(o,t.action,t.actionArgs,"Notifications")},toasts:[]}),G}function je(e){let t=e.action===void 0?null:ae(),o=e.action,r=t&&o!==void 0?t.get(o):void 0,s=r&&o!==void 0&&t.isVisible(o)?r:null,i=s&&o!==void 0?t.disabledReason(o):void 0;return{actionDisabled:i!==void 0,actionLabel:s?.title??"",actionTitle:s===null?"":i===void 0?s.title:`${s.title} — requires ${i}`,hasAction:s!==null,icon:Ee[e.severity],id:e.id,message:e.message,severity:e.severity}}function Ne(){if(Ae(),!j)return;A=ge(),A.run(()=>{ne(()=>{Qd.length,ae();for(let e of Qd)Ce(e);ce().toasts=Qd.map((e)=>je(e))})}),H=R("toasts",ce(),j),H.then((e)=>{O=e})}function Ae(){A?.stop(),A=null;for(let t of y.values())clearTimeout(t);y.clear(),b.clear();let e=H;if(H=null,O)O.dispose(),O=null;else if(e)e.then((t)=>t.dispose());G=null}
2
+ export{RA,DA,d$,qe,Mp,u$,wi,NA,AA,OA,MA,PA,ux,ft,T,FA,R,Jt,Ys,En,rt,tt,h$,Bb,p$,Ko,uC,xi,Zs,zb,f$};
3
3
 
4
- //# debugId=DA42A54DAA5FC46164756E2164756E21
5
- //# sourceMappingURL=studio-x9hsze61.js.map
4
+ //# debugId=F711815A92DC732064756E2164756E21
5
+ //# sourceMappingURL=studio-02phtmqn.js.map
@@ -1,5 +1,5 @@
1
- import{p,_e}from"./studio-w4rz9hdk.js";import{pt,Go,RA,Ap,px,Cr,NA,Op}from"./studio-s32578pn.js";import{C}from"./studio-43sd2mam.js";import{Zs,tt}from"./studio-x9hsze61.js";import{n,Z,Xe,te,v}from"./studio-vxq7fcvv.js";var l=null;async function Bd(){if(!_e()||!te(p().getAccountStatus)){l=null;return}try{l=await p().getAccountStatus?.()??null}catch{l=null}}function lC(){return l}function cC(){return l!==null&&l.installations.length===0&&Boolean(l.appInstallUrl)}function bA(){if(l===null)return null;let e=l.installations.flatMap((r)=>r.manageUrl?[{account:r.account??`Installation ${r.id}`,url:r.manageUrl}]:[]);if(e.length===0&&!l.appInstallUrl)return null;let t={manage:e};if(l.appInstallUrl)t.installUrl=l.appInstallUrl;return t}function vA(){return l?.entries??[]}function a$(){return(l?.notices??[]).filter((e)=>e.display!=="toast")}var L=new Set;function N(){let e=(l?.notices??[]).filter((t)=>t.display==="toast"&&!L.has(t.id));for(let t of e)L.add(t.id);return e}var G="https://jxsuite.com/problems/";function k(e){return typeof e==="string"}function X(e){return typeof e==="object"&&e!==null}function Bb(e){if(!k(e)||!e.startsWith("https://jxsuite.com/problems/"))return null;let t=e.slice(29);return t===""?null:t}function sr(e){if(k(e))return e.trim()===""?null:e;if(!X(e))return null;for(let t of[e.detail,e.error,e.title])if(k(t)&&t.trim()!=="")return t;return null}function ka(e,t){return sr(e)??(t===void 0?"Request failed":`Request failed (${t})`)}var d=(e,t,r,i)=>{let s={status:t,title:r,type:`${G}${e}`};if(i!==void 0)s.extensions=i;return s},me={invalidRequest:d("invalid-request",400,"The request was malformed or incomplete"),notFound:d("not-found",404,"The requested resource does not exist"),methodNotAllowed:d("method-not-allowed",405,"That method is not allowed on this route"),conflict:d("conflict",409,"The request conflicts with the current state",["conflicts"]),payloadTooLarge:d("payload-too-large",413,"The request body is too large"),unauthorized:d("unauthorized",401,"Credentials are missing or not accepted"),forbidden:d("forbidden",403,"The request was refused"),needsInstallationAccess:d("needs-installation-access",403,"The GitHub App is not installed for that account",["installUrl"]),pathOutsideProject:d("path-outside-project",403,"The path resolves outside the active project"),actionRequired:d("action-required",403,"An action is required first",["actions","heading","retry"]),noActiveProject:d("no-active-project",409,"No project is active on this backend"),capabilityUnavailable:d("capability-unavailable",501,"This backend does not provide that capability"),upstreamFailure:d("upstream-failure",502,"An upstream service failed",["upstream"]),internalError:d("internal-error",500,"The backend failed to complete the request")};var dC=".jx-loc-id",o=(e,t,r,i)=>{let s={method:e,path:t,optional:i!==void 0,summary:r};if(i!==void 0)s.degradation=i;return s},he={activate:o("POST","/__studio/activate","Bind the backend to a project root"),project:o("GET","/__studio/project","Root project metadata {name, root}"),projectInfo:o("GET","/__studio/project-info","Probe a directory: {isSiteProject, projectConfig?, directories?}"),resolveSite:o("GET","/__studio/resolve-site","Resolve the owning site of a file path {sitePath, projectConfig?, fileRelPath?}"),sites:o("GET","/__studio/sites","Enumerate site projects [{config, path}] (backs listProjects)","The welcome screen's Projects catalogue stays hidden."),findProject:o("GET","/__studio/find-project","Locate a project directory by name outside the root","openProject falls back to config-matching only."),locateDirectory:o("GET","/__studio/locate-directory","Resolve the absolute path of a showDirectoryPicker() folder by the id in its .jx-loc-id","Browse… reports that the folder could not be placed; the Location is typed by hand."),createProject:o("POST","/__studio/create-project","Scaffold a project at a caller-chosen destination → {root, config}"),starters:o("GET","/__studio/starters","Starter templates (StarterInfo[])","The New Project picker offers only blank/templates."),importSite:o("POST","/__studio/import-site","Clone a live website into a project; streams NDJSON progress","The New Project Import tab is unavailable."),files:o("GET","/__studio/files","List a directory (DirEntry[]) in stable path order; an entry may carry an opaque content `version` the backend vouches for; with ?glob=<pattern>, search matching files project-wide"),fileRead:o("GET","/__studio/file","Read a file's text content"),filesRead:o("POST","/__studio/files/read","Read many files' text content {paths} → ReadFilesResult {files: [path, {content} | "+"{error: {status, code?, message}}][], omitted}. At most READ_FILES_MAX_PATHS (200) paths and a backend byte budget per call: the excess is listed in `omitted` (never a 400) and the first path is always answered. Per-path errors: 404 missing/deleted, 415 binary, 413 too large, 502 upstream. Allowed for read-only sessions; keeps fileRead's server-side effects","Adapters fall back to one fileRead per path."),fileWrite:o("PUT","/__studio/file","Write a file's text content"),fileDelete:o("DELETE","/__studio/file","Delete a file"),fileUpload:o("POST","/__studio/file/upload","Upload binary content to a path → UploadResult {path, size?}. `path` is the answer, not an "+"echo: a store that de-duplicates, suffixes, or normalizes names reports what it really wrote"),fileBytes:o("GET","/__studio/file/bytes","A project file's raw bytes, undecoded — the read side of `fileUpload`, for a caller that must "+"not go through UTF-8","Studio can only read a project file as text, so any surface that must decode one stays hidden."),documentRaw:o("GET","/__studio/raw/","A project file as its own bytes, at its own URL — the mount a canvas renders against when "+"the editor origin does not serve the site's URL space. The project-relative path is appended to this prefix","The canvas cannot address project files by URL, so a host whose origin does not serve the site URL space renders no component $refs and no images."),fileRename:o("POST","/__studio/file/rename","Rename/move (+ refactor report). `from`/`to` are server-root-relative; every path in the "+"report is relative to the active project (specs/server.md §4.1)"),references:o("GET","/__studio/references","Where a file or a component tag is used (?path=&tag=, at least one) → ReferencesResult "+"{files, filesReferencing, refsTotal} — the read side of the rename refactor's own walker, "+"cached until the backend's watcher sees the tree move (backs findReferences). `?path=` is server-root-relative and every path in the answer is relative to the active project; a "+"target outside that project is a 400, never a zero-result 200 (specs/server.md §4.1)",'Usage counts are hidden: no "Used on N pages" in the inspector, no Selection: Find Usages, and delete/rename confirmations state no reference count.'),locate:o("POST","/__studio/locate","Find a file by name → {path | null}"),collab:o("GET","/__studio/collab","Realtime co-editing: a WebSocket upgrade speaking the @jxsuite/collab wire envelope (one socket per project, documents multiplexed by path; y-protocols sync + project-level "+"awareness in lib0 binary frames — see @jxsuite/collab/envelope for the frame layout and "+"the docEpoch/doc-reset lifecycle). A plain GET (no Upgrade) answers {collab, protocols, version} as the capability probe, and `protocols` is the subprotocol negotiation: the client offers one of them as Sec-WebSocket-Protocol and the server echoes it, or the "+"client offers none when the server advertises none, because RFC 6455 §4.1 fails a "+"connection whose offer went unechoed.","Realtime co-editing is unavailable; Studio edits solo with file-level saves"),components:o("GET","/__studio/components","Discover components (ComponentMeta[])"),cem:o("GET","/__studio/cem","Custom-elements manifest of an npm dependency","Dependency components lose prop/slot metadata."),formats:o("GET","/__studio/formats","The project's format registry entries plus a sibling `extensions` array — per enabled "+"extension its manifest identity and project-section contributions (ExtensionsInfo[]; backs listFormats and listExtensions).","Only .json documents open (backs listFormats); descriptor-contributed settings sections do not appear."),extensionCatalog:o("GET","/__studio/catalog","Extensions this backend can OFFER (ExtensionCatalogEntry[]) — the shipped first-party "+"catalogue plus any package in the project's own dependencies exporting a jx-extension.json, each marked with whether the host resolves it without a project install and whether the project has it installed. A capability rather than a constant: a Worker ships a fixed set "+"of extension packages (specs/extensions.md §5.5). Backs listExtensionCatalog.","The Extensions section offers no catalogue; adding an extension stays a typed package name."),projectSchemas:o("GET","/__studio/project-schemas","The project's generated entry documents (project.schema.json / document.schema.json), "+"PRE-BUNDLED into self-contained schemas — {project, document} (backs fetchProjectSchemas). "+"Regenerated on demand when missing or older than project.json.","The JSON editor falls back to the bundled core schemas (extension sections get no editor validation/completion)."),format:o("POST","/__studio/format","Dispatch a format capability {format, action: parse|serialize, source?|doc?}","Non-JSON documents cannot be parsed/serialized (backs formatAction)."),pluginSchema:o("GET","/__studio/plugin-schema","Extract a $studio schema from a class source","Plugin property panels fall back to generic JSON editing."),codeFormat:o("POST","/__studio/code/format","Format posted source {code, path?} → {code, errors}","Code editors skip format-on-open/save (codeService returns null)."),codeMinify:o("POST","/__studio/code/minify","Minify posted source {code} → {code}","Compiled-output minification is skipped."),codeLint:o("POST","/__studio/code/lint","Lint posted source {code, path?} → {diagnostics}","Code editors show no lint markers."),buildSite:o("POST","/__studio/build","Build or render the site → {routes, files, errors, mode?, url}","Build Site reports that this target cannot build."),previewSite:o("POST","/__studio/preview","Preview the working tree at a route → {routes, files, errors, mode, url, reused}","Open in Browser falls back to buildSite."),previewOverlay:o("POST","/__studio/preview/overlay","Publish (POST) or retract (DELETE) a document's unsaved bytes → 204","A live preview shows the last saved state instead of the editor's."),packages:o("GET","/__studio/packages","List dependencies (PackageInfo[])"),packagesAdd:o("POST","/__studio/packages/add","Add a dependency"),packagesRemove:o("POST","/__studio/packages/remove","Remove a dependency"),packagesInstall:o("POST","/__studio/packages/install","Run the package manager install","Install/reinstall affordances are hidden; manifest-only edits still work."),packagesNeedsInstall:o("GET","/__studio/packages/needs-install","Whether node_modules is stale","The install-on-open prompt never shows."),packagesVersions:o("GET","/__studio/packages/versions","Newest published version of each dependency (PackageVersionInfo[])","The Latest column stays empty and the update affordances are hidden."),packagesSetVersions:o("POST","/__studio/packages/set-versions","Rewrite dependency ranges and install","Bulk version updates are hidden."),gitStatus:o("GET","/__studio/git/status","Working-tree status (GitStatusResult)"),gitBranches:o("GET","/__studio/git/branches","Branch list (GitBranchesResult)"),gitLog:o("GET","/__studio/git/log","Recent commits (GitLogEntry[])"),gitStage:o("POST","/__studio/git/stage","Stage files"),gitUnstage:o("POST","/__studio/git/unstage","Unstage files"),gitCommit:o("POST","/__studio/git/commit","Commit staged (else all dirty) files"),gitPush:o("POST","/__studio/git/push","Push (cloud: sync check — commits land on push)"),gitPull:o("POST","/__studio/git/pull","Pull/fast-forward; 409 {conflicts} on overlap"),gitFetch:o("POST","/__studio/git/fetch","Refresh remote tracking state"),gitCheckout:o("POST","/__studio/git/checkout","Switch branches"),gitCreateBranch:o("POST","/__studio/git/create-branch","Create a branch"),gitDiff:o("GET","/__studio/git/diff","Unified diff of dirty files (or one path)"),gitShow:o("GET","/__studio/git/show","File content at a ref"),gitDiscard:o("POST","/__studio/git/discard","Discard working changes"),gitInit:o("POST","/__studio/git/init","Initialize a repository"),gitAddRemote:o("POST","/__studio/git/add-remote","Add a remote"),gitClone:o("POST","/__studio/git/clone","Clone a repository","The welcome screen hides Clone Git Repository."),gitPr:o("POST","/__studio/git/pr","Open a pull request → PullRequestInfo","Studio falls back to a direct GitHub API call with the user's token."),dataConnections:o("GET","/__studio/data/connections","Connector connections with configured/missingSecrets/isDefault state, reachable table names, and registry-descriptor provider metadata (DataConnectionsResponse; backs dataConnections)","The connections settings section shows no status, and data-domain actions stay hidden."),dataConnectionTest:o("POST","/__studio/data/connections/test","Probe a connection {connection} → DataConnectionTestResult (backs dataConnectionTest)","The Test Connection action is hidden."),dataPush:o("POST","/__studio/data/push","Additive schema push {connection?, dryRun?} → DataPushResult (plan of DataPushStep[], "+"applied, warnings/errors; backs dataPush)","The Push Schema action is hidden; schemas deploy via `jx db push` instead."),dataRows:o("GET","/__studio/data/rows","Page a table (DataRowsQuery params) → DataRowsResult {rows, total, columns} (backs dataRows)","The data grid is unavailable."),dataInsertRow:o("POST","/__studio/data/rows","Insert a row {table, connection?, values} → {row} (backs dataInsertRow)","The data grid hides its add-row footer."),dataUpdateRow:o("PUT","/__studio/data/rows","Update a row keyed on its primary key {table, connection?, pk, set} → {row} (backs "+"dataUpdateRow)","Data grid cells are read-only."),dataDeleteRow:o("DELETE","/__studio/data/rows","Delete a row (?table=&pk=&connection=) → {ok} (backs dataDeleteRow)","The data grid hides row deletion."),secretsList:o("GET","/__studio/secrets","Configured secret env-var NAMES, never values (SecretsListResponse; backs listSecrets)","Secret fields cannot show set/unset state."),secretsSet:o("PUT","/__studio/secrets","Write/remove secrets in the backend store (.dev.vars locally) {set?, remove?} → names "+"(backs setSecrets)","The secret form control renders disabled; secrets are edited in .dev.vars by hand."),aiChat:o("POST","/__studio/ai/chat","StreamEvent SSE chat proxy {messages, tools, systemPrompt, model}"),aiModels:o("GET","/__studio/ai/models","Model catalogue (AiModelsResponse)"),cfProxy:o("POST","/__studio/cf/proxy","Allowlisted Cloudflare API passthrough {path, method?, body?} (backs cfApi)","The Publish panel explains the git-push publishing path instead.")};var l$=200,c$=100,d$=12;var Y=new Set(["reload","repeat","none"]);function Np(e){if(!Array.isArray(e))return[];return e.flatMap((r)=>{if(!v(r))return[];let{href:i,id:s,label:f,primary:m}=r;if(!n(s)||!s||!n(f)||!f)return[];let c={id:s,label:f};if(n(i)&&i)c.href=i;if(m===!0)c.primary=!0;return[c]})}function F(e){return n(e)&&Y.has(e)}function u$(e){return F(e)?e:void 0}function Q(e){return e.replaceAll("_","-")}function _(e){if(!v(e))return{};let{actions:t,code:r,heading:i,installUrl:s,retry:f,type:m}=e,c={},a=Bb(m)??(n(r)?Q(r):null);if(a!==null)c.code=a;if(n(s))c.installUrl=s;if(t!==void 0)c.actions=Np(t);if(n(i)&&i)c.heading=i;if(F(f))c.retry=f;return c}function yA(e){let t=_(e);return t.code==="needs-installation-access"&&t.installUrl?t.installUrl:null}function wA(e){return _(e).code==="action-required"}function zd(){return Go(pt.aiOpenAiKey)}function xA(e){Cr(pt.aiOpenAiKey,e||"")}function cx(){return RA(pt.aiOpenAiKey)}function sl(){return Go(pt.aiBaseUrl)}function dx(){return Go(pt.aiModel)}function _A(e){Cr(pt.aiModel,e||"")}function SA(e){NA([[pt.aiOpenAiKey,e.apiKey],[pt.aiBaseUrl,e.baseUrl],[pt.aiModel,e.model]])}function CA(e){return!Cm(pt.aiOpenAiKey,e.apiKey,zd())||!Cm(pt.aiBaseUrl,e.baseUrl,sl())||!Cm(pt.aiModel,e.model,dx())}function Cm(e,t,r){return px(e,t)===px(e,r)}function kA(){Op([pt.aiOpenAiKey,pt.aiBaseUrl,pt.aiModel])}function uC(){return{apiKey:zd(),baseUrl:sl()}}function V(e){return`${e.apiKey}\x00${e.baseUrl}`}var g=null,P="",j=!1,A=!1,D="",I,M="",R=null,U=null,q=new Set,ee=600000,S=0,J=!1;function us(){g=null,P="",j=!1,A=!1,D="",I=void 0,M="",R=null,U=null,S=0}var oe=new Set([pt.aiOpenAiKey.key,pt.aiBaseUrl.key,pt.cfToken.key,pt.cfAccountId.key]);Ap((e)=>{if(e.some((t)=>oe.has(t)))us()});function h$(e){return g&&P===V(e)?g:null}function K(e){return g?.find((t)=>t.id===e)}function p$(e){return K(e)?.toolSupport}function EA(e){return K(e)?.contextWindow}function ux(e){if(e)q.add(e);U??=lh({force:!0}).catch(()=>{}).then(()=>{S=Date.now();for(let t of q)t()})}function ne(){if(!A||S===0||Date.now()-S<ee)return!1;return U=null,S=0,ux(),!0}function re(){if(typeof window>"u"||J)return;J=!0,window.addEventListener("focus",()=>{ne()})}re();function zb(){return cx()||hC()}function hC(){return j}function TA(){return A}function km(){return I}function LA(){return M}function pC(){return R}function ie(){return D}function Yl(){return dx()||ie()||pt.aiModel.default}function se(e,t){let r;try{r=new URL(e,"http://jx.invalid")}catch{return e}return r.pathname=r.pathname.replace(/[^/]*$/,t),/^https?:/i.test(e)?r.href:`${r.pathname}${r.search}`}async function lh(e={}){let t=e.credentials??uC(),r=V(t);if(g&&P===r&&!e.force)return g;let i=p(),s=await Promise.resolve(i.aiChatUrl()),f=se(s,"models"),m={};if(t.apiKey)m["X-Api-Key"]=t.apiKey;if(t.baseUrl)m["X-Api-Base-URL"]=t.baseUrl;let c=await fetch(f,{headers:m});if(!c.ok)throw Error(`HTTP ${c.status}`);let a=await c.json();if(j=a.configured===!0,A=a.managed===!0,D=a.defaultModel??"",I=a.code,M=a.upstreamError!==void 0?a.upstreamMessage??"":"",R=null,a.code==="action_required"){let u={actions:Np(a.actions)};if(n(a.detail)&&a.detail)u.detail=a.detail;R=u}return g=(a.models||[]).map((u)=>{let h={id:u.id,name:u.name||u.id};if(Z(u.contextWindow))h.contextWindow=u.contextWindow;if(Xe(u.toolSupport))h.toolSupport=u.toolSupport;return h}),P=r,g}var T=new Set,B=null;function $A(e){if(T.size===0){B=e;return}for(let t of T)t(e)}function H(e){T.add(e);let t=B;if(B=null,t)e(t);return()=>{T.delete(e)}}function fC(){return _e()&&te(p().performAction)}function f$(e){let t=e.find((i)=>i.primary)??e[0];if(!t)return null;let r=e.find((i)=>i!==t);return r?{lead:t,other:r}:{lead:t}}var w=null,W=!1;function mC(e){let t=f$(e.actions);if(!fC()||!t)return Promise.resolve(!1);return w??=ae(e,t).finally(()=>{w=null}),w}async function Em(e){let t=_(e);if(t.code!=="action-required"||!t.actions?.length)return!1;return mC({actions:t.actions,detail:e instanceof Error?e.message:void 0,heading:t.heading,retry:t.retry})}async function z(){us(),await Bd(),m$()}function ae(e,t){let r=e.detail??"This needs one more step first.";return new Promise((i)=>{let s="offer",f=(y)=>{if(s==="done")return;s="done",E.close(),i(y)},m=(y)=>{s="offer",E.update({cancelLabel:"Not now",confirmLabel:t.lead.label,message:y,secondaryLabel:t.other?.label??""})},c=async(y)=>{let b;try{b=await y}catch(x){if(s==="waiting")m(x instanceof Error?x.message:String(x));return}if(b?.status==="done"){await z(),f(!0);return}if(s!=="waiting"||!b||b.status==="redirect")return;Bd(),m(r)},a=(y)=>{if(s!=="offer")return;s="waiting";let b;try{b=p().performAction(y)}catch(x){m(x instanceof Error?x.message:String(x));return}E.update({cancelLabel:"Cancel",confirmLabel:"Waiting…",message:"Finish in the window that opened. This closes by itself once it is done.",secondaryLabel:""}),c(b)},{lead:u,other:h}=t,O={cancelLabel:"Not now",confirmLabel:u.label,headline:e.heading??"One more step",layer:tt("dialog"),message:r,onCancel:()=>{W=!0,f(!1)},onClosed:()=>{f(!1)},onConfirm:()=>{a(u)},region:"account/action"};if(h)O.onSecondary=()=>{a(h)},O.secondaryLabel=h.label;let E=Zs(O)})}function ce(e){if(e==="reload")location.reload();else if(e==="repeat")C.info("Done. Run that again now.",{key:"account.action.retry",source:"Account"})}function IA(){return H((e)=>{if(W||w)return;mC(e).then((t)=>{if(t)ce(e.retry)})})}async function hx(e){if(!fC())return!1;let t=p().performAction(e),r;try{r=await t}catch(i){return C.error(i instanceof Error?i.message:String(i),{key:"account.action",source:"Account",tier:"toast"}),!1}if(r?.status==="done")return await z(),!0;if(r?.status!=="redirect")await Bd();return!1}function m$(){for(let e of N()){let t={key:`account.notice.${e.id}`,source:"Account"};if(e.level==="warning")C.warn(e.message,t);else C.info(e.message,t)}}
2
- export{Bd,lC,cC,bA,vA,a$,Bb,sr,ka,dC,l$,c$,d$,Np,u$,yA,wA,zd,xA,cx,sl,dx,_A,SA,CA,Cm,kA,uC,us,h$,p$,EA,ux,zb,hC,TA,km,LA,pC,Yl,lh,$A,fC,f$,mC,Em,IA,hx,m$};
1
+ import{p,_e}from"./studio-pr23qhrw.js";import{pt,Go,EA,Ap,dx,_r,LA,Op}from"./studio-3q6n9qvq.js";import{C}from"./studio-hw60n5dh.js";import{Ys,tt}from"./studio-02phtmqn.js";import{n,Z,Xe,te,v}from"./studio-kt2j51sa.js";var l=null;async function jd(){if(!_e()||!te(p().getAccountStatus)){l=null;return}try{l=await p().getAccountStatus?.()??null}catch{l=null}}function iC(){return l}function oC(){return l!==null&&l.installations.length===0&&Boolean(l.appInstallUrl)}function hA(){if(l===null)return null;let e=l.installations.flatMap((r)=>r.manageUrl?[{account:r.account??`Installation ${r.id}`,url:r.manageUrl}]:[]);if(e.length===0&&!l.appInstallUrl)return null;let t={manage:e};if(l.appInstallUrl)t.installUrl=l.appInstallUrl;return t}function pA(){return l?.entries??[]}function t$(){return(l?.notices??[]).filter((e)=>e.display!=="toast")}var L=new Set;function N(){let e=(l?.notices??[]).filter((t)=>t.display==="toast"&&!L.has(t.id));for(let t of e)L.add(t.id);return e}var G="https://jxsuite.com/problems/";function k(e){return typeof e==="string"}function X(e){return typeof e==="object"&&e!==null}function jb(e){if(!k(e)||!e.startsWith("https://jxsuite.com/problems/"))return null;let t=e.slice(29);return t===""?null:t}function rr(e){if(k(e))return e.trim()===""?null:e;if(!X(e))return null;for(let t of[e.detail,e.error,e.title])if(k(t)&&t.trim()!=="")return t;return null}function Ca(e,t){return rr(e)??(t===void 0?"Request failed":`Request failed (${t})`)}var d=(e,t,r,i)=>{let s={status:t,title:r,type:`${G}${e}`};if(i!==void 0)s.extensions=i;return s},me={invalidRequest:d("invalid-request",400,"The request was malformed or incomplete"),notFound:d("not-found",404,"The requested resource does not exist"),methodNotAllowed:d("method-not-allowed",405,"That method is not allowed on this route"),conflict:d("conflict",409,"The request conflicts with the current state",["conflicts"]),payloadTooLarge:d("payload-too-large",413,"The request body is too large"),unauthorized:d("unauthorized",401,"Credentials are missing or not accepted"),forbidden:d("forbidden",403,"The request was refused"),needsInstallationAccess:d("needs-installation-access",403,"The GitHub App is not installed for that account",["installUrl"]),pathOutsideProject:d("path-outside-project",403,"The path resolves outside the active project"),actionRequired:d("action-required",403,"An action is required first",["actions","heading","retry"]),noActiveProject:d("no-active-project",409,"No project is active on this backend"),capabilityUnavailable:d("capability-unavailable",501,"This backend does not provide that capability"),upstreamFailure:d("upstream-failure",502,"An upstream service failed",["upstream"]),internalError:d("internal-error",500,"The backend failed to complete the request")};var rC=".jx-loc-id",o=(e,t,r,i)=>{let s={method:e,path:t,optional:i!==void 0,summary:r};if(i!==void 0)s.degradation=i;return s},he={activate:o("POST","/__studio/activate","Bind the backend to a project root"),project:o("GET","/__studio/project","Root project metadata {name, root}"),projectInfo:o("GET","/__studio/project-info","Probe a directory: {isSiteProject, projectConfig?, directories?}"),resolveSite:o("GET","/__studio/resolve-site","Resolve the owning site of a file path {sitePath, projectConfig?, fileRelPath?}"),sites:o("GET","/__studio/sites","Enumerate site projects [{config, path}] (backs listProjects)","The welcome screen's Projects catalogue stays hidden."),findProject:o("GET","/__studio/find-project","Locate a project directory by name outside the root","openProject falls back to config-matching only."),locateDirectory:o("GET","/__studio/locate-directory","Resolve the absolute path of a showDirectoryPicker() folder by the id in its .jx-loc-id","Browse… reports that the folder could not be placed; the Location is typed by hand."),createProject:o("POST","/__studio/create-project","Scaffold a project at a caller-chosen destination → {root, config}"),starters:o("GET","/__studio/starters","Starter templates (StarterInfo[])","The New Project picker offers only blank/templates."),importSite:o("POST","/__studio/import-site","Clone a live website into a project; streams NDJSON progress","The New Project Import tab is unavailable."),files:o("GET","/__studio/files","List a directory (DirEntry[]) in stable path order; an entry may carry an opaque content `version` the backend vouches for; with ?glob=<pattern>, search matching files project-wide"),fileRead:o("GET","/__studio/file","Read a file's text content"),filesRead:o("POST","/__studio/files/read","Read many files' text content {paths} → ReadFilesResult {files: [path, {content} | "+"{error: {status, code?, message}}][], omitted}. At most READ_FILES_MAX_PATHS (200) paths and a backend byte budget per call: the excess is listed in `omitted` (never a 400) and the first path is always answered. Per-path errors: 404 missing/deleted, 415 binary, 413 too large, 502 upstream. Allowed for read-only sessions; keeps fileRead's server-side effects","Adapters fall back to one fileRead per path."),fileWrite:o("PUT","/__studio/file","Write a file's text content"),fileDelete:o("DELETE","/__studio/file","Delete a file"),fileUpload:o("POST","/__studio/file/upload","Upload binary content to a path → UploadResult {path, size?}. `path` is the answer, not an "+"echo: a store that de-duplicates, suffixes, or normalizes names reports what it really wrote"),fileBytes:o("GET","/__studio/file/bytes","A project file's raw bytes, undecoded — the read side of `fileUpload`, for a caller that must "+"not go through UTF-8","Studio can only read a project file as text, so any surface that must decode one stays hidden."),documentRaw:o("GET","/__studio/raw/","A project file as its own bytes, at its own URL — the mount a canvas renders against when "+"the editor origin does not serve the site's URL space. The project-relative path is appended to this prefix","The canvas cannot address project files by URL, so a host whose origin does not serve the site URL space renders no component $refs and no images."),fileRename:o("POST","/__studio/file/rename","Rename/move (+ refactor report). `from`/`to` are server-root-relative; every path in the "+"report is relative to the active project (specs/server.md §4.1)"),references:o("GET","/__studio/references","Where a file or a component tag is used (?path=&tag=, at least one) → ReferencesResult "+"{files, filesReferencing, refsTotal} — the read side of the rename refactor's own walker, "+"cached until the backend's watcher sees the tree move (backs findReferences). `?path=` is server-root-relative and every path in the answer is relative to the active project; a "+"target outside that project is a 400, never a zero-result 200 (specs/server.md §4.1)",'Usage counts are hidden: no "Used on N pages" in the inspector, no Selection: Find Usages, and delete/rename confirmations state no reference count.'),locate:o("POST","/__studio/locate","Find a file by name → {path | null}"),collab:o("GET","/__studio/collab","Realtime co-editing: a WebSocket upgrade speaking the @jxsuite/collab wire envelope (one socket per project, documents multiplexed by path; y-protocols sync + project-level "+"awareness in lib0 binary frames — see @jxsuite/collab/envelope for the frame layout and "+"the docEpoch/doc-reset lifecycle). A plain GET (no Upgrade) answers {collab, protocols, version} as the capability probe, and `protocols` is the subprotocol negotiation: the client offers one of them as Sec-WebSocket-Protocol and the server echoes it, or the "+"client offers none when the server advertises none, because RFC 6455 §4.1 fails a "+"connection whose offer went unechoed.","Realtime co-editing is unavailable; Studio edits solo with file-level saves"),components:o("GET","/__studio/components","Discover components (ComponentMeta[])"),cem:o("GET","/__studio/cem","Custom-elements manifest of an npm dependency","Dependency components lose prop/slot metadata."),formats:o("GET","/__studio/formats","The project's format registry entries plus a sibling `extensions` array — per enabled "+"extension its manifest identity and project-section contributions (ExtensionsInfo[]; backs listFormats and listExtensions).","Only .json documents open (backs listFormats); descriptor-contributed settings sections do not appear."),extensionCatalog:o("GET","/__studio/catalog","Extensions this backend can OFFER (ExtensionCatalogEntry[]) — the shipped first-party "+"catalogue plus any package in the project's own dependencies exporting a jx-extension.json, each marked with whether the host resolves it without a project install and whether the project has it installed. A capability rather than a constant: a Worker ships a fixed set "+"of extension packages (specs/extensions.md §5.5). Backs listExtensionCatalog.","The Extensions section offers no catalogue; adding an extension stays a typed package name."),projectSchemas:o("GET","/__studio/project-schemas","The project's generated entry documents (project.schema.json / document.schema.json), "+"PRE-BUNDLED into self-contained schemas — {project, document} (backs fetchProjectSchemas). "+"Regenerated on demand when missing or older than project.json.","The JSON editor falls back to the bundled core schemas (extension sections get no editor validation/completion)."),format:o("POST","/__studio/format","Dispatch a format capability {format, action: parse|serialize, source?|doc?}","Non-JSON documents cannot be parsed/serialized (backs formatAction)."),pluginSchema:o("GET","/__studio/plugin-schema","Extract a $studio schema from a class source","Plugin property panels fall back to generic JSON editing."),codeFormat:o("POST","/__studio/code/format","Format posted source {code, path?} → {code, errors}","Code editors skip format-on-open/save (codeService returns null)."),codeMinify:o("POST","/__studio/code/minify","Minify posted source {code} → {code}","Compiled-output minification is skipped."),codeLint:o("POST","/__studio/code/lint","Lint posted source {code, path?} → {diagnostics}","Code editors show no lint markers."),buildSite:o("POST","/__studio/build","Build or render the site → {routes, files, errors, mode?, url}","Build Site reports that this target cannot build."),previewSite:o("POST","/__studio/preview","Preview the working tree at a route → {routes, files, errors, mode, url, reused}","Open in Browser falls back to buildSite."),previewOverlay:o("POST","/__studio/preview/overlay","Publish (POST) or retract (DELETE) a document's unsaved bytes → 204","A live preview shows the last saved state instead of the editor's."),packages:o("GET","/__studio/packages","List dependencies (PackageInfo[])"),packagesAdd:o("POST","/__studio/packages/add","Add a dependency"),packagesRemove:o("POST","/__studio/packages/remove","Remove a dependency"),packagesInstall:o("POST","/__studio/packages/install","Run the package manager install","Install/reinstall affordances are hidden; manifest-only edits still work."),packagesNeedsInstall:o("GET","/__studio/packages/needs-install","Whether node_modules is stale","The install-on-open prompt never shows."),packagesVersions:o("GET","/__studio/packages/versions","Newest published version of each dependency (PackageVersionInfo[])","The Latest column stays empty and the update affordances are hidden."),packagesSetVersions:o("POST","/__studio/packages/set-versions","Rewrite dependency ranges and install","Bulk version updates are hidden."),gitStatus:o("GET","/__studio/git/status","Working-tree status (GitStatusResult)"),gitBranches:o("GET","/__studio/git/branches","Branch list (GitBranchesResult)"),gitLog:o("GET","/__studio/git/log","Recent commits (GitLogEntry[])"),gitStage:o("POST","/__studio/git/stage","Stage files"),gitUnstage:o("POST","/__studio/git/unstage","Unstage files"),gitCommit:o("POST","/__studio/git/commit","Commit staged (else all dirty) files"),gitPush:o("POST","/__studio/git/push","Push (cloud: sync check — commits land on push)"),gitPull:o("POST","/__studio/git/pull","Pull/fast-forward; 409 {conflicts} on overlap"),gitFetch:o("POST","/__studio/git/fetch","Refresh remote tracking state"),gitCheckout:o("POST","/__studio/git/checkout","Switch branches"),gitCreateBranch:o("POST","/__studio/git/create-branch","Create a branch"),gitDiff:o("GET","/__studio/git/diff","Unified diff of dirty files (or one path)"),gitShow:o("GET","/__studio/git/show","File content at a ref"),gitDiscard:o("POST","/__studio/git/discard","Discard working changes"),gitInit:o("POST","/__studio/git/init","Initialize a repository"),gitAddRemote:o("POST","/__studio/git/add-remote","Add a remote"),gitClone:o("POST","/__studio/git/clone","Clone a repository","The welcome screen hides Clone Git Repository."),gitPr:o("POST","/__studio/git/pr","Open a pull request → PullRequestInfo","Studio falls back to a direct GitHub API call with the user's token."),dataConnections:o("GET","/__studio/data/connections","Connector connections with configured/missingSecrets/isDefault state, reachable table names, and registry-descriptor provider metadata (DataConnectionsResponse; backs dataConnections)","The connections settings section shows no status, and data-domain actions stay hidden."),dataConnectionTest:o("POST","/__studio/data/connections/test","Probe a connection {connection} → DataConnectionTestResult (backs dataConnectionTest)","The Test Connection action is hidden."),dataPush:o("POST","/__studio/data/push","Additive schema push {connection?, dryRun?} → DataPushResult (plan of DataPushStep[], "+"applied, warnings/errors; backs dataPush)","The Push Schema action is hidden; schemas deploy via `jx db push` instead."),dataRows:o("GET","/__studio/data/rows","Page a table (DataRowsQuery params) → DataRowsResult {rows, total, columns} (backs dataRows)","The data grid is unavailable."),dataInsertRow:o("POST","/__studio/data/rows","Insert a row {table, connection?, values} → {row} (backs dataInsertRow)","The data grid hides its add-row footer."),dataUpdateRow:o("PUT","/__studio/data/rows","Update a row keyed on its primary key {table, connection?, pk, set} → {row} (backs "+"dataUpdateRow)","Data grid cells are read-only."),dataDeleteRow:o("DELETE","/__studio/data/rows","Delete a row (?table=&pk=&connection=) → {ok} (backs dataDeleteRow)","The data grid hides row deletion."),secretsList:o("GET","/__studio/secrets","Configured secret env-var NAMES, never values (SecretsListResponse; backs listSecrets)","Secret fields cannot show set/unset state."),secretsSet:o("PUT","/__studio/secrets","Write/remove secrets in the backend store (.dev.vars locally) {set?, remove?} → names "+"(backs setSecrets)","The secret form control renders disabled; secrets are edited in .dev.vars by hand."),aiChat:o("POST","/__studio/ai/chat","StreamEvent SSE chat proxy {messages, tools, systemPrompt, model}"),aiModels:o("GET","/__studio/ai/models","Model catalogue (AiModelsResponse)"),cfProxy:o("POST","/__studio/cf/proxy","Allowlisted Cloudflare API passthrough {path, method?, body?} (backs cfApi)","The Publish panel explains the git-push publishing path instead.")};var n$=200,i$=100,o$=12;var Y=new Set(["reload","repeat","none"]);function Np(e){if(!Array.isArray(e))return[];return e.flatMap((r)=>{if(!v(r))return[];let{href:i,id:s,label:f,primary:m}=r;if(!n(s)||!s||!n(f)||!f)return[];let c={id:s,label:f};if(n(i)&&i)c.href=i;if(m===!0)c.primary=!0;return[c]})}function F(e){return n(e)&&Y.has(e)}function r$(e){return F(e)?e:void 0}function Q(e){return e.replaceAll("_","-")}function _(e){if(!v(e))return{};let{actions:t,code:r,heading:i,installUrl:s,retry:f,type:m}=e,c={},a=jb(m)??(n(r)?Q(r):null);if(a!==null)c.code=a;if(n(s))c.installUrl=s;if(t!==void 0)c.actions=Np(t);if(n(i)&&i)c.heading=i;if(F(f))c.retry=f;return c}function fA(e){let t=_(e);return t.code==="needs-installation-access"&&t.installUrl?t.installUrl:null}function mA(e){return _(e).code==="action-required"}function Hd(){return Go(pt.aiOpenAiKey)}function gA(e){_r(pt.aiOpenAiKey,e||"")}function sx(){return EA(pt.aiOpenAiKey)}function sl(){return Go(pt.aiBaseUrl)}function ax(){return Go(pt.aiModel)}function bA(e){_r(pt.aiModel,e||"")}function vA(e){LA([[pt.aiOpenAiKey,e.apiKey],[pt.aiBaseUrl,e.baseUrl],[pt.aiModel,e.model]])}function yA(e){return!Cm(pt.aiOpenAiKey,e.apiKey,Hd())||!Cm(pt.aiBaseUrl,e.baseUrl,sl())||!Cm(pt.aiModel,e.model,ax())}function Cm(e,t,r){return dx(e,t)===dx(e,r)}function wA(){Op([pt.aiOpenAiKey,pt.aiBaseUrl,pt.aiModel])}function sC(){return{apiKey:Hd(),baseUrl:sl()}}function V(e){return`${e.apiKey}\x00${e.baseUrl}`}var g=null,P="",j=!1,A=!1,D="",I,M="",R=null,U=null,q=new Set,ee=600000,S=0,J=!1;function ds(){g=null,P="",j=!1,A=!1,D="",I=void 0,M="",R=null,U=null,S=0}var oe=new Set([pt.aiOpenAiKey.key,pt.aiBaseUrl.key,pt.cfToken.key,pt.cfAccountId.key]);Ap((e)=>{if(e.some((t)=>oe.has(t)))ds()});function s$(e){return g&&P===V(e)?g:null}function K(e){return g?.find((t)=>t.id===e)}function a$(e){return K(e)?.toolSupport}function xA(e){return K(e)?.contextWindow}function lx(e){if(e)q.add(e);U??=lh({force:!0}).catch(()=>{}).then(()=>{S=Date.now();for(let t of q)t()})}function ne(){if(!A||S===0||Date.now()-S<ee)return!1;return U=null,S=0,lx(),!0}function re(){if(typeof window>"u"||J)return;J=!0,window.addEventListener("focus",()=>{ne()})}re();function Hb(){return sx()||aC()}function aC(){return j}function _A(){return A}function km(){return I}function SA(){return M}function lC(){return R}function ie(){return D}function Kl(){return ax()||ie()||pt.aiModel.default}function se(e,t){let r;try{r=new URL(e,"http://jx.invalid")}catch{return e}return r.pathname=r.pathname.replace(/[^/]*$/,t),/^https?:/i.test(e)?r.href:`${r.pathname}${r.search}`}async function lh(e={}){let t=e.credentials??sC(),r=V(t);if(g&&P===r&&!e.force)return g;let i=p(),s=await Promise.resolve(i.aiChatUrl()),f=se(s,"models"),m={};if(t.apiKey)m["X-Api-Key"]=t.apiKey;if(t.baseUrl)m["X-Api-Base-URL"]=t.baseUrl;let c=await fetch(f,{headers:m});if(!c.ok)throw Error(`HTTP ${c.status}`);let a=await c.json();if(j=a.configured===!0,A=a.managed===!0,D=a.defaultModel??"",I=a.code,M=a.upstreamError!==void 0?a.upstreamMessage??"":"",R=null,a.code==="action_required"){let u={actions:Np(a.actions)};if(n(a.detail)&&a.detail)u.detail=a.detail;R=u}return g=(a.models||[]).map((u)=>{let h={id:u.id,name:u.name||u.id};if(Z(u.contextWindow))h.contextWindow=u.contextWindow;if(Xe(u.toolSupport))h.toolSupport=u.toolSupport;return h}),P=r,g}var T=new Set,B=null;function CA(e){if(T.size===0){B=e;return}for(let t of T)t(e)}function H(e){T.add(e);let t=B;if(B=null,t)e(t);return()=>{T.delete(e)}}function cC(){return _e()&&te(p().performAction)}function l$(e){let t=e.find((i)=>i.primary)??e[0];if(!t)return null;let r=e.find((i)=>i!==t);return r?{lead:t,other:r}:{lead:t}}var w=null,W=!1;function dC(e){let t=l$(e.actions);if(!cC()||!t)return Promise.resolve(!1);return w??=ae(e,t).finally(()=>{w=null}),w}async function Em(e){let t=_(e);if(t.code!=="action-required"||!t.actions?.length)return!1;return dC({actions:t.actions,detail:e instanceof Error?e.message:void 0,heading:t.heading,retry:t.retry})}async function z(){ds(),await jd(),c$()}function ae(e,t){let r=e.detail??"This needs one more step first.";return new Promise((i)=>{let s="offer",f=(y)=>{if(s==="done")return;s="done",E.close(),i(y)},m=(y)=>{s="offer",E.update({cancelLabel:"Not now",confirmLabel:t.lead.label,message:y,secondaryLabel:t.other?.label??""})},c=async(y)=>{let b;try{b=await y}catch(x){if(s==="waiting")m(x instanceof Error?x.message:String(x));return}if(b?.status==="done"){await z(),f(!0);return}if(s!=="waiting"||!b||b.status==="redirect")return;jd(),m(r)},a=(y)=>{if(s!=="offer")return;s="waiting";let b;try{b=p().performAction(y)}catch(x){m(x instanceof Error?x.message:String(x));return}E.update({cancelLabel:"Cancel",confirmLabel:"Waiting…",message:"Finish in the window that opened. This closes by itself once it is done.",secondaryLabel:""}),c(b)},{lead:u,other:h}=t,O={cancelLabel:"Not now",confirmLabel:u.label,headline:e.heading??"One more step",layer:tt("dialog"),message:r,onCancel:()=>{W=!0,f(!1)},onClosed:()=>{f(!1)},onConfirm:()=>{a(u)},region:"account/action"};if(h)O.onSecondary=()=>{a(h)},O.secondaryLabel=h.label;let E=Ys(O)})}function ce(e){if(e==="reload")location.reload();else if(e==="repeat")C.info("Done. Run that again now.",{key:"account.action.retry",source:"Account"})}function kA(){return H((e)=>{if(W||w)return;dC(e).then((t)=>{if(t)ce(e.retry)})})}async function cx(e){if(!cC())return!1;let t=p().performAction(e),r;try{r=await t}catch(i){return C.error(i instanceof Error?i.message:String(i),{key:"account.action",source:"Account",tier:"toast"}),!1}if(r?.status==="done")return await z(),!0;if(r?.status!=="redirect")await jd();return!1}function c$(){for(let e of N()){let t={key:`account.notice.${e.id}`,source:"Account"};if(e.level==="warning")C.warn(e.message,t);else C.info(e.message,t)}}
2
+ export{jd,iC,oC,hA,pA,t$,jb,rr,Ca,rC,n$,i$,o$,Np,r$,fA,mA,Hd,gA,sx,sl,ax,bA,vA,yA,Cm,wA,sC,ds,s$,a$,xA,lx,Hb,aC,_A,km,SA,lC,Kl,lh,CA,cC,l$,dC,Em,kA,cx,c$};
3
3
 
4
- //# debugId=D99709F683E98F4E64756E2164756E21
5
- //# sourceMappingURL=studio-4hp8pkyt.js.map
4
+ //# debugId=615B960ED55D2C8664756E2164756E21
5
+ //# sourceMappingURL=studio-0khd0xdw.js.map
@@ -0,0 +1,5 @@
1
+ import{vx,Yl,al,m,_i,Ht}from"./studio-y1x65h5r.js";import{cS,vw,_T}from"./studio-c4rcaftm.js";import{Kk,Jk,KR}from"./studio-8m1t83kn.js";import{t_,n_,wk}from"./studio-v0gsjav0.js";var n={children:[],tagName:"div"},b2=new Set(Object.values(vx));function Q0(e){return b2.has(e)}function mk(e){let o=Yl(e),r=m.tabs.get(o);if(r)return Ht(o),r;return _i({capabilities:{modes:[vx[e]]},document:structuredClone(n),documentPath:null,id:o})}function gk(e,o){_i({background:!0,capabilities:{modes:[vx[e]]},document:structuredClone(n),documentPath:null,id:Yl(e),paneId:o})}function e_(e,o){let r=al(o.id);if(r==="media")return cS(e,o);if(r==="content")return Kk(e,o);return t_(e,o)}function Ag(e){vw(e),Jk(e),n_(e)}function bk(e,o){let{paneId:r}=e;if(e_(r,o))return;Ag(r);let t=al(o.id);if(t==="media"){_T(e,o);return}if(t==="content"){KR(e,o);return}wk(e,o)}
2
+ export{b2,Q0,mk,gk,e_,Ag,bk};
3
+
4
+ //# debugId=BB92605E545D299764756E2164756E21
5
+ //# sourceMappingURL=studio-1fvzq9vs.js.map
@@ -0,0 +1,12 @@
1
+ import{pe}from"./studio-fqs1a22a.js";var xe=pe(function(Tr){Object.defineProperty(Tr,"__esModule",{value:!0});Tr.regexpCode=Tr.getEsmExportName=Tr.getProperty=Tr.safeStringify=Tr.stringify=Tr.strConcat=Tr.addCodeArg=Tr.str=Tr._=Tr.nil=Tr._Code=Tr.Name=Tr.IDENTIFIER=Tr._CodeOrName=void 0;class Ke{}Tr._CodeOrName=Ke;Tr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class he extends Ke{constructor(e){super();if(!Tr.IDENTIFIER.test(e))throw Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}Tr.Name=he;class U extends Ke{constructor(e){super();this._items=typeof e==="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((t,r)=>`${t}${r}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((t,r)=>{if(r instanceof he)t[r.str]=(t[r.str]||0)+1;return t},{})}}Tr._Code=U;Tr.nil=new U("");function Nr(e,...t){let r=[e[0]],n=0;while(n<t.length)Nt(r,t[n]),r.push(e[++n]);return new U(r)}Tr._=Nr;var kt=new U("+");function qr(e,...t){let r=[Pe(e[0])],n=0;while(n<t.length)r.push(kt),Nt(r,t[n]),r.push(kt,Pe(e[++n]));return Wi(r),new U(r)}Tr.str=qr;function Nt(e,t){if(t instanceof U)e.push(...t._items);else if(t instanceof he)e.push(t);else e.push(Xi(t))}Tr.addCodeArg=Nt;function Wi(e){let t=1;while(t<e.length-1){if(e[t]===kt){let r=Qi(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function Qi(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof he||e[e.length-1]!=='"')return;if(typeof t!="string")return`${e.slice(0,-1)}${t}"`;if(t[0]==='"')return e.slice(0,-1)+t.slice(1);return}if(typeof t=="string"&&t[0]==='"'&&!(e instanceof he))return`"${e}${t.slice(1)}`;return}function Zi(e,t){return t.emptyStr()?e:e.emptyStr()?t:qr`${e}${t}`}Tr.strConcat=Zi;function Xi(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Pe(Array.isArray(e)?e.join(","):e)}function Yi(e){return new U(Pe(e))}Tr.stringify=Yi;function Pe(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Tr.safeStringify=Pe;function ea(e){return typeof e=="string"&&Tr.IDENTIFIER.test(e)?new U(`.${e}`):Nr`[${e}]`}Tr.getProperty=ea;function ta(e){if(typeof e=="string"&&Tr.IDENTIFIER.test(e))return new U(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}Tr.getEsmExportName=ta;function ra(e){return new U(e.toString())}Tr.regexpCode=ra});var jt=pe(function(Cr){Object.defineProperty(Cr,"__esModule",{value:!0});Cr.ValueScope=Cr.ValueScopeName=Cr.Scope=Cr.varKinds=Cr.UsedValueState=void 0;var C=xe();class jr extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var Je;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Je||(Cr.UsedValueState=Je={}));Cr.varKinds={const:new C.Name("const"),let:new C.Name("let"),var:new C.Name("var")};class Tt{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof C.Name?e:this.name(e)}name(e){return new C.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){var t,r;if(((r=(t=this._parent)===null||t===void 0?void 0:t._prefixes)===null||r===void 0?void 0:r.has(e))||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}}Cr.Scope=Tt;class It extends C.Name{constructor(e,t){super(t);this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=C._`.${new C.Name(t)}[${r}]`}}Cr.ValueScopeName=It;var ma=C._`\n`;class Dr extends Tt{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?ma:C.nil}}get(){return this._scope}name(e){return new It(e,this._newName(e))}value(e,t){var r;if(t.ref===void 0)throw Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:o}=n,s=(r=t.key)!==null&&r!==void 0?r:t.ref,i=this._values[o];if(i){let d=i.get(s);if(d)return d}else i=this._values[o]=new Map;i.set(s,n);let a=this._scope[o]||(this._scope[o]=[]),c=a.length;return a[c]=t.ref,n.setValue(t,{property:o,itemIndex:c}),n}getValue(e,t){let r=this._values[e];if(!r)return;return r.get(t)}scopeRefs(e,t=this._values){return this._reduceValues(t,(r)=>{if(r.scopePath===void 0)throw Error(`CodeGen: name "${r}" has no value`);return C._`${e}${r.scopePath}`})}scopeCode(e=this._values,t,r){return this._reduceValues(e,(n)=>{if(n.value===void 0)throw Error(`CodeGen: name "${n}" has no value`);return n.value.code},t,r)}_reduceValues(e,t,r={},n){let o=C.nil;for(let s in e){let i=e[s];if(!i)continue;let a=r[s]=r[s]||new Map;i.forEach((c)=>{if(a.has(c))return;a.set(c,Je.Started);let d=t(c);if(d){let u=this.opts.es5?Cr.varKinds.var:Cr.varKinds.const;o=C._`${o}${u} ${c} = ${d};${this.opts._n}`}else if(d=n===null||n===void 0?void 0:n(c))o=C._`${o}${d}${this.opts._n}`;else throw new jr(c);a.set(c,Je.Completed)})}return o}}Cr.ValueScope=Dr});var Wt=pe(function(A){Object.defineProperty(A,"__esModule",{value:!0});A.or=A.and=A.not=A.CodeGen=A.operators=A.varKinds=A.ValueScopeName=A.ValueScope=A.Scope=A.Name=A.regexpCode=A.stringify=A.getProperty=A.nil=A.strConcat=A.str=A._=void 0;var P=xe(),H=jt(),Y=xe();Object.defineProperty(A,"_",{enumerable:!0,get:function(){return Y._}});Object.defineProperty(A,"str",{enumerable:!0,get:function(){return Y.str}});Object.defineProperty(A,"strConcat",{enumerable:!0,get:function(){return Y.strConcat}});Object.defineProperty(A,"nil",{enumerable:!0,get:function(){return Y.nil}});Object.defineProperty(A,"getProperty",{enumerable:!0,get:function(){return Y.getProperty}});Object.defineProperty(A,"stringify",{enumerable:!0,get:function(){return Y.stringify}});Object.defineProperty(A,"regexpCode",{enumerable:!0,get:function(){return Y.regexpCode}});Object.defineProperty(A,"Name",{enumerable:!0,get:function(){return Y.Name}});var Ye=jt();Object.defineProperty(A,"Scope",{enumerable:!0,get:function(){return Ye.Scope}});Object.defineProperty(A,"ValueScope",{enumerable:!0,get:function(){return Ye.ValueScope}});Object.defineProperty(A,"ValueScopeName",{enumerable:!0,get:function(){return Ye.ValueScopeName}});Object.defineProperty(A,"varKinds",{enumerable:!0,get:function(){return Ye.varKinds}});A.operators={GT:new P._Code(">"),GTE:new P._Code(">="),LT:new P._Code("<"),LTE:new P._Code("<="),EQ:new P._Code("==="),NEQ:new P._Code("!=="),NOT:new P._Code("!"),OR:new P._Code("||"),AND:new P._Code("&&"),ADD:new P._Code("+")};class ee{optimizeNodes(){return this}optimizeNames(e,t){return this}}class Mr extends ee{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?H.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${r} ${this.name}${n};`+t}optimizeNames(e,t){if(!e[this.name.str])return;if(this.rhs)this.rhs=_e(this.rhs,e,t);return this}get names(){return this.rhs instanceof P._CodeOrName?this.rhs.names:{}}}class At extends ee{constructor(e,t,r){super();this.lhs=e,this.rhs=t,this.sideEffects=r}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,t){if(this.lhs instanceof P.Name&&!e[this.lhs.str]&&!this.sideEffects)return;return this.rhs=_e(this.rhs,e,t),this}get names(){let e=this.lhs instanceof P.Name?{}:{...this.lhs.names};return Xe(e,this.rhs)}}class Fr extends At{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class Vr extends ee{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class zr extends ee{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class Ur extends ee{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class Hr extends ee{constructor(e){super();this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=_e(this.code,e,t),this}get names(){return this.code instanceof P._CodeOrName?this.code.names:{}}}class et extends ee{constructor(e=[]){super();this.nodes=e}render(e){return this.nodes.reduce((t,r)=>t+r.render(e),"")}optimizeNodes(){let{nodes:e}=this,t=e.length;while(t--){let r=e[t].optimizeNodes();if(Array.isArray(r))e.splice(t,1,...r);else if(r)e[t]=r;else e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:r}=this,n=r.length;while(n--){let o=r[n];if(o.optimizeNames(e,t))continue;$a(e,o.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>se(e,t.names),{})}}class te extends et{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class Lr extends et{}class Oe extends te{}Oe.kind="else";class Q extends te{constructor(e,t){super(t);this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);if(this.else)t+="else "+this.else.render(e);return t}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let t=this.else;if(t){let r=t.optimizeNodes();t=this.else=Array.isArray(r)?new Oe(r):r}if(t){if(e===!1)return t instanceof Q?t:t.nodes;if(this.nodes.length)return this;return new Q(Wr(e),t instanceof Q?[t]:t.nodes)}if(e===!1||!this.nodes.length)return;return this}optimizeNames(e,t){var r;if(this.else=(r=this.else)===null||r===void 0?void 0:r.optimizeNames(e,t),!(super.optimizeNames(e,t)||this.else))return;return this.condition=_e(this.condition,e,t),this}get names(){let e=super.names;if(Xe(e,this.condition),this.else)se(e,this.else.names);return e}}Q.kind="if";class me extends te{}me.kind="for";class Kr extends me{constructor(e){super();this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iteration=_e(this.iteration,e,t),this}get names(){return se(super.names,this.iteration.names)}}class Gr extends me{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?H.varKinds.var:this.varKind,{name:r,from:n,to:o}=this;return`for(${t} ${r}=${n}; ${r}<${o}; ${r}++)`+super.render(e)}get names(){let e=Xe(super.names,this.from);return Xe(e,this.to)}}class Dt extends me{constructor(e,t,r,n){super();this.loop=e,this.varKind=t,this.name=r,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iterable=_e(this.iterable,e,t),this}get names(){return se(super.names,this.iterable.names)}}class Be extends te{constructor(e,t,r){super();this.name=e,this.args=t,this.async=r}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}}Be.kind="func";class We extends et{render(e){return"return "+super.render(e)}}We.kind="return";class Jr extends te{render(e){let t="try"+super.render(e);if(this.catch)t+=this.catch.render(e);if(this.finally)t+=this.finally.render(e);return t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(t=this.finally)===null||t===void 0||t.optimizeNodes(),this}optimizeNames(e,t){var r,n;return super.optimizeNames(e,t),(r=this.catch)===null||r===void 0||r.optimizeNames(e,t),(n=this.finally)===null||n===void 0||n.optimizeNames(e,t),this}get names(){let e=super.names;if(this.catch)se(e,this.catch.names);if(this.finally)se(e,this.finally.names);return e}}class Qe extends te{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}Qe.kind="catch";class Ze extends te{render(e){return"finally"+super.render(e)}}Ze.kind="finally";class Br{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
2
+ `:""},this._extScope=e,this._scope=new H.Scope({parent:e}),this._nodes=[new Lr]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let r=this._extScope.value(e,t);return(this._values[r.prefix]||(this._values[r.prefix]=new Set)).add(r),r}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,r,n){let o=this._scope.toName(t);if(r!==void 0&&n)this._constants[o.str]=r;return this._leafNode(new Mr(e,o,r)),o}const(e,t,r){return this._def(H.varKinds.const,e,t,r)}let(e,t,r){return this._def(H.varKinds.let,e,t,r)}var(e,t,r){return this._def(H.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new At(e,t,r))}add(e,t){return this._leafNode(new Fr(e,A.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==P.nil)this._leafNode(new Hr(e));return this}object(...e){let t=["{"];for(let[r,n]of e){if(t.length>1)t.push(",");if(t.push(r),r!==n||this.opts.es5)t.push(":"),P.addCodeArg(t,n)}return t.push("}"),new P._Code(t)}if(e,t,r){if(this._blockNode(new Q(e)),t&&r)this.code(t).else().code(r).endIf();else if(t)this.code(t).endIf();else if(r)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Q(e))}else(){return this._elseNode(new Oe)}endIf(){return this._endBlockNode(Q,Oe)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new Kr(e),t)}forRange(e,t,r,n,o=this.opts.es5?H.varKinds.var:H.varKinds.let){let s=this._scope.toName(e);return this._for(new Gr(o,s,t,r),()=>n(s))}forOf(e,t,r,n=H.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let s=t instanceof P.Name?t:this.var("_arr",t);return this.forRange("_i",0,P._`${s}.length`,(i)=>{this.var(o,P._`${s}[${i}]`),r(o)})}return this._for(new Dt("of",n,o,t),()=>r(o))}forIn(e,t,r,n=this.opts.es5?H.varKinds.var:H.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,P._`Object.keys(${t})`,r);let o=this._scope.toName(e);return this._for(new Dt("in",n,o,t),()=>r(o))}endFor(){return this._endBlockNode(me)}label(e){return this._leafNode(new Vr(e))}break(e){return this._leafNode(new zr(e))}return(e){let t=new We;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(We)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new Jr;if(this._blockNode(n),this.code(e),t){let o=this.name("e");this._currNode=n.catch=new Qe(o),t(o)}if(r)this._currNode=n.finally=new Ze,this.code(r);return this._endBlockNode(Qe,Ze)}throw(e){return this._leafNode(new Ur(e))}block(e,t){if(this._blockStarts.push(this._nodes.length),e)this.code(e).endBlock(t);return this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error("CodeGen: not in self-balancing block");let r=this._nodes.length-t;if(r<0||e!==void 0&&r!==e)throw Error(`CodeGen: wrong number of nodes: ${r} vs ${e} expected`);return this._nodes.length=t,this}func(e,t=P.nil,r,n){if(this._blockNode(new Be(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(Be)}optimize(e=1){while(e-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let r=this._currNode;if(r instanceof e||t&&r instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof Q))throw Error('CodeGen: "else" without "if"');return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}}A.CodeGen=Br;function se(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Xe(e,t){return t instanceof P._CodeOrName?se(e,t.names):e}function _e(e,t,r){if(e instanceof P.Name)return n(e);if(!o(e))return e;return new P._Code(e._items.reduce((s,i)=>{if(i instanceof P.Name)i=n(i);if(i instanceof P._Code)s.push(...i._items);else s.push(i);return s},[]));function n(s){let i=r[s.str];if(i===void 0||t[s.str]!==1)return s;return delete t[s.str],i}function o(s){return s instanceof P._Code&&s._items.some((i)=>i instanceof P.Name&&t[i.str]===1&&r[i.str]!==void 0)}}function $a(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Wr(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:P._`!${Ct(e)}`}A.not=Wr;var va=Qr(A.operators.AND);function wa(...e){return e.reduce(va)}A.and=wa;var Ea=Qr(A.operators.OR);function ba(...e){return e.reduce(Ea)}A.or=ba;function Qr(e){return(t,r)=>t===P.nil?r:r===P.nil?t:P._`${Ct(t)} ${e} ${Ct(r)}`}function Ct(e){return e instanceof P.Name?e:P._`(${e})`}});var yn=pe(function(sn){Object.defineProperty(sn,"__esModule",{value:!0});sn.checkStrictMode=sn.getErrorPath=sn.Type=sn.useFunc=sn.setEvaluated=sn.evaluatedPropsToName=sn.mergeEvaluated=sn.eachItem=sn.unescapeJsonPointer=sn.escapeJsonPointer=sn.escapeFragment=sn.unescapeFragment=sn.schemaRefOrVal=sn.schemaHasRulesButRef=sn.schemaHasRules=sn.checkUnknownRules=sn.alwaysValidSchema=sn.toHash=void 0;var R=Wt(),Oa=xe();function Ra(e){let t={};for(let r of e)t[r]=!0;return t}sn.toHash=Ra;function ka(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return en(e,t),!tn(t,e.self.RULES.all)}sn.alwaysValidSchema=ka;function en(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema)return;if(typeof t==="boolean")return;let o=n.RULES.keywords;for(let s in t)if(!o[s])on(e,`unknown keyword: "${s}"`)}sn.checkUnknownRules=en;function tn(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}sn.schemaHasRules=tn;function Na(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}sn.schemaHasRulesButRef=Na;function qa({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return R._`${r}`}return R._`${e}${t}${R.getProperty(n)}`}sn.schemaRefOrVal=qa;function Ta(e){return rn(decodeURIComponent(e))}sn.unescapeFragment=Ta;function Ia(e){return encodeURIComponent(Ft(e))}sn.escapeFragment=Ia;function Ft(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}sn.escapeJsonPointer=Ft;function rn(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}sn.unescapeJsonPointer=rn;function ja(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}sn.eachItem=ja;function Xr({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof R.Name?(s instanceof R.Name?e(o,s,i):t(o,s,i),i):s instanceof R.Name?(t(o,i,s),s):r(s,i);return a===R.Name&&!(c instanceof R.Name)?n(o,c):c}}sn.mergeEvaluated={props:Xr({mergeNames:(e,t,r)=>e.if(R._`${r} !== true && ${t} !== undefined`,()=>{e.if(R._`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,R._`${r} || {}`).code(R._`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if(R._`${r} !== true`,()=>{if(t===!0)e.assign(r,!0);else e.assign(r,R._`${r} || {}`),Vt(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:nn}),items:Xr({mergeNames:(e,t,r)=>e.if(R._`${r} !== true && ${t} !== undefined`,()=>e.assign(r,R._`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if(R._`${r} !== true`,()=>e.assign(r,t===!0?!0:R._`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function nn(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",R._`{}`);if(t!==void 0)Vt(e,r,t);return r}sn.evaluatedPropsToName=nn;function Vt(e,t,r){Object.keys(r).forEach((n)=>e.assign(R._`${t}${R.getProperty(n)}`,!0))}sn.setEvaluated=Vt;var Yr={};function Da(e,t){return e.scopeValue("func",{ref:t,code:Yr[t.code]||(Yr[t.code]=new Oa._Code(t.code))})}sn.useFunc=Da;var Mt;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Mt||(sn.Type=Mt={}));function Ca(e,t,r){if(e instanceof R.Name){let n=t===Mt.Num;return r?n?R._`"[" + ${e} + "]"`:R._`"['" + ${e} + "']"`:n?R._`"/" + ${e}`:R._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?R.getProperty(e).toString():"/"+Ft(e)}sn.getErrorPath=Ca;function on(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}sn.checkStrictMode=on});var kc=pe(function(cn){Object.defineProperty(cn,"__esModule",{value:!0});var T=Wt(),ec={data:new T.Name("data"),valCxt:new T.Name("valCxt"),instancePath:new T.Name("instancePath"),parentData:new T.Name("parentData"),parentDataProperty:new T.Name("parentDataProperty"),rootData:new T.Name("rootData"),dynamicAnchors:new T.Name("dynamicAnchors"),vErrors:new T.Name("vErrors"),errors:new T.Name("errors"),this:new T.Name("this"),self:new T.Name("self"),scope:new T.Name("scope"),json:new T.Name("json"),jsonPos:new T.Name("jsonPos"),jsonLen:new T.Name("jsonLen"),jsonPart:new T.Name("jsonPart")};cn.default=ec});var Re=pe(function(fn){Object.defineProperty(fn,"__esModule",{value:!0});fn.extendErrors=fn.resetErrorsCount=fn.reportExtraError=fn.reportError=fn.keyword$DataError=fn.keywordError=void 0;var x=Wt(),rt=yn(),j=kc();fn.keywordError={message:({keyword:e})=>x.str`must pass "${e}" keyword validation`};fn.keyword$DataError={message:({keyword:e,schemaType:t})=>t?x.str`"${e}" keyword must be ${t} ($data)`:x.str`"${e}" keyword is invalid ($data)`};function rc(e,t=fn.keywordError,r,n){let{it:o}=e,{gen:s,compositeRule:i,allErrors:a}=o,c=ln(e,t,r);if(n!==null&&n!==void 0?n:i||a)dn(s,c);else un(o,x._`[${c}]`)}fn.reportError=rc;function nc(e,t=fn.keywordError,r){let{it:n}=e,{gen:o,compositeRule:s,allErrors:i}=n,a=ln(e,t,r);if(dn(o,a),!(s||i))un(n,j.default.vErrors)}fn.reportExtraError=nc;function oc(e,t){e.assign(j.default.errors,t),e.if(x._`${j.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(x._`${j.default.vErrors}.length`,t),()=>e.assign(j.default.vErrors,null)))}fn.resetErrorsCount=oc;function sc({gen:e,keyword:t,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw Error("ajv implementation error");let i=e.name("err");e.forRange("i",o,j.default.errors,(a)=>{if(e.const(i,x._`${j.default.vErrors}[${a}]`),e.if(x._`${i}.instancePath === undefined`,()=>e.assign(x._`${i}.instancePath`,x.strConcat(j.default.instancePath,s.errorPath))),e.assign(x._`${i}.schemaPath`,x.str`${s.errSchemaPath}/${t}`),s.opts.verbose)e.assign(x._`${i}.schema`,r),e.assign(x._`${i}.data`,n)})}fn.extendErrors=sc;function dn(e,t){let r=e.const("err",t);e.if(x._`${j.default.vErrors} === null`,()=>e.assign(j.default.vErrors,x._`[${r}]`),x._`${j.default.vErrors}.push(${r})`),e.code(x._`${j.default.errors}++`)}function un(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;if(o.$async)r.throw(x._`new ${e.ValidationError}(${t})`);else r.assign(x._`${n}.errors`,t),r.return(!1)}var ie={keyword:new x.Name("keyword"),schemaPath:new x.Name("schemaPath"),params:new x.Name("params"),propertyName:new x.Name("propertyName"),message:new x.Name("message"),schema:new x.Name("schema"),parentSchema:new x.Name("parentSchema")};function ln(e,t,r){let{createErrors:n}=e.it;if(n===!1)return x._`{}`;return ic(e,t,r)}function ic(e,t,r={}){let{gen:n,it:o}=e,s=[ac(o,r),cc(e,r)];return dc(e,t,s),n.object(...s)}function ac({errorPath:e},{instancePath:t}){let r=t?x.str`${e}${rt.getErrorPath(t,rt.Type.Str)}`:e;return[j.default.instancePath,x.strConcat(j.default.instancePath,r)]}function cc({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:x.str`${t}/${e}`;if(r)o=x.str`${o}${rt.getErrorPath(r,rt.Type.Str)}`;return[ie.schemaPath,o]}function dc(e,{params:t,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=e,{opts:c,propertyName:d,topSchemaRef:u,schemaPath:l}=a;if(n.push([ie.keyword,o],[ie.params,typeof t=="function"?t(e):t||x._`{}`]),c.messages)n.push([ie.message,typeof r=="function"?r(e):r]);if(c.verbose)n.push([ie.schema,i],[ie.parentSchema,x._`${u}${l}`],[j.default.data,s]);if(d)n.push([ie.propertyName,d])}});var gn=pe(function(mn){Object.defineProperty(mn,"__esModule",{value:!0});mn.boolOrEmptySchema=mn.topBoolOrEmptySchema=void 0;var pc=Re(),mc=Wt(),_c=kc(),gc={message:"boolean schema is false"};function yc(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)pn(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return(_c.default.data);else t.assign(mc._`${n}.errors`,null),t.return(!0)}mn.topBoolOrEmptySchema=yc;function $c(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),pn(e);else r.var(t,!0)}mn.boolOrEmptySchema=$c;function pn(e,t){let{gen:r,data:n}=e;pc.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},gc,void 0,t)}});var Ut=pe(function($n){Object.defineProperty($n,"__esModule",{value:!0});$n.getRules=$n.isJSONType=void 0;var wc=["string","number","integer","boolean","null","object","array"],Ec=new Set(wc);function bc(e){return typeof e=="string"&&Ec.has(e)}$n.isJSONType=bc;function Sc(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}$n.getRules=Sc});var Ht=pe(function(bn){Object.defineProperty(bn,"__esModule",{value:!0});bn.shouldUseRule=bn.shouldUseGroup=bn.schemaHasRulesForType=void 0;function xc({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&wn(e,n)}bn.schemaHasRulesForType=xc;function wn(e,t){return t.rules.some((r)=>En(e,r))}bn.shouldUseGroup=wn;function En(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some((n)=>e[n]!==void 0))}bn.shouldUseRule=En});var ke=pe(function(Rn){Object.defineProperty(Rn,"__esModule",{value:!0});Rn.reportTypeError=Rn.checkDataTypes=Rn.checkDataType=Rn.coerceAndCheckDataType=Rn.getJSONTypes=Rn.getSchemaTypes=Rn.DataType=void 0;var Nc=Ut(),qc=Ht(),Tc=Re(),S=Wt(),Pn=yn(),ge;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(ge||(Rn.DataType=ge={}));function Ic(e){let t=xn(e.type);if(t.includes("null")){if(e.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(e.nullable===!0)t.push("null")}return t}Rn.getSchemaTypes=Ic;function xn(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Nc.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}Rn.getJSONTypes=xn;function jc(e,t){let{gen:r,data:n,opts:o}=e,s=Dc(t,o.coerceTypes),i=t.length>0&&!(s.length===0&&t.length===1&&qc.schemaHasRulesForType(e,t[0]));if(i){let a=Kt(t,n,o.strictNumbers,ge.Wrong);r.if(a,()=>{if(s.length)Cc(e,t,s);else Gt(e)})}return i}Rn.coerceAndCheckDataType=jc;var On=new Set(["string","number","integer","boolean","null"]);function Dc(e,t){return t?e.filter((r)=>On.has(r)||t==="array"&&r==="array"):[]}function Cc(e,t,r){let{gen:n,data:o,opts:s}=e,i=n.let("dataType",S._`typeof ${o}`),a=n.let("coerced",S._`undefined`);if(s.coerceTypes==="array")n.if(S._`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,S._`${o}[0]`).assign(i,S._`typeof ${o}`).if(Kt(t,o,s.strictNumbers),()=>n.assign(a,o)));n.if(S._`${a} !== undefined`);for(let d of r)if(On.has(d)||d==="array"&&s.coerceTypes==="array")c(d);n.else(),Gt(e),n.endIf(),n.if(S._`${a} !== undefined`,()=>{n.assign(o,a),Ac(e,a)});function c(d){switch(d){case"string":n.elseIf(S._`${i} == "number" || ${i} == "boolean"`).assign(a,S._`"" + ${o}`).elseIf(S._`${o} === null`).assign(a,S._`""`);return;case"number":n.elseIf(S._`${i} == "boolean" || ${o} === null
3
+ || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,S._`+${o}`);return;case"integer":n.elseIf(S._`${i} === "boolean" || ${o} === null
4
+ || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,S._`+${o}`);return;case"boolean":n.elseIf(S._`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf(S._`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf(S._`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf(S._`${i} === "string" || ${i} === "number"
5
+ || ${i} === "boolean" || ${o} === null`).assign(a,S._`[${o}]`)}}}function Ac({gen:e,parentData:t,parentDataProperty:r},n){e.if(S._`${t} !== undefined`,()=>e.assign(S._`${t}[${r}]`,n))}function Lt(e,t,r,n=ge.Correct){let o=n===ge.Correct?S.operators.EQ:S.operators.NEQ,s;switch(e){case"null":return S._`${t} ${o} null`;case"array":s=S._`Array.isArray(${t})`;break;case"object":s=S._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=i(S._`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=i();break;default:return S._`typeof ${t} ${o} ${e}`}return n===ge.Correct?s:S.not(s);function i(a=S.nil){return S.and(S._`typeof ${t} == "number"`,a,r?S._`isFinite(${t})`:S.nil)}}Rn.checkDataType=Lt;function Kt(e,t,r,n){if(e.length===1)return Lt(e[0],t,r,n);let o,s=Pn.toHash(e);if(s.array&&s.object){let i=S._`typeof ${t} != "object"`;o=s.null?i:S._`!${t} || ${i}`,delete s.null,delete s.array,delete s.object}else o=S.nil;if(s.number)delete s.integer;for(let i in s)o=S.and(o,Lt(i,t,r,n));return o}Rn.checkDataTypes=Kt;var Mc={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?S._`{type: ${e}}`:S._`{type: ${t}}`};function Gt(e){let t=Fc(e);Tc.reportError(t,Mc)}Rn.reportTypeError=Gt;function Fc(e){let{gen:t,data:r,schema:n}=e,o=Pn.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var In=pe(function(qn){Object.defineProperty(qn,"__esModule",{value:!0});qn.assignDefaults=void 0;var ye=Wt(),Gc=yn();function Jc(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)Nn(e,o,r[o].default);else if(t==="array"&&Array.isArray(n))n.forEach((o,s)=>Nn(e,s,o.default))}qn.assignDefaults=Jc;function Nn(e,t,r){let{gen:n,compositeRule:o,data:s,opts:i}=e;if(r===void 0)return;let a=ye._`${s}${ye.getProperty(t)}`;if(o){Gc.checkStrictMode(e,`default is ignored for: ${a}`);return}let c=ye._`${a} === undefined`;if(i.useDefaults==="empty")c=ye._`${c} || ${a} === null || ${a} === ""`;n.if(c,ye._`${a} = ${ye.stringify(r)}`)}});var V=pe(function(Cn){Object.defineProperty(Cn,"__esModule",{value:!0});Cn.validateUnion=Cn.validateArray=Cn.usePattern=Cn.callValidateCode=Cn.schemaProperties=Cn.allSchemaProperties=Cn.noPropertyInData=Cn.propertyInData=Cn.isOwnProperty=Cn.hasPropFunc=Cn.reportMissingProp=Cn.checkMissingProp=Cn.checkReportMissingProp=void 0;var k=Wt(),Jt=yn(),re=kc(),Bc=yn();function Wc(e,t){let{gen:r,data:n,it:o}=e;r.if(Qt(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:k._`${t}`},!0),e.error()})}Cn.checkReportMissingProp=Wc;function Qc({gen:e,data:t,it:{opts:r}},n,o){return k.or(...n.map((s)=>k.and(Qt(e,t,s,r.ownProperties),k._`${o} = ${s}`)))}Cn.checkMissingProp=Qc;function Zc(e,t){e.setParams({missingProperty:t},!0),e.error()}Cn.reportMissingProp=Zc;function jn(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:k._`Object.prototype.hasOwnProperty`})}Cn.hasPropFunc=jn;function Bt(e,t,r){return k._`${jn(e)}.call(${t}, ${r})`}Cn.isOwnProperty=Bt;function Xc(e,t,r,n){let o=k._`${t}${k.getProperty(r)} !== undefined`;return n?k._`${o} && ${Bt(e,t,r)}`:o}Cn.propertyInData=Xc;function Qt(e,t,r,n){let o=k._`${t}${k.getProperty(r)} === undefined`;return n?k.or(o,k.not(Bt(e,t,r))):o}Cn.noPropertyInData=Qt;function Dn(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}Cn.allSchemaProperties=Dn;function Yc(e,t){return Dn(t).filter((r)=>!Jt.alwaysValidSchema(e,t[r]))}Cn.schemaProperties=Yc;function ed({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,d){let u=d?k._`${e}, ${t}, ${n}${o}`:t,l=[[re.default.instancePath,k.strConcat(re.default.instancePath,s)],[re.default.parentData,i.parentData],[re.default.parentDataProperty,i.parentDataProperty],[re.default.rootData,re.default.rootData]];if(i.opts.dynamicRef)l.push([re.default.dynamicAnchors,re.default.dynamicAnchors]);let g=k._`${u}, ${r.object(...l)}`;return c!==k.nil?k._`${a}.call(${c}, ${g})`:k._`${a}(${g})`}Cn.callValidateCode=ed;var td=k._`new RegExp`;function rd({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:o}=t.code,s=o(r,n);return e.scopeValue("pattern",{key:s.toString(),ref:s,code:k._`${o.code==="new RegExp"?td:Bc.useFunc(e,o)}(${r}, ${n})`})}Cn.usePattern=rd;function nd(e){let{gen:t,data:r,keyword:n,it:o}=e,s=t.name("valid");if(o.allErrors){let a=t.let("valid",!0);return i(()=>t.assign(a,!1)),a}return t.var(s,!0),i(()=>t.break()),s;function i(a){let c=t.const("len",k._`${r}.length`);t.forRange("i",0,c,(d)=>{e.subschema({keyword:n,dataProp:d,dataPropType:Jt.Type.Num},s),t.if(k.not(s),a)})}}Cn.validateArray=nd;function od(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((c)=>Jt.alwaysValidSchema(o,c))&&!o.opts.unevaluated)return;let i=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((c,d)=>{let u=e.subschema({keyword:n,schemaProp:d,compositeRule:!0},a);if(t.assign(i,k._`${i} || ${a}`),!e.mergeValidEvaluated(u,a))t.if(k.not(i))})),e.result(i,()=>e.reset(),()=>e.error(!0))}Cn.validateUnion=od});var Un=pe(function(Vn){Object.defineProperty(Vn,"__esModule",{value:!0});Vn.validateKeywordUsage=Vn.validSchemaType=Vn.funcKeywordCode=Vn.macroKeywordCode=void 0;var D=Wt(),ae=kc(),gd=V(),yd=Re();function $d(e,t){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=e,a=t.macro.call(i.self,o,s,i),c=Fn(r,n,a);if(i.opts.validateSchema!==!1)i.self.validateSchema(a,!0);let d=r.name("valid");e.subschema({schema:a,schemaPath:D.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}Vn.macroKeywordCode=$d;function vd(e,t){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=e;Ed(c,t);let d=!a&&t.compile?t.compile.call(c.self,s,i,c):t.validate,u=Fn(n,o,d),l=n.let("valid");e.block$data(l,g),e.ok((r=t.valid)!==null&&r!==void 0?r:l);function g(){if(t.errors===!1){if(f(),t.modifying)Mn(e);p(()=>e.error())}else{let _=t.async?m():h();if(t.modifying)Mn(e);p(()=>wd(e,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>f(D._`await `),(E)=>n.assign(l,!1).if(D._`${E} instanceof ${c.ValidationError}`,()=>n.assign(_,D._`${E}.errors`),()=>n.throw(E))),_}function h(){let _=D._`${u}.errors`;return n.assign(_,null),f(D.nil),_}function f(_=t.async?D._`await `:D.nil){let E=c.opts.passContext?ae.default.this:ae.default.self,w=!(("compile"in t)&&!a||t.schema===!1);n.assign(l,D._`${_}${gd.callValidateCode(e,u,E,w)}`,t.modifying)}function p(_){var E;n.if(D.not((E=t.valid)!==null&&E!==void 0?E:l),_)}}Vn.funcKeywordCode=vd;function Mn(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,D._`${n.parentData}[${n.parentDataProperty}]`))}function wd(e,t){let{gen:r}=e;r.if(D._`Array.isArray(${t})`,()=>{r.assign(ae.default.vErrors,D._`${ae.default.vErrors} === null ? ${t} : ${ae.default.vErrors}.concat(${t})`).assign(ae.default.errors,D._`${ae.default.vErrors}.length`),yd.extendErrors(e)},()=>e.error())}function Ed({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function Fn(e,t,r){if(r===void 0)throw Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:D.stringify(r)})}function bd(e,t,r=!1){return!t.length||t.some((n)=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Vn.validSchemaType=bd;function Sd({schema:e,opts:t,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw Error("ajv implementation error");let i=o.dependencies;if(i===null||i===void 0?void 0:i.some((a)=>!Object.prototype.hasOwnProperty.call(e,a)))throw Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema){if(!o.validateSchema(e[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw Error(c)}}}Vn.validateKeywordUsage=Sd});var Gn=pe(function(Ln){Object.defineProperty(Ln,"__esModule",{value:!0});Ln.extendSubschemaMode=Ln.extendSubschemaData=Ln.getSubschema=void 0;var B=Wt(),Hn=yn();function Rd(e,{keyword:t,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(t!==void 0&&n!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let a=e.schema[t];return r===void 0?{schema:a,schemaPath:B._`${e.schemaPath}${B.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:B._`${e.schemaPath}${B.getProperty(t)}${B.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${Hn.escapeFragment(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw Error('either "keyword" or "schema" must be passed')}Ln.getSubschema=Rd;function kd(e,t,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:d,dataPathArr:u,opts:l}=t,g=a.let("data",B._`${t.data}${B.getProperty(r)}`,!0);c(g),e.errorPath=B.str`${d}${Hn.getErrorPath(r,n,l.jsPropertySyntax)}`,e.parentDataProperty=B._`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(o!==void 0){let d=o instanceof B.Name?o:a.let("data",o,!0);if(c(d),i!==void 0)e.propertyName=i}if(s)e.dataTypes=s;function c(d){e.data=d,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,d]}}Ln.extendSubschemaData=kd;function Nd(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){if(n!==void 0)e.compositeRule=n;if(o!==void 0)e.createErrors=o;if(s!==void 0)e.allErrors=s;e.jtdDiscriminator=t,e.jtdMetadata=r}Ln.extendSubschemaMode=Nd});var Zt=pe(function(ym,Jn){Jn.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!e(t[o],r[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(s=Object.keys(t),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!e(t[i],r[i]))return!1}return!0}return t!==t&&r!==r}});var Wn=pe(function($m,Bn){var ne=Bn.exports=function(e,t,r){if(typeof t=="function")r=t,t={};r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};nt(t,n,o,e,"",e)};ne.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ne.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ne.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ne.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function nt(e,t,r,n,o,s,i,a,c,d){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,s,i,a,c,d);for(var u in n){var l=n[u];if(Array.isArray(l)){if(u in ne.arrayKeywords)for(var g=0;g<l.length;g++)nt(e,t,r,l[g],o+"/"+u+"/"+g,s,o,u,n,g)}else if(u in ne.propsKeywords){if(l&&typeof l=="object")for(var m in l)nt(e,t,r,l[m],o+"/"+u+"/"+Id(m),s,o,u,n,m)}else if(u in ne.keywords||e.allKeys&&!(u in ne.skipKeywords))nt(e,t,r,l,o+"/"+u,s,o,u,n)}r(n,o,s,i,a,c,d)}}function Id(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ne=pe(function(Yn){Object.defineProperty(Yn,"__esModule",{value:!0});Yn.getSchemaRefs=Yn.resolveUrl=Yn.normalizeId=Yn._getFullPath=Yn.getFullPath=Yn.inlineRef=void 0;var jd=yn(),Dd=Zt(),Cd=Wn(),Ad=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Md(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!Xt(e);if(!t)return!1;return Qn(e)<=t}Yn.inlineRef=Md;var Fd=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Xt(e){for(let t in e){if(Fd.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Xt))return!0;if(typeof r=="object"&&Xt(r))return!0}return!1}function Qn(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,Ad.has(r))continue;if(typeof e[r]=="object")jd.eachItem(e[r],(n)=>t+=Qn(n));if(t===1/0)return 1/0}return t}function Zn(e,t="",r){if(r!==!1)t=$e(t);let n=e.parse(t);return Xn(e,n)}Yn.getFullPath=Zn;function Xn(e,t){return e.serialize(t).split("#")[0]+"#"}Yn._getFullPath=Xn;var Vd=/#\/?$/;function $e(e){return e?e.replace(Vd,""):""}Yn.normalizeId=$e;function zd(e,t,r){return r=$e(r),e.resolve(t,r)}Yn.resolveUrl=zd;var Ud=/^[a-z_][-a-z0-9._]*$/i;function Hd(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=$e(e[r]||t),s={"":o},i=Zn(n,o,!1),a={},c=new Set;return Cd(e,{allKeys:!0},(l,g,m,h)=>{if(h===void 0)return;let f=i+g,p=s[h];if(typeof l[r]=="string")p=_.call(this,l[r]);E.call(this,l.$anchor),E.call(this,l.$dynamicAnchor),s[g]=p;function _(w){let O=this.opts.uriResolver.resolve;if(w=$e(p?O(p,w):w),c.has(w))throw u(w);c.add(w);let b=this.refs[w];if(typeof b=="string")b=this.refs[b];if(typeof b=="object")d(l,b.schema,w);else if(w!==$e(f))if(w[0]==="#")d(l,a[w],w),a[w]=l;else this.refs[w]=f;return w}function E(w){if(typeof w=="string"){if(!Ud.test(w))throw Error(`invalid anchor "${w}"`);_.call(this,`#${w}`)}}}),a;function d(l,g,m){if(g!==void 0&&!Dd(l,g))throw u(m)}function u(l){return Error(`reference "${l}" resolves to more than one schema`)}}Yn.getSchemaRefs=Hd});var $g=pe(function(_o){Object.defineProperty(_o,"__esModule",{value:!0});_o.getData=_o.KeywordCxt=_o.validateFunctionCode=void 0;var oo=gn(),so=ke(),Yt=Ht(),ot=ke(),Wd=In(),qe=Un(),er=Gn(),y=Wt(),v=kc(),Qd=Ne(),Z=yn(),Te=Re();function Zd(e){if(co(e)){if(uo(e),ao(e)){eu(e);return}}io(e,()=>oo.topBoolOrEmptySchema(e))}_o.validateFunctionCode=Zd;function io({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},s){if(o.code.es5)e.func(t,y._`${v.default.data}, ${v.default.valCxt}`,n.$async,()=>{e.code(y._`"use strict"; ${to(r,o)}`),Yd(e,o),e.code(s)});else e.func(t,y._`${v.default.data}, ${Xd(o)}`,n.$async,()=>e.code(to(r,o)).code(s))}function Xd(e){return y._`{${v.default.instancePath}="", ${v.default.parentData}, ${v.default.parentDataProperty}, ${v.default.rootData}=${v.default.data}${e.dynamicRef?y._`, ${v.default.dynamicAnchors}={}`:y.nil}}={}`}function Yd(e,t){e.if(v.default.valCxt,()=>{if(e.var(v.default.instancePath,y._`${v.default.valCxt}.${v.default.instancePath}`),e.var(v.default.parentData,y._`${v.default.valCxt}.${v.default.parentData}`),e.var(v.default.parentDataProperty,y._`${v.default.valCxt}.${v.default.parentDataProperty}`),e.var(v.default.rootData,y._`${v.default.valCxt}.${v.default.rootData}`),t.dynamicRef)e.var(v.default.dynamicAnchors,y._`${v.default.valCxt}.${v.default.dynamicAnchors}`)},()=>{if(e.var(v.default.instancePath,y._`""`),e.var(v.default.parentData,y._`undefined`),e.var(v.default.parentDataProperty,y._`undefined`),e.var(v.default.rootData,v.default.data),t.dynamicRef)e.var(v.default.dynamicAnchors,y._`{}`)})}function eu(e){let{schema:t,opts:r,gen:n}=e;io(e,()=>{if(r.$comment&&t.$comment)fo(e);if(su(e),n.let(v.default.vErrors,null),n.let(v.default.errors,0),r.unevaluated)tu(e);lo(e),cu(e)});return}function tu(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",y._`${r}.evaluated`),t.if(y._`${e.evaluated}.dynamicProps`,()=>t.assign(y._`${e.evaluated}.props`,y._`undefined`)),t.if(y._`${e.evaluated}.dynamicItems`,()=>t.assign(y._`${e.evaluated}.items`,y._`undefined`))}function to(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?y._`/*# sourceURL=${r} */`:y.nil}function ru(e,t){if(co(e)){if(uo(e),ao(e)){nu(e,t);return}}oo.boolOrEmptySchema(e,t)}function ao({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function co(e){return typeof e.schema!="boolean"}function nu(e,t){let{schema:r,gen:n,opts:o}=e;if(o.$comment&&r.$comment)fo(e);iu(e),au(e);let s=n.const("_errs",v.default.errors);lo(e,s),n.var(t,y._`${s} === ${v.default.errors}`)}function uo(e){Z.checkUnknownRules(e),ou(e)}function lo(e,t){if(e.opts.jtd)return ro(e,[],!1,t);let r=so.getSchemaTypes(e.schema),n=so.coerceAndCheckDataType(e,r);ro(e,r,!n,t)}function ou(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&Z.schemaHasRulesButRef(t,o.RULES))o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function su(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)Z.checkStrictMode(e,"default is ignored in the schema root")}function iu(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=Qd.resolveUrl(e.opts.uriResolver,e.baseId,t)}function au(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function fo({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)e.code(y._`${v.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=y.str`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(y._`${v.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function cu(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=e;if(r.$async)t.if(y._`${v.default.errors} === 0`,()=>t.return(v.default.data),()=>t.throw(y._`new ${o}(${v.default.vErrors})`));else{if(t.assign(y._`${n}.errors`,v.default.vErrors),s.unevaluated)du(e);t.return(y._`${v.default.errors} === 0`)}}function du({gen:e,evaluated:t,props:r,items:n}){if(r instanceof y.Name)e.assign(y._`${t}.props`,r);if(n instanceof y.Name)e.assign(y._`${t}.items`,n)}function ro(e,t,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:d}=e,{RULES:u}=d;if(s.$ref&&(c.ignoreKeywordsWithRef||!Z.schemaHasRulesButRef(s,u))){o.block(()=>po(e,"$ref",u.all.$ref.definition));return}if(!c.jtd)uu(e,t);o.block(()=>{for(let g of u.rules)l(g);l(u.post)});function l(g){if(!Yt.shouldUseGroup(s,g))return;if(g.type){if(o.if(ot.checkDataType(g.type,i,c.strictNumbers)),no(e,g),t.length===1&&t[0]===g.type&&r)o.else(),ot.reportTypeError(e);o.endIf()}else no(e,g);if(!a)o.if(y._`${v.default.errors} === ${n||0}`)}}function no(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;if(o)Wd.assignDefaults(e,t.type);r.block(()=>{for(let s of t.rules)if(Yt.shouldUseRule(n,s))po(e,s.keyword,s.definition,t.type)})}function uu(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(lu(e,t),!e.opts.allowUnionTypes)fu(e,t);hu(e,e.dataTypes)}function lu(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!ho(e.dataTypes,r))tr(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),mu(e,t)}function fu(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))tr(e,"use allowUnionTypes to allow union type keyword")}function hu(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&Yt.shouldUseRule(e.schema,o)){let{type:s}=o.definition;if(s.length&&!s.some((i)=>pu(t,i)))tr(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function pu(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function ho(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function mu(e,t){let r=[];for(let n of e.dataTypes)if(ho(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function tr(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,Z.checkStrictMode(e,t,e.opts.strictTypes)}class rr{constructor(e,t,r){if(qe.validateKeywordUsage(e,t,r),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=r,this.data=e.data,this.schema=e.schema[r],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=Z.schemaRefOrVal(e,this.schema,r,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const("vSchema",mo(this.$data,e));else if(this.schemaCode=this.schemaValue,!qe.validSchemaType(this.schema,t.schemaType,t.allowUndefined))throw Error(`${r} value must be ${JSON.stringify(t.schemaType)}`);if("code"in t?t.trackErrors:t.errors!==!1)this.errsCount=e.gen.const("_errs",v.default.errors)}result(e,t,r){this.failResult(y.not(e),t,r)}failResult(e,t,r){if(this.gen.if(e),r)r();else this.error();if(t){if(this.gen.else(),t(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(e,t){this.failResult(y.not(e),void 0,t)}fail(e){if(e===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(e),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail(y._`${t} !== undefined && (${y.or(this.invalid$data(),e)})`)}error(e,t,r){if(t){this.setParams(t),this._error(e,r),this.setParams({});return}this._error(e,r)}_error(e,t){(e?Te.reportExtraError:Te.reportError)(this,this.def.error,t)}$dataError(){Te.reportError(this,this.def.$dataError||Te.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');Te.resetErrorsCount(this.gen,this.errsCount)}ok(e){if(!this.allErrors)this.gen.if(e)}setParams(e,t){if(t)Object.assign(this.params,e);else this.params=e}block$data(e,t,r=y.nil){this.gen.block(()=>{this.check$data(e,r),t()})}check$data(e=y.nil,t=y.nil){if(!this.$data)return;let{gen:r,schemaCode:n,schemaType:o,def:s}=this;if(r.if(y.or(y._`${n} === undefined`,t)),e!==y.nil)r.assign(e,!0);if(o.length||s.validateSchema){if(r.elseIf(this.invalid$data()),this.$dataError(),e!==y.nil)r.assign(e,!1)}r.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:r,def:n,it:o}=this;return y.or(s(),i());function s(){if(r.length){if(!(t instanceof y.Name))throw Error("ajv implementation error");let a=Array.isArray(r)?r:[r];return y._`${ot.checkDataTypes(a,t,o.opts.strictNumbers,ot.DataType.Wrong)}`}return y.nil}function i(){if(n.validateSchema){let a=e.scopeValue("validate$data",{ref:n.validateSchema});return y._`!${a}(${t})`}return y.nil}}subschema(e,t){let r=er.getSubschema(this.it,e);er.extendSubschemaData(r,this.it,e),er.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return ru(n,t),n}mergeEvaluated(e,t){let{it:r,gen:n}=this;if(!r.opts.unevaluated)return;if(r.props!==!0&&e.props!==void 0)r.props=Z.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=Z.mergeEvaluated.items(n,e.items,r.items,t)}mergeValidEvaluated(e,t){let{it:r,gen:n}=this;if(r.opts.unevaluated&&(r.props!==!0||r.items!==!0))return n.if(t,()=>this.mergeEvaluated(e,y.Name)),!0}}_o.KeywordCxt=rr;function po(e,t,r,n){let o=new rr(e,r,t);if("code"in r)r.code(o,n);else if(o.$data&&r.validate)qe.funcKeywordCode(o,r);else if("macro"in r)qe.macroKeywordCode(o,r);else if(r.compile||r.validate)qe.funcKeywordCode(o,r)}var _u=/^\/(?:[^~]|~0|~1)*$/,gu=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function mo(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,s;if(e==="")return v.default.rootData;if(e[0]==="/"){if(!_u.test(e))throw Error(`Invalid JSON-pointer: ${e}`);o=e,s=v.default.rootData}else{let d=gu.exec(e);if(!d)throw Error(`Invalid JSON-pointer: ${e}`);let u=+d[1];if(o=d[2],o==="#"){if(u>=t)throw Error(c("property/index",u));return n[t-u]}if(u>t)throw Error(c("data",u));if(s=r[t-u],!o)return s}let i=s,a=o.split("/");for(let d of a)if(d)s=y._`${s}${y.getProperty(Z.unescapeJsonPointer(d))}`,i=y._`${i} && ${s}`;return i;function c(d,u){return`Cannot access ${d} ${u} levels up, current level is ${t}`}}_o.getData=mo});var yy=pe(function($o){Object.defineProperty($o,"__esModule",{value:!0});class yo extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}$o.default=yo});var Ig=pe(function(wo){Object.defineProperty(wo,"__esModule",{value:!0});var nr=Ne();class vo extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=nr.resolveUrl(e,t,r),this.missingSchema=nr.normalizeId(nr.getFullPath(e,this.missingRef))}}wo.default=vo});var K0=pe(function(So){Object.defineProperty(So,"__esModule",{value:!0});So.resolveSchema=So.getCompilingSchema=So.resolveRef=So.compileSchema=So.SchemaEnv=void 0;var L=Wt(),Eu=yy(),ce=kc(),K=Ne(),Eo=yn(),bu=$g();class Ie{constructor(e){var t;this.refs={},this.dynamicAnchors={};let r;if(typeof e.schema=="object")r=e.schema;this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(t=e.baseId)!==null&&t!==void 0?t:K.normalizeId(r===null||r===void 0?void 0:r[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=r===null||r===void 0?void 0:r.$async,this.refs={}}}So.SchemaEnv=Ie;function sr(e){let t=bo.call(this,e);if(t)return t;let r=K.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new L.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;if(e.$async)a=i.scopeValue("Error",{ref:Eu.default,code:L._`require("ajv/dist/runtime/validation_error").default`});let c=i.scopeName("validate");e.validateName=c;let d={gen:i,allErrors:this.opts.allErrors,data:ce.default.data,parentData:ce.default.parentData,parentDataProperty:ce.default.parentDataProperty,dataNames:[ce.default.data],dataPathArr:[L.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:L.stringify(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:L.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:L._`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),bu.validateFunctionCode(d),i.optimize(this.opts.code.optimize);let l=i.toString();if(u=`${i.scopeRefs(ce.default.scope)}return ${l}`,this.opts.code.process)u=this.opts.code.process(u,e);let m=Function(`${ce.default.self}`,`${ce.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=e.schema,m.schemaEnv=e,e.$async)m.$async=!0;if(this.opts.code.source===!0)m.source={validateName:c,validateCode:l,scopeValues:i._values};if(this.opts.unevaluated){let{props:h,items:f}=d;if(m.evaluated={props:h instanceof L.Name?void 0:h,items:f instanceof L.Name?void 0:f,dynamicProps:h instanceof L.Name,dynamicItems:f instanceof L.Name},m.source)m.source.evaluated=L.stringify(m.evaluated)}return e.validate=m,e}catch(l){if(delete e.validate,delete e.validateName,u)this.logger.error("Error compiling schema, function code:",u);throw l}finally{this._compilations.delete(e)}}So.compileSchema=sr;function Su(e,t,r){var n;r=K.resolveUrl(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let s=Ou.call(this,e,r);if(s===void 0){let i=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;if(i)s=new Ie({schema:i,schemaId:a,root:e,baseId:t})}if(s===void 0)return;return e.refs[r]=Pu.call(this,s)}So.resolveRef=Su;function Pu(e){if(K.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:sr.call(this,e)}function bo(e){for(let t of this._compilations)if(xu(t,e))return t}So.getCompilingSchema=bo;function xu(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Ou(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||st.call(this,e,t)}function st(e,t){let r=this.opts.uriResolver.parse(t),n=K._getFullPath(this.opts.uriResolver,r),o=K.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return or.call(this,r,e);let s=K.normalizeId(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=st.call(this,e,i);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return or.call(this,r,a)}if(typeof(i===null||i===void 0?void 0:i.schema)!=="object")return;if(!i.validate)sr.call(this,i);if(s===K.normalizeId(t)){let{schema:a}=i,{schemaId:c}=this.opts,d=a[c];if(d)o=K.resolveUrl(this.opts.uriResolver,o,d);return new Ie({schema:a,schemaId:c,root:e,baseId:o})}return or.call(this,r,i)}So.resolveSchema=st;var Ru=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function or(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r==="boolean")return;let c=r[Eo.unescapeFragment(a)];if(c===void 0)return;r=c;let d=typeof r==="object"&&r[this.opts.schemaId];if(!Ru.has(a)&&d)t=K.resolveUrl(this.opts.uriResolver,t,d)}let s;if(typeof r!="boolean"&&r.$ref&&!Eo.schemaHasRulesButRef(r,this.RULES)){let a=K.resolveUrl(this.opts.uriResolver,t,r.$ref);s=st.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Ie({schema:r,schemaId:i,root:n,baseId:t}),s.schema!==s.root.schema)return s;return}});var xo=pe(function(Pm,Iu){Iu.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var lr=pe(function(xm,jo){var ju=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),ar=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),Du=RegExp.prototype.test.bind(/^\d*$/u),de=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),cr=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),Ro=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/]$/u),dr=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/?]$/u),Cu=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:]$/u),M=Array(256);for(let t=0;t<256;t++)M[t]="%"+"0123456789ABCDEF"[t>>4]+"0123456789ABCDEF"[t&15];function I(e){if(e<2048)return M[192|e>>6]+M[128|e&63];if(e<65536)return M[224|e>>12]+M[128|e>>6&63]+M[128|e&63];return M[240|e>>18]+M[128|e>>12&63]+M[128|e>>6&63]+M[128|e&63]}function Au(e){let t="",r=0,n=0;for(n=0;n<e.length;n++){if(r=e[n].charCodeAt(0),r===48)continue;if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var Mu=RegExp.prototype.test.bind(/^[\dA-Fa-f]{1,4}$/),Fu=RegExp.prototype.test.bind(/^[vV][\dA-Fa-f]+\.[A-Za-z\d\-._~!$&'()*+,;=:]+$/),Vu=RegExp.prototype.test.bind(/^[A-Za-z\d\-._~]$/),zu=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Uu(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){if(Vu(e[t]))continue;if(e[t]==="%"&&t+2<e.length&&de(e.slice(t+1,t+3))){t+=2;continue}return!1}return!0}function Oo(e){let t=-1,r=0,n=-1,o=0;for(let a=0;a<e.length;a++)if(e[a]==="0"){if(n===-1)n=a;if(o++,o>r)r=o,t=n}else n=-1,o=0;if(r<2)return e.join(":");let s=e.slice(0,t).join(":"),i=e.slice(t+r).join(":");return s+"::"+i}function Hu(e){let t=e.indexOf("::");if(t!==-1&&e.indexOf("::",t+1)!==-1)return;let r=t===-1?e.split(":"):e.slice(0,t).split(":"),n=t===-1?[]:e.slice(t+2).split(":");if(t!==-1){if(r.length===1&&r[0]==="")r.length=0;if(n.length===1&&n[0]==="")n.length=0}let o=r.concat(n),s=0;for(let a=0;a<o.length;a++){let c=o[a];if(c==="")return;if(c.indexOf(".")!==-1){if(a!==o.length-1||t!==-1&&n.length===0||!ar(c))return;s+=2;continue}if(!Mu(c))return;o[a]=parseInt(c,16).toString(16),s++}if(t===-1){if(s!==8)return;return Oo(o)}if(s>=8)return;let i=o.slice(0,r.length);for(let a=s;a<8;a++)i.push("0");for(let a=r.length;a<o.length;a++)i.push(o[a]);return Oo(i)}function ir(e){let t=e[0]==="["&&e[e.length-1]==="]";if((e[0]==="["||e[e.length-1]==="]")&&!t)return{host:e,isIPV6:!1,error:!0};let n=t?e.slice(1,-1):e;if(t&&Fu(n))return n=n.toLowerCase(),{host:`[${n}]`,escapedHost:n,isIPV6:!1,isIPVFuture:!0};if(Lu(n,":")<2)return{host:e,isIPV6:!1,error:t};let o="",s=n.indexOf("%");if(s!==-1){let a=n.slice(s,s+3).toLowerCase()==="%25"?3:1;if(o=n.slice(s+a),!Uu(o))return{host:e,isIPV6:!1,error:!0};n=n.slice(0,s)}let i=Hu(n);if(i===void 0)return{host:e,isIPV6:!1,error:!0};return{host:i+(o?"%"+o:""),escapedHost:i+(o?"%25"+o:""),isIPV6:!0}}function Lu(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function ko(e){let t=e,r=[],n=-1,o=0;while(o=t.length){if(o===1)if(t===".")break;else if(t==="/"){r.push("/");break}else{r.push(t);break}else if(o===2){if(t[0]==="."){if(t[1]===".")break;else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."||t[1]==="/"){r.push("/");break}}}else if(o===3){if(t==="/.."){if(r.length!==0)r.pop();r.push("/");break}}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."){if(t[3]==="/"){if(t=t.slice(3),r.length!==0)r.pop();continue}}}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}function Ku(e){if(e===""||e[0]==="/")return ko(e);let t=e.split("/"),r=t.length-1,n=[],o=!1;for(let s=0;s<=r;s++){let i=t[s];if(i==="."||i===".."){if(i==="..")if(n.length!==0&&n[n.length-1]!=="..")n.pop();else n.push("..");o=s===r}else n.push(i)}if(o&&n[n.length-1]!=="..")n.push("");if(n.length===0||n[0]===""||n[0].includes(":"))n.unshift(".");return n.join("/")}var Gu={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},Ju=/[@/?#:]/g,Bu=/[@/?#]/g;function No(e,t){let r=t?Bu:Ju;return r.lastIndex=0,e.replace(r,(n)=>Gu[n])}function qo(e,t=!1){if(e.indexOf("%")===-1)return e;let r="";for(let n=0;n<e.length;n++){if(e[n]==="%"&&n+2<e.length){let o=e.slice(n+1,n+3);if(de(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(t&&cr(i))r+=i;else r+="%"+s;n+=2;continue}}r+=e[n]}return r}function Wu(e){let t="";for(let r=0;r<e.length;r++){let n=e[r];if(n==="%"&&r+2<e.length){let o=e.slice(r+1,r+3);if(de(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(i!=="."&&cr(i))t+=i;else t+="%"+s;r+=2;continue}}if(Ro(n))t+=n;else{let o=e.charCodeAt(r);if(o<128)t+=Io(o)?n:M[o];else if(o<55296||o>57343)t+=I(o);else if(o<=56319&&r+1<e.length){let s=e.charCodeAt(r+1);if(s>=56320&&s<=57343)t+=I(65536+(o-55296<<10)+(s-56320)),r++;else t+=I(65533)}else t+=I(65533)}}return t}function Qu(e,t=!1){let r="",n=t&&e[0]!=="/";for(let o=0;o<e.length;o++){let s=e[o];if(s==="%"&&o+2<e.length){let i=e.slice(o+1,o+3);if(de(i)){r+="%"+i.toUpperCase(),o+=2;continue}}if(s==="/")n=!1;if(Ro(s)&&(s!==":"||!n))r+=s;else{let i=e.charCodeAt(o);if(i<128)r+=M[i];else if(i<55296||i>57343)r+=I(i);else if(i<=56319&&o+1<e.length){let a=e.charCodeAt(o+1);if(a>=56320&&a<=57343)r+=I(65536+(i-55296<<10)+(a-56320)),o++;else r+=I(65533)}else r+=I(65533)}}return r}function ur(e,t){let r="";for(let n=0;n<e.length;n++){let o=e[n];if(o==="%"&&n+2<e.length){let s=e.slice(n+1,n+3);if(de(s)){r+="%"+s.toUpperCase(),n+=2;continue}}if(t(o))r+=o;else{let s=e.charCodeAt(n);if(s<128)r+=M[s];else if(s<55296||s>57343)r+=I(s);else if(s<=56319&&n+1<e.length){let i=e.charCodeAt(n+1);if(i>=56320&&i<=57343)r+=I(65536+(s-55296<<10)+(i-56320)),n++;else r+=I(65533)}else r+=I(65533)}}return r}function To(e){return ur(e,Cu)}function Zu(e){return ur(e,dr)}function Xu(e){return ur(e,dr)}function Io(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===42||e===43||e===45||e===46||e===47||e===64||e===95}function Yu(e){let t="";for(let r=0;r<e.length;r++){let n=e[r];if(n==="%"&&r+2<e.length){let o=e.slice(r+1,r+3);if(de(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));if(cr(i))t+=i;else t+="%"+s;r+=2;continue}}if(dr(n))t+=n;else{let o=e.charCodeAt(r);if(o<128)t+=Io(o)?n:M[o];else if(o<55296||o>57343)t+=I(o);else if(o<=56319&&r+1<e.length){let s=e.charCodeAt(r+1);if(s>=56320&&s<=57343)t+=I(65536+(o-55296<<10)+(s-56320)),r++;else t+=I(65533)}else t+=I(65533)}}return t}function el(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(de(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function tl(e){let t=[];if(e.userinfo!==void 0)t.push(To(e.userinfo)),t.push("@");if(e.host!==void 0){let r=e.host;if(!ar(r)){let n=ir(r);if(n.isIPV6!==!0&&n.isIPVFuture!==!0)r=qo(r,!0),n=ir(r);if(n.isIPV6===!0||n.isIPVFuture===!0)r=`[${n.escapedHost}]`;else r=No(r,!1)}t.push(r)}if(typeof e.port==="number"||typeof e.port==="string"){let r=String(e.port);if(!Du(r))throw TypeError("URI port is malformed.");t.push(":"),t.push(r)}return t.length?t.join(""):void 0}jo.exports={nonSimpleDomain:zu,recomposeAuthority:tl,reescapeHostDelimiters:No,normalizePercentEncoding:qo,normalizePathEncoding:Wu,serializePathEncoding:Qu,normalizeQueryFragmentEncoding:Yu,encodeUserinfo:To,encodeQuery:Zu,encodeFragment:Xu,escapePreservingEscapes:el,removeDotSegments:ko,removeDotSegmentsRelative:Ku,isIPv4:ar,isUUID:ju,normalizeIPv6:ir,stringArrayToHexStripped:Au}});var Fo=pe(function(Om,Mo){var{isUUID:rl}=lr(),nl=/^([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-./:;=@]|%[\da-f]{2})+)$/iu,ol=["http","https","ws","wss","urn","urn:uuid"];function sl(e){return ol.indexOf(e)!==-1}function fr(e){if(e.secure===!0)return!0;else if(e.secure===!1)return!1;else if(e.scheme)return e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S");else return!1}function Do(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function Co(e){let t=String(e.scheme).toLowerCase()==="https";if(e.port===(t?443:80)||e.port==="")e.port=void 0;if(!e.path)e.path="/";return e}function il(e){return e.secure=fr(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function al(e){if(e.port===(fr(e)?443:80)||e.port==="")e.port=void 0;if(typeof e.secure==="boolean")e.scheme=e.secure?"wss":"ws",e.secure=void 0;if(e.resourceName){let t=e.resourceName.indexOf("?"),r=t===-1?e.resourceName:e.resourceName.slice(0,t);e.path=r&&r!=="/"?r:void 0,e.query=t===-1?void 0:e.resourceName.slice(t+1),e.resourceName=void 0}return e.fragment=void 0,e}function cl(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(nl);if(r&&r[0]===e.path){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let o=`${n}:${t.nid||e.nid}`,s=hr(o);if(e.path=void 0,s)e=s.parse(e,t)}else e.error=e.error||"URN can not be parsed.";return e}function dl(e,t){if(e.nid===void 0)throw Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),o=`${r}:${t.nid||n}`,s=hr(o);if(s)e=s.serialize(e,t);let i=e,a=e.nss;return i.path=`${n||t.nid}:${a}`,t.skipEscape=!0,i}function ul(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!rl(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function ll(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var Ao={scheme:"http",domainHost:!0,parse:Do,serialize:Co},fl={scheme:"https",domainHost:Ao.domainHost,parse:Do,serialize:Co},it={scheme:"ws",domainHost:!0,parse:il,serialize:al},hl={scheme:"wss",domainHost:it.domainHost,parse:it.parse,serialize:it.serialize},pl={scheme:"urn",parse:cl,serialize:dl,skipNormalize:!0},ml={scheme:"urn:uuid",parse:ul,serialize:ll,skipNormalize:!0},at={http:Ao,https:fl,ws:it,wss:hl,urn:pl,"urn:uuid":ml};Object.setPrototypeOf(at,null);function hr(e){return e&&(at[e]||at[e.toLowerCase()])||void 0}Mo.exports={wsIsSecure:fr,SCHEMES:at,isValidSchemeName:sl,getSchemeHandler:hr}});var Yo=pe(function(Rm,lt){var{normalizeIPv6:Lo,removeDotSegments:De,removeDotSegmentsRelative:Ko,recomposeAuthority:_l,normalizePercentEncoding:pr,normalizePathEncoding:gl,serializePathEncoding:Vo,normalizeQueryFragmentEncoding:zo,encodeQuery:yl,encodeFragment:$l,reescapeHostDelimiters:vl,isIPv4:Go,nonSimpleDomain:wl}=lr(),{SCHEMES:Jo,getSchemeHandler:mr}=Fo(),Bo=/^[A-Za-z][A-Za-z0-9+.-]*$/u,El=/[\0-\x20"#/:<>?@[\\\]^`{|}\x7F]/u;function Uo(e){let t=String(e);if(!Bo.test(t))throw TypeError("URI scheme is malformed.");return t}function bl(e,t){if(typeof e==="string")e=Tl(e,t);else if(typeof e==="object")e=dt(ue(e,t),t);return e}function Sl(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},{parsed:o,malformedAuthorityOrPort:s,malformedPercentEncoding:i,malformedSchemeSpecific:a,malformedHost:c,malformedScheme:d}=ct(e,n),{parsed:u,malformedAuthorityOrPort:l,malformedPercentEncoding:g,malformedSchemeSpecific:m,malformedHost:h,malformedScheme:f}=ct(t,n);if(s||l||i||g||a||m||c||h||d||f)throw Error(o.error||u.error||"URI is malformed.");let p=Wo(o,u,n,!0),_=mr(r&&r.scheme||p.scheme),E=p.host,w=E!==void 0&&E!==""&&(Go(E)||Lo(E).isIPV6);if(Zo(p,r||{},_,w))throw Error("URI host is malformed.");Qo(p,r||{},_,w);let O=E&&E.indexOf("%")!==-1&&!/\P{ASCII}/u.test(E);if(p.error&&!O)throw Error(p.error);return n.skipEscape=!0,ue(p,n)}function Wo(e,t,r,n){let o={};if(!n)e=dt(ue(e,r),r),t=dt(ue(t,r),r);if(r=r||{},!r.tolerant&&t.scheme)o.scheme=t.scheme,o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=De(t.path||""),o.query=t.query;else{if(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=De(t.path||""),o.query=t.query;else{if(!t.path)if(o.path=e.path,t.query!==void 0)o.query=t.query;else o.query=e.query;else{if(t.path[0]==="/")o.path=De(t.path);else{let s=e.userinfo!==void 0||e.host!==void 0||e.port!==void 0;if(s&&!e.path)o.path="/"+t.path;else if(!e.path)o.path=t.path;else o.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path;o.path=e.scheme===void 0&&!s&&o.path[0]!=="/"?Ko(o.path):De(o.path)}o.query=t.query}o.userinfo=e.userinfo,o.host=e.host,o.port=e.port}o.scheme=e.scheme}return o.fragment=t.fragment,o}function Pl(e,t,r){let n=Ho(e,r),o=Ho(t,r);return n!==void 0&&o!==void 0&&n===o}function ue(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),o=[];if(r.scheme)r.scheme=Uo(r.scheme);let s=mr(n.scheme||r.scheme);if(s&&s.serialize)s.serialize(r,n);let i=r.userinfo!==void 0||r.host!==void 0||r.port!==void 0,a=(r.scheme===void 0||n.reference==="suffix")&&!i,c=!n.skipEscape&&a;if(r.path!==void 0)if(!n.skipEscape)r.path=Vo(r.path,c);else r.path=pr(r.path);if(n.reference!=="suffix"&&r.scheme)r.scheme=Uo(r.scheme),o.push(r.scheme,":");let d=_l(r);if(d!==void 0){if(n.reference!=="suffix")o.push("//");if(o.push(d),r.path&&r.path[0]!=="/")o.push("/")}if(r.path!==void 0){let u=r.path;if(!n.absolutePath&&(!s||!s.absolutePath))u=a&&u[0]!=="/"?Ko(u):De(u);if(a)u=Vo(u,!0);if(d===void 0&&u[0]==="/"&&u[1]==="/")u="/%2F"+u.slice(2);o.push(u)}if(r.query!==void 0)o.push("?",yl(r.query));if(r.fragment!==void 0)o.push("#",$l(r.fragment));return o.join("")}var xl=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,Ol=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/,Rl=/^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;function kl(e,t){if(t[2]!==void 0&&e.path&&e.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof e.port==="number"&&(e.port<0||e.port>65535))return"URI port is malformed.";return}function je(e){if(e===void 0)return!1;let t=e.indexOf("%");while(t!==-1){if(t+2>=e.length||!/^[\da-f]{2}$/iu.test(e.slice(t+1,t+3)))return!0;t=e.indexOf("%",t+3)}return!1}function ut(e){return e[0]==="["&&e[e.length-1]==="]"}function Nl(e){let t=e[4];return je(e[3])||t!==void 0&&!ut(t)&&je(t)||je(e[6])||je(e[7])||je(e[8])}function Qo(e,t,r,n){if(Zo(e,t,r,n))return e.error=e.error||"URI host is malformed.",!0;if(!t.unicodeSupport&&(!r||!r.unicodeSupport)&&e.host&&!ut(e.host)&&(t.domainHost||r&&r.domainHost)&&n===!1&&wl(e.host)){let o;try{o=new URL("http://"+e.host)}catch(s){return e.error=e.error||"Host's domain name can not be converted to ASCII: "+s,!0}if(!ql(o))return e.error=e.error||"URI host is malformed.",!0;e.host=o.hostname}return!1}function Zo(e,t,r,n){return Boolean(e.host&&n===!1&&!ut(e.host)&&(t.domainHost||r&&r.domainHost)&&El.test(e.host))}function ql(e){return e.username===""&&e.password===""&&e.port===""&&e.pathname==="/"&&e.search===""&&e.hash===""&&e.hostname!==""}function ct(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1,i=!1,a=!1,c=!1,d=!1,u=!1;if(r.reference==="suffix")if(r.scheme)e=r.scheme+":"+e;else e="//"+e;let l=e.match(Ol);if(l!==null&&l[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",o=!0;let g=e.match(Rl);if(g!==null){let h=g[1],f=h.replace(/[\t\n\r]/g,"");if(f.length>=2){if(f.slice(0,2)!=="//")n.error=n.error||"URI authority must not contain a literal backslash.",o=!0;else if(h.length!==f.length)n.error=n.error||"URI authority introducer must not contain whitespace.",o=!0}}let m=e.match(xl);if(m){if(n.scheme=m[1],n.userinfo=m[3],n.host=m[4],n.port=parseInt(m[5],10),n.path=m[6]||"",n.query=m[7],n.fragment=m[8],n.scheme!==void 0)if(Bo.test(n.scheme))n.scheme=n.scheme.toLowerCase();else n.error=n.error||"URI scheme is malformed.",d=!0;if(s=Nl(m),s)n.error=n.error||"URI contains malformed percent-encoding.";if(isNaN(n.port))n.port=m[5];let h=kl(n,m);if(h!==void 0)n.error=n.error||h,o=!0;if(n.host)if(Go(n.host)===!1){let _=ut(n.host),E=n.host.indexOf("[")!==-1||n.host.indexOf("]")!==-1,w=Lo(n.host);if(u=w.isIPV6||w.isIPVFuture===!0,c=E&&(!_||w.error===!0),n.host=u?w.host:w.host.toLowerCase(),c)n.error=n.error||"URI host is malformed.",o=!0}else u=!0;if(n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path)n.reference="same-document";else if(n.scheme===void 0)n.reference="relative";else if(n.fragment===void 0)n.reference="absolute";else n.reference="uri";if(r.reference&&r.reference!=="suffix"&&r.reference!==n.reference)n.error=n.error||"URI is not a "+r.reference+" reference.";let f=mr(r.scheme||n.scheme);if(!c)a=Qo(n,r,f,u);if(e.indexOf("%")!==-1&&n.host!==void 0&&!c){let p=u?n.host:pr(n.host,!0);if(!u)p=pr(p.toLowerCase());n.host=u||r.scheme!=="null"?vl(p,u):p}if(!f||f&&!f.skipNormalize){if(n.path)n.path=gl(n.path);if(n.query)n.query=zo(n.query);if(n.fragment)n.fragment=zo(n.fragment)}if(f&&f.parse){if(f.parse(n,r),f===Jo.urn&&n.nid===void 0)i=!0}}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:a,malformedScheme:d}}function dt(e,t){return ct(e,t).parsed}function Tl(e,t){return Xo(e,t).normalized}function Xo(e,t){let{parsed:r,malformedAuthorityOrPort:n,malformedPercentEncoding:o,malformedSchemeSpecific:s,malformedHost:i,malformedScheme:a}=ct(e,t);return{normalized:n||o||s||i||a?e:ue(r,t),malformedAuthorityOrPort:n,malformedPercentEncoding:o,malformedSchemeSpecific:s,malformedHost:i,malformedScheme:a}}function Ho(e,t){if(typeof e!=="string"&&typeof e!=="object")return;let r;try{r=typeof e==="string"?e:ue(e,t)}catch{return}let{normalized:n,malformedAuthorityOrPort:o,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:a,malformedScheme:c}=Xo(r,t);return o||s||i||a||c?void 0:n}var _r={SCHEMES:Jo,normalize:bl,resolve:Sl,resolveComponent:Wo,equal:Pl,serialize:ue,parse:dt};lt.exports=_r;lt.exports.default=_r;lt.exports.fastUri=_r});var rs=pe(function(ts){Object.defineProperty(ts,"__esModule",{value:!0});var es=Yo();es.code='require("ajv/dist/runtime/uri").default';ts.default=es});var X1=pe(function(X){Object.defineProperty(X,"__esModule",{value:!0});X.CodeGen=X.Name=X.nil=X.stringify=X.str=X._=X.KeywordCxt=void 0;var jl=$g();Object.defineProperty(X,"KeywordCxt",{enumerable:!0,get:function(){return jl.KeywordCxt}});var ve=Wt();Object.defineProperty(X,"_",{enumerable:!0,get:function(){return ve._}});Object.defineProperty(X,"str",{enumerable:!0,get:function(){return ve.str}});Object.defineProperty(X,"stringify",{enumerable:!0,get:function(){return ve.stringify}});Object.defineProperty(X,"nil",{enumerable:!0,get:function(){return ve.nil}});Object.defineProperty(X,"Name",{enumerable:!0,get:function(){return ve.Name}});Object.defineProperty(X,"CodeGen",{enumerable:!0,get:function(){return ve.CodeGen}});var Dl=yy(),as=Ig(),Cl=Ut(),Ae=K0(),Al=Wt(),Ce=Ne(),ft=ke(),yr=yn(),ns=xo(),Ml=rs(),cs=(e,t)=>new RegExp(e,t);cs.code="new RegExp";var Fl=["removeAdditional","useDefaults","coerceTypes"],Vl=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),zl={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},Ul={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},os=200;function Hl(e){var t,r,n,o,s,i,a,c,d,u,l,g,m,h,f,p,_,E,w,O,b,J,W,xt,Ot;let Se=e.strict,Rt=(t=e.code)===null||t===void 0?void 0:t.optimize,Rr=Rt===!0||Rt===void 0?1:Rt||0,kr=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:cs,Bi=(o=e.uriResolver)!==null&&o!==void 0?o:Ml.default;return{strictSchema:(i=(s=e.strictSchema)!==null&&s!==void 0?s:Se)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=e.strictNumbers)!==null&&a!==void 0?a:Se)!==null&&c!==void 0?c:!0,strictTypes:(u=(d=e.strictTypes)!==null&&d!==void 0?d:Se)!==null&&u!==void 0?u:"log",strictTuples:(g=(l=e.strictTuples)!==null&&l!==void 0?l:Se)!==null&&g!==void 0?g:"log",strictRequired:(h=(m=e.strictRequired)!==null&&m!==void 0?m:Se)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:Rr,regExp:kr}:{optimize:Rr,regExp:kr},loopRequired:(f=e.loopRequired)!==null&&f!==void 0?f:os,loopEnum:(p=e.loopEnum)!==null&&p!==void 0?p:os,meta:(_=e.meta)!==null&&_!==void 0?_:!0,messages:(E=e.messages)!==null&&E!==void 0?E:!0,inlineRefs:(w=e.inlineRefs)!==null&&w!==void 0?w:!0,schemaId:(O=e.schemaId)!==null&&O!==void 0?O:"$id",addUsedSchema:(b=e.addUsedSchema)!==null&&b!==void 0?b:!0,validateSchema:(J=e.validateSchema)!==null&&J!==void 0?J:!0,validateFormats:(W=e.validateFormats)!==null&&W!==void 0?W:!0,unicodeRegExp:(xt=e.unicodeRegExp)!==null&&xt!==void 0?xt:!0,int32range:(Ot=e.int32range)!==null&&Ot!==void 0?Ot:!0,uriResolver:Bi}}class ht{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...Hl(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new Al.ValueScope({scope:{},prefixes:Vl,es5:t,lines:r}),this.logger=Wl(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=Cl.getRules(),ss.call(this,zl,e,"NOT SUPPORTED"),ss.call(this,Ul,e,"DEPRECATED","warn"),this._metaOpts=Jl.call(this),e.formats)Kl.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)Gl.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);Ll.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=ns;if(r==="id")n={...ns},n.id=n.$id,delete n.$id;if(t&&e)this.addMetaSchema(n,n[r],!1)}defaultMeta(){let{meta:e,schemaId:t}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[t]||e:void 0}validate(e,t){let r;if(typeof e=="string"){if(r=this.getSchema(e),!r)throw Error(`no schema with key or ref "${e}"`)}else r=this.compile(e);let n=r(t);if(!("$async"in r))this.errors=r.errors;return n}compile(e,t){let r=this._addSchema(e,t);return r.validate||this._compileSchemaEnv(r)}compileAsync(e,t){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:r}=this.opts;return n.call(this,e,t);async function n(d,u){await o.call(this,d.$schema);let l=this._addSchema(d,u);return l.validate||s.call(this,l)}async function o(d){if(d&&!this.getSchema(d))await n.call(this,{$ref:d},!0)}async function s(d){try{return this._compileSchemaEnv(d)}catch(u){if(!(u instanceof as.default))throw u;return i.call(this,u),await a.call(this,u.missingSchema),s.call(this,d)}}function i({missingSchema:d,missingRef:u}){if(this.refs[d])throw Error(`AnySchema ${d} is loaded but ${u} cannot be resolved`)}async function a(d){let u=await c.call(this,d);if(!this.refs[d])await o.call(this,u.$schema);if(!this.refs[d])this.addSchema(u,d,t)}async function c(d){let u=this._loading[d];if(u)return u;try{return await(this._loading[d]=r(d))}finally{delete this._loading[d]}}}addSchema(e,t,r,n=this.opts.validateSchema){if(Array.isArray(e)){for(let s of e)this.addSchema(s,void 0,r,n);return this}let o;if(typeof e==="object"){let{schemaId:s}=this.opts;if(o=e[s],o!==void 0&&typeof o!="string")throw Error(`schema ${s} must be string`)}return t=Ce.normalizeId(t||o),this._checkUnique(t),this.schemas[t]=this._addSchema(e,r,t,n,!0),this}addMetaSchema(e,t,r=this.opts.validateSchema){return this.addSchema(e,t,!0,r),this}validateSchema(e,t){if(typeof e=="boolean")return!0;let r;if(r=e.$schema,r!==void 0&&typeof r!="string")throw Error("$schema must be a string");if(r=r||this.opts.defaultMeta||this.defaultMeta(),!r)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(r,e);if(!n&&t){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw Error(o)}return n}getSchema(e){let t;while(typeof(t=is.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new Ae.SchemaEnv({schema:{},schemaId:r});if(t=Ae.resolveSchema.call(this,n,e),!t)return;this.refs[e]=t}return t.validate||this._compileSchemaEnv(t)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let t=is.call(this,e);if(typeof t=="object")this._cache.delete(t.schema);return delete this.schemas[e],delete this.refs[e],this}case"object":{let t=e;this._cache.delete(t);let r=e[this.opts.schemaId];if(r)r=Ce.normalizeId(r),delete this.schemas[r],delete this.refs[r];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let r;if(typeof e=="string"){if(r=e,typeof t=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),t.keyword=r}else if(typeof e=="object"&&t===void 0){if(t=e,r=t.keyword,Array.isArray(r)&&!r.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(Zl.call(this,r,t),!t)return yr.eachItem(r,(o)=>gr.call(this,o)),this;Yl.call(this,t);let n={...t,type:ft.getJSONTypes(t.type),schemaType:ft.getJSONTypes(t.schemaType)};return yr.eachItem(r,n.type.length===0?(o)=>gr.call(this,o,n):(o)=>n.type.forEach((s)=>gr.call(this,o,n,s))),this}getKeyword(e){let t=this.RULES.all[e];return typeof t=="object"?t.definition:!!t}removeKeyword(e){let{RULES:t}=this;delete t.keywords[e],delete t.all[e];for(let r of t.rules){let n=r.rules.findIndex((o)=>o.keyword===e);if(n>=0)r.rules.splice(n,1)}return this}addFormat(e,t){if(typeof t=="string")t=new RegExp(t);return this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=", ",dataVar:r="data"}={}){if(!e||e.length===0)return"No errors";return e.map((n)=>`${r}${n.instancePath} ${n.message}`).reduce((n,o)=>n+t+o)}$dataMetaSchema(e,t){let r=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of t){let o=n.split("/").slice(1),s=e;for(let i of o)s=s[i];for(let i in r){let a=r[i];if(typeof a!="object")continue;let{$data:c}=a.definition,d=s[i];if(c&&d)s[i]=ds(d)}}return e}_removeAllSchemas(e,t){for(let r in e){let n=e[r];if(!t||t.test(r)){if(typeof n=="string")delete e[r];else if(n&&!n.meta)this._cache.delete(n.schema),delete e[r]}}}_addSchema(e,t,r,n=this.opts.validateSchema,o=this.opts.addUsedSchema){let s,{schemaId:i}=this.opts;if(typeof e=="object")s=e[i];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof e!="boolean")throw Error("schema must be object or boolean");let a=this._cache.get(e);if(a!==void 0)return a;r=Ce.normalizeId(s||r);let c=Ce.getSchemaRefs.call(this,e,r);if(a=new Ae.SchemaEnv({schema:e,schemaId:i,meta:t,baseId:r,localRefs:c}),this._cache.set(a.schema,a),o&&!r.startsWith("#")){if(r)this._checkUnique(r);this.refs[r]=a}if(n)this.validateSchema(e,!0);return a}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta)this._compileMetaSchema(e);else Ae.compileSchema.call(this,e);if(!e.validate)throw Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{Ae.compileSchema.call(this,e)}finally{this.opts=t}}}ht.ValidationError=Dl.default;ht.MissingRefError=as.default;X.default=ht;function ss(e,t,r,n="error"){for(let o in e){let s=o;if(s in t)this.logger[n](`${r}: option ${o}. ${e[s]}`)}}function is(e){return e=Ce.normalizeId(e),this.schemas[e]||this.refs[e]}function Ll(){let e=this.opts.schemas;if(!e)return;if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function Kl(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function Gl(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];if(!r.keyword)r.keyword=t;this.addKeyword(r)}}function Jl(){let e={...this.opts};for(let t of Fl)delete e[t];return e}var Bl={log(){},warn(){},error(){}};function Wl(e){if(e===!1)return Bl;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw Error("logger must implement log, warn and error methods")}var Ql=/^[a-z_$][a-z0-9_$:-]*$/i;function Zl(e,t){let{RULES:r}=this;if(yr.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!Ql.test(n))throw Error(`Keyword ${n} has invalid name`)}),!t)return;if(t.$data&&!(("code"in t)||("validate"in t)))throw Error('$data keyword must have "code" or "validate" function')}function gr(e,t,r){var n;let o=t===null||t===void 0?void 0:t.post;if(r&&o)throw Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(!i)i={type:r,rules:[]},s.rules.push(i);if(s.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:ft.getJSONTypes(t.type),schemaType:ft.getJSONTypes(t.schemaType)}};if(t.before)Xl.call(this,i,a,t.before);else i.rules.push(a);s.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach((c)=>this.addKeyword(c))}function Xl(e,t,r){let n=e.rules.findIndex((o)=>o.keyword===r);if(n>=0)e.rules.splice(n,0,t);else e.rules.push(t),this.logger.warn(`rule ${r} is not defined`)}function Yl(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=ds(t);e.validateSchema=this.compile(t,!0)}var ef={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function ds(e){return{anyOf:[e,ef]}}});var hs=pe(function(ls){Object.defineProperty(ls,"__esModule",{value:!0});ls.DiscrError=void 0;var us;(function(e){e.Tag="tag",e.Mapping="mapping"})(us||(ls.DiscrError=us={}))});var sk=pe(function(ms){Object.defineProperty(ms,"__esModule",{value:!0});var we=Wt(),$r=hs(),ps=K0(),nf=Ig(),of=yn(),sf={message:({params:{discrError:e,tagName:t}})=>e===$r.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>we._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},af={keyword:"discriminator",type:"object",schemaType:"object",error:sf,code(e){let{gen:t,data:r,schema:n,parentSchema:o,it:s}=e,{oneOf:i}=o;if(!s.opts.discriminator)throw Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw Error("discriminator: requires propertyName");if(n.mapping)throw Error("discriminator: mapping is not supported");if(!i)throw Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),d=t.const("tag",we._`${r}${we.getProperty(a)}`);t.if(we._`typeof ${d} == "string"`,()=>u(),()=>e.error(!1,{discrError:$r.DiscrError.Tag,tag:d,tagName:a})),e.ok(c);function u(){let m=g();t.if(!1);for(let h in m)t.elseIf(we._`${d} === ${h}`),t.assign(c,l(m[h]));t.else(),e.error(!1,{discrError:$r.DiscrError.Mapping,tag:d,tagName:a}),t.endIf()}function l(m){let h=t.name("valid"),f=e.subschema({keyword:"oneOf",schemaProp:m},h);return e.mergeEvaluated(f,we.Name),h}function g(){var m;let h={},f=_(o),p=!0;for(let O=0;O<i.length;O++){let b=i[O];if((b===null||b===void 0?void 0:b.$ref)&&!of.schemaHasRulesButRef(b,s.self.RULES)){let W=b.$ref;if(b=ps.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,W),b instanceof ps.SchemaEnv)b=b.schema;if(b===void 0)throw new nf.default(s.opts.uriResolver,s.baseId,W)}let J=(m=b===null||b===void 0?void 0:b.properties)===null||m===void 0?void 0:m[a];if(typeof J!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);p=p&&(f||_(b)),E(J,O)}if(!p)throw Error(`discriminator: "${a}" must be required`);return h;function _({required:O}){return Array.isArray(O)&&O.includes(a)}function E(O,b){if(O.const)w(O.const,b);else if(O.enum)for(let J of O.enum)w(J,b);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(O,b){if(typeof O!="string"||O in h)throw Error(`discriminator: "${a}" values must be unique strings`);h[O]=b}}}};ms.default=af});var gs=pe(function(_s){Object.defineProperty(_s,"__esModule",{value:!0});var df={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};_s.default=df});var Q1=pe(function(ws){Object.defineProperty(ws,"__esModule",{value:!0});ws.callRef=ws.getValidate=void 0;var lf=Ig(),ys=V(),F=Wt(),Ee=kc(),$s=K0(),pt=yn(),ff={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:d}=s;if((r==="#"||r==="#/")&&o===d.baseId)return l();let u=$s.resolveRef.call(c,d,o,r);if(u===void 0)throw new lf.default(n.opts.uriResolver,o,r);if(u instanceof $s.SchemaEnv)return g(u);return m(u);function l(){if(s===d)return mt(e,i,s,s.$async);let h=t.scopeValue("root",{ref:d});return mt(e,F._`${h}.validate`,d,d.$async)}function g(h){let f=vs(e,h);mt(e,f,h,h.$async)}function m(h){let f=t.scopeValue("schema",a.code.source===!0?{ref:h,code:F.stringify(h)}:{ref:h}),p=t.name("valid"),_=e.subschema({schema:h,dataTypes:[],schemaPath:F.nil,topSchemaRef:f,errSchemaPath:r},p);e.mergeEvaluated(_),e.ok(p)}}};function vs(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):F._`${r.scopeValue("wrapper",{ref:t})}.validate`}ws.getValidate=vs;function mt(e,t,r,n){let{gen:o,it:s}=e,{allErrors:i,schemaEnv:a,opts:c}=s,d=c.passContext?Ee.default.this:F.nil;if(n)u();else l();function u(){if(!a.$async)throw Error("async schema referenced by sync schema");let h=o.let("valid");o.try(()=>{if(o.code(F._`await ${ys.callValidateCode(e,t,d)}`),m(t),!i)o.assign(h,!0)},(f)=>{if(o.if(F._`!(${f} instanceof ${s.ValidationError})`,()=>o.throw(f)),g(f),!i)o.assign(h,!1)}),e.ok(h)}function l(){e.result(ys.callValidateCode(e,t,d),()=>m(t),()=>g(t))}function g(h){let f=F._`${h}.errors`;o.assign(Ee.default.vErrors,F._`${Ee.default.vErrors} === null ? ${f} : ${Ee.default.vErrors}.concat(${f})`),o.assign(Ee.default.errors,F._`${Ee.default.vErrors}.length`)}function m(h){var f;if(!s.opts.unevaluated)return;let p=(f=r===null||r===void 0?void 0:r.validate)===null||f===void 0?void 0:f.evaluated;if(s.props!==!0)if(p&&!p.dynamicProps){if(p.props!==void 0)s.props=pt.mergeEvaluated.props(o,p.props,s.props)}else{let _=o.var("props",F._`${h}.evaluated.props`);s.props=pt.mergeEvaluated.props(o,_,s.props,F.Name)}if(s.items!==!0)if(p&&!p.dynamicItems){if(p.items!==void 0)s.items=pt.mergeEvaluated.items(o,p.items,s.items)}else{let _=o.var("items",F._`${h}.evaluated.items`);s.items=pt.mergeEvaluated.items(o,_,s.items,F.Name)}}}ws.callRef=mt;ws.default=ff});var ek=pe(function(bs){Object.defineProperty(bs,"__esModule",{value:!0});var mf=gs(),_f=Q1(),gf=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",mf.default,_f.default];bs.default=gf});var Ps=pe(function(Ss){Object.defineProperty(Ss,"__esModule",{value:!0});var gt=Wt(),oe=gt.operators,_t={maximum:{okStr:"<=",ok:oe.LTE,fail:oe.GT},minimum:{okStr:">=",ok:oe.GTE,fail:oe.LT},exclusiveMaximum:{okStr:"<",ok:oe.LT,fail:oe.GTE},exclusiveMinimum:{okStr:">",ok:oe.GT,fail:oe.LTE}},$f={message:({keyword:e,schemaCode:t})=>gt.str`must be ${_t[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>gt._`{comparison: ${_t[e].okStr}, limit: ${t}}`},vf={keyword:Object.keys(_t),type:"number",schemaType:"number",$data:!0,error:$f,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(gt._`${r} ${_t[t].fail} ${n} || isNaN(${r})`)}};Ss.default=vf});var Os=pe(function(xs){Object.defineProperty(xs,"__esModule",{value:!0});var Me=Wt(),Ef={message:({schemaCode:e})=>Me.str`must be multiple of ${e}`,params:({schemaCode:e})=>Me._`{multipleOf: ${e}}`},bf={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:Ef,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,s=o.opts.multipleOfPrecision,i=t.let("res"),a=s?Me._`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:Me._`${i} !== parseInt(${i})`;e.fail$data(Me._`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};xs.default=bf});var Ns=pe(function(ks){Object.defineProperty(ks,"__esModule",{value:!0});function Rs(e){let t=e.length,r=0,n=0,o;while(n<t)if(r++,o=e.charCodeAt(n++),o>=55296&&o<=56319&&n<t){if(o=e.charCodeAt(n),(o&64512)===56320)n++}return r}ks.default=Rs;Rs.code='require("ajv/dist/runtime/ucs2length").default'});var Ts=pe(function(qs){Object.defineProperty(qs,"__esModule",{value:!0});var le=Wt(),xf=yn(),Of=Ns(),Rf={message({keyword:e,schemaCode:t}){return le.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>le._`{limit: ${e}}`},kf={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Rf,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,s=t==="maxLength"?le.operators.GT:le.operators.LT,i=o.opts.unicode===!1?le._`${r}.length`:le._`${xf.useFunc(e.gen,Of.default)}(${r})`;e.fail$data(le._`${i} ${s} ${n}`)}};qs.default=kf});var js=pe(function(Is){Object.defineProperty(Is,"__esModule",{value:!0});var qf=V(),Tf=yn(),be=Wt(),If={message:({schemaCode:e})=>be.str`must match pattern "${e}"`,params:({schemaCode:e})=>be._`{pattern: ${e}}`},jf={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:If,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,d=c.code==="new RegExp"?be._`new RegExp`:Tf.useFunc(t,c),u=t.let("valid");t.try(()=>t.assign(u,be._`${d}(${s}, ${a}).test(${r})`),()=>t.assign(u,!1)),e.fail$data(be._`!${u}`)}else{let c=qf.usePattern(e,o);e.fail$data(be._`!${c}.test(${r})`)}}};Is.default=jf});var Cs=pe(function(Ds){Object.defineProperty(Ds,"__esModule",{value:!0});var Fe=Wt(),Cf={message({keyword:e,schemaCode:t}){return Fe.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>Fe._`{limit: ${e}}`},Af={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:Cf,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?Fe.operators.GT:Fe.operators.LT;e.fail$data(Fe._`Object.keys(${r}).length ${o} ${n}`)}};Ds.default=Af});var Ms=pe(function(As){Object.defineProperty(As,"__esModule",{value:!0});var ze=V(),Ve=Wt(),Ff=yn(),Vf={message:({params:{missingProperty:e}})=>Ve.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>Ve._`{missingProperty: ${e}}`},zf={keyword:"required",type:"object",schemaType:"array",$data:!0,error:Vf,code(e){let{gen:t,schema:r,schemaCode:n,data:o,$data:s,it:i}=e,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors)d();else u();if(a.strictRequired){let m=e.parentSchema.properties,{definedProperties:h}=e.it;for(let f of r)if((m===null||m===void 0?void 0:m[f])===void 0&&!h.has(f)){let p=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${f}" is not defined at "${p}" (strictRequired)`;Ff.checkStrictMode(i,_,i.opts.strictRequired)}}function d(){if(c||s)e.block$data(Ve.nil,l);else for(let m of r)ze.checkReportMissingProp(e,m)}function u(){let m=t.let("missing");if(c||s){let h=t.let("valid",!0);e.block$data(h,()=>g(m,h)),e.ok(h)}else t.if(ze.checkMissingProp(e,r,m)),ze.reportMissingProp(e,m),t.else()}function l(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(ze.noPropertyInData(t,o,m,a.ownProperties),()=>e.error())})}function g(m,h){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(h,ze.propertyInData(t,o,m,a.ownProperties)),t.if(Ve.not(h),()=>{e.error(),t.break()})},Ve.nil)}}};As.default=zf});var Vs=pe(function(Fs){Object.defineProperty(Fs,"__esModule",{value:!0});var Ue=Wt(),Hf={message({keyword:e,schemaCode:t}){return Ue.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>Ue._`{limit: ${e}}`},Lf={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:Hf,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?Ue.operators.GT:Ue.operators.LT;e.fail$data(Ue._`${r}.length ${o} ${n}`)}};Fs.default=Lf});var yt=pe(function(Us){Object.defineProperty(Us,"__esModule",{value:!0});var zs=Zt();zs.code='require("ajv/dist/runtime/equal").default';Us.default=zs});var Ls=pe(function(Hs){Object.defineProperty(Hs,"__esModule",{value:!0});var vr=ke(),q=Wt(),Jf=yn(),Bf=yt(),Wf={message:({params:{i:e,j:t}})=>q.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>q._`{i: ${e}, j: ${t}}`},Qf={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Wf,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=e;if(!n&&!o)return;let c=t.let("valid"),d=s.items?vr.getSchemaTypes(s.items):[];e.block$data(c,u,q._`${i} === false`),e.ok(c);function u(){let h=t.let("i",q._`${r}.length`),f=t.let("j");e.setParams({i:h,j:f}),t.assign(c,!0),t.if(q._`${h} > 1`,()=>(l()?g:m)(h,f))}function l(){return d.length>0&&!d.some((h)=>h==="object"||h==="array")}function g(h,f){let p=t.name("item"),_=vr.checkDataTypes(d,p,a.opts.strictNumbers,vr.DataType.Wrong),E=t.const("indices",q._`{}`);t.for(q._`;${h}--;`,()=>{if(t.let(p,q._`${r}[${h}]`),t.if(_,q._`continue`),d.length>1)t.if(q._`typeof ${p} == "string"`,q._`${p} += "_"`);t.if(q._`typeof ${E}[${p}] == "number"`,()=>{t.assign(f,q._`${E}[${p}]`),e.error(),t.assign(c,!1).break()}).code(q._`${E}[${p}] = ${h}`)})}function m(h,f){let p=Jf.useFunc(t,Bf.default),_=t.name("outer");t.label(_).for(q._`;${h}--;`,()=>t.for(q._`${f} = ${h}; ${f}--;`,()=>t.if(q._`${p}(${r}[${h}], ${r}[${f}])`,()=>{e.error(),t.assign(c,!1).break(_)})))}}};Hs.default=Qf});var Gs=pe(function(Ks){Object.defineProperty(Ks,"__esModule",{value:!0});var wr=Wt(),Xf=yn(),Yf=yt(),eh={message:"must be equal to constant",params:({schemaCode:e})=>wr._`{allowedValue: ${e}}`},th={keyword:"const",$data:!0,error:eh,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:s}=e;if(n||s&&typeof s=="object")e.fail$data(wr._`!${Xf.useFunc(t,Yf.default)}(${r}, ${o})`);else e.fail(wr._`${s} !== ${r}`)}};Ks.default=th});var Bs=pe(function(Js){Object.defineProperty(Js,"__esModule",{value:!0});var He=Wt(),nh=yn(),oh=yt(),sh={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>He._`{allowedValues: ${e}}`},ih={keyword:"enum",schemaType:"array",$data:!0,error:sh,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:s,it:i}=e;if(!n&&o.length===0)throw Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,d=()=>c!==null&&c!==void 0?c:c=nh.useFunc(t,oh.default),u;if(a||n)u=t.let("valid"),e.block$data(u,l);else{if(!Array.isArray(o))throw Error("ajv implementation error");let m=t.const("vSchema",s);u=He.or(...o.map((h,f)=>g(m,f)))}e.pass(u);function l(){t.assign(u,!1),t.forOf("v",s,(m)=>t.if(He._`${d()}(${r}, ${m})`,()=>t.assign(u,!0).break()))}function g(m,h){let f=o[h];return typeof f==="object"&&f!==null?He._`${d()}(${r}, ${m}[${h}])`:He._`${r} === ${f}`}}};Js.default=ih});var tk=pe(function(Ws){Object.defineProperty(Ws,"__esModule",{value:!0});var ch=Ps(),dh=Os(),uh=Ts(),lh=js(),fh=Cs(),hh=Ms(),ph=Vs(),mh=Ls(),_h=Gs(),gh=Bs(),yh=[ch.default,dh.default,uh.default,lh.default,fh.default,hh.default,ph.default,mh.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},_h.default,gh.default];Ws.default=yh});var br=pe(function(Zs){Object.defineProperty(Zs,"__esModule",{value:!0});Zs.validateAdditionalItems=void 0;var fe=Wt(),Er=yn(),vh={message:({params:{len:e}})=>fe.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>fe._`{limit: ${e}}`},wh={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:vh,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){Er.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Qs(e,n)}};function Qs(e,t){let{gen:r,schema:n,data:o,keyword:s,it:i}=e;i.items=!0;let a=r.const("len",fe._`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(fe._`${a} <= ${t.length}`);else if(typeof n=="object"&&!Er.alwaysValidSchema(i,n)){let d=r.var("valid",fe._`${a} <= ${t.length}`);r.if(fe.not(d),()=>c(d)),e.ok(d)}function c(d){r.forRange("i",t.length,a,(u)=>{if(e.subschema({keyword:s,dataProp:u,dataPropType:Er.Type.Num},d),!i.allErrors)r.if(fe.not(d),()=>r.break())})}}Zs.validateAdditionalItems=Qs;Zs.default=wh});var Sr=pe(function(ti){Object.defineProperty(ti,"__esModule",{value:!0});ti.validateTuple=void 0;var Ys=Wt(),$t=yn(),bh=V(),Sh={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return ei(e,"additionalItems",t);if(r.items=!0,$t.alwaysValidSchema(r,t))return;e.ok(bh.validateArray(e))}};function ei(e,t,r=e.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=e;if(u(o),a.opts.unevaluated&&r.length&&a.items!==!0)a.items=$t.mergeEvaluated.items(n,r.length,a.items);let c=n.name("valid"),d=n.const("len",Ys._`${s}.length`);r.forEach((l,g)=>{if($t.alwaysValidSchema(a,l))return;n.if(Ys._`${d} > ${g}`,()=>e.subschema({keyword:i,schemaProp:g,dataProp:g},c)),e.ok(c)});function u(l){let{opts:g,errSchemaPath:m}=a,h=r.length,f=h===l.minItems&&(h===l.maxItems||l[t]===!1);if(g.strictTuples&&!f){let p=`"${i}" is ${h}-tuple, but minItems or maxItems/${t} are not specified or different at path "${m}"`;$t.checkStrictMode(a,p,g.strictTuples)}}}ti.validateTuple=ei;ti.default=Sh});var oi=pe(function(ni){Object.defineProperty(ni,"__esModule",{value:!0});var xh=Sr(),Oh={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>xh.validateTuple(e,"items")};ni.default=Oh});var ai=pe(function(ii){Object.defineProperty(ii,"__esModule",{value:!0});var si=Wt(),kh=yn(),Nh=V(),qh=br(),Th={message:({params:{len:e}})=>si.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>si._`{limit: ${e}}`},Ih={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Th,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;if(n.items=!0,kh.alwaysValidSchema(n,t))return;if(o)qh.validateAdditionalItems(e,o);else e.ok(Nh.validateArray(e))}};ii.default=Ih});var di=pe(function(ci){Object.defineProperty(ci,"__esModule",{value:!0});var z=Wt(),vt=yn(),Dh={message:({params:{min:e,max:t}})=>t===void 0?z.str`must contain at least ${e} valid item(s)`:z.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?z._`{minContains: ${e}}`:z._`{minContains: ${e}, maxContains: ${t}}`},Ch={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Dh,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e,i,a,{minContains:c,maxContains:d}=n;if(s.opts.next)i=c===void 0?1:c,a=d;else i=1;let u=t.const("len",z._`${o}.length`);if(e.setParams({min:i,max:a}),a===void 0&&i===0){vt.checkStrictMode(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){vt.checkStrictMode(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(vt.alwaysValidSchema(s,r)){let f=z._`${u} >= ${i}`;if(a!==void 0)f=z._`${f} && ${u} <= ${a}`;e.pass(f);return}s.items=!0;let l=t.name("valid");if(a===void 0&&i===1)m(l,()=>t.if(l,()=>t.break()));else if(i===0){if(t.let(l,!0),a!==void 0)t.if(z._`${o}.length > 0`,g)}else t.let(l,!1),g();e.result(l,()=>e.reset());function g(){let f=t.name("_valid"),p=t.let("count",0);m(f,()=>t.if(f,()=>h(p)))}function m(f,p){t.forRange("i",0,u,(_)=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:vt.Type.Num,compositeRule:!0},f),p()})}function h(f){if(t.code(z._`${f}++`),a===void 0)t.if(z._`${f} >= ${i}`,()=>t.assign(l,!0).break());else if(t.if(z._`${f} > ${a}`,()=>t.assign(l,!1).break()),i===1)t.assign(l,!0);else t.if(z._`${f} >= ${i}`,()=>t.assign(l,!0))}}};ci.default=Ch});var nk=pe(function(fi){Object.defineProperty(fi,"__esModule",{value:!0});fi.validateSchemaDeps=fi.validatePropertyDeps=fi.error=void 0;var Pr=Wt(),Mh=yn(),Le=V();fi.error={message:({params:{property:e,depsCount:t,deps:r}})=>Pr.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>Pr._`{property: ${e},
6
+ missingProperty: ${n},
7
+ depsCount: ${t},
8
+ deps: ${r}}`};var Fh={keyword:"dependencies",type:"object",schemaType:"object",error:fi.error,code(e){let[t,r]=Vh(e);ui(e,t),li(e,r)}};function Vh({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let o=Array.isArray(e[n])?t:r;o[n]=e[n]}return[t,r]}function ui(e,t=e.schema){let{gen:r,data:n,it:o}=e;if(Object.keys(t).length===0)return;let s=r.let("missing");for(let i in t){let a=t[i];if(a.length===0)continue;let c=Le.propertyInData(r,n,i,o.opts.ownProperties);if(e.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors)r.if(c,()=>{for(let d of a)Le.checkReportMissingProp(e,d)});else r.if(Pr._`${c} && (${Le.checkMissingProp(e,a,s)})`),Le.reportMissingProp(e,s),r.else()}}fi.validatePropertyDeps=ui;function li(e,t=e.schema){let{gen:r,data:n,keyword:o,it:s}=e,i=r.name("valid");for(let a in t){if(Mh.alwaysValidSchema(s,t[a]))continue;r.if(Le.propertyInData(r,n,a,s.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:a},i);e.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),e.ok(i)}}fi.validateSchemaDeps=li;fi.default=Fh});var gi=pe(function(_i){Object.defineProperty(_i,"__esModule",{value:!0});var mi=Wt(),Hh=yn(),Lh={message:"property name must be valid",params:({params:e})=>mi._`{propertyName: ${e.propertyName}}`},Kh={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Lh,code(e){let{gen:t,schema:r,data:n,it:o}=e;if(Hh.alwaysValidSchema(o,r))return;let s=t.name("valid");t.forIn("key",n,(i)=>{e.setParams({propertyName:i}),e.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),t.if(mi.not(s),()=>{if(e.error(!0),!o.allErrors)t.break()})}),e.ok(s)}};_i.default=Kh});var xr=pe(function(yi){Object.defineProperty(yi,"__esModule",{value:!0});var wt=V(),G=Wt(),Jh=kc(),Et=yn(),Bh={message:"must NOT have additional properties",params:({params:e})=>G._`{additionalProperty: ${e.additionalProperty}}`},Wh={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Bh,code(e){let{gen:t,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=e;if(!s)throw Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&Et.alwaysValidSchema(i,r))return;let d=wt.allSchemaProperties(n.properties),u=wt.allSchemaProperties(n.patternProperties);l(),e.ok(G._`${s} === ${Jh.default.errors}`);function l(){t.forIn("key",o,(p)=>{if(!d.length&&!u.length)h(p);else t.if(g(p),()=>h(p))})}function g(p){let _;if(d.length>8){let E=Et.schemaRefOrVal(i,n.properties,"properties");_=wt.isOwnProperty(t,E,p)}else if(d.length)_=G.or(...d.map((E)=>G._`${p} === ${E}`));else _=G.nil;if(u.length)_=G.or(_,...u.map((E)=>G._`${wt.usePattern(e,E)}.test(${p})`));return G.not(_)}function m(p){t.code(G._`delete ${o}[${p}]`)}function h(p){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(p);return}if(r===!1){if(e.setParams({additionalProperty:p}),e.error(),!a)t.break();return}if(typeof r=="object"&&!Et.alwaysValidSchema(i,r)){let _=t.name("valid");if(c.removeAdditional==="failing")f(p,_,!1),t.if(G.not(_),()=>{e.reset(),m(p)});else if(f(p,_),!a)t.if(G.not(_),()=>t.break())}}function f(p,_,E){let w={keyword:"additionalProperties",dataProp:p,dataPropType:Et.Type.Str};if(E===!1)Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(w,_)}}};yi.default=Wh});var Ei=pe(function(wi){Object.defineProperty(wi,"__esModule",{value:!0});var Zh=$g(),vi=V(),Or=yn(),$i=xr(),Xh={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:s}=e;if(s.opts.removeAdditional==="all"&&n.additionalProperties===void 0)$i.default.code(new Zh.KeywordCxt(s,$i.default,"additionalProperties"));let i=vi.allSchemaProperties(r);for(let l of i)s.definedProperties.add(l);if(s.opts.unevaluated&&i.length&&s.props!==!0)s.props=Or.mergeEvaluated.props(t,Or.toHash(i),s.props);let a=i.filter((l)=>!Or.alwaysValidSchema(s,r[l]));if(a.length===0)return;let c=t.name("valid");for(let l of a){if(d(l))u(l);else{if(t.if(vi.propertyInData(t,o,l,s.opts.ownProperties)),u(l),!s.allErrors)t.else().var(c,!0);t.endIf()}e.it.definedProperties.add(l),e.ok(c)}function d(l){return s.opts.useDefaults&&!s.compositeRule&&r[l].default!==void 0}function u(l){e.subschema({keyword:"properties",schemaProp:l,dataProp:l},c)}}};wi.default=Xh});var Oi=pe(function(xi){Object.defineProperty(xi,"__esModule",{value:!0});var bi=V(),bt=Wt(),Si=yn(),Pi=yn(),ep={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:s}=e,{opts:i}=s,a=bi.allSchemaProperties(r),c=a.filter((f)=>Si.alwaysValidSchema(s,r[f]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let d=i.strictSchema&&!i.allowMatchingProperties&&o.properties,u=t.name("valid");if(s.props!==!0&&!(s.props instanceof bt.Name))s.props=Pi.evaluatedPropsToName(t,s.props);let{props:l}=s;g();function g(){for(let f of a){if(d)m(f);if(s.allErrors)h(f);else t.var(u,!0),h(f),t.if(u)}}function m(f){for(let p in d)if(new RegExp(f).test(p))Si.checkStrictMode(s,`property ${p} matches pattern ${f} (use allowMatchingProperties)`)}function h(f){t.forIn("key",n,(p)=>{t.if(bt._`${bi.usePattern(e,f)}.test(${p})`,()=>{let _=c.includes(f);if(!_)e.subschema({keyword:"patternProperties",schemaProp:f,dataProp:p,dataPropType:Pi.Type.Str},u);if(s.opts.unevaluated&&l!==!0)t.assign(bt._`${l}[${p}]`,!0);else if(!_&&!s.allErrors)t.if(bt.not(u),()=>t.break())})})}}};xi.default=ep});var ki=pe(function(Ri){Object.defineProperty(Ri,"__esModule",{value:!0});var rp=yn(),np={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(rp.alwaysValidSchema(n,r)){e.fail();return}let o=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),e.failResult(o,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Ri.default=np});var qi=pe(function(Ni){Object.defineProperty(Ni,"__esModule",{value:!0});var sp=V(),ip={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:sp.validateUnion,error:{message:"must match a schema in anyOf"}};Ni.default=ip});var Ii=pe(function(Ti){Object.defineProperty(Ti,"__esModule",{value:!0});var St=Wt(),cp=yn(),dp={message:"must match exactly one schema in oneOf",params:({params:e})=>St._`{passingSchemas: ${e.passing}}`},up={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:dp,code(e){let{gen:t,schema:r,parentSchema:n,it:o}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=t.let("valid",!1),a=t.let("passing",null),c=t.name("_valid");e.setParams({passing:a}),t.block(d),e.result(i,()=>e.reset(),()=>e.error(!0));function d(){s.forEach((u,l)=>{let g;if(cp.alwaysValidSchema(o,u))t.var(c,!0);else g=e.subschema({keyword:"oneOf",schemaProp:l,compositeRule:!0},c);if(l>0)t.if(St._`${c} && ${i}`).assign(i,!1).assign(a,St._`[${a}, ${l}]`).else();t.if(c,()=>{if(t.assign(i,!0),t.assign(a,l),g)e.mergeEvaluated(g,St.Name)})})}}};Ti.default=up});var Di=pe(function(ji){Object.defineProperty(ji,"__esModule",{value:!0});var fp=yn(),hp={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw Error("ajv implementation error");let o=t.name("valid");r.forEach((s,i)=>{if(fp.alwaysValidSchema(n,s))return;let a=e.subschema({keyword:"allOf",schemaProp:i},o);e.ok(o),e.mergeEvaluated(a)})}};ji.default=hp});var Fi=pe(function(Mi){Object.defineProperty(Mi,"__esModule",{value:!0});var Pt=Wt(),Ai=yn(),mp={message:({params:e})=>Pt.str`must match "${e.ifClause}" schema`,params:({params:e})=>Pt._`{failingKeyword: ${e.ifClause}}`},_p={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:mp,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)Ai.checkStrictMode(n,'"if" without "then" and "else" is ignored');let o=Ci(n,"then"),s=Ci(n,"else");if(!o&&!s)return;let i=t.let("valid",!0),a=t.name("_valid");if(c(),e.reset(),o&&s){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(a,d("then",u),d("else",u))}else if(o)t.if(a,d("then"));else t.if(Pt.not(a),d("else"));e.pass(i,()=>e.error(!0));function c(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(u)}function d(u,l){return()=>{let g=e.subschema({keyword:u},a);if(t.assign(i,a),e.mergeValidEvaluated(g,i),l)t.assign(l,Pt._`${u}`);else e.setParams({ifClause:u})}}}};function Ci(e,t){let r=e.schema[t];return r!==void 0&&!Ai.alwaysValidSchema(e,r)}Mi.default=_p});var zi=pe(function(Vi){Object.defineProperty(Vi,"__esModule",{value:!0});var yp=yn(),$p={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)yp.checkStrictMode(r,`"${e}" without "if" is ignored`)}};Vi.default=$p});var ik=pe(function(Ui){Object.defineProperty(Ui,"__esModule",{value:!0});var wp=br(),Ep=oi(),bp=Sr(),Sp=ai(),Pp=di(),xp=nk(),Op=gi(),Rp=xr(),kp=Ei(),Np=Oi(),qp=ki(),Tp=qi(),Ip=Ii(),jp=Di(),Dp=Fi(),Cp=zi();function Ap(e=!1){let t=[qp.default,Tp.default,Ip.default,jp.default,Dp.default,Cp.default,Op.default,Rp.default,xp.default,kp.default,Np.default];if(e)t.push(Ep.default,Sp.default);else t.push(wp.default,bp.default);return t.push(Pp.default),t}Ui.default=Ap});var Li=pe(function(Hi){Object.defineProperty(Hi,"__esModule",{value:!0});var N=Wt(),Fp={message:({schemaCode:e})=>N.str`must match format "${e}"`,params:({schemaCode:e})=>N._`{format: ${e}}`},Vp={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Fp,code(e,t){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=e,{opts:c,errSchemaPath:d,schemaEnv:u,self:l}=a;if(!c.validateFormats)return;if(o)g();else m();function g(){let h=r.scopeValue("formats",{ref:l.formats,code:c.code.formats}),f=r.const("fDef",N._`${h}[${i}]`),p=r.let("fType"),_=r.let("format");r.if(N._`typeof ${f} == "object" && !(${f} instanceof RegExp)`,()=>r.assign(p,N._`${f}.type || "string"`).assign(_,N._`${f}.validate`),()=>r.assign(p,N._`"string"`).assign(_,f)),e.fail$data(N.or(E(),w()));function E(){if(c.strictSchema===!1)return N.nil;return N._`${i} && !${_}`}function w(){let O=u.$async?N._`(${f}.async ? await ${_}(${n}) : ${_}(${n}))`:N._`${_}(${n})`,b=N._`(typeof ${_} == "function" ? ${O} : ${_}.test(${n}))`;return N._`${_} && ${_} !== true && ${p} === ${t} && !${b}`}}function m(){let h=l.formats[s];if(!h){E();return}if(h===!0)return;let[f,p,_]=w(h);if(f===t)e.pass(O());function E(){if(c.strictSchema===!1){l.logger.warn(b());return}throw Error(b());function b(){return`unknown format "${s}" ignored in schema at path "${d}"`}}function w(b){let J=b instanceof RegExp?N.regexpCode(b):c.code.formats?N._`${c.code.formats}${N.getProperty(s)}`:void 0,W=r.scopeValue("formats",{key:s,ref:b,code:J});if(typeof b=="object"&&!(b instanceof RegExp))return[b.type||"string",b.validate,N._`${W}.validate`];return["string",b,W]}function O(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!u.$async)throw Error("async format in sync schema");return N._`await ${_}(${n})`}return typeof p=="function"?N._`${_}(${n})`:N._`${_}.test(${n})`}}}};Hi.default=Vp});var ok=pe(function(Ki){Object.defineProperty(Ki,"__esModule",{value:!0});var Up=Li(),Hp=[Up.default];Ki.default=Hp});var rk=pe(function(Gi){Object.defineProperty(Gi,"__esModule",{value:!0});Gi.contentVocabulary=Gi.metadataVocabulary=void 0;Gi.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Gi.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});
9
+ export{Wt,yn,kc,$g,yy,Ig,K0,X1,Q1,ek,tk,nk,ik,ok,rk,sk};
10
+
11
+ //# debugId=067AEABD8253C63064756E2164756E21
12
+ //# sourceMappingURL=studio-1gdfsr49.js.map