@uniformdev/uniform-mcp 20.47.1-alpha.3 → 20.47.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.mjs +1 -1
  2. package/package.json +10 -10
package/dist/index.mjs CHANGED
@@ -98,7 +98,7 @@ See https://reactjs.org/docs/forms.html#controlled-components`),K=R.initialPage?
98
98
  The prompt should describe the information you are looking for.
99
99
  You may be detailed but do not use more than 100 words.
100
100
  When answering a user question, your prompt should be exactly that question.`)}),outputSchema:Fp.object({success:Fp.boolean(),error:Fp.string().optional().describe("The error message if the question was not answered successfully"),answerMarkdown:Fp.string().describe("The answer, in markdown format, from the Uniform docs chatbot")}),runsAt:"server",timeout:60,callable:!0};var XI=I(JI());var QI=(0,XI.default)(6),fx=class t extends Error{constructor(n,r,o,i,s,a){super(`${n}
101
- ${i}${s?" "+s:""} (${r} ${o}${a?` Request ID: ${a}`:""})`);this.errorMessage=n;this.fetchMethod=r;this.fetchUri=o;this.statusCode=i;this.statusText=s;this.requestId=a;Object.setPrototypeOf(this,t.prototype)}};var px=class t{options;constructor(e){if(!e.apiKey&&!e.bearerToken)throw new Error("You must provide an API key or a bearer token");let n=e.fetch;if(!n)if(typeof window<"u")n=window.fetch.bind(window);else if(typeof fetch<"u")n=fetch;else throw new Error("You must provide or polyfill a fetch implementation when not in a browser");this.options={...e,fetch:n,apiHost:this.ensureApiHost(e.apiHost),apiKey:e.apiKey??null,projectId:e.projectId??null,bearerToken:e.bearerToken??null,limitPolicy:e.limitPolicy??QI,bypassCache:e.bypassCache??!1}}async apiClient(e,n){return(await this.apiClientWithResponse(e,n)).body}async apiClientWithResponse(e,n){return this.options.limitPolicy(async()=>{let r=this.options.apiKey?{"x-api-key":this.options.apiKey}:{Authorization:`Bearer ${this.options.bearerToken}`};this.options.bypassCache&&(r["x-bypass-cache"]="true");let{fetch:o,signal:i}=this.options,a=await qae(()=>o(e.toString(),{...n,signal:i,headers:{...n?.headers,...r}}));if(!a.ok){let l="";try{let c=await a.text();try{let u=JSON.parse(c);u.errorMessage?l=Array.isArray(u.errorMessage)?u.errorMessage.join(", "):u.errorMessage:l=c}catch{l=c}}catch{l="General error"}throw new fx(l,n?.method??"GET",e.toString(),a.status,a.statusText,t.getRequestId(a))}return n?.expectNoContent?{response:a,body:null}:{response:a,body:await a.json()}})}createUrl(e,n,r){let o=new URL(`${r??this.options.apiHost}${e}`);return Object.entries(n??{}).forEach(([i,s])=>{typeof s<"u"&&s!==null&&o.searchParams.append(i,Array.isArray(s)?s.join(","):s?.toString()??"")}),o}ensureApiHost(e){if(!e)return"https://uniform.app";if(!e?.startsWith("http"))throw new Error('Your apiHost must start with "http"');if(e.indexOf("/",8)>-1)throw new Error("Your apiHost must not contain a path element after the domain");if(e.indexOf("?")>-1)throw new Error("Your apiHost must not contain a query string");return e?.endsWith("/")&&(e=e.substring(0,e.length-1)),e}static getRequestId(e){let n=e.headers.get("apigw-requestid");if(n)return n}};async function qae(t){let n=5,r;for(;n>0&&(r=await t(),r.status===429);){let o=0;try{let a=r.clone(),l=a.headers.get("date"),c=l?new Date(l).getTime():void 0,d=(await a.json())?.info?.reset;typeof c=="number"&&typeof d=="number"&&(o=Math.max(0,Math.min(Math.round(1.1*(d-c)),1e4)))}catch{}let i=Math.pow(2,5-n)*333,s=i+Math.round(Math.random()*(i/2))*(Math.random()>.5?1:-1);await new Promise(a=>setTimeout(a,o+s)),n-=1}return r}var mx=class extends px{telemetryContext;constructor(e){e.apiHost||(e.apiHost="https://ai.uniform.global"),super(e),this.telemetryContext=e.telemetryContext}async invoke(e,n){let r={};if(this.telemetryContext){let{threadId:i,uniformClient:s,userAgent:a}=this.telemetryContext;i&&(r["x-thread-id"]=i),s&&(r["x-uniform-client"]=s),a&&(r["user-agent"]=a)}return(await this.apiClientWithResponse(new URL(`/projects/${this.options.projectId}/tools/${e}`,this.options.apiHost),{method:"POST",body:n?JSON.stringify(n):void 0,headers:Object.keys(r).length>0?r:void 0})).body}};var ek={name:"@uniformdev/uniform-mcp",version:"20.47.0",description:"Uniform MCP Server",license:"SEE LICENSE IN LICENSE.txt",bin:{"uniform-mcp":"./dist/index.mjs"},exports:{types:"./dist/index.d.mts",import:"./dist/index.mjs"},sideEffects:!1,scripts:{build:"tsup",dev:"tsup --watch",clean:"rimraf dist",lint:'eslint "src/**/*.{js,ts,tsx}"',format:'prettier --write "src/**/*.{js,ts,tsx}"',mcp:"node dist/index.mjs"},dependencies:{"@modelcontextprotocol/sdk":"^1.12.0","@types/uuid":"9.0.4","@uniformdev/canvas":"workspace:*","@uniformdev/project-map":"workspace:*","fast-json-patch":"^3.1.1",immer:"10.1.3",jsdom:"24.1.3",uuid:"9.0.1",zod:"3.25.76"},files:["/dist"],publishConfig:{access:"public"},devDependencies:{"@types/jsdom":"^27.0.0","@uniformdev/design-system":"workspace:*","@uniformdev/files":"workspace:*","@uniformdev/mesh-edgehancer-sdk":"workspace:*","@uniformdev/richtext":"workspace:*"}};var nk=process.env.UNIFORM_API_KEY,H_=process.env.UNIFORM_PROJECT_ID,tk=process.env.UNIFORM_API_HOST??"https://uniform.app",Xae=process.env.UNIFORM_AI_API_HOST??"https://ai.uniform.global";if(!nk&&process.env.NODE_ENV!=="test")throw new Error("UNIFORM_API_KEY is not set");if(!H_&&process.env.NODE_ENV!=="test")throw new Error("UNIFORM_PROJECT_ID is not set");var Ce={apiHost:tk,apiKey:nk,projectId:H_,aiApiHost:Xae,baseWebUrl:`${tk}/projects/${H_}`};function Ad(){return new mx({...Ce,apiHost:Ce.aiApiHost,telemetryContext:{userAgent:`uniform-mcp/${ek.version}`,uniformClient:"mcp"}})}function rk(t){t.tool("askQuestion","Ask the Uniform Docs assistant, Una, questions about Uniform features, usage, and best practices",GI.inputSchema.shape,async e=>{let r=await Ad().invoke("askQuestion",e);return{content:[{type:"text",text:JSON.stringify(r,null,2)}]}})}import{autoFixParameterGroups as lk,CanvasClient as hle}from"@uniformdev/canvas";import*as xx from"zod/v3";import Qae from"fast-json-patch";function gx(t,e){return Qae.applyPatch(t,e).newDocument}import*as ea from"zod/v3";var hx=ea.array(ea.object({op:ea.enum(["add","remove","replace"]),path:ea.string().describe("The JSON path to patch"),value:ea.unknown().describe("The value to patch - for remove, leave this blank")}));function ele(t){return Array.isArray(t)&&t.length>0}function ok(t){return!!t&&typeof t=="object"&&"type"in t}function ik(t){return typeof t=="object"&&t!==null&&"root"in t&&ok(t.root)}function Md(t){return"children"in t&&ele(t.children)}var tle=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var nle=({context:t,renderChildren:e})=>{if(!Md(t.currentNode))return"";let n=e(t.currentNode.children);return n.endsWith(" ")?n:`${n} `};var rle=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var ole=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var ile=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var sle=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var ale=({context:t})=>t.currentNode.text;var lle=()=>" ";var cle=()=>" ",ule=new Map([["text",ale],["tab",lle],["linebreak",cle],["paragraph",rle],["listitem",nle],["heading",tle],["table",ole],["tablecell",ile],["tablerow",sle]]),dle=t=>{let e=ule.get(t.currentNode.type);return e||(({context:n,renderChildren:r})=>Md(n.currentNode)?r(n.currentNode.children):"")};function fle(t,e){let n=[];return e?.ancestorNodes&&(n=n.concat(e.ancestorNodes)),e?.currentNode&&n.unshift(e.currentNode),{...e??{},currentNode:t,ancestorNodes:n}}function K_(t,e){var n;if(!ok(t))return"";let r=fle(t,e),o=(n=r.resolveRenderer)==null?void 0:n.call(r,r);if(typeof o>"u")o=dle(r);else if(o===null)return"";let i=s=>ple(s,r);if(o){let s=o({context:r,renderChildren:i});return r.ancestorNodes.length>0?s:s.trim()}else throw new Error(`There is no renderer for node type: ${r.currentNode.type}`)}function ple(t,e){return Array.isArray(t)?t.map(n=>K_(n,e)).join(""):""}var mle=[{label:"Heading 1",type:"h1"},{label:"Heading 2",type:"h2"},{label:"Heading 3",type:"h3"},{label:"Heading 4",type:"h4"},{label:"Heading 5",type:"h5"},{label:"Heading 6",type:"h6"},{label:"Bullet List",type:"unorderedList"},{label:"Ordered List",type:"orderedList"},{label:"Link",type:"link"},{label:"Blockquote",type:"quote"},{label:"Code Block",type:"code"},{label:"Table",type:"table"},{label:"Asset",type:"asset"},{label:"Dynamic Token",type:"variable"}],gle=[{label:"Bold",type:"bold"},{label:"Italic",type:"italic"},{label:"Underline",type:"underline"},{label:"Strikethrough",type:"strikethrough"},{label:"Code",type:"code"},{label:"Superscript",type:"superscript"},{label:"Subscript",type:"subscript"}];var vx={required:!1,formatting:{builtIn:gle.map(t=>t.type)},elements:{builtIn:mle.map(t=>t.type)},elementsConfig:{asset:{allowedTypes:["image"]}}};import*as pr from"zod/v3";import*as Wt from"zod/v3";var yx=Wt.object({name:Wt.string().describe('Title-cased display name. Ex: "Headline"'),id:Wt.string().describe("The public ID. Must be unique within the current entity fields/parameters."),type:Wt.enum(["text","richText","select","multi-select","number","date","dateTime","checkbox","link","asset","json","contentReference","$enr","group"]).describe("The data type of the property. The group type defines a grouping of other properties."),guidance:Wt.string().describe('Describe what kind of content should be populated, for a LLM to use as a guide. 1-2 sentences max. Ex: "Meta tags based on the content", "2-3 word headline"'),localizable:Wt.boolean().describe("Whether values are stored as locale-specific"),typeConfig:Wt.object({allowedTypes:Wt.array(Wt.enum(["image","video","audio","other"])).optional().describe("The types of asset allowed. ONLY applies when type=asset, omit for other types"),options:Wt.array(Wt.object({text:Wt.string().describe("The text to display to the author"),value:Wt.string().describe("The value to store for the option")})).optional().describe("The author-selectable options for the select property. ONLY applies when type=select or multi-select, omit for other types"),required:Wt.boolean().optional().describe("Whether an author must enter a value for this property"),min:Wt.number().optional().describe("When type=number, this is the smallest allowed value (omit for no minimum). When type=multi-select, this is the minimum number of selections the author must make (omit for no minimum). When type=reference and isMulti=true, this is the minimum number of references the author must select (omit for no minimum). Omit for all other types."),max:Wt.number().optional().describe("When type=number, this is the largest allowed value (omit for no maximum). When type=multi-select, this is the maximum number of selections the author can make (omit for no maximum). When type=reference and isMulti=true, this is the maximum number of references the author can select (omit for no maximum). Omit for all other types."),allowedContentTypes:Wt.array(Wt.string()).optional().describe("When type=reference, this is a list of content type public IDs the author can reference. The content type ID must already exist. Omit for all other types."),isMulti:Wt.boolean().optional().describe("When type=reference, this is whether the author can select multiple referenced entries. When false, only one reference is allowed. Omit for all other types."),childrenParams:Wt.array(Wt.string()).optional().describe("When type=group, this is a list of public IDs of the properties to group. The property ID must be defined within this definition. Omit for all other types."),collapsed:Wt.boolean().optional().describe("When type=group, this is whether the group is collapsed by default."),schema:Wt.any().describe("When type=json, this is an optional JSON schema the property value must follow. Omit for all other types.")}).optional()});var sk=pr.object({name:pr.string().describe('Title-cased display name of the component. Ex: "Hero"'),id:pr.string().describe("Public ID of the component, the camelCase version of name, using only alphanumeric characters"),description:pr.string().describe('Describe the purpose of the component in 1-2 sentences. If the component seems generic, such as "Promo" or "Hero", this should be blank.'),canBeComposition:pr.boolean().describe("True if the component can have pages/compositions created from it. False if it is a part of a page."),parameters:pr.array(yx).describe("The properties of the component. The key is the publicId of the property.").optional(),slots:pr.array(pr.object({name:pr.string().describe('Title-cased display name of the slot. Ex: "Content"'),id:pr.string().describe("The public id of the slot. Must be unique within this component's slots."),allowedComponents:pr.array(pr.string()).describe("The components public IDs allowed in the slot."),minComponents:pr.number().describe("The minimum number of components allowed in the slot. Omit for no minimum.").min(0).optional(),maxComponents:pr.number().describe("The maximum number of components allowed in the slot. Omit for no maximum.").min(1).optional(),inheritAllowedComponents:pr.boolean().describe("Set to false")})).describe("The slots of the component. The key is the publicId of the slot.").optional()});function ak(t){let e=t.slots?.map(o=>({...o,patternsInAllowedComponents:!0,inheritAllowedComponents:!1,maxComponents:o.maxComponents===0?void 0:o.maxComponents,minComponents:o.minComponents===0?void 0:o.minComponents})),n=t.parameters?.find(o=>o.type==="asset"&&typeof o.typeConfig=="object"&&o.typeConfig!==null&&"allowedTypes"in o.typeConfig&&Array.isArray(o.typeConfig.allowedTypes)&&o.typeConfig.allowedTypes?.includes("image"))?.id,r=t.parameters?.find(o=>o.type==="text")?.id;return{...t,slots:e,titleParameter:r,thumbnailParameter:n}}function bx(t){return`${Ce.baseWebUrl}/dashboards/canvas/components/${t}`}function Bp(t,e){let n=t.filter(r=>e===void 0&&r.type==="richText"||e!==void 0&&e.includes(r.id));if(n.length!==0)for(let r of n){if(r.typeConfig===void 0){r.typeConfig=vx;continue}r.typeConfig={...vx,required:r.typeConfig.required??vx.required}}}var vle={action:xx.enum(["create","update","delete"]).describe("The action to perform"),publicId:xx.string().describe("Public ID of the component, the camelCase version of name, using only alphanumeric characters"),component:sk.describe("Full component definition to create. Omit for update or delete.").optional(),patches:hx.describe("JSON patch to apply to the existing component definition. Omit for create or delete.").optional()};function ck(t){t.tool("componentAction","Creates, updates, or deletes a Uniform Component definition (or Composition definition)",vle,async({publicId:e,action:n,component:r,patches:o})=>{let i=new hle(Ce),s=!1;if(n==="create"){if(!r)throw new Error("Component definition is required for create");let a=ak(r);a.parameters&&(s=lk(a.parameters),Bp(a.parameters)),await i.updateComponentDefinition({componentDefinition:a})}if(n==="update"){if(!o)throw new Error("Patches are required for update");let a=await i.getComponentDefinitions({componentId:e});if(!a.componentDefinitions.length)throw new Error(`Component with public ID ${e} does not exist, try creating it instead`);let l=a.componentDefinitions[0],c=l.parameters?.filter(d=>d.type==="richText").map(d=>d.id),u=gx(l,o);if(u.parameters){s=lk(u.parameters);let d=u.parameters?.filter(f=>f.type==="richText").map(f=>f.id).filter(f=>!c?.includes(f));Bp(u.parameters,d)}await i.updateComponentDefinition({componentDefinition:u})}return n==="delete"&&await i.removeComponentDefinition({componentId:e}),{content:[{type:"text",text:JSON.stringify({success:!0,editUrl:bx(e),warning:s?"Issues with parameter group order were fixed. Ensure definition data is re-fetched before any future updates.":void 0},null,2)}]}})}import{CanvasClient as uk}from"@uniformdev/canvas";import*as dk from"zod/v3";var yle={id:dk.string()};function fk(t){t.tool("componentList","Lists all Uniform Component definitions",async()=>{let r=(await new uk(Ce).getComponentDefinitions({includeSystem:!0})).componentDefinitions.map(o=>({id:o.id,name:o.name,type:o.canBeComposition?"composition":"component",description:o.description,editUrl:bx(o.id)}));return{content:[{type:"text",text:JSON.stringify(r,null,2)}]}}),t.tool("componentGet","Gets a Uniform Component definition details (slots, parameters, etc.)",yle,async({id:e})=>{let r=await new uk(Ce).getComponentDefinitions({componentId:e,includeSystem:!0});return{content:[{type:"text",text:JSON.stringify(r.componentDefinitions[0],null,2)}]}})}import*as Xe from"zod/v3";import*as zp from"zod/v3";var Tc=zp.object({componentId:zp.string().describe("ID of the component pattern instance the data resource belongs to - can be created in the same call to this tool"),dataResourceName:zp.string().describe("Name of the data resource to update. Must be defined as a pattern data resource on the pattern, new names cannot be created"),editInstructions:zp.string().describe('Prompt that will be used to generate the data resource value. Omission will leave the value unchanged. To reset an overridden value to pattern default, say "reset override".').optional()}).describe("A value change to a pattern data resource. Omit unchanged data resources.");var ble=Xe.object({parentComponentId:Xe.string().describe("ID of the component the slot belongs to"),slotName:Xe.string().describe("Public ID of the target slot"),slotIndex:Xe.number().describe("Index to insert the new component at. Omit for append.").optional(),newComponentInstanceUuid:Xe.string().uuid().describe("UUID of the new component to create. You MUST generate a valid unique UUID using the `createUuid` tool."),instanceType:Xe.enum(["component","componentPattern"]),componentType:Xe.string().describe("Public ID of the component definition to insert. Component definition must be registered with Uniform. Omit when inserting a component pattern instance.").optional(),componentPatternId:Xe.string().describe("UUID of the component pattern definition to insert. Component pattern must be registered with Uniform. Omit when inserting a component instance.").optional()}),Cx=Xe.object({componentId:Xe.string().describe("ID of the component the parameter belongs to - can be created in the same call to this tool"),parameterId:Xe.string().describe("Public ID of the parameter to update. Must be defined in the component type of the parent componentId"),parameterType:Xe.string().describe("The type of the parameterId as defined on the component definition"),fromLocale:Xe.string().describe("When translating from a different locale, use the locale you are translating from. Omit for non-localized values.").optional(),locale:Xe.string().describe("Locale of the parameter value. Omit for non-localized values.").optional(),editInstructions:Xe.string().describe('Prompt that will be used to generate the parameter value. Omission will leave the value unchanged. To reset an overridden value to pattern default, say "reset override".').optional()}).describe("A value change to a parameter. Omit unchanged parameters."),Sx=Xe.object({createComponentInstances:Xe.array(ble).describe("New components to insert in slots. Do not use for moves or duplications. Omit for delete. These actions are performed before moving, duplicating, or deleting components, and parameter updates.").optional(),moveComponentInstances:Xe.array(Xe.object({componentId:Xe.string().describe("Existing component ID to move. Cannot be root component."),newParentComponentId:Xe.string(),newSlotName:Xe.string().describe("Destination slot to move to"),newSlotIndex:Xe.number().describe("Destination index in the parent slot to move to")})).describe("Moves existing component instances to a new location in a composition. The destination can be the same slot to cause a reorder. Omit for create or delete, or if nothing needs moving. These actions are performed before duplicating or deleting components, and parameter updates.").optional(),duplicateComponentInstances:Xe.array(Xe.string().describe("Component ID to duplicate. Cannot be root component. All descendants of the duplicated component will be duplicated as well. Duplicates are placed in the same slot as the original component, at the end.")).describe("Component instances to duplicate/copy. Omit when empty. These actions are performed before deleting components and parameter updates.").optional(),deleteComponentInstances:Xe.array(Xe.string().describe("Component ID to remove. Cannot be the pattern root component.")).describe("Component instances to delete from slots during an update. Omit for create or delete, or if nothing needs deleting. These actions are performed after moving and duplicating components, and before parameter updates.").optional(),dataResourceUpdates:Xe.array(Tc).describe("Updates to pattern data resources. Use empty array if no changes are needed.").optional()}),$c=Xe.object({enableLocales:Xe.array(Xe.string()).describe("Locales to enable. Omit for no change.").optional(),disableLocales:Xe.array(Xe.string()).describe("Locales to disable. Existing data in disabled locales will be lost. Omit for no change.").optional()}),xle=Xe.object({summary:Xe.string().describe("Short summary of the edit that was made.").optional(),success:Xe.boolean()}),qMe=Xe.object({success:Xe.boolean().describe("Whether all actions were successful"),actionsTaken:Xe.array(xle).describe("Array of individual actions that were taken")});import*as al from"zod/v3";var Cle=Cx.extend({overridable:al.enum(["yes","no"]).describe("Whether the parameter value set on the pattern definition is overridable by pattern consumers. Omit when no change is needed.").optional()}),pk=Sx.extend({name:al.string().describe("Name of the pattern. If the name does not need to be changed, omit this field. Always include for creates.").optional(),type:al.string().describe("Component definition type of the pattern. Must be registered with Uniform. Always include for creates. Omit otherwise.").optional(),description:al.string().describe("Description of the pattern for authors. If the description does not need to be changed, omit this field.").optional(),parameterUpdates:al.array(Cle).describe("Updates to the parameters of the pattern. Use empty array if no changes are needed.").optional(),dataResourceUpdates:al.array(Tc).describe("Updates to the pattern instance data resources. Use empty array if no changes are needed.").optional(),localeUpdates:$c.optional()}).describe("Modification instructions for the pattern");import*as Nc from"zod/v3";var mk=Nc.object({...Sx.shape,name:Nc.string().describe("Name of the composition. If the name does not need to be changed, omit this field. Always include for creates.").optional(),type:Nc.string().describe("Component definition type of the composition. Must be registered with Uniform and have canBeComposition=true in the component definition. Always include for creates. Omit otherwise.").optional(),parameterUpdates:Nc.array(Cx).describe("Updates to the parameters of the pattern. Use empty array if no changes are needed.").optional(),localeUpdates:$c.optional(),dataResourceUpdates:Nc.array(Tc).describe("Updates to pattern instance data resources. Use empty array if no changes are needed.").optional()}).describe("Modification instructions for the composition");import*as ta from"zod/v3";import*as Go from"zod/v3";var W_=Go.object({fieldId:Go.string().describe("Public ID of the field to update. Must be defined in the content type of the parent entry."),fieldType:Go.string().describe("The type of the fieldId as defined on the content type"),fromLocale:Go.string().describe("When translating from a different locale, use the locale you are translating from. Omit for non-localized values.").optional(),locale:Go.string().describe("Locale of the field value. Omit for non-localized values.").optional(),editInstructions:Go.string().describe('Prompt that will be used to generate the field value. Omission will leave the value unchanged. To reset an overridden value to pattern default, say "reset override".').optional()}).describe("A value change to a field. Omit unchanged fields."),gk=Go.object({type:Go.string().describe("Content type of the entry. Must be registered with Uniform. Always include for creates. Omit otherwise.").optional(),slug:Go.string().describe("Slug (human-readable identifier) of the entry. If the slug does not need to be changed, omit this field.").optional(),fieldUpdates:Go.array(W_).describe("Updates to the fields of the entry. Use empty array if no changes are needed.").optional(),localeUpdates:$c.optional(),dataResourceUpdates:Go.array(Tc).describe("Updates to the data resources of the entry. Use empty array if no changes are needed.").optional()}).describe("Modification instructions for the entry");var Sle=W_.extend({overridable:ta.enum(["yes","no"]).describe("Whether the parameter value set on the pattern definition is overridable by pattern consumers. Omit when no change is needed.").optional()}),hk=ta.object({name:ta.string().describe("Name of the entry pattern. If the name does not need to be changed, omit this field. Always include for creates.").optional(),type:ta.string().describe("Content type of the entry pattern. Must be registered with Uniform. Always include for creates. Omit otherwise.").optional(),description:ta.string().describe("Description of the entry pattern for authors. If the description does not need to be changed, omit this field.").optional(),fieldUpdates:ta.array(Sle).describe("Updates to the fields of the entry pattern. Use empty array if no changes are needed.").optional(),localeUpdates:$c.optional()}).describe("Modification instructions for the entry pattern");import*as oo from"zod/v3";import{CANVAS_BLOCK_PARAM_TYPE as aDe}from"@uniformdev/canvas";import{getEffectivePropertyValue as lDe}from"@uniformdev/canvas";import{CANVAS_PERSONALIZATION_PARAM as cDe}from"@uniformdev/canvas";var Od="uniformContentInternalReference";var wle="$p:";function wx(t){return`${wle}${t}`}function vk({slotDefinition:t,slotSectionDefinition:e}){return{slotDefinition:{...t,allowedComponentsIndex:new Set(t?.allowedComponents??[]),maxComponents:t?.maxComponents??Number.MAX_VALUE,minComponents:t?.minComponents??0,allowAllPatternsOfAllowedTypes:!t?.patternsInAllowedComponents},slotSectionDefinition:e?{...e,specificTypesIndex:new Set(e?.specificTypes??[])}:void 0}}import{CANVAS_HYPOTHESIS_PARAM as mOe,CANVAS_LOCALIZATION_SLOT as gOe,CANVAS_LOCALIZATION_TYPE as hOe,CANVAS_PERSONALIZATION_ALGORITHM_PARAM as vOe,CANVAS_PERSONALIZATION_ALGORITHM_TYPE as yOe,CANVAS_PERSONALIZATION_EVENT_NAME_PARAM as bOe,CANVAS_PERSONALIZATION_TAKE_PARAM as xOe,CANVAS_PERSONALIZE_SLOT as COe,CANVAS_PERSONALIZE_TYPE as SOe,CANVAS_SLOT_SECTION_GROUP_TYPE_PARAM as wOe,CANVAS_SLOT_SECTION_MAX_PARAM as EOe,CANVAS_SLOT_SECTION_MIN_PARAM as _Oe,CANVAS_SLOT_SECTION_NAME_PARAM as TOe,CANVAS_SLOT_SECTION_SLOT as $Oe,CANVAS_SLOT_SECTION_SPECIFIC_PARAM as NOe,CANVAS_SLOT_SECTION_TYPE as DOe,CANVAS_TEST_SLOT as LOe,CANVAS_TEST_TYPE as AOe}from"@uniformdev/canvas";var Ele={$personalization:{isNestableIntoItself:!0},$test:void 0,$localization:void 0,$loop:void 0,$slotSection:{isAutoAllowed:!0,isNestableIntoItself:!0,isOnlyAllowedInPatternEditor:!0}},yk=t=>Ele[t];function Ex(t,{slotDefinition:e,slotSectionDefinition:n},r=!1){let o=_le(t,e,r);return n?o?Tle(t,n):!1:o}function _le(t,e,n=!1){let r=yk(t.type);if(r?.isOnlyAllowedInPatternEditor&&!n)return!1;if(r?.isAutoAllowed||e.allowAllComponents)return!0;let o=e.allowedComponentsIndex.has(t.type);return e.allowAllPatternsOfAllowedTypes||!t._pattern?o:e.allowedComponentsIndex.has(wx(t._pattern))||!1}function Tle(t,e){return e.groupType==="inherit"||!e.groupType?!0:e.groupType==="specific"?t._pattern?e.specificTypesIndex.has(wx(t._pattern)):e.specificTypesIndex.has(t.type):e.groupType==="except"?t._pattern?!e.specificTypesIndex.has(wx(t._pattern)):!e.specificTypesIndex.has(t.type):!1}function _x(t,e,n,r){return`ref-${t}-${e}`+(n?`-${n}`:"")+(r!==void 0&&r>-1?`(${r})`:"")}function bk(t,e={}){let{targetLocale:n,enabledLocales:r=[],isPatternParameter:o=!1}=e,i=n??(r.length>0?"${locale}":void 0);return{type:Od,...o?{isPatternParameter:!0}:{},variables:{entryIds:t,...i?{locale:i}:{}}}}import{CANVAS_SLOT_SECTION_GROUP_TYPE_PARAM as $le,CANVAS_SLOT_SECTION_MAX_PARAM as Nle,CANVAS_SLOT_SECTION_MIN_PARAM as Dle,CANVAS_SLOT_SECTION_NAME_PARAM as Lle,CANVAS_SLOT_SECTION_SLOT as Ale,CANVAS_SLOT_SECTION_SPECIFIC_PARAM as Mle,CANVAS_SLOT_SECTION_TYPE as Ole}from"@uniformdev/canvas";var Y_=({twee:t,parentNodeId:e,slotName:n,componentDefinitionsIndex:r})=>{let o=G_({twee:t,parentNodeId:e,slotName:n,componentDefinitionsIndex:r});if(o)return vk(o)};function G_({twee:t,parentNodeId:e,slotName:n,componentDefinitionsIndex:r}){let o=t.getNodeById(e);if(!o)return;if(n===Ale){let c=Ile({node:o,twee:t}),u=t.getParentInfo(e);if(!u)return;let d=G_({parentNodeId:u.parentId,slotName:u.parentName,twee:t,componentDefinitionsIndex:r});return d?{slotDefinition:d.slotDefinition,slotSectionDefinition:c}:void 0}let s=r[o.value.type]?.slots?.find(c=>c.id===n);if(!s)return;if(!s.inheritAllowedComponents)return{slotDefinition:s,slotSectionDefinition:void 0};let a=t.getParentInfo(e);if(!a)return{slotDefinition:s,slotSectionDefinition:void 0};let l=G_({parentNodeId:a.parentId,slotName:a.parentName,twee:t,componentDefinitionsIndex:r});return l?{slotDefinition:l.slotDefinition,slotSectionDefinition:void 0}:{slotDefinition:s,slotSectionDefinition:void 0}}function Ile({node:t,twee:e}){if(t.value.type!==Ole)return;let n=e.getNodeProperty(t.nodeId,$le)?.value??"inherit",r=e.getNodeProperty(t.nodeId,Lle)?.value??"Slot Section",o=Number(e.getNodeProperty(t.nodeId,Dle)?.value),i=Number(e.getNodeProperty(t.nodeId,Nle)?.value),s=e.getNodeProperty(t.nodeId,Mle)?.value??[];return{groupType:n,name:r,specificTypes:s,min:o,max:i}}function $x({definition:t,lastUserChoice:e,currentValue:n}){if(t&&!t.localizable)return!1;if(n){if(n.locales&&Tx(n.locales)||n.localesConditions&&Tx(n.localesConditions))return!0;if(n.value!==void 0||n.conditions!==void 0)return!1}if(e!==void 0)return e;if(t)return!t.notLocalizedByDefault}function Tx(t){return Array.isArray(t)?t.some(e=>Tx(e)):t===void 0?!1:t===null||typeof t!="object"?!0:Object.values(t).some(e=>Tx(e))}function Z_({twee:t,nodeId:e,currentEditorLocale:n,definition:r}){let o=t.getNodeById(e),i=o?.propertyValueLocalizability?.[r.id],s=t.getNodeProperty(e,r?.id),a=$x({lastUserChoice:i,currentValue:s,definition:r});if(o&&a!==void 0&&a!==(i??!1)&&t.updateNode({nodeId:e,updateMetadata:l=>{l.propertyValueLocalizability[r.id]=a},doNotSetDirty:!0}),a)return n}function xk({twee:t,nodeId:e,dataType:n,dataResourceName:r,dataResourceEdit:o}){if(!t.getNodeById(e))throw new Error(`Node with ID ${e} not found`);o.action==="resetOverride"?t.updateNode({nodeId:e,updateDataResources:[{type:"reset",name:r}]}):o.action==="setValue"&&t.updateNode({nodeId:e,updateDataResources:[{type:"set",name:r,value:{type:n,variables:o.newValue}}]})}import{CANVAS_ENRICHMENT_TAG_PARAM as J8e,CANVAS_PERSONALIZATION_ALGORITHM_PARAM as X8e,CANVAS_PERSONALIZATION_PARAM as Q8e,CANVAS_PERSONALIZE_SLOT as eDe,convertToBindExpression as tDe,createVariableReference as nDe,isSystemComponentDefinition as rDe}from"@uniformdev/canvas";var Ck=Object.prototype.hasOwnProperty;function Nr(t,e){var n,r;if(t===e)return!0;if(t&&e&&(n=t.constructor)===e.constructor){if(n===Date)return t.getTime()===e.getTime();if(n===RegExp)return t.toString()===e.toString();if(n===Array){if((r=t.length)===e.length)for(;r--&&Nr(t[r],e[r]););return r===-1}if(!n||typeof t=="object"){r=0;for(n in t)if(Ck.call(t,n)&&++r&&!Ck.call(e,n)||!(n in e)||!Nr(t[n],e[n]))return!1;return Object.keys(e).length===r}}return t!==t&&e!==e}function Nx(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)t[r]=n[r]}return t}var kle={read:function(t){return t[0]==='"'&&(t=t.slice(1,-1)),t.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(t){return encodeURIComponent(t).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function q_(t,e){function n(o,i,s){if(!(typeof document>"u")){s=Nx({},e,s),typeof s.expires=="number"&&(s.expires=new Date(Date.now()+s.expires*864e5)),s.expires&&(s.expires=s.expires.toUTCString()),o=encodeURIComponent(o).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var a="";for(var l in s)s[l]&&(a+="; "+l,s[l]!==!0&&(a+="="+s[l].split(";")[0]));return document.cookie=o+"="+t.write(i,o)+a}}function r(o){if(!(typeof document>"u"||arguments.length&&!o)){for(var i=document.cookie?document.cookie.split("; "):[],s={},a=0;a<i.length;a++){var l=i[a].split("="),c=l.slice(1).join("=");try{var u=decodeURIComponent(l[0]);if(s[u]=t.read(c,u),o===u)break}catch{}}return o?s[o]:s}}return Object.create({set:n,get:r,remove:function(o,i){n(o,"",Nx({},i,{expires:-1}))},withAttributes:function(o){return q_(this.converter,Nx({},this.attributes,o))},withConverter:function(o){return q_(Nx({},this.converter,o),this.attributes)}},{attributes:{value:Object.freeze(e)},converter:{value:Object.freeze(t)}})}var Rle=q_(kle,{path:"/"});function w0(t){return{all:t=t||new Map,on:function(e,n){var r=t.get(e);r?r.push(n):t.set(e,[n])},off:function(e,n){var r=t.get(e);r&&(n?r.splice(r.indexOf(n)>>>0,1):t.set(e,[]))},emit:function(e,n){var r=t.get(e);r&&r.slice().map(function(o){o(n)}),(r=t.get("*"))&&r.slice().map(function(o){o(e,n)})}}}var _k=I(E0(),1);var Ak=I(E0(),1),Mk=I(E0(),1);var Ble=t=>{throw TypeError(t)};var tT=(t,e,n)=>e.has(t)||Ble("Cannot "+n),pn=(t,e,n)=>(tT(t,e,"read from private field"),n?n.call(t):e.get(t));var wk=(t,e,n,r)=>(tT(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),T0=(t,e,n)=>(tT(t,e,"access private method"),n);var zle="_",jle;jle=new WeakMap;var Vle,Ule;Vle=new WeakMap;Ule=new WeakMap;var Hle,Kle,Wle,Gle;Hle=new WeakMap;Kle=new WeakMap;Wle=new WeakMap;Gle=new WeakMap;function Yle(t,e){return`${t}${zle}${e}`}function Zle(t,e){var n;if(typeof t>"u"||t===null)return!1;let r=Number(t);if(isNaN(r))return!1;switch((n=e?.op)!=null?n:"="){case"=":return r===e.rhs;case"!=":return r!==e.rhs;case">":return r>e.rhs;case"<":return r<e.rhs;default:return console.warn(`Unknown match type ${e.op} is false.`),!1}}function qle(t,e){return`${t} ${Jle(e)}`}function Jle(t){return`${t.op} ${t.rhs}`}var J_=Yle("$pvc","v"),Xle=({update:t,criteria:e,commands:n,onLogMessage:r})=>{var o,i;if(e.type!=="PVC")return{result:!1,changed:!1};let s=!!(t.state.url&&(!t.previousState||((o=t.state.url)==null?void 0:o.toString())!==((i=t.previousState.url)==null?void 0:i.toString()))),l=(t.visitor.sessionScores[J_]||0)+1,c={result:!1,changed:s},u=n.some(d=>d.type==="modscoreS"&&d.data.dimension===J_);return s&&!u&&n.push({type:"modscoreS",data:{dimension:J_,delta:1}}),Zle(l,e.match)&&(c.result=!0),r?.(["debug",203,{criteria:e,result:c,explanation:qle(l,e.match)}]),c};Xle.alwaysExecute=!0;var Qle;Qle=new WeakMap;var Ek="ssc";var ece,tce,nce;ece=new WeakMap;tce=new WeakMap;nce=new WeakMap;var X_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",nIe=X_.split(""),rce=new Array(123);for(let t=0;t<X_.length;t++)rce[X_.charCodeAt(t)]=t;var oce,ice,sce,ace;oce=new WeakMap;ice=new WeakMap;sce=new WeakMap;ace=new WeakMap;var lce,cce;lce=new WeakSet;cce=async function(){let t=await new Promise(e=>{setTimeout(()=>{e(void 0)},2e3)});t&&this.signalAsyncDataUpdate(t)};var uce=()=>({quirks:{},scores:{},sessionScores:{},tests:{},goals:{},consent:!1,controlGroup:!1,personalizeVariants:{}}),iIe=(0,_k.default)();var dce,fce;dce=new WeakSet;fce=function(t){return this.partitionKey?`${this.partitionKey}.${t}`:t};var Tk="ufvisitor",Id,nT,Dx,xi,_0,$k,pce,Nk,mce,Q_,gce;Id=new WeakMap;nT=new WeakMap;Dx=new WeakMap;xi=new WeakMap;_0=new WeakSet;$k=function(){return pn(this,nT).get(Tk)};pce=function(t,e=!1){var n,r,o,i,s,a,l,c,u,d,f;let p=pn(this,_0,$k),m=Date.now();T0(this,_0,Q_).call(this,t.scores),T0(this,_0,Q_).call(this,t.sessionScores),(r=(n=pn(this,xi)).decay)==null||r.call(n,{now:m,lastUpd:p?.updated,scores:t.scores,sessionScores:t.sessionScores,onLogMessage:pn(this,xi).onLogMessage});let g=!Nr(p?.visitorData.scores,t.scores),h=!Nr(p?.visitorData.sessionScores,t.sessionScores),v=!Nr(p?.visitorData.quirks,t.quirks),y=!Nr(p?.visitorData.tests,t.tests),b=!Nr(p?.visitorData.goals,t.goals),S={updated:m,visitorData:t};if(T0(this,_0,Nk).call(this),pn(this,nT).set(Tk,S,!!t.consent),(i=(o=pn(this,xi)).onLogMessage)==null||i.call(o,["debug",102,t]),!e&&((g||h)&&pn(this,Id).emit("scoresUpdated",t),v&&pn(this,Id).emit("quirksUpdated",t),y&&pn(this,Id).emit("testsUpdated",t),((s=p?.visitorData)==null?void 0:s.consent)!==t.consent&&pn(this,Id).emit("consentUpdated",t),((a=p?.visitorData)==null?void 0:a.controlGroup)!==t.controlGroup&&(pn(this,Id).emit("controlGroupUpdated",t),(u=(c=pn(this,xi)).onLogMessage)==null||u.call(c,["debug",104,(l=t.controlGroup)!=null?l:!1])),b)){let x=Object.keys((d=t.goals)!=null?d:{});for(let w=0;w<x.length;w++){let E=x[w];(f=p?.visitorData.goals)!=null&&f[E]||pn(this,Id).emit("goalConverted",{goalId:E})}}};Nk=function(){typeof document>"u"||!pn(this,xi).visitLifespan||(pn(this,Dx)&&window.clearTimeout(pn(this,Dx)),wk(this,Dx,window.setTimeout(()=>{this.data},pn(this,xi).visitLifespan+50)))};mce=function(t){let e=pn(this,xi).visitLifespan;return e?t.updated+e<Date.now():!1};Q_=function(t){var e,n;if(pn(this,xi).manifest)for(let r in t){let o=t[r],i=pn(this,xi).manifest.getDimensionByKey(r);i&&o>i.cap&&((n=(e=pn(this,xi)).onLogMessage)==null||n.call(e,["debug",110,{dim:r,score:o,cap:i.cap}]),t[r]=i.cap)}};gce=function(){var t,e,n;return{...uce(),consent:(t=pn(this,xi).defaultConsent)!=null?t:!1,controlGroup:(n=(e=pn(this,xi).manifest)==null?void 0:e.rollForControlGroup())!=null?n:!1}};var hce,vce,Lx,yce,bce,xce,Cce,Sce,Ax,eT,wce,Dk,Ece,Lk;hce=new WeakMap;vce=new WeakMap;Lx=new WeakMap;yce=new WeakMap;bce=new WeakMap;xce=new WeakMap;Cce=new WeakMap;Sce=new WeakMap;Ax=new WeakMap;eT=new WeakSet;wce=function(t){pn(this,Ax).emit("testResult",t)};Dk=async function(t){let e=this.manifest.computeGoals(t);e.length!==0&&await this.storage.updateData(e)};Ece=function(t){let e=T0(this,eT,Lk).call(this,t);!Nr(e,pn(this,Lx))&&(wk(this,Lx,e),T0(this,eT,Dk).call(this,{scores:pn(this,Lx),quirks:void 0}),pn(this,Ax).emit("scoresUpdated",e),pn(this,Ax).emit("log",["info",3,e]))};Lk=function(t){var e;let n={...t.scores};for(let r in t.sessionScores)n[r]=((e=n[r])!=null?e:0)+t.sessionScores[r];return n=this.manifest.computeAggregateDimensions(n),n};var lIe=(0,Ak.default)();var cIe=(0,Mk.default)();await Jm();var C1e=await(process.env.NODE_ENV!=="production"?VV().then(()=>jV):HV().then(()=>UV)),KV=C1e.createHeadlessEditor;await g4();await I4();await V4();await BW();await c3();await dG();await Qi();await or();import{createVariableReference as U8e}from"@uniformdev/canvas";var Bu=I(Xn());p9();var yVe=I(H());Vg();var xVe=I(g9());J1();var SVe=I(s9());Hg();Kg();A3();var ui=Bu.Fragment,O=function(e,n,r){return Lf.call(n,"css")?Bu.jsx(rv,nv(e,n),r):Bu.jsx(e,n,r)},ie=function(e,n,r){return Lf.call(n,"css")?Bu.jsxs(rv,nv(e,n),r):Bu.jsxs(e,n,r)};ne();ne();ne();ne();ne();function lY(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];t&&t.addEventListener&&t.addEventListener.apply(t,e)}function cY(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];t&&t.removeEventListener&&t.removeEventListener.apply(t,e)}var uY=typeof window<"u";var dY=I(H());var Ps=I(H());function v9(t,e){e===void 0&&(e=0);var n=(0,Ps.useRef)(!1),r=(0,Ps.useRef)(),o=(0,Ps.useRef)(t),i=(0,Ps.useCallback)(function(){return n.current},[]),s=(0,Ps.useCallback)(function(){n.current=!1,r.current&&clearTimeout(r.current),r.current=setTimeout(function(){n.current=!0,o.current()},e)},[e]),a=(0,Ps.useCallback)(function(){n.current=null,r.current&&clearTimeout(r.current)},[]);return(0,Ps.useEffect)(function(){o.current=t},[t]),(0,Ps.useEffect)(function(){return s(),a},[e]),[i,a,s]}function k3(t,e,n){e===void 0&&(e=0),n===void 0&&(n=[]);var r=v9(t,e),o=r[0],i=r[1],s=r[2];return(0,dY.useEffect)(s,n),[o,i]}var Gg=I(H());var rCe=function(t){return t===void 0&&(t={laptopL:1440,laptop:1024,tablet:768}),function(){var e=(0,Gg.useState)(uY?window.innerWidth:0),n=e[0],r=e[1];(0,Gg.useEffect)(function(){var s=function(){r(window.innerWidth)};return s(),lY(window,"resize",s),function(){cY(window,"resize",s)}});var o=(0,Gg.useMemo)(function(){return Object.entries(t).sort(function(s,a){return s[1]>=a[1]?1:-1})},[t]),i=o.reduce(function(s,a){var l=a[0],c=a[1];return n>=c?l:s},o[0][0]);return i}},y9=rCe;ne();ne();ne();var s$e=I(H());ne();ne();function Af(...t){}function ov(t,e){if(oCe(t)){let n=iCe(e)?e():e;return t(n)}return t}function oCe(t){return typeof t=="function"}function iCe(t){return typeof t=="function"}function Po(t,e){return typeof Object.hasOwn=="function"?Object.hasOwn(t,e):Object.prototype.hasOwnProperty.call(t,e)}function An(...t){return(...e)=>{for(let n of t)typeof n=="function"&&n(...e)}}function b9(t){return t.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function x9(t,e){let n={...t};for(let r of e)Po(n,r)&&delete n[r];return n}function C9(t,e){let n={};for(let r of e)Po(t,r)&&(n[r]=t[r]);return n}function iv(t){return t}function ft(t,e){if(!t)throw typeof e!="string"?new Error("Invariant failed"):new Error(e)}function S9(t){return Object.keys(t)}function Fa(t,...e){let n=typeof t=="function"?t(...e):t;return n==null?!1:!n}function Fs(t){return t.disabled||t["aria-disabled"]===!0||t["aria-disabled"]==="true"}function Fo(t){let e={};for(let n in t)t[n]!==void 0&&(e[n]=t[n]);return e}function tt(...t){for(let e of t)if(e!==void 0)return e}var fY=I(H(),1);function sv(t,e){typeof t=="function"?t(e):t&&(t.current=e)}function sCe(t){return!t||!(0,fY.isValidElement)(t)?!1:"ref"in t.props||"ref"in t}function pY(t){return sCe(t)?{...t.props}.ref||t.ref:null}function mY(t,e){let n={...t};for(let r in e){if(!Po(e,r))continue;if(r==="className"){let i="className";n[i]=t[i]?`${t[i]} ${e[i]}`:e[i];continue}if(r==="style"){let i="style";n[i]=t[i]?{...t[i],...e[i]}:e[i];continue}let o=e[r];if(typeof o=="function"&&r.startsWith("on")){let i=t[r];if(typeof i=="function"){n[r]=(...s)=>{o(...s),i(...s)};continue}}n[r]=o}return n}var Yl=aCe();function aCe(){var t;return typeof window<"u"&&!!((t=window.document)!=null&&t.createElement)}function _t(t){return t?"self"in t?t.document:t.ownerDocument||document:document}function Mf(t){return t?"self"in t?t.self:_t(t).defaultView||window:self}function $i(t,e=!1){let{activeElement:n}=_t(t);if(!n?.nodeName)return null;if(av(n)&&n.contentDocument)return $i(n.contentDocument.body,e);if(e){let r=n.getAttribute("aria-activedescendant");if(r){let o=_t(n).getElementById(r);if(o)return o}}return n}function Ut(t,e){return t===e||t.contains(e)}function av(t){return t.tagName==="IFRAME"}function di(t){let e=t.tagName.toLowerCase();return e==="button"?!0:e==="input"&&t.type?lCe.indexOf(t.type)!==-1:!1}var lCe=["button","color","file","image","reset","submit"];function lv(t){if(typeof t.checkVisibility=="function")return t.checkVisibility();let e=t;return e.offsetWidth>0||e.offsetHeight>0||t.getClientRects().length>0}function Bo(t){try{let e=t instanceof HTMLInputElement&&t.selectionStart!==null,n=t.tagName==="TEXTAREA";return e||n||!1}catch{return!1}}function cv(t){return t.isContentEditable||Bo(t)}function w9(t){if(Bo(t))return t.value;if(t.isContentEditable){let e=_t(t).createRange();return e.selectNodeContents(t),e.toString()}return""}function E9(t){let e=0,n=0;if(Bo(t))e=t.selectionStart||0,n=t.selectionEnd||0;else if(t.isContentEditable){let r=_t(t).getSelection();if(r?.rangeCount&&r.anchorNode&&Ut(t,r.anchorNode)&&r.focusNode&&Ut(t,r.focusNode)){let o=r.getRangeAt(0),i=o.cloneRange();i.selectNodeContents(t),i.setEnd(o.startContainer,o.startOffset),e=i.toString().length,i.setEnd(o.endContainer,o.endOffset),n=i.toString().length}}return{start:e,end:n}}function Yg(t,e){let n=["dialog","menu","listbox","tree","grid"],r=t?.getAttribute("role");return r&&n.indexOf(r)!==-1?r:e}function uv(t,e){var n;let r={menu:"menuitem",listbox:"option",tree:"treeitem"},o=Yg(t);return o&&(n=r[o])!=null?n:e}function R3(t){if(!t)return null;let e=n=>n==="auto"||n==="scroll";if(t.clientHeight&&t.scrollHeight>t.clientHeight){let{overflowY:n}=getComputedStyle(t);if(e(n))return t}else if(t.clientWidth&&t.scrollWidth>t.clientWidth){let{overflowX:n}=getComputedStyle(t);if(e(n))return t}return R3(t.parentElement)||document.scrollingElement||document.body}function dv(t,e){let n=t.map((o,i)=>[i,o]),r=!1;return n.sort(([o,i],[s,a])=>{let l=e(i),c=e(a);return l===c||!l||!c?0:cCe(l,c)?(o>s&&(r=!0),-1):(o<s&&(r=!0),1)}),r?n.map(([o,i])=>i):t}function cCe(t,e){return!!(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_PRECEDING)}function gY(){return Yl&&!!navigator.maxTouchPoints}function Zg(){return Yl?/mac|iphone|ipad|ipod/i.test(navigator.platform):!1}function Of(){return Yl&&Zg()&&/apple/i.test(navigator.vendor)}function _9(){return Yl&&/firefox\//i.test(navigator.userAgent)}function T9(){return Yl&&navigator.platform.startsWith("Mac")&&!gY()}function P3(t){return!!(t.currentTarget&&!Ut(t.currentTarget,t.target))}function qr(t){return t.target===t.currentTarget}function hY(t){let e=t.currentTarget;if(!e)return!1;let n=Zg();if(n&&!t.metaKey||!n&&!t.ctrlKey)return!1;let r=e.tagName.toLowerCase();return r==="a"||r==="button"&&e.type==="submit"||r==="input"&&e.type==="submit"}function vY(t){let e=t.currentTarget;if(!e)return!1;let n=e.tagName.toLowerCase();return t.altKey?n==="a"||n==="button"&&e.type==="submit"||n==="input"&&e.type==="submit":!1}function yY(t,e,n){let r=new Event(e,n);return t.dispatchEvent(r)}function If(t,e){let n=new FocusEvent("blur",e),r=t.dispatchEvent(n),o={...e,bubbles:!0};return t.dispatchEvent(new FocusEvent("focusout",o)),r}function bY(t,e,n){let r=new KeyboardEvent(e,n);return t.dispatchEvent(r)}function $9(t,e){let n=new MouseEvent("click",e);return t.dispatchEvent(n)}function zu(t,e){let n=e||t.currentTarget,r=t.relatedTarget;return!r||!Ut(n,r)}function ju(t,e,n,r){let i=(a=>{if(r){let c=setTimeout(a,r);return()=>clearTimeout(c)}let l=requestAnimationFrame(a);return()=>cancelAnimationFrame(l)})(()=>{t.removeEventListener(e,s,!0),n()}),s=()=>{i(),n()};return t.addEventListener(e,s,{once:!0,capture:!0}),i}function zn(t,e,n,r=window){let o=[];try{r.document.addEventListener(t,e,n);for(let s of Array.from(r.frames))o.push(zn(t,e,n,s))}catch{}return()=>{try{r.document.removeEventListener(t,e,n)}catch{}for(let s of o)s()}}var uCe=I(H(),1),jn=I(H(),1),N9={...uCe},xY=N9.useId,lUe=N9.useDeferredValue,CY=N9.useInsertionEffect,vt=Yl?jn.useLayoutEffect:jn.useEffect;function B3(t){let e=(0,jn.useRef)(t);return vt(()=>{e.current=t}),e}function Ie(t){let e=(0,jn.useRef)(()=>{throw new Error("Cannot call an event handler while rendering.")});return CY?CY(()=>{e.current=t}):e.current=t,(0,jn.useCallback)((...n)=>{var r;return(r=e.current)==null?void 0:r.call(e,...n)},[])}function _Y(t){let[e,n]=(0,jn.useState)(null);return vt(()=>{if(e==null||!t)return;let r=null;return t(o=>(r=o,e)),()=>{t(r)}},[e,t]),[e,n]}function ht(...t){return(0,jn.useMemo)(()=>{if(t.some(Boolean))return e=>{for(let n of t)sv(n,e)}},t)}function fi(t){if(xY){let r=xY();return t||r}let[e,n]=(0,jn.useState)(t);return vt(()=>{if(t||e)return;let r=Math.random().toString(36).slice(2,8);n(`id-${r}`)},[t,e]),t||e}function z3(t,e){let n=i=>{if(typeof i=="string")return i},[r,o]=(0,jn.useState)(()=>n(e));return vt(()=>{let i=t&&"current"in t?t.current:t;o(i?.tagName.toLowerCase()||n(e))},[t,e]),r}function Vu(t,e){let n=(0,jn.useRef)(!1);(0,jn.useEffect)(()=>{if(n.current)return t();n.current=!0},e),(0,jn.useEffect)(()=>()=>{n.current=!1},[])}function TY(){return(0,jn.useReducer)(()=>[],[])}function lr(t){return Ie(typeof t=="function"?t:()=>t)}function xn(t,e,n=[]){let r=(0,jn.useCallback)(o=>(t.wrapElement&&(o=t.wrapElement(o)),e(o)),[...n,t.wrapElement]);return{...t,wrapElement:r}}function qg(t=!1,e){let[n,r]=(0,jn.useState)(null);return{portalRef:ht(r,e),portalNode:n,domReady:!t||n}}function j3(t,e,n){let r=t.onLoadedMetadataCapture,o=(0,jn.useMemo)(()=>Object.assign(()=>{},{...r,[e]:n}),[r,e,n]);return[r?.[e],{onLoadedMetadataCapture:o}]}var SY=!1;function Jg(){return(0,jn.useEffect)(()=>{SY||(zn("mousemove",fCe,!0),zn("mousedown",F3,!0),zn("mouseup",F3,!0),zn("keydown",F3,!0),zn("scroll",F3,!0),SY=!0)},[]),Ie(()=>D9)}var D9=!1,wY=0,EY=0;function dCe(t){let e=t.movementX||t.screenX-wY,n=t.movementY||t.screenY-EY;return wY=t.screenX,EY=t.screenY,e||n||process.env.NODE_ENV==="test"}function fCe(t){dCe(t)&&(D9=!0)}function F3(){D9=!1}var zo=I(H(),1),kf=I(Xn(),1);function Ee(t){let e=zo.forwardRef((n,r)=>t({...n,ref:r}));return e.displayName=t.displayName||t.name,e}function Uu(t,e){return zo.memo(t,e)}function $e(t,e){let{wrapElement:n,render:r,...o}=e,i=ht(e.ref,pY(r)),s;if(zo.isValidElement(r)){let a={...r.props,ref:i};s=zo.cloneElement(r,mY(o,a))}else r?s=r(o):s=(0,kf.jsx)(t,{...o});return n?n(s):s}function De(t){let e=(n={})=>t(n);return e.displayName=t.name,e}function br(t=[],e=[]){let n=zo.createContext(void 0),r=zo.createContext(void 0),o=()=>zo.useContext(n),i=(c=!1)=>{let u=zo.useContext(r),d=o();return c?u:u||d},s=()=>{let c=zo.useContext(r),u=o();if(!(c&&c===u))return u},a=c=>t.reduceRight((u,d)=>(0,kf.jsx)(d,{...c,children:u}),(0,kf.jsx)(n.Provider,{...c}));return{context:n,scopedContext:r,useContext:o,useScopedContext:i,useProviderContext:s,ContextProvider:a,ScopedContextProvider:c=>(0,kf.jsx)(a,{...c,children:e.reduceRight((u,d)=>(0,kf.jsx)(d,{...c,children:u}),(0,kf.jsx)(r.Provider,{...c}))})}}var fv=br(),$Y=fv.useContext,mUe=fv.useScopedContext,gUe=fv.useProviderContext,NY=fv.ContextProvider,DY=fv.ScopedContextProvider;var L9=I(H(),1),pv=br([NY],[DY]),Xg=pv.useContext,bUe=pv.useScopedContext,LY=pv.useProviderContext,Hu=pv.ContextProvider,Qg=pv.ScopedContextProvider,AY=(0,L9.createContext)(void 0),MY=(0,L9.createContext)(void 0);var pCe={id:null};function OY(t,e,n=!1){let r=t.findIndex(o=>o.id===e);return[...t.slice(r+1),...n?[pCe]:[],...t.slice(0,r)]}function IY(t,e){return t.find(n=>e?!n.disabled&&n.id!==e:!n.disabled)}function Ba(t,e){return e&&t.item(e)||null}function kY(t){let e=[];for(let n of t){let r=e.find(o=>{var i;return((i=o[0])==null?void 0:i.rowId)===n.rowId});r?r.push(n):e.push([n])}return e}function RY(t,e=!1){if(Bo(t))t.setSelectionRange(e?t.value.length:0,t.value.length);else if(t.isContentEditable){let n=_t(t).getSelection();n?.selectAllChildren(t),e&&n?.collapseToEnd()}}var A9=Symbol("FOCUS_SILENTLY");function PY(t){t[A9]=!0,t.focus({preventScroll:!0})}function FY(t){let e=t[A9];return delete t[A9],e}function Rf(t,e,n){if(!e||e===n)return!1;let r=t.item(e.id);return!(!r||n&&r.element===n)}var V3=I(H(),1),mCe="div",M9=De(function({store:e,shouldRegisterItem:n=!0,getItem:r=iv,element:o,...i}){let s=$Y();e=e||s;let a=fi(i.id),l=(0,V3.useRef)(o);return(0,V3.useEffect)(()=>{let c=l.current;if(!a||!c||!n)return;let u=r({id:a,element:c});return e?.renderItem(u)},[a,n,r,e]),i={...i,ref:ht(l,i.ref)},Fo(i)}),$Ue=Ee(function(e){let n=M9(e);return $e(mCe,n)});var BY=I(H(),1),U3=(0,BY.createContext)(!0);var H3="input:not([type='hidden']):not([disabled]), select:not([disabled]), textarea:not([disabled]), a[href], button:not([disabled]), [tabindex], summary, iframe, object, embed, area[href], audio[controls], video[controls], [contenteditable]:not([contenteditable='false'])";function gCe(t){return Number.parseInt(t.getAttribute("tabindex")||"0",10)<0}function Ni(t){return!(!t.matches(H3)||!lv(t)||t.closest("[inert]"))}function eh(t){if(!Ni(t)||gCe(t))return!1;if(!("form"in t)||!t.form||t.checked||t.type!=="radio")return!0;let e=t.form.elements.namedItem(t.name);if(!e||!("length"in e))return!0;let n=$i(t);return!n||n===t||!("form"in n)||n.form!==t.form||n.name!==t.name}function O9(t,e){let n=Array.from(t.querySelectorAll(H3));e&&n.unshift(t);let r=n.filter(Ni);return r.forEach((o,i)=>{if(av(o)&&o.contentDocument){let s=o.contentDocument.body;r.splice(i,1,...O9(s))}}),r}function mv(t,e,n){let r=Array.from(t.querySelectorAll(H3)),o=r.filter(eh);return e&&eh(t)&&o.unshift(t),o.forEach((i,s)=>{if(av(i)&&i.contentDocument){let a=i.contentDocument.body,l=mv(a,!1,n);o.splice(s,1,...l)}}),!o.length&&n?r:o}function zY(t,e,n){let[r]=mv(t,e,n);return r||null}function hCe(t,e,n,r){let o=$i(t),i=O9(t,e),s=i.indexOf(o),a=i.slice(s+1);return a.find(eh)||(n?i.find(eh):null)||(r?a[0]:null)||null}function K3(t,e){return hCe(document.body,!1,t,e)}function vCe(t,e,n,r){let o=$i(t),i=O9(t,e).reverse(),s=i.indexOf(o),a=i.slice(s+1);return a.find(eh)||(n?i.find(eh):null)||(r?a[0]:null)||null}function I9(t,e){return vCe(document.body,!1,t,e)}function jY(t){for(;t&&!Ni(t);)t=t.closest(H3);return t||null}function Pf(t){let e=$i(t);if(!e)return!1;if(e===t)return!0;let n=e.getAttribute("aria-activedescendant");return n?n===t.id:!1}function rs(t){let e=$i(t);if(!e)return!1;if(Ut(t,e))return!0;let n=e.getAttribute("aria-activedescendant");return!n||!("id"in t)?!1:n===t.id?!0:!!t.querySelector(`#${CSS.escape(n)}`)}function W3(t){!rs(t)&&Ni(t)&&t.focus()}function yCe(t){var e;let n=(e=t.getAttribute("tabindex"))!=null?e:"";t.setAttribute("data-tabindex",n),t.setAttribute("tabindex","-1")}function VY(t,e){let n=mv(t,e);for(let r of n)yCe(r)}function UY(t){let e=t.querySelectorAll("[data-tabindex]"),n=r=>{let o=r.getAttribute("data-tabindex");r.removeAttribute("data-tabindex"),o?r.setAttribute("tabindex",o):r.removeAttribute("tabindex")};t.hasAttribute("data-tabindex")&&n(t);for(let r of e)n(r)}function HY(t,e){"scrollIntoView"in t?(t.focus({preventScroll:!0}),t.scrollIntoView({block:"nearest",inline:"nearest",...e})):t.focus()}var Di=I(H(),1),bCe="div",KY=Of(),xCe=["text","search","url","tel","email","password","number","date","month","week","time","datetime","datetime-local"],ZY=Symbol("safariFocusAncestor");function qY(t){return t?!!t[ZY]:!1}function WY(t,e){t&&(t[ZY]=e)}function CCe(t){let{tagName:e,readOnly:n,type:r}=t;return e==="TEXTAREA"&&!n||e==="SELECT"&&!n?!0:e==="INPUT"&&!n?xCe.includes(r):!!(t.isContentEditable||t.getAttribute("role")==="combobox"&&t.dataset.name)}function SCe(t){return"labels"in t?t.labels:null}function GY(t){return t.tagName.toLowerCase()==="input"&&t.type?t.type==="radio"||t.type==="checkbox":!1}function wCe(t){return t?t==="button"||t==="summary"||t==="input"||t==="select"||t==="textarea"||t==="a":!0}function ECe(t){return t?t==="button"||t==="input"||t==="select"||t==="textarea":!0}function _Ce(t,e,n,r,o){return t?e?n&&!r?-1:void 0:n?o:o||0:o}function k9(t,e){return Ie(n=>{t?.(n),!n.defaultPrevented&&e&&(n.stopPropagation(),n.preventDefault())})}var YY=!1,R9=!0;function TCe(t){let e=t.target;e&&"hasAttribute"in e&&(e.hasAttribute("data-focus-visible")||(R9=!1))}function $Ce(t){t.metaKey||t.ctrlKey||t.altKey||(R9=!0)}var Zl=De(function({focusable:e=!0,accessibleWhenDisabled:n,autoFocus:r,onFocusVisible:o,...i}){let s=(0,Di.useRef)(null);(0,Di.useEffect)(()=>{e&&(YY||(zn("mousedown",TCe,!0),zn("keydown",$Ce,!0),YY=!0))},[e]),KY&&(0,Di.useEffect)(()=>{if(!e)return;let k=s.current;if(!k||!GY(k))return;let z=SCe(k);if(!z)return;let W=()=>queueMicrotask(()=>k.focus());for(let R of z)R.addEventListener("mouseup",W);return()=>{for(let R of z)R.removeEventListener("mouseup",W)}},[e]);let a=e&&Fs(i),l=!!a&&!n,[c,u]=(0,Di.useState)(!1);(0,Di.useEffect)(()=>{e&&l&&c&&u(!1)},[e,l,c]),(0,Di.useEffect)(()=>{if(!e||!c)return;let k=s.current;if(!k||typeof IntersectionObserver>"u")return;let z=new IntersectionObserver(()=>{Ni(k)||u(!1)});return z.observe(k),()=>z.disconnect()},[e,c]);let d=k9(i.onKeyPressCapture,a),f=k9(i.onMouseDownCapture,a),p=k9(i.onClickCapture,a),m=i.onMouseDown,g=Ie(k=>{if(m?.(k),k.defaultPrevented||!e)return;let z=k.currentTarget;if(!KY||P3(k)||!di(z)&&!GY(z))return;let W=!1,R=()=>{W=!0},F={capture:!0,once:!0};z.addEventListener("focusin",R,F);let K=jY(z.parentElement);WY(K,!0),ju(z,"mouseup",()=>{z.removeEventListener("focusin",R,!0),WY(K,!1),!W&&W3(z)})}),h=(k,z)=>{if(z&&(k.currentTarget=z),!e)return;let W=k.currentTarget;W&&Pf(W)&&(o?.(k),!k.defaultPrevented&&(W.dataset.focusVisible="true",u(!0)))},v=i.onKeyDownCapture,y=Ie(k=>{if(v?.(k),k.defaultPrevented||!e||c||k.metaKey||k.altKey||k.ctrlKey||!qr(k))return;let z=k.currentTarget;ju(z,"focusout",()=>h(k,z))}),b=i.onFocusCapture,S=Ie(k=>{if(b?.(k),k.defaultPrevented||!e)return;if(!qr(k)){u(!1);return}let z=k.currentTarget,W=()=>h(k,z);R9||CCe(k.target)?ju(k.target,"focusout",W):u(!1)}),x=i.onBlur,w=Ie(k=>{x?.(k),e&&zu(k)&&(k.currentTarget.removeAttribute("data-focus-visible"),u(!1))}),E=(0,Di.useContext)(U3),_=Ie(k=>{e&&r&&k&&E&&queueMicrotask(()=>{Pf(k)||Ni(k)&&k.focus()})}),$=z3(s),T=e&&wCe($),N=e&&ECe($),P=i.style,B=(0,Di.useMemo)(()=>l?{pointerEvents:"none",...P}:P,[l,P]);return i={"data-focus-visible":e&&c||void 0,"data-autofocus":r||void 0,"aria-disabled":a||void 0,...i,ref:ht(s,_,i.ref),style:B,tabIndex:_Ce(e,l,T,N,i.tabIndex),disabled:N&&l?!0:void 0,contentEditable:a?void 0:i.contentEditable,onKeyPressCapture:d,onClickCapture:p,onMouseDownCapture:f,onMouseDown:g,onKeyDownCapture:y,onFocusCapture:S,onBlur:w},Fo(i)}),VUe=Ee(function(e){let n=Zl(e);return $e(bCe,n)});var Ku=I(H(),1),NCe="button";function JY(t){if(!t.isTrusted)return!1;let e=t.currentTarget;return t.key==="Enter"?di(e)||e.tagName==="SUMMARY"||e.tagName==="A":t.key===" "?di(e)||e.tagName==="SUMMARY"||e.tagName==="INPUT"||e.tagName==="SELECT":!1}var DCe=Symbol("command"),gv=De(function({clickOnEnter:e=!0,clickOnSpace:n=!0,...r}){let o=(0,Ku.useRef)(null),[i,s]=(0,Ku.useState)(!1);(0,Ku.useEffect)(()=>{o.current&&s(di(o.current))},[]);let[a,l]=(0,Ku.useState)(!1),c=(0,Ku.useRef)(!1),u=Fs(r),[d,f]=j3(r,DCe,!0),p=r.onKeyDown,m=Ie(v=>{p?.(v);let y=v.currentTarget;if(v.defaultPrevented||d||u||!qr(v)||Bo(y)||y.isContentEditable)return;let b=e&&v.key==="Enter",S=n&&v.key===" ",x=v.key==="Enter"&&!e,w=v.key===" "&&!n;if(x||w){v.preventDefault();return}if(b||S){let E=JY(v);if(b){if(!E){v.preventDefault();let{view:_,...$}=v,T=()=>$9(y,$);_9()?ju(y,"keyup",T):queueMicrotask(T)}}else S&&(c.current=!0,E||(v.preventDefault(),l(!0)))}}),g=r.onKeyUp,h=Ie(v=>{if(g?.(v),v.defaultPrevented||d||u||v.metaKey)return;let y=n&&v.key===" ";if(c.current&&y&&(c.current=!1,!JY(v))){v.preventDefault(),l(!1);let b=v.currentTarget,{view:S,...x}=v;queueMicrotask(()=>$9(b,x))}});return r={"data-active":a||void 0,type:i?"button":void 0,...f,...r,ref:ht(o,r.ref),onKeyDown:m,onKeyUp:h},r=Zl(r),r}),JUe=Ee(function(e){let n=gv(e);return $e(NCe,n)});function Ff(t,e){let n=t.__unstableInternals;return ft(n,"Invalid store"),n[e]}function cr(t,...e){let n=t,r=n,o=Symbol(),i=Af,s=new Set,a=new Set,l=new Set,c=new Set,u=new Set,d=new WeakMap,f=new WeakMap,p=_=>(l.add(_),()=>l.delete(_)),m=()=>{let _=s.size,$=Symbol();s.add($);let T=()=>{s.delete($),!s.size&&i()};if(_)return T;let N=S9(n).map(k=>An(...e.map(z=>{var W;let R=(W=z?.getState)==null?void 0:W.call(z);if(R&&Po(R,k))return $r(z,[k],F=>{w(k,F[k],!0)})}))),P=[];for(let k of l)P.push(k());let B=e.map(th);return i=An(...N,...P,...B),T},g=(_,$,T=c)=>(T.add($),f.set($,_),()=>{var N;(N=d.get($))==null||N(),d.delete($),f.delete($),T.delete($)}),h=(_,$)=>g(_,$),v=(_,$)=>(d.set($,$(n,n)),g(_,$)),y=(_,$)=>(d.set($,$(n,r)),g(_,$,u)),b=_=>cr(C9(n,_),E),S=_=>cr(x9(n,_),E),x=()=>n,w=(_,$,T=!1)=>{var N;if(!Po(n,_))return;let P=ov($,n[_]);if(P===n[_])return;if(!T)for(let W of e)(N=W?.setState)==null||N.call(W,_,P);let B=n;n={...n,[_]:P};let k=Symbol();o=k,a.add(_);let z=(W,R,F)=>{var K;let L=f.get(W),M=A=>F?F.has(A):A===_;(!L||L.some(M))&&((K=d.get(W))==null||K(),d.set(W,W(n,R)))};for(let W of c)z(W,B);queueMicrotask(()=>{if(o!==k)return;let W=n;for(let R of u)z(R,r,a);r=W,a.clear()})},E={getState:x,setState:w,__unstableInternals:{setup:p,init:m,subscribe:h,sync:v,batch:y,pick:b,omit:S}};return E}function pi(t,...e){if(t)return Ff(t,"setup")(...e)}function th(t,...e){if(t)return Ff(t,"init")(...e)}function nh(t,...e){if(t)return Ff(t,"subscribe")(...e)}function $r(t,...e){if(t)return Ff(t,"sync")(...e)}function rh(t,...e){if(t)return Ff(t,"batch")(...e)}function Bf(t,...e){if(t)return Ff(t,"omit")(...e)}function P9(t,...e){if(t)return Ff(t,"pick")(...e)}function zf(...t){var e;let n={};for(let o of t){let i=(e=o?.getState)==null?void 0:e.call(o);i&&Object.assign(n,i)}let r=cr(n,...t);return Object.assign({},...t,r)}function ql(t,e){if(process.env.NODE_ENV==="production"||!e)return;let n=Object.entries(t).filter(([i,s])=>i.startsWith("default")&&s!==void 0).map(([i])=>{var s;let a=i.replace("default","");return`${((s=a[0])==null?void 0:s.toLowerCase())||""}${a.slice(1)}`});if(!n.length)return;let r=e.getState();if(n.filter(i=>Po(r,i)).length)throw new Error(`Passing a store prop in conjunction with a default state is not supported.
101
+ ${i}${s?" "+s:""} (${r} ${o}${a?` Request ID: ${a}`:""})`);this.errorMessage=n;this.fetchMethod=r;this.fetchUri=o;this.statusCode=i;this.statusText=s;this.requestId=a;Object.setPrototypeOf(this,t.prototype)}};var px=class t{options;constructor(e){if(!e.apiKey&&!e.bearerToken)throw new Error("You must provide an API key or a bearer token");let n=e.fetch;if(!n)if(typeof window<"u")n=window.fetch.bind(window);else if(typeof fetch<"u")n=fetch;else throw new Error("You must provide or polyfill a fetch implementation when not in a browser");this.options={...e,fetch:n,apiHost:this.ensureApiHost(e.apiHost),apiKey:e.apiKey??null,projectId:e.projectId??null,bearerToken:e.bearerToken??null,limitPolicy:e.limitPolicy??QI,bypassCache:e.bypassCache??!1}}async apiClient(e,n){return(await this.apiClientWithResponse(e,n)).body}async apiClientWithResponse(e,n){return this.options.limitPolicy(async()=>{let r=this.options.apiKey?{"x-api-key":this.options.apiKey}:{Authorization:`Bearer ${this.options.bearerToken}`};this.options.bypassCache&&(r["x-bypass-cache"]="true");let{fetch:o,signal:i}=this.options,a=await qae(()=>o(e.toString(),{...n,signal:i,headers:{...n?.headers,...r}}));if(!a.ok){let l="";try{let c=await a.text();try{let u=JSON.parse(c);u.errorMessage?l=Array.isArray(u.errorMessage)?u.errorMessage.join(", "):u.errorMessage:l=c}catch{l=c}}catch{l="General error"}throw new fx(l,n?.method??"GET",e.toString(),a.status,a.statusText,t.getRequestId(a))}return n?.expectNoContent?{response:a,body:null}:{response:a,body:await a.json()}})}createUrl(e,n,r){let o=new URL(`${r??this.options.apiHost}${e}`);return Object.entries(n??{}).forEach(([i,s])=>{typeof s<"u"&&s!==null&&o.searchParams.append(i,Array.isArray(s)?s.join(","):s?.toString()??"")}),o}ensureApiHost(e){if(!e)return"https://uniform.app";if(!e?.startsWith("http"))throw new Error('Your apiHost must start with "http"');if(e.indexOf("/",8)>-1)throw new Error("Your apiHost must not contain a path element after the domain");if(e.indexOf("?")>-1)throw new Error("Your apiHost must not contain a query string");return e?.endsWith("/")&&(e=e.substring(0,e.length-1)),e}static getRequestId(e){let n=e.headers.get("apigw-requestid");if(n)return n}};async function qae(t){let n=5,r;for(;n>0&&(r=await t(),r.status===429);){let o=0;try{let a=r.clone(),l=a.headers.get("date"),c=l?new Date(l).getTime():void 0,d=(await a.json())?.info?.reset;typeof c=="number"&&typeof d=="number"&&(o=Math.max(0,Math.min(Math.round(1.1*(d-c)),1e4)))}catch{}let i=Math.pow(2,5-n)*333,s=i+Math.round(Math.random()*(i/2))*(Math.random()>.5?1:-1);await new Promise(a=>setTimeout(a,o+s)),n-=1}return r}var mx=class extends px{telemetryContext;constructor(e){e.apiHost||(e.apiHost="https://ai.uniform.global"),super(e),this.telemetryContext=e.telemetryContext}async invoke(e,n){let r={};if(this.telemetryContext){let{threadId:i,uniformClient:s,userAgent:a}=this.telemetryContext;i&&(r["x-thread-id"]=i),s&&(r["x-uniform-client"]=s),a&&(r["user-agent"]=a)}return(await this.apiClientWithResponse(new URL(`/projects/${this.options.projectId}/tools/${e}`,this.options.apiHost),{method:"POST",body:n?JSON.stringify(n):void 0,headers:Object.keys(r).length>0?r:void 0})).body}};var ek={name:"@uniformdev/uniform-mcp",version:"20.47.1",description:"Uniform MCP Server",license:"SEE LICENSE IN LICENSE.txt",bin:{"uniform-mcp":"./dist/index.mjs"},exports:{types:"./dist/index.d.mts",import:"./dist/index.mjs"},sideEffects:!1,scripts:{build:"tsup",dev:"tsup --watch",clean:"rimraf dist",lint:'eslint "src/**/*.{js,ts,tsx}"',format:'prettier --write "src/**/*.{js,ts,tsx}"',mcp:"node dist/index.mjs"},dependencies:{"@modelcontextprotocol/sdk":"1.25.2","@types/uuid":"9.0.4","@uniformdev/canvas":"workspace:*","@uniformdev/project-map":"workspace:*","fast-json-patch":"3.1.1",immer:"10.1.3",jsdom:"24.1.3",uuid:"9.0.1",zod:"3.25.76"},files:["/dist"],publishConfig:{access:"public"},devDependencies:{"@types/jsdom":"^27.0.0","@uniformdev/design-system":"workspace:*","@uniformdev/files":"workspace:*","@uniformdev/mesh-edgehancer-sdk":"workspace:*","@uniformdev/richtext":"workspace:*"}};var nk=process.env.UNIFORM_API_KEY,H_=process.env.UNIFORM_PROJECT_ID,tk=process.env.UNIFORM_API_HOST??"https://uniform.app",Xae=process.env.UNIFORM_AI_API_HOST??"https://ai.uniform.global";if(!nk&&process.env.NODE_ENV!=="test")throw new Error("UNIFORM_API_KEY is not set");if(!H_&&process.env.NODE_ENV!=="test")throw new Error("UNIFORM_PROJECT_ID is not set");var Ce={apiHost:tk,apiKey:nk,projectId:H_,aiApiHost:Xae,baseWebUrl:`${tk}/projects/${H_}`};function Ad(){return new mx({...Ce,apiHost:Ce.aiApiHost,telemetryContext:{userAgent:`uniform-mcp/${ek.version}`,uniformClient:"mcp"}})}function rk(t){t.tool("askQuestion","Ask the Uniform Docs assistant, Una, questions about Uniform features, usage, and best practices",GI.inputSchema.shape,async e=>{let r=await Ad().invoke("askQuestion",e);return{content:[{type:"text",text:JSON.stringify(r,null,2)}]}})}import{autoFixParameterGroups as lk,CanvasClient as hle}from"@uniformdev/canvas";import*as xx from"zod/v3";import Qae from"fast-json-patch";function gx(t,e){return Qae.applyPatch(t,e).newDocument}import*as ea from"zod/v3";var hx=ea.array(ea.object({op:ea.enum(["add","remove","replace"]),path:ea.string().describe("The JSON path to patch"),value:ea.unknown().describe("The value to patch - for remove, leave this blank")}));function ele(t){return Array.isArray(t)&&t.length>0}function ok(t){return!!t&&typeof t=="object"&&"type"in t}function ik(t){return typeof t=="object"&&t!==null&&"root"in t&&ok(t.root)}function Md(t){return"children"in t&&ele(t.children)}var tle=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var nle=({context:t,renderChildren:e})=>{if(!Md(t.currentNode))return"";let n=e(t.currentNode.children);return n.endsWith(" ")?n:`${n} `};var rle=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var ole=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var ile=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var sle=({context:t,renderChildren:e})=>Md(t.currentNode)?`${e(t.currentNode.children)} `:"";var ale=({context:t})=>t.currentNode.text;var lle=()=>" ";var cle=()=>" ",ule=new Map([["text",ale],["tab",lle],["linebreak",cle],["paragraph",rle],["listitem",nle],["heading",tle],["table",ole],["tablecell",ile],["tablerow",sle]]),dle=t=>{let e=ule.get(t.currentNode.type);return e||(({context:n,renderChildren:r})=>Md(n.currentNode)?r(n.currentNode.children):"")};function fle(t,e){let n=[];return e?.ancestorNodes&&(n=n.concat(e.ancestorNodes)),e?.currentNode&&n.unshift(e.currentNode),{...e??{},currentNode:t,ancestorNodes:n}}function K_(t,e){var n;if(!ok(t))return"";let r=fle(t,e),o=(n=r.resolveRenderer)==null?void 0:n.call(r,r);if(typeof o>"u")o=dle(r);else if(o===null)return"";let i=s=>ple(s,r);if(o){let s=o({context:r,renderChildren:i});return r.ancestorNodes.length>0?s:s.trim()}else throw new Error(`There is no renderer for node type: ${r.currentNode.type}`)}function ple(t,e){return Array.isArray(t)?t.map(n=>K_(n,e)).join(""):""}var mle=[{label:"Heading 1",type:"h1"},{label:"Heading 2",type:"h2"},{label:"Heading 3",type:"h3"},{label:"Heading 4",type:"h4"},{label:"Heading 5",type:"h5"},{label:"Heading 6",type:"h6"},{label:"Bullet List",type:"unorderedList"},{label:"Ordered List",type:"orderedList"},{label:"Link",type:"link"},{label:"Blockquote",type:"quote"},{label:"Code Block",type:"code"},{label:"Table",type:"table"},{label:"Asset",type:"asset"},{label:"Dynamic Token",type:"variable"}],gle=[{label:"Bold",type:"bold"},{label:"Italic",type:"italic"},{label:"Underline",type:"underline"},{label:"Strikethrough",type:"strikethrough"},{label:"Code",type:"code"},{label:"Superscript",type:"superscript"},{label:"Subscript",type:"subscript"}];var vx={required:!1,formatting:{builtIn:gle.map(t=>t.type)},elements:{builtIn:mle.map(t=>t.type)},elementsConfig:{asset:{allowedTypes:["image"]}}};import*as pr from"zod/v3";import*as Wt from"zod/v3";var yx=Wt.object({name:Wt.string().describe('Title-cased display name. Ex: "Headline"'),id:Wt.string().describe("The public ID. Must be unique within the current entity fields/parameters."),type:Wt.enum(["text","richText","select","multi-select","number","date","dateTime","checkbox","link","asset","json","contentReference","$enr","group"]).describe("The data type of the property. The group type defines a grouping of other properties."),guidance:Wt.string().describe('Describe what kind of content should be populated, for a LLM to use as a guide. 1-2 sentences max. Ex: "Meta tags based on the content", "2-3 word headline"'),localizable:Wt.boolean().describe("Whether values are stored as locale-specific"),typeConfig:Wt.object({allowedTypes:Wt.array(Wt.enum(["image","video","audio","other"])).optional().describe("The types of asset allowed. ONLY applies when type=asset, omit for other types"),options:Wt.array(Wt.object({text:Wt.string().describe("The text to display to the author"),value:Wt.string().describe("The value to store for the option")})).optional().describe("The author-selectable options for the select property. ONLY applies when type=select or multi-select, omit for other types"),required:Wt.boolean().optional().describe("Whether an author must enter a value for this property"),min:Wt.number().optional().describe("When type=number, this is the smallest allowed value (omit for no minimum). When type=multi-select, this is the minimum number of selections the author must make (omit for no minimum). When type=reference and isMulti=true, this is the minimum number of references the author must select (omit for no minimum). Omit for all other types."),max:Wt.number().optional().describe("When type=number, this is the largest allowed value (omit for no maximum). When type=multi-select, this is the maximum number of selections the author can make (omit for no maximum). When type=reference and isMulti=true, this is the maximum number of references the author can select (omit for no maximum). Omit for all other types."),allowedContentTypes:Wt.array(Wt.string()).optional().describe("When type=reference, this is a list of content type public IDs the author can reference. The content type ID must already exist. Omit for all other types."),isMulti:Wt.boolean().optional().describe("When type=reference, this is whether the author can select multiple referenced entries. When false, only one reference is allowed. Omit for all other types."),childrenParams:Wt.array(Wt.string()).optional().describe("When type=group, this is a list of public IDs of the properties to group. The property ID must be defined within this definition. Omit for all other types."),collapsed:Wt.boolean().optional().describe("When type=group, this is whether the group is collapsed by default."),schema:Wt.any().describe("When type=json, this is an optional JSON schema the property value must follow. Omit for all other types.")}).optional()});var sk=pr.object({name:pr.string().describe('Title-cased display name of the component. Ex: "Hero"'),id:pr.string().describe("Public ID of the component, the camelCase version of name, using only alphanumeric characters"),description:pr.string().describe('Describe the purpose of the component in 1-2 sentences. If the component seems generic, such as "Promo" or "Hero", this should be blank.'),canBeComposition:pr.boolean().describe("True if the component can have pages/compositions created from it. False if it is a part of a page."),parameters:pr.array(yx).describe("The properties of the component. The key is the publicId of the property.").optional(),slots:pr.array(pr.object({name:pr.string().describe('Title-cased display name of the slot. Ex: "Content"'),id:pr.string().describe("The public id of the slot. Must be unique within this component's slots."),allowedComponents:pr.array(pr.string()).describe("The components public IDs allowed in the slot."),minComponents:pr.number().describe("The minimum number of components allowed in the slot. Omit for no minimum.").min(0).optional(),maxComponents:pr.number().describe("The maximum number of components allowed in the slot. Omit for no maximum.").min(1).optional(),inheritAllowedComponents:pr.boolean().describe("Set to false")})).describe("The slots of the component. The key is the publicId of the slot.").optional()});function ak(t){let e=t.slots?.map(o=>({...o,patternsInAllowedComponents:!0,inheritAllowedComponents:!1,maxComponents:o.maxComponents===0?void 0:o.maxComponents,minComponents:o.minComponents===0?void 0:o.minComponents})),n=t.parameters?.find(o=>o.type==="asset"&&typeof o.typeConfig=="object"&&o.typeConfig!==null&&"allowedTypes"in o.typeConfig&&Array.isArray(o.typeConfig.allowedTypes)&&o.typeConfig.allowedTypes?.includes("image"))?.id,r=t.parameters?.find(o=>o.type==="text")?.id;return{...t,slots:e,titleParameter:r,thumbnailParameter:n}}function bx(t){return`${Ce.baseWebUrl}/dashboards/canvas/components/${t}`}function Bp(t,e){let n=t.filter(r=>e===void 0&&r.type==="richText"||e!==void 0&&e.includes(r.id));if(n.length!==0)for(let r of n){if(r.typeConfig===void 0){r.typeConfig=vx;continue}r.typeConfig={...vx,required:r.typeConfig.required??vx.required}}}var vle={action:xx.enum(["create","update","delete"]).describe("The action to perform"),publicId:xx.string().describe("Public ID of the component, the camelCase version of name, using only alphanumeric characters"),component:sk.describe("Full component definition to create. Omit for update or delete.").optional(),patches:hx.describe("JSON patch to apply to the existing component definition. Omit for create or delete.").optional()};function ck(t){t.tool("componentAction","Creates, updates, or deletes a Uniform Component definition (or Composition definition)",vle,async({publicId:e,action:n,component:r,patches:o})=>{let i=new hle(Ce),s=!1;if(n==="create"){if(!r)throw new Error("Component definition is required for create");let a=ak(r);a.parameters&&(s=lk(a.parameters),Bp(a.parameters)),await i.updateComponentDefinition({componentDefinition:a})}if(n==="update"){if(!o)throw new Error("Patches are required for update");let a=await i.getComponentDefinitions({componentId:e});if(!a.componentDefinitions.length)throw new Error(`Component with public ID ${e} does not exist, try creating it instead`);let l=a.componentDefinitions[0],c=l.parameters?.filter(d=>d.type==="richText").map(d=>d.id),u=gx(l,o);if(u.parameters){s=lk(u.parameters);let d=u.parameters?.filter(f=>f.type==="richText").map(f=>f.id).filter(f=>!c?.includes(f));Bp(u.parameters,d)}await i.updateComponentDefinition({componentDefinition:u})}return n==="delete"&&await i.removeComponentDefinition({componentId:e}),{content:[{type:"text",text:JSON.stringify({success:!0,editUrl:bx(e),warning:s?"Issues with parameter group order were fixed. Ensure definition data is re-fetched before any future updates.":void 0},null,2)}]}})}import{CanvasClient as uk}from"@uniformdev/canvas";import*as dk from"zod/v3";var yle={id:dk.string()};function fk(t){t.tool("componentList","Lists all Uniform Component definitions",async()=>{let r=(await new uk(Ce).getComponentDefinitions({includeSystem:!0})).componentDefinitions.map(o=>({id:o.id,name:o.name,type:o.canBeComposition?"composition":"component",description:o.description,editUrl:bx(o.id)}));return{content:[{type:"text",text:JSON.stringify(r,null,2)}]}}),t.tool("componentGet","Gets a Uniform Component definition details (slots, parameters, etc.)",yle,async({id:e})=>{let r=await new uk(Ce).getComponentDefinitions({componentId:e,includeSystem:!0});return{content:[{type:"text",text:JSON.stringify(r.componentDefinitions[0],null,2)}]}})}import*as Xe from"zod/v3";import*as zp from"zod/v3";var Tc=zp.object({componentId:zp.string().describe("ID of the component pattern instance the data resource belongs to - can be created in the same call to this tool"),dataResourceName:zp.string().describe("Name of the data resource to update. Must be defined as a pattern data resource on the pattern, new names cannot be created"),editInstructions:zp.string().describe('Prompt that will be used to generate the data resource value. Omission will leave the value unchanged. To reset an overridden value to pattern default, say "reset override".').optional()}).describe("A value change to a pattern data resource. Omit unchanged data resources.");var ble=Xe.object({parentComponentId:Xe.string().describe("ID of the component the slot belongs to"),slotName:Xe.string().describe("Public ID of the target slot"),slotIndex:Xe.number().describe("Index to insert the new component at. Omit for append.").optional(),newComponentInstanceUuid:Xe.string().uuid().describe("UUID of the new component to create. You MUST generate a valid unique UUID using the `createUuid` tool."),instanceType:Xe.enum(["component","componentPattern"]),componentType:Xe.string().describe("Public ID of the component definition to insert. Component definition must be registered with Uniform. Omit when inserting a component pattern instance.").optional(),componentPatternId:Xe.string().describe("UUID of the component pattern definition to insert. Component pattern must be registered with Uniform. Omit when inserting a component instance.").optional()}),Cx=Xe.object({componentId:Xe.string().describe("ID of the component the parameter belongs to - can be created in the same call to this tool"),parameterId:Xe.string().describe("Public ID of the parameter to update. Must be defined in the component type of the parent componentId"),parameterType:Xe.string().describe("The type of the parameterId as defined on the component definition"),fromLocale:Xe.string().describe("When translating from a different locale, use the locale you are translating from. Omit for non-localized values.").optional(),locale:Xe.string().describe("Locale of the parameter value. Omit for non-localized values.").optional(),editInstructions:Xe.string().describe('Prompt that will be used to generate the parameter value. Omission will leave the value unchanged. To reset an overridden value to pattern default, say "reset override".').optional()}).describe("A value change to a parameter. Omit unchanged parameters."),Sx=Xe.object({createComponentInstances:Xe.array(ble).describe("New components to insert in slots. Do not use for moves or duplications. Omit for delete. These actions are performed before moving, duplicating, or deleting components, and parameter updates.").optional(),moveComponentInstances:Xe.array(Xe.object({componentId:Xe.string().describe("Existing component ID to move. Cannot be root component."),newParentComponentId:Xe.string(),newSlotName:Xe.string().describe("Destination slot to move to"),newSlotIndex:Xe.number().describe("Destination index in the parent slot to move to")})).describe("Moves existing component instances to a new location in a composition. The destination can be the same slot to cause a reorder. Omit for create or delete, or if nothing needs moving. These actions are performed before duplicating or deleting components, and parameter updates.").optional(),duplicateComponentInstances:Xe.array(Xe.string().describe("Component ID to duplicate. Cannot be root component. All descendants of the duplicated component will be duplicated as well. Duplicates are placed in the same slot as the original component, at the end.")).describe("Component instances to duplicate/copy. Omit when empty. These actions are performed before deleting components and parameter updates.").optional(),deleteComponentInstances:Xe.array(Xe.string().describe("Component ID to remove. Cannot be the pattern root component.")).describe("Component instances to delete from slots during an update. Omit for create or delete, or if nothing needs deleting. These actions are performed after moving and duplicating components, and before parameter updates.").optional(),dataResourceUpdates:Xe.array(Tc).describe("Updates to pattern data resources. Use empty array if no changes are needed.").optional()}),$c=Xe.object({enableLocales:Xe.array(Xe.string()).describe("Locales to enable. Omit for no change.").optional(),disableLocales:Xe.array(Xe.string()).describe("Locales to disable. Existing data in disabled locales will be lost. Omit for no change.").optional()}),xle=Xe.object({summary:Xe.string().describe("Short summary of the edit that was made.").optional(),success:Xe.boolean()}),qMe=Xe.object({success:Xe.boolean().describe("Whether all actions were successful"),actionsTaken:Xe.array(xle).describe("Array of individual actions that were taken")});import*as al from"zod/v3";var Cle=Cx.extend({overridable:al.enum(["yes","no"]).describe("Whether the parameter value set on the pattern definition is overridable by pattern consumers. Omit when no change is needed.").optional()}),pk=Sx.extend({name:al.string().describe("Name of the pattern. If the name does not need to be changed, omit this field. Always include for creates.").optional(),type:al.string().describe("Component definition type of the pattern. Must be registered with Uniform. Always include for creates. Omit otherwise.").optional(),description:al.string().describe("Description of the pattern for authors. If the description does not need to be changed, omit this field.").optional(),parameterUpdates:al.array(Cle).describe("Updates to the parameters of the pattern. Use empty array if no changes are needed.").optional(),dataResourceUpdates:al.array(Tc).describe("Updates to the pattern instance data resources. Use empty array if no changes are needed.").optional(),localeUpdates:$c.optional()}).describe("Modification instructions for the pattern");import*as Nc from"zod/v3";var mk=Nc.object({...Sx.shape,name:Nc.string().describe("Name of the composition. If the name does not need to be changed, omit this field. Always include for creates.").optional(),type:Nc.string().describe("Component definition type of the composition. Must be registered with Uniform and have canBeComposition=true in the component definition. Always include for creates. Omit otherwise.").optional(),parameterUpdates:Nc.array(Cx).describe("Updates to the parameters of the pattern. Use empty array if no changes are needed.").optional(),localeUpdates:$c.optional(),dataResourceUpdates:Nc.array(Tc).describe("Updates to pattern instance data resources. Use empty array if no changes are needed.").optional()}).describe("Modification instructions for the composition");import*as ta from"zod/v3";import*as Go from"zod/v3";var W_=Go.object({fieldId:Go.string().describe("Public ID of the field to update. Must be defined in the content type of the parent entry."),fieldType:Go.string().describe("The type of the fieldId as defined on the content type"),fromLocale:Go.string().describe("When translating from a different locale, use the locale you are translating from. Omit for non-localized values.").optional(),locale:Go.string().describe("Locale of the field value. Omit for non-localized values.").optional(),editInstructions:Go.string().describe('Prompt that will be used to generate the field value. Omission will leave the value unchanged. To reset an overridden value to pattern default, say "reset override".').optional()}).describe("A value change to a field. Omit unchanged fields."),gk=Go.object({type:Go.string().describe("Content type of the entry. Must be registered with Uniform. Always include for creates. Omit otherwise.").optional(),slug:Go.string().describe("Slug (human-readable identifier) of the entry. If the slug does not need to be changed, omit this field.").optional(),fieldUpdates:Go.array(W_).describe("Updates to the fields of the entry. Use empty array if no changes are needed.").optional(),localeUpdates:$c.optional(),dataResourceUpdates:Go.array(Tc).describe("Updates to the data resources of the entry. Use empty array if no changes are needed.").optional()}).describe("Modification instructions for the entry");var Sle=W_.extend({overridable:ta.enum(["yes","no"]).describe("Whether the parameter value set on the pattern definition is overridable by pattern consumers. Omit when no change is needed.").optional()}),hk=ta.object({name:ta.string().describe("Name of the entry pattern. If the name does not need to be changed, omit this field. Always include for creates.").optional(),type:ta.string().describe("Content type of the entry pattern. Must be registered with Uniform. Always include for creates. Omit otherwise.").optional(),description:ta.string().describe("Description of the entry pattern for authors. If the description does not need to be changed, omit this field.").optional(),fieldUpdates:ta.array(Sle).describe("Updates to the fields of the entry pattern. Use empty array if no changes are needed.").optional(),localeUpdates:$c.optional()}).describe("Modification instructions for the entry pattern");import*as oo from"zod/v3";import{CANVAS_BLOCK_PARAM_TYPE as aDe}from"@uniformdev/canvas";import{getEffectivePropertyValue as lDe}from"@uniformdev/canvas";import{CANVAS_PERSONALIZATION_PARAM as cDe}from"@uniformdev/canvas";var Od="uniformContentInternalReference";var wle="$p:";function wx(t){return`${wle}${t}`}function vk({slotDefinition:t,slotSectionDefinition:e}){return{slotDefinition:{...t,allowedComponentsIndex:new Set(t?.allowedComponents??[]),maxComponents:t?.maxComponents??Number.MAX_VALUE,minComponents:t?.minComponents??0,allowAllPatternsOfAllowedTypes:!t?.patternsInAllowedComponents},slotSectionDefinition:e?{...e,specificTypesIndex:new Set(e?.specificTypes??[])}:void 0}}import{CANVAS_HYPOTHESIS_PARAM as mOe,CANVAS_LOCALIZATION_SLOT as gOe,CANVAS_LOCALIZATION_TYPE as hOe,CANVAS_PERSONALIZATION_ALGORITHM_PARAM as vOe,CANVAS_PERSONALIZATION_ALGORITHM_TYPE as yOe,CANVAS_PERSONALIZATION_EVENT_NAME_PARAM as bOe,CANVAS_PERSONALIZATION_TAKE_PARAM as xOe,CANVAS_PERSONALIZE_SLOT as COe,CANVAS_PERSONALIZE_TYPE as SOe,CANVAS_SLOT_SECTION_GROUP_TYPE_PARAM as wOe,CANVAS_SLOT_SECTION_MAX_PARAM as EOe,CANVAS_SLOT_SECTION_MIN_PARAM as _Oe,CANVAS_SLOT_SECTION_NAME_PARAM as TOe,CANVAS_SLOT_SECTION_SLOT as $Oe,CANVAS_SLOT_SECTION_SPECIFIC_PARAM as NOe,CANVAS_SLOT_SECTION_TYPE as DOe,CANVAS_TEST_SLOT as LOe,CANVAS_TEST_TYPE as AOe}from"@uniformdev/canvas";var Ele={$personalization:{isNestableIntoItself:!0},$test:void 0,$localization:void 0,$loop:void 0,$slotSection:{isAutoAllowed:!0,isNestableIntoItself:!0,isOnlyAllowedInPatternEditor:!0}},yk=t=>Ele[t];function Ex(t,{slotDefinition:e,slotSectionDefinition:n},r=!1){let o=_le(t,e,r);return n?o?Tle(t,n):!1:o}function _le(t,e,n=!1){let r=yk(t.type);if(r?.isOnlyAllowedInPatternEditor&&!n)return!1;if(r?.isAutoAllowed||e.allowAllComponents)return!0;let o=e.allowedComponentsIndex.has(t.type);return e.allowAllPatternsOfAllowedTypes||!t._pattern?o:e.allowedComponentsIndex.has(wx(t._pattern))||!1}function Tle(t,e){return e.groupType==="inherit"||!e.groupType?!0:e.groupType==="specific"?t._pattern?e.specificTypesIndex.has(wx(t._pattern)):e.specificTypesIndex.has(t.type):e.groupType==="except"?t._pattern?!e.specificTypesIndex.has(wx(t._pattern)):!e.specificTypesIndex.has(t.type):!1}function _x(t,e,n,r){return`ref-${t}-${e}`+(n?`-${n}`:"")+(r!==void 0&&r>-1?`(${r})`:"")}function bk(t,e={}){let{targetLocale:n,enabledLocales:r=[],isPatternParameter:o=!1}=e,i=n??(r.length>0?"${locale}":void 0);return{type:Od,...o?{isPatternParameter:!0}:{},variables:{entryIds:t,...i?{locale:i}:{}}}}import{CANVAS_SLOT_SECTION_GROUP_TYPE_PARAM as $le,CANVAS_SLOT_SECTION_MAX_PARAM as Nle,CANVAS_SLOT_SECTION_MIN_PARAM as Dle,CANVAS_SLOT_SECTION_NAME_PARAM as Lle,CANVAS_SLOT_SECTION_SLOT as Ale,CANVAS_SLOT_SECTION_SPECIFIC_PARAM as Mle,CANVAS_SLOT_SECTION_TYPE as Ole}from"@uniformdev/canvas";var Y_=({twee:t,parentNodeId:e,slotName:n,componentDefinitionsIndex:r})=>{let o=G_({twee:t,parentNodeId:e,slotName:n,componentDefinitionsIndex:r});if(o)return vk(o)};function G_({twee:t,parentNodeId:e,slotName:n,componentDefinitionsIndex:r}){let o=t.getNodeById(e);if(!o)return;if(n===Ale){let c=Ile({node:o,twee:t}),u=t.getParentInfo(e);if(!u)return;let d=G_({parentNodeId:u.parentId,slotName:u.parentName,twee:t,componentDefinitionsIndex:r});return d?{slotDefinition:d.slotDefinition,slotSectionDefinition:c}:void 0}let s=r[o.value.type]?.slots?.find(c=>c.id===n);if(!s)return;if(!s.inheritAllowedComponents)return{slotDefinition:s,slotSectionDefinition:void 0};let a=t.getParentInfo(e);if(!a)return{slotDefinition:s,slotSectionDefinition:void 0};let l=G_({parentNodeId:a.parentId,slotName:a.parentName,twee:t,componentDefinitionsIndex:r});return l?{slotDefinition:l.slotDefinition,slotSectionDefinition:void 0}:{slotDefinition:s,slotSectionDefinition:void 0}}function Ile({node:t,twee:e}){if(t.value.type!==Ole)return;let n=e.getNodeProperty(t.nodeId,$le)?.value??"inherit",r=e.getNodeProperty(t.nodeId,Lle)?.value??"Slot Section",o=Number(e.getNodeProperty(t.nodeId,Dle)?.value),i=Number(e.getNodeProperty(t.nodeId,Nle)?.value),s=e.getNodeProperty(t.nodeId,Mle)?.value??[];return{groupType:n,name:r,specificTypes:s,min:o,max:i}}function $x({definition:t,lastUserChoice:e,currentValue:n}){if(t&&!t.localizable)return!1;if(n){if(n.locales&&Tx(n.locales)||n.localesConditions&&Tx(n.localesConditions))return!0;if(n.value!==void 0||n.conditions!==void 0)return!1}if(e!==void 0)return e;if(t)return!t.notLocalizedByDefault}function Tx(t){return Array.isArray(t)?t.some(e=>Tx(e)):t===void 0?!1:t===null||typeof t!="object"?!0:Object.values(t).some(e=>Tx(e))}function Z_({twee:t,nodeId:e,currentEditorLocale:n,definition:r}){let o=t.getNodeById(e),i=o?.propertyValueLocalizability?.[r.id],s=t.getNodeProperty(e,r?.id),a=$x({lastUserChoice:i,currentValue:s,definition:r});if(o&&a!==void 0&&a!==(i??!1)&&t.updateNode({nodeId:e,updateMetadata:l=>{l.propertyValueLocalizability[r.id]=a},doNotSetDirty:!0}),a)return n}function xk({twee:t,nodeId:e,dataType:n,dataResourceName:r,dataResourceEdit:o}){if(!t.getNodeById(e))throw new Error(`Node with ID ${e} not found`);o.action==="resetOverride"?t.updateNode({nodeId:e,updateDataResources:[{type:"reset",name:r}]}):o.action==="setValue"&&t.updateNode({nodeId:e,updateDataResources:[{type:"set",name:r,value:{type:n,variables:o.newValue}}]})}import{CANVAS_ENRICHMENT_TAG_PARAM as J8e,CANVAS_PERSONALIZATION_ALGORITHM_PARAM as X8e,CANVAS_PERSONALIZATION_PARAM as Q8e,CANVAS_PERSONALIZE_SLOT as eDe,convertToBindExpression as tDe,createVariableReference as nDe,isSystemComponentDefinition as rDe}from"@uniformdev/canvas";var Ck=Object.prototype.hasOwnProperty;function Nr(t,e){var n,r;if(t===e)return!0;if(t&&e&&(n=t.constructor)===e.constructor){if(n===Date)return t.getTime()===e.getTime();if(n===RegExp)return t.toString()===e.toString();if(n===Array){if((r=t.length)===e.length)for(;r--&&Nr(t[r],e[r]););return r===-1}if(!n||typeof t=="object"){r=0;for(n in t)if(Ck.call(t,n)&&++r&&!Ck.call(e,n)||!(n in e)||!Nr(t[n],e[n]))return!1;return Object.keys(e).length===r}}return t!==t&&e!==e}function Nx(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)t[r]=n[r]}return t}var kle={read:function(t){return t[0]==='"'&&(t=t.slice(1,-1)),t.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(t){return encodeURIComponent(t).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function q_(t,e){function n(o,i,s){if(!(typeof document>"u")){s=Nx({},e,s),typeof s.expires=="number"&&(s.expires=new Date(Date.now()+s.expires*864e5)),s.expires&&(s.expires=s.expires.toUTCString()),o=encodeURIComponent(o).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var a="";for(var l in s)s[l]&&(a+="; "+l,s[l]!==!0&&(a+="="+s[l].split(";")[0]));return document.cookie=o+"="+t.write(i,o)+a}}function r(o){if(!(typeof document>"u"||arguments.length&&!o)){for(var i=document.cookie?document.cookie.split("; "):[],s={},a=0;a<i.length;a++){var l=i[a].split("="),c=l.slice(1).join("=");try{var u=decodeURIComponent(l[0]);if(s[u]=t.read(c,u),o===u)break}catch{}}return o?s[o]:s}}return Object.create({set:n,get:r,remove:function(o,i){n(o,"",Nx({},i,{expires:-1}))},withAttributes:function(o){return q_(this.converter,Nx({},this.attributes,o))},withConverter:function(o){return q_(Nx({},this.converter,o),this.attributes)}},{attributes:{value:Object.freeze(e)},converter:{value:Object.freeze(t)}})}var Rle=q_(kle,{path:"/"});function w0(t){return{all:t=t||new Map,on:function(e,n){var r=t.get(e);r?r.push(n):t.set(e,[n])},off:function(e,n){var r=t.get(e);r&&(n?r.splice(r.indexOf(n)>>>0,1):t.set(e,[]))},emit:function(e,n){var r=t.get(e);r&&r.slice().map(function(o){o(n)}),(r=t.get("*"))&&r.slice().map(function(o){o(e,n)})}}}var _k=I(E0(),1);var Ak=I(E0(),1),Mk=I(E0(),1);var Ble=t=>{throw TypeError(t)};var tT=(t,e,n)=>e.has(t)||Ble("Cannot "+n),pn=(t,e,n)=>(tT(t,e,"read from private field"),n?n.call(t):e.get(t));var wk=(t,e,n,r)=>(tT(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),T0=(t,e,n)=>(tT(t,e,"access private method"),n);var zle="_",jle;jle=new WeakMap;var Vle,Ule;Vle=new WeakMap;Ule=new WeakMap;var Hle,Kle,Wle,Gle;Hle=new WeakMap;Kle=new WeakMap;Wle=new WeakMap;Gle=new WeakMap;function Yle(t,e){return`${t}${zle}${e}`}function Zle(t,e){var n;if(typeof t>"u"||t===null)return!1;let r=Number(t);if(isNaN(r))return!1;switch((n=e?.op)!=null?n:"="){case"=":return r===e.rhs;case"!=":return r!==e.rhs;case">":return r>e.rhs;case"<":return r<e.rhs;default:return console.warn(`Unknown match type ${e.op} is false.`),!1}}function qle(t,e){return`${t} ${Jle(e)}`}function Jle(t){return`${t.op} ${t.rhs}`}var J_=Yle("$pvc","v"),Xle=({update:t,criteria:e,commands:n,onLogMessage:r})=>{var o,i;if(e.type!=="PVC")return{result:!1,changed:!1};let s=!!(t.state.url&&(!t.previousState||((o=t.state.url)==null?void 0:o.toString())!==((i=t.previousState.url)==null?void 0:i.toString()))),l=(t.visitor.sessionScores[J_]||0)+1,c={result:!1,changed:s},u=n.some(d=>d.type==="modscoreS"&&d.data.dimension===J_);return s&&!u&&n.push({type:"modscoreS",data:{dimension:J_,delta:1}}),Zle(l,e.match)&&(c.result=!0),r?.(["debug",203,{criteria:e,result:c,explanation:qle(l,e.match)}]),c};Xle.alwaysExecute=!0;var Qle;Qle=new WeakMap;var Ek="ssc";var ece,tce,nce;ece=new WeakMap;tce=new WeakMap;nce=new WeakMap;var X_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",nIe=X_.split(""),rce=new Array(123);for(let t=0;t<X_.length;t++)rce[X_.charCodeAt(t)]=t;var oce,ice,sce,ace;oce=new WeakMap;ice=new WeakMap;sce=new WeakMap;ace=new WeakMap;var lce,cce;lce=new WeakSet;cce=async function(){let t=await new Promise(e=>{setTimeout(()=>{e(void 0)},2e3)});t&&this.signalAsyncDataUpdate(t)};var uce=()=>({quirks:{},scores:{},sessionScores:{},tests:{},goals:{},consent:!1,controlGroup:!1,personalizeVariants:{}}),iIe=(0,_k.default)();var dce,fce;dce=new WeakSet;fce=function(t){return this.partitionKey?`${this.partitionKey}.${t}`:t};var Tk="ufvisitor",Id,nT,Dx,xi,_0,$k,pce,Nk,mce,Q_,gce;Id=new WeakMap;nT=new WeakMap;Dx=new WeakMap;xi=new WeakMap;_0=new WeakSet;$k=function(){return pn(this,nT).get(Tk)};pce=function(t,e=!1){var n,r,o,i,s,a,l,c,u,d,f;let p=pn(this,_0,$k),m=Date.now();T0(this,_0,Q_).call(this,t.scores),T0(this,_0,Q_).call(this,t.sessionScores),(r=(n=pn(this,xi)).decay)==null||r.call(n,{now:m,lastUpd:p?.updated,scores:t.scores,sessionScores:t.sessionScores,onLogMessage:pn(this,xi).onLogMessage});let g=!Nr(p?.visitorData.scores,t.scores),h=!Nr(p?.visitorData.sessionScores,t.sessionScores),v=!Nr(p?.visitorData.quirks,t.quirks),y=!Nr(p?.visitorData.tests,t.tests),b=!Nr(p?.visitorData.goals,t.goals),S={updated:m,visitorData:t};if(T0(this,_0,Nk).call(this),pn(this,nT).set(Tk,S,!!t.consent),(i=(o=pn(this,xi)).onLogMessage)==null||i.call(o,["debug",102,t]),!e&&((g||h)&&pn(this,Id).emit("scoresUpdated",t),v&&pn(this,Id).emit("quirksUpdated",t),y&&pn(this,Id).emit("testsUpdated",t),((s=p?.visitorData)==null?void 0:s.consent)!==t.consent&&pn(this,Id).emit("consentUpdated",t),((a=p?.visitorData)==null?void 0:a.controlGroup)!==t.controlGroup&&(pn(this,Id).emit("controlGroupUpdated",t),(u=(c=pn(this,xi)).onLogMessage)==null||u.call(c,["debug",104,(l=t.controlGroup)!=null?l:!1])),b)){let x=Object.keys((d=t.goals)!=null?d:{});for(let w=0;w<x.length;w++){let E=x[w];(f=p?.visitorData.goals)!=null&&f[E]||pn(this,Id).emit("goalConverted",{goalId:E})}}};Nk=function(){typeof document>"u"||!pn(this,xi).visitLifespan||(pn(this,Dx)&&window.clearTimeout(pn(this,Dx)),wk(this,Dx,window.setTimeout(()=>{this.data},pn(this,xi).visitLifespan+50)))};mce=function(t){let e=pn(this,xi).visitLifespan;return e?t.updated+e<Date.now():!1};Q_=function(t){var e,n;if(pn(this,xi).manifest)for(let r in t){let o=t[r],i=pn(this,xi).manifest.getDimensionByKey(r);i&&o>i.cap&&((n=(e=pn(this,xi)).onLogMessage)==null||n.call(e,["debug",110,{dim:r,score:o,cap:i.cap}]),t[r]=i.cap)}};gce=function(){var t,e,n;return{...uce(),consent:(t=pn(this,xi).defaultConsent)!=null?t:!1,controlGroup:(n=(e=pn(this,xi).manifest)==null?void 0:e.rollForControlGroup())!=null?n:!1}};var hce,vce,Lx,yce,bce,xce,Cce,Sce,Ax,eT,wce,Dk,Ece,Lk;hce=new WeakMap;vce=new WeakMap;Lx=new WeakMap;yce=new WeakMap;bce=new WeakMap;xce=new WeakMap;Cce=new WeakMap;Sce=new WeakMap;Ax=new WeakMap;eT=new WeakSet;wce=function(t){pn(this,Ax).emit("testResult",t)};Dk=async function(t){let e=this.manifest.computeGoals(t);e.length!==0&&await this.storage.updateData(e)};Ece=function(t){let e=T0(this,eT,Lk).call(this,t);!Nr(e,pn(this,Lx))&&(wk(this,Lx,e),T0(this,eT,Dk).call(this,{scores:pn(this,Lx),quirks:void 0}),pn(this,Ax).emit("scoresUpdated",e),pn(this,Ax).emit("log",["info",3,e]))};Lk=function(t){var e;let n={...t.scores};for(let r in t.sessionScores)n[r]=((e=n[r])!=null?e:0)+t.sessionScores[r];return n=this.manifest.computeAggregateDimensions(n),n};var lIe=(0,Ak.default)();var cIe=(0,Mk.default)();await Jm();var C1e=await(process.env.NODE_ENV!=="production"?VV().then(()=>jV):HV().then(()=>UV)),KV=C1e.createHeadlessEditor;await g4();await I4();await V4();await BW();await c3();await dG();await Qi();await or();import{createVariableReference as U8e}from"@uniformdev/canvas";var Bu=I(Xn());p9();var yVe=I(H());Vg();var xVe=I(g9());J1();var SVe=I(s9());Hg();Kg();A3();var ui=Bu.Fragment,O=function(e,n,r){return Lf.call(n,"css")?Bu.jsx(rv,nv(e,n),r):Bu.jsx(e,n,r)},ie=function(e,n,r){return Lf.call(n,"css")?Bu.jsxs(rv,nv(e,n),r):Bu.jsxs(e,n,r)};ne();ne();ne();ne();ne();function lY(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];t&&t.addEventListener&&t.addEventListener.apply(t,e)}function cY(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];t&&t.removeEventListener&&t.removeEventListener.apply(t,e)}var uY=typeof window<"u";var dY=I(H());var Ps=I(H());function v9(t,e){e===void 0&&(e=0);var n=(0,Ps.useRef)(!1),r=(0,Ps.useRef)(),o=(0,Ps.useRef)(t),i=(0,Ps.useCallback)(function(){return n.current},[]),s=(0,Ps.useCallback)(function(){n.current=!1,r.current&&clearTimeout(r.current),r.current=setTimeout(function(){n.current=!0,o.current()},e)},[e]),a=(0,Ps.useCallback)(function(){n.current=null,r.current&&clearTimeout(r.current)},[]);return(0,Ps.useEffect)(function(){o.current=t},[t]),(0,Ps.useEffect)(function(){return s(),a},[e]),[i,a,s]}function k3(t,e,n){e===void 0&&(e=0),n===void 0&&(n=[]);var r=v9(t,e),o=r[0],i=r[1],s=r[2];return(0,dY.useEffect)(s,n),[o,i]}var Gg=I(H());var rCe=function(t){return t===void 0&&(t={laptopL:1440,laptop:1024,tablet:768}),function(){var e=(0,Gg.useState)(uY?window.innerWidth:0),n=e[0],r=e[1];(0,Gg.useEffect)(function(){var s=function(){r(window.innerWidth)};return s(),lY(window,"resize",s),function(){cY(window,"resize",s)}});var o=(0,Gg.useMemo)(function(){return Object.entries(t).sort(function(s,a){return s[1]>=a[1]?1:-1})},[t]),i=o.reduce(function(s,a){var l=a[0],c=a[1];return n>=c?l:s},o[0][0]);return i}},y9=rCe;ne();ne();ne();var s$e=I(H());ne();ne();function Af(...t){}function ov(t,e){if(oCe(t)){let n=iCe(e)?e():e;return t(n)}return t}function oCe(t){return typeof t=="function"}function iCe(t){return typeof t=="function"}function Po(t,e){return typeof Object.hasOwn=="function"?Object.hasOwn(t,e):Object.prototype.hasOwnProperty.call(t,e)}function An(...t){return(...e)=>{for(let n of t)typeof n=="function"&&n(...e)}}function b9(t){return t.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function x9(t,e){let n={...t};for(let r of e)Po(n,r)&&delete n[r];return n}function C9(t,e){let n={};for(let r of e)Po(t,r)&&(n[r]=t[r]);return n}function iv(t){return t}function ft(t,e){if(!t)throw typeof e!="string"?new Error("Invariant failed"):new Error(e)}function S9(t){return Object.keys(t)}function Fa(t,...e){let n=typeof t=="function"?t(...e):t;return n==null?!1:!n}function Fs(t){return t.disabled||t["aria-disabled"]===!0||t["aria-disabled"]==="true"}function Fo(t){let e={};for(let n in t)t[n]!==void 0&&(e[n]=t[n]);return e}function tt(...t){for(let e of t)if(e!==void 0)return e}var fY=I(H(),1);function sv(t,e){typeof t=="function"?t(e):t&&(t.current=e)}function sCe(t){return!t||!(0,fY.isValidElement)(t)?!1:"ref"in t.props||"ref"in t}function pY(t){return sCe(t)?{...t.props}.ref||t.ref:null}function mY(t,e){let n={...t};for(let r in e){if(!Po(e,r))continue;if(r==="className"){let i="className";n[i]=t[i]?`${t[i]} ${e[i]}`:e[i];continue}if(r==="style"){let i="style";n[i]=t[i]?{...t[i],...e[i]}:e[i];continue}let o=e[r];if(typeof o=="function"&&r.startsWith("on")){let i=t[r];if(typeof i=="function"){n[r]=(...s)=>{o(...s),i(...s)};continue}}n[r]=o}return n}var Yl=aCe();function aCe(){var t;return typeof window<"u"&&!!((t=window.document)!=null&&t.createElement)}function _t(t){return t?"self"in t?t.document:t.ownerDocument||document:document}function Mf(t){return t?"self"in t?t.self:_t(t).defaultView||window:self}function $i(t,e=!1){let{activeElement:n}=_t(t);if(!n?.nodeName)return null;if(av(n)&&n.contentDocument)return $i(n.contentDocument.body,e);if(e){let r=n.getAttribute("aria-activedescendant");if(r){let o=_t(n).getElementById(r);if(o)return o}}return n}function Ut(t,e){return t===e||t.contains(e)}function av(t){return t.tagName==="IFRAME"}function di(t){let e=t.tagName.toLowerCase();return e==="button"?!0:e==="input"&&t.type?lCe.indexOf(t.type)!==-1:!1}var lCe=["button","color","file","image","reset","submit"];function lv(t){if(typeof t.checkVisibility=="function")return t.checkVisibility();let e=t;return e.offsetWidth>0||e.offsetHeight>0||t.getClientRects().length>0}function Bo(t){try{let e=t instanceof HTMLInputElement&&t.selectionStart!==null,n=t.tagName==="TEXTAREA";return e||n||!1}catch{return!1}}function cv(t){return t.isContentEditable||Bo(t)}function w9(t){if(Bo(t))return t.value;if(t.isContentEditable){let e=_t(t).createRange();return e.selectNodeContents(t),e.toString()}return""}function E9(t){let e=0,n=0;if(Bo(t))e=t.selectionStart||0,n=t.selectionEnd||0;else if(t.isContentEditable){let r=_t(t).getSelection();if(r?.rangeCount&&r.anchorNode&&Ut(t,r.anchorNode)&&r.focusNode&&Ut(t,r.focusNode)){let o=r.getRangeAt(0),i=o.cloneRange();i.selectNodeContents(t),i.setEnd(o.startContainer,o.startOffset),e=i.toString().length,i.setEnd(o.endContainer,o.endOffset),n=i.toString().length}}return{start:e,end:n}}function Yg(t,e){let n=["dialog","menu","listbox","tree","grid"],r=t?.getAttribute("role");return r&&n.indexOf(r)!==-1?r:e}function uv(t,e){var n;let r={menu:"menuitem",listbox:"option",tree:"treeitem"},o=Yg(t);return o&&(n=r[o])!=null?n:e}function R3(t){if(!t)return null;let e=n=>n==="auto"||n==="scroll";if(t.clientHeight&&t.scrollHeight>t.clientHeight){let{overflowY:n}=getComputedStyle(t);if(e(n))return t}else if(t.clientWidth&&t.scrollWidth>t.clientWidth){let{overflowX:n}=getComputedStyle(t);if(e(n))return t}return R3(t.parentElement)||document.scrollingElement||document.body}function dv(t,e){let n=t.map((o,i)=>[i,o]),r=!1;return n.sort(([o,i],[s,a])=>{let l=e(i),c=e(a);return l===c||!l||!c?0:cCe(l,c)?(o>s&&(r=!0),-1):(o<s&&(r=!0),1)}),r?n.map(([o,i])=>i):t}function cCe(t,e){return!!(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_PRECEDING)}function gY(){return Yl&&!!navigator.maxTouchPoints}function Zg(){return Yl?/mac|iphone|ipad|ipod/i.test(navigator.platform):!1}function Of(){return Yl&&Zg()&&/apple/i.test(navigator.vendor)}function _9(){return Yl&&/firefox\//i.test(navigator.userAgent)}function T9(){return Yl&&navigator.platform.startsWith("Mac")&&!gY()}function P3(t){return!!(t.currentTarget&&!Ut(t.currentTarget,t.target))}function qr(t){return t.target===t.currentTarget}function hY(t){let e=t.currentTarget;if(!e)return!1;let n=Zg();if(n&&!t.metaKey||!n&&!t.ctrlKey)return!1;let r=e.tagName.toLowerCase();return r==="a"||r==="button"&&e.type==="submit"||r==="input"&&e.type==="submit"}function vY(t){let e=t.currentTarget;if(!e)return!1;let n=e.tagName.toLowerCase();return t.altKey?n==="a"||n==="button"&&e.type==="submit"||n==="input"&&e.type==="submit":!1}function yY(t,e,n){let r=new Event(e,n);return t.dispatchEvent(r)}function If(t,e){let n=new FocusEvent("blur",e),r=t.dispatchEvent(n),o={...e,bubbles:!0};return t.dispatchEvent(new FocusEvent("focusout",o)),r}function bY(t,e,n){let r=new KeyboardEvent(e,n);return t.dispatchEvent(r)}function $9(t,e){let n=new MouseEvent("click",e);return t.dispatchEvent(n)}function zu(t,e){let n=e||t.currentTarget,r=t.relatedTarget;return!r||!Ut(n,r)}function ju(t,e,n,r){let i=(a=>{if(r){let c=setTimeout(a,r);return()=>clearTimeout(c)}let l=requestAnimationFrame(a);return()=>cancelAnimationFrame(l)})(()=>{t.removeEventListener(e,s,!0),n()}),s=()=>{i(),n()};return t.addEventListener(e,s,{once:!0,capture:!0}),i}function zn(t,e,n,r=window){let o=[];try{r.document.addEventListener(t,e,n);for(let s of Array.from(r.frames))o.push(zn(t,e,n,s))}catch{}return()=>{try{r.document.removeEventListener(t,e,n)}catch{}for(let s of o)s()}}var uCe=I(H(),1),jn=I(H(),1),N9={...uCe},xY=N9.useId,lUe=N9.useDeferredValue,CY=N9.useInsertionEffect,vt=Yl?jn.useLayoutEffect:jn.useEffect;function B3(t){let e=(0,jn.useRef)(t);return vt(()=>{e.current=t}),e}function Ie(t){let e=(0,jn.useRef)(()=>{throw new Error("Cannot call an event handler while rendering.")});return CY?CY(()=>{e.current=t}):e.current=t,(0,jn.useCallback)((...n)=>{var r;return(r=e.current)==null?void 0:r.call(e,...n)},[])}function _Y(t){let[e,n]=(0,jn.useState)(null);return vt(()=>{if(e==null||!t)return;let r=null;return t(o=>(r=o,e)),()=>{t(r)}},[e,t]),[e,n]}function ht(...t){return(0,jn.useMemo)(()=>{if(t.some(Boolean))return e=>{for(let n of t)sv(n,e)}},t)}function fi(t){if(xY){let r=xY();return t||r}let[e,n]=(0,jn.useState)(t);return vt(()=>{if(t||e)return;let r=Math.random().toString(36).slice(2,8);n(`id-${r}`)},[t,e]),t||e}function z3(t,e){let n=i=>{if(typeof i=="string")return i},[r,o]=(0,jn.useState)(()=>n(e));return vt(()=>{let i=t&&"current"in t?t.current:t;o(i?.tagName.toLowerCase()||n(e))},[t,e]),r}function Vu(t,e){let n=(0,jn.useRef)(!1);(0,jn.useEffect)(()=>{if(n.current)return t();n.current=!0},e),(0,jn.useEffect)(()=>()=>{n.current=!1},[])}function TY(){return(0,jn.useReducer)(()=>[],[])}function lr(t){return Ie(typeof t=="function"?t:()=>t)}function xn(t,e,n=[]){let r=(0,jn.useCallback)(o=>(t.wrapElement&&(o=t.wrapElement(o)),e(o)),[...n,t.wrapElement]);return{...t,wrapElement:r}}function qg(t=!1,e){let[n,r]=(0,jn.useState)(null);return{portalRef:ht(r,e),portalNode:n,domReady:!t||n}}function j3(t,e,n){let r=t.onLoadedMetadataCapture,o=(0,jn.useMemo)(()=>Object.assign(()=>{},{...r,[e]:n}),[r,e,n]);return[r?.[e],{onLoadedMetadataCapture:o}]}var SY=!1;function Jg(){return(0,jn.useEffect)(()=>{SY||(zn("mousemove",fCe,!0),zn("mousedown",F3,!0),zn("mouseup",F3,!0),zn("keydown",F3,!0),zn("scroll",F3,!0),SY=!0)},[]),Ie(()=>D9)}var D9=!1,wY=0,EY=0;function dCe(t){let e=t.movementX||t.screenX-wY,n=t.movementY||t.screenY-EY;return wY=t.screenX,EY=t.screenY,e||n||process.env.NODE_ENV==="test"}function fCe(t){dCe(t)&&(D9=!0)}function F3(){D9=!1}var zo=I(H(),1),kf=I(Xn(),1);function Ee(t){let e=zo.forwardRef((n,r)=>t({...n,ref:r}));return e.displayName=t.displayName||t.name,e}function Uu(t,e){return zo.memo(t,e)}function $e(t,e){let{wrapElement:n,render:r,...o}=e,i=ht(e.ref,pY(r)),s;if(zo.isValidElement(r)){let a={...r.props,ref:i};s=zo.cloneElement(r,mY(o,a))}else r?s=r(o):s=(0,kf.jsx)(t,{...o});return n?n(s):s}function De(t){let e=(n={})=>t(n);return e.displayName=t.name,e}function br(t=[],e=[]){let n=zo.createContext(void 0),r=zo.createContext(void 0),o=()=>zo.useContext(n),i=(c=!1)=>{let u=zo.useContext(r),d=o();return c?u:u||d},s=()=>{let c=zo.useContext(r),u=o();if(!(c&&c===u))return u},a=c=>t.reduceRight((u,d)=>(0,kf.jsx)(d,{...c,children:u}),(0,kf.jsx)(n.Provider,{...c}));return{context:n,scopedContext:r,useContext:o,useScopedContext:i,useProviderContext:s,ContextProvider:a,ScopedContextProvider:c=>(0,kf.jsx)(a,{...c,children:e.reduceRight((u,d)=>(0,kf.jsx)(d,{...c,children:u}),(0,kf.jsx)(r.Provider,{...c}))})}}var fv=br(),$Y=fv.useContext,mUe=fv.useScopedContext,gUe=fv.useProviderContext,NY=fv.ContextProvider,DY=fv.ScopedContextProvider;var L9=I(H(),1),pv=br([NY],[DY]),Xg=pv.useContext,bUe=pv.useScopedContext,LY=pv.useProviderContext,Hu=pv.ContextProvider,Qg=pv.ScopedContextProvider,AY=(0,L9.createContext)(void 0),MY=(0,L9.createContext)(void 0);var pCe={id:null};function OY(t,e,n=!1){let r=t.findIndex(o=>o.id===e);return[...t.slice(r+1),...n?[pCe]:[],...t.slice(0,r)]}function IY(t,e){return t.find(n=>e?!n.disabled&&n.id!==e:!n.disabled)}function Ba(t,e){return e&&t.item(e)||null}function kY(t){let e=[];for(let n of t){let r=e.find(o=>{var i;return((i=o[0])==null?void 0:i.rowId)===n.rowId});r?r.push(n):e.push([n])}return e}function RY(t,e=!1){if(Bo(t))t.setSelectionRange(e?t.value.length:0,t.value.length);else if(t.isContentEditable){let n=_t(t).getSelection();n?.selectAllChildren(t),e&&n?.collapseToEnd()}}var A9=Symbol("FOCUS_SILENTLY");function PY(t){t[A9]=!0,t.focus({preventScroll:!0})}function FY(t){let e=t[A9];return delete t[A9],e}function Rf(t,e,n){if(!e||e===n)return!1;let r=t.item(e.id);return!(!r||n&&r.element===n)}var V3=I(H(),1),mCe="div",M9=De(function({store:e,shouldRegisterItem:n=!0,getItem:r=iv,element:o,...i}){let s=$Y();e=e||s;let a=fi(i.id),l=(0,V3.useRef)(o);return(0,V3.useEffect)(()=>{let c=l.current;if(!a||!c||!n)return;let u=r({id:a,element:c});return e?.renderItem(u)},[a,n,r,e]),i={...i,ref:ht(l,i.ref)},Fo(i)}),$Ue=Ee(function(e){let n=M9(e);return $e(mCe,n)});var BY=I(H(),1),U3=(0,BY.createContext)(!0);var H3="input:not([type='hidden']):not([disabled]), select:not([disabled]), textarea:not([disabled]), a[href], button:not([disabled]), [tabindex], summary, iframe, object, embed, area[href], audio[controls], video[controls], [contenteditable]:not([contenteditable='false'])";function gCe(t){return Number.parseInt(t.getAttribute("tabindex")||"0",10)<0}function Ni(t){return!(!t.matches(H3)||!lv(t)||t.closest("[inert]"))}function eh(t){if(!Ni(t)||gCe(t))return!1;if(!("form"in t)||!t.form||t.checked||t.type!=="radio")return!0;let e=t.form.elements.namedItem(t.name);if(!e||!("length"in e))return!0;let n=$i(t);return!n||n===t||!("form"in n)||n.form!==t.form||n.name!==t.name}function O9(t,e){let n=Array.from(t.querySelectorAll(H3));e&&n.unshift(t);let r=n.filter(Ni);return r.forEach((o,i)=>{if(av(o)&&o.contentDocument){let s=o.contentDocument.body;r.splice(i,1,...O9(s))}}),r}function mv(t,e,n){let r=Array.from(t.querySelectorAll(H3)),o=r.filter(eh);return e&&eh(t)&&o.unshift(t),o.forEach((i,s)=>{if(av(i)&&i.contentDocument){let a=i.contentDocument.body,l=mv(a,!1,n);o.splice(s,1,...l)}}),!o.length&&n?r:o}function zY(t,e,n){let[r]=mv(t,e,n);return r||null}function hCe(t,e,n,r){let o=$i(t),i=O9(t,e),s=i.indexOf(o),a=i.slice(s+1);return a.find(eh)||(n?i.find(eh):null)||(r?a[0]:null)||null}function K3(t,e){return hCe(document.body,!1,t,e)}function vCe(t,e,n,r){let o=$i(t),i=O9(t,e).reverse(),s=i.indexOf(o),a=i.slice(s+1);return a.find(eh)||(n?i.find(eh):null)||(r?a[0]:null)||null}function I9(t,e){return vCe(document.body,!1,t,e)}function jY(t){for(;t&&!Ni(t);)t=t.closest(H3);return t||null}function Pf(t){let e=$i(t);if(!e)return!1;if(e===t)return!0;let n=e.getAttribute("aria-activedescendant");return n?n===t.id:!1}function rs(t){let e=$i(t);if(!e)return!1;if(Ut(t,e))return!0;let n=e.getAttribute("aria-activedescendant");return!n||!("id"in t)?!1:n===t.id?!0:!!t.querySelector(`#${CSS.escape(n)}`)}function W3(t){!rs(t)&&Ni(t)&&t.focus()}function yCe(t){var e;let n=(e=t.getAttribute("tabindex"))!=null?e:"";t.setAttribute("data-tabindex",n),t.setAttribute("tabindex","-1")}function VY(t,e){let n=mv(t,e);for(let r of n)yCe(r)}function UY(t){let e=t.querySelectorAll("[data-tabindex]"),n=r=>{let o=r.getAttribute("data-tabindex");r.removeAttribute("data-tabindex"),o?r.setAttribute("tabindex",o):r.removeAttribute("tabindex")};t.hasAttribute("data-tabindex")&&n(t);for(let r of e)n(r)}function HY(t,e){"scrollIntoView"in t?(t.focus({preventScroll:!0}),t.scrollIntoView({block:"nearest",inline:"nearest",...e})):t.focus()}var Di=I(H(),1),bCe="div",KY=Of(),xCe=["text","search","url","tel","email","password","number","date","month","week","time","datetime","datetime-local"],ZY=Symbol("safariFocusAncestor");function qY(t){return t?!!t[ZY]:!1}function WY(t,e){t&&(t[ZY]=e)}function CCe(t){let{tagName:e,readOnly:n,type:r}=t;return e==="TEXTAREA"&&!n||e==="SELECT"&&!n?!0:e==="INPUT"&&!n?xCe.includes(r):!!(t.isContentEditable||t.getAttribute("role")==="combobox"&&t.dataset.name)}function SCe(t){return"labels"in t?t.labels:null}function GY(t){return t.tagName.toLowerCase()==="input"&&t.type?t.type==="radio"||t.type==="checkbox":!1}function wCe(t){return t?t==="button"||t==="summary"||t==="input"||t==="select"||t==="textarea"||t==="a":!0}function ECe(t){return t?t==="button"||t==="input"||t==="select"||t==="textarea":!0}function _Ce(t,e,n,r,o){return t?e?n&&!r?-1:void 0:n?o:o||0:o}function k9(t,e){return Ie(n=>{t?.(n),!n.defaultPrevented&&e&&(n.stopPropagation(),n.preventDefault())})}var YY=!1,R9=!0;function TCe(t){let e=t.target;e&&"hasAttribute"in e&&(e.hasAttribute("data-focus-visible")||(R9=!1))}function $Ce(t){t.metaKey||t.ctrlKey||t.altKey||(R9=!0)}var Zl=De(function({focusable:e=!0,accessibleWhenDisabled:n,autoFocus:r,onFocusVisible:o,...i}){let s=(0,Di.useRef)(null);(0,Di.useEffect)(()=>{e&&(YY||(zn("mousedown",TCe,!0),zn("keydown",$Ce,!0),YY=!0))},[e]),KY&&(0,Di.useEffect)(()=>{if(!e)return;let k=s.current;if(!k||!GY(k))return;let z=SCe(k);if(!z)return;let W=()=>queueMicrotask(()=>k.focus());for(let R of z)R.addEventListener("mouseup",W);return()=>{for(let R of z)R.removeEventListener("mouseup",W)}},[e]);let a=e&&Fs(i),l=!!a&&!n,[c,u]=(0,Di.useState)(!1);(0,Di.useEffect)(()=>{e&&l&&c&&u(!1)},[e,l,c]),(0,Di.useEffect)(()=>{if(!e||!c)return;let k=s.current;if(!k||typeof IntersectionObserver>"u")return;let z=new IntersectionObserver(()=>{Ni(k)||u(!1)});return z.observe(k),()=>z.disconnect()},[e,c]);let d=k9(i.onKeyPressCapture,a),f=k9(i.onMouseDownCapture,a),p=k9(i.onClickCapture,a),m=i.onMouseDown,g=Ie(k=>{if(m?.(k),k.defaultPrevented||!e)return;let z=k.currentTarget;if(!KY||P3(k)||!di(z)&&!GY(z))return;let W=!1,R=()=>{W=!0},F={capture:!0,once:!0};z.addEventListener("focusin",R,F);let K=jY(z.parentElement);WY(K,!0),ju(z,"mouseup",()=>{z.removeEventListener("focusin",R,!0),WY(K,!1),!W&&W3(z)})}),h=(k,z)=>{if(z&&(k.currentTarget=z),!e)return;let W=k.currentTarget;W&&Pf(W)&&(o?.(k),!k.defaultPrevented&&(W.dataset.focusVisible="true",u(!0)))},v=i.onKeyDownCapture,y=Ie(k=>{if(v?.(k),k.defaultPrevented||!e||c||k.metaKey||k.altKey||k.ctrlKey||!qr(k))return;let z=k.currentTarget;ju(z,"focusout",()=>h(k,z))}),b=i.onFocusCapture,S=Ie(k=>{if(b?.(k),k.defaultPrevented||!e)return;if(!qr(k)){u(!1);return}let z=k.currentTarget,W=()=>h(k,z);R9||CCe(k.target)?ju(k.target,"focusout",W):u(!1)}),x=i.onBlur,w=Ie(k=>{x?.(k),e&&zu(k)&&(k.currentTarget.removeAttribute("data-focus-visible"),u(!1))}),E=(0,Di.useContext)(U3),_=Ie(k=>{e&&r&&k&&E&&queueMicrotask(()=>{Pf(k)||Ni(k)&&k.focus()})}),$=z3(s),T=e&&wCe($),N=e&&ECe($),P=i.style,B=(0,Di.useMemo)(()=>l?{pointerEvents:"none",...P}:P,[l,P]);return i={"data-focus-visible":e&&c||void 0,"data-autofocus":r||void 0,"aria-disabled":a||void 0,...i,ref:ht(s,_,i.ref),style:B,tabIndex:_Ce(e,l,T,N,i.tabIndex),disabled:N&&l?!0:void 0,contentEditable:a?void 0:i.contentEditable,onKeyPressCapture:d,onClickCapture:p,onMouseDownCapture:f,onMouseDown:g,onKeyDownCapture:y,onFocusCapture:S,onBlur:w},Fo(i)}),VUe=Ee(function(e){let n=Zl(e);return $e(bCe,n)});var Ku=I(H(),1),NCe="button";function JY(t){if(!t.isTrusted)return!1;let e=t.currentTarget;return t.key==="Enter"?di(e)||e.tagName==="SUMMARY"||e.tagName==="A":t.key===" "?di(e)||e.tagName==="SUMMARY"||e.tagName==="INPUT"||e.tagName==="SELECT":!1}var DCe=Symbol("command"),gv=De(function({clickOnEnter:e=!0,clickOnSpace:n=!0,...r}){let o=(0,Ku.useRef)(null),[i,s]=(0,Ku.useState)(!1);(0,Ku.useEffect)(()=>{o.current&&s(di(o.current))},[]);let[a,l]=(0,Ku.useState)(!1),c=(0,Ku.useRef)(!1),u=Fs(r),[d,f]=j3(r,DCe,!0),p=r.onKeyDown,m=Ie(v=>{p?.(v);let y=v.currentTarget;if(v.defaultPrevented||d||u||!qr(v)||Bo(y)||y.isContentEditable)return;let b=e&&v.key==="Enter",S=n&&v.key===" ",x=v.key==="Enter"&&!e,w=v.key===" "&&!n;if(x||w){v.preventDefault();return}if(b||S){let E=JY(v);if(b){if(!E){v.preventDefault();let{view:_,...$}=v,T=()=>$9(y,$);_9()?ju(y,"keyup",T):queueMicrotask(T)}}else S&&(c.current=!0,E||(v.preventDefault(),l(!0)))}}),g=r.onKeyUp,h=Ie(v=>{if(g?.(v),v.defaultPrevented||d||u||v.metaKey)return;let y=n&&v.key===" ";if(c.current&&y&&(c.current=!1,!JY(v))){v.preventDefault(),l(!1);let b=v.currentTarget,{view:S,...x}=v;queueMicrotask(()=>$9(b,x))}});return r={"data-active":a||void 0,type:i?"button":void 0,...f,...r,ref:ht(o,r.ref),onKeyDown:m,onKeyUp:h},r=Zl(r),r}),JUe=Ee(function(e){let n=gv(e);return $e(NCe,n)});function Ff(t,e){let n=t.__unstableInternals;return ft(n,"Invalid store"),n[e]}function cr(t,...e){let n=t,r=n,o=Symbol(),i=Af,s=new Set,a=new Set,l=new Set,c=new Set,u=new Set,d=new WeakMap,f=new WeakMap,p=_=>(l.add(_),()=>l.delete(_)),m=()=>{let _=s.size,$=Symbol();s.add($);let T=()=>{s.delete($),!s.size&&i()};if(_)return T;let N=S9(n).map(k=>An(...e.map(z=>{var W;let R=(W=z?.getState)==null?void 0:W.call(z);if(R&&Po(R,k))return $r(z,[k],F=>{w(k,F[k],!0)})}))),P=[];for(let k of l)P.push(k());let B=e.map(th);return i=An(...N,...P,...B),T},g=(_,$,T=c)=>(T.add($),f.set($,_),()=>{var N;(N=d.get($))==null||N(),d.delete($),f.delete($),T.delete($)}),h=(_,$)=>g(_,$),v=(_,$)=>(d.set($,$(n,n)),g(_,$)),y=(_,$)=>(d.set($,$(n,r)),g(_,$,u)),b=_=>cr(C9(n,_),E),S=_=>cr(x9(n,_),E),x=()=>n,w=(_,$,T=!1)=>{var N;if(!Po(n,_))return;let P=ov($,n[_]);if(P===n[_])return;if(!T)for(let W of e)(N=W?.setState)==null||N.call(W,_,P);let B=n;n={...n,[_]:P};let k=Symbol();o=k,a.add(_);let z=(W,R,F)=>{var K;let L=f.get(W),M=A=>F?F.has(A):A===_;(!L||L.some(M))&&((K=d.get(W))==null||K(),d.set(W,W(n,R)))};for(let W of c)z(W,B);queueMicrotask(()=>{if(o!==k)return;let W=n;for(let R of u)z(R,r,a);r=W,a.clear()})},E={getState:x,setState:w,__unstableInternals:{setup:p,init:m,subscribe:h,sync:v,batch:y,pick:b,omit:S}};return E}function pi(t,...e){if(t)return Ff(t,"setup")(...e)}function th(t,...e){if(t)return Ff(t,"init")(...e)}function nh(t,...e){if(t)return Ff(t,"subscribe")(...e)}function $r(t,...e){if(t)return Ff(t,"sync")(...e)}function rh(t,...e){if(t)return Ff(t,"batch")(...e)}function Bf(t,...e){if(t)return Ff(t,"omit")(...e)}function P9(t,...e){if(t)return Ff(t,"pick")(...e)}function zf(...t){var e;let n={};for(let o of t){let i=(e=o?.getState)==null?void 0:e.call(o);i&&Object.assign(n,i)}let r=cr(n,...t);return Object.assign({},...t,r)}function ql(t,e){if(process.env.NODE_ENV==="production"||!e)return;let n=Object.entries(t).filter(([i,s])=>i.startsWith("default")&&s!==void 0).map(([i])=>{var s;let a=i.replace("default","");return`${((s=a[0])==null?void 0:s.toLowerCase())||""}${a.slice(1)}`});if(!n.length)return;let r=e.getState();if(n.filter(i=>Po(r,i)).length)throw new Error(`Passing a store prop in conjunction with a default state is not supported.
102
102
 
