diff --git a/.dockerignore b/.dockerignore index c7b91d2..7832046 100644 --- a/.dockerignore +++ b/.dockerignore @@ -4,4 +4,5 @@ .moltenhub .moltenhub-agents-* AGENTS.md +node_modules prompt-images/ diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ebf7305..6dd37ca 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,9 +22,24 @@ jobs: with: go-version-file: go.mod + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + - name: Validate repository run: ./scripts/validate-repo.sh + - name: Install frontend dependencies + run: npm ci + + - name: Run frontend tests + run: npm test + + - name: Verify frontend build + run: npm run verify:web-build + - name: Run tests run: go test ./... diff --git a/.gitignore b/.gitignore index 4afa2a7..b952f45 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,11 @@ data/ dist/ bin/ +node_modules/ coverage.out AGENTS.md core.* .moltenhub-agents-*.md prompt-images/ .moltenhub -moltenhub \ No newline at end of file +moltenhub diff --git a/.moltenhub/pr-comment-screenshots/after.png b/.moltenhub/pr-comment-screenshots/after.png deleted file mode 100644 index 7d571cb..0000000 Binary files a/.moltenhub/pr-comment-screenshots/after.png and /dev/null differ diff --git a/.moltenhub/pr-comment-screenshots/before.png b/.moltenhub/pr-comment-screenshots/before.png deleted file mode 100644 index 148a7e1..0000000 Binary files a/.moltenhub/pr-comment-screenshots/before.png and /dev/null differ diff --git a/Dockerfile b/Dockerfile index f8164ad..c2f9695 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,3 +1,14 @@ +FROM node:22-alpine AS webbuild + +WORKDIR /src + +COPY package.json package-lock.json ./ +RUN npm ci + +COPY vite.config.mjs ./ +COPY web ./web +RUN npm run build:web + FROM golang:1.26 AS build WORKDIR /src @@ -6,6 +17,7 @@ COPY go.mod go.sum ./ RUN go mod download COPY . . +COPY --from=webbuild /src/internal/web/static/skill-payload-form ./internal/web/static/skill-payload-form RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -trimpath -ldflags="-s -w" -o /out/moltenhub-dispatch ./cmd/moltenhub-dispatch diff --git a/README.md b/README.md index cfcf272..aec8ae1 100644 --- a/README.md +++ b/README.md @@ -29,13 +29,23 @@ docker run --rm -p 8080:8080 \ ## Docker -Build a local image: +Build a local image from this checkout: ```bash docker build -t moltenhub-dispatch . ``` -Run the local image: +The Docker build runs the web asset build first, then compiles the Go binary with those assets embedded. + +Run the local image and complete onboarding in the browser: + +```bash +docker run --rm -p 8080:8080 \ + -v "$(pwd)/.moltenhub:/workspace/config" \ + moltenhub-dispatch +``` + +Or bind during startup with an existing region and token: ```bash docker run --rm -p 8080:8080 \ @@ -68,7 +78,7 @@ The bundled UI supports: - First-run onboarding for region, bind token, and profile setup. - Connected-agent management and presence display. -- Manual skill dispatch with Markdown or JSON payloads. +- Manual skill dispatch with schema-generated forms plus Markdown or JSON payload fallback. - Scheduled and recurring dispatches. - Pending task status, recent runtime events, and schedule deletion. @@ -131,23 +141,37 @@ Dispatch requests can run immediately, later, or on an interval. Use `agent` or Requirements: - Go `1.26` or newer +- Node.js `22` or newer, for the bundled JSONForms web assets - Docker, only for container builds -Run locally: +Install frontend dependencies and build the embedded web bundle: + +```bash +npm ci +npm run build:web +``` + +Run the service locally: ```bash go run ./cmd/moltenhub-dispatch ``` +The web UI runs at . If you change files under `web/skill-payload-form/`, run `npm run build:web` again before `go run` so the embedded bundle is current. + +If a selected skill still shows the raw payload textarea instead of a generated form, confirm that you are running this locally built image or binary, not the published `moltenai/moltenhub-dispatch` image. The form appears only when the selected connected agent advertises a valid JSON schema or supported parameter metadata for that skill; skills without schemas intentionally fall back to the textarea. + Validate changes: ```bash ./scripts/validate-repo.sh +npm test +npm run verify:web-build go test ./... go build ./... ``` -CI runs the same repository validation, test, and build commands. +CI runs the same repository validation, frontend test/build verification, Go test, and Go build commands. ## Runtime WebSocket diff --git a/internal/app/service_capabilities.go b/internal/app/service_capabilities.go index d897388..359bce6 100644 --- a/internal/app/service_capabilities.go +++ b/internal/app/service_capabilities.go @@ -428,8 +428,8 @@ func connectedAgentMetadataFromCapabilityEntry(entry map[string]any, sources []m Harness: firstCapabilityString(sources, "harness"), Presence: connectedAgentPresenceFromCapabilitySources(sources), } - if skills := capabilitySkills(entry, nestedMap(entry, "metadata"), nestedMap(entry, "agent")); len(skills) > 0 { - metadata.AdvertisedSkills = SkillsToMetadata(skills) + if skills := capabilitySkillMetadata(entry, nestedMap(entry, "metadata"), nestedMap(entry, "agent")); len(skills) > 0 { + metadata.AdvertisedSkills = skills } if metadataEmpty(metadata) { return nil @@ -516,6 +516,73 @@ func SkillsToMetadata(skills []Skill) []map[string]any { return metadata } +func capabilitySkillMetadata(primary map[string]any, metadata map[string]any, agent map[string]any) []map[string]any { + for _, source := range []map[string]any{primary, metadata, agent} { + for _, current := range []map[string]any{source, nestedMap(source, "metadata")} { + if current == nil { + continue + } + for _, key := range []string{"advertised_skills", "skills"} { + if skills := skillMetadataFromAny(current[key]); len(skills) > 0 { + return skills + } + } + } + } + return nil +} + +func skillMetadataFromAny(value any) []map[string]any { + skills := make([]map[string]any, 0) + appendSkillMap := func(skill map[string]any) { + name := strings.TrimSpace(stringFromMap(skill, "name")) + if name == "" { + return + } + entry := make(map[string]any, len(skill)) + for key, value := range skill { + entry[key] = value + } + entry["name"] = name + if description := strings.TrimSpace(stringFromMap(skill, "description")); description != "" { + entry["description"] = description + } + skills = append(skills, entry) + } + appendSkill := func(item any) { + switch typed := item.(type) { + case map[string]any: + appendSkillMap(typed) + case Skill: + if metadata := SkillsToMetadata([]Skill{typed}); len(metadata) == 1 { + skills = append(skills, metadata[0]) + } + case string: + name := strings.TrimSpace(typed) + if name != "" { + skills = append(skills, map[string]any{"name": name}) + } + } + } + + switch typed := value.(type) { + case []any: + for _, item := range typed { + appendSkill(item) + } + case []map[string]any: + for _, item := range typed { + appendSkill(item) + } + case []Skill: + for _, item := range typed { + appendSkill(item) + } + } + + return skills +} + func presenceEmpty(presence *hub.AgentPresence) bool { if presence == nil { return true diff --git a/internal/app/service_test.go b/internal/app/service_test.go index abb5af0..bea5f96 100644 --- a/internal/app/service_test.go +++ b/internal/app/service_test.go @@ -4721,7 +4721,16 @@ func TestRefreshConnectedAgentsRetainsPeerCatalogSkillsWhenTalkablePeersExist(t "uri": "https://hub.example/v1/agents/peer-uuid", "metadata": map[string]any{ "skills": []map[string]any{ - {"name": "review_openapi", "description": "Review Hub API integration behavior."}, + { + "name": "review_openapi", + "description": "Review Hub API integration behavior.", + "schema": map[string]any{ + "type": "object", + "properties": map[string]any{ + "prompt": map[string]any{"type": "string"}, + }, + }, + }, }, }, }, @@ -4748,6 +4757,13 @@ func TestRefreshConnectedAgentsRetainsPeerCatalogSkillsWhenTalkablePeersExist(t if skills := ConnectedAgentSkills(agents[0]); len(skills) != 1 || skills[0].Name != "review_openapi" { t.Fatalf("expected peer skill catalog skills to survive talkable peer fallback, got %#v", skills) } + if agents[0].Metadata == nil || len(agents[0].Metadata.AdvertisedSkills) != 1 { + t.Fatalf("expected advertised skill metadata with schema, got %#v", agents[0].Metadata) + } + schema, ok := agents[0].Metadata.AdvertisedSkills[0]["schema"].(map[string]any) + if !ok || schema["type"] != "object" { + t.Fatalf("expected advertised skill schema to survive normalization, got %#v", agents[0].Metadata.AdvertisedSkills[0]) + } } func TestRefreshConnectedAgentsMergesPeerCatalogSkillsWithTalkablePeerProfile(t *testing.T) { diff --git a/internal/web/server_test.go b/internal/web/server_test.go index 319284b..c33cdb7 100644 --- a/internal/web/server_test.go +++ b/internal/web/server_test.go @@ -1307,8 +1307,23 @@ func TestHandleIndexIncludesSkillSchemaPlaceholderSupport(t *testing.T) { server.Handler().ServeHTTP(rec, req) body := rec.Body.String() + if !strings.Contains(body, `/static/skill-payload-form/skill-payload-form.js`) { + t.Fatalf("expected JSONForms skill payload bundle script, body=%s", body) + } + if !strings.Contains(body, `/static/skill-payload-form/skill-payload-form.css`) { + t.Fatalf("expected JSONForms skill payload bundle stylesheet, body=%s", body) + } + if !strings.Contains(body, `id="skill-payload-mode-field"`) { + t.Fatalf("expected payload mode toggle field, body=%s", body) + } + if !strings.Contains(body, `id="skill-payload-mode-form"`) || !strings.Contains(body, `id="skill-payload-mode-json"`) { + t.Fatalf("expected form and JSON payload mode options, body=%s", body) + } + if !strings.Contains(body, `id="skill-payload-form-root"`) { + t.Fatalf("expected JSONForms mount point, body=%s", body) + } if !strings.Contains(body, `const skillPayloadHint = document.getElementById("skill-payload-hint");`) { - t.Fatalf("expected payload hint hook for schema-aware readonly copy, body=%s", body) + t.Fatalf("expected payload hint hook for schema-aware generated form copy, body=%s", body) } if !strings.Contains(body, `const defaultSkillPayloadHint = skillPayloadHint instanceof HTMLElement`) { t.Fatalf("expected default payload hint capture before schema overrides, body=%s", body) @@ -1316,26 +1331,32 @@ func TestHandleIndexIncludesSkillSchemaPlaceholderSupport(t *testing.T) { if !strings.Contains(body, `const extractSkillSchema = (skill) => {`) { t.Fatalf("expected skill schema extraction helper in client script, body=%s", body) } - if !strings.Contains(body, `for (const key of ["schema", "input_schema", "payload_schema", "inputSchema", "payloadSchema", "parameters", "args_schema", "argsSchema"])`) { + if !strings.Contains(body, `const nestedSchema = firstSkillAliasValue(schema, skillSchemaAliases);`) { + t.Fatalf("expected nested parameter schema extraction in client script, body=%s", body) + } + if !strings.Contains(body, `const skillSchemaAliases = ["schema", "input_schema", "payload_schema", "inputSchema", "payloadSchema", "parameters", "args_schema", "argsSchema"];`) { t.Fatalf("expected schema alias scan in client script, body=%s", body) } + if !strings.Contains(body, `const skillUISchemaAliases = ["ui_schema", "uischema", "uiSchema"];`) { + t.Fatalf("expected UI schema alias scan in client script, body=%s", body) + } if !strings.Contains(body, `schemaText: trimmedString(schemaText),`) { - t.Fatalf("expected skill entries to preserve schema text for readonly payload text, body=%s", body) + t.Fatalf("expected skill entries to preserve schema text for mode reset keys, body=%s", body) } - if !strings.Contains(body, `Required payload schema shown in readonly payload text box. Markdown and JSON are both supported.`) { - t.Fatalf("expected schema-specific payload hint copy, body=%s", body) + if !strings.Contains(body, `Generated from the selected skill schema. Switch to JSON for raw payload editing.`) { + t.Fatalf("expected generated form payload hint copy, body=%s", body) } - if !strings.Contains(body, `const setSkillPayloadSchemaText = (schemaText) => {`) { - t.Fatalf("expected payload schema text helper in client script, body=%s", body) + if !strings.Contains(body, `const skillPayloadFormAPI = () => {`) { + t.Fatalf("expected JSONForms bundle bridge helper, body=%s", body) } - if !strings.Contains(body, `skillPayloadInput.readOnly = nextSchemaText !== "";`) { - t.Fatalf("expected selected skill schema to make payload text readonly, body=%s", body) + if !strings.Contains(body, `api.normalizeSkillSchema(skillEntry.schema, skillEntry.uischema)`) { + t.Fatalf("expected selected skill schema to be normalized through JSONForms bridge, body=%s", body) } - if !strings.Contains(body, `skillPayloadInput.value = nextSchemaText;`) { - t.Fatalf("expected selected skill schema to render inside payload text box, body=%s", body) + if !strings.Contains(body, `renderSkillPayloadForm(nextData);`) { + t.Fatalf("expected selected skill schema to render generated payload form, body=%s", body) } - if !strings.Contains(body, `formData.delete("payload");`) || !strings.Contains(body, `formData.delete("payload_format");`) { - t.Fatalf("expected readonly schema reference text to be omitted from dispatch payload, body=%s", body) + if strings.Contains(body, `formData.delete("payload");`) || strings.Contains(body, `formData.delete("payload_format");`) { + t.Fatalf("did not expect generated form payload to be omitted from dispatch, body=%s", body) } } @@ -2023,6 +2044,47 @@ func TestHandleDispatchAPIAcceptsJSONPayloadWithTabbedPrompt(t *testing.T) { } } +func TestHandleDispatchAPIAcceptsGeneratedFormJSONPayload(t *testing.T) { + t.Parallel() + + stub := &stubService{ + dispatchTask: app.PendingTask{ID: "task-1"}, + } + server, err := New(stub) + if err != nil { + t.Fatalf("new server: %v", err) + } + + form := url.Values{} + form.Set("target_agent_ref", "worker-a") + form.Set("skill_name", "code_for_me") + form.Set("skill_payload_input_mode", "form") + form.Set("payload_format", "json") + form.Set("payload", `{"prompt":"Review logs","limit":3}`) + req := httptest.NewRequest(http.MethodPost, "/api/dispatch", strings.NewReader(form.Encode())) + req.Header.Set("Content-Type", "application/x-www-form-urlencoded") + rec := httptest.NewRecorder() + + server.Handler().ServeHTTP(rec, req) + if rec.Code != http.StatusOK { + t.Fatalf("expected 200 response, got %d body=%s", rec.Code, rec.Body.String()) + } + + if got := stub.lastDispatchReq.PayloadFormat; got != "json" { + t.Fatalf("expected payload format json, got %#v", stub.lastDispatchReq) + } + payload, ok := stub.lastDispatchReq.Payload.(map[string]any) + if !ok { + t.Fatalf("expected JSON payload map, got %T", stub.lastDispatchReq.Payload) + } + if got := payload["prompt"]; got != "Review logs" { + t.Fatalf("unexpected prompt payload: %#v", payload) + } + if got := payload["limit"]; got != float64(3) { + t.Fatalf("unexpected limit payload: %#v", payload) + } +} + func TestHandleDispatchMapsTextPayloadFormatAliasToMarkdown(t *testing.T) { t.Parallel() @@ -4654,6 +4716,9 @@ func TestHandleIndexRendersConnectedAgentsRefreshPanel(t *testing.T) { if !strings.Contains(body, `id="initial-connected-agents-data" type="application/json"`) { t.Fatalf("expected serialized connected-agents bootstrap payload script, body=%s", body) } + if !strings.Contains(body, `if (typeof parsed === "string")`) { + t.Fatalf("expected initial JSON bootstrap parser to handle double-encoded arrays, body=%s", body) + } if !strings.Contains(body, `const selectConnectedAgentTarget = (targetRef, options = {}) => {`) { t.Fatalf("expected connected agent selector click handler, body=%s", body) } diff --git a/internal/web/static/skill-payload-form/skill-payload-form.css b/internal/web/static/skill-payload-form/skill-payload-form.css new file mode 100644 index 0000000..3fcc0f4 --- /dev/null +++ b/internal/web/static/skill-payload-form/skill-payload-form.css @@ -0,0 +1,2 @@ +.skill-payload-form-root .jsonforms-root{font-family:var(--font-family,"Instrument Sans", "Segoe UI", sans-serif)}.skill-payload-form-root .group-layout,.skill-payload-form-root .vertical-layout,.skill-payload-form-root .horizontal-layout{gap:12px;display:grid}.skill-payload-form-root .horizontal-layout{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.skill-payload-form-root .control{gap:6px;display:grid}.skill-payload-form-root .control>label,.skill-payload-form-root .array-layout>label,.skill-payload-form-root .group-label{color:var(--text-soft,#35507a);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:700}.skill-payload-form-root input,.skill-payload-form-root select,.skill-payload-form-root textarea{border:1px solid var(--surface-control-border,#70a3dd57);border-radius:var(--radius-control,6px);background:var(--input-background,#fff);width:100%;min-height:42px;color:var(--text,#0f1b33);font:inherit;box-shadow:var(--surface-control-shadow,none);padding:10px 12px}.skill-payload-form-root textarea{resize:vertical;min-height:96px}.skill-payload-form-root input[type=checkbox]{width:18px;min-height:18px;box-shadow:none}.skill-payload-form-root input:focus,.skill-payload-form-root select:focus,.skill-payload-form-root textarea:focus{border-color:rgb(var(--hub-running-rgb,0 145 176) / .54);box-shadow:var(--surface-control-shadow,none), 0 0 0 3px rgb(var(--hub-running-rgb,0 145 176) / .16);outline:none}.skill-payload-form-root .validation{color:var(--surface-danger,#b42318);font-size:.78rem;line-height:1.35} +/*$vite$:1*/ \ No newline at end of file diff --git a/internal/web/static/skill-payload-form/skill-payload-form.js b/internal/web/static/skill-payload-form/skill-payload-form.js new file mode 100644 index 0000000..a23d570 --- /dev/null +++ b/internal/web/static/skill-payload-form/skill-payload-form.js @@ -0,0 +1,19 @@ +(function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;li[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),d=e=>a.call(e,`module.exports`)?e[`module.exports`]:l(t({},`__esModule`,{value:!0}),e),f=s((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var ee=/\/+/g;function A(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function te(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function ne(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,ne(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+A(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(ee,`$&/`)+`/`),ne(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(ee,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u{t.exports=f()})),m=s((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0>>1,a=e[r];if(0>>1;ri(c,n))li(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(li(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&A(x,t.startTime-e)}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-Tt&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&A(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,ee=k.port2;k.port1.onmessage=D,O=function(){ee.postMessage(null)}}else O=function(){_(D,0)};function A(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,A(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),h=s(((e,t)=>{t.exports=m()})),g=s((e=>{var t=p();function n(e){var t=`https://react.dev/errors/`+e;if(1{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=g()})),v=s((e=>{var t=h(),n=p(),r=_();function i(e){var t=`https://react.dev/errors/`+e;if(1oe||(e.current=ae[oe],ae[oe]=null,oe--)}function F(e,t){oe++,ae[oe]=e.current,e.current=t}var ce=se(null),le=se(null),ue=se(null),de=se(null);function fe(e,t){switch(F(ue,t),F(le,e),F(ce,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}P(ce),F(ce,e)}function pe(){P(ce),P(le),P(ue)}function me(e){e.memoizedState!==null&&F(de,e);var t=ce.current,n=Hd(t,e.type);t!==n&&(F(le,e),F(ce,n))}function he(e){le.current===e&&(P(ce),P(le)),de.current===e&&(P(de),Qf._currentValue=ie)}var ge,_e;function I(e){if(ge===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);ge=t&&t[1]||``,_e=-1)`:-1i||c[r]!==l[i]){var u=` +`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(``)&&(u=u.replace(``,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{ve=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?I(n):``}function be(e,t){switch(e.tag){case 26:case 27:case 5:return I(e.type);case 16:return I(`Lazy`);case 13:return e.child!==t&&t!==null?I(`Suspense Fallback`):I(`Suspense`);case 19:return I(`SuspenseList`);case 0:case 15:return ye(e.type,!1);case 11:return ye(e.type.render,!1);case 1:return ye(e.type,!0);case 31:return I(`Activity`);default:return``}}function xe(e){try{var t=``,n=null;do t+=be(e,n),n=e,e=e.return;while(e);return t}catch(e){return` +Error generating stack: `+e.message+` +`+e.stack}}var Se=Object.prototype.hasOwnProperty,Ce=t.unstable_scheduleCallback,we=t.unstable_cancelCallback,Te=t.unstable_shouldYield,Ee=t.unstable_requestPaint,De=t.unstable_now,Oe=t.unstable_getCurrentPriorityLevel,ke=t.unstable_ImmediatePriority,Ae=t.unstable_UserBlockingPriority,je=t.unstable_NormalPriority,Me=t.unstable_LowPriority,Ne=t.unstable_IdlePriority,Pe=t.log,Fe=t.unstable_setDisableYieldValue,Ie=null,Le=null;function Re(e){if(typeof Pe==`function`&&Fe(e),Le&&typeof Le.setStrictMode==`function`)try{Le.setStrictMode(Ie,e)}catch{}}var ze=Math.clz32?Math.clz32:He,Be=Math.log,Ve=Math.LN2;function He(e){return e>>>=0,e===0?32:31-(Be(e)/Ve|0)|0}var Ue=256,We=262144,Ge=4194304;function Ke(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function qe(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Ke(n))):i=Ke(o):i=Ke(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Ke(n))):i=Ke(o)):i=Ke(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function Je(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ye(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Xe(){var e=Ge;return Ge<<=1,!(Ge&62914560)&&(Ge=4194304),e}function Ze(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Qe(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function $e(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0`u`||window.document===void 0||window.document.createElement===void 0),fn=!1;if(dn)try{var pn={};Object.defineProperty(pn,"passive",{get:function(){fn=!0}}),window.addEventListener(`test`,pn,pn),window.removeEventListener(`test`,pn,pn)}catch{fn=!1}var mn=null,hn=null,gn=null;function _n(){if(gn)return gn;var e,t=hn,n=t.length,r,i=`value`in mn?mn.value:mn.textContent,a=i.length;for(e=0;e=qn),Xn=` `,Zn=!1;function Qn(e,t){switch(e){case`keyup`:return Gn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function $n(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var er=!1;function tr(e,t){switch(e){case`compositionend`:return $n(t);case`keypress`:return t.which===32?(Zn=!0,Xn):null;case`textInput`:return e=t.data,e===Xn&&Zn?null:e;default:return null}}function nr(e,t){if(er)return e===`compositionend`||!Kn&&Qn(e,t)?(e=_n(),gn=hn=mn=null,er=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=wr(n)}}function Er(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Er(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Dr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Rt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Rt(e.document)}return t}function Or(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var kr=dn&&`documentMode`in document&&11>=document.documentMode,Ar=null,jr=null,Mr=null,Nr=!1;function Pr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Nr||Ar==null||Ar!==Rt(r)||(r=Ar,`selectionStart`in r&&Or(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Mr&&Cr(Mr,r)||(Mr=r,r=Ed(jr,`onSelect`),0>=o,i-=o,Ei=1<<32-ze(t)+i|n<h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),z&&Oi(i,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),z&&Oi(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return z&&Oi(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),z&&Oi(a,g),u}function b(e,r,o,c){if(typeof o==`object`&&o&&o.type===y&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case g:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===y){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===O&&Oa(l)===r.type){n(e,r.sibling),c=a(r,o.props),Fa(c,o),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}o.type===y?(c=pi(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=fi(o.type,o.key,o.props,null,e.mode,c),Fa(c,o),c.return=e,e=c)}return s(e);case v:a:{for(l=o.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=gi(o,e.mode,c),c.return=e,e=c}return s(e);case O:return o=Oa(o),b(e,r,o,c)}if(re(o))return h(e,r,o,c);if(te(o)){if(l=te(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),_(e,r,o,c)}if(typeof o.then==`function`)return b(e,r,Pa(o),c);if(o.$$typeof===C)return b(e,r,na(e,o),c);Ia(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=mi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Na=0;var i=b(e,t,n,r);return Ma=null,i}catch(t){if(t===Sa||t===wa)throw t;var a=ci(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Ra=La(!0),za=La(!1),Ba=!1;function Va(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Ha(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ua(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Wa(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,K&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=ai(e),ii(e,null,n),t}return ti(e,r,t,n),ai(e)}function Ga(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,tt(e,n)}}function Ka(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var qa=!1;function Ja(){if(qa){var e=pa;if(e!==null)throw e}}function Ya(e,t,n,r){qa=!1;var i=e.updateQueue;Ba=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var p=s.lane&-536870913,m=p!==s.lane;if(m?(Y&p)===p:(r&p)===p){p!==0&&p===fa&&(qa=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;p=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,p);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,p=typeof h==`function`?h.call(_,d,p):h,p==null)break a;d=f({},d,p);break a;case 2:Ba=!0}}p=s.callback,p!==null&&(e.flags|=64,m&&(e.flags|=8192),m=i.callbacks,m===null?i.callbacks=[p]:m.push(p))}else m={lane:p,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=m,c=d):u=u.next=m,o|=p;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;m=s,s=m.next,m.next=null,i.lastBaseUpdate=m,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Gl|=o,e.lanes=o,e.memoizedState=d}}function Xa(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function Za(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ea?a:8;var o=M.T,s={};M.T=s,Ps(e,!1,t,n);try{var c=i(),l=M.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Ns(e,t,ga(c,r),pu(e)):Ns(e,t,r,pu(e))}catch(n){Ns(e,t,{then:function(){},status:`rejected`,reason:n},pu())}finally{N.p=a,o!==null&&s.types!==null&&(o.types=s.types),M.T=o}}function Cs(){}function ws(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=Ts(e).queue;Ss(e,a,t,ie,n===null?Cs:function(){return Es(e),n(r)})}function Ts(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ie,baseState:ie,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fo,lastRenderedState:ie},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fo,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Es(e){var t=Ts(e);t.next===null&&(t=e.alternate.memoizedState),Ns(e,t.next.queue,{},pu())}function Ds(){return ta(Qf)}function Os(){return Ao().memoizedState}function ks(){return Ao().memoizedState}function As(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=pu();e=Ua(n);var r=Wa(t,e,n);r!==null&&(hu(r,t,n),Ga(r,t,n)),t={cache:ca()},e.payload=t;return}t=t.return}}function js(e,t,n){var r=pu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Fs(e)?Is(t,n):(n=ni(e,t,n,r),n!==null&&(hu(n,e,r),Ls(n,t,r)))}function Ms(e,t,n){Ns(e,t,n,pu())}function Ns(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Fs(e))Is(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,Sr(s,o))return ti(e,t,i,0),q===null&&ei(),!1}catch{}if(n=ni(e,t,i,r),n!==null)return hu(n,e,r),Ls(n,t,r),!0}return!1}function Ps(e,t,n,r){if(r={lane:2,revertLane:dd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Fs(e)){if(t)throw Error(i(479))}else t=ni(e,n,r,2),t!==null&&hu(t,e,2)}function Fs(e){var t=e.alternate;return e===B||t!==null&&t===B}function Is(e,t){go=ho=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Ls(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,tt(e,n)}}var Rs={readContext:ta,use:No,useCallback:So,useContext:So,useEffect:So,useImperativeHandle:So,useLayoutEffect:So,useInsertionEffect:So,useMemo:So,useReducer:So,useRef:So,useState:So,useDebugValue:So,useDeferredValue:So,useTransition:So,useSyncExternalStore:So,useId:So,useHostTransitionStatus:So,useFormState:So,useActionState:So,useOptimistic:So,useMemoCache:So,useCacheRefresh:So};Rs.useEffectEvent=So;var zs={readContext:ta,use:No,useCallback:function(e,t){return ko().memoizedState=[e,t===void 0?null:t],e},useContext:ta,useEffect:ls,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),ss(4194308,4,hs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return ss(4194308,4,e,t)},useInsertionEffect:function(e,t){ss(4,2,e,t)},useMemo:function(e,t){var n=ko();t=t===void 0?null:t;var r=e();if(_o){Re(!0);try{e()}finally{Re(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=ko();if(n!==void 0){var i=n(t);if(_o){Re(!0);try{n(t)}finally{Re(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=js.bind(null,B,e),[r.memoizedState,e]},useRef:function(e){var t=ko();return e={current:e},t.memoizedState=e},useState:function(e){e=Go(e);var t=e.queue,n=Ms.bind(null,B,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:_s,useDeferredValue:function(e,t){return bs(ko(),e,t)},useTransition:function(){var e=Go(!1);return e=Ss.bind(null,B,e.queue,!0,!1),ko().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=B,a=ko();if(z){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),q===null)throw Error(i(349));Y&127||Bo(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,ls(Ho.bind(null,r,o,e),[e]),r.flags|=2048,as(9,{destroy:void 0},Vo.bind(null,r,o,n,t),null),n},useId:function(){var e=ko(),t=q.identifierPrefix;if(z){var n=Di,r=Ei;n=(r&~(1<<32-ze(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=vo++,0<\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[ct]=t,o[lt]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Pd(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Nc(t)}}return Rc(t),Pc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Nc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=ue.current,Vi(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=Ni,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[ct]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Md(e.nodeValue,n)),e||Ri(t,!0)}else e=Bd(e).createTextNode(r),e[ct]=t,t.stateNode=e}return Rc(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Vi(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[ct]=t}else Hi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Rc(t),e=!1}else n=Ui(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(lo(t),t):(lo(t),null);if(t.flags&128)throw Error(i(558))}return Rc(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Vi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[ct]=t}else Hi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Rc(t),a=!1}else a=Ui(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(lo(t),t):(lo(t),null)}return lo(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Ic(t,t.updateQueue),Rc(t),null);case 4:return pe(),e===null&&Sd(t.stateNode.containerInfo),Rc(t),null;case 10:return Yi(t.type),Rc(t),null;case 19:if(P(uo),r=t.memoizedState,r===null)return Rc(t),null;if(a=(t.flags&128)!=0,o=r.rendering,o===null)if(a)Lc(r,!1);else{if(Wl!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=fo(e),o!==null){for(t.flags|=128,Lc(r,!1),e=o.updateQueue,t.updateQueue=e,Ic(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)di(n,e),n=n.sibling;return F(uo,uo.current&1|2),z&&Oi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&De()>tu&&(t.flags|=128,a=!0,Lc(r,!1),t.lanes=4194304)}else{if(!a)if(e=fo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Ic(t,e),Lc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!z)return Rc(t),null}else 2*De()-r.renderingStartTime>tu&&n!==536870912&&(t.flags|=128,a=!0,Lc(r,!1),t.lanes=4194304);r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(Rc(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=De(),e.sibling=null,n=uo.current,F(uo,a?n&1|2:n&1),z&&Oi(t,r.treeForkCount),e);case 22:case 23:return lo(t),no(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(Rc(t),t.subtreeFlags&6&&(t.flags|=8192)):Rc(t),n=t.updateQueue,n!==null&&Ic(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&P(va),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Yi(sa),Rc(t),null;case 25:return null;case 30:return null}throw Error(i(156,t.tag))}function Bc(e,t){switch(ji(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Yi(sa),pe(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return he(t),null;case 31:if(t.memoizedState!==null){if(lo(t),t.alternate===null)throw Error(i(340));Hi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(lo(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));Hi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return P(uo),null;case 4:return pe(),null;case 10:return Yi(t.type),null;case 22:case 23:return lo(t),no(),e!==null&&P(va),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Yi(sa),null;case 25:return null;default:return null}}function Vc(e,t){switch(ji(t),t.tag){case 3:Yi(sa),pe();break;case 26:case 27:case 5:he(t);break;case 4:pe();break;case 31:t.memoizedState!==null&&lo(t);break;case 13:lo(t);break;case 19:P(uo);break;case 10:Yi(t.type);break;case 22:case 23:lo(t),no(),e!==null&&P(va);break;case 24:Yi(sa)}}function Hc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Z(t,t.return,e)}}function Uc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Z(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Z(t,t.return,e)}}function Wc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Za(t,n)}catch(t){Z(e,e.return,t)}}}function Gc(e,t,n){n.props=Ks(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Z(e,t,n)}}function Kc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Z(e,t,n)}}function qc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Z(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Z(e,t,n)}else n.current=null}function Jc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Z(e,e.return,t)}}function Yc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[lt]=t}catch(t){Z(e,e.return,t)}}function Xc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(e.type)||e.tag===4}function Zc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Xc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Zd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Qc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=tn));else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Qc(e,t,n),e=e.sibling;e!==null;)Qc(e,t,n),e=e.sibling}function $c(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for($c(e,t,n),e=e.sibling;e!==null;)$c(e,t,n),e=e.sibling}function el(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Pd(t,r,n),t[ct]=e,t[lt]=n}catch(t){Z(e,e.return,t)}}var tl=!1,nl=!1,rl=!1,il=typeof WeakSet==`function`?WeakSet:Set,al=null;function ol(e,t){if(e=e.containerInfo,Rd=sp,e=Dr(e),Or(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(zd={focusedElem:e,selectionRange:n},sp=!1,al=t;al!==null;)if(t=al,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,al=e;else for(;al!==null;){switch(t=al,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n title`))),Pd(o,r,n),o[ct]=e,xt(o),r=o;break a;case`link`:var s=Vf(`link`,`href`,a).get(r+(n.href||``));if(s){for(var c=0;cg&&(o=g,g=h,h=o);var _=Tr(s,h),v=Tr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;sn?32:n,M.T=null,n=lu,lu=null;var o=au,s=su;if(iu=0,ou=au=null,su=0,K&6)throw Error(i(331));var c=K;if(K|=4,Pl(o.current),El(o,o.current,s,n),K=c,id(0,!1),Le&&typeof Le.onPostCommitFiberRoot==`function`)try{Le.onPostCommitFiberRoot(Ie,o)}catch{}return!0}finally{N.p=a,M.T=r,Vu(e,t)}}function Wu(e,t,n){t=vi(n,t),t=Qs(e.stateNode,t,2),e=Wa(e,t,2),e!==null&&(Qe(e,2),rd(e))}function Z(e,t,n){if(e.tag===3)Wu(e,e,n);else for(;t!==null;){if(t.tag===3){Wu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(ru===null||!ru.has(r))){e=vi(n,e),n=$s(2),r=Wa(t,n,2),r!==null&&(ec(n,r,t,e),Qe(r,2),rd(r));break}}t=t.return}}function Gu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Rl;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Hl=!0,i.add(n),e=Ku.bind(null,e,t,n),t.then(e,e))}function Ku(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,q===e&&(Y&n)===n&&(Wl===4||Wl===3&&(Y&62914560)===Y&&300>De()-$l?!(K&2)&&Su(e,0):ql|=n,Yl===Y&&(Yl=0)),rd(e)}function qu(e,t){t===0&&(t=Xe()),e=ri(e,t),e!==null&&(Qe(e,t),rd(e))}function Ju(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qu(e,n)}function Yu(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),qu(e,n)}function Xu(e,t){return Ce(e,t)}var Zu=null,Qu=null,$u=!1,ed=!1,td=!1,nd=0;function rd(e){e!==Qu&&e.next===null&&(Qu===null?Zu=Qu=e:Qu=Qu.next=e),ed=!0,$u||($u=!0,ud())}function id(e,t){if(!td&&ed){td=!0;do for(var n=!1,r=Zu;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-ze(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,ld(r,a))}else a=Y,a=qe(r,r===q?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||Je(r,a)||(n=!0,ld(r,a));r=r.next}while(n);td=!1}}function ad(){od()}function od(){ed=$u=!1;var e=0;nd!==0&&Gd()&&(e=nd);for(var t=De(),n=null,r=Zu;r!==null;){var i=r.next,a=sd(r,t);a===0?(r.next=null,n===null?Zu=i:n.next=i,i===null&&(Qu=n)):(n=r,(e!==0||a&3)&&(ed=!0)),r=i}iu!==0&&iu!==5||id(e,!1),nd!==0&&(nd=0)}function sd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0s)break;var u=c.transferSize,d=c.initiatorType;u&&Id(d)&&(c=c.responseEnd,o+=u*(c`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=Bt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Pd(t,`link`,e),xt(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Bt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Bt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Bt(n.imageSizes)+`"]`)):i+=`[href="`+Bt(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=f({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Pd(t,`link`,e),xt(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Bt(r)+`"][href="`+Bt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=f({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Pd(r,`link`,e),xt(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=bt(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=f({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);xt(c),Pd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=bt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=f({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),xt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=bt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=f({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),xt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var a=(a=ue.current)?gf(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=bt(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var o=bt(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(jf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),o||Nf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=bt(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Af(e){return`href="`+Bt(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return f({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Pd(t,`link`,n),xt(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Bt(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Bt(n.href)+`"]`);if(r)return t.instance=r,xt(r),r;var a=f({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),xt(r),Pd(r,`style`,a),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Af(n.href);var o=e.querySelector(jf(a));if(o)return t.state.loading|=4,t.instance=o,xt(o),o;r=Mf(n),(a=mf.get(a))&&Rf(r,a),o=(e.ownerDocument||e).createElement(`link`),xt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Pd(o,`link`,r),t.state.loading|=4,Lf(o,n.precedence,e),t.instance=o;case`script`:return o=Pf(n.src),(a=e.querySelector(Ff(o)))?(t.instance=a,xt(a),a):(r=n,(a=mf.get(o))&&(r=f({},n),zf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),xt(a),Pd(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,xt(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),xt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=v()})),b=s(((e,t)=>{t.exports=typeof global==`object`&&global&&global.Object===Object&&global})),x=s(((e,t)=>{var n=b(),r=typeof self==`object`&&self&&self.Object===Object&&self;t.exports=n||r||Function(`return this`)()})),S=s(((e,t)=>{t.exports=x().Symbol})),C=s(((e,t)=>{var n=S(),r=Object.prototype,i=r.hasOwnProperty,a=r.toString,o=n?n.toStringTag:void 0;function s(e){var t=i.call(e,o),n=e[o];try{e[o]=void 0;var r=!0}catch{}var s=a.call(e);return r&&(t?e[o]=n:delete e[o]),s}t.exports=s})),w=s(((e,t)=>{var n=Object.prototype.toString;function r(e){return n.call(e)}t.exports=r})),T=s(((e,t)=>{var n=S(),r=C(),i=w(),a=`[object Null]`,o=`[object Undefined]`,s=n?n.toStringTag:void 0;function c(e){return e==null?e===void 0?o:a:s&&s in Object(e)?r(e):i(e)}t.exports=c})),E=s(((e,t)=>{function n(e){return typeof e==`object`&&!!e}t.exports=n})),D=s(((e,t)=>{var n=T(),r=E(),i=`[object Symbol]`;function a(e){return typeof e==`symbol`||r(e)&&n(e)==i}t.exports=a})),O=s(((e,t)=>{var n=D();function r(e,t,r){for(var i=-1,a=e.length;++i{function n(e,t){return e>t}t.exports=n})),ee=s(((e,t)=>{function n(){this.__data__=[],this.size=0}t.exports=n})),A=s(((e,t)=>{function n(e,t){return e===t||e!==e&&t!==t}t.exports=n})),te=s(((e,t)=>{var n=A();function r(e,t){for(var r=e.length;r--;)if(n(e[r][0],t))return r;return-1}t.exports=r})),ne=s(((e,t)=>{var n=te(),r=Array.prototype.splice;function i(e){var t=this.__data__,i=n(t,e);return i<0?!1:(i==t.length-1?t.pop():r.call(t,i,1),--this.size,!0)}t.exports=i})),j=s(((e,t)=>{var n=te();function r(e){var t=this.__data__,r=n(t,e);return r<0?void 0:t[r][1]}t.exports=r})),re=s(((e,t)=>{var n=te();function r(e){return n(this.__data__,e)>-1}t.exports=r})),M=s(((e,t)=>{var n=te();function r(e,t){var r=this.__data__,i=n(r,e);return i<0?(++this.size,r.push([e,t])):r[i][1]=t,this}t.exports=r})),N=s(((e,t)=>{var n=ee(),r=ne(),i=j(),a=re(),o=M();function s(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t{var n=N();function r(){this.__data__=new n,this.size=0}t.exports=r})),ae=s(((e,t)=>{function n(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}t.exports=n})),oe=s(((e,t)=>{function n(e){return this.__data__.get(e)}t.exports=n})),se=s(((e,t)=>{function n(e){return this.__data__.has(e)}t.exports=n})),P=s(((e,t)=>{function n(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}t.exports=n})),F=s(((e,t)=>{var n=T(),r=P(),i=`[object AsyncFunction]`,a=`[object Function]`,o=`[object GeneratorFunction]`,s=`[object Proxy]`;function c(e){if(!r(e))return!1;var t=n(e);return t==a||t==o||t==i||t==s}t.exports=c})),ce=s(((e,t)=>{t.exports=x()[`__core-js_shared__`]})),le=s(((e,t)=>{var n=ce(),r=function(){var e=/[^.]+$/.exec(n&&n.keys&&n.keys.IE_PROTO||``);return e?`Symbol(src)_1.`+e:``}();function i(e){return!!r&&r in e}t.exports=i})),ue=s(((e,t)=>{var n=Function.prototype.toString;function r(e){if(e!=null){try{return n.call(e)}catch{}try{return e+``}catch{}}return``}t.exports=r})),de=s(((e,t)=>{var n=F(),r=le(),i=P(),a=ue(),o=/[\\^$.*+?()[\]{}|]/g,s=/^\[object .+?Constructor\]$/,c=Function.prototype,l=Object.prototype,u=c.toString,d=l.hasOwnProperty,f=RegExp(`^`+u.call(d).replace(o,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`);function p(e){return!i(e)||r(e)?!1:(n(e)?f:s).test(a(e))}t.exports=p})),fe=s(((e,t)=>{function n(e,t){return e?.[t]}t.exports=n})),pe=s(((e,t)=>{var n=de(),r=fe();function i(e,t){var i=r(e,t);return n(i)?i:void 0}t.exports=i})),me=s(((e,t)=>{t.exports=pe()(x(),`Map`)})),he=s(((e,t)=>{t.exports=pe()(Object,`create`)})),ge=s(((e,t)=>{var n=he();function r(){this.__data__=n?n(null):{},this.size=0}t.exports=r})),_e=s(((e,t)=>{function n(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=+!!t,t}t.exports=n})),I=s(((e,t)=>{var n=he(),r=`__lodash_hash_undefined__`,i=Object.prototype.hasOwnProperty;function a(e){var t=this.__data__;if(n){var a=t[e];return a===r?void 0:a}return i.call(t,e)?t[e]:void 0}t.exports=a})),ve=s(((e,t)=>{var n=he(),r=Object.prototype.hasOwnProperty;function i(e){var t=this.__data__;return n?t[e]!==void 0:r.call(t,e)}t.exports=i})),ye=s(((e,t)=>{var n=he(),r=`__lodash_hash_undefined__`;function i(e,t){var i=this.__data__;return this.size+=+!this.has(e),i[e]=n&&t===void 0?r:t,this}t.exports=i})),be=s(((e,t)=>{var n=ge(),r=_e(),i=I(),a=ve(),o=ye();function s(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t{var n=be(),r=N(),i=me();function a(){this.size=0,this.__data__={hash:new n,map:new(i||r),string:new n}}t.exports=a})),Se=s(((e,t)=>{function n(e){var t=typeof e;return t==`string`||t==`number`||t==`symbol`||t==`boolean`?e!==`__proto__`:e===null}t.exports=n})),Ce=s(((e,t)=>{var n=Se();function r(e,t){var r=e.__data__;return n(t)?r[typeof t==`string`?`string`:`hash`]:r.map}t.exports=r})),we=s(((e,t)=>{var n=Ce();function r(e){var t=n(this,e).delete(e);return this.size-=+!!t,t}t.exports=r})),Te=s(((e,t)=>{var n=Ce();function r(e){return n(this,e).get(e)}t.exports=r})),Ee=s(((e,t)=>{var n=Ce();function r(e){return n(this,e).has(e)}t.exports=r})),De=s(((e,t)=>{var n=Ce();function r(e,t){var r=n(this,e),i=r.size;return r.set(e,t),this.size+=r.size==i?0:1,this}t.exports=r})),Oe=s(((e,t)=>{var n=xe(),r=we(),i=Te(),a=Ee(),o=De();function s(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t{var n=N(),r=me(),i=Oe(),a=200;function o(e,t){var o=this.__data__;if(o instanceof n){var s=o.__data__;if(!r||s.length{var n=N(),r=ie(),i=ae(),a=oe(),o=se(),s=ke();function c(e){var t=this.__data__=new n(e);this.size=t.size}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,t.exports=c})),je=s(((e,t)=>{var n=`__lodash_hash_undefined__`;function r(e){return this.__data__.set(e,n),this}t.exports=r})),Me=s(((e,t)=>{function n(e){return this.__data__.has(e)}t.exports=n})),Ne=s(((e,t)=>{var n=Oe(),r=je(),i=Me();function a(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new n;++t{function n(e,t){for(var n=-1,r=e==null?0:e.length;++n{function n(e,t){return e.has(t)}t.exports=n})),Ie=s(((e,t)=>{var n=Ne(),r=Pe(),i=Fe(),a=1,o=2;function s(e,t,s,c,l,u){var d=s&a,f=e.length,p=t.length;if(f!=p&&!(d&&p>f))return!1;var m=u.get(e),h=u.get(t);if(m&&h)return m==t&&h==e;var g=-1,_=!0,v=s&o?new n:void 0;for(u.set(e,t),u.set(t,e);++g{t.exports=x().Uint8Array})),Re=s(((e,t)=>{function n(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}t.exports=n})),ze=s(((e,t)=>{function n(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}t.exports=n})),Be=s(((e,t)=>{var n=S(),r=Le(),i=A(),a=Ie(),o=Re(),s=ze(),c=1,l=2,u=`[object Boolean]`,d=`[object Date]`,f=`[object Error]`,p=`[object Map]`,m=`[object Number]`,h=`[object RegExp]`,g=`[object Set]`,_=`[object String]`,v=`[object Symbol]`,y=`[object ArrayBuffer]`,b=`[object DataView]`,x=n?n.prototype:void 0,C=x?x.valueOf:void 0;function w(e,t,n,x,S,w,T){switch(n){case b:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case y:return!(e.byteLength!=t.byteLength||!w(new r(e),new r(t)));case u:case d:case m:return i(+e,+t);case f:return e.name==t.name&&e.message==t.message;case h:case _:return e==t+``;case p:var E=o;case g:var D=x&c;if(E||=s,e.size!=t.size&&!D)return!1;var O=T.get(e);if(O)return O==t;x|=l,T.set(e,t);var k=a(E(e),E(t),x,S,w,T);return T.delete(e),k;case v:if(C)return C.call(e)==C.call(t)}return!1}t.exports=w})),Ve=s(((e,t)=>{function n(e,t){for(var n=-1,r=t.length,i=e.length;++n{t.exports=Array.isArray})),Ue=s(((e,t)=>{var n=Ve(),r=He();function i(e,t,i){var a=t(e);return r(e)?a:n(a,i(e))}t.exports=i})),We=s(((e,t)=>{function n(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n{function n(){return[]}t.exports=n})),Ke=s(((e,t)=>{var n=We(),r=Ge(),i=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols;t.exports=a?function(e){return e==null?[]:(e=Object(e),n(a(e),function(t){return i.call(e,t)}))}:r})),qe=s(((e,t)=>{function n(e,t){for(var n=-1,r=Array(e);++n{var n=T(),r=E(),i=`[object Arguments]`;function a(e){return r(e)&&n(e)==i}t.exports=a})),Ye=s(((e,t)=>{var n=Je(),r=E(),i=Object.prototype,a=i.hasOwnProperty,o=i.propertyIsEnumerable;t.exports=n(function(){return arguments}())?n:function(e){return r(e)&&a.call(e,`callee`)&&!o.call(e,`callee`)}})),Xe=s(((e,t)=>{function n(){return!1}t.exports=n})),Ze=s(((e,t)=>{var n=x(),r=Xe(),i=typeof e==`object`&&e&&!e.nodeType&&e,a=i&&typeof t==`object`&&t&&!t.nodeType&&t,o=a&&a.exports===i?n.Buffer:void 0;t.exports=(o?o.isBuffer:void 0)||r})),Qe=s(((e,t)=>{var n=9007199254740991,r=/^(?:0|[1-9]\d*)$/;function i(e,t){var i=typeof e;return t??=n,!!t&&(i==`number`||i!=`symbol`&&r.test(e))&&e>-1&&e%1==0&&e{var n=9007199254740991;function r(e){return typeof e==`number`&&e>-1&&e%1==0&&e<=n}t.exports=r})),et=s(((e,t)=>{var n=T(),r=$e(),i=E(),a=`[object Arguments]`,o=`[object Array]`,s=`[object Boolean]`,c=`[object Date]`,l=`[object Error]`,u=`[object Function]`,d=`[object Map]`,f=`[object Number]`,p=`[object Object]`,m=`[object RegExp]`,h=`[object Set]`,g=`[object String]`,_=`[object WeakMap]`,v=`[object ArrayBuffer]`,y=`[object DataView]`,b=`[object Float32Array]`,x=`[object Float64Array]`,S=`[object Int8Array]`,C=`[object Int16Array]`,w=`[object Int32Array]`,D=`[object Uint8Array]`,O=`[object Uint8ClampedArray]`,k=`[object Uint16Array]`,ee=`[object Uint32Array]`,A={};A[b]=A[x]=A[S]=A[C]=A[w]=A[D]=A[O]=A[k]=A[ee]=!0,A[a]=A[o]=A[v]=A[s]=A[y]=A[c]=A[l]=A[u]=A[d]=A[f]=A[p]=A[m]=A[h]=A[g]=A[_]=!1;function te(e){return i(e)&&r(e.length)&&!!A[n(e)]}t.exports=te})),tt=s(((e,t)=>{function n(e){return function(t){return e(t)}}t.exports=n})),nt=s(((e,t)=>{var n=b(),r=typeof e==`object`&&e&&!e.nodeType&&e,i=r&&typeof t==`object`&&t&&!t.nodeType&&t,a=i&&i.exports===r&&n.process;t.exports=function(){try{return i&&i.require&&i.require(`util`).types||a&&a.binding&&a.binding(`util`)}catch{}}()})),rt=s(((e,t)=>{var n=et(),r=tt(),i=nt(),a=i&&i.isTypedArray;t.exports=a?r(a):n})),it=s(((e,t)=>{var n=qe(),r=Ye(),i=He(),a=Ze(),o=Qe(),s=rt(),c=Object.prototype.hasOwnProperty;function l(e,t){var l=i(e),u=!l&&r(e),d=!l&&!u&&a(e),f=!l&&!u&&!d&&s(e),p=l||u||d||f,m=p?n(e.length,String):[],h=m.length;for(var g in e)(t||c.call(e,g))&&!(p&&(g==`length`||d&&(g==`offset`||g==`parent`)||f&&(g==`buffer`||g==`byteLength`||g==`byteOffset`)||o(g,h)))&&m.push(g);return m}t.exports=l})),at=s(((e,t)=>{var n=Object.prototype;function r(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||n)}t.exports=r})),ot=s(((e,t)=>{function n(e,t){return function(n){return e(t(n))}}t.exports=n})),st=s(((e,t)=>{t.exports=ot()(Object.keys,Object)})),ct=s(((e,t)=>{var n=at(),r=st(),i=Object.prototype.hasOwnProperty;function a(e){if(!n(e))return r(e);var t=[];for(var a in Object(e))i.call(e,a)&&a!=`constructor`&&t.push(a);return t}t.exports=a})),lt=s(((e,t)=>{var n=F(),r=$e();function i(e){return e!=null&&r(e.length)&&!n(e)}t.exports=i})),ut=s(((e,t)=>{var n=it(),r=ct(),i=lt();function a(e){return i(e)?n(e):r(e)}t.exports=a})),dt=s(((e,t)=>{var n=Ue(),r=Ke(),i=ut();function a(e){return n(e,i,r)}t.exports=a})),ft=s(((e,t)=>{var n=dt(),r=1,i=Object.prototype.hasOwnProperty;function a(e,t,a,o,s,c){var l=a&r,u=n(e),d=u.length;if(d!=n(t).length&&!l)return!1;for(var f=d;f--;){var p=u[f];if(!(l?p in t:i.call(t,p)))return!1}var m=c.get(e),h=c.get(t);if(m&&h)return m==t&&h==e;var g=!0;c.set(e,t),c.set(t,e);for(var _=l;++f{t.exports=pe()(x(),`DataView`)})),mt=s(((e,t)=>{t.exports=pe()(x(),`Promise`)})),ht=s(((e,t)=>{t.exports=pe()(x(),`Set`)})),gt=s(((e,t)=>{t.exports=pe()(x(),`WeakMap`)})),_t=s(((e,t)=>{var n=pt(),r=me(),i=mt(),a=ht(),o=gt(),s=T(),c=ue(),l=`[object Map]`,u=`[object Object]`,d=`[object Promise]`,f=`[object Set]`,p=`[object WeakMap]`,m=`[object DataView]`,h=c(n),g=c(r),_=c(i),v=c(a),y=c(o),b=s;(n&&b(new n(new ArrayBuffer(1)))!=m||r&&b(new r)!=l||i&&b(i.resolve())!=d||a&&b(new a)!=f||o&&b(new o)!=p)&&(b=function(e){var t=s(e),n=t==u?e.constructor:void 0,r=n?c(n):``;if(r)switch(r){case h:return m;case g:return l;case _:return d;case v:return f;case y:return p}return t}),t.exports=b})),vt=s(((e,t)=>{var n=Ae(),r=Ie(),i=Be(),a=ft(),o=_t(),s=He(),c=Ze(),l=rt(),u=1,d=`[object Arguments]`,f=`[object Array]`,p=`[object Object]`,m=Object.prototype.hasOwnProperty;function h(e,t,h,g,_,v){var y=s(e),b=s(t),x=y?f:o(e),S=b?f:o(t);x=x==d?p:x,S=S==d?p:S;var C=x==p,w=S==p,T=x==S;if(T&&c(e)){if(!c(t))return!1;y=!0,C=!1}if(T&&!C)return v||=new n,y||l(e)?r(e,t,h,g,_,v):i(e,t,x,h,g,_,v);if(!(h&u)){var E=C&&m.call(e,`__wrapped__`),D=w&&m.call(t,`__wrapped__`);if(E||D){var O=E?e.value():e,k=D?t.value():t;return v||=new n,_(O,k,h,g,v)}}return T?(v||=new n,a(e,t,h,g,_,v)):!1}t.exports=h})),yt=s(((e,t)=>{var n=vt(),r=E();function i(e,t,a,o,s){return e===t?!0:e==null||t==null||!r(e)&&!r(t)?e!==e&&t!==t:n(e,t,a,o,i,s)}t.exports=i})),bt=s(((e,t)=>{var n=Ae(),r=yt(),i=1,a=2;function o(e,t,o,s){var c=o.length,l=c,u=!s;if(e==null)return!l;for(e=Object(e);c--;){var d=o[c];if(u&&d[2]?d[1]!==e[d[0]]:!(d[0]in e))return!1}for(;++c{var n=P();function r(e){return e===e&&!n(e)}t.exports=r})),St=s(((e,t)=>{var n=xt(),r=ut();function i(e){for(var t=r(e),i=t.length;i--;){var a=t[i],o=e[a];t[i]=[a,o,n(o)]}return t}t.exports=i})),Ct=s(((e,t)=>{function n(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}t.exports=n})),wt=s(((e,t)=>{var n=bt(),r=St(),i=Ct();function a(e){var t=r(e);return t.length==1&&t[0][2]?i(t[0][0],t[0][1]):function(r){return r===e||n(r,e,t)}}t.exports=a})),Tt=s(((e,t)=>{var n=He(),r=D(),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;function o(e,t){if(n(e))return!1;var o=typeof e;return o==`number`||o==`symbol`||o==`boolean`||e==null||r(e)?!0:a.test(e)||!i.test(e)||t!=null&&e in Object(t)}t.exports=o})),Et=s(((e,t)=>{var n=Oe(),r=`Expected a function`;function i(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw TypeError(r);var a=function(){var n=arguments,r=t?t.apply(this,n):n[0],i=a.cache;if(i.has(r))return i.get(r);var o=e.apply(this,n);return a.cache=i.set(r,o)||i,o};return a.cache=new(i.Cache||n),a}i.Cache=n,t.exports=i})),Dt=s(((e,t)=>{var n=Et(),r=500;function i(e){var t=n(e,function(e){return i.size===r&&i.clear(),e}),i=t.cache;return t}t.exports=i})),Ot=s(((e,t)=>{var n=Dt(),r=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g;t.exports=n(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(``),e.replace(r,function(e,n,r,a){t.push(r?a.replace(i,`$1`):n||e)}),t})})),kt=s(((e,t)=>{function n(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n{var n=S(),r=kt(),i=He(),a=D(),o=1/0,s=n?n.prototype:void 0,c=s?s.toString:void 0;function l(e){if(typeof e==`string`)return e;if(i(e))return r(e,l)+``;if(a(e))return c?c.call(e):``;var t=e+``;return t==`0`&&1/e==-o?`-0`:t}t.exports=l})),jt=s(((e,t)=>{var n=At();function r(e){return e==null?``:n(e)}t.exports=r})),Mt=s(((e,t)=>{var n=He(),r=Tt(),i=Ot(),a=jt();function o(e,t){return n(e)?e:r(e,t)?[e]:i(a(e))}t.exports=o})),Nt=s(((e,t)=>{var n=D(),r=1/0;function i(e){if(typeof e==`string`||n(e))return e;var t=e+``;return t==`0`&&1/e==-r?`-0`:t}t.exports=i})),Pt=s(((e,t)=>{var n=Mt(),r=Nt();function i(e,t){t=n(t,e);for(var i=0,a=t.length;e!=null&&i{var n=Pt();function r(e,t,r){var i=e==null?void 0:n(e,t);return i===void 0?r:i}t.exports=r})),It=s(((e,t)=>{function n(e,t){return e!=null&&t in Object(e)}t.exports=n})),Lt=s(((e,t)=>{var n=Mt(),r=Ye(),i=He(),a=Qe(),o=$e(),s=Nt();function c(e,t,c){t=n(t,e);for(var l=-1,u=t.length,d=!1;++l{var n=It(),r=Lt();function i(e,t){return e!=null&&r(e,t,n)}t.exports=i})),zt=s(((e,t)=>{var n=yt(),r=Ft(),i=Rt(),a=Tt(),o=xt(),s=Ct(),c=Nt(),l=1,u=2;function d(e,t){return a(e)&&o(t)?s(c(e),t):function(a){var o=r(a,e);return o===void 0&&o===t?i(a,e):n(t,o,l|u)}}t.exports=d})),Bt=s(((e,t)=>{function n(e){return e}t.exports=n})),Vt=s(((e,t)=>{function n(e){return function(t){return t?.[e]}}t.exports=n})),Ht=s(((e,t)=>{var n=Pt();function r(e){return function(t){return n(t,e)}}t.exports=r})),Ut=s(((e,t)=>{var n=Vt(),r=Ht(),i=Tt(),a=Nt();function o(e){return i(e)?n(a(e)):r(e)}t.exports=o})),Wt=s(((e,t)=>{var n=wt(),r=zt(),i=Bt(),a=He(),o=Ut();function s(e){return typeof e==`function`?e:e==null?i:typeof e==`object`?a(e)?r(e[0],e[1]):n(e):o(e)}t.exports=s})),Gt=s(((e,t)=>{var n=O(),r=k(),i=Wt();function a(e,t){return e&&e.length?n(e,i(t,2),r):void 0}t.exports=a})),Kt=s(((e,t)=>{var n=ct(),r=_t(),i=Ye(),a=He(),o=lt(),s=Ze(),c=at(),l=rt(),u=`[object Map]`,d=`[object Set]`,f=Object.prototype.hasOwnProperty;function p(e){if(e==null)return!0;if(o(e)&&(a(e)||typeof e==`string`||typeof e.splice==`function`||s(e)||l(e)||i(e)))return!e.length;var t=r(e);if(t==u||t==d)return!e.size;if(c(e))return!n(e).length;for(var p in e)if(f.call(e,p))return!1;return!0}t.exports=p})),qt=s(((e,t)=>{function n(e,t,n,r){var i=-1,a=e==null?0:e.length;for(r&&a&&(n=e[++i]);++i{function n(e){return function(t){return e?.[t]}}t.exports=n})),Yt=s(((e,t)=>{t.exports=Jt()({À:`A`,Á:`A`,Â:`A`,Ã:`A`,Ä:`A`,Å:`A`,à:`a`,á:`a`,â:`a`,ã:`a`,ä:`a`,å:`a`,Ç:`C`,ç:`c`,Ð:`D`,ð:`d`,È:`E`,É:`E`,Ê:`E`,Ë:`E`,è:`e`,é:`e`,ê:`e`,ë:`e`,Ì:`I`,Í:`I`,Î:`I`,Ï:`I`,ì:`i`,í:`i`,î:`i`,ï:`i`,Ñ:`N`,ñ:`n`,Ò:`O`,Ó:`O`,Ô:`O`,Õ:`O`,Ö:`O`,Ø:`O`,ò:`o`,ó:`o`,ô:`o`,õ:`o`,ö:`o`,ø:`o`,Ù:`U`,Ú:`U`,Û:`U`,Ü:`U`,ù:`u`,ú:`u`,û:`u`,ü:`u`,Ý:`Y`,ý:`y`,ÿ:`y`,Æ:`Ae`,æ:`ae`,Þ:`Th`,þ:`th`,ß:`ss`,Ā:`A`,Ă:`A`,Ą:`A`,ā:`a`,ă:`a`,ą:`a`,Ć:`C`,Ĉ:`C`,Ċ:`C`,Č:`C`,ć:`c`,ĉ:`c`,ċ:`c`,č:`c`,Ď:`D`,Đ:`D`,ď:`d`,đ:`d`,Ē:`E`,Ĕ:`E`,Ė:`E`,Ę:`E`,Ě:`E`,ē:`e`,ĕ:`e`,ė:`e`,ę:`e`,ě:`e`,Ĝ:`G`,Ğ:`G`,Ġ:`G`,Ģ:`G`,ĝ:`g`,ğ:`g`,ġ:`g`,ģ:`g`,Ĥ:`H`,Ħ:`H`,ĥ:`h`,ħ:`h`,Ĩ:`I`,Ī:`I`,Ĭ:`I`,Į:`I`,İ:`I`,ĩ:`i`,ī:`i`,ĭ:`i`,į:`i`,ı:`i`,Ĵ:`J`,ĵ:`j`,Ķ:`K`,ķ:`k`,ĸ:`k`,Ĺ:`L`,Ļ:`L`,Ľ:`L`,Ŀ:`L`,Ł:`L`,ĺ:`l`,ļ:`l`,ľ:`l`,ŀ:`l`,ł:`l`,Ń:`N`,Ņ:`N`,Ň:`N`,Ŋ:`N`,ń:`n`,ņ:`n`,ň:`n`,ŋ:`n`,Ō:`O`,Ŏ:`O`,Ő:`O`,ō:`o`,ŏ:`o`,ő:`o`,Ŕ:`R`,Ŗ:`R`,Ř:`R`,ŕ:`r`,ŗ:`r`,ř:`r`,Ś:`S`,Ŝ:`S`,Ş:`S`,Š:`S`,ś:`s`,ŝ:`s`,ş:`s`,š:`s`,Ţ:`T`,Ť:`T`,Ŧ:`T`,ţ:`t`,ť:`t`,ŧ:`t`,Ũ:`U`,Ū:`U`,Ŭ:`U`,Ů:`U`,Ű:`U`,Ų:`U`,ũ:`u`,ū:`u`,ŭ:`u`,ů:`u`,ű:`u`,ų:`u`,Ŵ:`W`,ŵ:`w`,Ŷ:`Y`,ŷ:`y`,Ÿ:`Y`,Ź:`Z`,Ż:`Z`,Ž:`Z`,ź:`z`,ż:`z`,ž:`z`,IJ:`IJ`,ij:`ij`,Œ:`Oe`,œ:`oe`,ʼn:`'n`,ſ:`s`})})),Xt=s(((e,t)=>{var n=Yt(),r=jt(),i=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,a=RegExp(`[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]`,`g`);function o(e){return e=r(e),e&&e.replace(i,n).replace(a,``)}t.exports=o})),Zt=s(((e,t)=>{var n=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function r(e){return e.match(n)||[]}t.exports=r})),Qt=s(((e,t)=>{var n=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function r(e){return n.test(e)}t.exports=r})),$t=s(((e,t)=>{var n=`\\ud800-\\udfff`,r=`\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff`,i=`\\u2700-\\u27bf`,a=`a-z\\xdf-\\xf6\\xf8-\\xff`,o=`\\xac\\xb1\\xd7\\xf7`,s=`\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf`,c=`\\u2000-\\u206f`,l=` \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000`,u=`A-Z\\xc0-\\xd6\\xd8-\\xde`,d=`\\ufe0e\\ufe0f`,f=o+s+c+l,p=`['’]`,m=`[`+f+`]`,h=`[`+r+`]`,g=`\\d+`,_=`[`+i+`]`,v=`[`+a+`]`,y=`[^`+n+f+g+i+a+u+`]`,b=`(?:`+h+`|\\ud83c[\\udffb-\\udfff])`,x=`[^`+n+`]`,S=`(?:\\ud83c[\\udde6-\\uddff]){2}`,C=`[\\ud800-\\udbff][\\udc00-\\udfff]`,w=`[`+u+`]`,T=`\\u200d`,E=`(?:`+v+`|`+y+`)`,D=`(?:`+w+`|`+y+`)`,O=`(?:`+p+`(?:d|ll|m|re|s|t|ve))?`,k=`(?:`+p+`(?:D|LL|M|RE|S|T|VE))?`,ee=b+`?`,A=`[`+d+`]?`,te=`(?:`+T+`(?:`+[x,S,C].join(`|`)+`)`+A+ee+`)*`,ne=`\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])`,j=`\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])`,re=A+ee+te,M=`(?:`+[_,S,C].join(`|`)+`)`+re,N=RegExp([w+`?`+v+`+`+O+`(?=`+[m,w,`$`].join(`|`)+`)`,D+`+`+k+`(?=`+[m,w+E,`$`].join(`|`)+`)`,w+`?`+E+`+`+O,w+`+`+k,j,ne,g,M].join(`|`),`g`);function ie(e){return e.match(N)||[]}t.exports=ie})),en=s(((e,t)=>{var n=Zt(),r=Qt(),i=jt(),a=$t();function o(e,t,o){return e=i(e),t=o?void 0:t,t===void 0?r(e)?a(e):n(e):e.match(t)||[]}t.exports=o})),tn=s(((e,t)=>{var n=qt(),r=Xt(),i=en(),a=RegExp(`['’]`,`g`);function o(e){return function(t){return n(i(r(t).replace(a,``)),e,``)}}t.exports=o})),nn=s(((e,t)=>{function n(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),n=n>i?i:n,n<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var a=Array(i);++r{var n=nn();function r(e,t,r){var i=e.length;return r=r===void 0?i:r,!t&&r>=i?e:n(e,t,r)}t.exports=r})),an=s(((e,t)=>{var n=RegExp(`[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]`);function r(e){return n.test(e)}t.exports=r})),on=s(((e,t)=>{function n(e){return e.split(``)}t.exports=n})),sn=s(((e,t)=>{var n=`\\ud800-\\udfff`,r=`\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff`,i=`\\ufe0e\\ufe0f`,a=`[`+n+`]`,o=`[`+r+`]`,s=`\\ud83c[\\udffb-\\udfff]`,c=`(?:`+o+`|`+s+`)`,l=`[^`+n+`]`,u=`(?:\\ud83c[\\udde6-\\uddff]){2}`,d=`[\\ud800-\\udbff][\\udc00-\\udfff]`,f=`\\u200d`,p=c+`?`,m=`[`+i+`]?`,h=`(?:`+f+`(?:`+[l,u,d].join(`|`)+`)`+m+p+`)*`,g=m+p+h,_=`(?:`+[l+o+`?`,o,u,d,a].join(`|`)+`)`,v=RegExp(s+`(?=`+s+`)|`+_+g,`g`);function y(e){return e.match(v)||[]}t.exports=y})),cn=s(((e,t)=>{var n=on(),r=an(),i=sn();function a(e){return r(e)?i(e):n(e)}t.exports=a})),ln=s(((e,t)=>{var n=rn(),r=an(),i=cn(),a=jt();function o(e){return function(t){t=a(t);var o=r(t)?i(t):void 0,s=o?o[0]:t.charAt(0),c=o?n(o,1).join(``):t.slice(1);return s[e]()+c}}t.exports=o})),un=s(((e,t)=>{t.exports=ln()(`toUpperCase`)})),dn=s(((e,t)=>{var n=tn(),r=un();t.exports=n(function(e,t,n){return e+(n?` `:``)+r(t)})})),fn=s(((e,t)=>{var n=Math.ceil,r=Math.max;function i(e,t,i,a){for(var o=-1,s=r(n((t-e)/(i||1)),0),c=Array(s);s--;)c[a?s:++o]=e,e+=i;return c}t.exports=i})),pn=s(((e,t)=>{var n=A(),r=lt(),i=Qe(),a=P();function o(e,t,o){if(!a(o))return!1;var s=typeof t;return(s==`number`?r(o)&&i(t,o.length):s==`string`&&t in o)?n(o[t],e):!1}t.exports=o})),mn=s(((e,t)=>{var n=/\s/;function r(e){for(var t=e.length;t--&&n.test(e.charAt(t)););return t}t.exports=r})),hn=s(((e,t)=>{var n=mn(),r=/^\s+/;function i(e){return e&&e.slice(0,n(e)+1).replace(r,``)}t.exports=i})),gn=s(((e,t)=>{var n=hn(),r=P(),i=D(),a=NaN,o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,c=/^0o[0-7]+$/i,l=parseInt;function u(e){if(typeof e==`number`)return e;if(i(e))return a;if(r(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=r(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=n(e);var u=s.test(e);return u||c.test(e)?l(e.slice(2),u?2:8):o.test(e)?a:+e}t.exports=u})),_n=s(((e,t)=>{var n=gn(),r=1/0,i=17976931348623157e292;function a(e){return e?(e=n(e),e===r||e===-r?(e<0?-1:1)*i:e===e?e:0):e===0?e:0}t.exports=a})),vn=s(((e,t)=>{var n=fn(),r=pn(),i=_n();function a(e){return function(t,a,o){return o&&typeof o!=`number`&&r(t,a,o)&&(a=o=void 0),t=i(t),a===void 0?(a=t,t=0):a=i(a),o=o===void 0?t{t.exports=vn()()})),bn=s(((e,t)=>{var n=Object.prototype.hasOwnProperty;function r(e,t){return e!=null&&n.call(e,t)}t.exports=r})),xn=s(((e,t)=>{var n=bn(),r=Lt();function i(e,t){return e!=null&&r(e,t,n)}t.exports=i})),Sn=s(((e,t)=>{var n=Wt(),r=lt(),i=ut();function a(e){return function(t,a,o){var s=Object(t);if(!r(t)){var c=n(a,3);t=i(t),a=function(e){return c(s[e],e,s)}}var l=e(t,a,o);return l>-1?s[c?t[l]:l]:void 0}}t.exports=a})),Cn=s(((e,t)=>{function n(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a{var n=_n();function r(e){var t=n(e),r=t%1;return t===t?r?t-r:t:0}t.exports=r})),Tn=s(((e,t)=>{var n=Cn(),r=Wt(),i=wn(),a=Math.max;function o(e,t,o){var s=e==null?0:e.length;if(!s)return-1;var c=o==null?0:i(o);return c<0&&(c=a(s+c,0)),n(e,r(t,3),c)}t.exports=o})),En=s(((e,t)=>{t.exports=Sn()(Tn())})),Dn=s(((e,t)=>{function n(e){return e!==e}t.exports=n})),On=s(((e,t)=>{function n(e,t,n){for(var r=n-1,i=e.length;++r{var n=Cn(),r=Dn(),i=On();function a(e,t,a){return t===t?i(e,t,a):n(e,r,a)}t.exports=a})),An=s(((e,t)=>{var n=T(),r=He(),i=E(),a=`[object String]`;function o(e){return typeof e==`string`||!r(e)&&i(e)&&n(e)==a}t.exports=o})),jn=s(((e,t)=>{var n=kt();function r(e,t){return n(t,function(t){return e[t]})}t.exports=r})),Mn=s(((e,t)=>{var n=jn(),r=ut();function i(e){return e==null?[]:n(e,r(e))}t.exports=i})),Nn=s(((e,t)=>{var n=kn(),r=lt(),i=An(),a=wn(),o=Mn(),s=Math.max;function c(e,t,c,l){e=r(e)?e:o(e),c=c&&!l?a(c):0;var u=e.length;return c<0&&(c=s(u+c,0)),i(e)?c<=u&&e.indexOf(t,c)>-1:!!u&&n(e,t,c)>-1}t.exports=c})),Pn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;var t=class{};e._CodeOrName=t,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var n=class extends t{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw Error(`CodeGen: name must be a valid identifier`);this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};e.Name=n;var r=class extends t{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(){return this._str??=this._items.reduce((e,t)=>`${e}${t}`,``)}get names(){return this._names??=this._items.reduce((e,t)=>(t instanceof n&&(e[t.str]=(e[t.str]||0)+1),e),{})}};e._Code=r,e.nil=new r(``);function i(e,...t){let n=[e[0]],i=0;for(;i{Object.defineProperty(e,"__esModule",{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;var t=Pn(),n=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},r;(function(e){e[e.Started=0]=`Started`,e[e.Completed=1]=`Completed`})(r||(e.UsedValueState=r={})),e.varKinds={const:new t.Name(`const`),let:new t.Name(`let`),var:new t.Name(`var`)};var i=class{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof t.Name?e:this.name(e)}name(e){return new t.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){if((this._parent?._prefixes)?.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}}};e.Scope=i;var a=class extends t.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:n,itemIndex:r}){this.value=e,this.scopePath=(0,t._)`.${new t.Name(n)}[${r}]`}};e.ValueScopeName=a;var o=(0,t._)`\n`;e.ValueScope=class extends i{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?o:t.nil}}get(){return this._scope}name(e){return new a(e,this._newName(e))}value(e,t){if(t.ref===void 0)throw Error(`CodeGen: ref must be passed in value`);let n=this.toName(e),{prefix:r}=n,i=t.key??t.ref,a=this._values[r];if(a){let e=a.get(i);if(e)return e}else a=this._values[r]=new Map;a.set(i,n);let o=this._scope[r]||(this._scope[r]=[]),s=o.length;return o[s]=t.ref,n.setValue(t,{property:r,itemIndex:s}),n}getValue(e,t){let n=this._values[e];if(n)return n.get(t)}scopeRefs(e,n=this._values){return this._reduceValues(n,n=>{if(n.scopePath===void 0)throw Error(`CodeGen: name "${n}" has no value`);return(0,t._)`${e}${n.scopePath}`})}scopeCode(e=this._values,t,n){return this._reduceValues(e,e=>{if(e.value===void 0)throw Error(`CodeGen: name "${e}" has no value`);return e.value.code},t,n)}_reduceValues(i,a,o={},s){let c=t.nil;for(let l in i){let u=i[l];if(!u)continue;let d=o[l]=o[l]||new Map;u.forEach(i=>{if(d.has(i))return;d.set(i,r.Started);let o=a(i);if(o){let n=this.opts.es5?e.varKinds.var:e.varKinds.const;c=(0,t._)`${c}${n} ${i} = ${o};${this.opts._n}`}else if(o=s?.(i))c=(0,t._)`${c}${o}${this.opts._n}`;else throw new n(i);d.set(i,r.Completed)})}return c}}})),L=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;var t=Pn(),n=Fn(),r=Pn();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(e,"strConcat",{enumerable:!0,get:function(){return r.strConcat}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(e,"getProperty",{enumerable:!0,get:function(){return r.getProperty}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(e,"regexpCode",{enumerable:!0,get:function(){return r.regexpCode}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return r.Name}});var i=Fn();Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(e,"ValueScope",{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(e,"ValueScopeName",{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(e,"varKinds",{enumerable:!0,get:function(){return i.varKinds}}),e.operators={GT:new t._Code(`>`),GTE:new t._Code(`>=`),LT:new t._Code(`<`),LTE:new t._Code(`<=`),EQ:new t._Code(`===`),NEQ:new t._Code(`!==`),NOT:new t._Code(`!`),OR:new t._Code(`||`),AND:new t._Code(`&&`),ADD:new t._Code(`+`)};var a=class{optimizeNodes(){return this}optimizeNames(e,t){return this}},o=class extends a{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){let r=e?n.varKinds.var:this.varKind,i=this.rhs===void 0?``:` = ${this.rhs}`;return`${r} ${this.name}${i};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&=k(this.rhs,e,t),this}get names(){return this.rhs instanceof t._CodeOrName?this.rhs.names:{}}},s=class extends a{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof t.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=k(this.rhs,e,n),this}get names(){return O(this.lhs instanceof t.Name?{}:{...this.lhs.names},this.rhs)}},c=class extends s{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},l=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},u=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:``};`+e}},d=class extends a{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},f=class extends a{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=k(this.code,e,t),this}get names(){return this.code instanceof t._CodeOrName?this.code.names:{}}},p=class extends a{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((t,n)=>t+n.render(e),``)}optimizeNodes(){let{nodes:e}=this,t=e.length;for(;t--;){let n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:n}=this,r=n.length;for(;r--;){let i=n[r];i.optimizeNames(e,t)||(ee(e,i.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>D(e,t.names),{})}},m=class extends p{render(e){return`{`+e._n+super.render(e)+`}`+e._n}},h=class extends p{},g=class extends m{};g.kind=`else`;var _=class e extends m{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+=`else `+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let n=this.else;if(n){let e=n.optimizeNodes();n=this.else=Array.isArray(e)?new g(e):e}if(n)return t===!1?n instanceof e?n:n.nodes:this.nodes.length?this:new e(A(t),n instanceof e?[n]:n.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(e,t){if(this.else=this.else?.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=k(this.condition,e,t),this}get names(){let e=super.names;return O(e,this.condition),this.else&&D(e,this.else.names),e}};_.kind=`if`;var v=class extends m{};v.kind=`for`;var y=class extends v{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=k(this.iteration,e,t),this}get names(){return D(super.names,this.iteration.names)}},b=class extends v{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){let t=e.es5?n.varKinds.var:this.varKind,{name:r,from:i,to:a}=this;return`for(${t} ${r}=${i}; ${r}<${a}; ${r}++)`+super.render(e)}get names(){return O(O(super.names,this.from),this.to)}},x=class extends v{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=k(this.iterable,e,t),this}get names(){return D(super.names,this.iterable.names)}},S=class extends m{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?`async `:``}function ${this.name}(${this.args})`+super.render(e)}};S.kind=`func`;var C=class extends p{render(e){return`return `+super.render(e)}};C.kind=`return`;var w=class extends m{render(e){let t=`try`+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)==null||e.optimizeNodes(),(t=this.finally)==null||t.optimizeNodes(),this}optimizeNames(e,t){var n,r;return super.optimizeNames(e,t),(n=this.catch)==null||n.optimizeNames(e,t),(r=this.finally)==null||r.optimizeNames(e,t),this}get names(){let e=super.names;return this.catch&&D(e,this.catch.names),this.finally&&D(e,this.finally.names),e}},T=class extends m{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};T.kind=`catch`;var E=class extends m{render(e){return`finally`+super.render(e)}};E.kind=`finally`,e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?` +`:``},this._extScope=e,this._scope=new n.Scope({parent:e}),this._nodes=[new h]}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 n=this._extScope.value(e,t);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}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,n,r){let i=this._scope.toName(t);return n!==void 0&&r&&(this._constants[i.str]=n),this._leafNode(new o(e,i,n)),i}const(e,t,r){return this._def(n.varKinds.const,e,t,r)}let(e,t,r){return this._def(n.varKinds.let,e,t,r)}var(e,t,r){return this._def(n.varKinds.var,e,t,r)}assign(e,t,n){return this._leafNode(new s(e,t,n))}add(t,n){return this._leafNode(new c(t,e.operators.ADD,n))}code(e){return typeof e==`function`?e():e!==t.nil&&this._leafNode(new f(e)),this}object(...e){let n=[`{`];for(let[r,i]of e)n.length>1&&n.push(`,`),n.push(r),(r!==i||this.opts.es5)&&(n.push(`:`),(0,t.addCodeArg)(n,i));return n.push(`}`),new t._Code(n)}if(e,t,n){if(this._blockNode(new _(e)),t&&n)this.code(t).else().code(n).endIf();else if(t)this.code(t).endIf();else if(n)throw Error(`CodeGen: "else" body without "then" body`);return this}elseIf(e){return this._elseNode(new _(e))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(_,g)}_for(e,t){return this._blockNode(e),t&&this.code(t).endFor(),this}for(e,t){return this._for(new y(e),t)}forRange(e,t,r,i,a=this.opts.es5?n.varKinds.var:n.varKinds.let){let o=this._scope.toName(e);return this._for(new b(a,o,t,r),()=>i(o))}forOf(e,r,i,a=n.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let e=r instanceof t.Name?r:this.var(`_arr`,r);return this.forRange(`_i`,0,(0,t._)`${e}.length`,n=>{this.var(o,(0,t._)`${e}[${n}]`),i(o)})}return this._for(new x(`of`,a,o,r),()=>i(o))}forIn(e,r,i,a=this.opts.es5?n.varKinds.var:n.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,t._)`Object.keys(${r})`,i);let o=this._scope.toName(e);return this._for(new x(`in`,a,o,r),()=>i(o))}endFor(){return this._endBlockNode(v)}label(e){return this._leafNode(new l(e))}break(e){return this._leafNode(new u(e))}return(e){let t=new C;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error(`CodeGen: "return" should have one node`);return this._endBlockNode(C)}try(e,t,n){if(!t&&!n)throw Error(`CodeGen: "try" without "catch" and "finally"`);let r=new w;if(this._blockNode(r),this.code(e),t){let e=this.name(`e`);this._currNode=r.catch=new T(e),t(e)}return n&&(this._currNode=r.finally=new E,this.code(n)),this._endBlockNode(T,E)}throw(e){return this._leafNode(new d(e))}block(e,t){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(t),this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error(`CodeGen: not in self-balancing block`);let n=this._nodes.length-t;if(n<0||e!==void 0&&n!==e)throw Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=t,this}func(e,n=t.nil,r,i){return this._blockNode(new S(e,n,r)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(S)}optimize(e=1){for(;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 n=this._currNode;if(n instanceof e||t&&n 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 _))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}};function D(e,t){for(let n in t)e[n]=(e[n]||0)+(t[n]||0);return e}function O(e,n){return n instanceof t._CodeOrName?D(e,n.names):e}function k(e,n,r){if(e instanceof t.Name)return i(e);if(!a(e))return e;return new t._Code(e._items.reduce((e,n)=>(n instanceof t.Name&&(n=i(n)),n instanceof t._Code?e.push(...n._items):e.push(n),e),[]));function i(e){let t=r[e.str];return t===void 0||n[e.str]!==1?e:(delete n[e.str],t)}function a(e){return e instanceof t._Code&&e._items.some(e=>e instanceof t.Name&&n[e.str]===1&&r[e.str]!==void 0)}}function ee(e,t){for(let n in t)e[n]=(e[n]||0)-(t[n]||0)}function A(e){return typeof e==`boolean`||typeof e==`number`||e===null?!e:(0,t._)`!${N(e)}`}e.not=A;var te=M(e.operators.AND);function ne(...e){return e.reduce(te)}e.and=ne;var j=M(e.operators.OR);function re(...e){return e.reduce(j)}e.or=re;function M(e){return(n,r)=>n===t.nil?r:r===t.nil?n:(0,t._)`${N(n)} ${e} ${N(r)}`}function N(e){return e instanceof t.Name?e:(0,t._)`(${e})`}})),R=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.checkStrictMode=e.getErrorPath=e.Type=e.useFunc=e.setEvaluated=e.evaluatedPropsToName=e.mergeEvaluated=e.eachItem=e.unescapeJsonPointer=e.escapeJsonPointer=e.escapeFragment=e.unescapeFragment=e.schemaRefOrVal=e.schemaHasRulesButRef=e.schemaHasRules=e.checkUnknownRules=e.alwaysValidSchema=e.toHash=void 0;var t=L(),n=Pn();function r(e){let t={};for(let n of e)t[n]=!0;return t}e.toHash=r;function i(e,t){return typeof t==`boolean`?t:Object.keys(t).length===0?!0:(a(e,t),!o(t,e.self.RULES.all))}e.alwaysValidSchema=i;function a(e,t=e.schema){let{opts:n,self:r}=e;if(!n.strictSchema||typeof t==`boolean`)return;let i=r.RULES.keywords;for(let n in t)i[n]||x(e,`unknown keyword: "${n}"`)}e.checkUnknownRules=a;function o(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(t[n])return!0;return!1}e.schemaHasRules=o;function s(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(n!==`$ref`&&t.all[n])return!0;return!1}e.schemaHasRulesButRef=s;function c({topSchemaRef:e,schemaPath:n},r,i,a){if(!a){if(typeof r==`number`||typeof r==`boolean`)return r;if(typeof r==`string`)return(0,t._)`${r}`}return(0,t._)`${e}${n}${(0,t.getProperty)(i)}`}e.schemaRefOrVal=c;function l(e){return f(decodeURIComponent(e))}e.unescapeFragment=l;function u(e){return encodeURIComponent(d(e))}e.escapeFragment=u;function d(e){return typeof e==`number`?`${e}`:e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.escapeJsonPointer=d;function f(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}e.unescapeJsonPointer=f;function p(e,t){if(Array.isArray(e))for(let n of e)t(n);else t(e)}e.eachItem=p;function m({mergeNames:e,mergeToName:n,mergeValues:r,resultToName:i}){return(a,o,s,c)=>{let l=s===void 0?o:s instanceof t.Name?(o instanceof t.Name?e(a,o,s):n(a,o,s),s):o instanceof t.Name?(n(a,s,o),o):r(o,s);return c===t.Name&&!(l instanceof t.Name)?i(a,l):l}}e.mergeEvaluated={props:m({mergeNames:(e,n,r)=>e.if((0,t._)`${r} !== true && ${n} !== undefined`,()=>{e.if((0,t._)`${n} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,t._)`${r} || {}`).code((0,t._)`Object.assign(${r}, ${n})`))}),mergeToName:(e,n,r)=>e.if((0,t._)`${r} !== true`,()=>{n===!0?e.assign(r,!0):(e.assign(r,(0,t._)`${r} || {}`),g(e,r,n))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:h}),items:m({mergeNames:(e,n,r)=>e.if((0,t._)`${r} !== true && ${n} !== undefined`,()=>e.assign(r,(0,t._)`${n} === true ? true : ${r} > ${n} ? ${r} : ${n}`)),mergeToName:(e,n,r)=>e.if((0,t._)`${r} !== true`,()=>e.assign(r,n===!0?!0:(0,t._)`${r} > ${n} ? ${r} : ${n}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var(`items`,t)})};function h(e,n){if(n===!0)return e.var(`props`,!0);let r=e.var(`props`,(0,t._)`{}`);return n!==void 0&&g(e,r,n),r}e.evaluatedPropsToName=h;function g(e,n,r){Object.keys(r).forEach(r=>e.assign((0,t._)`${n}${(0,t.getProperty)(r)}`,!0))}e.setEvaluated=g;var _={};function v(e,t){return e.scopeValue(`func`,{ref:t,code:_[t.code]||(_[t.code]=new n._Code(t.code))})}e.useFunc=v;var y;(function(e){e[e.Num=0]=`Num`,e[e.Str=1]=`Str`})(y||(e.Type=y={}));function b(e,n,r){if(e instanceof t.Name){let i=n===y.Num;return r?i?(0,t._)`"[" + ${e} + "]"`:(0,t._)`"['" + ${e} + "']"`:i?(0,t._)`"/" + ${e}`:(0,t._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,t.getProperty)(e).toString():`/`+d(e)}e.getErrorPath=b;function x(e,t,n=e.opts.strictSchema){if(n){if(t=`strict mode: ${t}`,n===!0)throw Error(t);e.self.logger.warn(t)}}e.checkStrictMode=x})),In=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L();e.default={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`)}})),Ln=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;var t=L(),n=R(),r=In();e.keywordError={message:({keyword:e})=>(0,t.str)`must pass "${e}" keyword validation`},e.keyword$DataError={message:({keyword:e,schemaType:n})=>n?(0,t.str)`"${e}" keyword must be ${n} ($data)`:(0,t.str)`"${e}" keyword is invalid ($data)`};function i(n,r=e.keywordError,i,a){let{it:o}=n,{gen:s,compositeRule:u,allErrors:f}=o,p=d(n,r,i);a??(u||f)?c(s,p):l(o,(0,t._)`[${p}]`)}e.reportError=i;function a(t,n=e.keywordError,i){let{it:a}=t,{gen:o,compositeRule:s,allErrors:u}=a;c(o,d(t,n,i)),s||u||l(a,r.default.vErrors)}e.reportExtraError=a;function o(e,n){e.assign(r.default.errors,n),e.if((0,t._)`${r.default.vErrors} !== null`,()=>e.if(n,()=>e.assign((0,t._)`${r.default.vErrors}.length`,n),()=>e.assign(r.default.vErrors,null)))}e.resetErrorsCount=o;function s({gen:e,keyword:n,schemaValue:i,data:a,errsCount:o,it:s}){if(o===void 0)throw Error(`ajv implementation error`);let c=e.name(`err`);e.forRange(`i`,o,r.default.errors,o=>{e.const(c,(0,t._)`${r.default.vErrors}[${o}]`),e.if((0,t._)`${c}.instancePath === undefined`,()=>e.assign((0,t._)`${c}.instancePath`,(0,t.strConcat)(r.default.instancePath,s.errorPath))),e.assign((0,t._)`${c}.schemaPath`,(0,t.str)`${s.errSchemaPath}/${n}`),s.opts.verbose&&(e.assign((0,t._)`${c}.schema`,i),e.assign((0,t._)`${c}.data`,a))})}e.extendErrors=s;function c(e,n){let i=e.const(`err`,n);e.if((0,t._)`${r.default.vErrors} === null`,()=>e.assign(r.default.vErrors,(0,t._)`[${i}]`),(0,t._)`${r.default.vErrors}.push(${i})`),e.code((0,t._)`${r.default.errors}++`)}function l(e,n){let{gen:r,validateName:i,schemaEnv:a}=e;a.$async?r.throw((0,t._)`new ${e.ValidationError}(${n})`):(r.assign((0,t._)`${i}.errors`,n),r.return(!1))}var u={keyword:new t.Name(`keyword`),schemaPath:new t.Name(`schemaPath`),params:new t.Name(`params`),propertyName:new t.Name(`propertyName`),message:new t.Name(`message`),schema:new t.Name(`schema`),parentSchema:new t.Name(`parentSchema`)};function d(e,n,r){let{createErrors:i}=e.it;return i===!1?(0,t._)`{}`:f(e,n,r)}function f(e,t,n={}){let{gen:r,it:i}=e,a=[p(i,n),m(e,n)];return h(e,t,a),r.object(...a)}function p({errorPath:e},{instancePath:i}){let a=i?(0,t.str)`${e}${(0,n.getErrorPath)(i,n.Type.Str)}`:e;return[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,a)]}function m({keyword:e,it:{errSchemaPath:r}},{schemaPath:i,parentSchema:a}){let o=a?r:(0,t.str)`${r}/${e}`;return i&&(o=(0,t.str)`${o}${(0,n.getErrorPath)(i,n.Type.Str)}`),[u.schemaPath,o]}function h(e,{params:n,message:i},a){let{keyword:o,data:s,schemaValue:c,it:l}=e,{opts:d,propertyName:f,topSchemaRef:p,schemaPath:m}=l;a.push([u.keyword,o],[u.params,typeof n==`function`?n(e):n||(0,t._)`{}`]),d.messages&&a.push([u.message,typeof i==`function`?i(e):i]),d.verbose&&a.push([u.schema,c],[u.parentSchema,(0,t._)`${p}${m}`],[r.default.data,s]),f&&a.push([u.propertyName,f])}})),Rn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.boolOrEmptySchema=e.topBoolOrEmptySchema=void 0;var t=Ln(),n=L(),r=In(),i={message:`boolean schema is false`};function a(e){let{gen:t,schema:i,validateName:a}=e;i===!1?s(e,!1):typeof i==`object`&&i.$async===!0?t.return(r.default.data):(t.assign((0,n._)`${a}.errors`,null),t.return(!0))}e.topBoolOrEmptySchema=a;function o(e,t){let{gen:n,schema:r}=e;r===!1?(n.var(t,!1),s(e)):n.var(t,!0)}e.boolOrEmptySchema=o;function s(e,n){let{gen:r,data:a}=e,o={gen:r,keyword:`false schema`,data:a,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,t.reportError)(o,i,void 0,n)}})),zn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getRules=e.isJSONType=void 0;var t=new Set([`string`,`number`,`integer`,`boolean`,`null`,`object`,`array`]);function n(e){return typeof e==`string`&&t.has(e)}e.isJSONType=n;function r(){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:{}}}e.getRules=r})),Bn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.shouldUseRule=e.shouldUseGroup=e.schemaHasRulesForType=void 0;function t({schema:e,self:t},r){let i=t.RULES.types[r];return i&&i!==!0&&n(e,i)}e.schemaHasRulesForType=t;function n(e,t){return t.rules.some(t=>r(e,t))}e.shouldUseGroup=n;function r(e,t){return e[t.keyword]!==void 0||t.definition.implements?.some(t=>e[t]!==void 0)}e.shouldUseRule=r})),Vn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reportTypeError=e.checkDataTypes=e.checkDataType=e.coerceAndCheckDataType=e.getJSONTypes=e.getSchemaTypes=e.DataType=void 0;var t=zn(),n=Bn(),r=Ln(),i=L(),a=R(),o;(function(e){e[e.Correct=0]=`Correct`,e[e.Wrong=1]=`Wrong`})(o||(e.DataType=o={}));function s(e){let t=c(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"`);e.nullable===!0&&t.push(`null`)}return t}e.getSchemaTypes=s;function c(e){let n=Array.isArray(e)?e:e?[e]:[];if(n.every(t.isJSONType))return n;throw Error(`type must be JSONType or JSONType[]: `+n.join(`,`))}e.getJSONTypes=c;function l(e,t){let{gen:r,data:i,opts:a}=e,s=d(t,a.coerceTypes),c=t.length>0&&!(s.length===0&&t.length===1&&(0,n.schemaHasRulesForType)(e,t[0]));if(c){let n=h(t,i,a.strictNumbers,o.Wrong);r.if(n,()=>{s.length?f(e,t,s):_(e)})}return c}e.coerceAndCheckDataType=l;var u=new Set([`string`,`number`,`integer`,`boolean`,`null`]);function d(e,t){return t?e.filter(e=>u.has(e)||t===`array`&&e===`array`):[]}function f(e,t,n){let{gen:r,data:a,opts:o}=e,s=r.let(`dataType`,(0,i._)`typeof ${a}`),c=r.let(`coerced`,(0,i._)`undefined`);o.coerceTypes===`array`&&r.if((0,i._)`${s} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>r.assign(a,(0,i._)`${a}[0]`).assign(s,(0,i._)`typeof ${a}`).if(h(t,a,o.strictNumbers),()=>r.assign(c,a))),r.if((0,i._)`${c} !== undefined`);for(let e of n)(u.has(e)||e===`array`&&o.coerceTypes===`array`)&&l(e);r.else(),_(e),r.endIf(),r.if((0,i._)`${c} !== undefined`,()=>{r.assign(a,c),p(e,c)});function l(e){switch(e){case`string`:r.elseIf((0,i._)`${s} == "number" || ${s} == "boolean"`).assign(c,(0,i._)`"" + ${a}`).elseIf((0,i._)`${a} === null`).assign(c,(0,i._)`""`);return;case`number`:r.elseIf((0,i._)`${s} == "boolean" || ${a} === null + || (${s} == "string" && ${a} && ${a} == +${a})`).assign(c,(0,i._)`+${a}`);return;case`integer`:r.elseIf((0,i._)`${s} === "boolean" || ${a} === null + || (${s} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(c,(0,i._)`+${a}`);return;case`boolean`:r.elseIf((0,i._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(c,!1).elseIf((0,i._)`${a} === "true" || ${a} === 1`).assign(c,!0);return;case`null`:r.elseIf((0,i._)`${a} === "" || ${a} === 0 || ${a} === false`),r.assign(c,null);return;case`array`:r.elseIf((0,i._)`${s} === "string" || ${s} === "number" + || ${s} === "boolean" || ${a} === null`).assign(c,(0,i._)`[${a}]`)}}}function p({gen:e,parentData:t,parentDataProperty:n},r){e.if((0,i._)`${t} !== undefined`,()=>e.assign((0,i._)`${t}[${n}]`,r))}function m(e,t,n,r=o.Correct){let a=r===o.Correct?i.operators.EQ:i.operators.NEQ,s;switch(e){case`null`:return(0,i._)`${t} ${a} null`;case`array`:s=(0,i._)`Array.isArray(${t})`;break;case`object`:s=(0,i._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case`integer`:s=c((0,i._)`!(${t} % 1) && !isNaN(${t})`);break;case`number`:s=c();break;default:return(0,i._)`typeof ${t} ${a} ${e}`}return r===o.Correct?s:(0,i.not)(s);function c(e=i.nil){return(0,i.and)((0,i._)`typeof ${t} == "number"`,e,n?(0,i._)`isFinite(${t})`:i.nil)}}e.checkDataType=m;function h(e,t,n,r){if(e.length===1)return m(e[0],t,n,r);let o,s=(0,a.toHash)(e);if(s.array&&s.object){let e=(0,i._)`typeof ${t} != "object"`;o=s.null?e:(0,i._)`!${t} || ${e}`,delete s.null,delete s.array,delete s.object}else o=i.nil;s.number&&delete s.integer;for(let e in s)o=(0,i.and)(o,m(e,t,n,r));return o}e.checkDataTypes=h;var g={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e==`string`?(0,i._)`{type: ${e}}`:(0,i._)`{type: ${t}}`};function _(e){let t=v(e);(0,r.reportError)(t,g)}e.reportTypeError=_;function v(e){let{gen:t,data:n,schema:r}=e,i=(0,a.schemaRefOrVal)(e,r,`type`);return{gen:t,keyword:`type`,data:n,schema:r.type,schemaCode:i,schemaValue:i,parentSchema:r,params:{},it:e}}})),Hn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.assignDefaults=void 0;var t=L(),n=R();function r(e,t){let{properties:n,items:r}=e.schema;if(t===`object`&&n)for(let t in n)i(e,t,n[t].default);else t===`array`&&Array.isArray(r)&&r.forEach((t,n)=>i(e,n,t.default))}e.assignDefaults=r;function i(e,r,i){let{gen:a,compositeRule:o,data:s,opts:c}=e;if(i===void 0)return;let l=(0,t._)`${s}${(0,t.getProperty)(r)}`;if(o){(0,n.checkStrictMode)(e,`default is ignored for: ${l}`);return}let u=(0,t._)`${l} === undefined`;c.useDefaults===`empty`&&(u=(0,t._)`${u} || ${l} === null || ${l} === ""`),a.if(u,(0,t._)`${l} = ${(0,t.stringify)(i)}`)}})),Un=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateUnion=e.validateArray=e.usePattern=e.callValidateCode=e.schemaProperties=e.allSchemaProperties=e.noPropertyInData=e.propertyInData=e.isOwnProperty=e.hasPropFunc=e.reportMissingProp=e.checkMissingProp=e.checkReportMissingProp=void 0;var t=L(),n=R(),r=In(),i=R();function a(e,n){let{gen:r,data:i,it:a}=e;r.if(d(r,i,n,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,t._)`${n}`},!0),e.error()})}e.checkReportMissingProp=a;function o({gen:e,data:n,it:{opts:r}},i,a){return(0,t.or)(...i.map(i=>(0,t.and)(d(e,n,i,r.ownProperties),(0,t._)`${a} = ${i}`)))}e.checkMissingProp=o;function s(e,t){e.setParams({missingProperty:t},!0),e.error()}e.reportMissingProp=s;function c(e){return e.scopeValue(`func`,{ref:Object.prototype.hasOwnProperty,code:(0,t._)`Object.prototype.hasOwnProperty`})}e.hasPropFunc=c;function l(e,n,r){return(0,t._)`${c(e)}.call(${n}, ${r})`}e.isOwnProperty=l;function u(e,n,r,i){let a=(0,t._)`${n}${(0,t.getProperty)(r)} !== undefined`;return i?(0,t._)`${a} && ${l(e,n,r)}`:a}e.propertyInData=u;function d(e,n,r,i){let a=(0,t._)`${n}${(0,t.getProperty)(r)} === undefined`;return i?(0,t.or)(a,(0,t.not)(l(e,n,r))):a}e.noPropertyInData=d;function f(e){return e?Object.keys(e).filter(e=>e!==`__proto__`):[]}e.allSchemaProperties=f;function p(e,t){return f(t).filter(r=>!(0,n.alwaysValidSchema)(e,t[r]))}e.schemaProperties=p;function m({schemaCode:e,data:n,it:{gen:i,topSchemaRef:a,schemaPath:o,errorPath:s},it:c},l,u,d){let f=d?(0,t._)`${e}, ${n}, ${a}${o}`:n,p=[[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,s)],[r.default.parentData,c.parentData],[r.default.parentDataProperty,c.parentDataProperty],[r.default.rootData,r.default.rootData]];c.opts.dynamicRef&&p.push([r.default.dynamicAnchors,r.default.dynamicAnchors]);let m=(0,t._)`${f}, ${i.object(...p)}`;return u===t.nil?(0,t._)`${l}(${m})`:(0,t._)`${l}.call(${u}, ${m})`}e.callValidateCode=m;var h=(0,t._)`new RegExp`;function g({gen:e,it:{opts:n}},r){let a=n.unicodeRegExp?`u`:``,{regExp:o}=n.code,s=o(r,a);return e.scopeValue(`pattern`,{key:s.toString(),ref:s,code:(0,t._)`${o.code===`new RegExp`?h:(0,i.useFunc)(e,o)}(${r}, ${a})`})}e.usePattern=g;function _(e){let{gen:r,data:i,keyword:a,it:o}=e,s=r.name(`valid`);if(o.allErrors){let e=r.let(`valid`,!0);return c(()=>r.assign(e,!1)),e}return r.var(s,!0),c(()=>r.break()),s;function c(o){let c=r.const(`len`,(0,t._)`${i}.length`);r.forRange(`i`,0,c,i=>{e.subschema({keyword:a,dataProp:i,dataPropType:n.Type.Num},s),r.if((0,t.not)(s),o)})}}e.validateArray=_;function v(e){let{gen:r,schema:i,keyword:a,it:o}=e;if(!Array.isArray(i))throw Error(`ajv implementation error`);if(i.some(e=>(0,n.alwaysValidSchema)(o,e))&&!o.opts.unevaluated)return;let s=r.let(`valid`,!1),c=r.name(`_valid`);r.block(()=>i.forEach((n,i)=>{let o=e.subschema({keyword:a,schemaProp:i,compositeRule:!0},c);r.assign(s,(0,t._)`${s} || ${c}`),e.mergeValidEvaluated(o,c)||r.if((0,t.not)(s))})),e.result(s,()=>e.reset(),()=>e.error(!0))}e.validateUnion=v})),Wn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateKeywordUsage=e.validSchemaType=e.funcKeywordCode=e.macroKeywordCode=void 0;var t=L(),n=In(),r=Un(),i=Ln();function a(e,n){let{gen:r,keyword:i,schema:a,parentSchema:o,it:s}=e,c=n.macro.call(s.self,a,o,s),l=u(r,i,c);s.opts.validateSchema!==!1&&s.self.validateSchema(c,!0);let d=r.name(`valid`);e.subschema({schema:c,schemaPath:t.nil,errSchemaPath:`${s.errSchemaPath}/${i}`,topSchemaRef:l,compositeRule:!0},d),e.pass(d,()=>e.error(!0))}e.macroKeywordCode=a;function o(e,i){let{gen:a,keyword:o,schema:d,parentSchema:f,$data:p,it:m}=e;l(m,i);let h=u(a,o,!p&&i.compile?i.compile.call(m.self,d,f,m):i.validate),g=a.let(`valid`);e.block$data(g,_),e.ok(i.valid??g);function _(){if(i.errors===!1)b(),i.modifying&&s(e),x(()=>e.error());else{let t=i.async?v():y();i.modifying&&s(e),x(()=>c(e,t))}}function v(){let e=a.let(`ruleErrs`,null);return a.try(()=>b((0,t._)`await `),n=>a.assign(g,!1).if((0,t._)`${n} instanceof ${m.ValidationError}`,()=>a.assign(e,(0,t._)`${n}.errors`),()=>a.throw(n))),e}function y(){let e=(0,t._)`${h}.errors`;return a.assign(e,null),b(t.nil),e}function b(o=i.async?(0,t._)`await `:t.nil){let s=m.opts.passContext?n.default.this:n.default.self,c=!(`compile`in i&&!p||i.schema===!1);a.assign(g,(0,t._)`${o}${(0,r.callValidateCode)(e,h,s,c)}`,i.modifying)}function x(e){a.if((0,t.not)(i.valid??g),e)}}e.funcKeywordCode=o;function s(e){let{gen:n,data:r,it:i}=e;n.if(i.parentData,()=>n.assign(r,(0,t._)`${i.parentData}[${i.parentDataProperty}]`))}function c(e,r){let{gen:a}=e;a.if((0,t._)`Array.isArray(${r})`,()=>{a.assign(n.default.vErrors,(0,t._)`${n.default.vErrors} === null ? ${r} : ${n.default.vErrors}.concat(${r})`).assign(n.default.errors,(0,t._)`${n.default.vErrors}.length`),(0,i.extendErrors)(e)},()=>e.error())}function l({schemaEnv:e},t){if(t.async&&!e.$async)throw Error(`async keyword in sync schema`)}function u(e,n,r){if(r===void 0)throw Error(`keyword "${n}" failed to compile`);return e.scopeValue(`keyword`,typeof r==`function`?{ref:r}:{ref:r,code:(0,t.stringify)(r)})}function d(e,t,n=!1){return!t.length||t.some(t=>t===`array`?Array.isArray(e):t===`object`?e&&typeof e==`object`&&!Array.isArray(e):typeof e==t||n&&e===void 0)}e.validSchemaType=d;function f({schema:e,opts:t,self:n,errSchemaPath:r},i,a){if(Array.isArray(i.keyword)?!i.keyword.includes(a):i.keyword!==a)throw Error(`ajv implementation error`);let o=i.dependencies;if(o?.some(t=>!Object.prototype.hasOwnProperty.call(e,t)))throw Error(`parent schema must have dependencies of ${a}: ${o.join(`,`)}`);if(i.validateSchema&&!i.validateSchema(e[a])){let e=`keyword "${a}" value is invalid at path "${r}": `+n.errorsText(i.validateSchema.errors);if(t.validateSchema===`log`)n.logger.error(e);else throw Error(e)}}e.validateKeywordUsage=f})),Gn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.extendSubschemaMode=e.extendSubschemaData=e.getSubschema=void 0;var t=L(),n=R();function r(e,{keyword:r,schemaProp:i,schema:a,schemaPath:o,errSchemaPath:s,topSchemaRef:c}){if(r!==void 0&&a!==void 0)throw Error(`both "keyword" and "schema" passed, only one allowed`);if(r!==void 0){let a=e.schema[r];return i===void 0?{schema:a,schemaPath:(0,t._)`${e.schemaPath}${(0,t.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${r}`}:{schema:a[i],schemaPath:(0,t._)`${e.schemaPath}${(0,t.getProperty)(r)}${(0,t.getProperty)(i)}`,errSchemaPath:`${e.errSchemaPath}/${r}/${(0,n.escapeFragment)(i)}`}}if(a!==void 0){if(o===void 0||s===void 0||c===void 0)throw Error(`"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"`);return{schema:a,schemaPath:o,topSchemaRef:c,errSchemaPath:s}}throw Error(`either "keyword" or "schema" must be passed`)}e.getSubschema=r;function i(e,r,{dataProp:i,dataPropType:a,data:o,dataTypes:s,propertyName:c}){if(o!==void 0&&i!==void 0)throw Error(`both "data" and "dataProp" passed, only one allowed`);let{gen:l}=r;if(i!==void 0){let{errorPath:o,dataPathArr:s,opts:c}=r;u(l.let(`data`,(0,t._)`${r.data}${(0,t.getProperty)(i)}`,!0)),e.errorPath=(0,t.str)`${o}${(0,n.getErrorPath)(i,a,c.jsPropertySyntax)}`,e.parentDataProperty=(0,t._)`${i}`,e.dataPathArr=[...s,e.parentDataProperty]}o!==void 0&&(u(o instanceof t.Name?o:l.let(`data`,o,!0)),c!==void 0&&(e.propertyName=c)),s&&(e.dataTypes=s);function u(t){e.data=t,e.dataLevel=r.dataLevel+1,e.dataTypes=[],r.definedProperties=new Set,e.parentData=r.data,e.dataNames=[...r.dataNames,t]}}e.extendSubschemaData=i;function a(e,{jtdDiscriminator:t,jtdMetadata:n,compositeRule:r,createErrors:i,allErrors:a}){r!==void 0&&(e.compositeRule=r),i!==void 0&&(e.createErrors=i),a!==void 0&&(e.allErrors=a),e.jtdDiscriminator=t,e.jtdMetadata=n}e.extendSubschemaMode=a})),Kn=s(((e,t)=>{t.exports=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n}})),qn=s(((e,t)=>{var n=t.exports=function(e,t,n){typeof t==`function`&&(n=t,t={}),n=t.cb||n;var i=typeof n==`function`?n:n.pre||function(){},a=n.post||function(){};r(t,i,a,e,``,e)};n.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0},n.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},n.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},n.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 r(e,t,a,o,s,c,l,u,d,f){if(o&&typeof o==`object`&&!Array.isArray(o)){for(var p in t(o,s,c,l,u,d,f),o){var m=o[p];if(Array.isArray(m)){if(p in n.arrayKeywords)for(var h=0;h{Object.defineProperty(e,"__esModule",{value:!0}),e.getSchemaRefs=e.resolveUrl=e.normalizeId=e._getFullPath=e.getFullPath=e.inlineRef=void 0;var t=R(),n=Kn(),r=qn(),i=new Set([`type`,`format`,`pattern`,`maxLength`,`minLength`,`maxProperties`,`minProperties`,`maxItems`,`minItems`,`maximum`,`minimum`,`uniqueItems`,`multipleOf`,`required`,`enum`,`const`]);function a(e,t=!0){return typeof e==`boolean`?!0:t===!0?!s(e):t?c(e)<=t:!1}e.inlineRef=a;var o=new Set([`$ref`,`$recursiveRef`,`$recursiveAnchor`,`$dynamicRef`,`$dynamicAnchor`]);function s(e){for(let t in e){if(o.has(t))return!0;let n=e[t];if(Array.isArray(n)&&n.some(s)||typeof n==`object`&&s(n))return!0}return!1}function c(e){let n=0;for(let r in e)if(r===`$ref`||(n++,!i.has(r)&&(typeof e[r]==`object`&&(0,t.eachItem)(e[r],e=>n+=c(e)),n===1/0)))return 1/0;return n}function l(e,t=``,n){return n!==!1&&(t=f(t)),u(e,e.parse(t))}e.getFullPath=l;function u(e,t){return e.serialize(t).split(`#`)[0]+`#`}e._getFullPath=u;var d=/#\/?$/;function f(e){return e?e.replace(d,``):``}e.normalizeId=f;function p(e,t,n){return n=f(n),e.resolve(t,n)}e.resolveUrl=p;var m=/^[a-z_][-a-z0-9._]*$/i;function h(e,t){if(typeof e==`boolean`)return{};let{schemaId:i,uriResolver:a}=this.opts,o=f(e[i]||t),s={"":o},c=l(a,o,!1),u={},d=new Set;return r(e,{allKeys:!0},(e,t,n,r)=>{if(r===void 0)return;let a=c+t,o=s[r];typeof e[i]==`string`&&(o=l.call(this,e[i])),g.call(this,e.$anchor),g.call(this,e.$dynamicAnchor),s[t]=o;function l(t){let n=this.opts.uriResolver.resolve;if(t=f(o?n(o,t):t),d.has(t))throw h(t);d.add(t);let r=this.refs[t];return typeof r==`string`&&(r=this.refs[r]),typeof r==`object`?p(e,r.schema,t):t!==f(a)&&(t[0]===`#`?(p(e,u[t],t),u[t]=e):this.refs[t]=a),t}function g(e){if(typeof e==`string`){if(!m.test(e))throw Error(`invalid anchor "${e}"`);l.call(this,`#${e}`)}}}),u;function p(e,t,r){if(t!==void 0&&!n(e,t))throw h(r)}function h(e){return Error(`reference "${e}" resolves to more than one schema`)}}e.getSchemaRefs=h})),Yn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getData=e.KeywordCxt=e.validateFunctionCode=void 0;var t=Rn(),n=Vn(),r=Bn(),i=Vn(),a=Hn(),o=Wn(),s=Gn(),c=L(),l=In(),u=Jn(),d=R(),f=Ln();function p(e){if(S(e)&&(w(e),x(e))){_(e);return}m(e,()=>(0,t.topBoolOrEmptySchema)(e))}e.validateFunctionCode=p;function m({gen:e,validateName:t,schema:n,schemaEnv:r,opts:i},a){i.code.es5?e.func(t,(0,c._)`${l.default.data}, ${l.default.valCxt}`,r.$async,()=>{e.code((0,c._)`"use strict"; ${y(n,i)}`),g(e,i),e.code(a)}):e.func(t,(0,c._)`${l.default.data}, ${h(i)}`,r.$async,()=>e.code(y(n,i)).code(a))}function h(e){return(0,c._)`{${l.default.instancePath}="", ${l.default.parentData}, ${l.default.parentDataProperty}, ${l.default.rootData}=${l.default.data}${e.dynamicRef?(0,c._)`, ${l.default.dynamicAnchors}={}`:c.nil}}={}`}function g(e,t){e.if(l.default.valCxt,()=>{e.var(l.default.instancePath,(0,c._)`${l.default.valCxt}.${l.default.instancePath}`),e.var(l.default.parentData,(0,c._)`${l.default.valCxt}.${l.default.parentData}`),e.var(l.default.parentDataProperty,(0,c._)`${l.default.valCxt}.${l.default.parentDataProperty}`),e.var(l.default.rootData,(0,c._)`${l.default.valCxt}.${l.default.rootData}`),t.dynamicRef&&e.var(l.default.dynamicAnchors,(0,c._)`${l.default.valCxt}.${l.default.dynamicAnchors}`)},()=>{e.var(l.default.instancePath,(0,c._)`""`),e.var(l.default.parentData,(0,c._)`undefined`),e.var(l.default.parentDataProperty,(0,c._)`undefined`),e.var(l.default.rootData,l.default.data),t.dynamicRef&&e.var(l.default.dynamicAnchors,(0,c._)`{}`)})}function _(e){let{schema:t,opts:n,gen:r}=e;m(e,()=>{n.$comment&&t.$comment&&ee(e),D(e),r.let(l.default.vErrors,null),r.let(l.default.errors,0),n.unevaluated&&v(e),T(e),A(e)})}function v(e){let{gen:t,validateName:n}=e;e.evaluated=t.const(`evaluated`,(0,c._)`${n}.evaluated`),t.if((0,c._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,c._)`${e.evaluated}.props`,(0,c._)`undefined`)),t.if((0,c._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,c._)`${e.evaluated}.items`,(0,c._)`undefined`))}function y(e,t){let n=typeof e==`object`&&e[t.schemaId];return n&&(t.code.source||t.code.process)?(0,c._)`/*# sourceURL=${n} */`:c.nil}function b(e,n){if(S(e)&&(w(e),x(e))){C(e,n);return}(0,t.boolOrEmptySchema)(e,n)}function x({schema:e,self:t}){if(typeof e==`boolean`)return!e;for(let n in e)if(t.RULES.all[n])return!0;return!1}function S(e){return typeof e.schema!=`boolean`}function C(e,t){let{schema:n,gen:r,opts:i}=e;i.$comment&&n.$comment&&ee(e),O(e),k(e);let a=r.const(`_errs`,l.default.errors);T(e,a),r.var(t,(0,c._)`${a} === ${l.default.errors}`)}function w(e){(0,d.checkUnknownRules)(e),E(e)}function T(e,t){if(e.opts.jtd)return ne(e,[],!1,t);let r=(0,n.getSchemaTypes)(e.schema);ne(e,r,!(0,n.coerceAndCheckDataType)(e,r),t)}function E(e){let{schema:t,errSchemaPath:n,opts:r,self:i}=e;t.$ref&&r.ignoreKeywordsWithRef&&(0,d.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${n}"`)}function D(e){let{schema:t,opts:n}=e;t.default!==void 0&&n.useDefaults&&n.strictSchema&&(0,d.checkStrictMode)(e,`default is ignored in the schema root`)}function O(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,u.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function k(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error(`async schema in sync schema`)}function ee({gen:e,schemaEnv:t,schema:n,errSchemaPath:r,opts:i}){let a=n.$comment;if(i.$comment===!0)e.code((0,c._)`${l.default.self}.logger.log(${a})`);else if(typeof i.$comment==`function`){let n=(0,c.str)`${r}/$comment`,i=e.scopeValue(`root`,{ref:t.root});e.code((0,c._)`${l.default.self}.opts.$comment(${a}, ${n}, ${i}.schema)`)}}function A(e){let{gen:t,schemaEnv:n,validateName:r,ValidationError:i,opts:a}=e;n.$async?t.if((0,c._)`${l.default.errors} === 0`,()=>t.return(l.default.data),()=>t.throw((0,c._)`new ${i}(${l.default.vErrors})`)):(t.assign((0,c._)`${r}.errors`,l.default.vErrors),a.unevaluated&&te(e),t.return((0,c._)`${l.default.errors} === 0`))}function te({gen:e,evaluated:t,props:n,items:r}){n instanceof c.Name&&e.assign((0,c._)`${t}.props`,n),r instanceof c.Name&&e.assign((0,c._)`${t}.items`,r)}function ne(e,t,n,a){let{gen:o,schema:s,data:u,allErrors:f,opts:p,self:m}=e,{RULES:h}=m;if(s.$ref&&(p.ignoreKeywordsWithRef||!(0,d.schemaHasRulesButRef)(s,h))){o.block(()=>ce(e,`$ref`,h.all.$ref.definition));return}p.jtd||re(e,t),o.block(()=>{for(let e of h.rules)g(e);g(h.post)});function g(d){(0,r.shouldUseGroup)(s,d)&&(d.type?(o.if((0,i.checkDataType)(d.type,u,p.strictNumbers)),j(e,d),t.length===1&&t[0]===d.type&&n&&(o.else(),(0,i.reportTypeError)(e)),o.endIf()):j(e,d),f||o.if((0,c._)`${l.default.errors} === ${a||0}`))}}function j(e,t){let{gen:n,schema:i,opts:{useDefaults:o}}=e;o&&(0,a.assignDefaults)(e,t.type),n.block(()=>{for(let n of t.rules)(0,r.shouldUseRule)(i,n)&&ce(e,n.keyword,n.definition,t.type)})}function re(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(M(e,t),e.opts.allowUnionTypes||N(e,t),ie(e,e.dataTypes))}function M(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(t=>{oe(e.dataTypes,t)||P(e,`type "${t}" not allowed by context "${e.dataTypes.join(`,`)}"`)}),se(e,t)}}function N(e,t){t.length>1&&!(t.length===2&&t.includes(`null`))&&P(e,`use allowUnionTypes to allow union type keyword`)}function ie(e,t){let n=e.self.RULES.all;for(let i in n){let a=n[i];if(typeof a==`object`&&(0,r.shouldUseRule)(e.schema,a)){let{type:n}=a.definition;n.length&&!n.some(e=>ae(t,e))&&P(e,`missing type "${n.join(`,`)}" for keyword "${i}"`)}}}function ae(e,t){return e.includes(t)||t===`number`&&e.includes(`integer`)}function oe(e,t){return e.includes(t)||t===`integer`&&e.includes(`number`)}function se(e,t){let n=[];for(let r of e.dataTypes)oe(t,r)?n.push(r):t.includes(`integer`)&&r===`number`&&n.push(`integer`);e.dataTypes=n}function P(e,t){let n=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${n}" (strictTypes)`,(0,d.checkStrictMode)(e,t,e.opts.strictTypes)}var F=class{constructor(e,t,n){if((0,o.validateKeywordUsage)(e,t,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d.schemaRefOrVal)(e,this.schema,n,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`,de(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,o.validSchemaType)(this.schema,t.schemaType,t.allowUndefined))throw Error(`${n} value must be ${JSON.stringify(t.schemaType)}`);(`code`in t?t.trackErrors:t.errors!==!1)&&(this.errsCount=e.gen.const(`_errs`,l.default.errors))}result(e,t,n){this.failResult((0,c.not)(e),t,n)}failResult(e,t,n){this.gen.if(e),n?n():this.error(),t?(this.gen.else(),t(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,t){this.failResult((0,c.not)(e),void 0,t)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail((0,c._)`${t} !== undefined && (${(0,c.or)(this.invalid$data(),e)})`)}error(e,t,n){if(t){this.setParams(t),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,t){(e?f.reportExtraError:f.reportError)(this,this.def.error,t)}$dataError(){(0,f.reportError)(this,this.def.$dataError||f.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error(`add "trackErrors" to keyword definition`);(0,f.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,t){t?Object.assign(this.params,e):this.params=e}block$data(e,t,n=c.nil){this.gen.block(()=>{this.check$data(e,n),t()})}check$data(e=c.nil,t=c.nil){if(!this.$data)return;let{gen:n,schemaCode:r,schemaType:i,def:a}=this;n.if((0,c.or)((0,c._)`${r} === undefined`,t)),e!==c.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==c.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:n,def:r,it:a}=this;return(0,c.or)(o(),s());function o(){if(n.length){if(!(t instanceof c.Name))throw Error(`ajv implementation error`);let e=Array.isArray(n)?n:[n];return(0,c._)`${(0,i.checkDataTypes)(e,t,a.opts.strictNumbers,i.DataType.Wrong)}`}return c.nil}function s(){if(r.validateSchema){let n=e.scopeValue(`validate$data`,{ref:r.validateSchema});return(0,c._)`!${n}(${t})`}return c.nil}}subschema(e,t){let n=(0,s.getSubschema)(this.it,e);(0,s.extendSubschemaData)(n,this.it,e),(0,s.extendSubschemaMode)(n,e);let r={...this.it,...n,items:void 0,props:void 0};return b(r,t),r}mergeEvaluated(e,t){let{it:n,gen:r}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=d.mergeEvaluated.props(r,e.props,n.props,t)),n.items!==!0&&e.items!==void 0&&(n.items=d.mergeEvaluated.items(r,e.items,n.items,t)))}mergeValidEvaluated(e,t){let{it:n,gen:r}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return r.if(t,()=>this.mergeEvaluated(e,c.Name)),!0}};e.KeywordCxt=F;function ce(e,t,n,r){let i=new F(e,n,t);`code`in n?n.code(i,r):i.$data&&n.validate?(0,o.funcKeywordCode)(i,n):`macro`in n?(0,o.macroKeywordCode)(i,n):(n.compile||n.validate)&&(0,o.funcKeywordCode)(i,n)}var le=/^\/(?:[^~]|~0|~1)*$/,ue=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function de(e,{dataLevel:t,dataNames:n,dataPathArr:r}){let i,a;if(e===``)return l.default.rootData;if(e[0]===`/`){if(!le.test(e))throw Error(`Invalid JSON-pointer: ${e}`);i=e,a=l.default.rootData}else{let o=ue.exec(e);if(!o)throw Error(`Invalid JSON-pointer: ${e}`);let s=+o[1];if(i=o[2],i===`#`){if(s>=t)throw Error(u(`property/index`,s));return r[t-s]}if(s>t)throw Error(u(`data`,s));if(a=n[t-s],!i)return a}let o=a,s=i.split(`/`);for(let e of s)e&&(a=(0,c._)`${a}${(0,c.getProperty)((0,d.unescapeJsonPointer)(e))}`,o=(0,c._)`${o} && ${a}`);return o;function u(e,n){return`Cannot access ${e} ${n} levels up, current level is ${t}`}}e.getData=de})),Xn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=class extends Error{constructor(e){super(`validation failed`),this.errors=e,this.ajv=this.validation=!0}}})),Zn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Jn();e.default=class extends Error{constructor(e,n,r,i){super(i||`can't resolve reference ${r} from id ${n}`),this.missingRef=(0,t.resolveUrl)(e,n,r),this.missingSchema=(0,t.normalizeId)((0,t.getFullPath)(e,this.missingRef))}}})),Qn=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.resolveSchema=e.getCompilingSchema=e.resolveRef=e.compileSchema=e.SchemaEnv=void 0;var t=L(),n=Xn(),r=In(),i=Jn(),a=R(),o=Yn(),s=class{constructor(e){this.refs={},this.dynamicAnchors={};let t;typeof e.schema==`object`&&(t=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=e.baseId??(0,i.normalizeId)(t?.[e.schemaId||`$id`]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=t?.$async,this.refs={}}};e.SchemaEnv=s;function c(e){let a=d.call(this,e);if(a)return a;let s=(0,i.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:c,lines:l}=this.opts.code,{ownProperties:u}=this.opts,f=new t.CodeGen(this.scope,{es5:c,lines:l,ownProperties:u}),p;e.$async&&(p=f.scopeValue(`Error`,{ref:n.default,code:(0,t._)`require("ajv/dist/runtime/validation_error").default`}));let m=f.scopeName(`validate`);e.validateName=m;let h={gen:f,allErrors:this.opts.allErrors,data:r.default.data,parentData:r.default.parentData,parentDataProperty:r.default.parentDataProperty,dataNames:[r.default.data],dataPathArr:[t.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:f.scopeValue(`schema`,this.opts.code.source===!0?{ref:e.schema,code:(0,t.stringify)(e.schema)}:{ref:e.schema}),validateName:m,ValidationError:p,schema:e.schema,schemaEnv:e,rootId:s,baseId:e.baseId||s,schemaPath:t.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?``:`#`),errorPath:(0,t._)`""`,opts:this.opts,self:this},g;try{this._compilations.add(e),(0,o.validateFunctionCode)(h),f.optimize(this.opts.code.optimize);let n=f.toString();g=`${f.scopeRefs(r.default.scope)}return ${n}`,this.opts.code.process&&(g=this.opts.code.process(g,e));let i=Function(`${r.default.self}`,`${r.default.scope}`,g)(this,this.scope.get());if(this.scope.value(m,{ref:i}),i.errors=null,i.schema=e.schema,i.schemaEnv=e,e.$async&&(i.$async=!0),this.opts.code.source===!0&&(i.source={validateName:m,validateCode:n,scopeValues:f._values}),this.opts.unevaluated){let{props:e,items:n}=h;i.evaluated={props:e instanceof t.Name?void 0:e,items:n instanceof t.Name?void 0:n,dynamicProps:e instanceof t.Name,dynamicItems:n instanceof t.Name},i.source&&(i.source.evaluated=(0,t.stringify)(i.evaluated))}return e.validate=i,e}catch(t){throw delete e.validate,delete e.validateName,g&&this.logger.error(`Error compiling schema, function code:`,g),t}finally{this._compilations.delete(e)}}e.compileSchema=c;function l(e,t,n){n=(0,i.resolveUrl)(this.opts.uriResolver,t,n);let r=e.refs[n];if(r)return r;let a=p.call(this,e,n);if(a===void 0){let r=e.localRefs?.[n],{schemaId:i}=this.opts;r&&(a=new s({schema:r,schemaId:i,root:e,baseId:t}))}if(a!==void 0)return e.refs[n]=u.call(this,a)}e.resolveRef=l;function u(e){return(0,i.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:c.call(this,e)}function d(e){for(let t of this._compilations)if(f(t,e))return t}e.getCompilingSchema=d;function f(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function p(e,t){let n;for(;typeof(n=this.refs[t])==`string`;)t=n;return n||this.schemas[t]||m.call(this,e,t)}function m(e,t){let n=this.opts.uriResolver.parse(t),r=(0,i._getFullPath)(this.opts.uriResolver,n),a=(0,i.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&r===a)return g.call(this,n,e);let o=(0,i.normalizeId)(r),l=this.refs[o]||this.schemas[o];if(typeof l==`string`){let t=m.call(this,e,l);return typeof t?.schema==`object`?g.call(this,n,t):void 0}if(typeof l?.schema==`object`){if(l.validate||c.call(this,l),o===(0,i.normalizeId)(t)){let{schema:t}=l,{schemaId:n}=this.opts,r=t[n];return r&&(a=(0,i.resolveUrl)(this.opts.uriResolver,a,r)),new s({schema:t,schemaId:n,root:e,baseId:a})}return g.call(this,n,l)}}e.resolveSchema=m;var h=new Set([`properties`,`patternProperties`,`enum`,`dependencies`,`definitions`]);function g(e,{baseId:t,schema:n,root:r}){if(e.fragment?.[0]!==`/`)return;for(let r of e.fragment.slice(1).split(`/`)){if(typeof n==`boolean`)return;let e=n[(0,a.unescapeFragment)(r)];if(e===void 0)return;n=e;let o=typeof n==`object`&&n[this.opts.schemaId];!h.has(r)&&o&&(t=(0,i.resolveUrl)(this.opts.uriResolver,t,o))}let o;if(typeof n!=`boolean`&&n.$ref&&!(0,a.schemaHasRulesButRef)(n,this.RULES)){let e=(0,i.resolveUrl)(this.opts.uriResolver,t,n.$ref);o=m.call(this,r,e)}let{schemaId:c}=this.opts;if(o||=new s({schema:n,schemaId:c,root:r,baseId:t}),o.schema!==o.root.schema)return o}})),$n=c({$id:()=>er,additionalProperties:()=>!1,default:()=>ar,description:()=>tr,properties:()=>ir,required:()=>rr,type:()=>nr}),er,tr,nr,rr,ir,ar,or=o((()=>{er=`https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#`,tr=`Meta-schema for $data reference (JSON AnySchema extension proposal)`,nr=`object`,rr=[`$data`],ir={$data:{type:`string`,anyOf:[{format:`relative-json-pointer`},{format:`json-pointer`}]}},ar={$id:er,description:tr,type:nr,required:rr,properties:ir,additionalProperties:!1}})),sr=s(((e,t)=>{var n=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),r=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),i=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),a=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),o=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function s(e){let t=``,n=0,r=0;for(r=0;r=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return``;t+=e[r];break}for(r+=1;r=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return``;t+=e[r]}return t}var c=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function l(e){return e.length=0,!0}function u(e,t,n){if(e.length){let r=s(e);if(r!==``)t.push(r);else return n.error=!0,!1;e.length=0}return!0}function d(e){let t=0,n={error:!1,address:``,zone:``},r=[],i=[],a=!1,o=!1,c=u;for(let s=0;s7){n.error=!0;break}s>0&&e[s-1]===`:`&&(a=!0),r.push(`:`);continue}else if(u===`%`){if(!c(i,r,n))break;c=l}else{i.push(u);continue}}return i.length&&(c===l?n.zone=i.join(``):o?r.push(i.join(``)):r.push(s(i))),n.address=r.join(``),n}function f(e){if(p(e,`:`)<2)return{host:e,isIPV6:!1};let t=d(e);if(t.error)return{host:e,isIPV6:!1};{let e=t.address,n=t.address;return t.zone&&(e+=`%`+t.zone,n+=`%25`+t.zone),{host:e,isIPV6:!0,escapedHost:n}}}function p(e,t){let n=0;for(let r=0;rh[e])}function y(e,t=!1){if(e.indexOf(`%`)===-1)return e;let n=``;for(let r=0;r{var{isUUID:n}=sr(),r=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,i=[`http`,`https`,`ws`,`wss`,`urn`,`urn:uuid`];function a(e){return i.indexOf(e)!==-1}function o(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?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`):!1}function s(e){return e.host||(e.error=e.error||`HTTP URIs must have a host.`),e}function c(e){let t=String(e.scheme).toLowerCase()===`https`;return(e.port===(t?443:80)||e.port===``)&&(e.port=void 0),e.path||=`/`,e}function l(e){return e.secure=o(e),e.resourceName=(e.path||`/`)+(e.query?`?`+e.query:``),e.path=void 0,e.query=void 0,e}function u(e){if((e.port===(o(e)?443:80)||e.port===``)&&(e.port=void 0),typeof e.secure==`boolean`&&(e.scheme=e.secure?`wss`:`ws`,e.secure=void 0),e.resourceName){let[t,n]=e.resourceName.split(`?`);e.path=t&&t!==`/`?t:void 0,e.query=n,e.resourceName=void 0}return e.fragment=void 0,e}function d(e,t){if(!e.path)return e.error=`URN can not be parsed`,e;let n=e.path.match(r);if(n){let r=t.scheme||e.scheme||`urn`;e.nid=n[1].toLowerCase(),e.nss=n[2];let i=y(`${r}:${t.nid||e.nid}`);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||`URN can not be parsed.`;return e}function f(e,t){if(e.nid===void 0)throw Error(`URN without nid cannot be serialized`);let n=t.scheme||e.scheme||`urn`,r=e.nid.toLowerCase(),i=y(`${n}:${t.nid||r}`);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${r||t.nid}:${o}`,t.skipEscape=!0,a}function p(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!n(r.uuid))&&(r.error=r.error||`UUID is not valid.`),r}function m(e){let t=e;return t.nss=(e.uuid||``).toLowerCase(),t}var h={scheme:`http`,domainHost:!0,parse:s,serialize:c},g={scheme:`https`,domainHost:h.domainHost,parse:s,serialize:c},_={scheme:`ws`,domainHost:!0,parse:l,serialize:u},v={http:h,https:g,ws:_,wss:{scheme:`wss`,domainHost:_.domainHost,parse:_.parse,serialize:_.serialize},urn:{scheme:`urn`,parse:d,serialize:f,skipNormalize:!0},"urn:uuid":{scheme:`urn:uuid`,parse:p,serialize:m,skipNormalize:!0}};Object.setPrototypeOf(v,null);function y(e){return e&&(v[e]||v[e.toLowerCase()])||void 0}t.exports={wsIsSecure:o,SCHEMES:v,isValidSchemeName:a,getSchemeHandler:y}})),lr=s(((e,t)=>{var{normalizeIPv6:n,removeDotSegments:r,recomposeAuthority:i,normalizePercentEncoding:a,normalizePathEncoding:o,escapePreservingEscapes:s,reescapeHostDelimiters:c,isIPv4:l,nonSimpleDomain:u}=sr(),{SCHEMES:d,getSchemeHandler:f}=cr();function p(e,t){return typeof e==`string`?e=S(e,t):typeof e==`object`&&(e=x(_(e,t),t)),e}function m(e,t,n){let r=n?Object.assign({scheme:`null`},n):{scheme:`null`},i=h(x(e,r),x(t,r),r,!0);return r.skipEscape=!0,_(i,r)}function h(e,t,n,i){let a={};return i||(e=x(_(e,n),n),t=x(_(t,n),n)),n||={},!n.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=r(t.path||``),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=r(t.path||``),a.query=t.query):(t.path?(t.path[0]===`/`?a.path=r(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path=`/`+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf(`/`)+1)+t.path:a.path=t.path,a.path=r(a.path)),a.query=t.query):(a.path=e.path,t.query===void 0?a.query=e.query:a.query=t.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function g(e,t,n){let r=w(e,n),i=w(t,n);return r!==void 0&&i!==void 0&&r.toLowerCase()===i.toLowerCase()}function _(e,t){let n={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:``},o=Object.assign({},t),c=[],l=f(o.scheme||n.scheme);l&&l.serialize&&l.serialize(n,o),n.path!==void 0&&(o.skipEscape?n.path=a(n.path):(n.path=s(n.path),n.scheme!==void 0&&(n.path=n.path.split(`%3A`).join(`:`)))),o.reference!==`suffix`&&n.scheme&&c.push(n.scheme,`:`);let u=i(n);if(u!==void 0&&(o.reference!==`suffix`&&c.push(`//`),c.push(u),n.path&&n.path[0]!==`/`&&c.push(`/`)),n.path!==void 0){let e=n.path;!o.absolutePath&&(!l||!l.absolutePath)&&(e=r(e)),u===void 0&&e[0]===`/`&&e[1]===`/`&&(e=`/%2F`+e.slice(2)),c.push(e)}return n.query!==void 0&&c.push(`?`,n.query),n.fragment!==void 0&&c.push(`#`,n.fragment),c.join(``)}var v=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function y(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.`}function b(e,t){let r=Object.assign({},t),i={scheme:void 0,userinfo:void 0,host:``,port:void 0,path:``,query:void 0,fragment:void 0},a=!1,s=!1;r.reference===`suffix`&&(e=r.scheme?r.scheme+`:`+e:`//`+e);let d=e.match(v);if(d){i.scheme=d[1],i.userinfo=d[3],i.host=d[4],i.port=parseInt(d[5],10),i.path=d[6]||``,i.query=d[7],i.fragment=d[8],isNaN(i.port)&&(i.port=d[5]);let t=y(i,d);if(t!==void 0&&(i.error=i.error||t,a=!0),i.host)if(l(i.host)===!1){let e=n(i.host);i.host=e.host.toLowerCase(),s=e.isIPV6}else s=!0;i.scheme===void 0&&i.userinfo===void 0&&i.host===void 0&&i.port===void 0&&i.query===void 0&&!i.path?i.reference=`same-document`:i.scheme===void 0?i.reference=`relative`:i.fragment===void 0?i.reference=`absolute`:i.reference=`uri`,r.reference&&r.reference!==`suffix`&&r.reference!==i.reference&&(i.error=i.error||`URI is not a `+r.reference+` reference.`);let p=f(r.scheme||i.scheme);if(!r.unicodeSupport&&(!p||!p.unicodeSupport)&&i.host&&(r.domainHost||p&&p.domainHost)&&s===!1&&u(i.host))try{i.host=URL.domainToASCII(i.host.toLowerCase())}catch(e){i.error=i.error||`Host's domain name can not be converted to ASCII: `+e}if((!p||p&&!p.skipNormalize)&&(e.indexOf(`%`)!==-1&&(i.scheme!==void 0&&(i.scheme=unescape(i.scheme)),i.host!==void 0&&(i.host=c(unescape(i.host),s))),i.path&&=o(i.path),i.fragment))try{i.fragment=encodeURI(decodeURIComponent(i.fragment))}catch{i.error=i.error||`URI malformed`}p&&p.parse&&p.parse(i,r)}else i.error=i.error||`URI can not be parsed.`;return{parsed:i,malformedAuthorityOrPort:a}}function x(e,t){return b(e,t).parsed}function S(e,t){return C(e,t).normalized}function C(e,t){let{parsed:n,malformedAuthorityOrPort:r}=b(e,t);return{normalized:r?e:_(n,t),malformedAuthorityOrPort:r}}function w(e,t){if(typeof e==`string`){let{normalized:n,malformedAuthorityOrPort:r}=C(e,t);return r?void 0:n}if(typeof e==`object`)return _(e,t)}var T={SCHEMES:d,normalize:p,resolve:m,resolveComponent:h,equal:g,serialize:_,parse:x};t.exports=T,t.exports.default=T,t.exports.fastUri=T})),ur=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=lr();t.code=`require("ajv/dist/runtime/uri").default`,e.default=t})),dr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=void 0;var t=Yn();Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return t.KeywordCxt}});var n=L();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return n._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return n.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return n.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return n.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return n.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return n.CodeGen}});var r=Xn(),i=Zn(),a=zn(),o=Qn(),s=L(),c=Jn(),l=Vn(),u=R(),f=(or(),d($n).default),p=ur(),m=(e,t)=>new RegExp(e,t);m.code=`new RegExp`;var h=[`removeAdditional`,`useDefaults`,`coerceTypes`],g=new Set([`validate`,`serialize`,`parse`,`wrapper`,`root`,`schema`,`keyword`,`pattern`,`formats`,`validate$data`,`func`,`obj`,`Error`]),_={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.`},v={ignoreKeywordsWithRef:``,jsPropertySyntax:``,unicode:`"minLength"/"maxLength" account for unicode characters by default.`},y=200;function b(e){let t=e.strict,n=e.code?.optimize,r=n===!0||n===void 0?1:n||0,i=e.code?.regExp??m,a=e.uriResolver??p.default;return{strictSchema:e.strictSchema??t??!0,strictNumbers:e.strictNumbers??t??!0,strictTypes:e.strictTypes??t??`log`,strictTuples:e.strictTuples??t??`log`,strictRequired:e.strictRequired??t??!1,code:e.code?{...e.code,optimize:r,regExp:i}:{optimize:r,regExp:i},loopRequired:e.loopRequired??y,loopEnum:e.loopEnum??y,meta:e.meta??!0,messages:e.messages??!0,inlineRefs:e.inlineRefs??!0,schemaId:e.schemaId??`$id`,addUsedSchema:e.addUsedSchema??!0,validateSchema:e.validateSchema??!0,validateFormats:e.validateFormats??!0,unicodeRegExp:e.unicodeRegExp??!0,int32range:e.int32range??!0,uriResolver:a}}var x=class{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,...b(e)};let{es5:t,lines:n}=this.opts.code;this.scope=new s.ValueScope({scope:{},prefixes:g,es5:t,lines:n}),this.logger=k(e.logger);let r=e.validateFormats;e.validateFormats=!1,this.RULES=(0,a.getRules)(),S.call(this,_,e,`NOT SUPPORTED`),S.call(this,v,e,`DEPRECATED`,`warn`),this._metaOpts=D.call(this),e.formats&&T.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&E.call(this,e.keywords),typeof e.meta==`object`&&this.addMetaSchema(e.meta),w.call(this),e.validateFormats=r}_addVocabularies(){this.addKeyword(`$async`)}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:n}=this.opts,r=f;n===`id`&&(r={...f},r.id=r.$id,delete r.$id),t&&e&&this.addMetaSchema(r,r[n],!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 n;if(typeof e==`string`){if(n=this.getSchema(e),!n)throw Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let r=n(t);return`$async`in n||(this.errors=n.errors),r}compile(e,t){let n=this._addSchema(e,t);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,t){if(typeof this.opts.loadSchema!=`function`)throw Error(`options.loadSchema should be a function`);let{loadSchema:n}=this.opts;return r.call(this,e,t);async function r(e,t){await a.call(this,e.$schema);let n=this._addSchema(e,t);return n.validate||o.call(this,n)}async function a(e){e&&!this.getSchema(e)&&await r.call(this,{$ref:e},!0)}async function o(e){try{return this._compileSchemaEnv(e)}catch(t){if(!(t instanceof i.default))throw t;return s.call(this,t),await c.call(this,t.missingSchema),o.call(this,e)}}function s({missingSchema:e,missingRef:t}){if(this.refs[e])throw Error(`AnySchema ${e} is loaded but ${t} cannot be resolved`)}async function c(e){let n=await l.call(this,e);this.refs[e]||await a.call(this,n.$schema),this.refs[e]||this.addSchema(n,e,t)}async function l(e){let t=this._loading[e];if(t)return t;try{return await(this._loading[e]=n(e))}finally{delete this._loading[e]}}}addSchema(e,t,n,r=this.opts.validateSchema){if(Array.isArray(e)){for(let t of e)this.addSchema(t,void 0,n,r);return this}let i;if(typeof e==`object`){let{schemaId:t}=this.opts;if(i=e[t],i!==void 0&&typeof i!=`string`)throw Error(`schema ${t} must be string`)}return t=(0,c.normalizeId)(t||i),this._checkUnique(t),this.schemas[t]=this._addSchema(e,n,t,r,!0),this}addMetaSchema(e,t,n=this.opts.validateSchema){return this.addSchema(e,t,!0,n),this}validateSchema(e,t){if(typeof e==`boolean`)return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!=`string`)throw Error(`$schema must be a string`);if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn(`meta-schema not available`),this.errors=null,!0;let r=this.validate(n,e);if(!r&&t){let e=`schema is invalid: `+this.errorsText();if(this.opts.validateSchema===`log`)this.logger.error(e);else throw Error(e)}return r}getSchema(e){let t;for(;typeof(t=C.call(this,e))==`string`;)e=t;if(t===void 0){let{schemaId:n}=this.opts,r=new o.SchemaEnv({schema:{},schemaId:n});if(t=o.resolveSchema.call(this,r,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=C.call(this,e);return typeof t==`object`&&this._cache.delete(t.schema),delete this.schemas[e],delete this.refs[e],this}case`object`:{let t=e;this._cache.delete(t);let n=e[this.opts.schemaId];return n&&(n=(0,c.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw Error(`ajv.removeSchema: invalid parameter`)}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let n;if(typeof e==`string`)n=e,typeof t==`object`&&(this.logger.warn(`these parameters are deprecated, see docs for addKeyword`),t.keyword=n);else if(typeof e==`object`&&t===void 0){if(t=e,n=t.keyword,Array.isArray(n)&&!n.length)throw Error(`addKeywords: keyword must be string or non-empty array`)}else throw Error(`invalid addKeywords parameters`);if(A.call(this,n,t),!t)return(0,u.eachItem)(n,e=>te.call(this,e)),this;j.call(this,t);let r={...t,type:(0,l.getJSONTypes)(t.type),schemaType:(0,l.getJSONTypes)(t.schemaType)};return(0,u.eachItem)(n,r.type.length===0?e=>te.call(this,e,r):e=>r.type.forEach(t=>te.call(this,e,r,t))),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 n of t.rules){let t=n.rules.findIndex(t=>t.keyword===e);t>=0&&n.rules.splice(t,1)}return this}addFormat(e,t){return typeof t==`string`&&(t=new RegExp(t)),this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=`, `,dataVar:n=`data`}={}){return!e||e.length===0?`No errors`:e.map(e=>`${n}${e.instancePath} ${e.message}`).reduce((e,n)=>e+t+n)}$dataMetaSchema(e,t){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let r of t){let t=r.split(`/`).slice(1),i=e;for(let e of t)i=i[e];for(let e in n){let t=n[e];if(typeof t!=`object`)continue;let{$data:r}=t.definition,a=i[e];r&&a&&(i[e]=M(a))}}return e}_removeAllSchemas(e,t){for(let n in e){let r=e[n];(!t||t.test(n))&&(typeof r==`string`?delete e[n]:r&&!r.meta&&(this._cache.delete(r.schema),delete e[n]))}}_addSchema(e,t,n,r=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:s}=this.opts;if(typeof e==`object`)a=e[s];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 l=this._cache.get(e);if(l!==void 0)return l;n=(0,c.normalizeId)(a||n);let u=c.getSchemaRefs.call(this,e,n);return l=new o.SchemaEnv({schema:e,schemaId:s,meta:t,baseId:n,localRefs:u}),this._cache.set(l.schema,l),i&&!n.startsWith(`#`)&&(n&&this._checkUnique(n),this.refs[n]=l),r&&this.validateSchema(e,!0),l}_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):o.compileSchema.call(this,e),!e.validate)throw Error(`ajv implementation error`);return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{o.compileSchema.call(this,e)}finally{this.opts=t}}};x.ValidationError=r.default,x.MissingRefError=i.default,e.default=x;function S(e,t,n,r=`error`){for(let i in e){let a=i;a in t&&this.logger[r](`${n}: option ${i}. ${e[a]}`)}}function C(e){return e=(0,c.normalizeId)(e),this.schemas[e]||this.refs[e]}function w(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function T(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function E(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 n=e[t];n.keyword||=t,this.addKeyword(n)}}function D(){let e={...this.opts};for(let t of h)delete e[t];return e}var O={log(){},warn(){},error(){}};function k(e){if(e===!1)return O;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 ee=/^[a-z_$][a-z0-9_$:-]*$/i;function A(e,t){let{RULES:n}=this;if((0,u.eachItem)(e,e=>{if(n.keywords[e])throw Error(`Keyword ${e} is already defined`);if(!ee.test(e))throw Error(`Keyword ${e} has invalid name`)}),t&&t.$data&&!(`code`in t||`validate`in t))throw Error(`$data keyword must have "code" or "validate" function`)}function te(e,t,n){var r;let i=t?.post;if(n&&i)throw Error(`keyword with "post" flag cannot have "type"`);let{RULES:a}=this,o=i?a.post:a.rules.find(({type:e})=>e===n);if(o||(o={type:n,rules:[]},a.rules.push(o)),a.keywords[e]=!0,!t)return;let s={keyword:e,definition:{...t,type:(0,l.getJSONTypes)(t.type),schemaType:(0,l.getJSONTypes)(t.schemaType)}};t.before?ne.call(this,o,s,t.before):o.rules.push(s),a.all[e]=s,(r=t.implements)==null||r.forEach(e=>this.addKeyword(e))}function ne(e,t,n){let r=e.rules.findIndex(e=>e.keyword===n);r>=0?e.rules.splice(r,0,t):(e.rules.push(t),this.logger.warn(`rule ${n} is not defined`))}function j(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=M(t)),e.validateSchema=this.compile(t,!0))}var re={$ref:`https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#`};function M(e){return{anyOf:[e,re]}}})),fr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={keyword:`id`,code(){throw Error(`NOT SUPPORTED: keyword "id", use "$id" for schema ID`)}}})),pr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.callRef=e.getValidate=void 0;var t=Zn(),n=Un(),r=L(),i=In(),a=Qn(),o=R(),s={keyword:`$ref`,schemaType:`string`,code(e){let{gen:n,schema:i,it:o}=e,{baseId:s,schemaEnv:u,validateName:d,opts:f,self:p}=o,{root:m}=u;if((i===`#`||i===`#/`)&&s===m.baseId)return g();let h=a.resolveRef.call(p,m,s,i);if(h===void 0)throw new t.default(o.opts.uriResolver,s,i);if(h instanceof a.SchemaEnv)return _(h);return v(h);function g(){if(u===m)return l(e,d,u,u.$async);let t=n.scopeValue(`root`,{ref:m});return l(e,(0,r._)`${t}.validate`,m,m.$async)}function _(t){l(e,c(e,t),t,t.$async)}function v(t){let a=n.scopeValue(`schema`,f.code.source===!0?{ref:t,code:(0,r.stringify)(t)}:{ref:t}),o=n.name(`valid`),s=e.subschema({schema:t,dataTypes:[],schemaPath:r.nil,topSchemaRef:a,errSchemaPath:i},o);e.mergeEvaluated(s),e.ok(o)}}};function c(e,t){let{gen:n}=e;return t.validate?n.scopeValue(`validate`,{ref:t.validate}):(0,r._)`${n.scopeValue(`wrapper`,{ref:t})}.validate`}e.getValidate=c;function l(e,t,a,s){let{gen:c,it:l}=e,{allErrors:u,schemaEnv:d,opts:f}=l,p=f.passContext?i.default.this:r.nil;s?m():h();function m(){if(!d.$async)throw Error(`async schema referenced by sync schema`);let i=c.let(`valid`);c.try(()=>{c.code((0,r._)`await ${(0,n.callValidateCode)(e,t,p)}`),_(t),u||c.assign(i,!0)},e=>{c.if((0,r._)`!(${e} instanceof ${l.ValidationError})`,()=>c.throw(e)),g(e),u||c.assign(i,!1)}),e.ok(i)}function h(){e.result((0,n.callValidateCode)(e,t,p),()=>_(t),()=>g(t))}function g(e){let t=(0,r._)`${e}.errors`;c.assign(i.default.vErrors,(0,r._)`${i.default.vErrors} === null ? ${t} : ${i.default.vErrors}.concat(${t})`),c.assign(i.default.errors,(0,r._)`${i.default.vErrors}.length`)}function _(e){if(!l.opts.unevaluated)return;let t=a?.validate?.evaluated;if(l.props!==!0)if(t&&!t.dynamicProps)t.props!==void 0&&(l.props=o.mergeEvaluated.props(c,t.props,l.props));else{let t=c.var(`props`,(0,r._)`${e}.evaluated.props`);l.props=o.mergeEvaluated.props(c,t,l.props,r.Name)}if(l.items!==!0)if(t&&!t.dynamicItems)t.items!==void 0&&(l.items=o.mergeEvaluated.items(c,t.items,l.items));else{let t=c.var(`items`,(0,r._)`${e}.evaluated.items`);l.items=o.mergeEvaluated.items(c,t,l.items,r.Name)}}}e.callRef=l,e.default=s})),mr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=fr(),n=pr();e.default=[`$schema`,`$id`,`$defs`,`$vocabulary`,{keyword:`$comment`},`definitions`,t.default,n.default]})),hr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=t.operators,r={maximum:{okStr:`<=`,ok:n.LTE,fail:n.GT},minimum:{okStr:`>=`,ok:n.GTE,fail:n.LT},exclusiveMaximum:{okStr:`<`,ok:n.LT,fail:n.GTE},exclusiveMinimum:{okStr:`>`,ok:n.GT,fail:n.LTE}};e.default={keyword:Object.keys(r),type:`number`,schemaType:`number`,$data:!0,error:{message:({keyword:e,schemaCode:n})=>(0,t.str)`must be ${r[e].okStr} ${n}`,params:({keyword:e,schemaCode:n})=>(0,t._)`{comparison: ${r[e].okStr}, limit: ${n}}`},code(e){let{keyword:n,data:i,schemaCode:a}=e;e.fail$data((0,t._)`${i} ${r[n].fail} ${a} || isNaN(${i})`)}}})),gr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L();e.default={keyword:`multipleOf`,type:`number`,schemaType:`number`,$data:!0,error:{message:({schemaCode:e})=>(0,t.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,t._)`{multipleOf: ${e}}`},code(e){let{gen:n,data:r,schemaCode:i,it:a}=e,o=a.opts.multipleOfPrecision,s=n.let(`res`),c=o?(0,t._)`Math.abs(Math.round(${s}) - ${s}) > 1e-${o}`:(0,t._)`${s} !== parseInt(${s})`;e.fail$data((0,t._)`(${i} === 0 || (${s} = ${r}/${i}, ${c}))`)}}})),_r=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});function t(e){let t=e.length,n=0,r=0,i;for(;r=55296&&i<=56319&&r{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=R(),r=_r();e.default={keyword:[`maxLength`,`minLength`],type:`string`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxLength`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} characters`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:i,data:a,schemaCode:o,it:s}=e,c=i===`maxLength`?t.operators.GT:t.operators.LT,l=s.opts.unicode===!1?(0,t._)`${a}.length`:(0,t._)`${(0,n.useFunc)(e.gen,r.default)}(${a})`;e.fail$data((0,t._)`${l} ${c} ${o}`)}}})),yr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Un(),n=R(),r=L();e.default={keyword:`pattern`,type:`string`,schemaType:`string`,$data:!0,error:{message:({schemaCode:e})=>(0,r.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,r._)`{pattern: ${e}}`},code(e){let{gen:i,data:a,$data:o,schema:s,schemaCode:c,it:l}=e,u=l.opts.unicodeRegExp?`u`:``;if(o){let{regExp:t}=l.opts.code,o=t.code===`new RegExp`?(0,r._)`new RegExp`:(0,n.useFunc)(i,t),s=i.let(`valid`);i.try(()=>i.assign(s,(0,r._)`${o}(${c}, ${u}).test(${a})`),()=>i.assign(s,!1)),e.fail$data((0,r._)`!${s}`)}else{let n=(0,t.usePattern)(e,s);e.fail$data((0,r._)`!${n}.test(${a})`)}}}})),br=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L();e.default={keyword:[`maxProperties`,`minProperties`],type:`object`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxProperties`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} properties`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:n,data:r,schemaCode:i}=e,a=n===`maxProperties`?t.operators.GT:t.operators.LT;e.fail$data((0,t._)`Object.keys(${r}).length ${a} ${i}`)}}})),xr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Un(),n=L(),r=R();e.default={keyword:`required`,type:`object`,schemaType:`array`,$data:!0,error:{message:({params:{missingProperty:e}})=>(0,n.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,n._)`{missingProperty: ${e}}`},code(e){let{gen:i,schema:a,schemaCode:o,data:s,$data:c,it:l}=e,{opts:u}=l;if(!c&&a.length===0)return;let d=a.length>=u.loopRequired;if(l.allErrors?f():p(),u.strictRequired){let t=e.parentSchema.properties,{definedProperties:n}=e.it;for(let e of a)if(t?.[e]===void 0&&!n.has(e)){let t=`required property "${e}" is not defined at "${l.schemaEnv.baseId+l.errSchemaPath}" (strictRequired)`;(0,r.checkStrictMode)(l,t,l.opts.strictRequired)}}function f(){if(d||c)e.block$data(n.nil,m);else for(let n of a)(0,t.checkReportMissingProp)(e,n)}function p(){let n=i.let(`missing`);if(d||c){let t=i.let(`valid`,!0);e.block$data(t,()=>h(n,t)),e.ok(t)}else i.if((0,t.checkMissingProp)(e,a,n)),(0,t.reportMissingProp)(e,n),i.else()}function m(){i.forOf(`prop`,o,n=>{e.setParams({missingProperty:n}),i.if((0,t.noPropertyInData)(i,s,n,u.ownProperties),()=>e.error())})}function h(r,a){e.setParams({missingProperty:r}),i.forOf(r,o,()=>{i.assign(a,(0,t.propertyInData)(i,s,r,u.ownProperties)),i.if((0,n.not)(a),()=>{e.error(),i.break()})},n.nil)}}}})),Sr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L();e.default={keyword:[`maxItems`,`minItems`],type:`array`,schemaType:`number`,$data:!0,error:{message({keyword:e,schemaCode:n}){let r=e===`maxItems`?`more`:`fewer`;return(0,t.str)`must NOT have ${r} than ${n} items`},params:({schemaCode:e})=>(0,t._)`{limit: ${e}}`},code(e){let{keyword:n,data:r,schemaCode:i}=e,a=n===`maxItems`?t.operators.GT:t.operators.LT;e.fail$data((0,t._)`${r}.length ${a} ${i}`)}}})),Cr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Kn();t.code=`require("ajv/dist/runtime/equal").default`,e.default=t})),wr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Vn(),n=L(),r=R(),i=Cr();e.default={keyword:`uniqueItems`,type:`array`,schemaType:`boolean`,$data:!0,error:{message:({params:{i:e,j:t}})=>(0,n.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,n._)`{i: ${e}, j: ${t}}`},code(e){let{gen:a,data:o,$data:s,schema:c,parentSchema:l,schemaCode:u,it:d}=e;if(!s&&!c)return;let f=a.let(`valid`),p=l.items?(0,t.getSchemaTypes)(l.items):[];e.block$data(f,m,(0,n._)`${u} === false`),e.ok(f);function m(){let t=a.let(`i`,(0,n._)`${o}.length`),r=a.let(`j`);e.setParams({i:t,j:r}),a.assign(f,!0),a.if((0,n._)`${t} > 1`,()=>(h()?g:_)(t,r))}function h(){return p.length>0&&!p.some(e=>e===`object`||e===`array`)}function g(r,i){let s=a.name(`item`),c=(0,t.checkDataTypes)(p,s,d.opts.strictNumbers,t.DataType.Wrong),l=a.const(`indices`,(0,n._)`{}`);a.for((0,n._)`;${r}--;`,()=>{a.let(s,(0,n._)`${o}[${r}]`),a.if(c,(0,n._)`continue`),p.length>1&&a.if((0,n._)`typeof ${s} == "string"`,(0,n._)`${s} += "_"`),a.if((0,n._)`typeof ${l}[${s}] == "number"`,()=>{a.assign(i,(0,n._)`${l}[${s}]`),e.error(),a.assign(f,!1).break()}).code((0,n._)`${l}[${s}] = ${r}`)})}function _(t,s){let c=(0,r.useFunc)(a,i.default),l=a.name(`outer`);a.label(l).for((0,n._)`;${t}--;`,()=>a.for((0,n._)`${s} = ${t}; ${s}--;`,()=>a.if((0,n._)`${c}(${o}[${t}], ${o}[${s}])`,()=>{e.error(),a.assign(f,!1).break(l)})))}}}})),Tr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=R(),r=Cr();e.default={keyword:`const`,$data:!0,error:{message:`must be equal to constant`,params:({schemaCode:e})=>(0,t._)`{allowedValue: ${e}}`},code(e){let{gen:i,data:a,$data:o,schemaCode:s,schema:c}=e;o||c&&typeof c==`object`?e.fail$data((0,t._)`!${(0,n.useFunc)(i,r.default)}(${a}, ${s})`):e.fail((0,t._)`${c} !== ${a}`)}}})),Er=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=R(),r=Cr();e.default={keyword:`enum`,schemaType:`array`,$data:!0,error:{message:`must be equal to one of the allowed values`,params:({schemaCode:e})=>(0,t._)`{allowedValues: ${e}}`},code(e){let{gen:i,data:a,$data:o,schema:s,schemaCode:c,it:l}=e;if(!o&&s.length===0)throw Error(`enum must have non-empty array`);let u=s.length>=l.opts.loopEnum,d,f=()=>d??=(0,n.useFunc)(i,r.default),p;if(u||o)p=i.let(`valid`),e.block$data(p,m);else{if(!Array.isArray(s))throw Error(`ajv implementation error`);let e=i.const(`vSchema`,c);p=(0,t.or)(...s.map((t,n)=>h(e,n)))}e.pass(p);function m(){i.assign(p,!1),i.forOf(`v`,c,e=>i.if((0,t._)`${f()}(${a}, ${e})`,()=>i.assign(p,!0).break()))}function h(e,n){let r=s[n];return typeof r==`object`&&r?(0,t._)`${f()}(${a}, ${e}[${n}])`:(0,t._)`${a} === ${r}`}}}})),Dr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=hr(),n=gr(),r=vr(),i=yr(),a=br(),o=xr(),s=Sr(),c=wr(),l=Tr(),u=Er();e.default=[t.default,n.default,r.default,i.default,a.default,o.default,s.default,c.default,{keyword:`type`,schemaType:[`string`,`array`]},{keyword:`nullable`,schemaType:`boolean`},l.default,u.default]})),Or=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateAdditionalItems=void 0;var t=L(),n=R(),r={keyword:`additionalItems`,type:`array`,schemaType:[`boolean`,`object`],before:`uniqueItems`,error:{message:({params:{len:e}})=>(0,t.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,t._)`{limit: ${e}}`},code(e){let{parentSchema:t,it:r}=e,{items:a}=t;if(!Array.isArray(a)){(0,n.checkStrictMode)(r,`"additionalItems" is ignored when "items" is not an array of schemas`);return}i(e,a)}};function i(e,r){let{gen:i,schema:a,data:o,keyword:s,it:c}=e;c.items=!0;let l=i.const(`len`,(0,t._)`${o}.length`);if(a===!1)e.setParams({len:r.length}),e.pass((0,t._)`${l} <= ${r.length}`);else if(typeof a==`object`&&!(0,n.alwaysValidSchema)(c,a)){let n=i.var(`valid`,(0,t._)`${l} <= ${r.length}`);i.if((0,t.not)(n),()=>u(n)),e.ok(n)}function u(a){i.forRange(`i`,r.length,l,r=>{e.subschema({keyword:s,dataProp:r,dataPropType:n.Type.Num},a),c.allErrors||i.if((0,t.not)(a),()=>i.break())})}}e.validateAdditionalItems=i,e.default=r})),kr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateTuple=void 0;var t=L(),n=R(),r=Un(),i={keyword:`items`,type:`array`,schemaType:[`object`,`array`,`boolean`],before:`uniqueItems`,code(e){let{schema:t,it:i}=e;if(Array.isArray(t))return a(e,`additionalItems`,t);i.items=!0,!(0,n.alwaysValidSchema)(i,t)&&e.ok((0,r.validateArray)(e))}};function a(e,r,i=e.schema){let{gen:a,parentSchema:o,data:s,keyword:c,it:l}=e;f(o),l.opts.unevaluated&&i.length&&l.items!==!0&&(l.items=n.mergeEvaluated.items(a,i.length,l.items));let u=a.name(`valid`),d=a.const(`len`,(0,t._)`${s}.length`);i.forEach((r,i)=>{(0,n.alwaysValidSchema)(l,r)||(a.if((0,t._)`${d} > ${i}`,()=>e.subschema({keyword:c,schemaProp:i,dataProp:i},u)),e.ok(u))});function f(e){let{opts:t,errSchemaPath:a}=l,o=i.length,s=o===e.minItems&&(o===e.maxItems||e[r]===!1);if(t.strictTuples&&!s){let e=`"${c}" is ${o}-tuple, but minItems or maxItems/${r} are not specified or different at path "${a}"`;(0,n.checkStrictMode)(l,e,t.strictTuples)}}}e.validateTuple=a,e.default=i})),Ar=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=kr();e.default={keyword:`prefixItems`,type:`array`,schemaType:[`array`],before:`uniqueItems`,code:e=>(0,t.validateTuple)(e,`items`)}})),jr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=R(),r=Un(),i=Or();e.default={keyword:`items`,type:`array`,schemaType:[`object`,`boolean`],before:`uniqueItems`,error:{message:({params:{len:e}})=>(0,t.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,t._)`{limit: ${e}}`},code(e){let{schema:t,parentSchema:a,it:o}=e,{prefixItems:s}=a;o.items=!0,!(0,n.alwaysValidSchema)(o,t)&&(s?(0,i.validateAdditionalItems)(e,s):e.ok((0,r.validateArray)(e)))}}})),Mr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=R();e.default={keyword:`contains`,type:`array`,schemaType:[`object`,`boolean`],before:`uniqueItems`,trackErrors:!0,error:{message:({params:{min:e,max:n}})=>n===void 0?(0,t.str)`must contain at least ${e} valid item(s)`:(0,t.str)`must contain at least ${e} and no more than ${n} valid item(s)`,params:({params:{min:e,max:n}})=>n===void 0?(0,t._)`{minContains: ${e}}`:(0,t._)`{minContains: ${e}, maxContains: ${n}}`},code(e){let{gen:r,schema:i,parentSchema:a,data:o,it:s}=e,c,l,{minContains:u,maxContains:d}=a;s.opts.next?(c=u===void 0?1:u,l=d):c=1;let f=r.const(`len`,(0,t._)`${o}.length`);if(e.setParams({min:c,max:l}),l===void 0&&c===0){(0,n.checkStrictMode)(s,`"minContains" == 0 without "maxContains": "contains" keyword ignored`);return}if(l!==void 0&&c>l){(0,n.checkStrictMode)(s,`"minContains" > "maxContains" is always invalid`),e.fail();return}if((0,n.alwaysValidSchema)(s,i)){let n=(0,t._)`${f} >= ${c}`;l!==void 0&&(n=(0,t._)`${n} && ${f} <= ${l}`),e.pass(n);return}s.items=!0;let p=r.name(`valid`);l===void 0&&c===1?h(p,()=>r.if(p,()=>r.break())):c===0?(r.let(p,!0),l!==void 0&&r.if((0,t._)`${o}.length > 0`,m)):(r.let(p,!1),m()),e.result(p,()=>e.reset());function m(){let e=r.name(`_valid`),t=r.let(`count`,0);h(e,()=>r.if(e,()=>g(t)))}function h(t,i){r.forRange(`i`,0,f,r=>{e.subschema({keyword:`contains`,dataProp:r,dataPropType:n.Type.Num,compositeRule:!0},t),i()})}function g(e){r.code((0,t._)`${e}++`),l===void 0?r.if((0,t._)`${e} >= ${c}`,()=>r.assign(p,!0).break()):(r.if((0,t._)`${e} > ${l}`,()=>r.assign(p,!1).break()),c===1?r.assign(p,!0):r.if((0,t._)`${e} >= ${c}`,()=>r.assign(p,!0)))}}}})),Nr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.validateSchemaDeps=e.validatePropertyDeps=e.error=void 0;var t=L(),n=R(),r=Un();e.error={message:({params:{property:e,depsCount:n,deps:r}})=>{let i=n===1?`property`:`properties`;return(0,t.str)`must have ${i} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:n,deps:r,missingProperty:i}})=>(0,t._)`{property: ${e}, + missingProperty: ${i}, + depsCount: ${n}, + deps: ${r}}`};var i={keyword:`dependencies`,type:`object`,schemaType:`object`,error:e.error,code(e){let[t,n]=a(e);o(e,t),s(e,n)}};function a({schema:e}){let t={},n={};for(let r in e){if(r===`__proto__`)continue;let i=Array.isArray(e[r])?t:n;i[r]=e[r]}return[t,n]}function o(e,n=e.schema){let{gen:i,data:a,it:o}=e;if(Object.keys(n).length===0)return;let s=i.let(`missing`);for(let c in n){let l=n[c];if(l.length===0)continue;let u=(0,r.propertyInData)(i,a,c,o.opts.ownProperties);e.setParams({property:c,depsCount:l.length,deps:l.join(`, `)}),o.allErrors?i.if(u,()=>{for(let t of l)(0,r.checkReportMissingProp)(e,t)}):(i.if((0,t._)`${u} && (${(0,r.checkMissingProp)(e,l,s)})`),(0,r.reportMissingProp)(e,s),i.else())}}e.validatePropertyDeps=o;function s(e,t=e.schema){let{gen:i,data:a,keyword:o,it:s}=e,c=i.name(`valid`);for(let l in t)(0,n.alwaysValidSchema)(s,t[l])||(i.if((0,r.propertyInData)(i,a,l,s.opts.ownProperties),()=>{let t=e.subschema({keyword:o,schemaProp:l},c);e.mergeValidEvaluated(t,c)},()=>i.var(c,!0)),e.ok(c))}e.validateSchemaDeps=s,e.default=i})),Pr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=R();e.default={keyword:`propertyNames`,type:`object`,schemaType:[`object`,`boolean`],error:{message:`property name must be valid`,params:({params:e})=>(0,t._)`{propertyName: ${e.propertyName}}`},code(e){let{gen:r,schema:i,data:a,it:o}=e;if((0,n.alwaysValidSchema)(o,i))return;let s=r.name(`valid`);r.forIn(`key`,a,n=>{e.setParams({propertyName:n}),e.subschema({keyword:`propertyNames`,data:n,dataTypes:[`string`],propertyName:n,compositeRule:!0},s),r.if((0,t.not)(s),()=>{e.error(!0),o.allErrors||r.break()})}),e.ok(s)}}})),Fr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Un(),n=L(),r=In(),i=R();e.default={keyword:`additionalProperties`,type:[`object`],schemaType:[`boolean`,`object`],allowUndefined:!0,trackErrors:!0,error:{message:`must NOT have additional properties`,params:({params:e})=>(0,n._)`{additionalProperty: ${e.additionalProperty}}`},code(e){let{gen:a,schema:o,parentSchema:s,data:c,errsCount:l,it:u}=e;if(!l)throw Error(`ajv implementation error`);let{allErrors:d,opts:f}=u;if(u.props=!0,f.removeAdditional!==`all`&&(0,i.alwaysValidSchema)(u,o))return;let p=(0,t.allSchemaProperties)(s.properties),m=(0,t.allSchemaProperties)(s.patternProperties);h(),e.ok((0,n._)`${l} === ${r.default.errors}`);function h(){a.forIn(`key`,c,e=>{!p.length&&!m.length?v(e):a.if(g(e),()=>v(e))})}function g(r){let o;if(p.length>8){let e=(0,i.schemaRefOrVal)(u,s.properties,`properties`);o=(0,t.isOwnProperty)(a,e,r)}else o=p.length?(0,n.or)(...p.map(e=>(0,n._)`${r} === ${e}`)):n.nil;return m.length&&(o=(0,n.or)(o,...m.map(i=>(0,n._)`${(0,t.usePattern)(e,i)}.test(${r})`))),(0,n.not)(o)}function _(e){a.code((0,n._)`delete ${c}[${e}]`)}function v(t){if(f.removeAdditional===`all`||f.removeAdditional&&o===!1){_(t);return}if(o===!1){e.setParams({additionalProperty:t}),e.error(),d||a.break();return}if(typeof o==`object`&&!(0,i.alwaysValidSchema)(u,o)){let r=a.name(`valid`);f.removeAdditional===`failing`?(y(t,r,!1),a.if((0,n.not)(r),()=>{e.reset(),_(t)})):(y(t,r),d||a.if((0,n.not)(r),()=>a.break()))}}function y(t,n,r){let a={keyword:`additionalProperties`,dataProp:t,dataPropType:i.Type.Str};r===!1&&Object.assign(a,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(a,n)}}}})),Ir=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Yn(),n=Un(),r=R(),i=Fr();e.default={keyword:`properties`,type:`object`,schemaType:`object`,code(e){let{gen:a,schema:o,parentSchema:s,data:c,it:l}=e;l.opts.removeAdditional===`all`&&s.additionalProperties===void 0&&i.default.code(new t.KeywordCxt(l,i.default,`additionalProperties`));let u=(0,n.allSchemaProperties)(o);for(let e of u)l.definedProperties.add(e);l.opts.unevaluated&&u.length&&l.props!==!0&&(l.props=r.mergeEvaluated.props(a,(0,r.toHash)(u),l.props));let d=u.filter(e=>!(0,r.alwaysValidSchema)(l,o[e]));if(d.length===0)return;let f=a.name(`valid`);for(let t of d)p(t)?m(t):(a.if((0,n.propertyInData)(a,c,t,l.opts.ownProperties)),m(t),l.allErrors||a.else().var(f,!0),a.endIf()),e.it.definedProperties.add(t),e.ok(f);function p(e){return l.opts.useDefaults&&!l.compositeRule&&o[e].default!==void 0}function m(t){e.subschema({keyword:`properties`,schemaProp:t,dataProp:t},f)}}}})),Lr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Un(),n=L(),r=R(),i=R();e.default={keyword:`patternProperties`,type:`object`,schemaType:`object`,code(e){let{gen:a,schema:o,data:s,parentSchema:c,it:l}=e,{opts:u}=l,d=(0,t.allSchemaProperties)(o),f=d.filter(e=>(0,r.alwaysValidSchema)(l,o[e]));if(d.length===0||f.length===d.length&&(!l.opts.unevaluated||l.props===!0))return;let p=u.strictSchema&&!u.allowMatchingProperties&&c.properties,m=a.name(`valid`);l.props!==!0&&!(l.props instanceof n.Name)&&(l.props=(0,i.evaluatedPropsToName)(a,l.props));let{props:h}=l;g();function g(){for(let e of d)p&&_(e),l.allErrors?v(e):(a.var(m,!0),v(e),a.if(m))}function _(e){for(let t in p)new RegExp(e).test(t)&&(0,r.checkStrictMode)(l,`property ${t} matches pattern ${e} (use allowMatchingProperties)`)}function v(r){a.forIn(`key`,s,o=>{a.if((0,n._)`${(0,t.usePattern)(e,r)}.test(${o})`,()=>{let t=f.includes(r);t||e.subschema({keyword:`patternProperties`,schemaProp:r,dataProp:o,dataPropType:i.Type.Str},m),l.opts.unevaluated&&h!==!0?a.assign((0,n._)`${h}[${o}]`,!0):!t&&!l.allErrors&&a.if((0,n.not)(m),()=>a.break())})})}}}})),Rr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=R();e.default={keyword:`not`,schemaType:[`object`,`boolean`],trackErrors:!0,code(e){let{gen:n,schema:r,it:i}=e;if((0,t.alwaysValidSchema)(i,r)){e.fail();return}let a=n.name(`valid`);e.subschema({keyword:`not`,compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:`must NOT be valid`}}})),zr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={keyword:`anyOf`,schemaType:`array`,trackErrors:!0,code:Un().validateUnion,error:{message:`must match a schema in anyOf`}}})),Br=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=R();e.default={keyword:`oneOf`,schemaType:`array`,trackErrors:!0,error:{message:`must match exactly one schema in oneOf`,params:({params:e})=>(0,t._)`{passingSchemas: ${e.passing}}`},code(e){let{gen:r,schema:i,parentSchema:a,it:o}=e;if(!Array.isArray(i))throw Error(`ajv implementation error`);if(o.opts.discriminator&&a.discriminator)return;let s=i,c=r.let(`valid`,!1),l=r.let(`passing`,null),u=r.name(`_valid`);e.setParams({passing:l}),r.block(d),e.result(c,()=>e.reset(),()=>e.error(!0));function d(){s.forEach((i,a)=>{let s;(0,n.alwaysValidSchema)(o,i)?r.var(u,!0):s=e.subschema({keyword:`oneOf`,schemaProp:a,compositeRule:!0},u),a>0&&r.if((0,t._)`${u} && ${c}`).assign(c,!1).assign(l,(0,t._)`[${l}, ${a}]`).else(),r.if(u,()=>{r.assign(c,!0),r.assign(l,a),s&&e.mergeEvaluated(s,t.Name)})})}}}})),Vr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=R();e.default={keyword:`allOf`,schemaType:`array`,code(e){let{gen:n,schema:r,it:i}=e;if(!Array.isArray(r))throw Error(`ajv implementation error`);let a=n.name(`valid`);r.forEach((n,r)=>{if((0,t.alwaysValidSchema)(i,n))return;let o=e.subschema({keyword:`allOf`,schemaProp:r},a);e.ok(a),e.mergeEvaluated(o)})}}})),Hr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=R(),r={keyword:`if`,schemaType:[`object`,`boolean`],trackErrors:!0,error:{message:({params:e})=>(0,t.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,t._)`{failingKeyword: ${e.ifClause}}`},code(e){let{gen:r,parentSchema:a,it:o}=e;a.then===void 0&&a.else===void 0&&(0,n.checkStrictMode)(o,`"if" without "then" and "else" is ignored`);let s=i(o,`then`),c=i(o,`else`);if(!s&&!c)return;let l=r.let(`valid`,!0),u=r.name(`_valid`);if(d(),e.reset(),s&&c){let t=r.let(`ifClause`);e.setParams({ifClause:t}),r.if(u,f(`then`,t),f(`else`,t))}else s?r.if(u,f(`then`)):r.if((0,t.not)(u),f(`else`));e.pass(l,()=>e.error(!0));function d(){let t=e.subschema({keyword:`if`,compositeRule:!0,createErrors:!1,allErrors:!1},u);e.mergeEvaluated(t)}function f(n,i){return()=>{let a=e.subschema({keyword:n},u);r.assign(l,u),e.mergeValidEvaluated(a,l),i?r.assign(i,(0,t._)`${n}`):e.setParams({ifClause:n})}}}};function i(e,t){let r=e.schema[t];return r!==void 0&&!(0,n.alwaysValidSchema)(e,r)}e.default=r})),Ur=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=R();e.default={keyword:[`then`,`else`],schemaType:[`object`,`boolean`],code({keyword:e,parentSchema:n,it:r}){n.if===void 0&&(0,t.checkStrictMode)(r,`"${e}" without "if" is ignored`)}}})),Wr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Or(),n=Ar(),r=kr(),i=jr(),a=Mr(),o=Nr(),s=Pr(),c=Fr(),l=Ir(),u=Lr(),d=Rr(),f=zr(),p=Br(),m=Vr(),h=Hr(),g=Ur();function _(e=!1){let _=[d.default,f.default,p.default,m.default,h.default,g.default,s.default,c.default,o.default,l.default,u.default];return e?_.push(n.default,i.default):_.push(t.default,r.default),_.push(a.default),_}e.default=_})),Gr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L();e.default={keyword:`format`,type:[`number`,`string`],schemaType:`string`,$data:!0,error:{message:({schemaCode:e})=>(0,t.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,t._)`{format: ${e}}`},code(e,n){let{gen:r,data:i,$data:a,schema:o,schemaCode:s,it:c}=e,{opts:l,errSchemaPath:u,schemaEnv:d,self:f}=c;if(!l.validateFormats)return;a?p():m();function p(){let a=r.scopeValue(`formats`,{ref:f.formats,code:l.code.formats}),o=r.const(`fDef`,(0,t._)`${a}[${s}]`),c=r.let(`fType`),u=r.let(`format`);r.if((0,t._)`typeof ${o} == "object" && !(${o} instanceof RegExp)`,()=>r.assign(c,(0,t._)`${o}.type || "string"`).assign(u,(0,t._)`${o}.validate`),()=>r.assign(c,(0,t._)`"string"`).assign(u,o)),e.fail$data((0,t.or)(p(),m()));function p(){return l.strictSchema===!1?t.nil:(0,t._)`${s} && !${u}`}function m(){let e=d.$async?(0,t._)`(${o}.async ? await ${u}(${i}) : ${u}(${i}))`:(0,t._)`${u}(${i})`,r=(0,t._)`(typeof ${u} == "function" ? ${e} : ${u}.test(${i}))`;return(0,t._)`${u} && ${u} !== true && ${c} === ${n} && !${r}`}}function m(){let a=f.formats[o];if(!a){m();return}if(a===!0)return;let[s,c,p]=h(a);s===n&&e.pass(g());function m(){if(l.strictSchema===!1){f.logger.warn(e());return}throw Error(e());function e(){return`unknown format "${o}" ignored in schema at path "${u}"`}}function h(e){let n=e instanceof RegExp?(0,t.regexpCode)(e):l.code.formats?(0,t._)`${l.code.formats}${(0,t.getProperty)(o)}`:void 0,i=r.scopeValue(`formats`,{key:o,ref:e,code:n});return typeof e==`object`&&!(e instanceof RegExp)?[e.type||`string`,e.validate,(0,t._)`${i}.validate`]:[`string`,e,i]}function g(){if(typeof a==`object`&&!(a instanceof RegExp)&&a.async){if(!d.$async)throw Error(`async format in sync schema`);return(0,t._)`await ${p}(${i})`}return typeof c==`function`?(0,t._)`${p}(${i})`:(0,t._)`${p}.test(${i})`}}}}})),Kr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=[Gr().default]})),qr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.contentVocabulary=e.metadataVocabulary=void 0,e.metadataVocabulary=[`title`,`description`,`default`,`deprecated`,`readOnly`,`writeOnly`,`examples`],e.contentVocabulary=[`contentMediaType`,`contentEncoding`,`contentSchema`]})),Jr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=mr(),n=Dr(),r=Wr(),i=Kr(),a=qr();e.default=[t.default,n.default,(0,r.default)(),i.default,a.metadataVocabulary,a.contentVocabulary]})),Yr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.DiscrError=void 0;var t;(function(e){e.Tag=`tag`,e.Mapping=`mapping`})(t||(e.DiscrError=t={}))})),Xr=s((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=L(),n=Yr(),r=Qn(),i=Zn(),a=R();e.default={keyword:`discriminator`,type:`object`,schemaType:`object`,error:{message:({params:{discrError:e,tagName:t}})=>e===n.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:n,tagName:r}})=>(0,t._)`{error: ${e}, tag: ${r}, tagValue: ${n}}`},code(e){let{gen:o,data:s,schema:c,parentSchema:l,it:u}=e,{oneOf:d}=l;if(!u.opts.discriminator)throw Error(`discriminator: requires discriminator option`);let f=c.propertyName;if(typeof f!=`string`)throw Error(`discriminator: requires propertyName`);if(c.mapping)throw Error(`discriminator: mapping is not supported`);if(!d)throw Error(`discriminator: requires oneOf keyword`);let p=o.let(`valid`,!1),m=o.const(`tag`,(0,t._)`${s}${(0,t.getProperty)(f)}`);o.if((0,t._)`typeof ${m} == "string"`,()=>h(),()=>e.error(!1,{discrError:n.DiscrError.Tag,tag:m,tagName:f})),e.ok(p);function h(){let r=_();o.if(!1);for(let e in r)o.elseIf((0,t._)`${m} === ${e}`),o.assign(p,g(r[e]));o.else(),e.error(!1,{discrError:n.DiscrError.Mapping,tag:m,tagName:f}),o.endIf()}function g(n){let r=o.name(`valid`),i=e.subschema({keyword:`oneOf`,schemaProp:n},r);return e.mergeEvaluated(i,t.Name),r}function _(){let e={},t=o(l),n=!0;for(let e=0;e$r,$schema:()=>Qr,default:()=>ii,definitions:()=>ti,properties:()=>ri,title:()=>ei,type:()=>ni}),Qr,$r,ei,ti,ni,ri,ii,ai=o((()=>{Qr=`http://json-schema.org/draft-07/schema#`,$r=`http://json-schema.org/draft-07/schema#`,ei=`Core schema meta-schema`,ti={schemaArray:{type:`array`,minItems:1,items:{$ref:`#`}},nonNegativeInteger:{type:`integer`,minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:`#/definitions/nonNegativeInteger`},{default:0}]},simpleTypes:{enum:[`array`,`boolean`,`integer`,`null`,`number`,`object`,`string`]},stringArray:{type:`array`,items:{type:`string`},uniqueItems:!0,default:[]}},ni=[`object`,`boolean`],ri={$id:{type:`string`,format:`uri-reference`},$schema:{type:`string`,format:`uri`},$ref:{type:`string`,format:`uri-reference`},$comment:{type:`string`},title:{type:`string`},description:{type:`string`},default:!0,readOnly:{type:`boolean`,default:!1},examples:{type:`array`,items:!0},multipleOf:{type:`number`,exclusiveMinimum:0},maximum:{type:`number`},exclusiveMaximum:{type:`number`},minimum:{type:`number`},exclusiveMinimum:{type:`number`},maxLength:{$ref:`#/definitions/nonNegativeInteger`},minLength:{$ref:`#/definitions/nonNegativeIntegerDefault0`},pattern:{type:`string`,format:`regex`},additionalItems:{$ref:`#`},items:{anyOf:[{$ref:`#`},{$ref:`#/definitions/schemaArray`}],default:!0},maxItems:{$ref:`#/definitions/nonNegativeInteger`},minItems:{$ref:`#/definitions/nonNegativeIntegerDefault0`},uniqueItems:{type:`boolean`,default:!1},contains:{$ref:`#`},maxProperties:{$ref:`#/definitions/nonNegativeInteger`},minProperties:{$ref:`#/definitions/nonNegativeIntegerDefault0`},required:{$ref:`#/definitions/stringArray`},additionalProperties:{$ref:`#`},definitions:{type:`object`,additionalProperties:{$ref:`#`},default:{}},properties:{type:`object`,additionalProperties:{$ref:`#`},default:{}},patternProperties:{type:`object`,additionalProperties:{$ref:`#`},propertyNames:{format:`regex`},default:{}},dependencies:{type:`object`,additionalProperties:{anyOf:[{$ref:`#`},{$ref:`#/definitions/stringArray`}]}},propertyNames:{$ref:`#`},const:!0,enum:{type:`array`,items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:`#/definitions/simpleTypes`},{type:`array`,items:{$ref:`#/definitions/simpleTypes`},minItems:1,uniqueItems:!0}]},format:{type:`string`},contentMediaType:{type:`string`},contentEncoding:{type:`string`},if:{$ref:`#`},then:{$ref:`#`},else:{$ref:`#`},allOf:{$ref:`#/definitions/schemaArray`},anyOf:{$ref:`#/definitions/schemaArray`},oneOf:{$ref:`#/definitions/schemaArray`},not:{$ref:`#`}},ii={$schema:Qr,$id:$r,title:ei,definitions:ti,type:ni,properties:ri,default:!0}})),oi=s(((e,t)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.MissingRefError=e.ValidationError=e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=e.Ajv=void 0;var n=dr(),r=Jr(),i=Xr(),a=(ai(),d(Zr).default),o=[`/properties`],s=`http://json-schema.org/draft-07/schema`,c=class extends n.default{_addVocabularies(){super._addVocabularies(),r.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(a,o):a;this.addMetaSchema(e,s,!1),this.refs[`http://json-schema.org/schema`]=s}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(s)?s:void 0)}};e.Ajv=c,t.exports=e=c,t.exports.Ajv=c,Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var l=Yn();Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return l.KeywordCxt}});var u=L();Object.defineProperty(e,"_",{enumerable:!0,get:function(){return u._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return u.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return u.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return u.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return u.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return u.CodeGen}});var f=Xn();Object.defineProperty(e,"ValidationError",{enumerable:!0,get:function(){return f.default}});var p=Zn();Object.defineProperty(e,"MissingRefError",{enumerable:!0,get:function(){return p.default}})})),si=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.formatNames=e.fastFormats=e.fullFormats=void 0;function t(e,t){return{validate:e,compare:t}}e.fullFormats={date:t(a,o),time:t(c,l),"date-time":t(d,f),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:h,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:w,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:_,int32:{type:`number`,validate:b},int64:{type:`number`,validate:x},float:{type:`number`,validate:S},double:{type:`number`,validate:S},password:!0,binary:!0},e.fastFormats={...e.fullFormats,date:t(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,o),time:t(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,l),"date-time":t(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,f),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i},e.formatNames=Object.keys(e.fullFormats);function n(e){return e%4==0&&(e%100!=0||e%400==0)}var r=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,i=[0,31,28,31,30,31,30,31,31,30,31,30,31];function a(e){let t=r.exec(e);if(!t)return!1;let a=+t[1],o=+t[2],s=+t[3];return o>=1&&o<=12&&s>=1&&s<=(o===2&&n(a)?29:i[o])}function o(e,t){if(e&&t)return e>t?1:et?1:e=v}function x(e){return Number.isInteger(e)}function S(){return!0}var C=/[^\\]\\Z/;function w(e){if(C.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}})),ci=s((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.formatLimitDefinition=void 0;var t=oi(),n=L(),r=n.operators,i={formatMaximum:{okStr:`<=`,ok:r.LTE,fail:r.GT},formatMinimum:{okStr:`>=`,ok:r.GTE,fail:r.LT},formatExclusiveMaximum:{okStr:`<`,ok:r.LT,fail:r.GTE},formatExclusiveMinimum:{okStr:`>`,ok:r.GT,fail:r.LTE}};e.formatLimitDefinition={keyword:Object.keys(i),type:`string`,schemaType:`string`,$data:!0,error:{message:({keyword:e,schemaCode:t})=>n.str`should be ${i[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>n._`{comparison: ${i[e].okStr}, limit: ${t}}`},code(e){let{gen:r,data:a,schemaCode:o,keyword:s,it:c}=e,{opts:l,self:u}=c;if(!l.validateFormats)return;let d=new t.KeywordCxt(c,u.RULES.all.format.definition,`format`);d.$data?f():p();function f(){let t=r.scopeValue(`formats`,{ref:u.formats,code:l.code.formats}),i=r.const(`fmt`,n._`${t}[${d.schemaCode}]`);e.fail$data(n.or(n._`typeof ${i} != "object"`,n._`${i} instanceof RegExp`,n._`typeof ${i}.compare != "function"`,m(i)))}function p(){let t=d.schema,i=u.formats[t];if(!i||i===!0)return;if(typeof i!=`object`||i instanceof RegExp||typeof i.compare!=`function`)throw Error(`"${s}": format "${t}" does not define "compare" function`);let a=r.scopeValue(`formats`,{key:t,ref:i,code:l.code.formats?n._`${l.code.formats}${n.getProperty(t)}`:void 0});e.fail$data(m(a))}function m(e){return n._`${e}.compare(${a}, ${o}) ${i[s].fail} 0`}},dependencies:[`format`]},e.default=t=>(t.addKeyword(e.formatLimitDefinition),t)})),li=s(((e,t)=>{Object.defineProperty(e,"__esModule",{value:!0});var n=si(),r=ci(),i=L(),a=new i.Name(`fullFormats`),o=new i.Name(`fastFormats`),s=(e,t={keywords:!0})=>{if(Array.isArray(t))return c(e,t,n.fullFormats,a),e;let[i,s]=t.mode===`fast`?[n.fastFormats,o]:[n.fullFormats,a];return c(e,t.formats||n.formatNames,i,s),t.keywords&&r.default(e),e};s.get=(e,t=`full`)=>{let r=(t===`fast`?n.fastFormats:n.fullFormats)[e];if(!r)throw Error(`Unknown format "${e}"`);return r};function c(e,t,n,r){var a;(a=e.opts.code).formats??(a.formats=i._`require("ajv-formats/dist/formats").${r}`);for(let r of t)e.addFormat(r,n[r])}t.exports=e=s,Object.defineProperty(e,"__esModule",{value:!0}),e.default=s})),ui=s(((e,t)=>{function n(e){return function(t,n,r){for(var i=-1,a=Object(t),o=r(t),s=o.length;s--;){var c=o[e?s:++i];if(n(a[c],c,a)===!1)break}return t}}t.exports=n})),di=s(((e,t)=>{t.exports=ui()()})),fi=s(((e,t)=>{var n=di(),r=ut();function i(e,t){return e&&n(e,t,r)}t.exports=i})),pi=s(((e,t)=>{var n=lt();function r(e,t){return function(r,i){if(r==null)return r;if(!n(r))return e(r,i);for(var a=r.length,o=t?a:-1,s=Object(r);(t?o--:++o{var n=fi();t.exports=pi()(n)})),hi=s(((e,t)=>{var n=mi();function r(e,t){var r=[];return n(e,function(e,n,i){t(e,n,i)&&r.push(e)}),r}t.exports=r})),gi=s(((e,t)=>{var n=We(),r=hi(),i=Wt(),a=He();function o(e,t){return(a(e)?n:r)(e,i(t,3))}t.exports=o})),_i=s(((e,t)=>{var n=yt();function r(e,t){return n(e,t)}t.exports=r})),vi=s(((e,t)=>{var n=pe();t.exports=function(){try{var e=n(Object,`defineProperty`);return e({},``,{}),e}catch{}}()})),yi=s(((e,t)=>{var n=vi();function r(e,t,r){t==`__proto__`&&n?n(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}t.exports=r})),bi=s(((e,t)=>{var n=yi(),r=A();function i(e,t,i){(i!==void 0&&!r(e[t],i)||i===void 0&&!(t in e))&&n(e,t,i)}t.exports=i})),xi=s(((e,t)=>{var n=x(),r=typeof e==`object`&&e&&!e.nodeType&&e,i=r&&typeof t==`object`&&t&&!t.nodeType&&t,a=i&&i.exports===r?n.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(e,t){if(t)return e.slice();var n=e.length,r=o?o(n):new e.constructor(n);return e.copy(r),r}t.exports=s})),Si=s(((e,t)=>{var n=Le();function r(e){var t=new e.constructor(e.byteLength);return new n(t).set(new n(e)),t}t.exports=r})),Ci=s(((e,t)=>{var n=Si();function r(e,t){var r=t?n(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}t.exports=r})),wi=s(((e,t)=>{function n(e,t){var n=-1,r=e.length;for(t||=Array(r);++n{var n=P(),r=Object.create;t.exports=function(){function e(){}return function(t){if(!n(t))return{};if(r)return r(t);e.prototype=t;var i=new e;return e.prototype=void 0,i}}()})),Ei=s(((e,t)=>{t.exports=ot()(Object.getPrototypeOf,Object)})),Di=s(((e,t)=>{var n=Ti(),r=Ei(),i=at();function a(e){return typeof e.constructor==`function`&&!i(e)?n(r(e)):{}}t.exports=a})),Oi=s(((e,t)=>{var n=lt(),r=E();function i(e){return r(e)&&n(e)}t.exports=i})),ki=s(((e,t)=>{var n=T(),r=Ei(),i=E(),a=`[object Object]`,o=Function.prototype,s=Object.prototype,c=o.toString,l=s.hasOwnProperty,u=c.call(Object);function d(e){if(!i(e)||n(e)!=a)return!1;var t=r(e);if(t===null)return!0;var o=l.call(t,`constructor`)&&t.constructor;return typeof o==`function`&&o instanceof o&&c.call(o)==u}t.exports=d})),Ai=s(((e,t)=>{function n(e,t){if(!(t===`constructor`&&typeof e[t]==`function`)&&t!=`__proto__`)return e[t]}t.exports=n})),ji=s(((e,t)=>{var n=yi(),r=A(),i=Object.prototype.hasOwnProperty;function a(e,t,a){var o=e[t];(!(i.call(e,t)&&r(o,a))||a===void 0&&!(t in e))&&n(e,t,a)}t.exports=a})),Mi=s(((e,t)=>{var n=ji(),r=yi();function i(e,t,i,a){var o=!i;i||={};for(var s=-1,c=t.length;++s{function n(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}t.exports=n})),Pi=s(((e,t)=>{var n=P(),r=at(),i=Ni(),a=Object.prototype.hasOwnProperty;function o(e){if(!n(e))return i(e);var t=r(e),o=[];for(var s in e)s==`constructor`&&(t||!a.call(e,s))||o.push(s);return o}t.exports=o})),z=s(((e,t)=>{var n=it(),r=Pi(),i=lt();function a(e){return i(e)?n(e,!0):r(e)}t.exports=a})),Fi=s(((e,t)=>{var n=Mi(),r=z();function i(e){return n(e,r(e))}t.exports=i})),Ii=s(((e,t)=>{var n=bi(),r=xi(),i=Ci(),a=wi(),o=Di(),s=Ye(),c=He(),l=Oi(),u=Ze(),d=F(),f=P(),p=ki(),m=rt(),h=Ai(),g=Fi();function _(e,t,_,v,y,b,x){var S=h(e,_),C=h(t,_),w=x.get(C);if(w){n(e,_,w);return}var T=b?b(S,C,_+``,e,t,x):void 0,E=T===void 0;if(E){var D=c(C),O=!D&&u(C),k=!D&&!O&&m(C);T=C,D||O||k?c(S)?T=S:l(S)?T=a(S):O?(E=!1,T=r(C,!0)):k?(E=!1,T=i(C,!0)):T=[]:p(C)||s(C)?(T=S,s(S)?T=g(S):(!f(S)||d(S))&&(T=o(C))):E=!1}E&&(x.set(C,T),y(T,C,v,b,x),x.delete(C)),n(e,_,T)}t.exports=_})),Li=s(((e,t)=>{var n=Ae(),r=bi(),i=di(),a=Ii(),o=P(),s=z(),c=Ai();function l(e,t,u,d,f){e!==t&&i(t,function(i,s){if(f||=new n,o(i))a(e,t,s,u,l,d,f);else{var p=d?d(c(e,s),i,s+``,e,t,f):void 0;p===void 0&&(p=i),r(e,s,p)}},s)}t.exports=l})),Ri=s(((e,t)=>{function n(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}t.exports=n})),zi=s(((e,t)=>{var n=Ri(),r=Math.max;function i(e,t,i){return t=r(t===void 0?e.length-1:t,0),function(){for(var a=arguments,o=-1,s=r(a.length-t,0),c=Array(s);++o{function n(e){return function(){return e}}t.exports=n})),Vi=s(((e,t)=>{var n=Bi(),r=vi(),i=Bt();t.exports=r?function(e,t){return r(e,`toString`,{configurable:!0,enumerable:!1,value:n(t),writable:!0})}:i})),Hi=s(((e,t)=>{var n=800,r=16,i=Date.now;function a(e){var t=0,a=0;return function(){var o=i(),s=r-(o-a);if(a=o,s>0){if(++t>=n)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}t.exports=a})),Ui=s(((e,t)=>{var n=Vi();t.exports=Hi()(n)})),Wi=s(((e,t)=>{var n=Bt(),r=zi(),i=Ui();function a(e,t){return i(r(e,t,n),e+``)}t.exports=a})),Gi=s(((e,t)=>{var n=Wi(),r=pn();function i(e){return n(function(t,n){var i=-1,a=n.length,o=a>1?n[a-1]:void 0,s=a>2?n[2]:void 0;for(o=e.length>3&&typeof o==`function`?(a--,o):void 0,s&&r(n[0],n[1],s)&&(o=a<3?void 0:o,a=1),t=Object(t);++i{var n=Li();t.exports=Gi()(function(e,t,r){n(e,t,r)})})),qi=s(((e,t)=>{function n(e,t){for(var n=-1,r=e==null?0:e.length;++n{var n=Mi(),r=ut();function i(e,t){return e&&n(t,r(t),e)}t.exports=i})),Yi=s(((e,t)=>{var n=Mi(),r=z();function i(e,t){return e&&n(t,r(t),e)}t.exports=i})),Xi=s(((e,t)=>{var n=Mi(),r=Ke();function i(e,t){return n(e,r(e),t)}t.exports=i})),Zi=s(((e,t)=>{var n=Ve(),r=Ei(),i=Ke(),a=Ge();t.exports=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)n(t,i(e)),e=r(e);return t}:a})),Qi=s(((e,t)=>{var n=Mi(),r=Zi();function i(e,t){return n(e,r(e),t)}t.exports=i})),$i=s(((e,t)=>{var n=Ue(),r=Zi(),i=z();function a(e){return n(e,i,r)}t.exports=a})),ea=s(((e,t)=>{var n=Object.prototype.hasOwnProperty;function r(e){var t=e.length,r=new e.constructor(t);return t&&typeof e[0]==`string`&&n.call(e,`index`)&&(r.index=e.index,r.input=e.input),r}t.exports=r})),ta=s(((e,t)=>{var n=Si();function r(e,t){var r=t?n(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}t.exports=r})),na=s(((e,t)=>{var n=/\w*$/;function r(e){var t=new e.constructor(e.source,n.exec(e));return t.lastIndex=e.lastIndex,t}t.exports=r})),ra=s(((e,t)=>{var n=S(),r=n?n.prototype:void 0,i=r?r.valueOf:void 0;function a(e){return i?Object(i.call(e)):{}}t.exports=a})),ia=s(((e,t)=>{var n=Si(),r=ta(),i=na(),a=ra(),o=Ci(),s=`[object Boolean]`,c=`[object Date]`,l=`[object Map]`,u=`[object Number]`,d=`[object RegExp]`,f=`[object Set]`,p=`[object String]`,m=`[object Symbol]`,h=`[object ArrayBuffer]`,g=`[object DataView]`,_=`[object Float32Array]`,v=`[object Float64Array]`,y=`[object Int8Array]`,b=`[object Int16Array]`,x=`[object Int32Array]`,S=`[object Uint8Array]`,C=`[object Uint8ClampedArray]`,w=`[object Uint16Array]`,T=`[object Uint32Array]`;function E(e,t,E){var D=e.constructor;switch(t){case h:return n(e);case s:case c:return new D(+e);case g:return r(e,E);case _:case v:case y:case b:case x:case S:case C:case w:case T:return o(e,E);case l:return new D;case u:case p:return new D(e);case d:return i(e);case f:return new D;case m:return a(e)}}t.exports=E})),aa=s(((e,t)=>{var n=_t(),r=E(),i=`[object Map]`;function a(e){return r(e)&&n(e)==i}t.exports=a})),oa=s(((e,t)=>{var n=aa(),r=tt(),i=nt(),a=i&&i.isMap;t.exports=a?r(a):n})),sa=s(((e,t)=>{var n=_t(),r=E(),i=`[object Set]`;function a(e){return r(e)&&n(e)==i}t.exports=a})),ca=s(((e,t)=>{var n=sa(),r=tt(),i=nt(),a=i&&i.isSet;t.exports=a?r(a):n})),la=s(((e,t)=>{var n=Ae(),r=qi(),i=ji(),a=Ji(),o=Yi(),s=xi(),c=wi(),l=Xi(),u=Qi(),d=dt(),f=$i(),p=_t(),m=ea(),h=ia(),g=Di(),_=He(),v=Ze(),y=oa(),b=P(),x=ca(),S=ut(),C=z(),w=1,T=2,E=4,D=`[object Arguments]`,O=`[object Array]`,k=`[object Boolean]`,ee=`[object Date]`,A=`[object Error]`,te=`[object Function]`,ne=`[object GeneratorFunction]`,j=`[object Map]`,re=`[object Number]`,M=`[object Object]`,N=`[object RegExp]`,ie=`[object Set]`,ae=`[object String]`,oe=`[object Symbol]`,se=`[object WeakMap]`,F=`[object ArrayBuffer]`,ce=`[object DataView]`,le=`[object Float32Array]`,ue=`[object Float64Array]`,de=`[object Int8Array]`,fe=`[object Int16Array]`,pe=`[object Int32Array]`,me=`[object Uint8Array]`,he=`[object Uint8ClampedArray]`,ge=`[object Uint16Array]`,_e=`[object Uint32Array]`,I={};I[D]=I[O]=I[F]=I[ce]=I[k]=I[ee]=I[le]=I[ue]=I[de]=I[fe]=I[pe]=I[j]=I[re]=I[M]=I[N]=I[ie]=I[ae]=I[oe]=I[me]=I[he]=I[ge]=I[_e]=!0,I[A]=I[te]=I[se]=!1;function ve(e,t,O,k,ee,A){var j,re=t&w,N=t&T,ie=t&E;if(O&&(j=ee?O(e,k,ee,A):O(e)),j!==void 0)return j;if(!b(e))return e;var ae=_(e);if(ae){if(j=m(e),!re)return c(e,j)}else{var oe=p(e),se=oe==te||oe==ne;if(v(e))return s(e,re);if(oe==M||oe==D||se&&!ee){if(j=N||se?{}:g(e),!re)return N?u(e,o(j,e)):l(e,a(j,e))}else{if(!I[oe])return ee?e:{};j=h(e,oe,re)}}A||=new n;var P=A.get(e);if(P)return P;A.set(e,j),x(e)?e.forEach(function(n){j.add(ve(n,t,O,n,e,A))}):y(e)&&e.forEach(function(n,r){j.set(r,ve(n,t,O,r,e,A))});var F=ae?void 0:(ie?N?f:d:N?C:S)(e);return r(F||e,function(n,r){F&&(r=n,n=e[r]),i(j,r,ve(n,t,O,r,e,A))}),j}t.exports=ve})),ua=s(((e,t)=>{var n=la(),r=1,i=4;function a(e){return n(e,r|i)}t.exports=a})),da=s((e=>{e.aliasToReal={each:`forEach`,eachRight:`forEachRight`,entries:`toPairs`,entriesIn:`toPairsIn`,extend:`assignIn`,extendAll:`assignInAll`,extendAllWith:`assignInAllWith`,extendWith:`assignInWith`,first:`head`,conforms:`conformsTo`,matches:`isMatch`,property:`get`,__:`placeholder`,F:`stubFalse`,T:`stubTrue`,all:`every`,allPass:`overEvery`,always:`constant`,any:`some`,anyPass:`overSome`,apply:`spread`,assoc:`set`,assocPath:`set`,complement:`negate`,compose:`flowRight`,contains:`includes`,dissoc:`unset`,dissocPath:`unset`,dropLast:`dropRight`,dropLastWhile:`dropRightWhile`,equals:`isEqual`,identical:`eq`,indexBy:`keyBy`,init:`initial`,invertObj:`invert`,juxt:`over`,omitAll:`omit`,nAry:`ary`,path:`get`,pathEq:`matchesProperty`,pathOr:`getOr`,paths:`at`,pickAll:`pick`,pipe:`flow`,pluck:`map`,prop:`get`,propEq:`matchesProperty`,propOr:`getOr`,props:`at`,symmetricDifference:`xor`,symmetricDifferenceBy:`xorBy`,symmetricDifferenceWith:`xorWith`,takeLast:`takeRight`,takeLastWhile:`takeRightWhile`,unapply:`rest`,unnest:`flatten`,useWith:`overArgs`,where:`conformsTo`,whereEq:`isMatch`,zipObj:`zipObject`},e.aryMethod={1:`assignAll.assignInAll.attempt.castArray.ceil.create.curry.curryRight.defaultsAll.defaultsDeepAll.floor.flow.flowRight.fromPairs.invert.iteratee.memoize.method.mergeAll.methodOf.mixin.nthArg.over.overEvery.overSome.rest.reverse.round.runInContext.spread.template.trim.trimEnd.trimStart.uniqueId.words.zipAll`.split(`.`),2:`add.after.ary.assign.assignAllWith.assignIn.assignInAllWith.at.before.bind.bindAll.bindKey.chunk.cloneDeepWith.cloneWith.concat.conformsTo.countBy.curryN.curryRightN.debounce.defaults.defaultsDeep.defaultTo.delay.difference.divide.drop.dropRight.dropRightWhile.dropWhile.endsWith.eq.every.filter.find.findIndex.findKey.findLast.findLastIndex.findLastKey.flatMap.flatMapDeep.flattenDepth.forEach.forEachRight.forIn.forInRight.forOwn.forOwnRight.get.groupBy.gt.gte.has.hasIn.includes.indexOf.intersection.invertBy.invoke.invokeMap.isEqual.isMatch.join.keyBy.lastIndexOf.lt.lte.map.mapKeys.mapValues.matchesProperty.maxBy.meanBy.merge.mergeAllWith.minBy.multiply.nth.omit.omitBy.overArgs.pad.padEnd.padStart.parseInt.partial.partialRight.partition.pick.pickBy.propertyOf.pull.pullAll.pullAt.random.range.rangeRight.rearg.reject.remove.repeat.restFrom.result.sampleSize.some.sortBy.sortedIndex.sortedIndexOf.sortedLastIndex.sortedLastIndexOf.sortedUniqBy.split.spreadFrom.startsWith.subtract.sumBy.take.takeRight.takeRightWhile.takeWhile.tap.throttle.thru.times.trimChars.trimCharsEnd.trimCharsStart.truncate.union.uniqBy.uniqWith.unset.unzipWith.without.wrap.xor.zip.zipObject.zipObjectDeep`.split(`.`),3:`assignInWith.assignWith.clamp.differenceBy.differenceWith.findFrom.findIndexFrom.findLastFrom.findLastIndexFrom.getOr.includesFrom.indexOfFrom.inRange.intersectionBy.intersectionWith.invokeArgs.invokeArgsMap.isEqualWith.isMatchWith.flatMapDepth.lastIndexOfFrom.mergeWith.orderBy.padChars.padCharsEnd.padCharsStart.pullAllBy.pullAllWith.rangeStep.rangeStepRight.reduce.reduceRight.replace.set.slice.sortedIndexBy.sortedLastIndexBy.transform.unionBy.unionWith.update.xorBy.xorWith.zipWith`.split(`.`),4:[`fill`,`setWith`,`updateWith`]},e.aryRearg={2:[1,0],3:[2,0,1],4:[3,2,0,1]},e.iterateeAry={dropRightWhile:1,dropWhile:1,every:1,filter:1,find:1,findFrom:1,findIndex:1,findIndexFrom:1,findKey:1,findLast:1,findLastFrom:1,findLastIndex:1,findLastIndexFrom:1,findLastKey:1,flatMap:1,flatMapDeep:1,flatMapDepth:1,forEach:1,forEachRight:1,forIn:1,forInRight:1,forOwn:1,forOwnRight:1,map:1,mapKeys:1,mapValues:1,partition:1,reduce:2,reduceRight:2,reject:1,remove:1,some:1,takeRightWhile:1,takeWhile:1,times:1,transform:2},e.iterateeRearg={mapKeys:[1],reduceRight:[1,0]},e.methodRearg={assignInAllWith:[1,0],assignInWith:[1,2,0],assignAllWith:[1,0],assignWith:[1,2,0],differenceBy:[1,2,0],differenceWith:[1,2,0],getOr:[2,1,0],intersectionBy:[1,2,0],intersectionWith:[1,2,0],isEqualWith:[1,2,0],isMatchWith:[2,1,0],mergeAllWith:[1,0],mergeWith:[1,2,0],padChars:[2,1,0],padCharsEnd:[2,1,0],padCharsStart:[2,1,0],pullAllBy:[2,1,0],pullAllWith:[2,1,0],rangeStep:[1,2,0],rangeStepRight:[1,2,0],setWith:[3,1,2,0],sortedIndexBy:[2,1,0],sortedLastIndexBy:[2,1,0],unionBy:[1,2,0],unionWith:[1,2,0],updateWith:[3,1,2,0],xorBy:[1,2,0],xorWith:[1,2,0],zipWith:[1,2,0]},e.methodSpread={assignAll:{start:0},assignAllWith:{start:0},assignInAll:{start:0},assignInAllWith:{start:0},defaultsAll:{start:0},defaultsDeepAll:{start:0},invokeArgs:{start:2},invokeArgsMap:{start:2},mergeAll:{start:0},mergeAllWith:{start:0},partial:{start:1},partialRight:{start:1},without:{start:1},zipAll:{start:0}},e.mutate={array:{fill:!0,pull:!0,pullAll:!0,pullAllBy:!0,pullAllWith:!0,pullAt:!0,remove:!0,reverse:!0},object:{assign:!0,assignAll:!0,assignAllWith:!0,assignIn:!0,assignInAll:!0,assignInAllWith:!0,assignInWith:!0,assignWith:!0,defaults:!0,defaultsAll:!0,defaultsDeep:!0,defaultsDeepAll:!0,merge:!0,mergeAll:!0,mergeAllWith:!0,mergeWith:!0},set:{set:!0,setWith:!0,unset:!0,update:!0,updateWith:!0}},e.realToAlias=function(){var t=Object.prototype.hasOwnProperty,n=e.aliasToReal,r={};for(var i in n){var a=n[i];t.call(r,a)?r[a].push(i):r[a]=[i]}return r}(),e.remap={assignAll:`assign`,assignAllWith:`assignWith`,assignInAll:`assignIn`,assignInAllWith:`assignInWith`,curryN:`curry`,curryRightN:`curryRight`,defaultsAll:`defaults`,defaultsDeepAll:`defaultsDeep`,findFrom:`find`,findIndexFrom:`findIndex`,findLastFrom:`findLast`,findLastIndexFrom:`findLastIndex`,getOr:`get`,includesFrom:`includes`,indexOfFrom:`indexOf`,invokeArgs:`invoke`,invokeArgsMap:`invokeMap`,lastIndexOfFrom:`lastIndexOf`,mergeAll:`merge`,mergeAllWith:`mergeWith`,padChars:`pad`,padCharsEnd:`padEnd`,padCharsStart:`padStart`,propertyOf:`get`,rangeStep:`range`,rangeStepRight:`rangeRight`,restFrom:`rest`,spreadFrom:`spread`,trimChars:`trim`,trimCharsEnd:`trimEnd`,trimCharsStart:`trimStart`,zipAll:`zip`},e.skipFixed={castArray:!0,flow:!0,flowRight:!0,iteratee:!0,mixin:!0,rearg:!0,runInContext:!0},e.skipRearg={add:!0,assign:!0,assignIn:!0,bind:!0,bindKey:!0,concat:!0,difference:!0,divide:!0,eq:!0,gt:!0,gte:!0,isEqual:!0,lt:!0,lte:!0,matchesProperty:!0,merge:!0,multiply:!0,overArgs:!0,partial:!0,partialRight:!0,propertyOf:!0,random:!0,range:!0,rangeRight:!0,subtract:!0,zip:!0,zipObject:!0,zipObjectDeep:!0}})),fa=s(((e,t)=>{t.exports={}})),pa=s(((e,t)=>{var n=da(),r=fa(),i=Array.prototype.push;function a(e,t){return t==2?function(t,n){return e.apply(void 0,arguments)}:function(t){return e.apply(void 0,arguments)}}function o(e,t){return t==2?function(t,n){return e(t,n)}:function(t){return e(t)}}function s(e){for(var t=e?e.length:0,n=Array(t);t--;)n[t]=e[t];return n}function c(e){return function(t){return e({},t)}}function l(e,t){return function(){for(var n=arguments.length,r=n-1,a=Array(n);n--;)a[n]=arguments[n];var o=a[t],s=a.slice(0,t);return o&&i.apply(s,o),t!=r&&i.apply(s,a.slice(t+1)),e.apply(this,s)}}function u(e,t){return function(){var n=arguments.length;if(n){for(var r=Array(n);n--;)r[n]=arguments[n];var i=r[0]=t.apply(void 0,r);return e.apply(void 0,r),i}}}function d(e,t,i,f){var p=typeof t==`function`,m=t===Object(t);if(m&&(f=i,i=t,t=void 0),i==null)throw TypeError();f||={};var h={cap:`cap`in f?f.cap:!0,curry:`curry`in f?f.curry:!0,fixed:`fixed`in f?f.fixed:!0,immutable:`immutable`in f?f.immutable:!0,rearg:`rearg`in f?f.rearg:!0},g=p?i:r,_=`curry`in f&&f.curry,v=`fixed`in f&&f.fixed,y=`rearg`in f&&f.rearg,b=p?i.runInContext():void 0,x=p?i:{ary:e.ary,assign:e.assign,clone:e.clone,curry:e.curry,forEach:e.forEach,isArray:e.isArray,isError:e.isError,isFunction:e.isFunction,isWeakMap:e.isWeakMap,iteratee:e.iteratee,keys:e.keys,rearg:e.rearg,toInteger:e.toInteger,toPath:e.toPath},S=x.ary,C=x.assign,w=x.clone,T=x.curry,E=x.forEach,D=x.isArray,O=x.isError,k=x.isFunction,ee=x.isWeakMap,A=x.keys,te=x.rearg,ne=x.toInteger,j=x.toPath,re=A(n.aryMethod),M={castArray:function(e){return function(){var t=arguments[0];return D(t)?e(s(t)):e.apply(void 0,arguments)}},iteratee:function(e){return function(){var t=arguments[0],n=arguments[1],r=e(t,n),i=r.length;return h.cap&&typeof n==`number`?(n=n>2?n-2:1,i&&i<=n?r:o(r,n)):r}},mixin:function(e){return function(t){var n=this;if(!k(n))return e(n,Object(t));var r=[];return E(A(t),function(e){k(t[e])&&r.push([e,n.prototype[e]])}),e(n,Object(t)),E(r,function(e){var t=e[1];k(t)?n.prototype[e[0]]=t:delete n.prototype[e[0]]}),n}},nthArg:function(e){return function(t){var n=t<0?1:ne(t)+1;return T(e(t),n)}},rearg:function(e){return function(t,n){var r=n?n.length:0;return T(e(t,n),r)}},runInContext:function(t){return function(n){return d(e,t(n),f)}}};function N(e,t){if(h.cap){var r=n.iterateeRearg[e];if(r)return le(t,r);var i=!p&&n.iterateeAry[e];if(i)return ce(t,i)}return t}function ie(e,t,n){return _||h.curry&&n>1?T(t,n):t}function ae(e,t,r){if(h.fixed&&(v||!n.skipFixed[e])){var i=n.methodSpread[e],a=i&&i.start;return a===void 0?S(t,r):l(t,a)}return t}function oe(e,t,r){return h.rearg&&r>1&&(y||!n.skipRearg[e])?te(t,n.methodRearg[e]||n.aryRearg[r]):t}function se(e,t){t=j(t);for(var n=-1,r=t.length,i=r-1,a=w(Object(e)),o=a;o!=null&&++n{var n=gt();t.exports=n&&new n})),ha=s(((e,t)=>{var n=Bt(),r=ma();t.exports=r?function(e,t){return r.set(e,t),e}:n})),ga=s(((e,t)=>{var n=Ti(),r=P();function i(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var i=n(e.prototype),a=e.apply(i,t);return r(a)?a:i}}t.exports=i})),_a=s(((e,t)=>{var n=ga(),r=x(),i=1;function a(e,t,a){var o=t&i,s=n(e);function c(){return(this&&this!==r&&this instanceof c?s:e).apply(o?a:this,arguments)}return c}t.exports=a})),va=s(((e,t)=>{var n=Math.max;function r(e,t,r,i){for(var a=-1,o=e.length,s=r.length,c=-1,l=t.length,u=n(o-s,0),d=Array(l+u),f=!i;++c{var n=Math.max;function r(e,t,r,i){for(var a=-1,o=e.length,s=-1,c=r.length,l=-1,u=t.length,d=n(o-c,0),f=Array(d+u),p=!i;++a{function n(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}t.exports=n})),xa=s(((e,t)=>{function n(){}t.exports=n})),Sa=s(((e,t)=>{var n=Ti(),r=xa(),i=4294967295;function a(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=i,this.__views__=[]}a.prototype=n(r.prototype),a.prototype.constructor=a,t.exports=a})),Ca=s(((e,t)=>{function n(){}t.exports=n})),wa=s(((e,t)=>{var n=ma(),r=Ca();t.exports=n?function(e){return n.get(e)}:r})),Ta=s(((e,t)=>{t.exports={}})),Ea=s(((e,t)=>{var n=Ta(),r=Object.prototype.hasOwnProperty;function i(e){for(var t=e.name+``,i=n[t],a=r.call(n,t)?i.length:0;a--;){var o=i[a],s=o.func;if(s==null||s==e)return o.name}return t}t.exports=i})),Da=s(((e,t)=>{var n=Ti(),r=xa();function i(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=void 0}i.prototype=n(r.prototype),i.prototype.constructor=i,t.exports=i})),Oa=s(((e,t)=>{var n=Sa(),r=Da(),i=wi();function a(e){if(e instanceof n)return e.clone();var t=new r(e.__wrapped__,e.__chain__);return t.__actions__=i(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}t.exports=a})),ka=s(((e,t)=>{var n=Sa(),r=Da(),i=xa(),a=He(),o=E(),s=Oa(),c=Object.prototype.hasOwnProperty;function l(e){if(o(e)&&!a(e)&&!(e instanceof n)){if(e instanceof r)return e;if(c.call(e,`__wrapped__`))return s(e)}return new r(e)}l.prototype=i.prototype,l.prototype.constructor=l,t.exports=l})),Aa=s(((e,t)=>{var n=Sa(),r=wa(),i=Ea(),a=ka();function o(e){var t=i(e),o=a[t];if(typeof o!=`function`||!(t in n.prototype))return!1;if(e===o)return!0;var s=r(o);return!!s&&e===s[0]}t.exports=o})),ja=s(((e,t)=>{var n=ha();t.exports=Hi()(n)})),Ma=s(((e,t)=>{var n=/\{\n\/\* \[wrapped with (.+)\] \*/,r=/,? & /;function i(e){var t=e.match(n);return t?t[1].split(r):[]}t.exports=i})),Na=s(((e,t)=>{var n=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;function r(e,t){var r=t.length;if(!r)return e;var i=r-1;return t[i]=(r>1?`& `:``)+t[i],t=t.join(r>2?`, `:` `),e.replace(n,`{ +/* [wrapped with `+t+`] */ +`)}t.exports=r})),Pa=s(((e,t)=>{var n=kn();function r(e,t){return!!(e!=null&&e.length)&&n(e,t,0)>-1}t.exports=r})),Fa=s(((e,t)=>{var n=qi(),r=Pa(),i=[[`ary`,128],[`bind`,1],[`bindKey`,2],[`curry`,8],[`curryRight`,16],[`flip`,512],[`partial`,32],[`partialRight`,64],[`rearg`,256]];function a(e,t){return n(i,function(n){var i=`_.`+n[0];t&n[1]&&!r(e,i)&&e.push(i)}),e.sort()}t.exports=a})),Ia=s(((e,t)=>{var n=Ma(),r=Na(),i=Ui(),a=Fa();function o(e,t,o){var s=t+``;return i(e,r(s,a(n(s),o)))}t.exports=o})),La=s(((e,t)=>{var n=Aa(),r=ja(),i=Ia(),a=1,o=2,s=4,c=8,l=32,u=64;function d(e,t,d,f,p,m,h,g,_,v){var y=t&c,b=y?h:void 0,x=y?void 0:h,S=y?m:void 0,C=y?void 0:m;t|=y?l:u,t&=~(y?u:l),t&s||(t&=~(a|o));var w=[e,t,p,S,b,C,x,g,_,v],T=d.apply(void 0,w);return n(e)&&r(T,w),T.placeholder=f,i(T,e,t)}t.exports=d})),Ra=s(((e,t)=>{function n(e){return e.placeholder}t.exports=n})),za=s(((e,t)=>{var n=wi(),r=Qe(),i=Math.min;function a(e,t){for(var a=e.length,o=i(t.length,a),s=n(e);o--;){var c=t[o];e[o]=r(c,a)?s[c]:void 0}return e}t.exports=a})),Ba=s(((e,t)=>{var n=`__lodash_placeholder__`;function r(e,t){for(var r=-1,i=e.length,a=0,o=[];++r{var n=va(),r=ya(),i=ba(),a=ga(),o=La(),s=Ra(),c=za(),l=Ba(),u=x(),d=1,f=2,p=8,m=16,h=128,g=512;function _(e,t,v,y,b,x,S,C,w,T){var E=t&h,D=t&d,O=t&f,k=t&(p|m),ee=t&g,A=O?void 0:a(e);function te(){for(var d=arguments.length,f=Array(d),p=d;p--;)f[p]=arguments[p];if(k)var m=s(te),h=i(f,m);if(y&&(f=n(f,y,b,k)),x&&(f=r(f,x,S,k)),d-=h,k&&d1&&f.reverse(),E&&w{var n=Ri(),r=ga(),i=Va(),a=La(),o=Ra(),s=Ba(),c=x();function l(e,t,l){var u=r(e);function d(){for(var r=arguments.length,f=Array(r),p=r,m=o(d);p--;)f[p]=arguments[p];var h=r<3&&f[0]!==m&&f[r-1]!==m?[]:s(f,m);return r-=h.length,r{var n=Ri(),r=ga(),i=x(),a=1;function o(e,t,o,s){var c=t&a,l=r(e);function u(){for(var t=-1,r=arguments.length,a=-1,d=s.length,f=Array(d+r),p=this&&this!==i&&this instanceof u?l:e;++a{var n=va(),r=ya(),i=Ba(),a=`__lodash_placeholder__`,o=1,s=2,c=4,l=8,u=128,d=256,f=Math.min;function p(e,t){var p=e[1],m=t[1],h=p|m,g=h<(o|s|u),_=m==u&&p==l||m==u&&p==d&&e[7].length<=t[8]||m==(u|d)&&t[7].length<=t[8]&&p==l;if(!(g||_))return e;m&o&&(e[2]=t[2],h|=p&o?0:c);var v=t[3];if(v){var y=e[3];e[3]=y?n(y,v,t[4]):v,e[4]=y?i(e[3],a):t[4]}return v=t[5],v&&(y=e[5],e[5]=y?r(y,v,t[6]):v,e[6]=y?i(e[5],a):t[6]),v=t[7],v&&(e[7]=v),m&u&&(e[8]=e[8]==null?t[8]:f(e[8],t[8])),e[9]??=t[9],e[0]=t[0],e[1]=h,e}t.exports=p})),Ga=s(((e,t)=>{var n=ha(),r=_a(),i=Ha(),a=Va(),o=Ua(),s=wa(),c=Wa(),l=ja(),u=Ia(),d=wn(),f=`Expected a function`,p=1,m=2,h=8,g=16,_=32,v=64,y=Math.max;function b(e,t,b,x,S,C,w,T){var E=t&m;if(!E&&typeof e!=`function`)throw TypeError(f);var D=x?x.length:0;if(D||(t&=~(_|v),x=S=void 0),w=w===void 0?w:y(d(w),0),T=T===void 0?T:d(T),D-=S?S.length:0,t&v){var O=x,k=S;x=S=void 0}var ee=E?void 0:s(e),A=[e,t,b,x,S,O,k,C,w,T];if(ee&&c(A,ee),e=A[0],t=A[1],b=A[2],x=A[3],S=A[4],T=A[9]=A[9]===void 0?E?0:e.length:y(A[9]-D,0),!T&&t&(h|g)&&(t&=~(h|g)),!t||t==p)var te=r(e,t,b);else te=t==h||t==g?i(e,t,T):(t==_||t==(p|_))&&!S.length?o(e,t,b,x):a.apply(void 0,A);return u((ee?n:l)(te,A),e,t)}t.exports=b})),Ka=s(((e,t)=>{var n=Ga(),r=128;function i(e,t,i){return t=i?void 0:t,t=e&&t==null?e.length:t,n(e,r,void 0,void 0,void 0,void 0,t)}t.exports=i})),qa=s(((e,t)=>{var n=la(),r=4;function i(e){return n(e,r)}t.exports=i})),Ja=s(((e,t)=>{var n=Ga(),r=8;function i(e,t,a){t=a?void 0:t;var o=n(e,r,void 0,void 0,void 0,void 0,void 0,t);return o.placeholder=i.placeholder,o}i.placeholder={},t.exports=i})),Ya=s(((e,t)=>{var n=T(),r=E(),i=ki(),a=`[object DOMException]`,o=`[object Error]`;function s(e){if(!r(e))return!1;var t=n(e);return t==o||t==a||typeof e.message==`string`&&typeof e.name==`string`&&!i(e)}t.exports=s})),Xa=s(((e,t)=>{var n=_t(),r=E(),i=`[object WeakMap]`;function a(e){return r(e)&&n(e)==i}t.exports=a})),Za=s(((e,t)=>{var n=la(),r=Wt(),i=1;function a(e){return r(typeof e==`function`?e:n(e,i))}t.exports=a})),Qa=s(((e,t)=>{var n=S(),r=Ye(),i=He(),a=n?n.isConcatSpreadable:void 0;function o(e){return i(e)||r(e)||!!(a&&e&&e[a])}t.exports=o})),$a=s(((e,t)=>{var n=Ve(),r=Qa();function i(e,t,a,o,s){var c=-1,l=e.length;for(a||=r,s||=[];++c0&&a(u)?t>1?i(u,t-1,a,o,s):n(s,u):o||(s[s.length]=u)}return s}t.exports=i})),eo=s(((e,t)=>{var n=$a();function r(e){return e!=null&&e.length?n(e,1):[]}t.exports=r})),to=s(((e,t)=>{var n=eo(),r=zi(),i=Ui();function a(e){return i(r(e,void 0,n),e+``)}t.exports=a})),no=s(((e,t)=>{var n=Ga(),r=to(),i=256;t.exports=r(function(e,t){return n(e,i,void 0,void 0,void 0,t)})})),ro=s(((e,t)=>{var n=kt(),r=wi(),i=He(),a=D(),o=Ot(),s=Nt(),c=jt();function l(e){return i(e)?n(e,s):a(e)?[e]:r(o(c(e)))}t.exports=l})),io=s(((e,t)=>{t.exports={ary:Ka(),assign:Ji(),clone:qa(),curry:Ja(),forEach:qi(),isArray:He(),isError:Ya(),isFunction:F(),isWeakMap:Xa(),iteratee:Za(),keys:ct(),rearg:no(),toInteger:wn(),toPath:ro()}})),ao=s(((e,t)=>{var n=pa(),r=io();function i(e,t,i){return n(r,e,t,i)}t.exports=i})),oo=s(((e,t)=>{var n=ji(),r=Mt(),i=Qe(),a=P(),o=Nt();function s(e,t,s,c){if(!a(e))return e;t=r(t,e);for(var l=-1,u=t.length,d=u-1,f=e;f!=null&&++l{var n=oo();function r(e,t,r){return e==null?e:n(e,t,r)}t.exports=r})),co=s(((e,t)=>{var n=ao()(`set`,so());n.placeholder=fa(),t.exports=n})),lo=s(((e,t)=>{function n(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}t.exports=n})),uo=s(((e,t)=>{var n=Pt(),r=nn();function i(e,t){return t.length<2?e:n(e,r(t,0,-1))}t.exports=i})),fo=s(((e,t)=>{var n=Mt(),r=lo(),i=uo(),a=Nt(),o=Object.prototype.hasOwnProperty;function s(e,t){t=n(t,e);var s=-1,c=t.length;if(!c)return!0;for(;++s{var n=fo();function r(e,t){return e==null?!0:n(e,t)}t.exports=r})),B=s(((e,t)=>{var n=ao()(`unset`,po());n.placeholder=fa(),t.exports=n})),V=s(((e,t)=>{var n=fo(),r=Qe(),i=Array.prototype.splice;function a(e,t){for(var a=e?t.length:0,o=a-1;a--;){var s=t[a];if(a==o||s!==c){var c=s;r(s)?i.call(e,s,1):n(e,s)}}return e}t.exports=a})),mo=s(((e,t)=>{var n=Wt(),r=V();function i(e,t){var i=[];if(!(e&&e.length))return i;var a=-1,o=[],s=e.length;for(t=n(t,3);++a{function n(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}t.exports=n})),go=s(((e,t)=>{var n=ho(),r=At(),i=wn(),a=jt();function o(e,t,o){e=a(e),t=r(t);var s=e.length;o=o===void 0?s:n(i(o),0,s);var c=o;return o-=t.length,o>=0&&e.slice(o,c)==t}t.exports=o})),_o=s(((e,t)=>{function n(e,t,n,r,i){return i(e,function(e,i,a){n=r?(r=!1,e):t(n,e,i,a)}),n}t.exports=n})),vo=s(((e,t)=>{var n=qt(),r=mi(),i=Wt(),a=_o(),o=He();function s(e,t,s){var c=o(e)?n:a,l=arguments.length<3;return c(e,i(t,4),s,l,r)}t.exports=s})),yo=s(((e,t)=>{var n=kt();function r(e,t){return n(t,function(t){return[t,e[t]]})}t.exports=r})),bo=s(((e,t)=>{function n(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=[e,e]}),n}t.exports=n})),xo=s(((e,t)=>{var n=yo(),r=_t(),i=Re(),a=bo(),o=`[object Map]`,s=`[object Set]`;function c(e){return function(t){var c=r(t);return c==o?i(t):c==s?a(t):n(t,e(t))}}t.exports=c})),So=s(((e,t)=>{t.exports=xo()(ut())})),Co=s(((e,t)=>{function n(e){return e===void 0}t.exports=n})),H=u(p()),wo=y(),U=u(Kt()),To=u(dn()),Eo=u(ut()),Do=u(yn()),Oo=u(Ft()),ko=u(xn()),Ao=u(En()),jo=u(He()),Mo=u(Nn()),No=u(oi()),Po=u(li()),Fo=u(gi()),Io=u(_i()),Lo=u(Ki()),Ro=u(ua()),zo=u(co()),Bo=u(B()),Vo=u(F()),Ho=u(Gt());mo();var Uo=u(go()),Wo=u(lo()),Go=u(vo()),Ko=u(So()),qo=u(Co()),Jo=`additionalProperties`,Yo=`required`,Xo=(e,t)=>{let n={};return e.filter(e=>{let r=t(e);return Object.prototype.hasOwnProperty.call(n,r)?!1:(n[r]=!0,!0)})},Zo=class{constructor(e){this.findOption=e,this.schemaObject=e=>{let t=this.properties(e),n={type:`object`,properties:t,additionalProperties:this.findOption(t)(Jo)},r=this.findOption(t)(Yo);return r.length>0&&(n.required=r),n},this.properties=e=>Object.keys(e).reduce((t,n)=>(t[n]=this.property(e[n]),t),{}),this.property=e=>{switch(typeof e){case`string`:return{type:`string`};case`boolean`:return{type:`boolean`};case`number`:return Number.isInteger(e)?{type:`integer`}:{type:`number`};case`object`:return e==null?{type:`null`}:this.schemaObjectOrArray(e);default:return{}}},this.schemaObjectOrArray=e=>e instanceof Array?this.schemaArray(e):this.schemaObject(e),this.schemaArray=e=>{if(e.length>0){let t=Xo(e.map(this.property),e=>JSON.stringify(e));return t.length===1?{type:`array`,items:t[0]}:{type:`array`,items:{oneOf:t}}}else return{type:`array`,items:{}}}}},Qo=(e,t={})=>new Zo(e=>n=>{switch(n){case Jo:return Object.prototype.hasOwnProperty.call(t,Jo)?t[Jo]:!0;case Yo:return Object.prototype.hasOwnProperty.call(t,Yo)?t[Yo](e):Object.keys(e);default:return}}).schemaObject(e),$o=new Set,es=(e,t)=>t<=1?e:e+t.toString(),ts=(e,t)=>{let n=es(e,t);return!$o.has(n)},ns=e=>{e===void 0&&(e=`undefined`);let t=0;for(;!ts(e,t);)t++;let n=es(e,t);return $o.add(n),n},rs=e=>$o.delete(e),is=(e,t)=>{let n=e;return!(0,U.default)(e)&&!(0,U.default)(t)&&!t.startsWith(`[`)&&(n=e+`.`),(0,U.default)(n)?t:(0,U.default)(t)?n:`${n}${t}`},as=e=>{let t=e.replace(/(anyOf|allOf|oneOf)\/[\d]+\//g,``).replace(/(then|else)\//g,``).split(`/`).map(ss);return(0,Do.default)(t[0]===`#`||t[0]===``?2:1,t.length,2).map(e=>t[e])},os=e=>e?.replace(/~/g,`~0`).replace(/\//g,`~1`),ss=e=>e?.replace(/~1/g,`/`).replace(/~0/,`~`),cs=(e,t)=>{if(t&&typeof t.title==`string`)return t.title;if(typeof e.scope==`string`){let t=e.scope;return(0,To.default)(ss(t.substr(t.lastIndexOf(`/`)+1)))}return``},ls=(e,t)=>{let n=e.label;return typeof n==`boolean`?us(cs(e,t),n):typeof n==`string`?us(n,!0):typeof n==`object`?us(typeof n.text==`string`?n.text:cs(e,t),typeof n.show==`boolean`?n.show:!0):us(cs(e,t),!0)},us=(e,t)=>({text:e,show:t}),ds=(e,t)=>(0,U.default)(t)?e:t.split(`.`).reduce((e,t)=>{if(!(!e||!Object.prototype.hasOwnProperty.call(e,t)))return e[t]},e),fs=e=>e===`#`||e===void 0||e===``,ps=(e,t,n)=>ms(e,t,{rootSchema:n,resolutionMap:new Map}),ms=(e,t,n)=>{let r;if(e&&typeof e.$ref==`string`){let i=hs(n.rootSchema,e.$ref,n);i!==void 0&&(r=hs(i,t,n))}return r===void 0&&(r=hs(e,t,n)),r},hs=(e,t,n)=>{let r=n.resolutionMap.get(e);if(r||(r=new Set,n.resolutionMap.set(e,r)),r.has(t))return;r.add(t);let i=gs(e,t?.split(`/`).map(ss),n);return r.delete(t),i},gs=(e,t,n)=>{if(!t||t.length===0)return e;if((0,U.default)(e))return;let r=_s(e,t,n);if(r!==void 0)return r;let i=[].concat(e.oneOf??[],e.allOf??[],e.anyOf??[],e.then??[],e.else??[]);for(let e of i){let r=e;e&&typeof e.$ref==`string`&&(r=ms(n.rootSchema,e.$ref,n));let i=gs(r,t,n);if(i)return i}},_s=(e,t,n)=>{if(!t||t.length===0)return e;if((0,U.default)(e))return;let r=vs(e,t);return r.schema&&typeof r.schema.$ref==`string`&&(r.schema=ms(n.rootSchema,r.schema.$ref,n)),gs(r.schema,r.remainingPathSegments,n)},vs=(e,t)=>{if(!t||t.length===0)return{schema:e,remainingPathSegments:[]};if((0,U.default)(e))return{schema:void 0,remainingPathSegments:t};let[n,...r]=t;return fs(n)?vs(e,r):{schema:(0,Oo.default)(e,n),remainingPathSegments:r,resolvedSegment:n}},ys;(function(e){e.HIDE=`HIDE`,e.SHOW=`SHOW`,e.ENABLE=`ENABLE`,e.DISABLE=`DISABLE`})(ys||={});var bs=(e,t)=>{if(!Ts(e))return t??``;let n=as(e.scope);return(0,U.default)(n)?t??``:is(t,n.join(`.`))},xs=e=>typeof e==`object`&&!!e&&typeof e.i18n==`string`,Ss=e=>e.type===`Group`,Cs=e=>e.elements!==void 0,ws=e=>!!e&&typeof e==`object`,Ts=e=>ws(e)&&typeof e.scope==`string`,Es=e=>!!e&&typeof e==`object`,Ds=e=>e.type===`OR`,Os=e=>e.type===`AND`,ks=e=>e.type===`LEAF`,As=e=>(0,ko.default)(e,`schema`),js=e=>(0,ko.default)(e,`validate`)&&typeof e.validate==`function`,Ms=(e,t)=>bs(e,t),Ns=(e,t,n,r,i,a)=>{if(Os(n))return n.conditions.reduce((n,o)=>n&&Ns(e,t,o,r,i,a),!0);if(Ds(n))return n.conditions.reduce((n,o)=>n||Ns(e,t,o,r,i,a),!1);if(ks(n))return ds(e,Ms(n,r))===n.expectedValue;if(As(n)){let t=ds(e,Ms(n,r));return n.failWhenUndefined&&t===void 0?!1:i.validate(n.schema,t)}else if(js(n)){let i={data:ds(e,Ms(n,r)),fullData:e,path:r,uischemaElement:t,config:a};return n.validate(i)}else return!0},Ps=(e,t,n,r,i)=>{let a=e.rule.condition;return Ns(t,e,a,n,r,i)},Fs=(e,t,n=void 0,r,i)=>{let a=Ps(e,t,n,r,i);switch(e.rule.effect){case ys.HIDE:return!a;case ys.SHOW:return a;default:return!0}},Is=(e,t,n=void 0,r,i)=>{let a=Ps(e,t,n,r,i);switch(e.rule.effect){case ys.DISABLE:return!a;case ys.ENABLE:return a;default:return!0}},Ls=e=>!!(e.rule&&(e.rule.effect===ys.SHOW||e.rule.effect===ys.HIDE)),Rs=e=>!!(e.rule&&(e.rule.effect===ys.ENABLE||e.rule.effect===ys.DISABLE)),zs=(e,t,n=void 0,r,i)=>e.rule?Fs(e,t,n,r,i):!0,Bs=(e,t,n=void 0,r,i)=>e.rule?Is(e,t,n,r,i):!0,Vs=e=>!!e&&Object.prototype.hasOwnProperty.call(e,`oneOf`)&&e.oneOf&&e.oneOf.every(e=>e.const!==void 0),Hs=e=>!!e&&typeof e==`object`&&(Object.prototype.hasOwnProperty.call(e,`enum`)||Object.prototype.hasOwnProperty.call(e,`const`)),Us=(e,t)=>{let n=e.toISOString();return t===`date-time`?n:t===`date`?n.split(`T`)[0]:t===`time`?n.split(`T`)[1].split(`.`)[0]:n},Ws=e=>e.replace(`#`,`root`).replace(RegExp(`/`,`g`),`_`),Gs=(e,t)=>(0,Mo.default)(Ks(e),t),Ks=e=>{if((0,U.default)(e))return[];if(!(0,U.default)(e.type)&&typeof e.type==`string`)return[e.type];if((0,jo.default)(e.type))return e.type;if(!(0,U.default)(e.properties)||!(0,U.default)(e.additionalProperties))return[`object`];if(!(0,U.default)(e.items))return[`array`];if(!(0,U.default)(e.enum)){let t=new Set;return e.enum.forEach(e=>{typeof e==`string`?t.add(`string`):Ks(e).forEach(e=>t.add(e))}),Array.from(t)}if(!(0,U.default)(e.allOf)){let t=(0,Ao.default)(e.allOf,e=>Ks(e).length!==0);if(t)return Ks(t)}return[]},qs={schema:ps,data:ds},Js={compose:is,fromScoped:e=>as(e.scope).join(`.`)},Ys=e=>{let t=new No.default({allErrors:!0,verbose:!0,strict:!1,addUsedSchema:!1,...e});return(0,Po.default)(t),t},Xs=(e,t)=>e===void 0||e(t)?[]:e.errors,Zs=e=>{switch(e.keyword){case`required`:case`dependencies`:return e.params.missingProperty;case`additionalProperties`:return e.params.additionalProperty;default:return}},Qs=e=>{let t=e.dataPath||e.instancePath||``;t=t.replace(/\//g,`.`);let n=Zs(e);return n!==void 0&&!t.endsWith(n)&&(t=`${t}.${n}`),t=t.replace(/^./,``),t=ss(t),t},$s=(e,t,n)=>r=>{let i=(0,Fo.default)(r,e=>e.keyword===`oneOf`||e.keyword===`anyOf`).map(e=>Qs(e));return(0,Fo.default)(r,r=>{if(tc.indexOf(r.keyword)!==-1&&!Vs(r.parentSchema))return!1;let a=n(Qs(r)),o=r.parentSchema;return a&&!ec(o)&&!Vs(o)&&i.findIndex(t=>e.startsWith(t))!==-1&&(a&&=(0,Io.default)(o,t)),a})},ec=e=>e?.type===`object`||!!e?.properties,tc=[`additionalProperties`,`allOf`,`anyOf`,`oneOf`],nc=e=>e==null?``:e.join(` +`),rc={createLabelDescriptionFrom:ls,convertToValidClassName:Ws},ic=e=>({type:e,elements:[]}),ac=e=>({type:`Control`,scope:e}),oc=(e,t)=>{if(!(0,U.default)(e)&&!Cs(e)){let n=ic(t);return n.elements.push(e),n}return e},sc=(e,t)=>{if(!(0,U.default)(t)){let n=(0,To.default)(t);if(Ss(e))e.label=n;else{let t={type:`Label`,text:n};e.elements.push(t)}}},cc=e=>!(0,U.default)(e)&&(!(0,U.default)(e.oneOf)||!(0,U.default)(e.anyOf)||!(0,U.default)(e.allOf)),lc=(e,t,n,r,i,a)=>{if(!(0,U.default)(e)&&e.$ref!==void 0)return lc(ps(a,e.$ref,a),t,n,r,i,a);if(cc(e)){let e=ac(n);return t.push(e),e}let o=Ks(e);if(o.length===0)return null;if(o.length>1){let e=ac(n);return t.push(e),e}if(n===`#`&&o[0]===`object`){let o=ic(i);if(t.push(o),e.properties&&(0,Eo.default)(e.properties).length>1&&sc(o,r),!(0,U.default)(e.properties)){let t=n+`/properties`;Object.keys(e.properties).map(n=>{let r=e.properties[n],s=`${t}/${os(n)}`;r.$ref!==void 0&&(r=ps(a,r.$ref,a)),lc(r,o.elements,s,n,i,a)})}return o}switch(o[0]){case`object`:case`array`:case`string`:case`number`:case`integer`:case`null`:case`boolean`:{let e=ac(n);return t.push(e),e}default:throw Error(`Unknown type: `+JSON.stringify(e))}},uc=(e,t=`VerticalLayout`,n=`#`,r=e)=>oc(lc(e,[],n,``,t,r),t),dc={jsonSchema:Qo,uiSchema:uc,controlElement:ac},fc=`jsonforms/INIT`,pc=`jsonforms/UPDATE_CORE`,mc=`jsonforms/SET_AJV`,hc=`jsonforms/UPDATE`,gc=`jsonforms/UPDATE_ERRORS`,_c=`jsonforms/VALIDATE`,vc=`jsonforms/ADD_RENDERER`,yc=`jsonforms/REMOVE_RENDERER`,bc=`jsonforms/ADD_CELL`,xc=`jsonforms/REMOVE_CELL`,Sc=`jsonforms/SET_CONFIG`,Cc=`jsonforms/ADD_UI_SCHEMA`,wc=`jsonforms/REMOVE_UI_SCHEMA`,Tc=`jsonforms/SET_SCHEMA`,Ec=`jsonforms/SET_UISCHEMA`,Dc=`jsonforms/SET_VALIDATION_MODE`,Oc=`jsonforms/SET_LOCALE`,kc=`jsonforms/SET_TRANSLATOR`,Ac=`jsonforms/UPDATE_I18N`,jc=`jsonforms/ADD_DEFAULT_DATA`,Mc=`jsonforms/REMOVE_DEFAULT_DATA`,Nc=e=>{if(!(`type`in e)||typeof e.type!=`string`)return!1;switch(e.type){case`ADD`:return`values`in e&&Array.isArray(e.values)&&e.values.length>0;case`REMOVE`:return`indices`in e&&Array.isArray(e.indices)&&e.indices.length>0&&e.indices.every(e=>typeof e==`number`);case`MOVE`:return`moves`in e&&Array.isArray(e.moves)&&e.moves.length>0&&e.moves.every(e=>typeof e==`object`&&!!e&&`from`in e&&`to`in e&&typeof e.from==`number`&&typeof e.to==`number`);default:return!1}},Pc=(e,t=Qo(e),n,r)=>({type:fc,data:e,schema:t,uischema:typeof n==`object`?n:uc(t),options:r}),Fc=(e,t,n,r)=>({type:pc,data:e,schema:t,uischema:n,options:r}),Ic=(e,t)=>({type:jc,schemaPath:e,data:t}),Lc=e=>({type:Mc,schemaPath:e}),Rc=e=>({type:mc,ajv:e}),zc=(e,t,n)=>({type:hc,path:e,updater:t,context:n}),Bc=Object.freeze({__proto__:null,INIT:fc,UPDATE_CORE:pc,SET_AJV:mc,UPDATE_DATA:hc,UPDATE_ERRORS:gc,VALIDATE:_c,ADD_RENDERER:vc,REMOVE_RENDERER:yc,ADD_CELL:bc,REMOVE_CELL:xc,SET_CONFIG:Sc,ADD_UI_SCHEMA:Cc,REMOVE_UI_SCHEMA:wc,SET_SCHEMA:Tc,SET_UISCHEMA:Ec,SET_VALIDATION_MODE:Dc,SET_LOCALE:Oc,SET_TRANSLATOR:kc,UPDATE_I18N:Ac,ADD_DEFAULT_DATA:jc,REMOVE_DEFAULT_DATA:Mc,isUpdateArrayContext:Nc,init:Pc,updateCore:Fc,registerDefaultData:Ic,unregisterDefaultData:Lc,setAjv:Rc,update:zc,updateErrors:e=>({type:gc,errors:e}),registerRenderer:(e,t)=>({type:vc,tester:e,renderer:t}),registerCell:(e,t)=>({type:bc,tester:e,cell:t}),unregisterCell:(e,t)=>({type:xc,tester:e,cell:t}),unregisterRenderer:(e,t)=>({type:yc,tester:e,renderer:t}),setConfig:e=>({type:Sc,config:e}),setValidationMode:e=>({type:Dc,validationMode:e}),registerUISchema:(e,t)=>({type:Cc,tester:e,uischema:t}),unregisterUISchema:e=>({type:wc,tester:e}),setLocale:e=>({type:Oc,locale:e}),setSchema:e=>({type:Tc,schema:e}),setTranslator:(e,t)=>({type:kc,translator:e,errorTranslator:t}),updateI18n:(e,t,n)=>({type:Ac,locale:e,translator:t,errorTranslator:n}),setUISchema:e=>({type:Ec,uischema:e})}),Vc={restrict:!1,trim:!1,showUnfocusedDescription:!1,hideRequiredAsterisk:!1},Hc=(e={})=>(0,Lo.default)({},Vc,e),Uc=(e=Hc(),t)=>{switch(t.type){case Sc:return Hc(t.config);default:return e}},Wc={data:{},schema:{},uischema:void 0,errors:[],validator:void 0,ajv:void 0,validationMode:`ValidateAndShow`,additionalErrors:[]},Gc=(e,t)=>t&&Kc(t.options)?t.options.validationMode:e.validationMode,Kc=e=>e?e.validationMode!==void 0:!1,qc=e=>e?e.additionalErrors!==void 0:!1,Jc=(e,t)=>t&&qc(t.options)?t.options.additionalErrors:e.additionalErrors,Yc=(e,t)=>{if(t){if(Xc(t.options))return t.options.ajv;if(t.options!==void 0&&(0,Vo.default)(t.options.compile))return t.options}return e.ajv?e.ajv:Ys()},Xc=e=>e?e.ajv!==void 0:!1,Zc=(e=Wc,t)=>{switch(t.type){case fc:{let n=Yc(e,t),r=Gc(e,t),i=r===`NoValidation`?void 0:n.compile(t.schema),a=Xs(i,t.data),o=Jc(e,t);return{...e,data:t.data,schema:t.schema,uischema:t.uischema,additionalErrors:o,errors:a,validator:i,ajv:n,validationMode:r}}case pc:{let n=Yc(e,t),r=Gc(e,t),i=e.validator,a=e.errors;e.schema!==t.schema||e.validationMode!==r||e.ajv!==n?(i=r===`NoValidation`?void 0:n.compile(t.schema),a=Xs(i,t.data)):e.data!==t.data&&(a=Xs(i,t.data));let o=Jc(e,t);return e.data!==t.data||e.schema!==t.schema||e.uischema!==t.uischema||e.ajv!==n||e.errors!==a||e.validator!==i||e.validationMode!==r||e.additionalErrors!==o?{...e,data:t.data,schema:t.schema,uischema:t.uischema,ajv:n,errors:(0,Io.default)(a,e.errors)?e.errors:a,validator:i,validationMode:r,additionalErrors:o}:e}case mc:{let n=t.ajv,r=e.validationMode===`NoValidation`?void 0:n.compile(e.schema),i=Xs(r,e.data);return{...e,validator:r,errors:i}}case Tc:{let n=t.schema&&e.ajv&&e.validationMode!==`NoValidation`?e.ajv.compile(t.schema):e.validator,r=Xs(n,e.data);return{...e,validator:n,schema:t.schema,errors:r}}case Ec:return{...e,uischema:t.uischema};case hc:if(t.path===void 0||t.path===null)return e;if(t.path===``){let n=t.updater((0,Ro.default)(e.data)),r=Xs(e.validator,n);return{...e,data:n,errors:r}}else{let n=(0,Oo.default)(e.data,t.path),r=t.updater((0,Ro.default)(n)),i;i=r===void 0?(0,Bo.default)(t.path,e.data===void 0?{}:e.data):(0,zo.default)(t.path,r,e.data===void 0?{}:e.data);let a=Xs(e.validator,i);return{...e,data:i,errors:a}}case gc:return{...e,errors:t.errors};case Dc:if(e.validationMode===t.validationMode)return e;if(t.validationMode===`NoValidation`){let n=Xs(void 0,e.data);return{...e,errors:n,validationMode:t.validationMode}}if(e.validationMode===`NoValidation`){let n=e.ajv.compile(e.schema),r=Xs(n,e.data);return{...e,validator:n,errors:r,validationMode:t.validationMode}}return{...e,validationMode:t.validationMode};default:return e}},Qc;(function(e){e.addTooltip=`addTooltip`,e.addAriaLabel=`addAriaLabel`,e.removeTooltip=`removeTooltip`,e.upAriaLabel=`upAriaLabel`,e.downAriaLabel=`downAriaLabel`,e.noSelection=`noSelection`,e.removeAriaLabel=`removeAriaLabel`,e.noDataMessage=`noDataMessage`,e.deleteDialogTitle=`deleteDialogTitle`,e.deleteDialogMessage=`deleteDialogMessage`,e.deleteDialogAccept=`deleteDialogAccept`,e.deleteDialogDecline=`deleteDialogDecline`,e.up=`up`,e.down=`down`})(Qc||={});var $c=[{key:Qc.addTooltip,default:e=>e?`Add to ${e}`:`Add`},{key:Qc.addAriaLabel,default:e=>e?`Add to ${e} button`:`Add button`},{key:Qc.removeTooltip,default:()=>`Delete`},{key:Qc.removeAriaLabel,default:()=>`Delete button`},{key:Qc.upAriaLabel,default:()=>`Move item up`},{key:Qc.up,default:()=>`Up`},{key:Qc.down,default:()=>`Down`},{key:Qc.downAriaLabel,default:()=>`Move item down`},{key:Qc.noDataMessage,default:()=>`No data`},{key:Qc.noSelection,default:()=>`No selection`},{key:Qc.deleteDialogTitle,default:()=>`Confirm Deletion`},{key:Qc.deleteDialogMessage,default:()=>`Are you sure you want to delete the selected entry?`},{key:Qc.deleteDialogAccept,default:()=>`Yes`},{key:Qc.deleteDialogDecline,default:()=>`No`}],el;(function(e){e.clearDialogTitle=`clearDialogTitle`,e.clearDialogMessage=`clearDialogMessage`,e.clearDialogAccept=`clearDialogAccept`,e.clearDialogDecline=`clearDialogDecline`})(el||={}),el.clearDialogTitle,el.clearDialogMessage,el.clearDialogAccept,el.clearDialogDecline;var tl=(e,t)=>xs(t)?t.i18n:e?.i18n??void 0,nl=e=>e?.split(`.`).filter(e=>!/^\d+$/.test(e)).join(`.`)||`root`,rl=(e,t,n)=>tl(e,t)??nl(n),il=(e,t,n,r)=>`${rl(e,t,n)}.${r}`,al=(e,t)=>`${e}.${t}`,ol=(e,t)=>t,sl=(e,t,n)=>{let r=t(il(e.parentSchema,n,Qs(e),`error.${e.keyword}`),void 0,{error:e});if(r!==void 0)return r;let i=t(`error.${e.keyword}`,void 0,{error:e});if(i!==void 0)return i;let a=t(e.message,void 0,{error:e});return a===void 0?e.keyword===`required`&&e.message?.startsWith(`must have required property`)?t(`is a required property`,`is a required property`,{error:e}):e.message:a},cl=(e,t,n,r,i,a)=>{if(e.length>0&&n){let t=n(il(r,i,a,`error.custom`),void 0,{schema:r,uischema:i,path:a,errors:e});if(t!==void 0)return t}return nc(e.map(e=>t(e,n,i)))},ll=(e,t)=>{if(e.label===!1||(e.label===void 0||e.label===null||e.label===!0)&&!xs(e))return;let n=typeof e.label==`string`?e.label:JSON.stringify(e.label),r=tl(void 0,e);return t(typeof r==`string`?`${r}.label`:n,n,{uischema:e})},ul=(e,t,n,r)=>{let i={};return t.forEach(t=>{let a=al(n,t.key);i[t.key]=e(a,t.default(r))}),i},dl=e=>e===void 0?ol:e.translate,fl=e=>e===void 0?sl:e.translateError,pl=()=>e=>dl((0,Oo.default)(e,`jsonforms.i18n`)),ml=()=>e=>fl((0,Oo.default)(e,`jsonforms.i18n`)),hl={locale:`en`,translate:ol,translateError:sl},gl=(e=hl,t)=>{switch(t.type){case Ac:{let n=t.locale??hl.locale,r=t.translator??hl.translate,i=t.errorTranslator??hl.translateError;return n!==e.locale||r!==e.translate||i!==e.translateError?{...e,locale:n,translate:r,translateError:i}:e}case kc:return{...e,translate:t.translator??ol,translateError:t.errorTranslator??sl};case Oc:return{...e,locale:t.locale??navigator.languages[0]};default:return e}},_l=e=>!(0,U.default)(e)&&e.scope!==void 0,vl=e=>(t,n,r)=>{if((0,U.default)(t)||!_l(t)||(0,U.default)(n))return!1;let i=t.scope;if((0,U.default)(i))return!1;let a=n;return Gs(n,`object`)&&(a=ps(n,i,r?.rootSchema)),a===void 0?!1:e(a,r?.rootSchema)},yl=(e,t)=>(n,r,i)=>{if((0,U.default)(n)||!_l(n))return!1;let a=n.scope,o=r;return Gs(r,`object`)&&(o=ps(r,a,i?.rootSchema)),o=(0,Oo.default)(o,e),o===void 0?!1:t(o,i?.rootSchema)},bl=e=>vl(t=>!(0,U.default)(t)&&Gs(t,e)),xl=e=>vl(t=>!(0,U.default)(t)&&t.format===e&&Gs(t,`string`)),W=e=>t=>!(0,U.default)(t)&&t.type===e,Sl=(e,t)=>n=>{if((0,U.default)(n))return!1;let r=n.options;return!(0,U.default)(r)&&r[e]===t},Cl=e=>t=>{if((0,U.default)(t))return!1;let n=t.options;return!(0,U.default)(n)&&!(0,qo.default)(n[e])},wl=e=>t=>(0,U.default)(e)||!_l(t)?!1:(0,Uo.default)(t.scope,e),Tl=e=>t=>{if((0,U.default)(e)||!_l(t))return!1;let n=t.scope;return!(0,U.default)(n)&&(0,Wo.default)(n.split(`/`))===e},G=(...e)=>(t,n,r)=>e.reduce((e,i)=>e&&i(t,n,r),!0),El=(...e)=>(t,n,r)=>e.reduce((e,i)=>e||i(t,n,r),!1),Dl=(e,t)=>(n,r,i)=>t(n,r,i)?e:-1,Ol=(e,t)=>(n,r,i)=>{let a=t(n,r,i);return a===-1?-1:a+e},kl=G(W(`Control`),bl(`boolean`)),Al=G(W(`Control`),bl(`object`)),jl=G(W(`Control`),vl(e=>Object.prototype.hasOwnProperty.call(e,`allOf`))),Ml=G(W(`Control`),vl(e=>Object.prototype.hasOwnProperty.call(e,`anyOf`))),Nl=G(W(`Control`),vl(e=>Object.prototype.hasOwnProperty.call(e,`oneOf`))),Pl=G(W(`Control`),vl(e=>Hs(e))),Fl=G(W(`Control`),vl(e=>Vs(e))),Il=G(W(`Control`),bl(`integer`)),Ll=G(W(`Control`),bl(`number`)),Rl=G(W(`Control`),bl(`string`)),K=G(W(`Control`),Sl(`multi`,!0)),q=G(W(`Control`),El(xl(`date`),Sl(`format`,`date`))),J=G(W(`Control`),El(xl(`time`),Sl(`format`,`time`))),Y=G(W(`Control`),El(xl(`date-time`),Sl(`format`,`date-time`))),X=G(vl((e,t)=>Gs(e,`array`)&&!Array.isArray(ps(e,`items`,t))),yl(`items`,(e,t)=>Gs(e.$ref?ps(t,e.$ref,t):e,`object`))),zl=G(W(`Control`),X),Bl=(e,t,n)=>{if((0,jo.default)(e))return(0,Go.default)(e,(e,r)=>e||Bl(r,t,n),!1);if(t(e))return!0;if(e.$ref){let r=ps(n,e.$ref,n);if(r&&!r.$ref)return Bl(r,t,n)}return e.items?Bl(e.items,t,n):e.properties?(0,Go.default)((0,Ko.default)(e.properties),(e,[r,i])=>e||Bl(i,t,n),!1):!1},Vl=(e,t,n)=>{if(!W(`Control`)(e,t,n))return!1;let r=e.scope,i=ps(t,r,n?.rootSchema??t),a=0;if(i!==void 0&&i.items!==void 0){if(Bl(i.items,e=>e===t||e.$ref!==void 0?!1:!!(e.anyOf||e.allOf||e.oneOf&&!Vs(e)||Gs(e,`object`)&&(a++,a===2)||Gs(e,`array`)),n?.rootSchema))return!0;if(e.options&&e.options.detail){if(typeof e.options.detail==`string`)return e.options.detail.toUpperCase()!==`DEFAULT`;if(typeof e.options.detail==`object`&&e.options.detail.type)return!0}}return!1},Hl=zl,Ul=G(W(`Control`),vl((e,t)=>Ks(e).length!==0&&!Array.isArray(ps(e,`items`,t))),yl(`items`,(e,t)=>{let n=Ks(e.$ref?ps(t,e.$ref,t):e);return n.length===1&&(0,Mo.default)([`integer`,`number`,`boolean`,`string`],n[0])})),Wl=G(W(`Control`),El(bl(`number`),bl(`integer`)),vl(e=>Object.prototype.hasOwnProperty.call(e,`maximum`)&&Object.prototype.hasOwnProperty.call(e,`minimum`)&&Object.prototype.hasOwnProperty.call(e,`default`)),Sl(`slider`,!0)),Gl=G(W(`Control`),bl(`integer`),Sl(`format`,!0)),Kl=e=>e.type===`Categorization`,ql=e=>e.type===`Category`,Jl=e=>(0,U.default)(e.elements)?!1:e.elements.map(e=>Kl(e)?Jl(e):ql(e)).reduce((e,t)=>e&&t,!0),Yl=Object.freeze({__proto__:null,NOT_APPLICABLE:-1,isControl:_l,schemaMatches:vl,schemaSubPathMatches:yl,schemaTypeIs:bl,formatIs:xl,uiTypeIs:W,optionIs:Sl,hasOption:Cl,scopeEndsWith:wl,scopeEndIs:Tl,and:G,or:El,rankWith:Dl,withIncreasedRank:Ol,isBooleanControl:kl,isObjectControl:Al,isAllOfControl:jl,isAnyOfControl:Ml,isOneOfControl:Nl,isEnumControl:Pl,isOneOfEnumControl:Fl,isIntegerControl:Il,isNumberControl:Ll,isStringControl:Rl,isMultiLineControl:K,isDateControl:q,isTimeControl:J,isDateTimeControl:Y,isObjectArray:X,isObjectArrayControl:zl,isObjectArrayWithNesting:Vl,isArrayObjectControl:Hl,isPrimitiveArrayControl:Ul,isRangeControl:Wl,isNumberFormatControl:Gl,isCategorization:Kl,isCategory:ql,hasCategory:Jl,categorizationHasCategory:e=>Jl(e),not:e=>(t,n,r)=>!e(t,n,r)}),Xl=e=>(t,n,r)=>{let i=(0,Ho.default)(e,e=>e.tester(t,n,r));if(i!==void 0&&i.tester(t,n,r)!==-1)return i.uischema},Zl=(e,t,n,r,i=`VerticalLayout`,a,o)=>{if(a&&a.options&&a.options.detail){if(typeof a.options.detail==`string`){if(a.options.detail.toUpperCase()===`GENERATE`)return typeof i==`function`?i():dc.uiSchema(t,i,void 0,o)}else if(typeof a.options.detail==`object`&&a.options.detail.type&&typeof a.options.detail.type==`string`)return a.options.detail}let s=Xl(e)(t,n,r);return s===void 0?typeof i==`function`?i():dc.uiSchema(t,i,`#`,o):s},Ql=(e,t,n)=>n(e,t),$l=(e,t,n)=>r=>{let i=r.errors??[],a=r.additionalErrors??[];return $s(e,t,n)(r.validationMode===`ValidateAndHide`?a:[...i,...a])},eu=(e,t)=>$l(e,t,t=>t===e),tu=(e,t)=>$l(e,t,t=>t.startsWith(e+`.`)),nu=(e,t)=>n=>eu(e,t)(n.jsonforms.core),ru=(e,t)=>n=>tu(e,t)(n.jsonforms.core),iu=e=>uu((0,Oo.default)(e,`jsonforms.core`)),au=e=>du((0,Oo.default)(e,`jsonforms.core`)),ou=e=>fu((0,Oo.default)(e,`jsonforms.core`)),su=e=>pu((0,Oo.default)(e,`jsonforms.core`)),cu=e=>(0,Oo.default)(e,`jsonforms.renderers`),lu=e=>(0,Oo.default)(e,`jsonforms.cells`),uu=e=>(0,Oo.default)(e,`data`),du=e=>(0,Oo.default)(e,`schema`),fu=e=>(0,Oo.default)(e,`uischema`),pu=e=>(0,Oo.default)(e,`ajv`),mu=e=>e.jsonforms.config,hu=(e,t,n,r,i,a)=>e?.jsonforms?.readonly?!1:n&&Rs(n)?Bs(n,i,t?.path,su(e),a):typeof n?.options?.readonly==`boolean`?!n.options.readonly:typeof n?.options?.readOnly==`boolean`?!n.options.readOnly:typeof a?.readonly==`boolean`?!a.readonly:typeof a?.readOnly==`boolean`?!a.readOnly:r?.readOnly===!0?!1:typeof t?.enabled==`boolean`?t.enabled:!0,gu=(e,t,n)=>{let r=t+n;if(r<0||r>=e.length)return;let i=[t,r].sort((e,t)=>e-t);e.splice(i[0],2,e[i[1]],e[i[0]])},_u=(e,t)=>{gu(e,t,-1)},vu=(e,t)=>{gu(e,t,1)},yu=(e,t,n)=>{let r=t.split(`/`),i=ss(r[r.length-1]),a=r.slice(0,r.length-2).join(`/`),o=qs.schema(e,a,n);return o!==void 0&&o.required!==void 0&&o.required.indexOf(i)!==-1},bu=(e,t,n)=>`${e??``}${t&&!n?`*`:``}`,xu=(e,t)=>{let n=Su(e,t);return n===void 0?{}:n},Su=(e,t)=>{let n=typeof e.$ref==`string`?qs.schema(t,e.$ref,t):e;if(n.default!==void 0)return wu(n,t);if(Gs(n,`string`))return n.format===`date-time`||n.format===`date`||n.format===`time`?Us(new Date,n.format):``;if(Gs(n,`integer`)||Gs(n,`number`))return 0;if(Gs(n,`boolean`))return!1;if(Gs(n,`array`))return[];if(Gs(n,`object`))return wu(n,t);if(Gs(n,`null`))return null;for(let n of[`oneOf`,`anyOf`,`allOf`])if(e[n]&&Array.isArray(e[n])){let r=Cu(e[n],t);if(r!==void 0)return r}},Cu=(e,t)=>{if(e.length>0)for(let n of e){let e=Su(n,t);if(e!==void 0)return e}},wu=(e,t)=>{if(Gs(e,`object`)&&e.default===void 0){let n={};for(let r in e.properties){let i=e.properties[r],a=i.$ref?qs.schema(t,i.$ref,t):i;a&&a.default!==void 0&&(n[r]=(0,Ro.default)(a.default))}return e.allOf&&Array.isArray(e.allOf)&&e.allOf.forEach(e=>{if(e&&e.properties)for(let r in e.properties){let i=e.properties[r],a=i.$ref?qs.schema(t,i.$ref,t):i;a&&a.default!==void 0&&(n[r]=(0,Ro.default)(a.default))}}),n}return(0,Ro.default)(e.default)},Tu=(e,t,n,r)=>t===void 0||t!==void 0&&!e||!r&&!n,Eu=(e,t,n)=>{let r=typeof e==`string`?e:JSON.stringify(e);return t&&(r=t(n?`${n}.${r}`:r,r)),{label:r,value:e}},Du=(e,t,n)=>{let r=e.title??(typeof e.const==`string`?e.const:JSON.stringify(e.const));return t&&(r=e.i18n?t(e.i18n,r):t(n?`${n}.${r}`:r,r)),{label:r,value:e.const}},Ou=(e,t)=>{let{uischema:n}=t,r=iu(e),i=bs(n,t.path),a=mu(e),o=t.visible===void 0||Ls(n)?zs(n,r,t.path,su(e),a):t.visible,s=n,c=t.id,l=au(e),u=s.scope!==void 0&&yu(t.schema,s.scope,l),d=qs.schema(t.schema||l,s.scope,l),f=nu(i,d)(e),p=d===void 0?``:d.description,m=qs.data(r,i),h=ls(n,d),g=h.show?h.text:``,_=hu(e,t,n,d||l,r,a),v=d??l,y=pl()(e),b=ml()(e),x=rl(v,n,i),S=y(il(v,n,i,`label`),g,{schema:v,uischema:n,path:i,errors:f});return{data:m,description:y(il(v,n,i,`description`),p,{schema:v,uischema:n,path:i,errors:f}),errors:cl(f,b,y,v,n,i),label:S,visible:o,enabled:_,id:c,path:i,required:u,uischema:n,schema:v,config:mu(e),cells:t.cells||e.jsonforms.cells,rootSchema:l,i18nKeyPrefix:x}},ku=e=>({handleChange(t,n){e(zc(t,()=>n))}}),Au=(e,t)=>{let n=Ou(e,t),r=t.options||n.schema.enum?.map(t=>Eu(t,pl()(e),rl(n.schema,n.uischema,n.path)))||n.schema.const&&[Eu(n.schema.const,pl()(e),rl(n.schema,n.uischema,n.path))];return{...n,options:r}},ju=(e,t)=>{let n=Ou(e,t),r=t.options||n.schema.oneOf?.map(t=>Du(t,pl()(e),rl(n.schema,n.uischema,n.path)));return{...n,options:r}},Mu=(e,t)=>{let{...n}=Ou(e,t);return{...n,uischemas:e.jsonforms.uischemas}},Nu=(e,t)=>{let{path:n,schema:r,uischema:i,label:a,...o}=Mu(e,t),s=qs.schema(r,`items`,o.rootSchema),c=ru(n,s)(e);return{...o,label:a,path:n,uischema:i,schema:s,arraySchema:r,childErrors:c,renderers:t.renderers||cu(e),cells:t.cells||lu(e)}},Pu=e=>({addItem:(t,n)=>()=>{e(zc(t,e=>e==null?[n]:(e.push(n),e),{type:`ADD`,values:[n]}))},removeItems:(t,n)=>()=>{e(zc(t,e=>(n.sort((e,t)=>e-t).reverse().forEach(t=>e.splice(t,1)),e),{type:`REMOVE`,indices:n}))},moveUp:(t,n)=>()=>{e(zc(t,e=>(_u(e,n),e),{type:`MOVE`,moves:[{from:n,to:n-1}]}))},moveDown:(t,n)=>()=>{e(zc(t,e=>(vu(e,n),e),{type:`MOVE`,moves:[{from:n,to:n+1}]}))}}),Fu={visible:!0,enabled:!0,path:``,direction:`column`},Iu=e=>e.type===`HorizontalLayout`?`row`:e.type===`VerticalLayout`?`column`:Fu.direction,Lu=(e,t)=>{let n=iu(e),{uischema:r}=t,i=t.visible===void 0||Ls(r)?zs(t.uischema,n,t.path,su(e),mu(e)):t.visible,a=qs.data(n,t.path),o=mu(e),s=hu(e,t,r,void 0,n,o),c=pl()(e),l=Es(r)?ll(r,c):void 0;return{...Fu,renderers:t.renderers||cu(e),cells:t.cells||lu(e),visible:i,enabled:s,path:t.path,data:a,uischema:t.uischema,schema:t.schema,direction:t.direction??Iu(r),config:o,label:l}},Ru=(e,t)=>({renderers:t.renderers||(0,Oo.default)(e.jsonforms,`renderers`),cells:t.cells||(0,Oo.default)(e.jsonforms,`cells`),schema:t.schema||au(e),rootSchema:au(e),uischema:t.uischema||ou(e),path:t.path,enabled:t.enabled,config:mu(e)});({...Fu});var zu=(e,t)=>{let{uischema:n}=t,r=t.visible===void 0||Ls(n)?zs(t.uischema,iu(e),t.path,su(e),mu(e)):t.visible,i=n.text,a=pl()(e),o=tl(void 0,n);return{text:a(o?`${o}.text`:i??``,i,{uischema:n}),visible:r,config:mu(e),renderers:t.renderers||cu(e),cells:t.cells||lu(e),uischema:n}},Bu=(e,t)=>{let{id:n,schema:r,path:i,uischema:a,renderers:o,cells:s}=t,c=iu(e),l=mu(e),u=t.visible===void 0?zs(a,c,void 0,su(e),l):t.visible,d=au(e),f;f=e.jsonforms.readonly===!0?!1:typeof t.enabled==`boolean`?t.enabled:hu(e,t,a,r||d,c,l);let p=pl()(e),m=ml()(e),h=cl(nu(i,r)(e),m,p,r,a,i),g=(0,U.default)(h);return{data:qs.data(c,i),visible:u,enabled:f,id:n,path:i,errors:h,isValid:g,schema:r,uischema:a,config:mu(e),rootSchema:d,renderers:o,cells:s}},Vu=(e,t)=>{let n=Bu(e,t),{renderers:r,cells:i,...a}=t;return{...n,...a,cells:i||e.jsonforms.cells||[]}},Hu=(e,t)=>{let n=Bu(e,t),r=t.options||n.schema.enum?.map(t=>Eu(t,pl()(e),rl(n.schema,n.uischema,n.path)))||n.schema.const&&[Eu(n.schema.const,pl()(e),rl(n.schema,n.uischema,n.path))];return{...n,options:r}},Uu=(e,t)=>{let n=Bu(e,t),r=t.options||n.schema.oneOf?.map(t=>Du(t,pl()(e),rl(n.schema,n.uischema,n.path)));return{...n,options:r}},Wu=s(((e,t)=>{var n=x();t.exports=function(){return n.Date.now()}})),Z=u(s(((e,t)=>{var n=P(),r=Wu(),i=gn(),a=`Expected a function`,o=Math.max,s=Math.min;function c(e,t,c){var l,u,d,f,p,m,h=0,g=!1,_=!1,v=!0;if(typeof e!=`function`)throw TypeError(a);t=i(t)||0,n(c)&&(g=!!c.leading,_=`maxWait`in c,d=_?o(i(c.maxWait)||0,t):d,v=`trailing`in c?!!c.trailing:v);function y(t){var n=l,r=u;return l=u=void 0,h=t,f=e.apply(r,n),f}function b(e){return h=e,p=setTimeout(C,t),g?y(e):f}function x(e){var n=e-m,r=e-h,i=t-n;return _?s(i,d-r):i}function S(e){var n=e-m,r=e-h;return m===void 0||n>=t||n<0||_&&r>=d}function C(){var e=r();if(S(e))return w(e);p=setTimeout(C,x(e))}function w(e){return p=void 0,v&&l?y(e):(l=u=void 0,f)}function T(){p!==void 0&&clearTimeout(p),h=0,l=m=u=p=void 0}function E(){return p===void 0?f:w(r())}function D(){var e=r(),n=S(e);if(l=arguments,u=this,m=e,n){if(p===void 0)return b(m);if(_)return clearTimeout(p),p=setTimeout(C,t),y(m)}return p===void 0&&(p=setTimeout(C,t)),f}return D.cancel=T,D.flush=E,D}t.exports=c}))()),Gu=class extends H.Component{constructor(e){super(e)}},Ku=class extends Gu{constructor(e){super(e),this.handleChange=e=>{this.setState({value:e}),this.updateData(e)},this.onFocus=()=>{this.setState({isFocused:!0})},this.onBlur=()=>{this.setState({isFocused:!1})},this.updateData=e=>{this.props.handleChange(this.props.path,e)},this.state={value:e.data?e.data:``,isFocused:!1}}},qu=class extends H.Component{render(){return H.createElement(`div`,{style:{color:`red`}},`No applicable `,this.props.type,` found.`)}},Ju=H.createContext({core:{data:{},schema:{},uischema:void 0,errors:[],additionalErrors:[],validator:void 0,ajv:void 0},renderers:[]}),Yu=(e,t)=>{let n=(0,H.useRef)(!0);(0,H.useEffect)(()=>{if(n.current){n.current=!1;return}e()},t)},Xu=({children:e,initState:t,onChange:n,middleware:r})=>{let{data:i,schema:a,uischema:o,ajv:s,validationMode:c,additionalErrors:l}=t.core,u=(0,H.useRef)(r??Ql);u.current=r??Ql;let[d,f]=(0,H.useState)(()=>u.current(t.core,Bc.init(i,a,o,{ajv:s,validationMode:c,additionalErrors:l}),Zc));(0,H.useEffect)(()=>f(e=>u.current(e,Bc.updateCore(i,a,o,{ajv:s,validationMode:c,additionalErrors:l}),Zc)),[i,a,o,s,c,l]);let[p,m]=(0,H.useReducer)(Uc,void 0,()=>Uc(void 0,Bc.setConfig(t.config)));Yu(()=>{m(Bc.setConfig(t.config))},[t.config]);let[h,g]=(0,H.useReducer)(gl,void 0,()=>gl(t.i18n,Bc.updateI18n(t.i18n?.locale,t.i18n?.translate,t.i18n?.translateError)));(0,H.useEffect)(()=>{g(Bc.updateI18n(t.i18n?.locale,t.i18n?.translate,t.i18n?.translateError))},[t.i18n?.locale,t.i18n?.translate,t.i18n?.translateError]);let _=(0,H.useCallback)(e=>{f(t=>u.current(t,e,Zc))},[]),v=(0,H.useMemo)(()=>({core:d,renderers:t.renderers,cells:t.cells,config:p,uischemas:t.uischemas,readonly:t.readonly,i18n:h,dispatch:_}),[d,t.renderers,t.cells,p,t.uischemas,t.readonly,h]),y=(0,H.useRef)(n);(0,H.useEffect)(()=>{y.current=n},[n]);let b=(0,H.useCallback)((0,Z.default)((...e)=>y.current?.(...e),10),[]);return(0,H.useEffect)(()=>{b({data:d.data,errors:d.errors})},[d.data,d.errors]),H.createElement(Ju.Provider,{value:v},e)},Zu=()=>(0,H.useContext)(Ju),Qu=(e,t)=>Nu({jsonforms:{...e}},t),$u=(e,t)=>Lu({jsonforms:{...e}},t),ed=(e,t)=>Ou({jsonforms:{...e}},t),td=(e,t)=>{let n=Au({jsonforms:{...e}},t),r=(0,H.useMemo)(()=>n.options,[t.options,n.schema,e.i18n?.translate]);return{...n,options:r}},nd=(e,t)=>{let n=ju({jsonforms:{...e}},t),r=(0,H.useMemo)(()=>n.options,[t.options,n.schema,e.i18n?.translate]);return{...n,options:r}},rd=e=>(0,H.useMemo)(()=>ku(e),[e]),id=(e,t)=>Ru({jsonforms:{...e}},t),ad=e=>({...rd(e),...(0,H.useMemo)(()=>Pu(e),[e])}),od=(e,t)=>Bu({jsonforms:{...e}},t),sd=(e,t)=>{let n=Hu({jsonforms:{...e}},t),r=(0,H.useMemo)(()=>n.options,[t.options,n.schema,e.i18n?.translate]);return{...n,options:r}},cd=(e,t)=>{let n=Uu({jsonforms:{...e}},t),r=(0,H.useMemo)(()=>n.options,[t.options,n.schema,e.i18n?.translate]);return{...n,options:r}},ld=(e,t)=>Vu({jsonforms:{...e}},t),ud=(e,t)=>zu({jsonforms:{...e}},t),dd=e=>function(t){let n=Zu();return H.createElement(e,{ctx:n,props:t})},fd=e=>function({ctx:t,props:n}){let r=id(t,n);return H.createElement(e,{...n,...r})},pd=e=>function({ctx:t,props:n}){let r=ed(t,n),i=rd(t.dispatch);return H.createElement(e,{...n,...r,...i})},md=e=>function({ctx:t,props:n}){let r=$u(t,n);return H.createElement(e,{...n,...r})},hd=e=>function({ctx:t,props:n}){let r=Qu(t,n),i=ad(t.dispatch);return H.createElement(e,{...n,...r,...i})},gd=e=>function({ctx:t,props:n}){let r=od(t,n),i=rd(t.dispatch);return H.createElement(e,{...n,...i,...r})},_d=e=>function({ctx:t,props:n}){let r=ld(t,n),i=rd(t.dispatch);return H.createElement(e,{...n,...i,...r})},vd=e=>function({ctx:t,props:n}){let r=sd(t,n),i=rd(t.dispatch);return H.createElement(e,{...n,...i,...r})},yd=e=>function({ctx:t,props:n}){let r=td(t,n),i=rd(t.dispatch);return H.createElement(e,{...n,...i,...r})},Q=e=>function({ctx:t,props:n}){let r=cd(t,n),i=rd(t.dispatch);return H.createElement(e,{...n,...i,...r})},bd=e=>function({ctx:t,props:n}){let r=nd(t,n),i=rd(t.dispatch);return H.createElement(e,{...n,...i,...r})},xd=e=>function({ctx:t,props:n}){let r=ud(t,n);return H.createElement(e,{...n,...r})},Sd=(e,t=!0)=>dd(fd(t?H.memo(e):e)),Cd=(e,t=!0)=>dd(pd(t?H.memo(e):e)),wd=(e,t=!0)=>dd(md(t?H.memo(e):e)),Td=(e,t=!0)=>dd(hd(t?H.memo(e):e)),Ed=(e,t=!0)=>dd(gd(t?H.memo(e):e)),Dd=(e,t=!0)=>dd(_d(t?H.memo(e):e)),Od=(e,t=!0)=>dd(vd(t?H.memo(e):e)),kd=(e,t=!0)=>dd(yd(t?H.memo(e):e)),Ad=(e,t=!0)=>dd(Q(t?H.memo(e):e)),jd=(e,t=!0)=>dd(bd(t?H.memo(e):e)),Md=(e,t=!0)=>dd(xd(t?H.memo(e):e)),$=e=>function(t){let n=Zu(),r=n.i18n?.locale??hl.locale,i=n.i18n?.translate??hl.translate;return H.createElement(e,{...t,locale:r,t:i})},Nd=e=>function(t){let n=(0,H.useMemo)(()=>ul(t.t,$c,t.i18nKeyPrefix,t.label),[t.t,t.i18nKeyPrefix,t.label]);return H.createElement(e,{...t,translations:n})},Pd=class extends H.Component{constructor(e){super(e),this.state={id:_l(e.uischema)?ns(e.uischema.scope):void 0}}componentWillUnmount(){_l(this.props.uischema)&&rs(this.state.id)}componentDidUpdate(e){e.schema!==this.props.schema&&(rs(this.state.id),this.setState({id:_l(this.props.uischema)?ns(this.props.uischema.scope):void 0}))}render(){let{schema:e,rootSchema:t,uischema:n,path:r,enabled:i,renderers:a,cells:o,config:s}=this.props;return H.createElement(Fd,{uischema:n,schema:e,rootSchema:t,path:r,enabled:i,renderers:a,cells:o,id:this.state.id,config:s})}},Fd=H.memo(function(e){let t=(0,H.useMemo)(()=>({rootSchema:e.rootSchema,config:e.config}),[e.rootSchema,e.config]),n=(0,H.useMemo)(()=>(0,Ho.default)(e.renderers,n=>n.tester(e.uischema,e.schema,t)),[e.renderers,e.uischema,e.schema,t]);if(n===void 0||n.tester(e.uischema,e.schema,t)===-1)return H.createElement(qu,{type:`renderer`});{let t=n.renderer;return H.createElement(t,{uischema:e.uischema,schema:e.schema,path:e.path,enabled:e.enabled,renderers:e.renderers,cells:e.cells,id:e.id})}}),Id=class extends Pd{constructor(e){super(e)}},Ld=Sd(Pd);Sd(Id);var Rd=e=>{let{ajv:t,data:n,schema:r,uischema:i,renderers:a,cells:o,onChange:s,config:c,uischemas:l,readonly:u,validationMode:d,i18n:f,additionalErrors:p,middleware:m}=e,h=(0,H.useMemo)(()=>r===void 0?dc.jsonSchema(n):r,[r,n]),g=(0,H.useMemo)(()=>typeof i==`object`?i:dc.uiSchema(h,void 0,void 0,h),[i,h]);return H.createElement(Xu,{initState:{core:{ajv:t,data:n,schema:h,uischema:g,validationMode:d,additionalErrors:p},config:c,uischemas:l,renderers:a,cells:o,readonly:u,i18n:f},onChange:s,middleware:m},H.createElement(Ld,null))},zd=Dd(({uischema:e,schema:t,rootSchema:n,path:r,cells:i,id:a,enabled:o,renderers:s,config:c})=>{let l=(0,H.useMemo)(()=>({rootSchema:n,config:c}),[n,c]),u=(0,H.useMemo)(()=>(0,Ho.default)(i,n=>n.tester(e,t,l)),[i,e,t,l]);if(u===void 0||u.tester(e,t,l)===-1)return H.createElement(qu,{type:`cell`});{let n=u.cell;return H.createElement(n,{uischema:e,schema:t,enabled:o,path:r,id:a,renderers:s,cells:i})}}),Bd=s(((e,t)=>{var n=Array.prototype.join;function r(e,t){return e==null?``:n.call(e,t)}t.exports=r})),Vd=s(((e,t)=>{var n=ao()(`filter`,gi());n.placeholder=fa(),t.exports=n})),Hd=s(((e,t)=>{var n=mi(),r=lt();function i(e,t){var i=-1,a=r(e)?Array(e.length):[];return n(e,function(e,n,r){a[++i]=t(e,n,r)}),a}t.exports=i})),Ud=s(((e,t)=>{var n=kt(),r=Wt(),i=Hd(),a=He();function o(e,t){return(a(e)?n:i)(e,r(t,3))}t.exports=o})),Wd=s(((e,t)=>{var n=ao()(`map`,Ud());n.placeholder=fa(),t.exports=n})),Gd=s(((e,t)=>{var n=Da(),r=to(),i=wa(),a=Ea(),o=He(),s=Aa(),c=`Expected a function`,l=8,u=32,d=128,f=256;function p(e){return r(function(t){var r=t.length,p=r,m=n.prototype.thru;for(e&&t.reverse();p--;){var h=t[p];if(typeof h!=`function`)throw TypeError(c);if(m&&!g&&a(h)==`wrapper`)var g=new n([],!0)}for(p=g?p:r;++p{t.exports=Gd()()})),qd=s(((e,t)=>{var n=ao()(`flow`,Kd());n.placeholder=fa(),t.exports=n})),Jd=s(((e,t)=>{t.exports={cap:!1,curry:!1,fixed:!1,immutable:!1,rearg:!1}})),Yd=s(((e,t)=>{var n=ao()(`keys`,ut(),Jd());n.placeholder=fa(),t.exports=n})),Xd=s(((e,t)=>{var n=ao()(`startCase`,dn(),Jd());n.placeholder=fa(),t.exports=n})),Zd=u(Bd()),Qd=u(Vd()),$d=u(Wd()),ef=u(qd()),tf=u(Yd()),nf=u(Xd()),rf={"enum.none":`None`},af=e=>(t,...n)=>(0,Go.default)((0,Fo.default)(e,e=>e.name===t),(e,t)=>typeof t.classNames==`function`?e.concat(t.classNames(n)):e.concat(t.classNames),[]),of=e=>(t,...n)=>(0,Zd.default)(af(e)(t,n),` `),sf=H.createContext({styles:[{name:`control`,classNames:[`control`]},{name:`control.trim`,classNames:[`trim`]},{name:`control.input`,classNames:[`input`]},{name:`control.select`,classNames:[`select`]},{name:`control.checkbox`,classNames:[`checkbox`]},{name:`control.radio`,classNames:[`radio`]},{name:`control.radio.option`,classNames:[`radio-option`]},{name:`control.radio.input`,classNames:[`radio-input`]},{name:`control.radio.label`,classNames:[`radio-label`]},{name:`control.validation.error`,classNames:[`validation_error`]},{name:`control.validation`,classNames:[`validation`]},{name:`categorization`,classNames:[`categorization`]},{name:`categorization.master`,classNames:[`categorization-master`]},{name:`categorization.detail`,classNames:[`categorization-detail`]},{name:`category.group`,classNames:[`category-group`]},{name:`category.subcategories`,classNames:[`category-subcategories`]},{name:`array.layout`,classNames:[`array-layout`]},{name:`array.children`,classNames:[`children`]},{name:`group.layout`,classNames:[`group-layout`]},{name:`horizontal.layout`,classNames:[`horizontal-layout`]},{name:`horizontal.layout.item`,classNames:([e])=>[`horizontal-layout-${e}`]},{name:`vertical.layout`,classNames:[`vertical-layout`]},{name:`array.table.validation.error`,classNames:[`validation_error`]},{name:`array.table.validation`,classNames:[`validation`]},{name:`array.table`,classNames:[`array-table-layout`,`control`]},{name:`array.control.validation.error`,classNames:[`validation_error`]},{name:`array.control.validation`,classNames:[`validation`]},{name:`array.control.add`,classNames:[`button-add`]},{name:`array.child.controls`,classNames:[`child-controls`]},{name:`array.child.controls.up`,classNames:[`button-up`]},{name:`array.child.controls.down`,classNames:[`button-down`]},{name:`array.child.controls.delete`,classNames:[`button-delete`]},{name:`array.control`,classNames:[`array-control-layout`,`control`]},{name:`input.description`,classNames:[`input-description`]}]}),cf=()=>(0,H.useContext)(sf),lf=()=>{let{styles:e}=cf();return e},uf=e=>function(t){let n=Zu(),r=lf(),i=t.uischema,a=n.config,o=a&&a.trim,s=(0,H.useMemo)(()=>af(r)(`control`),[r]),c=(0,U.default)(i.scope)?[``]:s.concat([`${Ws(i.scope)}`]);o&&(c=c.concat(af(r)(`control.trim`)));let l=(0,U.default)(t.errors),u=(0,H.useMemo)(()=>of(r)(`control.label`),[r]),d=(0,H.useMemo)(()=>of(r)(`input.description`),[r]),f=(0,H.useMemo)(()=>of(r)(`control.validation`),[r]),p=(0,H.useMemo)(()=>of(r)(`control.validation.error`),[r]),m=[`validate`].concat(l?`valid`:`invalid`),h=(0,H.useMemo)(()=>of(r),[r]),g=(0,H.useMemo)(()=>af(r),[r]),_=c.join(` `),v=m.join(` `),y=(0,H.useMemo)(()=>({wrapper:_,input:v,label:u,description:d,validation:f,validationError:p}),[_,v,u,d,f,p]);return H.createElement(e,{...t,getStyleAsClassName:h,getStyle:g,classNames:y})},df=e=>t=>function(n){let r=[`validate`].concat(n.isValid?`valid`:`invalid`),i=lf(),a=of(i)(e);return a&&r.push(a),H.createElement(t,{...n,getStyleAsClassName:of(i),getStyle:af(i),className:r.join(` `)})},ff=e=>function(t){let n=su({jsonforms:{...Zu()}});return H.createElement(e,{...t,ajv:n})},pf=df(`control.input`),mf=df(`control.select`),hf=df(`control.checkbox`),gf=class extends Ku{render(){let{classNames:e,description:t,id:n,errors:r,label:i,uischema:a,schema:o,rootSchema:s,visible:c,enabled:l,required:u,path:d,cells:f,config:p}=this.props,m=r.length===0,h=[e.validation].concat(m?e.description:e.validationError).join(` `),g=(0,Lo.default)({},p,a.options),_=!Tu(c,t,this.state.isFocused,g.showUnfocusedDescription),v={rootSchema:s,config:p},y=(0,Ho.default)(f,e=>e.tester(a,o,v));return y===void 0||y.tester(a,o,v)===-1?(console.warn(`No applicable cell found.`,a,o),null):H.createElement(`div`,{className:e.wrapper,hidden:!c,onFocus:this.onFocus,onBlur:this.onBlur,id:n},H.createElement(`label`,{htmlFor:n+`-input`,className:e.label},bu(i,u,g.hideRequiredAsterisk)),H.createElement(zd,{uischema:a,schema:o,path:d,id:n+`-input`,enabled:l}),H.createElement(`div`,{className:h},m?_?t:null:r))}},_f=Dl(1,_l),vf=uf(Cd(gf)),yf=({classNames:e,id:t,label:n,options:r,required:i,description:a,errors:o,data:s,uischema:c,visible:l,config:u,enabled:d,path:f,handleChange:p})=>{let m=lf(),[h,g]=(0,H.useState)(!1),_=(0,H.useMemo)(()=>of(m)(`control.radio`),[m]),v=(0,H.useMemo)(()=>of(m)(`control.radio.option`),[m]),y=(0,H.useMemo)(()=>of(m)(`control.radio.input`),[m]),b=(0,H.useMemo)(()=>of(m)(`control.radio.label`),[m]),x=o.length===0,S=[e.validation].concat(x?e.description:e.validationError).join(` `),C=(0,Lo.default)({},u,c.options),w=!Tu(l,a,h,C.showUnfocusedDescription),T=!_||_===`radio`,E={};return T&&(E={display:`flex`,flexDirection:C.orientation===`vertical`?`column`:`row`}),H.createElement(`div`,{className:e.wrapper,hidden:!l,onFocus:()=>g(!0),onBlur:()=>g(!1)},H.createElement(`label`,{htmlFor:t,className:e.label},bu(n,i,C.hideRequiredAsterisk)),H.createElement(`div`,{className:_,style:E},r.map(e=>H.createElement(`div`,{key:e.label,className:v},H.createElement(`input`,{type:`radio`,value:e.value,id:e.value,name:t,checked:s===e.value,onChange:t=>p(f,e.value),disabled:!d,className:y}),H.createElement(`label`,{htmlFor:e.value,className:b},e.label)))),H.createElement(`div`,{className:S},x?w?a:null:o))},bf=e=>H.createElement(yf,{...e}),xf=Dl(3,G(Pl,Sl(`format`,`radio`))),Sf=uf(kd(bf)),Cf=e=>H.createElement(yf,{...e}),wf=Dl(3,G(Fl,Sl(`format`,`radio`))),Tf=uf(jd(Cf)),{convertToValidClassName:Ef}=rc,Df=({classNames:e,data:t,label:n,path:r,schema:i,errors:a,addItem:o,removeItems:s,moveUp:c,moveDown:l,uischema:u,uischemas:d,getStyleAsClassName:f,renderers:p,rootSchema:m,translations:h,enabled:g})=>{let _=u,v=(0,H.useMemo)(()=>Zl(d,i,u.scope,r,void 0,u,m),[d,i,u.scope,r,u,m]),y=a.length===0,b=[f(`array.control.validation`)].concat(y?``:f(`array.control.validation.error`)).join(` `),x=f(`array.control.add`),S=f(`array.control.label`),C=f(`array.child.controls`),w=f(`array.child.controls.up`),T=f(`array.child.controls.down`),E=f(`array.child.controls.delete`),D=[f(`array.control`),Ef(_.scope)].join(` `);return H.createElement(`div`,{className:D},H.createElement(`header`,null,H.createElement(`label`,{className:S},n),H.createElement(`button`,{type:`button`,className:x,disabled:!g,onClick:o(r,xu(i,m))},`Add to `,n)),H.createElement(`div`,{className:b},a),H.createElement(`div`,{className:e.children},t?(0,Do.default)(0,t.length).map(e=>{let t=is(r,`${e}`);return H.createElement(`div`,{key:e},H.createElement(Ld,{schema:i,uischema:v||u,path:t,key:t,renderers:p}),H.createElement(`div`,{className:C},H.createElement(`button`,{type:`button`,className:w,disabled:!g,"aria-label":h.upAriaLabel,onClick:()=>{c(r,e)()}},h.up),H.createElement(`button`,{type:`button`,className:T,disabled:!g,"aria-label":h.downAriaLabel,onClick:()=>{l(r,e)()}},h.down),H.createElement(`button`,{type:`button`,className:E,disabled:!g,"aria-label":h.removeAriaLabel,onClick:()=>{window.confirm(`Are you sure you wish to delete this item?`)&&s(r,[e])()}},h.removeTooltip)))}):H.createElement(`p`,null,h.noDataMessage)))},Of=uf(Td($(Nd(({schema:e,uischema:t,data:n,path:r,rootSchema:i,uischemas:a,addItem:o,getStyle:s,getStyleAsClassName:c,removeItems:l,moveUp:u,moveDown:d,id:f,visible:p,enabled:m,errors:h,translations:g,arraySchema:_})=>{let v=t,y=rc.createLabelDescriptionFrom(v,e),b=y.show?y.text:``,x={wrapper:`control ${rc.convertToValidClassName(v.scope)}`,fieldSet:c(`array.layout`),button:c(`array.button`),children:c(`array.children`)};return H.createElement(Df,{classNames:x,data:n,label:b,path:r,schema:e,arraySchema:_,errors:h,addItem:o,removeItems:l,moveUp:u,moveDown:d,uischema:t,uischemas:a,getStyleAsClassName:c,rootSchema:i,id:f,visible:p,enabled:m,getStyle:s,translations:g})})))),kf=Dl(4,Vl),Af=e=>e.type===`Categorization`,jf=Dl(1,G(W(`Categorization`),e=>{let t=e=>(0,U.default)(e.elements)?!1:e.elements.map(e=>Af(e)?t(e):e.type===`Category`).reduce((e,t)=>e&&t,!0);return t(e)})),Mf=(e,t)=>t===e?`selected`:``,Nf=({selectedCategory:e,elements:t,data:n,depth:r,onSelect:i,subcategoriesClassName:a,groupClassName:o,t:s,ajv:c,config:l})=>{let u=(0,H.useMemo)(()=>t.filter(e=>zs(e,n,void 0,c,l)),[t,n,c,l]),d=(0,H.useMemo)(()=>u.map(e=>ll(e,s)),[u,s]);return H.createElement(`ul`,{className:a},u.map((t,u)=>Af(t)?H.createElement(`li`,{key:d[u],className:o},H.createElement(`span`,null,d[u]),H.createElement(Nf,{selectedCategory:e,elements:t.elements,data:n,ajv:c,config:l,depth:r+1,onSelect:i,subcategoriesClassName:a,groupClassName:o,t:s})):H.createElement(`li`,{key:d[u],onClick:i(u),className:Mf(t,e)},H.createElement(`span`,null,d[u]))))},Pf=({category:e,schema:t,path:n})=>H.createElement(`div`,{id:`categorization.detail`},(e.elements||[]).map((e,r)=>H.createElement(Ld,{key:`${n}-${r}`,uischema:e,schema:t,path:n}))),Ff=ff(uf($(wd(({data:e,uischema:t,schema:n,path:r,selected:i,t:a,visible:o,getStyleAsClassName:s,onChange:c,ajv:l,config:u})=>{let d=t,f=d.elements,p=s(`categorization`),m=s(`categorization.master`),h=s(`categorization.detail`),g=s(`category.subcategories`),_=s(`category.group`),[v,y]=(0,H.useState)(t),[b,x]=(0,H.useState)(i??0),S=b>=d.elements.length?0:b;return d!==v&&(x(0),y(d)),H.createElement(`div`,{className:p,hidden:o==null?!1:!o},H.createElement(`div`,{className:m},H.createElement(Nf,{elements:f,selectedCategory:f[S],data:e,ajv:l,config:u,depth:0,onSelect:e=>()=>c?c(e,S):x(e),subcategoriesClassName:g,groupClassName:_,t:a})),H.createElement(`div`,{className:h},H.createElement(Pf,{category:f[S],schema:n,path:r,key:S})))})))),If=Dl(1,W(`Label`)),Lf=uf(Md(({text:e,visible:t,getStyleAsClassName:n})=>{let r=n(`label-control`),i=!t;return H.createElement(`label`,{hidden:i,className:r},e)})),{convertToValidClassName:Rf}=rc,{or:zf,isObjectArrayControl:Bf,isPrimitiveArrayControl:Vf,rankWith:Hf}=Yl,Uf=Hf(3,zf(Bf,Vf)),Wf=uf(Td($(Nd(class extends H.Component{constructor(){super(...arguments),this.confirmDelete=(e,t)=>{let n=e.substring(0,e.lastIndexOf(`.`));this.props.removeItems(n,[t])()}}render(){let{addItem:e,uischema:t,schema:n,rootSchema:r,path:i,data:a,visible:o,errors:s,label:c,getStyleAsClassName:l,childErrors:u,translations:d,enabled:f}=this.props,p=t,m=l(`array.table.table`),h=l(`array.table.label`),g=l(`array.table.button`),_=l(`array.table.validation`),v=[l(`array.table`),Rf(p.scope)].join(` `),y=e=>({type:`Control`,label:!1,scope:n.type===`object`?`#/properties/${e}`:`#`}),b=s.length===0,x=[_].concat(b?``:l(`array.table.validation.error`)).join(` `);return H.createElement(`div`,{className:v,hidden:!o},H.createElement(`header`,null,H.createElement(`label`,{className:h},c),H.createElement(`button`,{type:`button`,disabled:!f,className:g,onClick:e(i,xu(n,r))},d.addTooltip)),H.createElement(`div`,{className:x},b?``:s),H.createElement(`table`,{className:m},H.createElement(`thead`,null,H.createElement(`tr`,null,n.properties?(0,ef.default)(tf.default,(0,Qd.default)(e=>n.properties[e].type!==`array`),(0,$d.default)(e=>H.createElement(`th`,{key:e},n.properties[e].title??(0,nf.default)(e))))(n.properties):H.createElement(`th`,null,`Items`),H.createElement(`th`,null,`Valid`),H.createElement(`th`,null,`\xA0`))),H.createElement(`tbody`,null,!a||!Array.isArray(a)||a.length===0?H.createElement(`tr`,null,H.createElement(`td`,null,d.noDataMessage)):a.map((e,t)=>{let a=Js.compose(i,`${t}`),o=(0,Fo.default)(u,e=>Qs(e).startsWith(a)),s=l(`array.validation`),c=l(`array.validation.error`),p=o?[s].concat(c).join(` `):s;return H.createElement(`tr`,{key:a},n.properties?(0,ef.default)(tf.default,(0,Qd.default)(e=>n.properties[e].type!==`array`),(0,$d.default)(e=>{let t=Js.compose(a,e.toString());return H.createElement(`td`,{key:t},H.createElement(zd,{schema:qs.schema(n,`#/properties/${os(e)}`,r),uischema:y(os(e)),path:a+`.`+e}))}))(n.properties):H.createElement(`td`,{key:Js.compose(a,t.toString())},H.createElement(zd,{schema:n,uischema:y(),path:a})),H.createElement(`td`,null,o?H.createElement(`span`,{className:p},(0,Zd.default)(o.map(e=>e.message),` and `)):H.createElement(`span`,{className:p},`OK`)),H.createElement(`td`,null,H.createElement(`button`,{type:`button`,disabled:!f,"aria-label":d.removeAriaLabel,onClick:()=>{window.confirm(d.deleteDialogMessage)&&this.confirmDelete(a,t)}},d.removeTooltip)))}))))}})))),Gf=e=>{let{data:t,className:n,id:r,enabled:i,uischema:a,path:o,handleChange:s}=e;return H.createElement(`input`,{type:`checkbox`,checked:!!t,onChange:e=>s(o,e.target.checked),className:n,id:r,disabled:!i,autoFocus:a.options&&a.options.focus})},Kf=Dl(2,kl),qf=Ed(hf(Gf)),Jf=e=>{let{data:t,className:n,id:r,enabled:i,uischema:a,path:o,handleChange:s}=e;return H.createElement(`input`,{type:`date`,value:t||``,onChange:e=>s(o,e.target.value),className:n,id:r,disabled:!i,autoFocus:a.options&&a.options.focus})},Yf=Dl(2,q),Xf=Ed(pf(Jf)),Zf=e=>{let{data:t,className:n,id:r,enabled:i,uischema:a,path:o,handleChange:s}=e,c=e=>e===``?``:e+`:00.000Z`;return H.createElement(`input`,{type:`datetime-local`,value:(t||``).substr(0,16),onChange:e=>s(o,c(e.target.value)),className:n,id:r,disabled:!i,autoFocus:a.options&&a.options.focus})},Qf=Dl(2,Y),$f=Ed(pf(Zf)),ep=e=>{let{data:t,className:n,id:r,enabled:i,schema:a,uischema:o,path:s,handleChange:c,options:l,t:u}=e,d=(0,H.useMemo)(()=>u(`enum.none`,rf[`enum.none`],{schema:a,uischema:o,path:s}),[u,a,o,s]);return H.createElement(`select`,{className:n,id:r,disabled:!i,autoFocus:o.options&&o.options.focus,value:t||``,onChange:e=>c(s,e.target.selectedIndex===0?void 0:e.target.value)},[H.createElement(`option`,{value:``,key:`jsonforms.enum.none`},d)].concat(l.map(e=>H.createElement(`option`,{value:e.value,label:e.label,key:e.value}))))},tp=Dl(2,Pl),np=Od($(mf(ep))),rp=e=>e===``?void 0:parseInt(e,10),ip=e=>{let{data:t,className:n,id:r,enabled:i,uischema:a,path:o,handleChange:s}=e;return H.createElement(`input`,{type:`number`,step:`1`,value:t??``,onChange:e=>s(o,rp(e.target.value)),className:n,id:r,disabled:!i,autoFocus:a.options&&a.options.focus})},ap=Dl(2,Il),op=Ed(pf(ip)),sp=e=>e===``?void 0:Number(e),cp=e=>{let{data:t,className:n,id:r,enabled:i,uischema:a,path:o,handleChange:s}=e;return H.createElement(`input`,{type:`number`,step:`0.1`,value:t??``,onChange:e=>s(o,sp(e.target.value)),className:n,id:r,disabled:!i,autoFocus:a.options&&a.options.focus})},lp=Dl(2,Ll),up=Ed(pf(cp));Ed(pf(e=>{let{className:t,id:n,enabled:r,uischema:i,path:a,handleChange:o,schema:s}=e,c=s.maxLength,l=e.toFormatted(e.data);return H.createElement(`input`,{type:`text`,value:l,onChange:t=>{o(a,e.fromFormatted(t.currentTarget.value))},className:t,id:n,disabled:!r,autoFocus:i.options&&i.options.focus,maxLength:i.options&&i.options.restrict?c:void 0,size:i.options&&i.options.trim?c:void 0})}));var dp=e=>{let{data:t,className:n,id:r,enabled:i,schema:a,uischema:o,path:s,handleChange:c,options:l,t:u}=e,d=(0,H.useMemo)(()=>u(`enum.none`,rf[`enum.none`],{schema:a,uischema:o,path:s}),[u,a,o,s]),f=H.createElement(`option`,{value:``,key:`jsonforms.enum.none`},d);return H.createElement(`select`,{className:n,id:r,disabled:!i,autoFocus:o.options&&o.options.focus,value:t||``,onChange:e=>c(s,e.target.selectedIndex===0?void 0:e.target.value)},(o.options?.hideEmptyOption===!0?[]:[f]).concat(l.map(e=>H.createElement(`option`,{value:e.value,label:e.label,key:e.value}))))},fp=Dl(2,Fl),pp=Ad($(mf(dp))),mp=e=>{let{data:t,className:n,id:r,enabled:i,uischema:a,schema:o,path:s,handleChange:c}=e;return H.createElement(`div`,{style:{display:`flex`}},H.createElement(`input`,{type:`range`,max:o.maximum,min:o.minimum,value:t||o.default,onChange:e=>c(s,Number(e.target.value)),className:n,id:r,disabled:!i,autoFocus:a.options&&a.options.focus,style:{flex:`1`}}),H.createElement(`label`,{style:{marginLeft:`0.5em`}},t||o.default))},hp=Dl(4,Wl),gp=Ed(pf(mp)),_p=e=>{let{config:t,data:n,className:r,id:i,enabled:a,uischema:o,schema:s,path:c,handleChange:l}=e,u=s.maxLength,d=(0,Lo.default)({},t,o.options);return H.createElement(`input`,{type:d.format===`password`?`password`:`text`,value:n||``,onChange:e=>l(c,e.target.value===``?void 0:e.target.value),className:r,id:i,disabled:!a,autoFocus:d.focus,placeholder:d.placeholder,maxLength:d.restrict?u:void 0,size:d.trim?u:void 0})},vp=Dl(1,Rl),yp=Ed(pf(_p)),bp=e=>{let{data:t,className:n,id:r,enabled:i,config:a,uischema:o,path:s,handleChange:c}=e,l=(0,Lo.default)({},a,o.options);return H.createElement(`textarea`,{value:t||``,onChange:e=>c(s,e.target.value===``?void 0:e.target.value),className:n,id:r,disabled:!i,autoFocus:l.focus,placeholder:l.placeholder})},xp=Dl(2,K),Sp=Ed(pf(bp)),Cp=e=>{if(typeof e==`string`){let t=e.split(`:`);return t.length===2&&t.push(`00`),t.join(`:`)}return e},wp=e=>{let{data:t,className:n,id:r,enabled:i,uischema:a,path:o,handleChange:s}=e;return H.createElement(`input`,{type:`time`,value:t||``,onChange:e=>s(o,Cp(e.target.value)),className:n,id:r,disabled:!i,autoFocus:a.options&&a.options.focus})},Tp=Dl(2,J),Ep=Ed(pf(wp)),Dp=(e,t,n,r,i)=>{if((0,U.default)(e.elements))return[];let{renderers:a,cells:o}=Zu();return e.elements.map((e,s)=>H.createElement(`div`,{className:n,key:`${r}-${s}`},H.createElement(Ld,{renderers:a,cells:o,uischema:e,schema:t,path:r,enabled:i})))},Op=Dl(1,W(`Group`)),kp=e=>{let{data:t,...n}=e;return H.createElement(Ap,{...n})},Ap=H.memo(function({schema:e,uischema:t,path:n,enabled:r,visible:i,label:a,getStyle:o,getStyleAsClassName:s}){let c=t,l=c.elements?c.elements.length:0,u=s(`group.layout`),d=[`group-layout-item`].concat(o(`group.layout.item`,l)).join(` `);return H.createElement(`fieldset`,{className:u,hidden:i==null?!1:!i},(0,U.default)(a)?``:H.createElement(`legend`,{className:s(`group.label`)},a),Dp(c,e,d,n,r))}),jp=uf(wd(kp)),Mp=({className:e,children:t,visible:n})=>H.createElement(`div`,{className:e,hidden:n==null?!1:!n},t),Np=Dl(1,W(`HorizontalLayout`)),Pp=e=>{let{data:t,...n}=e;return H.createElement(Fp,{...n})},Fp=H.memo(function({schema:e,uischema:t,getStyle:n,getStyleAsClassName:r,enabled:i,visible:a,path:o}){let s=t,c=s.elements?s.elements.length:0,l=r(`horizontal.layout`),u=[`horizontal-layout-item`].concat(n(`horizontal.layout.item`,c)).join(` `);return H.createElement(Mp,{className:l,visible:a,enabled:i,path:o,uischema:t,schema:e,getStyle:n,getStyleAsClassName:r},Dp(s,e,u,o,i))}),Ip=uf(wd(Pp,!1)),Lp=Dl(1,W(`VerticalLayout`)),Rp=e=>{let{data:t,...n}=e;return H.createElement(zp,{...n})},zp=H.memo(function({schema:e,uischema:t,path:n,visible:r,enabled:i,getStyle:a,getStyleAsClassName:o}){let s=t,c=s.elements?s.elements.length:0,l=o(`vertical.layout`),u=[`vertical-layout-item`].concat(a(`vertical.layout.item`,c)).join(` `);return H.createElement(Mp,{className:l,uischema:t,schema:e,visible:r,enabled:i,path:n,getStyle:a,getStyleAsClassName:o},Dp(s,e,u,n,i))}),Bp=uf(wd(Rp,!1)),Vp=[{tester:_f,renderer:vf},{tester:xf,renderer:Sf},{tester:wf,renderer:Tf},{tester:kf,renderer:Of},{tester:If,renderer:Lf},{tester:jf,renderer:Ff},{tester:Uf,renderer:Wf},{tester:Op,renderer:jp},{tester:Lp,renderer:Bp},{tester:Np,renderer:Ip}],Hp=[{tester:Kf,cell:qf},{tester:Yf,cell:Xf},{tester:Qf,cell:$f},{tester:tp,cell:np},{tester:ap,cell:op},{tester:lp,cell:up},{tester:fp,cell:pp},{tester:hp,cell:gp},{tester:xp,cell:Sp},{tester:vp,cell:yp},{tester:Tp,cell:Ep}],Up=[`schema`,`input_schema`,`payload_schema`,`inputSchema`,`payloadSchema`,`parameters`,`args_schema`,`argsSchema`],Wp=[`ui_schema`,`uischema`,`uiSchema`],Gp=e=>{if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},Kp=e=>typeof e!=`object`||!e?e:JSON.parse(JSON.stringify(e)),qp=(e,t)=>{if(Gp(e)){for(let n of t)if(Object.prototype.hasOwnProperty.call(e,n)&&e[n]!=null)return e[n]}},Jp=e=>{if(!Gp(e))return e;let t=qp(e,Up);return t===void 0?e:t},Yp=e=>({schema:Jp(qp(e,Up)),uischema:qp(e,Wp)}),Xp=(e,t=`value`)=>{if(typeof e!=`string`)return{ok:!0,value:e};let n=e.trim();if(n===``)return{ok:!1,error:`${t} is empty`};try{return{ok:!0,value:JSON.parse(n)}}catch(e){return{ok:!1,error:`${t} must be valid JSON: ${e instanceof Error?e.message:`parse failed`}`}}},Zp=e=>Array.isArray(e)?e.map(e=>typeof e==`string`?{name:e.trim(),description:``}:Gp(e)?{name:typeof e.name==`string`?e.name.trim():``,description:typeof e.description==`string`?e.description.trim():``}:{name:``,description:``}).filter(e=>e.name!==``):[],Qp=e=>{let t=e.name.toLowerCase(),n=e.description||void 0;return[`images`,`repos`,`reviewers`].includes(t)?{type:`array`,items:{type:`string`},...n?{description:n}:{}}:{type:`string`,...n?{description:n}:{}}},$p=e=>{if(!Gp(e))return null;let t=Zp(e.required),n=Zp(e.optional);if(t.length===0&&n.length===0)return null;let r={};for(let e of[...t,...n])r[e.name]=Qp(e);return{type:`object`,properties:r,...t.length>0?{required:t.map(e=>e.name)}:{}}},em=e=>Gp(e)?!!(e.type||e.properties||e.anyOf||e.oneOf||e.allOf||e.$ref):!1,tm=e=>{let t=Xp(e,`schema`);if(!t.ok)return{ok:!1,schema:null,error:t.error};if(!Gp(t.value))return{ok:!1,schema:null,error:`schema must be a JSON object`};let n=$p(t.value),r=Xp(n||em(t.value)?t.value:Jp(t.value),`schema`);if(!r.ok)return{ok:!1,schema:null,error:r.error};if(!Gp(r.value))return{ok:!1,schema:null,error:`schema must be a JSON object`};let i=n||$p(r.value)||Kp(r.value);return!i.type&&Gp(i.properties)&&(i.type=`object`),!i.type&&!i.anyOf&&!i.oneOf&&!i.allOf&&!i.$ref?{ok:!1,schema:null,error:`schema must declare a type or JSON Schema composition`}:{ok:!0,schema:i,error:``}},nm=e=>{if(e==null||typeof e==`string`&&e.trim()===``)return{ok:!0,uischema:void 0,error:``};let t=Xp(e,`ui schema`);return t.ok?Gp(t.value)?{ok:!0,uischema:Kp(t.value),error:``}:{ok:!1,uischema:void 0,error:`ui schema must be a JSON object`}:{ok:!1,uischema:void 0,error:t.error}},rm=(e,t)=>{if(e==null||typeof e==`string`&&e.trim()===``)return{ok:!1,schema:null,uischema:void 0,error:`schema is empty`};let n=tm(e);if(!n.ok)return{ok:!1,schema:null,uischema:void 0,error:n.error};let r=nm(t);return r.ok?{ok:!0,schema:n.schema,uischema:r.uischema,error:``}:{ok:!1,schema:null,uischema:void 0,error:r.error}},im=e=>Gp(e)?Array.isArray(e.type)?e.type.filter(e=>typeof e==`string`):typeof e.type==`string`?[e.type]:[]:[],am=e=>{if(!Gp(e))return{};if(Object.prototype.hasOwnProperty.call(e,`default`))return Kp(e.default);let t=im(e);if(t.includes(`array`))return[];if(t.includes(`object`)||Gp(e.properties)){let t={},n=Gp(e.properties)?e.properties:{};for(let[e,r]of Object.entries(n)){if(!Gp(r))continue;if(Object.prototype.hasOwnProperty.call(r,`default`)){t[e]=Kp(r.default);continue}let n=om(r);n.hasDefault&&(t[e]=n.value)}return t}return{}},om=e=>{if(!Gp(e))return{hasDefault:!1,value:void 0};if(Object.prototype.hasOwnProperty.call(e,`default`))return{hasDefault:!0,value:Kp(e.default)};let t=im(e);if(t.includes(`object`)||Gp(e.properties)){let t=am(e);return Object.keys(t).length>0?{hasDefault:!0,value:t}:{hasDefault:!1,value:void 0}}if(t.includes(`array`)&&Gp(e.items)){let t=om(e.items);if(t.hasDefault)return{hasDefault:!0,value:[t.value]}}return{hasDefault:!1,value:void 0}},sm=e=>JSON.stringify(e??{},null,2),cm=e=>{let t=String(e||``).trim();if(t===``)return{ok:!0,data:{},error:``};try{return{ok:!0,data:JSON.parse(t),error:``}}catch(e){return{ok:!1,data:null,error:e instanceof Error?e.message:`payload must be valid JSON`}}},lm=({toMode:e,textValue:t,currentData:n,schema:r})=>{if(e===`json`)return{ok:!0,mode:`json`,data:n==null?am(r):Kp(n),textValue:sm(n??am(r)),error:``};if(e===`form`){let e=cm(t);return e.ok?{ok:!0,mode:`form`,data:e.data==null?am(r):e.data,textValue:sm(e.data==null?am(r):e.data),error:``}:{ok:!1,mode:`json`,data:n==null?am(r):Kp(n),textValue:t,error:e.error}}return{ok:!1,mode:`json`,data:n==null?am(r):Kp(n),textValue:t,error:`payload mode must be form or json`}},um=s((e=>{var t=Symbol.for(`react.transitional.element`);function n(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.jsx=n})),dm=s(((e,t)=>{t.exports=um()}))(),fm=new WeakMap;function pm({schema:e,uischema:t,data:n,onChange:r}){return(0,dm.jsx)(Rd,{schema:e,uischema:t,data:n,renderers:Vp,cells:Hp,onChange:({data:e,errors:t})=>{r({data:e??{},errors:Array.isArray(t)?t:[]})}})}window.MoltenHubSkillPayloadForm={createDefaultPayload:am,extractSkillSchemaPayload:Yp,normalizeSkillSchema:rm,prettyJSONStringify:sm,render:(e,t)=>{if(!(e instanceof HTMLElement))return{ok:!1,error:`form mount element is missing`};let n=rm(t&&t.schema,t&&t.uischema);if(!n.ok)return n;let r=t&&Object.prototype.hasOwnProperty.call(t,`data`)&&t.data!=null?Kp(t.data):am(n.schema),i=fm.get(e);return i||(i=(0,wo.createRoot)(e),fm.set(e,i)),i.render((0,dm.jsx)(pm,{schema:n.schema,uischema:n.uischema,data:r,onChange:t&&typeof t.onChange==`function`?t.onChange:()=>{}})),{ok:!0,schema:n.schema,uischema:n.uischema,data:r,error:``}},transitionPayloadMode:lm,unmount:e=>{let t=fm.get(e);t&&(t.unmount(),fm.delete(e))}}})(); \ No newline at end of file diff --git a/internal/web/static/styles.css b/internal/web/static/styles.css index d89adc3..e759574 100644 --- a/internal/web/static/styles.css +++ b/internal/web/static/styles.css @@ -3714,7 +3714,81 @@ p, .manual-dispatch-payload-label-row { display: flex; align-items: center; + justify-content: space-between; gap: 8px; + flex-wrap: wrap; +} + +.manual-dispatch-payload-mode-toggle { + display: inline-flex; + align-items: center; + gap: 2px; + margin: 0; + padding: 2px; + border: 1px solid var(--surface-tab-border); + border-radius: var(--radius-control); + background: var(--surface-tab-bg); + box-shadow: var(--surface-button-shadow); +} + +.manual-dispatch-payload-mode-toggle[hidden] { + display: none; +} + +.manual-dispatch-payload-mode-option { + position: relative; + display: inline-flex; + align-items: center; + min-height: 28px; + cursor: pointer; +} + +.manual-dispatch-payload-mode-option input { + position: absolute; + inset: 0; + opacity: 0; + cursor: pointer; +} + +.manual-dispatch-payload-mode-option span { + display: inline-flex; + align-items: center; + justify-content: center; + min-width: 58px; + min-height: 28px; + padding: 0 10px; + border-radius: var(--radius-sm); + color: var(--surface-tab-text); + font-size: 0.78rem; + font-weight: 700; + line-height: 1; +} + +.manual-dispatch-payload-mode-option input:checked + span { + color: var(--surface-tab-active-text); + background: var(--surface-tab-active-bg); + box-shadow: var(--surface-tab-active-shadow); +} + +.manual-dispatch-payload-mode-option input:focus-visible + span { + box-shadow: var(--theme-button-focus); +} + +.manual-dispatch-payload-form-panel { + padding: 12px; + border: 1px solid var(--border); + border-radius: var(--radius); + background: var(--surface-control-bg); +} + +.manual-dispatch-payload-form-panel[hidden], +.manual-dispatch-payload-json-panel[hidden] { + display: none; +} + +.skill-payload-form-root { + min-height: 44px; + outline: none; } .manual-dispatch-payload-hint { diff --git a/internal/web/templates/index.html b/internal/web/templates/index.html index 0f6cc89..f079246 100644 --- a/internal/web/templates/index.html +++ b/internal/web/templates/index.html @@ -5,6 +5,7 @@ Molten Hub Dispatch + {{if .GoogleAnalyticsMeasurementID}} + @@ -532,6 +550,12 @@

{{if .State.Session.AgentToken}}Agent Profile{{e const skillNameSelect = document.getElementById("skill-name-select"); const skillNameHint = document.getElementById("skill-name-hint"); const skillPayloadField = document.getElementById("skill-payload-field"); + const skillPayloadModeField = document.getElementById("skill-payload-mode-field"); + const skillPayloadModeForm = document.getElementById("skill-payload-mode-form"); + const skillPayloadModeJSON = document.getElementById("skill-payload-mode-json"); + const skillPayloadFormPanel = document.getElementById("skill-payload-form-panel"); + const skillPayloadFormRoot = document.getElementById("skill-payload-form-root"); + const skillPayloadJSONPanel = document.getElementById("skill-payload-json-panel"); const skillPayloadInput = document.getElementById("skill-payload-input"); const skillPayloadHint = document.getElementById("skill-payload-hint"); const skillPayloadValidation = document.getElementById("skill-payload-validation"); @@ -556,23 +580,18 @@

{{if .State.Session.AgentToken}}Agent Profile{{e const defaultSkillPayloadPlaceholder = skillPayloadInput instanceof HTMLTextAreaElement ? trimmedString(skillPayloadInput.getAttribute("data-default-placeholder")) || "Describe the task or paste a JSON payload." : "Describe the task or paste a JSON payload."; - const setSkillPayloadSchemaText = (schemaText) => { - if (!(skillPayloadInput instanceof HTMLTextAreaElement)) { - return; - } - const previousSchemaText = trimmedString(skillPayloadInput.dataset.schemaText); - const nextSchemaText = trimmedString(schemaText); - skillPayloadInput.readOnly = nextSchemaText !== ""; - skillPayloadInput.dataset.schemaText = nextSchemaText; - if (nextSchemaText !== "") { - skillPayloadInput.value = nextSchemaText; - } else if (previousSchemaText !== "" && trimmedString(skillPayloadInput.value) === previousSchemaText) { - skillPayloadInput.value = ""; - } - }; const defaultSkillPayloadHint = skillPayloadHint instanceof HTMLElement ? trimmedString(skillPayloadHint.textContent) || "Markdown and JSON are both supported." : "Markdown and JSON are both supported."; + let skillPayloadFormState = { + key: "", + hasForm: false, + mode: "json", + schema: null, + uischema: undefined, + data: null, + errors: [], + }; const dispatchTaskClear = document.getElementById("dispatch-task-clear"); const dispatchDelayToggle = document.getElementById("dispatch-delay-toggle"); const dispatchDelayToggleRegion = document.querySelector("[data-dispatch-delay-toggle-region]"); @@ -2232,7 +2251,10 @@

{{if .State.Session.AgentToken}}Agent Profile{{e return []; } try { - const parsed = JSON.parse(node.textContent || "[]"); + let parsed = JSON.parse(node.textContent || "[]"); + if (typeof parsed === "string") { + parsed = JSON.parse(parsed); + } return Array.isArray(parsed) ? parsed : []; } catch (_error) { return []; @@ -2685,43 +2707,57 @@

{{if .State.Session.AgentToken}}Agent Profile{{e return connectedAgentRefs(agent).some((ref) => ref.toLowerCase() === normalizedTargetRef); }; + const skillSchemaAliases = ["schema", "input_schema", "payload_schema", "inputSchema", "payloadSchema", "parameters", "args_schema", "argsSchema"]; + const skillUISchemaAliases = ["ui_schema", "uischema", "uiSchema"]; + + const firstSkillAliasValue = (skill, aliases) => { + if (!skill || typeof skill !== "object") { + return undefined; + } + for (const key of aliases) { + if (Object.prototype.hasOwnProperty.call(skill, key) && skill[key] != null) { + return skill[key]; + } + } + return undefined; + }; + + const formatSkillPayloadText = (value) => { + if (value == null) { + return ""; + } + if (typeof value === "string") { + return trimmedString(value); + } + if (typeof value === "object") { + try { + return JSON.stringify(value, null, 2); + } catch (_error) { + return ""; + } + } + return trimmedString(value); + }; + const connectedAgentSkillEntries = (agent) => { const ordered = []; const seen = new Map(); - const formatSkillSchemaPlaceholder = (schema) => { - if (schema == null) { - return ""; - } - if (typeof schema === "string") { - return trimmedString(schema); - } - if (typeof schema === "object") { - try { - return JSON.stringify(schema, null, 2); - } catch (_error) { - return ""; - } - } - return trimmedString(schema); - }; const extractSkillSchema = (skill) => { - if (!skill || typeof skill !== "object") { - return ""; - } - for (const key of ["schema", "input_schema", "payload_schema", "inputSchema", "payloadSchema", "parameters", "args_schema", "argsSchema"]) { - const schemaText = formatSkillSchemaPlaceholder(skill[key]); - if (schemaText !== "") { - return schemaText; - } - } - return ""; + const schema = firstSkillAliasValue(skill, skillSchemaAliases); + const nestedSchema = firstSkillAliasValue(schema, skillSchemaAliases); + return nestedSchema === undefined ? schema : nestedSchema; + }; + const extractSkillUISchema = (skill) => { + return firstSkillAliasValue(skill, skillUISchemaAliases); }; - const pushSkill = (name, description = "", isDefault = false, schemaText = "") => { + const pushSkill = (name, description = "", isDefault = false, schema = undefined, uischema = undefined) => { const skillName = trimmedString(name); if (!skillName) { return; } const key = skillName.toLowerCase(); + const schemaText = formatSkillPayloadText(schema); + const uiSchemaText = formatSkillPayloadText(uischema); const existingIndex = seen.get(key); if (existingIndex !== undefined) { const existing = ordered[existingIndex]; @@ -2729,8 +2765,13 @@

{{if .State.Session.AgentToken}}Agent Profile{{e existing.description = trimmedString(description); } if (existing && existing.schemaText === "" && trimmedString(schemaText) !== "") { + existing.schema = schema; existing.schemaText = trimmedString(schemaText); } + if (existing && existing.uiSchemaText === "" && trimmedString(uiSchemaText) !== "") { + existing.uischema = uischema; + existing.uiSchemaText = trimmedString(uiSchemaText); + } if (existing && isDefault) { existing.isDefault = true; } @@ -2740,7 +2781,10 @@

{{if .State.Session.AgentToken}}Agent Profile{{e ordered.push({ name: skillName, description: trimmedString(description), + schema, schemaText: trimmedString(schemaText), + uischema, + uiSchemaText: trimmedString(uiSchemaText), isDefault, }); }; @@ -2756,7 +2800,7 @@

{{if .State.Session.AgentToken}}Agent Profile{{e } advertisedSkills.forEach((skill) => { if (skill && typeof skill === "object") { - pushSkill(skill.name, skill.description, false, extractSkillSchema(skill)); + pushSkill(skill.name, skill.description, false, extractSkillSchema(skill), extractSkillUISchema(skill)); return; } pushSkill(skill); @@ -2922,6 +2966,164 @@

{{if .State.Session.AgentToken}}Agent Profile{{e return connectedAgentSkillEntries(dispatchState.selectedAgent).find((skill) => skill.name === dispatchState.skillName) || null; }; + const skillPayloadFormAPI = () => { + const api = window.MoltenHubSkillPayloadForm; + if (!api || typeof api !== "object") { + return null; + } + if ( + typeof api.normalizeSkillSchema !== "function" + || typeof api.createDefaultPayload !== "function" + || typeof api.prettyJSONStringify !== "function" + || typeof api.render !== "function" + || typeof api.transitionPayloadMode !== "function" + ) { + return null; + } + return api; + }; + + const skillPayloadSelectionKey = (skillEntry) => { + const dispatchState = resolveSelectedDispatchState(); + if (!skillEntry) { + return ""; + } + return [ + dispatchState.targetRef, + dispatchState.skillName, + skillEntry.schemaText || "", + skillEntry.uiSchemaText || "", + ].join("\n"); + }; + + const resetSkillPayloadFormState = () => { + const api = skillPayloadFormAPI(); + if (api && typeof api.unmount === "function" && skillPayloadFormRoot instanceof HTMLElement) { + api.unmount(skillPayloadFormRoot); + } + skillPayloadFormState = { + key: "", + hasForm: false, + mode: "json", + schema: null, + uischema: undefined, + data: null, + errors: [], + }; + }; + + const setSkillPayloadTextFromData = (data) => { + if (!(skillPayloadInput instanceof HTMLTextAreaElement)) { + return; + } + const api = skillPayloadFormAPI(); + skillPayloadInput.value = api && typeof api.prettyJSONStringify === "function" + ? api.prettyJSONStringify(data == null ? {} : data) + : JSON.stringify(data == null ? {} : data, null, 2); + }; + + const syncSkillPayloadModePanels = () => { + const formMode = skillPayloadFormState.hasForm && skillPayloadFormState.mode === "form"; + if (skillPayloadModeField instanceof HTMLElement) { + skillPayloadModeField.hidden = !skillPayloadFormState.hasForm; + } + if (skillPayloadModeForm instanceof HTMLInputElement) { + skillPayloadModeForm.checked = formMode; + skillPayloadModeForm.disabled = !skillPayloadFormState.hasForm; + } + if (skillPayloadModeJSON instanceof HTMLInputElement) { + skillPayloadModeJSON.checked = skillPayloadFormState.hasForm && !formMode; + skillPayloadModeJSON.disabled = !skillPayloadFormState.hasForm; + } + if (skillPayloadFormPanel instanceof HTMLElement) { + skillPayloadFormPanel.hidden = !formMode; + } + if (skillPayloadJSONPanel instanceof HTMLElement) { + skillPayloadJSONPanel.hidden = formMode; + } + if (skillPayloadInput instanceof HTMLTextAreaElement) { + skillPayloadInput.readOnly = false; + skillPayloadInput.dataset.schemaText = skillPayloadFormState.hasForm ? formatSkillPayloadText(skillPayloadFormState.schema) : ""; + } + }; + + const updateSkillPayloadFormData = (data, errors = []) => { + skillPayloadFormState = { + ...skillPayloadFormState, + data: data == null ? {} : data, + errors: Array.isArray(errors) ? errors : [], + }; + setSkillPayloadTextFromData(skillPayloadFormState.data); + if (skillPayloadFormatInput instanceof HTMLInputElement) { + skillPayloadFormatInput.value = "json"; + } + validateSkillPayload(); + }; + + const renderSkillPayloadForm = (data) => { + const api = skillPayloadFormAPI(); + if (!api || !(skillPayloadFormRoot instanceof HTMLElement) || !skillPayloadFormState.hasForm) { + return false; + } + const result = api.render(skillPayloadFormRoot, { + schema: skillPayloadFormState.schema, + uischema: skillPayloadFormState.uischema, + data: data == null ? skillPayloadFormState.data : data, + onChange: ({ data: nextData, errors }) => { + updateSkillPayloadFormData(nextData, errors); + }, + }); + if (!result || result.ok !== true) { + return false; + } + return true; + }; + + const setSkillPayloadMode = (mode) => { + if (!skillPayloadFormState.hasForm) { + return false; + } + const api = skillPayloadFormAPI(); + if (!api || !(skillPayloadInput instanceof HTMLTextAreaElement)) { + return false; + } + const transition = api.transitionPayloadMode({ + toMode: mode, + textValue: skillPayloadInput.value, + currentData: skillPayloadFormState.data, + schema: skillPayloadFormState.schema, + }); + if (!transition || transition.ok !== true) { + skillPayloadFormState = { + ...skillPayloadFormState, + mode: "json", + errors: [], + }; + syncSkillPayloadModePanels(); + setSkillPayloadValidationMessage(`JSON is invalid (${transition && transition.error ? transition.error : "unable to parse payload"}).`, true); + if (skillPayloadInput instanceof HTMLTextAreaElement) { + skillPayloadInput.focus({ preventScroll: true }); + } + return false; + } + skillPayloadFormState = { + ...skillPayloadFormState, + mode: transition.mode, + data: transition.data, + errors: [], + }; + skillPayloadInput.value = transition.textValue; + if (skillPayloadFormatInput instanceof HTMLInputElement) { + skillPayloadFormatInput.value = "json"; + } + if (transition.mode === "form") { + renderSkillPayloadForm(transition.data); + } + syncSkillPayloadModePanels(); + validateSkillPayload(); + return true; + }; + const escapeJSONStringControlWhitespace = (value) => { let output = ""; let inString = false; @@ -3023,10 +3225,18 @@

{{if .State.Session.AgentToken}}Agent Profile{{e setSkillPayloadValidationMessage(""); return true; } - if (skillPayloadInput.readOnly && trimmedString(skillPayloadInput.dataset.schemaText) !== "") { - skillPayloadFormatInput.value = ""; + if (skillPayloadFormState.hasForm && skillPayloadFormState.mode === "form") { + skillPayloadFormatInput.value = "json"; + if (skillPayloadFormState.errors.length > 0) { + const message = skillPayloadFormState.errors.length === 1 + ? "Resolve the highlighted payload field before dispatching." + : `Resolve ${skillPayloadFormState.errors.length} highlighted payload fields before dispatching.`; + skillPayloadInput.setCustomValidity(message); + setSkillPayloadValidationMessage(message, true); + return false; + } skillPayloadInput.setCustomValidity(""); - setSkillPayloadValidationMessage(""); + setSkillPayloadValidationMessage("Generated JSON payload."); return true; } @@ -3061,17 +3271,58 @@

{{if .State.Session.AgentToken}}Agent Profile{{e if (!selectedSkill) { skillPayloadInput.value = ""; skillPayloadInput.setCustomValidity(""); - setSkillPayloadSchemaText(""); + resetSkillPayloadFormState(); skillPayloadInput.placeholder = defaultSkillPayloadPlaceholder; } else { - setSkillPayloadSchemaText(skillEntry && skillEntry.schemaText ? skillEntry.schemaText : ""); skillPayloadInput.placeholder = defaultSkillPayloadPlaceholder; } } + if (selectedSkill && skillEntry) { + const api = skillPayloadFormAPI(); + const key = skillPayloadSelectionKey(skillEntry); + const normalized = api && skillEntry.schemaText !== "" + ? api.normalizeSkillSchema(skillEntry.schema, skillEntry.uischema) + : null; + if (normalized && normalized.ok === true) { + const keyChanged = key !== skillPayloadFormState.key; + const nextData = keyChanged || !skillPayloadFormState.hasForm + ? api.createDefaultPayload(normalized.schema) + : (skillPayloadFormState.data == null ? api.createDefaultPayload(normalized.schema) : skillPayloadFormState.data); + skillPayloadFormState = { + key, + hasForm: true, + mode: keyChanged ? "form" : skillPayloadFormState.mode, + schema: normalized.schema, + uischema: normalized.uischema, + data: nextData, + errors: keyChanged ? [] : skillPayloadFormState.errors, + }; + setSkillPayloadTextFromData(nextData); + if (skillPayloadFormatInput instanceof HTMLInputElement) { + skillPayloadFormatInput.value = "json"; + } + renderSkillPayloadForm(nextData); + } else { + const hadGeneratedPayload = skillPayloadFormState.hasForm; + resetSkillPayloadFormState(); + if (hadGeneratedPayload && skillPayloadInput instanceof HTMLTextAreaElement) { + skillPayloadInput.value = ""; + } + } + } else if (!selectedSkill) { + resetSkillPayloadFormState(); + } + syncSkillPayloadModePanels(); if (skillPayloadHint instanceof HTMLElement) { - skillPayloadHint.textContent = skillEntry && skillEntry.schemaText - ? "Required payload schema shown in readonly payload text box. Markdown and JSON are both supported." - : defaultSkillPayloadHint; + let hint = defaultSkillPayloadHint; + if (skillPayloadFormState.hasForm && skillPayloadFormState.mode === "form") { + hint = "Generated from the selected skill schema. Switch to JSON for raw payload editing."; + } else if (skillPayloadFormState.hasForm) { + hint = "Edit raw JSON for the selected skill schema."; + } else if (skillEntry && skillEntry.schemaText) { + hint = "Schema form unavailable. Use raw JSON for this payload."; + } + skillPayloadHint.textContent = hint; } if (skillPayloadFormatInput instanceof HTMLInputElement && !selectedSkill) { skillPayloadFormatInput.value = ""; @@ -3283,7 +3534,7 @@

{{if .State.Session.AgentToken}}Agent Profile{{e : ""; } if (skillPayloadInput instanceof HTMLTextAreaElement) { - setSkillPayloadSchemaText(""); + resetSkillPayloadFormState(); skillPayloadInput.value = ""; skillPayloadInput.setCustomValidity(""); } @@ -3313,10 +3564,7 @@

{{if .State.Session.AgentToken}}Agent Profile{{e }; const dispatchAnalyticsParams = (dispatchState = resolveSelectedDispatchState()) => { - const schemaLocked = skillPayloadInput instanceof HTMLTextAreaElement - && skillPayloadInput.readOnly - && trimmedString(skillPayloadInput.dataset.schemaText) !== ""; - const payload = skillPayloadInput instanceof HTMLTextAreaElement && !schemaLocked + const payload = skillPayloadInput instanceof HTMLTextAreaElement ? trimmedString(skillPayloadInput.value) : ""; const payloadFormat = skillPayloadFormatInput instanceof HTMLInputElement @@ -3359,7 +3607,7 @@

{{if .State.Session.AgentToken}}Agent Profile{{e return false; } if (clearForm && skillPayloadInput instanceof HTMLTextAreaElement) { - setSkillPayloadSchemaText(""); + resetSkillPayloadFormState(); skillPayloadInput.value = ""; } if (clearForm && skillPayloadFormatInput instanceof HTMLInputElement) { @@ -3368,6 +3616,7 @@

{{if .State.Session.AgentToken}}Agent Profile{{e if (clearForm) { setSkillPayloadValidationMessage(""); setDispatchDelayFieldVisible(false, { clear: true }); + syncSkillPayloadField(); } const taskID = trimmedString(body && body.task_id); const isScheduled = Boolean(body && body.scheduled); @@ -4477,6 +4726,23 @@

{{if .State.Session.AgentToken}}Agent Profile{{e validateSkillPayload(); }); } + [skillPayloadModeForm, skillPayloadModeJSON].forEach((node) => { + if (!(node instanceof HTMLInputElement)) { + return; + } + node.addEventListener("change", () => { + if (!node.checked) { + return; + } + const changed = setSkillPayloadMode(node.value); + trackAppEvent("dispatch_payload_mode_select", { + app_area: "dispatch", + mode: node.value, + changed, + has_schema: skillPayloadFormState.hasForm, + }); + }); + }); if (dispatchDelayEnabled instanceof HTMLInputElement) { dispatchDelayEnabled.addEventListener("change", () => { syncScheduleModeState(); @@ -4587,7 +4853,9 @@

{{if .State.Session.AgentToken}}Agent Profile{{e ...dispatchAnalyticsParams(dispatchState), result: "invalid_payload", }); - if (skillPayloadInput instanceof HTMLTextAreaElement) { + if (skillPayloadFormState.hasForm && skillPayloadFormState.mode === "form" && skillPayloadFormRoot instanceof HTMLElement) { + skillPayloadFormRoot.focus({ preventScroll: true }); + } else if (skillPayloadInput instanceof HTMLTextAreaElement) { skillPayloadInput.reportValidity(); skillPayloadInput.focus({ preventScroll: true }); } @@ -4650,10 +4918,6 @@

{{if .State.Session.AgentToken}}Agent Profile{{e } else { formData.delete("skill_name"); } - if (skillPayloadInput instanceof HTMLTextAreaElement && skillPayloadInput.readOnly && trimmedString(skillPayloadInput.dataset.schemaText) !== "") { - formData.delete("payload"); - formData.delete("payload_format"); - } dispatchRequestInFlight = true; setDispatchSubmitBusy(true); setDispatchSubmitStatus("Sending..."); diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..710ca1e --- /dev/null +++ b/package-lock.json @@ -0,0 +1,1084 @@ +{ + "name": "moltenhub-dispatch", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "moltenhub-dispatch", + "version": "0.0.0", + "dependencies": { + "@jsonforms/core": "3.7.0", + "@jsonforms/react": "3.7.0", + "@jsonforms/vanilla-renderers": "3.7.0", + "react": "19.2.6", + "react-dom": "19.2.6" + }, + "devDependencies": { + "@vitejs/plugin-react": "6.0.2", + "vite": "8.0.14" + } + }, + "node_modules/@emnapi/core": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.10.0.tgz", + "integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.2.1", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.10.0.tgz", + "integrity": "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", + "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@jsonforms/core": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@jsonforms/core/-/core-3.7.0.tgz", + "integrity": "sha512-CE9viWtwi9QWLqlWLeOul1/R1GRAyOA9y6OoUpsCc0FhyR+g5p29F3k0fUExHWxL0Sf4KHcXYkfhtqfRBPS8ww==", + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.3", + "ajv": "^8.6.1", + "ajv-formats": "^2.1.0", + "lodash": "^4.17.21" + } + }, + "node_modules/@jsonforms/react": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@jsonforms/react/-/react-3.7.0.tgz", + "integrity": "sha512-HkY7qAx8vW97wPEgZ7GxCB3iiXG1c95GuObxtcDHGPBJWMwnxWBnVYJmv5h7nthrInKsQKHZL5OusnC/sj/1GQ==", + "license": "MIT", + "dependencies": { + "lodash": "^4.17.21" + }, + "peerDependencies": { + "@jsonforms/core": "3.7.0", + "react": "^16.12.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@jsonforms/vanilla-renderers": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@jsonforms/vanilla-renderers/-/vanilla-renderers-3.7.0.tgz", + "integrity": "sha512-RdXQGsheARUJVbaTe6SqGw9W4/yrm0BgUok6OKUj8krp1NF4fqXc5UbYGHFksMR/p7LCuoYHCtQzKLXEfxJbDw==", + "license": "MIT", + "dependencies": { + "lodash": "^4.17.21" + }, + "peerDependencies": { + "@jsonforms/core": "3.7.0", + "@jsonforms/react": "3.7.0", + "react": "^16.12.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz", + "integrity": "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@tybys/wasm-util": "^0.10.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "peerDependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1" + } + }, + "node_modules/@oxc-project/types": { + "version": "0.132.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.132.0.tgz", + "integrity": "sha512-FESMOxil5Se014ui/Eq8fT5uHJo6nIRwH0PfJrZJXs6Gek3ZVFOrpUv3YIZT20m+extU98Hg1Ym72U58rlsxUQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + } + }, + "node_modules/@rolldown/binding-android-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.2.tgz", + "integrity": "sha512-ZS4D1JPGn/MYQN/SYDWftIE/nVsM8j/AFOYEzAoOE2O3NktQOZru+/vYXGbR/qtdLdIfGCP0lcoJiYVzsEz+iQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.2.tgz", + "integrity": "sha512-vdFA9+C/rekyGce7WqHs/xoT0ioZEWaOFyZLIV1mEeNFaFDUQrPIo8Vs2GvJ6eetb3rzDUtUBgzto3ExpXJB3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-x64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.2.tgz", + "integrity": "sha512-BewSOwTHazv77DTYiAZXSqqKZ4KP/KonFisDMVU7PImxoWfB2aepnPhd2E4SWz3zDzYgDNbs6jBmTdgNnF02GA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-freebsd-x64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.2.tgz", + "integrity": "sha512-m41o7M0YWtUdqk61Tb+jnKb2rN++iRdIASlExkUoKfIAH30DOHCB8fVLzSUpbWHHU8esmEioY62PxzexE8MBuA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm-gnueabihf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.2.tgz", + "integrity": "sha512-jcojB9H7W/jS29pMKWAK1N+fU99vXodHDTatS3b3y/XSOCiHo0kkA74pL3jJmkoQtYpOCxDvaKs1fo2Ij/1X5w==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-gnu": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.2.tgz", + "integrity": "sha512-1jn6qDU5iiOgFgygDzKUuKP0maTi0/f1+sBLgvij/76C77Nm3ts6ufz9Bjg5q5dduxiUIxtq86JIoBvo1xQ4Ig==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-musl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.2.tgz", + "integrity": "sha512-QVLO/czFMdoMFSqlX3bcswcJNm/23r+qoa/jgtmFc/qEp6/jXmIkDjF/XIo8dPfGaiwy1xfQn8o77L79GeXFgw==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-ppc64-gnu": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.2.tgz", + "integrity": "sha512-hgO5Abm0w5UL6FEa2iFnZqo2KlK7TQ5QhV5x09hujBf7t5KzHQ1VmfPuTpqRy/rNlSxua3eWH374xxiVrP+lcA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-s390x-gnu": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.2.tgz", + "integrity": "sha512-fy8rXxuYEu602abC8MUNaPjYLIFzReOaEIEMKMUa0rFEUxNpVXhs15KSSQ4qlqSaM7B6rcj9rDZgADh/IGDzLQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-gnu": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.2.tgz", + "integrity": "sha512-0+bOkiQ779+r1WpoHOWHqncvyySci0vKph+myNDYb+im6meJAzHQXay6oEgnkHuUGouM1LKTZwqKpBow6Kj7CQ==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-musl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.2.tgz", + "integrity": "sha512-mjSkrzZK5Qsl0a9d1JgILOiuZOSDTVdKENcSXBoqbzSrspLR/4/IRVDo5wd2GgZjNss/viBFJdeq+j7qH2nypw==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-openharmony-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.2.tgz", + "integrity": "sha512-1v5vHasdfQAZoEHakBV72LIFAC9JjnymsiKxp+GEr/ma3+NJCPSaYK+qavInOovJkgwFrs7GccX2d6IgDA3Z5w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-wasm32-wasi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.2.tgz", + "integrity": "sha512-mb1VobWn6NheziTk5/WEaR6AKVbrwT5sOi6C7zk3gy/pD1qtJfU1j4PgTo2NJnOtbL9Dl3Aeei8w9jJ7qC2jZQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "1.10.0", + "@emnapi/runtime": "1.10.0", + "@napi-rs/wasm-runtime": "^1.1.4" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-arm64-msvc": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.2.tgz", + "integrity": "sha512-SqKonF56vA/L2yHwHYcEp2P34URpOZ7d1fS635cTkpDnUtEGdUbhI6NzsPdqeSWvAAeGDrxjWjNmibDIdFf9/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-x64-msvc": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.2.tgz", + "integrity": "sha512-v7qRI7gXLRINcOGXt+7YmAZ6iFuyZVMIoXAxhd8oP+DR9dLfL9GfNIx7PLMxmhZdvq8waUJBQiWN9EKNy+TRBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz", + "integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz", + "integrity": "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "license": "MIT" + }, + "node_modules/@vitejs/plugin-react": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-6.0.2.tgz", + "integrity": "sha512-DlSMqo4WhThw4vB8Mpn0Woe9J+Jfq1geJ61AKW0QEgLzGMNwtIMdxbDUzLxcun8W7NbJO0e2Jg/Nxm3cCSVzzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rolldown/pluginutils": "^1.0.0" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "@rolldown/plugin-babel": "^0.1.7 || ^0.2.0", + "babel-plugin-react-compiler": "^1.0.0", + "vite": "^8.0.0" + }, + "peerDependenciesMeta": { + "@rolldown/plugin-babel": { + "optional": true + }, + "babel-plugin-react-compiler": { + "optional": true + } + } + }, + "node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "license": "MIT", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "license": "MIT" + }, + "node_modules/fast-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.2.tgz", + "integrity": "sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" + }, + "node_modules/lightningcss": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", + "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.32.0", + "lightningcss-darwin-arm64": "1.32.0", + "lightningcss-darwin-x64": "1.32.0", + "lightningcss-freebsd-x64": "1.32.0", + "lightningcss-linux-arm-gnueabihf": "1.32.0", + "lightningcss-linux-arm64-gnu": "1.32.0", + "lightningcss-linux-arm64-musl": "1.32.0", + "lightningcss-linux-x64-gnu": "1.32.0", + "lightningcss-linux-x64-musl": "1.32.0", + "lightningcss-win32-arm64-msvc": "1.32.0", + "lightningcss-win32-x64-msvc": "1.32.0" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", + "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", + "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", + "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", + "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", + "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", + "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", + "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", + "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", + "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", + "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", + "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lodash": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.15", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz", + "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.12", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/react": { + "version": "19.2.6", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.6.tgz", + "integrity": "sha512-sfWGGfavi0xr8Pg0sVsyHMAOziVYKgPLNrS7ig+ivMNb3wbCBw3KxtflsGBAwD3gYQlE/AEZsTLgToRrSCjb0Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.6", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.6.tgz", + "integrity": "sha512-0prMI+hvBbPjsWnxDLxlCGyM8PN6UuWjEUCYmZhO67xIV9Xasa/r/vDnq+Xyq4Lo27g8QSbO5YzARu0D1Sps3g==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.6" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rolldown": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.2.tgz", + "integrity": "sha512-oZx5zVDtVB44AW3eaifgDml1gWRDZGvjcfdxonE4swNPG98PrrXjaO/KrnUjzlMnztCCRVlUueA1kCXhARGk6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@oxc-project/types": "=0.132.0", + "@rolldown/pluginutils": "^1.0.0" + }, + "bin": { + "rolldown": "bin/cli.mjs" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "optionalDependencies": { + "@rolldown/binding-android-arm64": "1.0.2", + "@rolldown/binding-darwin-arm64": "1.0.2", + "@rolldown/binding-darwin-x64": "1.0.2", + "@rolldown/binding-freebsd-x64": "1.0.2", + "@rolldown/binding-linux-arm-gnueabihf": "1.0.2", + "@rolldown/binding-linux-arm64-gnu": "1.0.2", + "@rolldown/binding-linux-arm64-musl": "1.0.2", + "@rolldown/binding-linux-ppc64-gnu": "1.0.2", + "@rolldown/binding-linux-s390x-gnu": "1.0.2", + "@rolldown/binding-linux-x64-gnu": "1.0.2", + "@rolldown/binding-linux-x64-musl": "1.0.2", + "@rolldown/binding-openharmony-arm64": "1.0.2", + "@rolldown/binding-wasm32-wasi": "1.0.2", + "@rolldown/binding-win32-arm64-msvc": "1.0.2", + "@rolldown/binding-win32-x64-msvc": "1.0.2" + } + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "license": "MIT" + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.16", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", + "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "license": "0BSD", + "optional": true + }, + "node_modules/vite": { + "version": "8.0.14", + "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.14.tgz", + "integrity": "sha512-s4BJJ+5y1pYL6Otw51FHhVJQhPnuRinKig64g/1+EUNaJsd3gCKdD31IPFvswUgW9/60QT9oFHbZHbQK5imcxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "lightningcss": "^1.32.0", + "picomatch": "^4.0.4", + "postcss": "^8.5.15", + "rolldown": "1.0.2", + "tinyglobby": "^0.2.16" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^20.19.0 || >=22.12.0", + "@vitejs/devtools": "^0.1.18", + "esbuild": "^0.27.0 || ^0.28.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "@vitejs/devtools": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..6158cbf --- /dev/null +++ b/package.json @@ -0,0 +1,22 @@ +{ + "name": "moltenhub-dispatch", + "version": "0.0.0", + "private": true, + "type": "module", + "scripts": { + "test": "node --test web/skill-payload-form/*.test.mjs", + "build:web": "vite build", + "verify:web-build": "npm run build:web && git diff --exit-code -- internal/web/static/skill-payload-form" + }, + "dependencies": { + "@jsonforms/core": "3.7.0", + "@jsonforms/react": "3.7.0", + "@jsonforms/vanilla-renderers": "3.7.0", + "react": "19.2.6", + "react-dom": "19.2.6" + }, + "devDependencies": { + "@vitejs/plugin-react": "6.0.2", + "vite": "8.0.14" + } +} diff --git a/vite.config.mjs b/vite.config.mjs new file mode 100644 index 0000000..ad44991 --- /dev/null +++ b/vite.config.mjs @@ -0,0 +1,24 @@ +import { defineConfig } from "vite"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + plugins: [react()], + define: { + "process.env.NODE_ENV": JSON.stringify("production"), + }, + build: { + emptyOutDir: true, + outDir: "internal/web/static/skill-payload-form", + lib: { + entry: "web/skill-payload-form/main.jsx", + name: "MoltenHubSkillPayloadFormBundle", + formats: ["iife"], + fileName: () => "skill-payload-form.js", + }, + rollupOptions: { + output: { + assetFileNames: "skill-payload-form.[ext]", + }, + }, + }, +}); diff --git a/web/skill-payload-form/main.jsx b/web/skill-payload-form/main.jsx new file mode 100644 index 0000000..78ead23 --- /dev/null +++ b/web/skill-payload-form/main.jsx @@ -0,0 +1,86 @@ +import React from "react"; +import { createRoot } from "react-dom/client"; +import { JsonForms } from "@jsonforms/react"; +import { vanillaCells, vanillaRenderers } from "@jsonforms/vanilla-renderers"; +import "./skill-payload-form.css"; + +import { + createDefaultPayload, + deepClone, + extractSkillSchemaPayload, + normalizeSkillSchema, + prettyJSONStringify, + transitionPayloadMode, +} from "./schema.mjs"; + +const roots = new WeakMap(); + +function SkillPayloadForm({ schema, uischema, data, onChange }) { + return ( + { + onChange({ + data: nextData == null ? {} : nextData, + errors: Array.isArray(errors) ? errors : [], + }); + }} + /> + ); +} + +const renderForm = (element, options) => { + if (!(element instanceof HTMLElement)) { + return { ok: false, error: "form mount element is missing" }; + } + const normalized = normalizeSkillSchema(options && options.schema, options && options.uischema); + if (!normalized.ok) { + return normalized; + } + const initialData = options && Object.prototype.hasOwnProperty.call(options, "data") && options.data != null + ? deepClone(options.data) + : createDefaultPayload(normalized.schema); + let root = roots.get(element); + if (!root) { + root = createRoot(element); + roots.set(element, root); + } + root.render( + {}} + />, + ); + return { + ok: true, + schema: normalized.schema, + uischema: normalized.uischema, + data: initialData, + error: "", + }; +}; + +const unmountForm = (element) => { + const root = roots.get(element); + if (!root) { + return; + } + root.unmount(); + roots.delete(element); +}; + +window.MoltenHubSkillPayloadForm = { + createDefaultPayload, + extractSkillSchemaPayload, + normalizeSkillSchema, + prettyJSONStringify, + render: renderForm, + transitionPayloadMode, + unmount: unmountForm, +}; diff --git a/web/skill-payload-form/schema.mjs b/web/skill-payload-form/schema.mjs new file mode 100644 index 0000000..c87e081 --- /dev/null +++ b/web/skill-payload-form/schema.mjs @@ -0,0 +1,324 @@ +export const schemaAliases = [ + "schema", + "input_schema", + "payload_schema", + "inputSchema", + "payloadSchema", + "parameters", + "args_schema", + "argsSchema", +]; + +export const uiSchemaAliases = ["ui_schema", "uischema", "uiSchema"]; + +export const isPlainObject = (value) => { + if (value == null || typeof value !== "object" || Array.isArray(value)) { + return false; + } + const prototype = Object.getPrototypeOf(value); + return prototype === Object.prototype || prototype === null; +}; + +export const deepClone = (value) => { + if (value == null || typeof value !== "object") { + return value; + } + return JSON.parse(JSON.stringify(value)); +}; + +export const firstAliasValue = (source, aliases) => { + if (!isPlainObject(source)) { + return undefined; + } + for (const alias of aliases) { + if (Object.prototype.hasOwnProperty.call(source, alias) && source[alias] != null) { + return source[alias]; + } + } + return undefined; +}; + +export const nestedSchemaValue = (value) => { + if (!isPlainObject(value)) { + return value; + } + const nested = firstAliasValue(value, schemaAliases); + return nested === undefined ? value : nested; +}; + +export const extractSkillSchemaPayload = (skill) => ({ + schema: nestedSchemaValue(firstAliasValue(skill, schemaAliases)), + uischema: firstAliasValue(skill, uiSchemaAliases), +}); + +export const parseMaybeJSONString = (value, label = "value") => { + if (typeof value !== "string") { + return { ok: true, value }; + } + const trimmed = value.trim(); + if (trimmed === "") { + return { ok: false, error: `${label} is empty` }; + } + try { + return { ok: true, value: JSON.parse(trimmed) }; + } catch (error) { + return { + ok: false, + error: `${label} must be valid JSON: ${error instanceof Error ? error.message : "parse failed"}`, + }; + } +}; + +const parameterEntries = (value) => { + if (!Array.isArray(value)) { + return []; + } + return value + .map((entry) => { + if (typeof entry === "string") { + return { name: entry.trim(), description: "" }; + } + if (!isPlainObject(entry)) { + return { name: "", description: "" }; + } + return { + name: typeof entry.name === "string" ? entry.name.trim() : "", + description: typeof entry.description === "string" ? entry.description.trim() : "", + }; + }) + .filter((entry) => entry.name !== ""); +}; + +const schemaForParameter = (entry) => { + const normalizedName = entry.name.toLowerCase(); + const description = entry.description || undefined; + if (["images", "repos", "reviewers"].includes(normalizedName)) { + return { + type: "array", + items: { type: "string" }, + ...(description ? { description } : {}), + }; + } + return { + type: "string", + ...(description ? { description } : {}), + }; +}; + +export const parameterMetadataToJSONSchema = (value) => { + if (!isPlainObject(value)) { + return null; + } + const required = parameterEntries(value.required); + const optional = parameterEntries(value.optional); + if (required.length === 0 && optional.length === 0) { + return null; + } + const properties = {}; + for (const entry of [...required, ...optional]) { + properties[entry.name] = schemaForParameter(entry); + } + return { + type: "object", + properties, + ...(required.length > 0 ? { required: required.map((entry) => entry.name) } : {}), + }; +}; + +const hasJSONSchemaShape = (value) => { + if (!isPlainObject(value)) { + return false; + } + return Boolean( + value.type + || value.properties + || value.anyOf + || value.oneOf + || value.allOf + || value.$ref + ); +}; + +export const normalizeJSONSchema = (schemaInput) => { + const parsed = parseMaybeJSONString(schemaInput, "schema"); + if (!parsed.ok) { + return { ok: false, schema: null, error: parsed.error }; + } + if (!isPlainObject(parsed.value)) { + return { ok: false, schema: null, error: "schema must be a JSON object" }; + } + const parameterSchema = parameterMetadataToJSONSchema(parsed.value); + const schemaCandidate = (parameterSchema || hasJSONSchemaShape(parsed.value)) + ? parsed.value + : nestedSchemaValue(parsed.value); + const nestedParsed = parseMaybeJSONString(schemaCandidate, "schema"); + if (!nestedParsed.ok) { + return { ok: false, schema: null, error: nestedParsed.error }; + } + if (!isPlainObject(nestedParsed.value)) { + return { ok: false, schema: null, error: "schema must be a JSON object" }; + } + const schema = parameterSchema || parameterMetadataToJSONSchema(nestedParsed.value) || deepClone(nestedParsed.value); + if (!schema.type && isPlainObject(schema.properties)) { + schema.type = "object"; + } + if (!schema.type && !schema.anyOf && !schema.oneOf && !schema.allOf && !schema.$ref) { + return { ok: false, schema: null, error: "schema must declare a type or JSON Schema composition" }; + } + return { ok: true, schema, error: "" }; +}; + +export const normalizeUISchema = (uischemaInput) => { + if (uischemaInput == null || (typeof uischemaInput === "string" && uischemaInput.trim() === "")) { + return { ok: true, uischema: undefined, error: "" }; + } + const parsed = parseMaybeJSONString(uischemaInput, "ui schema"); + if (!parsed.ok) { + return { ok: false, uischema: undefined, error: parsed.error }; + } + if (!isPlainObject(parsed.value)) { + return { ok: false, uischema: undefined, error: "ui schema must be a JSON object" }; + } + return { ok: true, uischema: deepClone(parsed.value), error: "" }; +}; + +export const normalizeSkillSchema = (schemaInput, uischemaInput) => { + if (schemaInput == null || (typeof schemaInput === "string" && schemaInput.trim() === "")) { + return { ok: false, schema: null, uischema: undefined, error: "schema is empty" }; + } + const schemaResult = normalizeJSONSchema(schemaInput); + if (!schemaResult.ok) { + return { ok: false, schema: null, uischema: undefined, error: schemaResult.error }; + } + const uiSchemaResult = normalizeUISchema(uischemaInput); + if (!uiSchemaResult.ok) { + return { ok: false, schema: null, uischema: undefined, error: uiSchemaResult.error }; + } + return { + ok: true, + schema: schemaResult.schema, + uischema: uiSchemaResult.uischema, + error: "", + }; +}; + +const schemaTypes = (schema) => { + if (!isPlainObject(schema)) { + return []; + } + if (Array.isArray(schema.type)) { + return schema.type.filter((type) => typeof type === "string"); + } + return typeof schema.type === "string" ? [schema.type] : []; +}; + +export const createDefaultPayload = (schema) => { + if (!isPlainObject(schema)) { + return {}; + } + if (Object.prototype.hasOwnProperty.call(schema, "default")) { + return deepClone(schema.default); + } + const types = schemaTypes(schema); + if (types.includes("array")) { + return []; + } + if (types.includes("object") || isPlainObject(schema.properties)) { + const output = {}; + const properties = isPlainObject(schema.properties) ? schema.properties : {}; + for (const [key, propertySchema] of Object.entries(properties)) { + if (!isPlainObject(propertySchema)) { + continue; + } + if (Object.prototype.hasOwnProperty.call(propertySchema, "default")) { + output[key] = deepClone(propertySchema.default); + continue; + } + const nestedDefault = createNestedDefault(propertySchema); + if (nestedDefault.hasDefault) { + output[key] = nestedDefault.value; + } + } + return output; + } + return {}; +}; + +const createNestedDefault = (schema) => { + if (!isPlainObject(schema)) { + return { hasDefault: false, value: undefined }; + } + if (Object.prototype.hasOwnProperty.call(schema, "default")) { + return { hasDefault: true, value: deepClone(schema.default) }; + } + const types = schemaTypes(schema); + if (types.includes("object") || isPlainObject(schema.properties)) { + const value = createDefaultPayload(schema); + return Object.keys(value).length > 0 + ? { hasDefault: true, value } + : { hasDefault: false, value: undefined }; + } + if (types.includes("array") && isPlainObject(schema.items)) { + const itemDefault = createNestedDefault(schema.items); + if (itemDefault.hasDefault) { + return { hasDefault: true, value: [itemDefault.value] }; + } + } + return { hasDefault: false, value: undefined }; +}; + +export const prettyJSONStringify = (value) => JSON.stringify(value == null ? {} : value, null, 2); + +export const parseJSONPayload = (value) => { + const trimmed = String(value || "").trim(); + if (trimmed === "") { + return { ok: true, data: {}, error: "" }; + } + try { + return { ok: true, data: JSON.parse(trimmed), error: "" }; + } catch (error) { + return { + ok: false, + data: null, + error: error instanceof Error ? error.message : "payload must be valid JSON", + }; + } +}; + +export const transitionPayloadMode = ({ toMode, textValue, currentData, schema }) => { + if (toMode === "json") { + return { + ok: true, + mode: "json", + data: currentData == null ? createDefaultPayload(schema) : deepClone(currentData), + textValue: prettyJSONStringify(currentData == null ? createDefaultPayload(schema) : currentData), + error: "", + }; + } + if (toMode === "form") { + const parsed = parseJSONPayload(textValue); + if (!parsed.ok) { + return { + ok: false, + mode: "json", + data: currentData == null ? createDefaultPayload(schema) : deepClone(currentData), + textValue, + error: parsed.error, + }; + } + return { + ok: true, + mode: "form", + data: parsed.data == null ? createDefaultPayload(schema) : parsed.data, + textValue: prettyJSONStringify(parsed.data == null ? createDefaultPayload(schema) : parsed.data), + error: "", + }; + } + return { + ok: false, + mode: "json", + data: currentData == null ? createDefaultPayload(schema) : deepClone(currentData), + textValue, + error: "payload mode must be form or json", + }; +}; diff --git a/web/skill-payload-form/schema.test.mjs b/web/skill-payload-form/schema.test.mjs new file mode 100644 index 0000000..8cdae27 --- /dev/null +++ b/web/skill-payload-form/schema.test.mjs @@ -0,0 +1,162 @@ +import assert from "node:assert/strict"; +import test from "node:test"; + +import { + createDefaultPayload, + extractSkillSchemaPayload, + normalizeSkillSchema, + parameterMetadataToJSONSchema, + transitionPayloadMode, +} from "./schema.mjs"; + +test("extractSkillSchemaPayload reads schema and ui schema aliases", () => { + const skill = { + name: "review", + input_schema: { properties: { prompt: { type: "string" } } }, + uiSchema: { type: "VerticalLayout", elements: [] }, + }; + + assert.deepEqual(extractSkillSchemaPayload(skill), { + schema: { properties: { prompt: { type: "string" } } }, + uischema: { type: "VerticalLayout", elements: [] }, + }); +}); + +test("extractSkillSchemaPayload reads nested parameter schema aliases", () => { + const skill = { + name: "run", + parameters: { + format: "json", + schema: { + properties: { + prompt: { type: "string" }, + }, + }, + }, + }; + + assert.deepEqual(extractSkillSchemaPayload(skill), { + schema: { + properties: { + prompt: { type: "string" }, + }, + }, + uischema: undefined, + }); +}); + +test("normalizeSkillSchema parses string schemas and defaults object type from properties", () => { + const result = normalizeSkillSchema(`{"properties":{"prompt":{"type":"string"}}}`); + + assert.equal(result.ok, true); + assert.equal(result.schema.type, "object"); + assert.deepEqual(result.schema.properties.prompt, { type: "string" }); +}); + +test("normalizeSkillSchema rejects invalid schema input", () => { + const result = normalizeSkillSchema("{bad"); + + assert.equal(result.ok, false); + assert.match(result.error, /valid JSON/); +}); + +test("parameterMetadataToJSONSchema converts advertised parameter metadata", () => { + assert.deepEqual(parameterMetadataToJSONSchema({ + required: [{ name: "repo", description: "Repository URL" }], + optional: [ + { name: "prompt", description: "Task prompt" }, + { name: "repos", description: "Repository URLs" }, + ], + }), { + type: "object", + properties: { + repo: { type: "string", description: "Repository URL" }, + prompt: { type: "string", description: "Task prompt" }, + repos: { type: "array", items: { type: "string" }, description: "Repository URLs" }, + }, + required: ["repo"], + }); +}); + +test("normalizeSkillSchema accepts advertised parameter metadata", () => { + const result = normalizeSkillSchema({ + format: "json", + optional: [{ name: "prompt", description: "Task prompt" }], + secret_policy: "forbidden", + }); + + assert.equal(result.ok, true); + assert.equal(result.schema.type, "object"); + assert.deepEqual(result.schema.properties.prompt, { type: "string", description: "Task prompt" }); +}); + +test("normalizeSkillSchema accepts nested advertised parameter metadata", () => { + const result = normalizeSkillSchema({ + format: "json", + schema: { + optional: [{ name: "prompt", description: "Task prompt" }], + secret_policy: "forbidden", + }, + }); + + assert.equal(result.ok, true); + assert.equal(result.schema.type, "object"); + assert.deepEqual(result.schema.properties.prompt, { type: "string", description: "Task prompt" }); +}); + +test("createDefaultPayload uses root and nested schema defaults", () => { + assert.deepEqual(createDefaultPayload({ + type: "object", + properties: { + prompt: { type: "string", default: "Inspect logs" }, + options: { + type: "object", + properties: { + limit: { type: "integer", default: 20 }, + }, + }, + skip: { type: "boolean" }, + }, + }), { + prompt: "Inspect logs", + options: { limit: 20 }, + }); +}); + +test("transitionPayloadMode preserves form data when switching to JSON", () => { + const result = transitionPayloadMode({ + toMode: "json", + schema: { type: "object", properties: {} }, + currentData: { prompt: "Ship it" }, + textValue: "", + }); + + assert.equal(result.ok, true); + assert.equal(result.mode, "json"); + assert.equal(result.textValue, "{\n \"prompt\": \"Ship it\"\n}"); +}); + +test("transitionPayloadMode hydrates form mode from valid JSON and rejects invalid JSON", () => { + const schema = { type: "object", properties: {} }; + const hydrated = transitionPayloadMode({ + toMode: "form", + schema, + currentData: {}, + textValue: "{\"prompt\":\"Build\"}", + }); + + assert.equal(hydrated.ok, true); + assert.equal(hydrated.mode, "form"); + assert.deepEqual(hydrated.data, { prompt: "Build" }); + + const rejected = transitionPayloadMode({ + toMode: "form", + schema, + currentData: { prompt: "Build" }, + textValue: "{bad", + }); + + assert.equal(rejected.ok, false); + assert.equal(rejected.mode, "json"); + assert.deepEqual(rejected.data, { prompt: "Build" }); +}); diff --git a/web/skill-payload-form/skill-payload-form.css b/web/skill-payload-form/skill-payload-form.css new file mode 100644 index 0000000..c11b15b --- /dev/null +++ b/web/skill-payload-form/skill-payload-form.css @@ -0,0 +1,70 @@ +.skill-payload-form-root .jsonforms-root { + font-family: var(--font-family, "Instrument Sans", "Segoe UI", sans-serif); +} + +.skill-payload-form-root .group-layout, +.skill-payload-form-root .vertical-layout, +.skill-payload-form-root .horizontal-layout { + display: grid; + gap: 12px; +} + +.skill-payload-form-root .horizontal-layout { + grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); +} + +.skill-payload-form-root .control { + display: grid; + gap: 6px; +} + +.skill-payload-form-root .control > label, +.skill-payload-form-root .array-layout > label, +.skill-payload-form-root .group-label { + color: var(--text-soft, #35507a); + font-size: 0.78rem; + font-weight: 700; + letter-spacing: 0.08em; + text-transform: uppercase; +} + +.skill-payload-form-root input, +.skill-payload-form-root select, +.skill-payload-form-root textarea { + width: 100%; + min-height: 42px; + border: 1px solid var(--surface-control-border, rgba(112, 163, 221, 0.34)); + border-radius: var(--radius-control, 6px); + padding: 10px 12px; + background: var(--input-background, #ffffff); + color: var(--text, #0f1b33); + font: inherit; + box-shadow: var(--surface-control-shadow, none); +} + +.skill-payload-form-root textarea { + min-height: 96px; + resize: vertical; +} + +.skill-payload-form-root input[type="checkbox"] { + width: 18px; + min-height: 18px; + box-shadow: none; +} + +.skill-payload-form-root input:focus, +.skill-payload-form-root select:focus, +.skill-payload-form-root textarea:focus { + border-color: rgb(var(--hub-running-rgb, 0 145 176) / 0.54); + box-shadow: + var(--surface-control-shadow, none), + 0 0 0 3px rgb(var(--hub-running-rgb, 0 145 176) / 0.16); + outline: none; +} + +.skill-payload-form-root .validation { + color: var(--surface-danger, #b42318); + font-size: 0.78rem; + line-height: 1.35; +}