103
103
  const store = useSelectStore();
104
104
  <SelectProvider store={store} defaultValue="Apple" />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uniformdev/uniform-mcp",
3
- "version": "20.47.1-alpha.3+04fdfa028a",
3
+ "version": "20.47.1",
4
4
  "description": "Uniform MCP Server",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "bin": {
@@ -20,11 +20,11 @@
20
20
  "mcp": "node dist/index.mjs"
21
21
  },
22
22
  "dependencies": {
23
- "@modelcontextprotocol/sdk": "^1.12.0",
23
+ "@modelcontextprotocol/sdk": "1.25.2",
24
24
  "@types/uuid": "9.0.4",
25
- "@uniformdev/canvas": "20.47.1-alpha.3+04fdfa028a",
26
- "@uniformdev/project-map": "20.47.1-alpha.3+04fdfa028a",
27
- "fast-json-patch": "^3.1.1",
25
+ "@uniformdev/canvas": "20.47.1",
26
+ "@uniformdev/project-map": "20.47.1",
27
+ "fast-json-patch": "3.1.1",
28
28
  "immer": "10.1.3",
29
29
  "jsdom": "24.1.3",
30
30
  "uuid": "9.0.1",
@@ -38,10 +38,10 @@
38
38
  },
39
39
  "devDependencies": {
40
40
  "@types/jsdom": "^27.0.0",
41
- "@uniformdev/design-system": "20.47.1-alpha.3+04fdfa028a",
42
- "@uniformdev/files": "20.47.1-alpha.3+04fdfa028a",
43
- "@uniformdev/mesh-edgehancer-sdk": "20.47.1-alpha.3+04fdfa028a",
44
- "@uniformdev/richtext": "20.47.1-alpha.3+04fdfa028a"
41
+ "@uniformdev/design-system": "20.47.1",
42
+ "@uniformdev/files": "20.47.1",
43
+ "@uniformdev/mesh-edgehancer-sdk": "20.47.1",
44
+ "@uniformdev/richtext": "20.47.1"
45
45
  },
46
- "gitHead": "04fdfa028a09763f4f9e89f78f32aef1de247ad4"
46
+ "gitHead": "fd741b6d399bb02e8e6393f4fb01c09426acb0ba"
47
47
  }