@inf-monkeys-tech/monkeys-design 2.0.161 → 2.0.162
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.
- package/dist/components/capabilities/index.js +1 -1
- package/dist/components/capabilities/index.js.map +1 -1
- package/dist/components/capabilities/index.mjs +1 -1
- package/dist/components/capabilities/index.mjs.map +1 -1
- package/dist/components/ui/index.js +1 -1
- package/dist/components/ui/index.js.map +1 -1
- package/dist/components/ui/index.mjs +1 -1
- package/dist/components/ui/index.mjs.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/ui.css +1 -1
- package/package.json +1 -1
|
@@ -65,7 +65,7 @@ var PopoverPrimitive__namespace = /*#__PURE__*/_interopNamespace(PopoverPrimitiv
|
|
|
65
65
|
var LabelPrimitive__namespace = /*#__PURE__*/_interopNamespace(LabelPrimitive);
|
|
66
66
|
var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
|
|
67
67
|
|
|
68
|
-
var DESIGN_CAPABILITY_CATALOG_SOURCE_REF="monkeys.design.capabilities",DESIGN_CAPABILITY_CATALOG_REVISION=144,EDITOR_CATEGORIES=new Set(["layout","navigation","data-view","data-editor","content","status"]),requireNonEmptyKey=(value,field)=>{if(!value.trim()||!value.includes("."))throw new TypeError(`${field} must be a non-empty semantic i18n key.`)},sameVersion=(left,right)=>left===void 0||String(left)===right,revisionRefKey=reference=>`${reference.ownerRepo}:${reference.id}@${reference.revision}:${reference.contentHash}`,validateEntry=input=>{let manifest=monkeys.CapabilityManifestSchema.parse(input.manifest),provider=monkeys.ViewProviderDescriptorSchema.parse(input.provider),declarativeRegistration=monkeys.DeclarativeCapabilityAuthoringRegistrationSchema.parse(input.declarativeRegistration),editor=Object.freeze({...input.editor,slots:Object.freeze([...input.editor.slots]),ontologyCompatibility:Object.freeze(input.editor.ontologyCompatibility.map(compatibility=>Object.freeze({...compatibility})))});if(requireNonEmptyKey(editor.labelKey,"editor.labelKey"),requireNonEmptyKey(editor.descriptionKey,"editor.descriptionKey"),typeof editor.eligible!="boolean"||editor.eligible!==declarativeRegistration.editorEligible||!EDITOR_CATEGORIES.has(editor.category))throw new TypeError(`Capability ${manifest.id} has invalid editor eligibility metadata.`);if(provider.capabilityRef.id!==manifest.id)throw new TypeError(`Provider ${provider.providerId} targets ${provider.capabilityRef.id}, not ${manifest.id}.`);if(declarativeRegistration.capabilityRevisionRef.id!==manifest.id||declarativeRegistration.capabilityRevisionRef.ownerRepo!==manifest.ownerRepo||String(declarativeRegistration.capabilityRevisionRef.revision)!==String(manifest.capabilityVersion))throw new TypeError(`Capability ${manifest.id} authoring registration does not pin its exact manifest identity.`);if(declarativeRegistration.runtimeContractVersion!==provider.runtimeContractVersion||declarativeRegistration.providerRevisionRef.id!==provider.providerId||declarativeRegistration.providerRevisionRef.ownerRepo!==provider.ownerRepo||String(declarativeRegistration.providerRevisionRef.revision)!==String(provider.providerVersion))throw new TypeError(`Capability ${manifest.id} authoring registration does not pin its exact provider identity.`);if(declarativeRegistration.capabilityRevisionRef.contentHash!==monkeys.canonicalContentHash(manifest)||declarativeRegistration.providerRevisionRef.contentHash!==monkeys.canonicalContentHash(provider))throw new TypeError(`Capability ${manifest.id} authoring registration has stale capability or provider content hashes.`);let{registrationRevisionRef,sourceContentHash,...registrationSource}=declarativeRegistration;if(sourceContentHash!==monkeys.canonicalContentHash(registrationSource)||registrationRevisionRef.contentHash!==sourceContentHash)throw new TypeError(`Capability ${manifest.id} authoring registration source hash is not exact.`);let schemaDocuments=new Map(declarativeRegistration.schemaDocuments.map(entry=>[revisionRefKey(entry.schemaRevisionRef),entry])),requiredSchemaReferences=[declarativeRegistration.propertySchemaRevisionRef,...declarativeRegistration.uiSchemaRevisionRef?[declarativeRegistration.uiSchemaRevisionRef]:[],...declarativeRegistration.inputPorts.map(port2=>port2.schemaRevisionRef),...declarativeRegistration.outputPorts.map(port2=>port2.schemaRevisionRef),...declarativeRegistration.ontologyRequirements.map(requirement=>requirement.renderModelSchemaRevisionRef)],requiredSchemaKeys=new Set(requiredSchemaReferences.map(revisionRefKey));if(schemaDocuments.size!==declarativeRegistration.schemaDocuments.length||schemaDocuments.size!==requiredSchemaKeys.size)throw new TypeError(`Capability ${manifest.id} authoring registration must publish one canonical document for each exact schema reference.`);for(let reference of requiredSchemaReferences){let entry=schemaDocuments.get(revisionRefKey(reference));if(!entry)throw new TypeError(`Capability ${manifest.id} has no canonical document for schema ${reference.id}.`);if(entry.schemaRevisionRef.kind!=="schema"||entry.schemaRevisionRef.contentHash!==monkeys.canonicalContentHash(entry.document)||entry.document.$schema!=="https://json-schema.org/draft/2020-12/schema"||entry.document.$id!==entry.schemaRevisionRef.id||typeof entry.document.type!="string")throw new TypeError(`Capability ${manifest.id} schema ${reference.id} is not an exact canonical JSON Schema document.`)}if(!sameVersion(provider.capabilityRef.version,manifest.capabilityVersion))throw new TypeError(`Provider ${provider.providerId} does not target capability version ${manifest.capabilityVersion}.`);let binding=manifest.runtime.providerBindings.find(({providerRef})=>providerRef.id===provider.providerId);if(!binding||!sameVersion(binding.providerRef.version,provider.providerVersion))throw new TypeError(`Capability ${manifest.id} does not explicitly bind provider ${provider.providerId}@${provider.providerVersion}.`);if(provider.loading!==manifest.runtime.loading||provider.stateOwner!==manifest.runtime.stateOwner)throw new TypeError(`Provider ${provider.providerId} lifecycle does not match capability ${manifest.id}.`);let registrationInputPorts=new Map(declarativeRegistration.inputPorts.map(port2=>[port2.name,port2])),registrationOutputPorts=new Map(declarativeRegistration.outputPorts.map(port2=>[port2.name,port2]));if(registrationInputPorts.size!==manifest.ports.inputs.length||manifest.ports.inputs.some(port2=>{let registrationPort=registrationInputPorts.get(port2.name);return !registrationPort||registrationPort.required!==port2.required||registrationPort.multiple!==port2.multiple})||registrationOutputPorts.size!==manifest.ports.outputs.length||manifest.ports.outputs.some(port2=>{let registrationPort=registrationOutputPorts.get(port2.name);return !registrationPort||registrationPort.required!==port2.required||registrationPort.multiple!==port2.multiple}))throw new TypeError(`Capability ${manifest.id} authoring ports differ from its manifest ports.`);if(declarativeRegistration.allowedSideEffects.length!==manifest.runtime.sideEffects.length||declarativeRegistration.allowedSideEffects.some(sideEffect=>!manifest.runtime.sideEffects.includes(sideEffect)))throw new TypeError(`Capability ${manifest.id} authoring side effects differ from its manifest.`);if(provider.sideEffects.length!==manifest.runtime.sideEffects.length||provider.sideEffects.some(sideEffect=>!manifest.runtime.sideEffects.includes(sideEffect)))throw new TypeError(`Provider ${provider.providerId} side effects differ from capability ${manifest.id}.`);if(provider.performance.budgetMs!==void 0&&manifest.observability.performanceBudgetMs!==void 0&&provider.performance.budgetMs!==manifest.observability.performanceBudgetMs)throw new TypeError(`Provider ${provider.providerId} performance budget differs from capability ${manifest.id}.`);let declaredSlots=new Set(manifest.placement.slots),uniqueEditorSlots=new Set(editor.slots);if(uniqueEditorSlots.size!==editor.slots.length)throw new TypeError(`Capability ${manifest.id} editor slots must be unique.`);for(let slot of editor.slots)if(!declaredSlots.has(slot))throw new TypeError(`Capability ${manifest.id} editor slot ${slot} is absent from its manifest.`);if(declaredSlots.size!==uniqueEditorSlots.size||[...declaredSlots].some(slot=>!uniqueEditorSlots.has(slot)))throw new TypeError(`Capability ${manifest.id} editor slots must exactly match its manifest slots.`);let inputPorts=new Map(manifest.ports.inputs.map(port2=>[port2.name,port2.schemaRef])),compatibilityPorts=new Set;for(let compatibility of editor.ontologyCompatibility){if(compatibilityPorts.has(compatibility.inputPort))throw new TypeError(`Capability ${manifest.id} has duplicate Ontology compatibility for ${compatibility.inputPort}.`);if(compatibilityPorts.add(compatibility.inputPort),inputPorts.get(compatibility.inputPort)!==compatibility.schemaRef)throw new TypeError(`Capability ${manifest.id} Ontology compatibility for ${compatibility.inputPort} is not backed by the declared input port schema.`)}return Object.freeze({manifest,provider,editor,declarativeRegistration})},compileDesignCapabilityCatalog=inputs=>{let entries=Object.freeze(inputs.map(validateEntry)),manifestsById=new Map,entriesByProviderId=new Map,groupedEntries=new Map;for(let entry of entries){let existingManifest=manifestsById.get(entry.manifest.id);if(existingManifest&&JSON.stringify(existingManifest)!==JSON.stringify(entry.manifest))throw new TypeError(`Capability ${entry.manifest.id} has conflicting catalog manifests.`);if(manifestsById.set(entry.manifest.id,entry.manifest),entriesByProviderId.has(entry.provider.providerId))throw new TypeError(`Duplicate provider ${entry.provider.providerId}.`);entriesByProviderId.set(entry.provider.providerId,entry);let capabilityEntries=groupedEntries.get(entry.manifest.id)??[];capabilityEntries.push(entry),groupedEntries.set(entry.manifest.id,capabilityEntries);}let manifests=Object.freeze([...manifestsById.values()]),providers=Object.freeze(entries.map(({provider})=>provider)),sdkRegistry=runtime.compileViewProviderRegistry({capabilities:manifests,providers}),entriesByCapabilityId=new Map([...groupedEntries].map(([capabilityId,capabilityEntries])=>[capabilityId,Object.freeze([...capabilityEntries])])),requireProvider=providerId=>{let entry=entriesByProviderId.get(providerId);if(!entry)throw new TypeError(`Unknown Design capability provider ${providerId}.`);return entry};return Object.freeze({entries,manifests,providers,entriesByProviderId,entriesByCapabilityId,requireProvider,resolve(capabilityId,product,preferredProviderId){let provider=sdkRegistry.resolveProvider(capabilityId,product,preferredProviderId);return requireProvider(provider.providerId)}})},compileDesignCapabilityCatalogArtifact=({catalog,sourceRef=DESIGN_CAPABILITY_CATALOG_SOURCE_REF,revision=DESIGN_CAPABILITY_CATALOG_REVISION})=>runtime.compileDesignCapabilityCatalogArtifact({sourceRef,revision,entries:catalog.entries.map(({manifest,provider,declarativeRegistration})=>({manifest,provider,declarativeRegistration}))});var key=Symbol.for("@inf-monkeys-tech/monkeys-design/bento-depth@1"),host=globalThis,BentoDepth=host[key]??(host[key]=React8.createContext(0));function useBentoDepth(){return React8.useContext(BentoDepth)}function BentoDepthProvider({children,depth}){return jsxRuntime.jsx(BentoDepth.Provider,{value:depth,children})}function BentoScope({children}){return jsxRuntime.jsx(BentoDepthProvider,{depth:0,children})}var enUS={locale:"en-US",messages:{pagination:{navigation:"Pagination",first:"First",previous:"Previous",next:"Next",last:"Last",page:({page,pageCount})=>`Page ${page} of ${pageCount}`,currentPage:({page,pageCount})=>`Page ${page} of ${pageCount}, current page`,emptyResults:"0 results",range:({start,end,total})=>`${start}-${end} of ${total}`,selected:({count})=>`${count} selected`,pageSize:"Items per page",loadBatchSize:"Items per load",perLoad:"Items per load",jumpToPage:"Jump to page",pages:"pages",clickToJump:"Click to jump to a page"},dialog:{close:"Close dialog"},dropdownMenu:{actions:"Actions"},loading:{spinner:"Loading"},layout:{resizePanels:"Resize panels",expandPanel:"Expand",collapsePanel:"Collapse",movePanel:"Move",moveBefore:"Move earlier",moveAfter:"Move later"},steps:{label:"Progress",current:"Current",completed:"Completed",error:"Error",disabled:"Disabled"},numberInput:{increment:"Increase value",decrement:"Decrease value"},passwordInput:{showPassword:"Show password",hidePassword:"Hide password"},multiSelect:{placeholder:"Select options",empty:"No options",removeOption:({value})=>`Remove ${value}`},table:{dragColumn:({columnId})=>`Drag column ${columnId}`,resizeColumn:({columnId})=>`Resize column ${columnId}`,sortColumn:({columnId})=>columnId?`Sort column ${columnId}`:"Sort column",loadingRow:"Loading table row"},toolbar:{theme:{label:"Appearance",toggle:"Toggle theme",auto:"Auto",light:"Light",dark:"Dark"},language:{label:"Language",switch:"Switch language"}},toast:{errorTitle:"Error",warningTitle:"Warning",defaultErrorDescription:"Something went wrong.",defaultWarningDescription:"Please check and try again."},dataExplorer:{viewTree:{actions:"More actions",expand:"Expand",collapse:"Collapse",loading:"Loading...",empty:"No views",error:"Unable to load views"}},workbench:{relationshipGraph:{zoomOut:"Zoom out",zoomIn:"Zoom in",zoomToFit:"Fit graph",minimap:"Graph overview"},collection:{label:"Collection",loading:"Loading items",empty:"No items",loadError:"Unable to load items",refreshError:"Unable to refresh items",retry:"Retry",loadingMore:"Loading more items",permission:"You do not have permission to view this content",offline:"You appear to be offline",requestAccess:"Request access"},interactiveTable:{columnActions:"Column actions",freezeColumn:"Freeze to left",freezeEndColumn:"Freeze to right",unfreezeColumn:"Unfreeze from left",unfreezeEndColumn:"Unfreeze from right",unfreezeAllColumns:"Unfreeze all columns",resetColumnWidth:"Reset column width",frozenColumnTitle:"Frozen column"}},agentWorkbench:{label:"Session activity",reasoning:"Reasoning",plan:"Plan",taskNoDetail:"No additional details",modes:{chat:"Chat",work:"Work"},composer:{send:"Send message",stop:"Stop generating",queue:"Queue message",attach:"Add photos or files",voice:"Start voice input",webSearch:"Web search",chatMode:"Chat mode",model:"Model",reasoning:"Reasoning effort",permissions:"Permissions",removeAttachment:"Remove attachment",editQueued:"Edit queued message",deleteQueued:"Delete queued message",moveUp:"Move message up",moveDown:"Move message down",queued:"Queued messages",uploading:"Uploading",uploadFailed:"Upload failed",retryAttachment:"Retry attachment upload",noModels:"No models available",message:"Message",attachmentOnly:"Attachment",reasoningOptions:{low:"Low",medium:"Medium",high:"High",xhigh:"Extra high"},permissionOptions:{"approval-required":"Approval required","auto-approve":"Auto approve","full-access":"Full access"}},quickStart:{label:"Quick start",back:"Back",addFile:"Add file"},tool:{input:"Input",output:"Output",status:{pending:"Pending",running:"Running",completed:"Completed",failed:"Error",denied:"Denied"}},approval:{approve:"Approve",reject:"Reject",approved:"Approved",rejected:"Rejected"},artifact:{pending:"Preparing",ready:"Ready",failed:"Failed",open:({name})=>`Open ${name}`},run:{stopping:"Stopping...",stoppedAfter:({duration})=>`You stopped after ${duration}`},process:{running:"Working",queued:"Queued",waitingApproval:"Waiting for approval",failed:"Failed",stopped:"Stopped",processed:"Processed",processedFor:({duration})=>`Worked for ${duration}`,completedCount:({completed,total})=>`${completed}/${total} completed`},artifactWorkspace:{outputs:"Outputs",sources:"Sources",viewAll:"View all",toggleSummary:"Toggle files",tabs:"Open files",closeTab:({name})=>`Close ${name}`,closeWorkspace:"Close workspace",download:({name})=>`Download ${name}`,openExternal:({name})=>`Open ${name} in a new window`,loading:"Loading preview...",failed:"Preview unavailable",retry:"Try again"},usage:{label:"Context usage",context:({used,total})=>`${used} / ${total} tokens`},navigation:{search:"Search agents and sessions",searchSessions:"Search sessions",searchShortcut:"Focus search",clearSearch:"Clear search",tabsLabel:"Agent workbench navigation",agents:"Agents",sessions:"Sessions",newAgent:"New Agent",newSession:"New Session",capabilities:"Capabilities & Extensions",settings:"Agent Settings",allAgents:"All Agents",recentSessions:"Recent Sessions",chat:"Chat",work:"Work",chats:"Chats",builtIn:"Built-in",noDescription:"No description",loading:"Loading...",emptyAgents:"No agents yet",emptySessions:"No sessions yet",noResults:"No matching results",retry:"Retry",pin:"Pin",unpin:"Unpin",rename:"Rename",delete:"Delete",actions:"Actions",save:"Save",cancel:"Cancel",running:"Running",completed:"Completed",failed:"Failed",contextUsage:({percent})=>`${percent}% context used`},details:{title:"Task details",description:"Summary and workspace activity",duration:"Duration",updated:"Updated",model:"Model",mode:"Mode",permissions:"Permissions",tokenUsage:"Token usage",summary:"Summary",summaryEmpty:"No summary is available yet.",summaryFailed:"The summary could not be generated.",highlights:"Highlights",pendingItems:"Pending items",tabs:{label:"Task detail views",summary:"Summary",workspace:"Workspace"},status:{queued:"Queued",running:"Running",waiting_approval:"Waiting for approval",stopping:"Stopping",stopped:"Stopped",completed:"Completed",failed:"Failed"},state:{loading:{title:"Loading task details",description:"Restoring the latest session activity."},empty:{title:"No task selected",description:"Select a task to inspect its details."},error:{title:"Unable to load task details",description:"Try again after the session is available."}},actions:{close:"Close task details",copySummary:"Copy summary",retry:"Retry",retrySummary:"Retry summary",resume:"Resume",continueInNewTask:"Continue in new task",editAndRerun:"Edit and rerun",export:"Export"},workspace:{diffs:"Code changes",files:"Files",terminals:"Terminals",tests:"Tests",artifacts:"Artifacts",exitCode:({code})=>`Exit code ${code}`,diffStatus:{added:"Added",modified:"Modified",deleted:"Deleted",renamed:"Renamed"},fileOperation:{upsert:"Updated",delete:"Deleted"}}}}}};var zhCN={locale:"zh-CN",messages:{pagination:{navigation:"\u5206\u9875\u5BFC\u822A",first:"\u9996\u9875",previous:"\u4E0A\u4E00\u9875",next:"\u4E0B\u4E00\u9875",last:"\u672B\u9875",page:({page,pageCount})=>`\u7B2C ${page} \u9875\uFF0C\u5171 ${pageCount} \u9875`,currentPage:({page,pageCount})=>`\u7B2C ${page} \u9875\uFF0C\u5171 ${pageCount} \u9875\uFF0C\u5F53\u524D\u9875`,emptyResults:"\u5171 0 \u6761",range:({start,end,total})=>`\u7B2C ${start}-${end} \u6761\uFF0C\u5171 ${total} \u6761`,selected:({count})=>`\u5DF2\u9009\u62E9 ${count} \u9879`,pageSize:"\u6BCF\u9875\u663E\u793A\u6570\u91CF",loadBatchSize:"\u6BCF\u6B21\u52A0\u8F7D\u6570\u91CF",perLoad:"\u6BCF\u6B21\u52A0\u8F7D",jumpToPage:"\u8DF3\u8F6C\u5230\u9875\u7801",pages:"\u9875",clickToJump:"\u70B9\u51FB\u8DF3\u8F6C\u9875\u7801"},dialog:{close:"\u5173\u95ED\u5BF9\u8BDD\u6846"},dropdownMenu:{actions:"\u64CD\u4F5C"},loading:{spinner:"\u6B63\u5728\u52A0\u8F7D"},layout:{resizePanels:"\u8C03\u6574\u9762\u677F\u5927\u5C0F",expandPanel:"\u5C55\u5F00",collapsePanel:"\u6536\u8D77",movePanel:"\u79FB\u52A8",moveBefore:"\u5411\u524D\u79FB\u52A8",moveAfter:"\u5411\u540E\u79FB\u52A8"},steps:{label:"\u8FDB\u5EA6",current:"\u5F53\u524D\u6B65\u9AA4",completed:"\u5DF2\u5B8C\u6210",error:"\u9519\u8BEF",disabled:"\u5DF2\u7981\u7528"},numberInput:{increment:"\u589E\u52A0\u6570\u503C",decrement:"\u51CF\u5C11\u6570\u503C"},passwordInput:{showPassword:"\u663E\u793A\u5BC6\u7801",hidePassword:"\u9690\u85CF\u5BC6\u7801"},multiSelect:{placeholder:"\u8BF7\u9009\u62E9",empty:"\u6682\u65E0\u9009\u9879",removeOption:({value})=>`\u79FB\u9664 ${value}`},table:{dragColumn:({columnId})=>`\u62D6\u52A8\u5217 ${columnId}`,resizeColumn:({columnId})=>`\u8C03\u6574\u5217\u5BBD ${columnId}`,sortColumn:({columnId})=>columnId?`\u6392\u5E8F\u5217 ${columnId}`:"\u6392\u5E8F\u5217",loadingRow:"\u6B63\u5728\u52A0\u8F7D\u8868\u683C\u884C"},toolbar:{theme:{label:"\u5916\u89C2",toggle:"\u5207\u6362\u4E3B\u9898",auto:"\u8DDF\u968F\u7CFB\u7EDF",light:"\u6D45\u8272\u6A21\u5F0F",dark:"\u6DF1\u8272\u6A21\u5F0F"},language:{label:"\u8BED\u8A00",switch:"\u5207\u6362\u8BED\u8A00"}},toast:{errorTitle:"\u9519\u8BEF",warningTitle:"\u63D0\u793A",defaultErrorDescription:"\u53D1\u751F\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",defaultWarningDescription:"\u8BF7\u68C0\u67E5\u540E\u91CD\u8BD5\u3002"},dataExplorer:{viewTree:{actions:"\u66F4\u591A\u64CD\u4F5C",expand:"\u5C55\u5F00",collapse:"\u6536\u8D77",loading:"\u6B63\u5728\u52A0\u8F7D...",empty:"\u6682\u65E0\u89C6\u56FE",error:"\u65E0\u6CD5\u52A0\u8F7D\u89C6\u56FE"}},workbench:{relationshipGraph:{zoomOut:"\u7F29\u5C0F",zoomIn:"\u653E\u5927",zoomToFit:"\u9002\u5E94\u753B\u5E03",minimap:"\u56FE\u8C31\u6982\u89C8"},collection:{label:"\u5185\u5BB9\u96C6\u5408",loading:"\u6B63\u5728\u52A0\u8F7D\u5185\u5BB9",empty:"\u6682\u65E0\u5185\u5BB9",loadError:"\u65E0\u6CD5\u52A0\u8F7D\u5185\u5BB9",refreshError:"\u65E0\u6CD5\u5237\u65B0\u5185\u5BB9",retry:"\u91CD\u8BD5",loadingMore:"\u6B63\u5728\u52A0\u8F7D\u66F4\u591A\u5185\u5BB9",permission:"\u4F60\u6CA1\u6709\u6743\u9650\u67E5\u770B\u6B64\u5185\u5BB9",offline:"\u7F51\u7EDC\u8FDE\u63A5\u5DF2\u65AD\u5F00",requestAccess:"\u7533\u8BF7\u6743\u9650"},interactiveTable:{columnActions:"\u5217\u64CD\u4F5C",freezeColumn:"\u56FA\u5B9A\u5230\u5DE6\u4FA7",freezeEndColumn:"\u56FA\u5B9A\u5230\u53F3\u4FA7",unfreezeColumn:"\u53D6\u6D88\u5DE6\u4FA7\u56FA\u5B9A",unfreezeEndColumn:"\u53D6\u6D88\u53F3\u4FA7\u56FA\u5B9A",unfreezeAllColumns:"\u53D6\u6D88\u5168\u90E8\u56FA\u5B9A",resetColumnWidth:"\u91CD\u7F6E\u5217\u5BBD",frozenColumnTitle:"\u5DF2\u56FA\u5B9A\u5217"}},agentWorkbench:{label:"\u4F1A\u8BDD\u6D3B\u52A8",reasoning:"\u601D\u8003\u8FC7\u7A0B",plan:"\u6267\u884C\u8BA1\u5212",taskNoDetail:"\u6682\u65E0\u66F4\u591A\u8BE6\u60C5",modes:{chat:"\u5BF9\u8BDD",work:"\u5DE5\u4F5C"},composer:{send:"\u53D1\u9001\u6D88\u606F",stop:"\u505C\u6B62\u751F\u6210",queue:"\u6392\u961F\u53D1\u9001",attach:"\u6DFB\u52A0\u7167\u7247\u6216\u6587\u4EF6",voice:"\u5F00\u59CB\u8BED\u97F3\u8F93\u5165",webSearch:"\u8054\u7F51\u641C\u7D22",chatMode:"\u5BF9\u8BDD\u6A21\u5F0F",model:"\u6A21\u578B",reasoning:"\u601D\u8003\u5F3A\u5EA6",permissions:"\u6743\u9650",removeAttachment:"\u79FB\u9664\u9644\u4EF6",editQueued:"\u7F16\u8F91\u6392\u961F\u6D88\u606F",deleteQueued:"\u5220\u9664\u6392\u961F\u6D88\u606F",moveUp:"\u4E0A\u79FB\u6D88\u606F",moveDown:"\u4E0B\u79FB\u6D88\u606F",queued:"\u6392\u961F\u6D88\u606F",uploading:"\u4E0A\u4F20\u4E2D",uploadFailed:"\u4E0A\u4F20\u5931\u8D25",retryAttachment:"\u91CD\u8BD5\u9644\u4EF6\u4E0A\u4F20",noModels:"\u6682\u65E0\u53EF\u7528\u6A21\u578B",message:"\u6D88\u606F",attachmentOnly:"\u9644\u4EF6",reasoningOptions:{low:"\u4F4E",medium:"\u4E2D",high:"\u9AD8",xhigh:"\u6700\u9AD8"},permissionOptions:{"approval-required":"\u9700\u8981\u6279\u51C6","auto-approve":"\u81EA\u52A8\u6279\u51C6","full-access":"\u5B8C\u5168\u8BBF\u95EE"}},quickStart:{label:"\u5FEB\u901F\u5F00\u59CB",back:"\u8FD4\u56DE",addFile:"\u6DFB\u52A0\u6587\u4EF6"},tool:{input:"\u8F93\u5165",output:"\u8F93\u51FA",status:{pending:"\u7B49\u5F85\u4E2D",running:"\u8FD0\u884C\u4E2D",completed:"\u5DF2\u5B8C\u6210",failed:"\u9519\u8BEF",denied:"\u5DF2\u62D2\u7EDD"}},approval:{approve:"\u5141\u8BB8",reject:"\u62D2\u7EDD",approved:"\u5DF2\u5141\u8BB8",rejected:"\u5DF2\u62D2\u7EDD"},artifact:{pending:"\u51C6\u5907\u4E2D",ready:"\u5DF2\u5C31\u7EEA",failed:"\u5931\u8D25",open:({name})=>`\u6253\u5F00 ${name}`},run:{stopping:"\u6B63\u5728\u505C\u6B62...",stoppedAfter:({duration})=>`\u4F60\u5728 ${duration} \u540E\u505C\u6B62\u4E86\u4EFB\u52A1`},process:{running:"\u6267\u884C\u8FC7\u7A0B",queued:"\u6392\u961F\u4E2D",waitingApproval:"\u7B49\u5F85\u5BA1\u6279",failed:"\u5931\u8D25",stopped:"\u5DF2\u505C\u6B62",processed:"\u5DF2\u5904\u7406",processedFor:({duration})=>`\u8017\u65F6 ${duration.replace(/(\d+)h/g,"$1\u5C0F\u65F6").replace(/(\d+)m/g,"$1\u5206\u949F").replace(/(\d+)s/g,"$1\u79D2").replace(/\s+/g,"")}`,completedCount:({completed,total})=>`${completed}/${total} \u5DF2\u5B8C\u6210`},artifactWorkspace:{outputs:"\u8F93\u51FA",sources:"\u6765\u6E90",viewAll:"\u67E5\u770B\u5168\u90E8",toggleSummary:"\u5207\u6362\u6587\u4EF6\u6458\u8981",tabs:"\u5DF2\u6253\u5F00\u6587\u4EF6",closeTab:({name})=>`\u5173\u95ED ${name}`,closeWorkspace:"\u5173\u95ED\u5DE5\u4F5C\u533A",download:({name})=>`\u4E0B\u8F7D ${name}`,openExternal:({name})=>`\u5728\u65B0\u7A97\u53E3\u6253\u5F00 ${name}`,loading:"\u6B63\u5728\u52A0\u8F7D\u9884\u89C8...",failed:"\u9884\u89C8\u4E0D\u53EF\u7528",retry:"\u91CD\u8BD5"},usage:{label:"\u4E0A\u4E0B\u6587\u7528\u91CF",context:({used,total})=>`${used} / ${total} tokens`},navigation:{search:"\u641C\u7D22\u667A\u80FD\u4F53\u548C\u4F1A\u8BDD",searchSessions:"\u641C\u7D22\u4F1A\u8BDD",searchShortcut:"\u805A\u7126\u641C\u7D22\u6846",clearSearch:"\u6E05\u9664\u641C\u7D22",tabsLabel:"\u667A\u80FD\u4F53\u5DE5\u4F5C\u53F0\u5BFC\u822A",agents:"\u667A\u80FD\u4F53",sessions:"\u4F1A\u8BDD",newAgent:"\u65B0\u5EFA\u667A\u80FD\u4F53",newSession:"\u65B0\u5EFA\u4F1A\u8BDD",capabilities:"\u80FD\u529B\u4E0E\u6269\u5C55",settings:"\u667A\u80FD\u4F53\u8BBE\u7F6E",allAgents:"\u5168\u90E8\u667A\u80FD\u4F53",recentSessions:"\u6700\u8FD1\u4F1A\u8BDD",chat:"\u5BF9\u8BDD",work:"\u5DE5\u4F5C",chats:"\u804A\u5929",builtIn:"\u5185\u7F6E",noDescription:"\u6682\u65E0\u63CF\u8FF0",loading:"\u52A0\u8F7D\u4E2D...",emptyAgents:"\u6682\u65E0\u667A\u80FD\u4F53",emptySessions:"\u6682\u65E0\u4F1A\u8BDD",noResults:"\u6CA1\u6709\u5339\u914D\u7ED3\u679C",retry:"\u91CD\u8BD5",pin:"\u7F6E\u9876",unpin:"\u53D6\u6D88\u7F6E\u9876",rename:"\u91CD\u547D\u540D",delete:"\u5220\u9664",actions:"\u64CD\u4F5C",save:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",running:"\u8FD0\u884C\u4E2D",completed:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25",contextUsage:({percent})=>`\u5DF2\u4F7F\u7528 ${percent}% \u4E0A\u4E0B\u6587`},details:{title:"\u4EFB\u52A1\u8BE6\u60C5",description:"\u6458\u8981\u4E0E\u5DE5\u4F5C\u533A\u6D3B\u52A8",duration:"\u8017\u65F6",updated:"\u66F4\u65B0\u65F6\u95F4",model:"\u6A21\u578B",mode:"\u6A21\u5F0F",permissions:"\u6743\u9650",tokenUsage:"Token \u7528\u91CF",summary:"\u6458\u8981",summaryEmpty:"\u6682\u65F6\u6CA1\u6709\u53EF\u7528\u6458\u8981\u3002",summaryFailed:"\u6458\u8981\u751F\u6210\u5931\u8D25\u3002",highlights:"\u91CD\u70B9",pendingItems:"\u5F85\u5904\u7406\u4E8B\u9879",tabs:{label:"\u4EFB\u52A1\u8BE6\u60C5\u89C6\u56FE",summary:"\u6458\u8981",workspace:"\u5DE5\u4F5C\u533A"},status:{queued:"\u6392\u961F\u4E2D",running:"\u8FD0\u884C\u4E2D",waiting_approval:"\u7B49\u5F85\u5BA1\u6279",stopping:"\u6B63\u5728\u505C\u6B62",stopped:"\u5DF2\u505C\u6B62",completed:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25"},state:{loading:{title:"\u6B63\u5728\u52A0\u8F7D\u4EFB\u52A1\u8BE6\u60C5",description:"\u6B63\u5728\u6062\u590D\u6700\u65B0\u7684\u4F1A\u8BDD\u6D3B\u52A8\u3002"},empty:{title:"\u672A\u9009\u62E9\u4EFB\u52A1",description:"\u9009\u62E9\u4EFB\u52A1\u540E\u67E5\u770B\u8BE6\u7EC6\u4FE1\u606F\u3002"},error:{title:"\u65E0\u6CD5\u52A0\u8F7D\u4EFB\u52A1\u8BE6\u60C5",description:"\u4F1A\u8BDD\u6062\u590D\u53EF\u7528\u540E\u8BF7\u91CD\u8BD5\u3002"}},actions:{close:"\u5173\u95ED\u4EFB\u52A1\u8BE6\u60C5",copySummary:"\u590D\u5236\u6458\u8981",retry:"\u91CD\u8BD5",retrySummary:"\u91CD\u65B0\u751F\u6210\u6458\u8981",resume:"\u7EE7\u7EED\u8FD0\u884C",continueInNewTask:"\u5728\u65B0\u4EFB\u52A1\u4E2D\u7EE7\u7EED",editAndRerun:"\u7F16\u8F91\u5E76\u91CD\u65B0\u8FD0\u884C",export:"\u5BFC\u51FA"},workspace:{diffs:"\u4EE3\u7801\u53D8\u66F4",files:"\u6587\u4EF6",terminals:"\u7EC8\u7AEF",tests:"\u6D4B\u8BD5",artifacts:"\u4EA7\u7269",exitCode:({code})=>`\u9000\u51FA\u7801 ${code}`,diffStatus:{added:"\u65B0\u589E",modified:"\u4FEE\u6539",deleted:"\u5220\u9664",renamed:"\u91CD\u547D\u540D"},fileOperation:{upsert:"\u5DF2\u66F4\u65B0",delete:"\u5DF2\u5220\u9664"}}}}}};function mergeMonkeysLocaleMessages(base,override){return base}var defaultMonkeysLocale={locale:enUS.locale,messages:mergeMonkeysLocaleMessages(enUS.messages)};var EMPTY_ENVIRONMENT=Object.freeze({}),EMPTY_PORTAL=Object.freeze({}),MONKEYS_PROVIDER_CONTEXTS_KEY=Symbol.for("@inf-monkeys-tech/monkeys-design/provider-context@1");function createMonkeysProviderContexts(){return Object.freeze({locale:React8.createContext({...defaultMonkeysLocale,provided:false}),theme:React8.createContext({provided:false}),direction:React8.createContext({provided:false}),environment:React8.createContext({provided:false,environment:EMPTY_ENVIRONMENT,portal:EMPTY_PORTAL})})}function getMonkeysProviderContexts(){let host3=globalThis,existing=host3[MONKEYS_PROVIDER_CONTEXTS_KEY];if(existing)return existing;let contexts=createMonkeysProviderContexts();return Object.defineProperty(host3,MONKEYS_PROVIDER_CONTEXTS_KEY,{value:contexts,enumerable:false,configurable:false,writable:false}),contexts}var providerContexts=getMonkeysProviderContexts(),MonkeysLocaleContext=providerContexts.locale,MonkeysThemeContext=providerContexts.theme,MonkeysDirectionContext=providerContexts.direction,MonkeysEnvironmentContext=providerContexts.environment;function mergeAppearance(inherited,explicit){return explicit===void 0?inherited:inherited===void 0?explicit:{...inherited,...explicit,slots:inherited.slots||explicit.slots?{...inherited.slots,...explicit.slots}:void 0,styles:inherited.styles||explicit.styles?{...inherited.styles,...explicit.styles}:void 0}}function useMonkeysLocale(){try{return React8.useContext(MonkeysLocaleContext)??{...defaultMonkeysLocale,provided:!1}}catch{return {...defaultMonkeysLocale,provided:false}}}function useMonkeysLocaleMessages(){return React8.useContext(MonkeysLocaleContext).messages}function useMonkeysResolvedTheme(){return React8.useContext(MonkeysThemeContext).resolvedTheme}function useMonkeysBaseAppearance(explicit){let inherited=React8.useContext(MonkeysThemeContext).baseAppearance;return React8.useMemo(()=>mergeAppearance(inherited,explicit),[explicit,inherited])}function useMonkeysStatusStates(){return React8.useContext(MonkeysThemeContext).statusStates??{}}function useMonkeysListFooter(){return React8.useContext(MonkeysThemeContext).listFooter??{}}function useMonkeysDirection(){return React8.useContext(MonkeysDirectionContext).direction}function useMonkeysEnvironment(){return React8.useContext(MonkeysEnvironmentContext).environment}function useMonkeysPortalOptions(){return React8.useContext(MonkeysEnvironmentContext).portal}function useMonkeysComponentAttributes(){let locale=React8.useContext(MonkeysLocaleContext),theme=React8.useContext(MonkeysThemeContext),direction=React8.useContext(MonkeysDirectionContext),providerActive=locale.provided||theme.provided||direction.provided;return React8.useMemo(()=>providerActive?{dir:direction.direction,"data-monkeys-direction":direction.direction,"data-monkeys-locale":locale.locale,"data-monkeys-theme":theme.themeId,"data-monkeys-theme-mode":theme.resolvedTheme?.colorMode}:{},[direction.direction,locale.locale,providerActive,theme.resolvedTheme?.colorMode,theme.themeId])}function useMonkeysAssetIconResolver(){return React8.useContext(MonkeysEnvironmentContext).iconResolver}function useMonkeysAssetImageResolver(){return React8.useContext(MonkeysEnvironmentContext).imageResolver}function resolveContainerValue(value,source){let candidate=typeof value=="function"?value():value;if(candidate===null)return null;if(!candidate||typeof candidate!="object"||candidate.nodeType!==1)throw new TypeError(`${source} must resolve to an Element or null.`);return candidate}function resolveBasePortalContainer({explicitProvided,explicitContainer,providerProvided,providerContainer,getDocument}){if(explicitProvided)return resolveContainerValue(explicitContainer,"BasePortal container");if(providerProvided)return resolveContainerValue(providerContainer,"MonkeysProvider portal.container");if(!getDocument)return null;let ownerDocument=getDocument();if(ownerDocument===null)return null;if(!ownerDocument||typeof ownerDocument!="object"||!("body"in ownerDocument))throw new TypeError("MonkeysProvider environment.getDocument must resolve to a Document or null.");return resolveContainerValue(ownerDocument.body,"MonkeysProvider environment.getDocument().body")}function resolveBaseOverlayPortalState({mounted,explicitDisabled,explicitContainer,providerDisabled,providerContainer,getDocument}){let disabled=explicitDisabled??providerDisabled??false;if(!mounted||disabled)return {mounted,disabled,shouldPortal:false,container:null,radixPortalProps:void 0};let container=resolveBasePortalContainer({explicitProvided:explicitContainer!==void 0,explicitContainer,providerProvided:providerContainer!==void 0,providerContainer,getDocument});return container?{mounted:true,disabled:false,shouldPortal:true,container,radixPortalProps:Object.freeze({container})}:{mounted:true,disabled:false,shouldPortal:false,container:null,radixPortalProps:void 0}}function getDefaultDocument(){return globalThis.document??null}function useBaseOverlayPortal(options2={}){let environment=useMonkeysEnvironment(),portalOptions=useMonkeysPortalOptions(),[mounted,setMounted]=React8.useState(false);return React8.useEffect(()=>{setMounted(true);},[]),resolveBaseOverlayPortalState({mounted,explicitDisabled:options2.disabled,explicitContainer:options2.container,providerDisabled:portalOptions.disabled,providerContainer:portalOptions.container,getDocument:environment.getDocument??getDefaultDocument})}function renderBaseOverlayPortalContent(children,portal){return portal.shouldPortal?reactDom.createPortal(children,portal.container):jsxRuntime.jsx(jsxRuntime.Fragment,{children})}function cn(...parts2){return tailwindMerge.twMerge(parts2.filter(Boolean).join(" "))}function hasRenderableNode(node){return node!=null&&typeof node!="boolean"}function hasNonEmptyRenderableNode(node){return typeof node=="string"?node.trim().length>0:hasRenderableNode(node)}var emptyStyles={},motionBase="motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",motionInteractive="motion-safe:transition-all motion-safe:duration-300 motion-safe:ease-out",motionTransform="motion-safe:transition-transform motion-safe:duration-300 motion-safe:ease-out",tableScrollbarChrome=cn("[scrollbar-width:thin]","[scrollbar-color:hsl(var(--muted-foreground)/0.45)_transparent]","[&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-2","[&::-webkit-scrollbar-button]:hidden [&::-webkit-scrollbar-button]:h-0 [&::-webkit-scrollbar-button]:w-0 [&::-webkit-scrollbar-button]:bg-transparent","[&::-webkit-scrollbar-button:single-button]:hidden [&::-webkit-scrollbar-button:single-button]:h-0 [&::-webkit-scrollbar-button:single-button]:w-0","[&::-webkit-scrollbar-button:double-button]:hidden [&::-webkit-scrollbar-button:double-button]:h-0 [&::-webkit-scrollbar-button:double-button]:w-0","[&::-webkit-scrollbar-corner]:bg-transparent","[&::-webkit-scrollbar-track]:bg-transparent","[&:has(thead.sticky)::-webkit-scrollbar-track]:mt-[var(--base-table-header-height)]","[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-muted-foreground/40","hover:[&::-webkit-scrollbar-thumb]:bg-muted-foreground/55"),tableStickyHeaderCells=cn("[&.sticky_th]:sticky [&.sticky_th]:top-0 [&.sticky_th]:z-[2]","[&.sticky_th]:bg-[var(--base-table-sticky-header-bg)]","[&.sticky_th]:shadow-[inset_0_-1px_0_var(--base-table-header-separator)]"),baseSlots={buttonBase:cn("group/button inline-flex min-w-0 items-center justify-center gap-2 rounded-md border px-3 text-sm font-medium focus-visible:outline-hidden","cursor-pointer disabled:!cursor-not-allowed",motionInteractive),buttonDefault:"border-border bg-background text-foreground hover:bg-accent/60",buttonPrimary:"border-primary/20 bg-primary/10 text-primary hover:bg-primary/15",buttonSuccess:"border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-[hsl(var(--success,142_72%_29%))] hover:bg-[hsl(var(--success,142_72%_29%)_/_0.15)]",buttonWarning:"border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))] hover:bg-[hsl(var(--warning,45_93%_47%)_/_0.15)]",buttonDanger:"border-destructive/20 bg-destructive/10 text-destructive-text hover:bg-destructive/15",buttonMuted:"border-border/60 bg-muted/45 text-muted-foreground hover:bg-muted/70 hover:text-foreground",buttonActive:"border-primary/35 bg-primary/10 text-primary",buttonDisabled:"!cursor-not-allowed opacity-60",buttonIconOnly:"w-9 px-0",buttonIcon:"inline-flex h-4 w-4 shrink-0 items-center justify-center text-[inherit] [&_*]:!text-[inherit] [&_svg]:!stroke-current [&_svg_*]:!stroke-current",buttonLabel:"min-w-0 truncate",badgeBase:cn("inline-flex max-w-full items-center gap-1.5 rounded-full border px-2 py-0.5 text-xs font-medium",motionBase),badgeDefault:"border-border/60 bg-background text-foreground",badgePrimary:"border-primary/30 bg-primary/10 text-primary",badgeSuccess:"border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-[hsl(var(--success,142_72%_29%))]",badgeWarning:"border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))]",badgeDanger:"border-destructive/30 bg-destructive/10 text-destructive-text",badgeMuted:"border-border/60 bg-muted text-muted-foreground",badgeIcon:"inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center",badgeLabel:"min-w-0 truncate",textRoot:"min-w-0 break-words leading-6",textSizeXs:"text-xs",textSizeSm:"text-sm",textSizeMd:"text-base",textSizeLg:"text-lg",textSizeXl:"text-xl",typographyToneDefault:"text-foreground",typographyToneMuted:"text-muted-foreground",typographyTonePrimary:"text-primary",typographyToneSuccess:"text-emerald-700 dark:text-emerald-400",typographyToneWarning:"text-amber-700 dark:text-amber-400",typographyToneDanger:"text-destructive-text",typographyToneInherit:"text-inherit",headingRoot:"min-w-0 break-words font-semibold tracking-tight",headingSizeXs:"text-sm leading-5",headingSizeSm:"text-base leading-6",headingSizeMd:"text-lg leading-7",headingSizeLg:"text-xl leading-7",headingSizeXl:"text-2xl leading-8",headingSize2xl:"text-3xl leading-9",linkRoot:"inline break-words underline decoration-current/40 underline-offset-4 hover:decoration-current focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30",codeInline:"rounded border border-border/70 bg-muted/60 px-1.5 py-0.5 font-mono text-[0.875em] leading-[1.45] text-foreground",codeBlock:"m-0 max-w-full overflow-x-auto rounded-md border border-border/70 bg-muted/60 p-4 text-foreground",codeContent:"font-mono text-sm leading-6",kbdRoot:"inline-flex min-h-5 items-center rounded border border-border bg-muted/70 px-1.5 font-mono text-[0.75em] font-medium leading-5 text-foreground shadow-[inset_0_-1px_0_hsl(var(--monkeys-color-border))]",listRoot:"m-0 min-w-0 list-outside break-words ps-5 text-foreground",listSpacingCompact:"[&>li+li]:mt-1",listSpacingDefault:"[&>li+li]:mt-2",listSpacingRelaxed:"[&>li+li]:mt-3",listMarkerNone:"list-none ps-0",listMarkerDisc:"list-disc",listMarkerCircle:"list-[circle]",listMarkerSquare:"list-[square]",listMarkerDecimal:"list-decimal",listMarkerLowerAlpha:"list-[lower-alpha]",listMarkerUpperAlpha:"list-[upper-alpha]",listItem:"min-w-0 ps-1 leading-6 marker:text-muted-foreground",stackRoot:"flex min-w-0 flex-col",inlineRoot:"flex min-w-0 flex-row",gridRoot:"grid min-w-0",containerRoot:"mx-auto w-full min-w-0",aspectRatioRoot:"relative min-w-0 overflow-hidden [&>*]:h-full [&>*]:w-full",spinnerRoot:"inline-flex shrink-0 items-center justify-center text-current align-middle",spinnerIndicator:"h-5 w-5 rounded-full border-2 border-current border-r-transparent motion-safe:animate-spin motion-reduce:animate-none",visuallyHiddenRoot:"sr-only",visuallyHiddenFocusable:"focus:not-sr-only focus:fixed focus:left-4 focus:top-4 focus:z-[1000] focus:rounded-md focus:bg-background focus:px-4 focus:py-2 focus:text-foreground focus:shadow-lg focus:outline-hidden focus:ring-2 focus:ring-ring focus-within:not-sr-only focus-within:fixed focus-within:left-4 focus-within:top-4 focus-within:z-[1000] focus-within:rounded-md focus-within:bg-background focus-within:px-4 focus-within:py-2 focus-within:text-foreground focus-within:shadow-lg focus-within:ring-2 focus-within:ring-ring",fieldsetRoot:"min-w-0 border-0 p-0 text-foreground",fieldsetLegend:"min-w-0 text-sm font-semibold leading-6 text-foreground",fieldsetDescription:"mt-1 text-sm leading-5 text-muted-foreground",fieldsetError:"mt-1 text-sm leading-5 text-destructive-text",fieldsetContent:"mt-3 grid min-w-0 gap-3",stepsRoot:"m-0 min-w-0 list-none p-0 text-foreground",stepsHorizontal:"flex w-full max-w-full items-start overflow-x-auto pb-2",stepsVertical:"grid",stepsItem:"relative min-w-0",stepsItemHorizontal:"flex min-w-52 flex-1 items-start",stepsItemVertical:"pb-6 last:pb-0",stepsTrigger:"flex min-w-0 flex-1 items-start gap-3 rounded-md border-0 bg-transparent p-1 text-start text-inherit",stepsTriggerInteractive:"cursor-pointer hover:bg-accent/50 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",stepsTriggerDisabled:"!cursor-not-allowed opacity-60",stepsIndicator:"relative z-[1] inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full border text-xs font-semibold",stepsIndicatorPending:"border-border bg-background text-muted-foreground",stepsIndicatorCurrent:"border-primary/50 bg-primary/10 text-primary",stepsIndicatorCompleted:"border-primary bg-primary text-primary-foreground",stepsIndicatorError:"border-destructive bg-destructive text-destructive-foreground",stepsContent:"grid min-w-0 gap-1 pt-0.5",stepsLabel:"min-w-0 break-words text-sm font-medium leading-5",stepsDescription:"min-w-0 break-words text-sm leading-5 text-muted-foreground",stepsStatus:"sr-only",stepsConnector:"shrink-0 bg-border",stepsConnectorHorizontal:"mt-3.5 h-px w-8",stepsConnectorVertical:"absolute bottom-0 top-8 start-3.5 w-px -translate-x-1/2",stepsConnectorCompleted:"bg-primary/60",stepsConnectorError:"bg-destructive/60",scrollAreaViewport:"min-h-0 min-w-0",numberInputControl:"tabular-nums",numberInputStepControls:"me-1 flex shrink-0 self-stretch overflow-hidden border-s border-border",numberInputStepButton:"flex min-h-6 w-7 cursor-pointer items-center justify-center border-0 bg-transparent px-1 text-xs leading-none text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:z-[1] focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-40",passwordInputControl:"pe-2",passwordInputToggle:"me-1 inline-flex min-h-7 shrink-0 cursor-pointer items-center justify-center rounded px-2 text-xs font-medium text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-40",inputGroupRoot:cn("relative flex min-w-0 items-stretch overflow-hidden rounded-md border border-border bg-background text-foreground focus-within:border-primary/50 focus-within:ring-2 focus-within:ring-ring/30",motionBase),inputGroupInvalid:"border-destructive/55 focus-within:border-destructive/70 focus-within:ring-destructive/25",inputGroupDisabled:"!cursor-not-allowed bg-muted/35",inputGroupContent:"flex min-w-0 flex-1 items-stretch [&>*]:min-w-0",inputGroupStartElement:"inline-flex shrink-0 items-center justify-center ps-3 pe-1 text-foreground/75",inputGroupEndElement:"inline-flex shrink-0 items-center justify-center ps-1 pe-3 text-foreground/75",inputGroupStartAddon:"inline-flex max-w-[min(40%,16rem)] shrink-0 items-center overflow-hidden border-e border-border bg-muted/60 px-3 text-sm text-foreground/75 text-ellipsis whitespace-nowrap [&>*]:min-w-0",inputGroupEndAddon:"inline-flex max-w-[min(40%,16rem)] shrink-0 items-center overflow-hidden border-s border-border bg-muted/60 px-3 text-sm text-foreground/75 text-ellipsis whitespace-nowrap [&>*]:min-w-0",panelRoot:cn("group relative flex min-w-0 flex-col overflow-hidden rounded-lg border border-border/70 bg-background",motionInteractive),panelInteractive:"cursor-pointer hover:shadow-md",panelSelected:"border-primary/45 bg-primary/5",panelDisabled:"!cursor-not-allowed opacity-60",panelMedia:"shrink-0 overflow-hidden",panelHeader:"min-w-0 p-token-lg",panelTitle:"min-w-0 truncate text-sm font-semibold leading-none text-foreground",panelDescription:"mt-1 text-sm leading-5 text-foreground/75",panelBody:"min-w-0 px-token-lg pb-token-lg text-sm text-foreground",panelBodyStandalone:"pt-token-lg",panelFooter:"shrink-0 border-t border-border/60 px-token-lg py-token-md",stateRoot:cn("flex min-h-48 flex-col items-center justify-center rounded-lg border border-border/70 bg-background px-6 py-10 text-center",motionBase),stateIcon:"mb-token-lg flex h-12 w-12 items-center justify-center rounded-full bg-muted text-muted-foreground motion-safe:animate-in motion-safe:fade-in",stateTitle:"text-sm font-semibold text-foreground",stateDescription:"mt-2 max-w-md text-sm leading-6 text-muted-foreground",stateActions:"mt-token-xl flex flex-wrap items-center justify-center gap-token-sm",loadingSpinner:"h-5 w-5 motion-safe:animate-spin motion-reduce:animate-none",fieldRoot:"grid min-w-0 gap-token-md",fieldLabelRow:"flex min-w-0 items-center justify-between gap-token-md",fieldLabel:"min-w-0 text-sm font-medium leading-none text-foreground",fieldRequired:"text-destructive-text",fieldDescription:"text-sm leading-5 text-muted-foreground",fieldMessage:"text-sm leading-5 text-muted-foreground",fieldControl:"min-w-0",controlWrapper:cn("relative flex min-w-0 items-center rounded-md border border-border bg-background text-foreground focus-within:border-primary/35",motionBase),controlBase:"min-w-0 flex-1 bg-transparent px-3 text-sm text-foreground outline-hidden placeholder:text-muted-foreground disabled:!cursor-not-allowed",controlInput:"h-9",controlTextarea:"min-h-24 resize-y py-2 leading-6",controlSelect:"h-9 cursor-pointer appearance-none pr-9 disabled:!cursor-not-allowed",controlIcon:"pointer-events-none ml-3 inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",controlTrailing:"mr-3 inline-flex shrink-0 items-center justify-center text-muted-foreground",controlInvalid:"border-destructive/45 focus-within:border-destructive/60",controlDisabled:"!cursor-not-allowed opacity-60",controlReadOnly:"bg-muted/35",selectChevron:cn("pointer-events-none absolute right-3 top-1/2 h-2 w-2 -translate-y-1/2 rotate-45 border-b border-r border-current text-muted-foreground",motionTransform),selectMenu:"absolute left-0 right-0 top-[calc(100%+0.375rem)] z-50 max-h-60 overflow-auto rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-hidden",selectOption:cn("flex min-h-8 w-full min-w-0 cursor-pointer items-center rounded-sm px-2.5 py-1.5 text-left text-sm text-foreground",motionInteractive),selectOptionActive:"bg-accent text-accent-foreground",selectOptionSelected:"bg-primary/10 text-primary",selectOptionDisabled:"!cursor-not-allowed opacity-50",selectPlaceholder:"text-muted-foreground",selectNative:"sr-only",switchRoot:"inline-flex min-w-0 cursor-pointer items-start gap-3",switchInput:"sr-only",switchTrack:cn("relative mt-0.5 inline-flex h-6 w-10 shrink-0 items-center rounded-full border border-border bg-muted focus-within:border-primary/35",motionBase),switchThumb:cn("h-4 w-4 translate-x-1 rounded-full bg-background shadow-sm",motionTransform),switchChecked:"border-primary/40 bg-primary/80 text-primary-foreground",switchDisabled:"!cursor-not-allowed opacity-60",switchContent:"grid min-w-0 gap-1",switchLabel:"text-sm font-medium leading-none text-foreground",switchDescription:"text-sm leading-5 text-muted-foreground",checkboxRoot:"inline-flex min-w-0 cursor-pointer items-start gap-3",checkboxInput:"sr-only",checkboxBox:cn("mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center rounded border border-border bg-background text-primary focus-within:border-primary/40",motionBase),checkboxBoxChecked:"border-primary/45 bg-primary text-primary-foreground",checkboxBoxInvalid:"border-destructive/50",checkboxIndicator:"text-xs font-bold leading-none",checkboxDisabled:"!cursor-not-allowed opacity-60",checkboxContent:"grid min-w-0 gap-1",checkboxLabel:"text-sm font-medium leading-none text-foreground",checkboxDescription:"text-sm leading-5 text-muted-foreground",radioGroupRoot:"grid min-w-0 gap-2",radioOption:cn("inline-flex min-w-0 cursor-pointer items-start gap-3 rounded-md border border-border/60 bg-background px-3 py-2 text-sm",motionInteractive,"hover:bg-muted/35"),radioInput:"sr-only",radioMarker:cn("mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-full border border-border bg-background text-primary focus-within:border-primary/40",motionBase),radioMarkerChecked:"border-primary/50 bg-primary/10",radioIndicator:"h-2 w-2 rounded-full bg-primary",radioOptionDisabled:"!cursor-not-allowed opacity-60 hover:bg-background",radioContent:"grid min-w-0 gap-1",radioLabel:"text-sm font-medium leading-none text-foreground",radioDescription:"text-sm leading-5 text-muted-foreground",dialogRoot:"relative",dialogTrigger:"",dialogTriggerDisabled:"!cursor-not-allowed opacity-60",dialogOverlay:"fixed inset-0 z-50 bg-background/70 backdrop-blur-sm motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",dialogContent:"pointer-events-none fixed inset-0 z-50 flex min-h-0 items-center justify-center p-4",dialogPanel:cn("pointer-events-auto relative flex max-h-[min(85vh,720px)] w-full max-w-lg min-w-0 flex-col overflow-hidden rounded-lg border border-border/70 bg-background text-foreground shadow-xl","motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out"),dialogHeader:"grid min-w-0 gap-1 border-b border-border/60 px-5 py-4",dialogTitle:"min-w-0 pr-8 text-base font-semibold leading-6 text-foreground",dialogDescription:"text-sm leading-6 text-muted-foreground",dialogBody:"min-h-0 min-w-0 overflow-auto px-5 py-4 text-sm text-foreground",dialogFooter:"flex shrink-0 flex-wrap items-center justify-end gap-2 border-t border-border/60 px-5 py-4",dialogClose:cn("absolute right-3 top-3 inline-flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-muted-foreground hover:bg-muted/60 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30",motionInteractive),dropdownRoot:"relative inline-flex min-w-0",dropdownTrigger:"",dropdownTriggerDisabled:"!cursor-not-allowed opacity-60",dropdownMenu:"z-50 min-w-48 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",dropdownMenuTop:"bottom-[calc(100%+0.375rem)] top-auto",dropdownMenuEnd:"left-auto right-0",dropdownLabel:"px-2.5 py-1.5 text-xs font-semibold uppercase tracking-[0.12em] text-muted-foreground",dropdownSeparator:"my-1 h-px bg-border/70",dropdownItem:cn("flex min-w-0 cursor-pointer items-center gap-2 rounded-sm px-2.5 py-2 text-left text-sm text-foreground hover:bg-accent/60 focus:bg-accent/60 data-[highlighted]:bg-accent/60 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30",motionInteractive),dropdownItemDanger:"text-destructive-text hover:bg-destructive/10 focus:bg-destructive/10 data-[highlighted]:bg-destructive/10",dropdownItemDisabled:"!cursor-not-allowed opacity-50 hover:bg-transparent focus:bg-transparent data-[highlighted]:bg-transparent",dropdownItemIcon:"inline-flex h-4 w-4 shrink-0 items-center justify-center",dropdownItemContent:"grid min-w-0 flex-1 gap-0.5",dropdownItemLabel:"min-w-0 truncate",dropdownItemDescription:"min-w-0 truncate text-xs leading-4 text-muted-foreground",dropdownItemShortcut:"ml-3 shrink-0 text-xs font-medium text-muted-foreground",tooltipRoot:"relative inline-flex min-w-0",tooltipTrigger:"inline-flex min-w-0",tooltipContent:"pointer-events-none z-50 max-w-xs rounded-md border border-border bg-popover px-2.5 py-1.5 text-xs leading-5 text-popover-foreground shadow-lg motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",noticeBase:cn("flex min-w-0 gap-3 rounded-lg border px-4 py-3 text-sm",motionBase,"motion-safe:animate-in motion-safe:fade-in"),noticeDefault:"border-border bg-background text-foreground",noticePrimary:"border-primary/25 bg-primary/10 text-primary",noticeSuccess:"border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-foreground",noticeWarning:"border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))]",noticeDanger:"border-destructive/30 bg-destructive/10 text-destructive-text",noticeMuted:"border-border/60 bg-muted/35 text-muted-foreground",noticeIcon:"mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center motion-safe:animate-in motion-safe:fade-in",noticeTitle:"font-semibold leading-5",noticeDescription:"leading-6",noticeActions:"mt-3 flex flex-wrap items-center gap-2",dividerRoot:cn("shrink-0 border-border/70",motionBase),dividerLabel:"mx-3 shrink-0 text-xs font-medium uppercase tracking-[0.12em] text-muted-foreground motion-safe:animate-in motion-safe:fade-in",sectionHeaderRoot:"flex min-w-0 flex-wrap items-start justify-between gap-token-md motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",sectionHeaderContent:"grid min-w-0 gap-1",sectionHeaderEyebrow:"text-xs font-semibold uppercase tracking-[0.14em] text-muted-foreground",sectionHeaderTitle:"text-base font-semibold leading-6 text-foreground",sectionHeaderDescription:"max-w-2xl text-sm leading-6 text-muted-foreground",sectionHeaderActions:"flex shrink-0 flex-wrap items-center gap-2",tabsRoot:"grid min-w-0 gap-token-md",tabsList:cn("inline-flex min-w-0 flex-wrap items-center gap-token-xs rounded-lg border border-border/70 bg-muted/30 p-token-xs",motionBase),tabsTrigger:cn("inline-flex min-w-0 cursor-pointer items-center justify-center rounded-md px-3 py-1.5 text-sm font-medium text-muted-foreground hover:bg-background/70 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 focus-visible:ring-offset-1 motion-reduce:transition-none",motionInteractive),tabsTriggerActive:"bg-background text-foreground shadow-sm",tabsTriggerDisabled:"!cursor-not-allowed opacity-50 hover:bg-transparent",tabsPanel:"min-w-0 rounded-lg border border-border/70 bg-background p-4 text-sm text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",segmentedRoot:cn("inline-flex min-w-0 items-center gap-1 rounded-lg border border-border/70 bg-muted/30 p-1",motionBase),segmentedItem:cn("inline-flex min-w-0 cursor-pointer items-center justify-center gap-1.5 rounded-md px-3 py-1.5 text-sm font-medium text-muted-foreground hover:bg-background/70 hover:text-foreground focus-visible:outline-hidden",motionInteractive),segmentedItemActive:"bg-background text-foreground shadow-sm",segmentedItemDisabled:"!cursor-not-allowed opacity-50 hover:bg-transparent",progressRoot:"grid min-w-0 gap-2",progressTrack:"h-2 w-full overflow-hidden rounded-full bg-muted",progressIndicator:"h-full rounded-full bg-primary motion-safe:transition-[width] motion-safe:duration-500 motion-safe:ease-out",progressLabelRow:"flex min-w-0 items-center justify-between gap-3",progressLabel:"min-w-0 truncate text-sm font-medium text-foreground",progressValue:"shrink-0 text-xs font-medium text-muted-foreground",skeletonRoot:"relative overflow-hidden rounded-md bg-muted/70",avatarRoot:"relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full border border-border bg-muted text-sm font-semibold text-muted-foreground motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",avatarImage:"h-full w-full object-cover",avatarFallback:"flex h-full w-full items-center justify-center bg-muted text-foreground",avatarStatus:"absolute bottom-0 right-0 h-2.5 w-2.5 rounded-full border-2 border-background bg-muted-foreground motion-safe:animate-pulse",avatarText:"min-w-0 truncate text-sm font-medium text-foreground",toolbarRoot:cn("flex min-w-0 flex-wrap items-center justify-between gap-token-md rounded-lg border border-border/70 bg-background px-token-lg py-token-md",motionBase),toolbarLeading:"flex min-w-0 items-center gap-token-md",toolbarTitle:"min-w-0 truncate text-sm font-semibold text-foreground",toolbarDescription:"mt-0.5 text-sm leading-5 text-muted-foreground",toolbarContent:"min-w-0 flex-1",toolbarActions:"flex shrink-0 flex-wrap items-center gap-token-sm",breadcrumbRoot:"min-w-0 text-sm text-muted-foreground",breadcrumbList:"flex min-w-0 flex-wrap items-center gap-1.5",breadcrumbItem:"inline-flex min-w-0 items-center gap-1.5",breadcrumbLink:"min-w-0 cursor-pointer truncate text-muted-foreground hover:text-foreground disabled:!cursor-not-allowed disabled:opacity-50 aria-disabled:!cursor-not-allowed aria-disabled:opacity-50 aria-disabled:hover:text-muted-foreground motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",breadcrumbCurrent:"min-w-0 truncate font-medium text-foreground",breadcrumbSeparator:"shrink-0 text-muted-foreground/70",paginationRoot:"flex min-w-0 flex-wrap items-center justify-between gap-3 text-sm",paginationInfo:"min-w-0 text-muted-foreground",paginationControls:"flex min-w-0 flex-wrap items-center justify-end gap-1.5",paginationButton:"inline-flex h-8 min-w-8 cursor-pointer items-center justify-center whitespace-nowrap rounded-md border border-border bg-background px-2.5 text-sm font-medium text-foreground hover:bg-accent/60 disabled:!cursor-not-allowed disabled:opacity-50 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",paginationButtonDisabled:"!cursor-not-allowed opacity-50",paginationPage:"inline-flex h-8 min-w-8 cursor-default items-center justify-center rounded-md bg-muted/50 px-2.5 text-sm font-medium text-foreground hover:bg-muted/50",paginationEllipsis:"inline-flex h-8 min-w-6 items-center justify-center px-1 text-sm text-muted-foreground",descriptionListRoot:"grid min-w-0 gap-3 text-sm",descriptionListItem:"grid min-w-0 gap-1 rounded-md border border-border/60 bg-background px-3 py-2 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out hover:shadow-sm",descriptionListTerm:"min-w-0 truncate text-xs font-medium uppercase tracking-[0.08em] text-muted-foreground",descriptionListValue:"min-w-0 text-sm leading-6 text-foreground",accordionRoot:"grid min-w-0 gap-2",accordionItem:"overflow-hidden rounded-lg border border-border/70 bg-background motion-safe:transition motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",accordionTrigger:"flex w-full min-w-0 cursor-pointer items-center justify-between gap-3 px-4 py-3 text-start text-sm font-medium text-foreground hover:bg-muted/40 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-50 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",accordionTriggerIcon:cn("h-2 w-2 shrink-0 rotate-45 border-b border-r border-current text-muted-foreground",motionTransform,"motion-reduce:transition-none"),accordionPanel:"border-t border-border/60 px-4 py-3 text-sm leading-6 text-muted-foreground motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out motion-reduce:animate-none",menuTrigger:"inline-flex min-w-0",menuContent:"z-50 min-w-44 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-hidden motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out",menuLabel:"px-2 py-1.5 text-xs font-medium text-muted-foreground",menuSeparator:"-mx-1 my-1 h-px bg-border",menuItem:cn("relative flex min-h-8 min-w-0 cursor-pointer select-none items-center gap-2 rounded-sm px-2.5 py-1.5 text-sm text-foreground outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:!cursor-not-allowed data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground",motionInteractive),menuItemDefault:"text-foreground",menuItemPrimary:"text-primary focus:text-primary data-[highlighted]:text-primary",menuItemSuccess:"text-[hsl(var(--success,142_72%_29%))] focus:text-[hsl(var(--success,142_72%_29%))] data-[highlighted]:text-[hsl(var(--success,142_72%_29%))]",menuItemWarning:"text-[hsl(var(--warning-foreground,28_73%_26%))] focus:text-[hsl(var(--warning-foreground,28_73%_26%))] data-[highlighted]:text-[hsl(var(--warning-foreground,28_73%_26%))]",menuItemDanger:"text-destructive-text focus:text-destructive-text data-[highlighted]:text-destructive-text",menuItemMuted:"text-muted-foreground focus:text-foreground data-[highlighted]:text-foreground",menuItemDisabled:"!cursor-not-allowed opacity-50 data-[disabled]:pointer-events-none",menuItemIcon:"inline-flex h-4 w-4 shrink-0 items-center justify-center",menuItemLabel:"min-w-0 flex-1 truncate",menuItemShortcut:"ml-4 shrink-0 text-xs font-medium text-muted-foreground",menuCheckboxIndicator:"absolute left-2 inline-flex h-4 w-4 items-center justify-center text-current",menuRadioIndicator:"absolute left-2 inline-flex h-4 w-4 items-center justify-center text-current",menuSubTrigger:cn("relative flex min-h-8 min-w-0 cursor-pointer select-none items-center gap-2 rounded-sm px-2.5 py-1.5 text-sm text-foreground outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:!cursor-not-allowed data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",motionInteractive),menuSubTriggerIcon:"ml-auto inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",menuSubContent:"z-50 min-w-40 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-hidden motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out",tableContainer:cn("relative isolate min-w-0 overflow-auto rounded-lg border border-border/70 bg-background/95 bg-clip-padding [scrollbar-gutter:stable]","[--base-table-header-height:2.75rem] [--base-table-split-scrollbar-gutter:0.75rem]","[--base-table-sticky-header-bg:hsl(var(--background))] [--base-table-header-separator:hsl(var(--border)_/_0.7)]",tableScrollbarChrome,motionBase),tableContainerFooterAttached:"!rounded-b-none !shadow-none",tableRoot:"w-full caption-bottom border-separate border-spacing-0 text-sm text-foreground",tableCaption:"mt-3 text-sm text-muted-foreground",tableHeader:cn("relative z-[2] bg-transparent [&_tr]:bg-transparent",tableStickyHeaderCells),tableBody:"[&_tr:last-child>*]:border-b-0",tableFooter:"bg-muted/30 font-medium [&_tr>*]:border-t [&_tr>*]:border-border/70",tableFooterBar:cn("flex min-w-0 flex-wrap items-center justify-between gap-3 rounded-lg border border-border/70 bg-muted/20 px-4 py-3 text-sm text-foreground shadow-none",motionBase),tableFooterBarAttached:"-mt-px rounded-t-none border-t border-border/70 shadow-none",tableFooterBarLeading:"flex min-w-0 items-center gap-2",tableFooterBarContent:"min-w-0 flex-1",tableFooterBarActions:"ms-auto flex shrink-0 flex-wrap items-center gap-2",tableSplitRoot:"grid w-full min-w-0 grid-cols-[minmax(0,1fr)] grid-rows-[auto_minmax(0,1fr)_auto] caption-bottom border-separate border-spacing-0 text-sm text-foreground",tableSplitHeader:"block w-full min-w-0 shrink-0 overflow-x-hidden overflow-y-hidden bg-transparent",tableSplitBody:cn("block min-h-0 w-full min-w-0 max-w-full justify-self-stretch overflow-auto [scrollbar-gutter:stable]",tableScrollbarChrome),tableSplitFooter:"block w-full min-w-0 shrink-0 overflow-x-hidden overflow-y-hidden",tableSplitRow:"grid w-max min-w-full [grid-template-columns:var(--base-table-column-template)]",tableSplitHead:"flex min-w-0 overflow-hidden",tableSplitCell:"block min-w-0 overflow-hidden [overflow-wrap:anywhere]",tableRow:cn("[&>*]:border-b [&>*]:border-border/60 data-[state=selected]:bg-primary/5 data-[state=selected]:[&>*]:bg-primary/5",motionBase),tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.35)] hover:bg-[var(--base-table-row-hover-bg)] hover:[&>*]:bg-[var(--base-table-row-hover-bg)]",tableRowSelected:"bg-primary/5 [&>*]:bg-primary/5",tableRowDisabled:"!cursor-not-allowed opacity-60",tableHead:"relative h-11 whitespace-nowrap px-3 py-2 text-left align-middle text-xs font-semibold text-muted-foreground shadow-[inset_0_-1px_0_var(--base-table-header-separator)]",tableHeadContent:"flex min-w-0 items-center justify-between gap-2",tableHeadMain:"flex min-w-0 items-center gap-2",tableHeadIcon:"inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",tableHeadText:"grid min-w-0 gap-0.5",tableHeadLabel:"min-w-0 truncate text-xs font-semibold leading-4 text-foreground",tableHeadDescription:"min-w-0 truncate text-xs font-normal leading-4 text-muted-foreground",tableHeadMeta:"shrink-0 text-xs font-medium text-muted-foreground",tableHeadActions:"flex shrink-0 items-center gap-1",tableHeadSortButton:cn("inline-flex min-w-0 cursor-pointer items-center gap-1 rounded-sm text-left focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-60",motionBase),tableHeadSortIcon:cn("inline-flex h-3 w-3 shrink-0 items-center justify-center text-muted-foreground",motionTransform),tableHeadDragHandle:cn("inline-flex h-5 w-4 shrink-0 cursor-grab items-center justify-center rounded-sm text-muted-foreground hover:bg-muted active:cursor-grabbing focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-50",motionBase),tableHeadResizeHandle:cn("absolute end-0 top-1/2 h-7 w-2 -translate-y-1/2 cursor-col-resize touch-none rounded-sm after:absolute after:start-1/2 after:top-1/2 after:h-5 after:w-px after:-translate-x-1/2 after:-translate-y-1/2 after:bg-border hover:after:bg-primary focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-50",motionBase),tableCell:"min-w-0 px-3 py-2 align-middle text-sm text-foreground [overflow-wrap:anywhere]",tableCellAlignCenter:"text-center",tableCellAlignRight:"text-right",tableEmptyRow:"[&>*]:border-b [&>*]:border-border/60",tableEmptyCell:"px-4 py-10 text-center",tableEmptyContent:"mx-auto flex max-w-md flex-col items-center justify-center text-center",tableEmptyIcon:"mb-3 flex h-10 w-10 items-center justify-center rounded-full bg-muted text-muted-foreground",tableEmptyTitle:"text-sm font-semibold text-foreground",tableEmptyDescription:"mt-1 text-sm leading-6 text-muted-foreground",tableEmptyActions:"mt-4 flex flex-wrap items-center justify-center gap-2",tableLoadingRow:"[&>*]:border-b [&>*]:border-border/60",tableLoadingCell:"px-3 py-2",tableLoadingSkeleton:"h-4 w-full rounded-md bg-muted/70",layoutRoot:cn("grid min-w-0 overflow-hidden grid-rows-[auto_minmax(0,1fr)_auto] gap-3 rounded-lg border border-border/70 bg-background p-3 text-foreground",motionBase),layoutRootFull:"h-full min-h-0",layoutHeader:"min-w-0",layoutBody:"grid min-h-0 min-w-0 overflow-hidden gap-token-md",layoutSidebar:"min-h-0 min-w-0 overflow-hidden",layoutMain:"min-h-0 min-w-0 overflow-hidden",layoutAside:"min-h-0 min-w-0 overflow-hidden",layoutFooter:"min-w-0",layoutPane:cn("h-full max-h-full min-h-0 min-w-0 overflow-hidden rounded-lg bg-background text-foreground",motionBase),layoutPaneScrollable:"overflow-auto",layoutPaneBordered:"border border-border/70",layoutPaneMuted:"bg-muted/25",layoutPaneSoft:"bg-background/95 shadow-sm",layoutPaneTransparent:"bg-transparent shadow-none",layoutSplitRoot:"grid min-h-0 min-w-0 overflow-hidden",layoutSplitHorizontal:"grid-flow-col",layoutSplitVertical:"grid-flow-row",layoutSplitPane:"min-h-0 min-w-0 overflow-hidden",layoutSplitPrimary:"",layoutSplitSecondary:"",layoutResizeHandle:cn("group/resize relative z-10 flex shrink-0 items-center justify-center bg-transparent text-muted-foreground hover:bg-border/60 active:bg-border/70 focus-visible:bg-border/60 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30",motionInteractive),layoutResizeHandleHorizontal:"w-2 cursor-col-resize",layoutResizeHandleVertical:"h-2 cursor-row-resize",layoutResizeHandleDisabled:"cursor-default opacity-60",layoutResizeHandleIndicator:"rounded-full bg-muted-foreground/45 group-hover/resize:bg-primary/70"},densitySlots={compact:{buttonBase:"h-8 px-2.5 text-xs",buttonIconOnly:"h-8 w-8 px-0",badgeBase:"px-1.5 py-0 text-xs",panelHeader:"p-token-md",panelBody:"px-token-md pb-token-md text-xs",panelBodyStandalone:"pt-token-md",panelFooter:"px-token-md py-token-md",stateRoot:"min-h-36 px-4 py-7",stateIcon:"mb-3 h-10 w-10",fieldRoot:"gap-token-sm",fieldLabel:"text-xs",fieldDescription:"text-xs leading-5",fieldMessage:"text-xs leading-5",controlInput:"h-8 text-xs",controlTextarea:"min-h-20 text-xs",controlSelect:"h-8 text-xs",selectMenu:"text-xs",selectOption:"min-h-7 px-2 py-1 text-xs",switchTrack:"h-5 w-9",switchThumb:"h-3.5 w-3.5",checkboxBox:"h-3.5 w-3.5",checkboxLabel:"text-xs",checkboxDescription:"text-xs leading-5",radioOption:"px-2 py-1.5 text-xs",radioMarker:"h-3.5 w-3.5",radioIndicator:"h-1.5 w-1.5",radioLabel:"text-xs",radioDescription:"text-xs leading-5",dialogPanel:"max-w-md",dialogHeader:"px-4 py-3",dialogTitle:"text-sm leading-5",dialogDescription:"text-xs leading-5",dialogBody:"px-4 py-3 text-xs",dialogFooter:"px-4 py-3",dropdownMenu:"min-w-44 text-xs",dropdownItem:"px-2 py-1.5 text-xs",tooltipContent:"text-xs leading-4",noticeBase:"px-3 py-2 text-xs",dividerLabel:"text-xs",sectionHeaderRoot:"gap-token-sm",sectionHeaderTitle:"text-sm leading-5",sectionHeaderDescription:"text-xs leading-5",tabsList:"gap-token-xs p-token-xs",tabsTrigger:"px-2 py-1 text-xs",tabsPanel:"p-3 text-xs",segmentedRoot:"gap-token-xs p-token-xs",segmentedItem:"px-2 py-1 text-xs",progressTrack:"h-1.5",avatarRoot:"text-xs",toolbarRoot:"gap-token-sm px-token-md py-token-md",toolbarTitle:"text-xs",toolbarDescription:"text-xs leading-5",paginationButton:"h-7 min-w-7 px-2 text-xs",paginationPage:"h-7 min-w-7 px-2 text-xs",descriptionListRoot:"gap-2 text-xs",descriptionListItem:"px-2 py-1.5",descriptionListTerm:"text-xs",descriptionListValue:"text-xs leading-5",accordionTrigger:"px-3 py-2 text-xs",accordionPanel:"px-3 py-2 text-xs leading-5",menuContent:"min-w-40 p-0.5 text-xs",menuSubContent:"min-w-36 p-0.5 text-xs",menuLabel:"px-2 py-1 text-xs",menuItem:"min-h-7 px-2 py-1 text-xs",menuSubTrigger:"min-h-7 px-2 py-1 text-xs",menuItemShortcut:"text-xs",tableContainer:"[--base-table-header-height:2.25rem]",tableHead:"h-9 px-2 py-1.5 text-xs",tableCell:"px-2 py-1.5 text-xs",tableHeadLabel:"text-xs",tableHeadDescription:"text-xs leading-3",tableLoadingCell:"px-2 py-1.5",layoutRoot:"gap-token-md p-token-md",layoutBody:"gap-token-md",layoutPane:"rounded-md text-xs",layoutResizeHandleHorizontal:"w-1.5",layoutResizeHandleVertical:"h-1.5"},default:{buttonBase:"h-9"},comfortable:{buttonBase:"h-10 px-3.5",buttonIconOnly:"h-10 w-10 px-0",badgeBase:"px-2.5 py-1",panelHeader:"p-token-xl",panelBody:"px-token-xl pb-token-xl",panelBodyStandalone:"pt-token-xl",panelFooter:"px-token-xl py-token-lg",stateRoot:"min-h-56 px-8 py-12",stateIcon:"mb-5 h-14 w-14",fieldRoot:"gap-token-md",controlInput:"h-10",controlTextarea:"min-h-28",controlSelect:"h-10",selectMenu:"p-1.5",selectOption:"min-h-9 px-3 py-2",switchTrack:"h-7 w-12",switchThumb:"h-5 w-5",checkboxBox:"h-5 w-5",radioOption:"px-4 py-3",radioMarker:"h-5 w-5",radioIndicator:"h-2.5 w-2.5",dialogPanel:"max-w-xl",dialogHeader:"px-6 py-5",dialogBody:"px-6 py-5",dialogFooter:"px-6 py-5",dropdownMenu:"min-w-56",dropdownItem:"px-3 py-2.5",noticeBase:"px-5 py-4",sectionHeaderTitle:"text-lg leading-7",tabsTrigger:"px-3.5 py-2",tabsPanel:"p-5",segmentedItem:"px-3.5 py-2",progressTrack:"h-2.5",toolbarRoot:"px-token-xl py-token-lg",paginationButton:"h-9 min-w-9 px-3",paginationPage:"h-9 min-w-9 px-3",descriptionListItem:"px-4 py-3",accordionTrigger:"px-5 py-4",accordionPanel:"px-5 py-4",menuContent:"min-w-48 p-1.5",menuSubContent:"min-w-44 p-1.5",menuItem:"min-h-9 px-3 py-2",menuSubTrigger:"min-h-9 px-3 py-2",tableContainer:"[--base-table-header-height:3rem]",tableHead:"h-12 px-4 py-3",tableCell:"px-4 py-3",tableLoadingCell:"px-4 py-3",layoutRoot:"gap-token-lg p-token-lg",layoutBody:"gap-token-lg",layoutPane:"rounded-xl",layoutResizeHandleHorizontal:"w-2.5",layoutResizeHandleVertical:"h-2.5"}},radiusSlots={none:{buttonBase:"rounded-none",badgeBase:"rounded-none",panelRoot:"rounded-none",stateRoot:"rounded-none",stateIcon:"rounded-none",controlWrapper:"rounded-none",selectMenu:"rounded-none",selectOption:"rounded-none",switchTrack:"rounded-none",switchThumb:"rounded-none",checkboxBox:"rounded-none",radioOption:"rounded-none",dialogPanel:"rounded-none",dialogClose:"rounded-none",dropdownMenu:"rounded-none",dropdownItem:"rounded-none",tooltipContent:"rounded-none",noticeBase:"rounded-none",tabsList:"rounded-none",tabsTrigger:"rounded-none",tabsPanel:"rounded-none",segmentedRoot:"rounded-none",segmentedItem:"rounded-none",progressTrack:"rounded-none",progressIndicator:"rounded-none",skeletonRoot:"rounded-none",avatarRoot:"rounded-none",avatarStatus:"rounded-none",toolbarRoot:"rounded-none",paginationButton:"rounded-none",paginationPage:"rounded-none",descriptionListItem:"rounded-none",accordionItem:"rounded-none",menuContent:"rounded-none",menuItem:"rounded-none",menuSubTrigger:"rounded-none",menuSubContent:"rounded-none",tableContainer:"rounded-none",tableEmptyIcon:"rounded-none",tableLoadingSkeleton:"rounded-none",layoutRoot:"rounded-none",layoutPane:"rounded-none"},sm:{buttonBase:"rounded-sm",badgeBase:"rounded-sm",panelRoot:"rounded-sm",stateRoot:"rounded-sm",stateIcon:"rounded-sm",controlWrapper:"rounded-sm",selectMenu:"rounded-sm",selectOption:"rounded-sm",switchTrack:"rounded-sm",switchThumb:"rounded-sm",checkboxBox:"rounded-sm",radioOption:"rounded-sm",dialogPanel:"rounded-sm",dialogClose:"rounded-sm",dropdownMenu:"rounded-sm",dropdownItem:"rounded-sm",tooltipContent:"rounded-sm",noticeBase:"rounded-sm",tabsList:"rounded-sm",tabsTrigger:"rounded-sm",tabsPanel:"rounded-sm",segmentedRoot:"rounded-sm",segmentedItem:"rounded-sm",progressTrack:"rounded-sm",progressIndicator:"rounded-sm",skeletonRoot:"rounded-sm",avatarRoot:"rounded-sm",avatarStatus:"rounded-sm",toolbarRoot:"rounded-sm",paginationButton:"rounded-sm",paginationPage:"rounded-sm",descriptionListItem:"rounded-sm",accordionItem:"rounded-sm",menuContent:"rounded-sm",menuItem:"rounded-sm",menuSubTrigger:"rounded-sm",menuSubContent:"rounded-sm",tableContainer:"rounded-sm",tableEmptyIcon:"rounded-sm",tableLoadingSkeleton:"rounded-sm",layoutRoot:"rounded-sm",layoutPane:"rounded-sm"},md:{},lg:{buttonBase:"rounded-lg",badgeBase:"rounded-lg",panelRoot:"rounded-xl",stateRoot:"rounded-xl",stateIcon:"rounded-xl",controlWrapper:"rounded-lg",selectMenu:"rounded-lg",selectOption:"rounded-md",switchTrack:"rounded-full",switchThumb:"rounded-full",checkboxBox:"rounded-md",radioOption:"rounded-xl",dialogPanel:"rounded-xl",dialogClose:"rounded-lg",dropdownMenu:"rounded-lg",dropdownItem:"rounded-md",tooltipContent:"rounded-md",noticeBase:"rounded-xl",tabsList:"rounded-xl",tabsTrigger:"rounded-lg",tabsPanel:"rounded-xl",segmentedRoot:"rounded-xl",segmentedItem:"rounded-lg",skeletonRoot:"rounded-lg",toolbarRoot:"rounded-xl",descriptionListItem:"rounded-lg",accordionItem:"rounded-xl",menuContent:"rounded-lg",menuItem:"rounded-md",menuSubTrigger:"rounded-md",menuSubContent:"rounded-lg",tableContainer:"rounded-xl",tableEmptyIcon:"rounded-xl",tableLoadingSkeleton:"rounded-lg",layoutRoot:"rounded-xl",layoutPane:"rounded-xl"},xl:{buttonBase:"rounded-xl",badgeBase:"rounded-xl",panelRoot:"rounded-2xl",stateRoot:"rounded-2xl",stateIcon:"rounded-2xl",controlWrapper:"rounded-xl",selectMenu:"rounded-xl",selectOption:"rounded-lg",switchTrack:"rounded-full",switchThumb:"rounded-full",checkboxBox:"rounded-lg",radioOption:"rounded-2xl",dialogPanel:"rounded-2xl",dialogClose:"rounded-xl",dropdownMenu:"rounded-xl",dropdownItem:"rounded-lg",tooltipContent:"rounded-lg",noticeBase:"rounded-2xl",tabsList:"rounded-2xl",tabsTrigger:"rounded-xl",tabsPanel:"rounded-2xl",segmentedRoot:"rounded-2xl",segmentedItem:"rounded-xl",skeletonRoot:"rounded-xl",toolbarRoot:"rounded-2xl",paginationButton:"rounded-xl",paginationPage:"rounded-xl",descriptionListItem:"rounded-xl",accordionItem:"rounded-2xl",menuContent:"rounded-xl",menuItem:"rounded-lg",menuSubTrigger:"rounded-lg",menuSubContent:"rounded-xl",tableContainer:"rounded-2xl",tableEmptyIcon:"rounded-2xl",tableLoadingSkeleton:"rounded-xl",layoutRoot:"rounded-2xl",layoutPane:"rounded-2xl"},full:{buttonBase:"rounded-full",badgeBase:"rounded-full",panelRoot:"rounded-2xl",stateRoot:"rounded-2xl",stateIcon:"rounded-full",controlWrapper:"rounded-full",selectMenu:"rounded-2xl",selectOption:"rounded-full",switchTrack:"rounded-full",switchThumb:"rounded-full",checkboxBox:"rounded-full",radioOption:"rounded-2xl",dialogPanel:"rounded-2xl",dialogClose:"rounded-full",dropdownMenu:"rounded-2xl",dropdownItem:"rounded-full",tooltipContent:"rounded-full",noticeBase:"rounded-2xl",tabsList:"rounded-full",tabsTrigger:"rounded-full",tabsPanel:"rounded-2xl",segmentedRoot:"rounded-full",segmentedItem:"rounded-full",progressTrack:"rounded-full",progressIndicator:"rounded-full",skeletonRoot:"rounded-full",avatarRoot:"rounded-full",avatarStatus:"rounded-full",toolbarRoot:"rounded-2xl",paginationButton:"rounded-full",paginationPage:"rounded-full",descriptionListItem:"rounded-2xl",accordionItem:"rounded-2xl",menuContent:"rounded-2xl",menuItem:"rounded-full",menuSubTrigger:"rounded-full",menuSubContent:"rounded-2xl",tableContainer:"rounded-2xl",tableEmptyIcon:"rounded-full",tableLoadingSkeleton:"rounded-full",layoutRoot:"rounded-2xl",layoutPane:"rounded-2xl"}},borderSlots={none:{buttonBase:"border-transparent",badgeBase:"border-transparent",panelRoot:"border-transparent",panelFooter:"border-transparent",stateRoot:"border-transparent",controlWrapper:"border-transparent",selectMenu:"border-transparent",switchTrack:"border-transparent",checkboxBox:"border-transparent",radioOption:"border-transparent",radioMarker:"border-transparent",dialogPanel:"border-transparent",dialogHeader:"border-transparent",dialogFooter:"border-transparent",dropdownMenu:"border-transparent",tooltipContent:"border-transparent",noticeBase:"border-transparent",dividerRoot:"border-transparent",tabsList:"border-transparent",tabsPanel:"border-transparent",segmentedRoot:"border-transparent",avatarRoot:"border-transparent",toolbarRoot:"border-transparent",paginationButton:"border-transparent",descriptionListItem:"border-transparent",accordionItem:"border-transparent",accordionPanel:"border-transparent",menuContent:"border-transparent",menuSeparator:"bg-transparent",menuSubContent:"border-transparent",tableContainer:"border-transparent [--base-table-header-separator:transparent]",tableHeader:"border-transparent",tableFooter:"[&_tr>*]:border-transparent",tableFooterBar:"border-transparent",tableFooterBarAttached:"border-t border-transparent",tableRow:"[&>*]:border-transparent",tableEmptyRow:"[&>*]:border-transparent",tableLoadingRow:"[&>*]:border-transparent",layoutRoot:"border-transparent",layoutPaneBordered:"border-transparent",layoutResizeHandle:"bg-transparent hover:bg-transparent active:bg-transparent focus-visible:bg-transparent"},subtle:{buttonDefault:"border-border/60",badgeDefault:"border-border/60",panelRoot:"border-border/60",panelFooter:"border-border/60",stateRoot:"border-border/60",controlWrapper:"border-border/60",selectMenu:"border-border/60",switchTrack:"border-border/60",checkboxBox:"border-border/60",radioOption:"border-border/60",radioMarker:"border-border/60",dialogPanel:"border-border/60",dialogHeader:"border-border/60",dialogFooter:"border-border/60",dropdownMenu:"border-border/60",tooltipContent:"border-border/60",noticeDefault:"border-border/60",dividerRoot:"border-border/60",tabsList:"border-border/60",tabsPanel:"border-border/60",segmentedRoot:"border-border/60",avatarRoot:"border-border/60",toolbarRoot:"border-border/60",paginationButton:"border-border/60",descriptionListItem:"border-border/60",accordionItem:"border-border/60",accordionPanel:"border-border/60",menuContent:"border-border/60",menuSeparator:"bg-border/60",menuSubContent:"border-border/60",tableContainer:"border-border/60 [--base-table-header-separator:hsl(var(--border)_/_0.6)]",tableHeader:"border-border/60",tableFooter:"[&_tr>*]:border-border/60",tableFooterBar:"border-border/60",tableFooterBarAttached:"border-t border-border/60",tableRow:"[&>*]:border-border/50",tableEmptyRow:"[&>*]:border-border/50",tableLoadingRow:"[&>*]:border-border/50",layoutRoot:"border-border/60",layoutPaneBordered:"border-border/60"},solid:{},strong:{buttonDefault:"border-foreground/20",badgeDefault:"border-foreground/20",panelRoot:"border-foreground/20",panelFooter:"border-foreground/20",stateRoot:"border-foreground/20",controlWrapper:"border-foreground/20",selectMenu:"border-foreground/20",switchTrack:"border-foreground/20",checkboxBox:"border-foreground/20",radioOption:"border-foreground/20",radioMarker:"border-foreground/20",dialogPanel:"border-foreground/20",dialogHeader:"border-foreground/15",dialogFooter:"border-foreground/15",dropdownMenu:"border-foreground/20",tooltipContent:"border-foreground/20",noticeDefault:"border-foreground/20",dividerRoot:"border-foreground/20",tabsList:"border-foreground/20",tabsPanel:"border-foreground/20",segmentedRoot:"border-foreground/20",avatarRoot:"border-foreground/20",toolbarRoot:"border-foreground/20",paginationButton:"border-foreground/20",descriptionListItem:"border-foreground/20",accordionItem:"border-foreground/20",accordionPanel:"border-foreground/20",menuContent:"border-foreground/20",menuSeparator:"bg-foreground/15",menuSubContent:"border-foreground/20",tableContainer:"border-foreground/20 [--base-table-header-separator:hsl(var(--foreground)_/_0.15)]",tableHeader:"border-foreground/20",tableFooter:"[&_tr>*]:border-foreground/20",tableFooterBar:"border-foreground/20",tableFooterBarAttached:"border-t border-foreground/20",tableRow:"[&>*]:border-foreground/15",tableEmptyRow:"[&>*]:border-foreground/15",tableLoadingRow:"[&>*]:border-foreground/15",layoutRoot:"border-foreground/20",layoutPaneBordered:"border-foreground/20",layoutResizeHandle:"hover:bg-foreground/15 active:bg-foreground/20 focus-visible:bg-foreground/15"}},backgroundSlots={plain:{},muted:{buttonDefault:"bg-muted/20 hover:bg-muted/45",panelRoot:"bg-card",panelFooter:"bg-muted/20",stateRoot:"bg-muted/20",controlWrapper:"bg-background",selectMenu:"bg-background",selectOptionActive:"bg-muted/70 text-foreground",checkboxBox:"bg-background",radioOption:"bg-card hover:bg-muted/45",radioMarker:"bg-background",dialogPanel:"bg-card",dropdownMenu:"bg-background",dropdownItem:"hover:bg-muted/60",tooltipContent:"bg-popover",noticeDefault:"bg-muted/20",tabsList:"bg-muted/35",tabsTriggerActive:"bg-background",tabsPanel:"bg-card",segmentedRoot:"bg-muted/35",segmentedItemActive:"bg-background",progressTrack:"bg-muted/60",skeletonRoot:"bg-muted",toolbarRoot:"bg-card",paginationButton:"bg-background hover:bg-muted/60",paginationPage:"bg-muted/60",descriptionListItem:"bg-card",accordionItem:"bg-card",menuContent:"bg-background",menuItem:"focus:bg-muted/70 data-[highlighted]:bg-muted/70",menuSubTrigger:"focus:bg-muted/70 data-[highlighted]:bg-muted/70 data-[state=open]:bg-muted/70",menuSubContent:"bg-background",tableContainer:"bg-background/95 [scrollbar-gutter:stable]",tableFooter:"bg-muted/35",tableFooterBar:"bg-muted/30 shadow-none",tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.45)]",tableLoadingSkeleton:"bg-muted",layoutRoot:"bg-card",layoutPane:"bg-card",layoutPaneMuted:"bg-muted/35",layoutResizeHandle:"hover:bg-border/70 active:bg-border/80 focus-visible:bg-border/70"},soft:{buttonDefault:"bg-muted/30 hover:bg-muted/55",panelRoot:"bg-background/95 shadow-sm",stateRoot:"bg-background/95 shadow-sm",controlWrapper:"bg-background/95",selectMenu:"bg-background/95 shadow-xl",selectOptionActive:"bg-muted/60 text-foreground",checkboxBox:"bg-background/95",radioOption:"bg-background/95 shadow-sm hover:bg-muted/35",radioMarker:"bg-background/95",dialogPanel:"bg-background/95 shadow-xl",dropdownMenu:"bg-background/95 shadow-xl",dropdownItem:"hover:bg-muted/55",tooltipContent:"bg-popover shadow-xl",noticeDefault:"bg-background/95 shadow-sm",tabsList:"bg-background/60 shadow-sm",tabsTriggerActive:"bg-background",tabsPanel:"bg-background/95 shadow-sm",segmentedRoot:"bg-background/60 shadow-sm",segmentedItemActive:"bg-background",skeletonRoot:"bg-background/80",toolbarRoot:"bg-background/95 shadow-sm",paginationButton:"bg-background/95 hover:bg-muted/55",descriptionListItem:"bg-background/95 shadow-sm",accordionItem:"bg-background/95 shadow-sm",menuContent:"bg-background/95 shadow-xl",menuItem:"focus:bg-muted/60 data-[highlighted]:bg-muted/60",menuSubTrigger:"focus:bg-muted/60 data-[highlighted]:bg-muted/60 data-[state=open]:bg-muted/60",menuSubContent:"bg-background/95 shadow-xl",tableContainer:"bg-background/95 shadow-sm [scrollbar-gutter:stable]",tableFooter:"bg-muted/25",tableFooterBar:"bg-muted/25 shadow-none",tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.35)]",tableLoadingSkeleton:"bg-muted/65",layoutRoot:"bg-background/95 shadow-sm",layoutPane:"bg-background/95 shadow-sm",layoutPaneSoft:"bg-background/95 shadow-md"},glass:{buttonBase:"backdrop-blur-md",buttonDefault:"border-white/10 bg-white/[0.08] text-foreground hover:bg-white/[0.14]",badgeDefault:"border-white/10 bg-white/[0.08] text-foreground",panelRoot:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",panelFooter:"border-white/10 bg-white/[0.05]",stateRoot:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",stateIcon:"bg-white/10 text-foreground",controlWrapper:"border-white/10 bg-white/[0.08] text-foreground backdrop-blur-md",selectMenu:"border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",selectOption:"text-foreground",selectOptionActive:"bg-white/[0.14] text-foreground",selectOptionSelected:"bg-white/[0.18] text-foreground",switchTrack:"border-white/10 bg-white/[0.12] backdrop-blur-md",checkboxBox:"border-white/10 bg-white/[0.08] backdrop-blur-md",checkboxBoxChecked:"border-white/20 bg-white/[0.22] text-foreground",radioOption:"border-white/10 bg-white/[0.06] backdrop-blur-md hover:bg-white/[0.10]",radioMarker:"border-white/10 bg-white/[0.08] backdrop-blur-md",radioMarkerChecked:"border-white/25 bg-white/[0.16]",dialogOverlay:"bg-background/45 backdrop-blur-md",dialogPanel:"border-white/10 bg-white/[0.08] shadow-2xl backdrop-blur-md",dialogHeader:"border-white/10",dialogFooter:"border-white/10",dropdownMenu:"border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",dropdownItem:"text-foreground hover:bg-white/[0.14]",tooltipContent:"border-foreground/10 bg-background/15 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",noticeDefault:"border-white/10 bg-white/[0.08] text-foreground backdrop-blur-md",dividerRoot:"border-white/15",tabsList:"border-white/10 bg-white/[0.08] backdrop-blur-md",tabsTrigger:"text-muted-foreground hover:bg-white/[0.12] hover:text-foreground",tabsTriggerActive:"bg-white/[0.16] text-foreground shadow-none",tabsPanel:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",segmentedRoot:"border-white/10 bg-white/[0.08] backdrop-blur-md",segmentedItem:"text-muted-foreground hover:bg-white/[0.12] hover:text-foreground",segmentedItemActive:"bg-white/[0.16] text-foreground shadow-none",progressTrack:"bg-white/[0.12]",skeletonRoot:"bg-white/[0.16]",avatarRoot:"border-white/10 bg-white/[0.12] text-foreground",avatarFallback:"bg-white/[0.12] text-foreground",avatarStatus:"border-background",toolbarRoot:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",paginationButton:"border-white/10 bg-white/[0.08] text-foreground hover:bg-white/[0.14]",paginationPage:"bg-white/[0.12] text-foreground",descriptionListItem:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",accordionItem:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",accordionPanel:"border-white/10",menuContent:"border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",menuSeparator:"bg-white/10",menuItem:"text-foreground focus:bg-white/[0.14] focus:text-foreground data-[highlighted]:bg-white/[0.14] data-[highlighted]:text-foreground",menuSubTrigger:"text-foreground focus:bg-white/[0.14] focus:text-foreground data-[highlighted]:bg-white/[0.14] data-[highlighted]:text-foreground data-[state=open]:bg-white/[0.16]",menuSubContent:"border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",tableContainer:"border-foreground/10 bg-background/[0.06] shadow-none backdrop-blur-md [scrollbar-gutter:stable] [--base-table-sticky-header-bg:hsl(var(--background)/0.94)] [--base-table-header-separator:hsl(var(--foreground)/0.24)]",tableHeader:"border-white/10",tableFooter:"bg-white/[0.05] [&_tr>*]:border-white/10",tableFooterBar:"border-white/10 bg-white/[0.05] shadow-none backdrop-blur-md",tableFooterBarAttached:"border-t border-white/10",tableRow:"[&>*]:border-white/10",tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--foreground)/0.08)]",tableHeadLabel:"text-foreground",tableLoadingSkeleton:"bg-white/[0.16]",layoutRoot:"border-white/10 bg-white/[0.05] shadow-none backdrop-blur-md",layoutPane:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",layoutPaneMuted:"bg-white/[0.08]",layoutPaneSoft:"bg-white/[0.10] shadow-none backdrop-blur-md",layoutResizeHandle:"text-foreground/65 hover:bg-white/10 active:bg-white/15 focus-visible:bg-white/10",layoutResizeHandleIndicator:"bg-white/45 group-hover/resize:bg-white/75"},dark:{buttonBase:"border-white/15 text-white shadow-lg backdrop-blur",buttonDefault:"bg-black/30 hover:bg-black/[0.45]",buttonPrimary:"border-white/25 bg-white/20 text-white hover:bg-white/25",buttonMuted:"border-white/10 bg-black/20 text-white/70 hover:bg-black/[0.35] hover:text-white",badgeDefault:"border-white/10 bg-white/[0.08] text-white",badgeMuted:"border-white/10 bg-black/20 text-white/70",panelRoot:"border-white/10 bg-slate-950 text-white shadow-none",panelTitle:"text-white",panelDescription:"text-white/65",panelBody:"text-white/85",panelFooter:"border-white/10 bg-white/[0.04]",stateRoot:"border-white/10 bg-slate-950 text-white shadow-none",stateIcon:"bg-white/10 text-white/75",stateTitle:"text-white",stateDescription:"text-white/65",fieldLabel:"text-white",fieldDescription:"text-white/65",fieldMessage:"text-white/65",controlWrapper:"border-white/15 bg-black/30 text-white shadow-lg backdrop-blur focus-within:border-white/35",controlBase:"text-white placeholder:text-white/45",selectChevron:"text-white/65",selectMenu:"border-white/15 bg-slate-950 text-white shadow-2xl",selectOption:"text-white",selectOptionActive:"bg-white/[0.12] text-white",selectOptionSelected:"bg-white/[0.16] text-white",selectPlaceholder:"text-white/45",switchTrack:"border-white/15 bg-black/30 shadow-lg backdrop-blur",switchChecked:"border-white/25 bg-white/25 text-white",switchLabel:"text-white",switchDescription:"text-white/65",checkboxBox:"border-white/15 bg-black/30 text-white shadow-lg backdrop-blur",checkboxBoxChecked:"border-white/25 bg-white/25 text-white",checkboxLabel:"text-white",checkboxDescription:"text-white/65",radioOption:"border-white/10 bg-white/[0.06] text-white hover:bg-white/[0.08]",radioMarker:"border-white/15 bg-black/30 text-white shadow-lg backdrop-blur",radioMarkerChecked:"border-white/25 bg-white/25",radioIndicator:"bg-white",radioLabel:"text-white",radioDescription:"text-white/65",dialogOverlay:"bg-slate-950/75",dialogPanel:"border-white/10 bg-slate-950 text-white shadow-2xl",dialogHeader:"border-white/10",dialogTitle:"text-white",dialogDescription:"text-white/65",dialogBody:"text-white/85",dialogFooter:"border-white/10",dialogClose:"text-white/65 hover:bg-white/[0.08] hover:text-white",dropdownMenu:"border-white/15 bg-slate-950 text-white shadow-2xl",dropdownLabel:"text-white/55",dropdownSeparator:"bg-white/15",dropdownItem:"text-white hover:bg-white/[0.10]",dropdownItemDescription:"text-white/55",dropdownItemShortcut:"text-white/55",tooltipContent:"border-white/15 bg-slate-950 text-white shadow-2xl",noticeDefault:"border-white/10 bg-white/[0.08] text-white",noticeMuted:"border-white/10 bg-black/20 text-white/70",dividerRoot:"border-white/15",dividerLabel:"text-white/55",sectionHeaderEyebrow:"text-white/55",sectionHeaderTitle:"text-white",sectionHeaderDescription:"text-white/65",tabsList:"border-white/10 bg-white/[0.08]",tabsTrigger:"text-white/65 hover:bg-white/[0.12] hover:text-white",tabsTriggerActive:"bg-white/[0.16] text-white shadow-none",tabsPanel:"border-white/10 bg-white/[0.06] text-white",segmentedRoot:"border-white/10 bg-white/[0.08]",segmentedItem:"text-white/65 hover:bg-white/[0.12] hover:text-white",segmentedItemActive:"bg-white/[0.16] text-white shadow-none",progressTrack:"bg-white/[0.12]",progressLabel:"text-white",progressValue:"text-white/65",skeletonRoot:"bg-white/[0.14]",avatarRoot:"border-white/15 bg-white/[0.10] text-white",avatarFallback:"bg-white/[0.10] text-white/75",avatarText:"text-white",avatarStatus:"border-slate-950",toolbarRoot:"border-white/10 bg-white/[0.06] text-white",toolbarTitle:"text-white",toolbarDescription:"text-white/65",breadcrumbLink:"text-white/65 hover:text-white",breadcrumbCurrent:"text-white",breadcrumbSeparator:"text-white/45",paginationInfo:"text-white/65",paginationButton:"border-white/10 bg-white/[0.08] text-white hover:bg-white/[0.14]",paginationPage:"bg-white/[0.14] text-white",descriptionListItem:"border-white/10 bg-white/[0.06]",descriptionListTerm:"text-white/55",descriptionListValue:"text-white",accordionItem:"border-white/10 bg-white/[0.06]",accordionTrigger:"text-white hover:bg-white/[0.08]",accordionPanel:"border-white/10 text-white/70",tableContainer:"border-foreground/10 bg-background text-foreground shadow-none [scrollbar-gutter:stable] [--base-table-sticky-header-bg:hsl(var(--background)/0.98)] [--base-table-header-separator:hsl(var(--foreground)/0.16)]",tableRoot:"text-white",tableHeader:"border-white/10",tableFooter:"bg-white/[0.05] [&_tr>*]:border-white/10",tableFooterBar:"border-white/10 bg-white/[0.05] text-white/65",tableFooterBarAttached:"border-t border-white/10",tableRow:"[&>*]:border-white/10",tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--foreground)/0.06)]",tableHead:"text-white/65",tableHeadLabel:"text-white",tableHeadDescription:"text-white/55",tableHeadMeta:"text-white/55",tableHeadIcon:"text-white/55",tableHeadSortIcon:"text-white/55",tableHeadDragHandle:"text-white/55 hover:bg-white/[0.08]",tableHeadResizeHandle:"after:bg-white/20 hover:after:bg-white/60",tableCell:"text-white/85",tableEmptyIcon:"bg-white/10 text-white/65",tableEmptyTitle:"text-white",tableEmptyDescription:"text-white/60",menuContent:"border-white/10 bg-slate-950 text-white shadow-2xl",menuLabel:"text-white/55",menuSeparator:"bg-white/10",menuItem:"text-white focus:bg-white/[0.10] focus:text-white data-[highlighted]:bg-white/[0.10] data-[highlighted]:text-white",menuItemDefault:"text-white",menuItemPrimary:"text-primary focus:text-primary data-[highlighted]:text-primary",menuItemSuccess:"text-[hsl(var(--success,142_69%_58%))] focus:text-[hsl(var(--success,142_69%_58%))] data-[highlighted]:text-[hsl(var(--success,142_69%_58%))]",menuItemWarning:"text-[hsl(var(--warning-foreground,53_98%_77%))] focus:text-[hsl(var(--warning-foreground,53_98%_77%))] data-[highlighted]:text-[hsl(var(--warning-foreground,53_98%_77%))]",menuItemDanger:"text-destructive-text focus:text-destructive-text data-[highlighted]:text-destructive-text",menuItemMuted:"text-white/65 focus:text-white data-[highlighted]:text-white",menuItemShortcut:"text-white/45",menuSubTrigger:"text-white focus:bg-white/[0.10] focus:text-white data-[highlighted]:bg-white/[0.10] data-[highlighted]:text-white data-[state=open]:bg-white/[0.12]",menuSubTriggerIcon:"text-white/55",menuSubContent:"border-white/10 bg-slate-950 text-white shadow-2xl",tableLoadingSkeleton:"bg-white/[0.14]",layoutRoot:"border-white/10 bg-slate-950 text-white shadow-none",layoutPane:"border-white/10 bg-slate-950 text-white shadow-none",layoutPaneMuted:"bg-white/[0.06]",layoutPaneSoft:"bg-white/[0.08] shadow-none",layoutResizeHandle:"text-white/65 hover:bg-white/10 active:bg-white/15 focus-visible:bg-white/10",layoutResizeHandleIndicator:"bg-white/45 group-hover/resize:bg-white/75"}},presetDefaults={default:{density:"default",radius:"md",border:"solid",background:"plain"},soft:{density:"default",radius:"lg",border:"subtle",background:"soft"},compact:{density:"compact",radius:"md",border:"subtle",background:"muted"},"tinted-glass":{density:"default",radius:"lg",border:"subtle",background:"glass"},glass:{density:"default",radius:"xl",border:"subtle",background:"glass"},"hard-edge":{density:"compact",radius:"none",border:"strong",background:"plain"}},presetSlots={soft:{buttonBase:"font-medium",panelRoot:"border-border/70",controlWrapper:"font-medium",tabsTrigger:"font-medium",segmentedItem:"font-medium",toolbarRoot:"border-border/70",tableContainer:"border-border/70",tableFooterBar:"border-border/70",tableHeadLabel:"font-semibold",menuItemLabel:"font-medium"},compact:{buttonBase:"text-xs",badgeBase:"text-xs",fieldLabel:"text-xs",controlBase:"text-xs",selectOption:"text-xs",menuItem:"text-xs",menuSubTrigger:"text-xs",noticeBase:"text-xs",sectionHeaderTitle:"text-sm",tabsTrigger:"text-xs",segmentedItem:"text-xs",toolbarTitle:"text-xs",paginationRoot:"text-xs"},"tinted-glass":{buttonPrimary:"border-primary/25 bg-primary/15 text-primary-foreground hover:bg-primary/20",badgePrimary:"border-primary/25 bg-primary/15 text-primary-foreground",noticePrimary:"border-primary/25 bg-primary/15 text-primary-foreground",progressIndicator:"bg-primary",avatarStatus:"border-background"},glass:{panelRoot:"shadow-[0_24px_80px_hsl(var(--foreground)/0.12)]",stateRoot:"shadow-[0_24px_80px_hsl(var(--foreground)/0.12)]",noticeBase:"shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",tabsPanel:"shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",toolbarRoot:"shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",descriptionListItem:"shadow-[0_12px_40px_hsl(var(--foreground)/0.08)]",accordionItem:"shadow-[0_12px_40px_hsl(var(--foreground)/0.08)]"},"hard-edge":{buttonBase:"shadow-none",panelRoot:"shadow-none",stateRoot:"shadow-none",controlWrapper:"shadow-none",selectMenu:"shadow-none",menuContent:"shadow-none",menuSubContent:"shadow-none",noticeBase:"shadow-none",tabsList:"shadow-none",tabsTriggerActive:"shadow-none",tabsPanel:"shadow-none",segmentedRoot:"shadow-none",segmentedItemActive:"shadow-none",toolbarRoot:"shadow-none",descriptionListItem:"shadow-none",accordionItem:"shadow-none"}};function getPresetDefaults(preset){return presetDefaults[preset]??presetDefaults.default}var slotKeys=Object.keys(baseSlots);function mergeSlots(...sources){return slotKeys.reduce((resolved,key3)=>(resolved[key3]=cn(...sources.map(source=>source?.[key3])),resolved),{})}function mergeStyles(...styleSets){return Object.assign({},...styleSets.filter(Boolean))}function resolveBaseAppearance(appearance2){let preset=appearance2?.preset??"default",variant=appearance2?.variant??"default",defaults=getPresetDefaults(preset),density=appearance2?.density??defaults.density??"default",state=appearance2?.state??"idle",radius=appearance2?.radius??defaults.radius??"md",border=appearance2?.border??defaults.border??"solid",background=appearance2?.background??defaults.background??"plain";return {preset,variant,density,state,radius,border,background,styles:mergeStyles(emptyStyles,appearance2?.styles),slots:mergeSlots(baseSlots,presetSlots[preset],densitySlots[density],radiusSlots[radius],borderSlots[border],backgroundSlots[background],appearance2?.slots)}}function getBaseButtonToneClassName(theme,tone="default",active=false){return cn(tone==="default"&&theme.slots.buttonDefault,tone==="primary"&&theme.slots.buttonPrimary,tone==="success"&&theme.slots.buttonSuccess,tone==="warning"&&theme.slots.buttonWarning,tone==="danger"&&theme.slots.buttonDanger,tone==="muted"&&theme.slots.buttonMuted,active&&theme.slots.buttonActive)}function getBaseBadgeToneClassName(theme,tone="default"){return cn(tone==="default"&&theme.slots.badgeDefault,tone==="primary"&&theme.slots.badgePrimary,tone==="success"&&theme.slots.badgeSuccess,tone==="warning"&&theme.slots.badgeWarning,tone==="danger"&&theme.slots.badgeDanger,tone==="muted"&&theme.slots.badgeMuted)}function getBaseNoticeToneClassName(theme,tone="default"){return cn(tone==="default"&&theme.slots.noticeDefault,tone==="primary"&&theme.slots.noticePrimary,tone==="success"&&theme.slots.noticeSuccess,tone==="warning"&&theme.slots.noticeWarning,tone==="danger"&&theme.slots.noticeDanger,tone==="muted"&&theme.slots.noticeMuted)}function getBaseTypographyToneClassName(theme,tone="default"){return cn(tone==="default"&&theme.slots.typographyToneDefault,tone==="muted"&&theme.slots.typographyToneMuted,tone==="primary"&&theme.slots.typographyTonePrimary,tone==="success"&&theme.slots.typographyToneSuccess,tone==="warning"&&theme.slots.typographyToneWarning,tone==="danger"&&theme.slots.typographyToneDanger,tone==="inherit"&&theme.slots.typographyToneInherit)}function getBaseTextSizeClassName(theme,size2="md"){return cn(size2==="xs"&&theme.slots.textSizeXs,size2==="sm"&&theme.slots.textSizeSm,size2==="md"&&theme.slots.textSizeMd,size2==="lg"&&theme.slots.textSizeLg,size2==="xl"&&theme.slots.textSizeXl)}function getBaseHeadingSizeClassName(theme,size2="lg"){return cn(size2==="xs"&&theme.slots.headingSizeXs,size2==="sm"&&theme.slots.headingSizeSm,size2==="md"&&theme.slots.headingSizeMd,size2==="lg"&&theme.slots.headingSizeLg,size2==="xl"&&theme.slots.headingSizeXl,size2==="2xl"&&theme.slots.headingSize2xl)}var cssLengthPattern=/^(?:0+(?:\.0+)?|(?:\d+(?:\.\d+)?|\.\d+)(?:%|cap|ch|cm|dvb|dvh|dvi|dvw|em|ex|ic|in|lh|lvb|lvh|lvi|lvw|mm|pc|pt|px|q|rem|rlh|svb|svh|svi|svw|vb|vh|vi|vmax|vmin|vw))$/i,cssLengthFunctions=new Set(["calc","clamp","max","min","var"]),unsafeCssValuePattern=/[;{}<>"'\\\u0000-\u001f\u007f]/;function hasBalancedDelimiters(value){let pairs={")":"(","]":"["},stack=[];for(let character of value)if(character==="("||character==="[")stack.push(character);else if((character===")"||character==="]")&&stack.pop()!==pairs[character])return false;return stack.length===0}function isSupportedCssLengthFunction(value){let match=/^([a-z]+)\(([\s\S]+)\)$/i.exec(value);return !match||!cssLengthFunctions.has(match[1].toLowerCase())||!match[2].trim()||!hasBalancedDelimiters(value)?false:match[1].toLowerCase()==="var"?/^\s*--[a-z0-9_-]+(?:\s*,[\s\S]+)?\s*$/i.test(match[2]):cssLengthPattern.test(match[2].trim())||/\b(?:calc|clamp|max|min|var)\s*\(/i.test(match[2])||/(?:^|[\s,(])(?:0+(?:\.0+)?|(?:\d+(?:\.\d+)?|\.\d+)(?:%|cap|ch|cm|dvb|dvh|dvi|dvw|em|ex|ic|in|lh|lvb|lvh|lvi|lvw|mm|pc|pt|px|q|rem|rlh|svb|svh|svi|svw|vb|vh|vi|vmax|vmin|vw))(?:$|[\s,)])/i.test(match[2])}function resolveBaseLayoutLength(componentName,propName,value){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new RangeError(`${componentName} ${propName} must be a finite, non-negative number or a supported CSS length string.`);return `${value}px`}if(typeof value!="string")throw new TypeError(`${componentName} ${propName} must be a finite, non-negative number or a supported CSS length string.`);let normalized=value.trim();if(!normalized||unsafeCssValuePattern.test(normalized)||!cssLengthPattern.test(normalized)&&!isSupportedCssLengthFunction(normalized))throw new TypeError(`${componentName} ${propName} must be a non-empty, non-negative CSS length (for example 12px, 1rem, 5%, or var(--space)).`);return normalized}var layoutAlignValues={start:"flex-start",center:"center",end:"flex-end",stretch:"stretch",baseline:"baseline"},layoutJustifyValues={start:"flex-start",center:"center",end:"flex-end",between:"space-between",around:"space-around",evenly:"space-evenly"};function resolveBaseLayoutAlign(componentName,value){if(!Object.prototype.hasOwnProperty.call(layoutAlignValues,value))throw new TypeError(`${componentName} align must be one of: start, center, end, stretch, baseline.`);return layoutAlignValues[value]}function resolveBaseLayoutJustify(componentName,value){if(!Object.prototype.hasOwnProperty.call(layoutJustifyValues,value))throw new TypeError(`${componentName} justify must be one of: start, center, end, between, around, evenly.`);return layoutJustifyValues[value]}var dialogTriggerTones=["default","primary","success","warning","danger","muted"];function validateBoolean(value,name){if(typeof value!="boolean")throw new TypeError(`BaseDialog ${name} must be a boolean.`)}function validateTriggerTone(value){if(!dialogTriggerTones.includes(value))throw new TypeError('BaseDialog triggerTone must be "default", "primary", "success", "warning", "danger", or "muted".')}function renderTrigger({trigger,triggerLabel,triggerIcon,triggerTone,triggerDisabled,theme}){return hasRenderableNode(trigger)?jsxRuntime.jsx("span",{role:"button",tabIndex:triggerDisabled?-1:0,"aria-disabled":triggerDisabled||void 0,onKeyDown:event=>{triggerDisabled||(event.key==="Enter"||event.key===" ")&&(event.preventDefault(),event.currentTarget.click());},children:trigger}):hasRenderableNode(triggerLabel)?jsxRuntime.jsxs("button",{type:"button",disabled:triggerDisabled,"aria-label":typeof triggerLabel=="string"&&triggerLabel.trim()?triggerLabel:void 0,className:cn(theme.slots.buttonBase,getBaseButtonToneClassName(theme,triggerTone),triggerDisabled&&theme.slots.buttonDisabled),style:{...theme.styles.button,...triggerDisabled?theme.styles.buttonDisabled:void 0},children:[hasRenderableNode(triggerIcon)?jsxRuntime.jsx("span",{"data-slot":"icon",className:theme.slots.buttonIcon,children:triggerIcon}):null,jsxRuntime.jsx("span",{"data-slot":"label",className:theme.slots.buttonLabel,children:triggerLabel})]}):null}var BaseDialog=React8.forwardRef(function({open,defaultOpen=false,size:size2="default",title,description,header,footer,trigger,triggerLabel,triggerIcon,triggerTone="default",triggerDisabled=false,closeLabel,closeOnEscape=true,closeOnOverlayClick=true,showCloseButton=true,keepMounted=false,trapFocus=true,restoreFocus=true,initialFocus="first-interactive",initialFocusRef,zIndex,portal=false,appearance:appearance2,className,classNames,style,children,onOpenChange,id:id9,...dialogProps},ref){if(open!==void 0&&validateBoolean(open,"open"),validateBoolean(defaultOpen,"defaultOpen"),!["default","viewport","page"].includes(size2))throw new TypeError("BaseDialog size must be default, viewport or page.");if(validateBoolean(triggerDisabled,"triggerDisabled"),validateBoolean(closeOnEscape,"closeOnEscape"),validateBoolean(closeOnOverlayClick,"closeOnOverlayClick"),validateBoolean(showCloseButton,"showCloseButton"),validateBoolean(keepMounted,"keepMounted"),validateBoolean(trapFocus,"trapFocus"),validateBoolean(restoreFocus,"restoreFocus"),validateBoolean(portal,"portal"),validateTriggerTone(triggerTone),initialFocus!=="first-interactive"&&initialFocus!=="container"&&initialFocus!=="explicit")throw new TypeError('BaseDialog initialFocus must be "first-interactive", "container", or "explicit".');if(zIndex!==void 0&&!Number.isFinite(zIndex))throw new TypeError("BaseDialog zIndex must be a finite number.");let messages=useMonkeysLocaleMessages().dialog,resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),resolvedCloseLabel=closeLabel===void 0?messages.close:closeLabel,theme=resolveBaseAppearance(resolvedAppearance),overlayPortal=useBaseOverlayPortal({disabled:!portal}),[uncontrolledOpen,setUncontrolledOpen]=React8.useState(defaultOpen),panelRef=React8.useRef(null),returnFocusRef=React8.useRef(null),isControlled=open!==void 0,isOpen=isControlled?open:uncontrolledOpen,portalState=portal&&overlayPortal.shouldPortal?"portaled":"inline",hasTitle=hasRenderableNode(title),hasDescription=hasRenderableNode(description),hasCustomHeader=hasRenderableNode(header);if(showCloseButton&&(typeof resolvedCloseLabel!="string"||!resolvedCloseLabel.trim()))throw new TypeError("BaseDialog closeLabel must be a non-empty string when showCloseButton is true.");let handleOpenChange=nextOpen=>{isControlled||setUncontrolledOpen(nextOpen),onOpenChange?.(nextOpen);};React8.useEffect(()=>{if(!isOpen||!keepMounted)return;let panel=panelRef.current,ownerDocument=panel?.ownerDocument,ownerWindow=ownerDocument?.defaultView;if(!panel||!ownerDocument||!ownerWindow)return;returnFocusRef.current=ownerDocument.activeElement instanceof ownerWindow.HTMLElement?ownerDocument.activeElement:null;let focusableSelector=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(","),focusInitial=()=>{let firstInteractive=panel.querySelector(focusableSelector);(initialFocus==="container"?panel:initialFocus==="explicit"?initialFocusRef?.current??panel:firstInteractive??panel).focus();},frame=ownerWindow.requestAnimationFrame(focusInitial),handleKeyDown=event=>{if(event.key==="Escape"&&closeOnEscape){event.preventDefault(),event.stopPropagation(),handleOpenChange(false);return}if(event.key!=="Tab"||!trapFocus)return;let focusable=Array.from(panel.querySelectorAll(focusableSelector));if(focusable.length===0){event.preventDefault(),panel.focus();return}let first=focusable[0],last=focusable[focusable.length-1];event.shiftKey&&ownerDocument.activeElement===first?(event.preventDefault(),last.focus()):!event.shiftKey&&ownerDocument.activeElement===last&&(event.preventDefault(),first.focus());};return ownerWindow.addEventListener("keydown",handleKeyDown),()=>{ownerWindow.cancelAnimationFrame(frame),ownerWindow.removeEventListener("keydown",handleKeyDown),restoreFocus&&returnFocusRef.current?.isConnected&&returnFocusRef.current.focus();}},[closeOnEscape,initialFocus,initialFocusRef,isOpen,keepMounted,restoreFocus,trapFocus]);let semanticHeader=hasCustomHeader||hasTitle||hasDescription?jsxRuntime.jsxs("div",{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"header","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogHeader,classNames?.header,size2==="page"&&"sr-only"),children:[hasCustomHeader?header:null,hasTitle?jsxRuntime.jsx(DialogPrimitive2__namespace.Title,{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"title","data-state":isOpen?"open":"closed","data-portal":portalState,className:hasCustomHeader?"sr-only":cn(theme.slots.dialogTitle,classNames?.title),children:title}):null,hasDescription?jsxRuntime.jsx(DialogPrimitive2__namespace.Description,{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"description","data-state":isOpen?"open":"closed","data-portal":portalState,className:hasCustomHeader?"sr-only":cn(theme.slots.dialogDescription,classNames?.description),children:description}):null]}):null,triggerNode=renderTrigger({trigger,triggerLabel,triggerIcon,triggerTone,triggerDisabled,theme}),dialogLayers=isOpen||keepMounted?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(DialogPrimitive2__namespace.Overlay,{forceMount:keepMounted||void 0,hidden:!isOpen,...componentAttributes,"aria-hidden":"true","data-monkeys-component":"dialog","data-slot":"overlay","data-portal":portalState,className:cn(theme.slots.dialogOverlay,classNames?.overlay),style:{...theme.styles.dialogOverlay,zIndex,...size2==="page"?{background:"transparent",backdropFilter:"none"}:{}}}),jsxRuntime.jsx("div",{...componentAttributes,hidden:!isOpen,"data-monkeys-component":"dialog","data-slot":"content","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogContent,classNames?.content),style:{zIndex,...size2==="page"?{padding:0,inset:0}:{}},children:jsxRuntime.jsx(DialogPrimitive2__namespace.Content,{forceMount:keepMounted||void 0,...componentAttributes,...hasTitle?{}:{"aria-labelledby":void 0},...hasDescription?{}:{"aria-describedby":void 0},asChild:true,onOpenAutoFocus:event=>{if(keepMounted){event.preventDefault();return}let panel=panelRef.current;returnFocusRef.current=panel?.ownerDocument.activeElement,(initialFocus==="container"||initialFocus==="explicit")&&(event.preventDefault(),(initialFocus==="explicit"?initialFocusRef?.current??panel:panel)?.focus({preventScroll:true}));},onCloseAutoFocus:event=>{if(keepMounted||!restoreFocus){event.preventDefault();return}let target=returnFocusRef.current;target?.isConnected&&(event.preventDefault(),target.focus({preventScroll:true}));},onEscapeKeyDown:event=>{(keepMounted||!closeOnEscape)&&event.preventDefault();},onPointerDownOutside:event=>{closeOnOverlayClick||event.preventDefault();},children:jsxRuntime.jsxs("div",{...componentAttributes,ref:panelRef,tabIndex:-1,"aria-modal":"true","data-monkeys-component":"dialog","data-slot":"panel","data-portal":portalState,className:cn(theme.slots.dialogPanel,classNames?.panel),"data-presentation":size2,style:{...theme.styles.dialogPanel,...size2!=="default"?{width:size2==="page"?"100vw":"96vw",maxWidth:"none",height:size2==="page"?"100dvh":"94dvh",maxHeight:size2==="page"?"100dvh":"94dvh",display:"flex",flexDirection:"column"}:{},...size2==="page"?{borderRadius:0,border:0,boxShadow:"none",margin:0,animation:"none"}:{}},children:[semanticHeader,showCloseButton?jsxRuntime.jsx(DialogPrimitive2__namespace.Close,{asChild:true,children:jsxRuntime.jsx("button",{...componentAttributes,type:"button","aria-label":resolvedCloseLabel,title:resolvedCloseLabel,"data-monkeys-component":"dialog","data-slot":"close","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogClose,classNames?.close),children:"\xD7"})}):null,jsxRuntime.jsx("div",{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"body","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogBody,classNames?.body),style:size2!=="default"?{minHeight:0,flex:"1 1 0%",overflow:"hidden",padding:0}:void 0,children}),hasRenderableNode(footer)?jsxRuntime.jsx("div",{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"footer","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogFooter,classNames?.footer),children:footer}):null]})})})]}):null;return jsxRuntime.jsx("div",{...componentAttributes,...dialogProps,ref,id:id9,"data-monkeys-component":"dialog","data-slot":"root","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogRoot,classNames?.root,className),style,children:jsxRuntime.jsxs(DialogPrimitive2__namespace.Root,{open:isOpen,onOpenChange:handleOpenChange,modal:!keepMounted&&trapFocus,children:[triggerNode?jsxRuntime.jsx(DialogPrimitive2__namespace.Trigger,{...componentAttributes,asChild:true,disabled:triggerDisabled,"data-monkeys-component":"dialog","data-slot":"trigger","data-portal":portalState,"data-tone":triggerTone,"data-disabled":triggerDisabled||void 0,className:cn(theme.slots.dialogTrigger,triggerDisabled&&theme.slots.dialogTriggerDisabled,classNames?.trigger),children:triggerNode}):null,portal&&overlayPortal.shouldPortal?jsxRuntime.jsx(BentoScope,{children:jsxRuntime.jsx(DialogPrimitive2__namespace.Portal,{...overlayPortal.radixPortalProps,forceMount:keepMounted||void 0,children:dialogLayers})}):jsxRuntime.jsx(BentoScope,{children:dialogLayers})]})})});function toCssVariableName(path,prefix){let normalized=path.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/[^a-zA-Z0-9]+/g,"-").replace(/^-+|-+$/g,"").toLowerCase();return `--${prefix}-${normalized}`}var HSL_SEMANTIC_VARIABLES={"semantic.color.background":"--background","semantic.color.foreground":"--foreground","semantic.color.card":"--card","semantic.color.card-foreground":"--card-foreground","semantic.color.popover":"--popover","semantic.color.popover-foreground":"--popover-foreground","semantic.color.primary":"--primary","semantic.color.primary-foreground":"--primary-foreground","semantic.color.secondary":"--secondary","semantic.color.secondary-foreground":"--secondary-foreground","semantic.color.muted":"--muted","semantic.color.muted-foreground":"--muted-foreground","semantic.color.accent":"--accent","semantic.color.accent-foreground":"--accent-foreground","semantic.color.destructive":"--destructive","semantic.color.destructive-foreground":"--destructive-foreground","semantic.color.success":"--success","semantic.color.success-foreground":"--success-foreground","semantic.color.warning":"--warning","semantic.color.warning-foreground":"--warning-foreground","semantic.color.border":"--border","semantic.color.input":"--input","semantic.color.ring":"--ring","semantic.color.media-surface":"--media-surface","semantic.color.media-foreground":"--media-foreground","semantic.color.media-overlay":"--media-overlay","semantic.color.radar-canvas":"--radar-canvas","semantic.color.radar-panel":"--radar-panel","semantic.color.radar-border":"--radar-border","semantic.color.radar-shell-border":"--radar-shell-border","semantic.color.radar-grid":"--radar-grid","semantic.color.radar-axis":"--radar-axis","semantic.color.radar-series-one":"--radar-series-one","semantic.color.radar-series-two":"--radar-series-two","semantic.color.radar-series-three":"--radar-series-three","semantic.color.radar-series-four":"--radar-series-four"},THEME_TOKEN_CSS_ALIASES=Object.freeze({...Object.fromEntries(Object.entries(HSL_SEMANTIC_VARIABLES).map(([path,variableName])=>[path,{variableName,axis:"colorMode",expectedType:"color",format:"hsl"}])),"semantic.color.neocard":{variableName:"--neocard",axis:"colorMode",expectedType:"color",format:"css"},"semantic.radius.base":{variableName:"--radius",axis:"colorMode",expectedType:"dimension",format:"css"},"semantic.spacing.global":{variableName:"--global-spacing",axis:"density",expectedType:"dimension",format:"css"},"semantic.gradient.brand":{variableName:"--monkeys-gradient",axis:"colorMode",expectedType:"gradient",format:"css"},"semantic.font.body":{variableName:"--font-sans",axis:"colorMode",expectedType:"fontFamily",format:"css"}});function resolveThemeTokenCssVariable(reference){let path=reference.startsWith("$")?reference.slice(1).trim():reference.trim();if(!/^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$/i.test(path))throw new TypeError(`Invalid Design Token path ${reference}.`);let alias=THEME_TOKEN_CSS_ALIASES[path];return alias?alias.format==="hsl"?`hsl(var(${alias.variableName}))`:`var(${alias.variableName})`:`var(${toCssVariableName(path,"monkeys")})`}var BENTO_STYLE_FIELDS=["background","glowColor","borderColor","borderWidth","borderStyle","radius","shadow","padding","gap"],fallback={background:"hsl(var(--card, 0 0% 100%))",glowColor:"var(--monkeys-bento-glow-default)",borderColor:"hsl(var(--border, 214.3 31.8% 91.4%))",borderWidth:"1px",borderStyle:"solid",radius:"var(--radius, 0.75rem)",shadow:"none",padding:"var(--global-spacing, 0.75rem)",gap:"var(--global-spacing, 0.75rem)"},cache=new WeakMap;function resolveBentoTokens(theme,level){if(!Number.isSafeInteger(level)||level<1)throw new RangeError("Bento level must be a positive safe integer.");let cached=theme&&cache.get(theme)?.get(level);if(cached)return cached;let values={...fallback},sources=Object.fromEntries(BENTO_STYLE_FIELDS.map(field=>[field,"builtin"]));for(let field of BENTO_STYLE_FIELDS){let axis=field==="padding"||field==="gap"?theme?.density:theme?.colorMode,namespace=field==="glowColor"?"component.bento":"semantic.bento",paths=[`${namespace}.levels.level${level}.${field}`,`${namespace}.default.${field}`];for(let base of paths){let path=axis&&theme?.cssValues[`${base}.${axis}`]!==void 0?`${base}.${axis}`:base,value=theme?.cssValues[path];if(value!==void 0){values[field]=value,sources[field]=path;break}}}let result=Object.freeze({values:Object.freeze(values),sources:Object.freeze(sources)});if(theme){let levels=cache.get(theme)??new Map;levels.set(level,result),cache.set(theme,levels);}return result}var refIdentity=reference=>reference?.id,getRenderNodeDataAttributes=node=>({"data-monkeys-node-id":node.nodeId,"data-monkeys-node-kind":node.kind,"data-monkeys-node-version":node.version,"data-monkeys-owner":node.ownerRepo,"data-monkeys-parent-node":node.parentNodeId,"data-monkeys-slot":node.slot,"data-monkeys-page-id":refIdentity(node.pageRef),"data-monkeys-semantic-id":refIdentity(node.semanticRef),"data-monkeys-data-context-id":refIdentity(node.dataContextRef),"data-monkeys-capability-id":refIdentity(node.capabilityRef),"data-monkeys-provider-id":refIdentity(node.providerRef),"data-monkeys-state-id":refIdentity(node.stateRef),"data-monkeys-frame-owner":node.surface.frameOwner,"data-monkeys-surface-tone":node.surface.tone,"data-monkeys-density":node.surface.density,"data-monkeys-scroll-owner":node.scroll.owner,"data-monkeys-scroll-axis":node.scroll.axis,"data-monkeys-scroll-restore-key":node.scroll.restoreKey,"data-monkeys-virtualization-boundary":node.scroll.virtualizationBoundary,"data-monkeys-activation-id":node.activation.activationId,"data-monkeys-activation-mode":node.activation.mode,"data-monkeys-mount-policy":node.lifecycle.mountPolicy,"data-monkeys-query-policy":node.lifecycle.queryPolicy,"data-monkeys-deep-link":node.lifecycle.deepLink,"data-monkeys-focus-return":node.lifecycle.focusReturn,"data-monkeys-layout-mode":node.layout.mode,"data-monkeys-responsive-rules":node.responsive.length,"data-monkeys-child-count":node.children.length,"data-monkeys-access-id":refIdentity(node.accessRef),"data-monkeys-evidence-id":refIdentity(node.evidenceRef),"data-monkeys-render-state":node.state}),sessionStorageKey=key3=>`monkeys.render.scroll.${key3}`,sessionRenderNodeScrollRestoration={read(key3){if(!(typeof window>"u"))try{let value=window.sessionStorage.getItem(sessionStorageKey(key3));if(!value)return;let parsed=JSON.parse(value);return typeof parsed.x=="number"&&typeof parsed.y=="number"?{x:parsed.x,y:parsed.y}:void 0}catch{return}},write(key3,position){if(!(typeof window>"u"))try{window.sessionStorage.setItem(sessionStorageKey(key3),JSON.stringify(position));}catch{}},remove(key3){if(!(typeof window>"u"))try{window.sessionStorage.removeItem(sessionStorageKey(key3));}catch{}}},resolveRenderNodeLayout=(node,viewportWidth)=>{if(viewportWidth===void 0)return node.layout;let matching=node.responsive.filter(rule=>(rule.minWidthPx===void 0||viewportWidth>=rule.minWidthPx)&&(rule.maxWidthPx===void 0||viewportWidth<=rule.maxWidthPx));return matching.length===0?node.layout:matching[matching.length-1].layout},resolveRenderNodeResponsiveStyle=(style,responsive,viewportWidth)=>{let matching=viewportWidth===void 0?[]:responsive.filter(rule=>(rule.minWidthPx===void 0||viewportWidth>=rule.minWidthPx)&&(rule.maxWidthPx===void 0||viewportWidth<=rule.maxWidthPx)&&rule.style);return matching.length===0?style:matching.reduce((resolved,rule)=>({...resolved,...rule.style}),{...style??{}})},LAYOUT_MODE_CLASSES={contents:"contents",block:"block",flex:"flex",grid:"grid",absolute:"absolute"},ALIGN_CLASSES={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},JUSTIFY_CLASSES={start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around"},tokenPathToCssVariable=value=>resolveThemeTokenCssVariable(value),resolveRenderNodeStyle=style=>style?Object.fromEntries(Object.entries(style).map(([property,value])=>[property,typeof value=="string"&&value.startsWith("$")?tokenPathToCssVariable(value):value])):void 0,resolveRenderNodeGap=layout=>{if(layout.gapTokenRef)return {gap:tokenPathToCssVariable(`$${layout.gapTokenRef.id}`)}},getRenderLayoutClassName=layout=>cn(LAYOUT_MODE_CLASSES[layout.mode],layout.mode==="flex"&&(layout.direction==="row"?"flex-row":"flex-col"),layout.align&&ALIGN_CLASSES[layout.align],layout.justify&&JUSTIFY_CLASSES[layout.justify]),shouldMountNode=(node,active,visible)=>node.lifecycle.mountPolicy==="always"?true:node.lifecycle.mountPolicy==="when-visible"?visible:active,shouldQueryNode=(node,active,visible,manualQueryEnabled)=>node.lifecycle.queryPolicy==="always"?true:node.lifecycle.queryPolicy==="when-visible"?visible:node.lifecycle.queryPolicy==="when-active"?active:manualQueryEnabled,resolveRenderNodePolicyState=(node,input)=>{let policyMounted=shouldMountNode(node,input.active,input.visible);return {active:input.active,visible:input.visible,mounted:policyMounted||node.lifecycle.retainOnDeactivate&&input.previouslyMounted===true,queryEnabled:shouldQueryNode(node,input.active,input.visible,input.manualQueryEnabled===true)}},resolveRenderNodeContent=(node,content,loading,empty,error)=>node.state==="loading"&&loading!==void 0?loading:node.state==="empty"&&empty!==void 0?empty:node.state==="error"&&error!==void 0?error:content,assignRef=(ref,value)=>{typeof ref=="function"?ref(value):ref&&(ref.current=value);},RenderNodeHost=React8.forwardRef(function({node,as="div",active=true,visible=active,manualQueryEnabled=false,asChild=false,unframed=false,children,loading,empty,error,elementRef,scrollRestoration=sessionRenderNodeScrollRestoration,onActivate,onManualQueryEnabledChange,onRuntimeStateChange,onScroll,className,hidden,role,"aria-live":ariaLive,"aria-atomic":ariaAtomic,...props},forwardedRef){let bentoDepth=useBentoDepth(),Component=asChild?reactSlot.Slot:as,hostRef=React8.useRef(null),[viewportWidth,setViewportWidth]=React8.useState(()=>typeof window>"u"?void 0:window.innerWidth),[mountedNodeId,setMountedNodeId]=React8.useState(()=>shouldMountNode(node,active,visible)?node.nodeId:void 0),policyMounted=shouldMountNode(node,active,visible);React8.useEffect(()=>{if(node.responsive.length===0||typeof window>"u")return;let handleResize=()=>setViewportWidth(window.innerWidth);return handleResize(),window.addEventListener("resize",handleResize,{passive:true}),()=>window.removeEventListener("resize",handleResize)},[node.responsive.length]);let resolvedLayout=React8.useMemo(()=>resolveRenderNodeLayout(node,viewportWidth),[node,viewportWidth]),resolvedStyle=React8.useMemo(()=>resolveRenderNodeResponsiveStyle(node.style,node.responsive,viewportWidth),[node.responsive,node.style,viewportWidth]);React8.useEffect(()=>{if(!active||!visible||!node.lifecycle.deepLink||!["page","record"].includes(node.kind))return;let element=hostRef.current;!element||element.style.display==="contents"||element.focus({preventScroll:true});},[active,node.kind,node.lifecycle.deepLink,node.nodeId,visible]),React8.useEffect(()=>{policyMounted?setMountedNodeId(node.nodeId):node.lifecycle.retainOnDeactivate||setMountedNodeId(void 0);},[node.lifecycle.retainOnDeactivate,node.nodeId,policyMounted]);let policyState=React8.useMemo(()=>resolveRenderNodePolicyState(node,{active,visible,manualQueryEnabled,previouslyMounted:mountedNodeId===node.nodeId}),[active,manualQueryEnabled,mountedNodeId,node,visible]),activate=React8.useCallback(()=>{onActivate?.(node.activation,node);},[node,onActivate]),setManualQueryEnabled=React8.useCallback(enabled=>{onManualQueryEnabledChange?.(enabled,node);},[node,onManualQueryEnabledChange]),runtimeState=React8.useMemo(()=>({...policyState,activate,setManualQueryEnabled}),[activate,policyState,setManualQueryEnabled]);React8.useEffect(()=>{onRuntimeStateChange?.(policyState,node);},[node,onRuntimeStateChange,policyState]);let setHostRef=React8.useCallback(value=>{hostRef.current=value,assignRef(elementRef,value),assignRef(forwardedRef,value);},[elementRef,forwardedRef]),scrollAdapter=scrollRestoration===false?void 0:scrollRestoration,restoresHostScroll=scrollAdapter!==void 0&&node.scroll.owner!=="provider"&&!node.scroll.virtualizationBoundary&&node.scroll.axis!=="none"&&node.scroll.restoreKey!==void 0,readPosition=React8.useCallback(()=>{let element=hostRef.current;return element?{x:node.scroll.axis==="y"?0:element.scrollLeft,y:node.scroll.axis==="x"?0:element.scrollTop}:{x:0,y:0}},[node.scroll.axis]);if(React8.useEffect(()=>{if(!policyState.mounted||!restoresHostScroll||!scrollAdapter)return;let key3=node.scroll.restoreKey,element=hostRef.current,position=scrollAdapter.read(key3),frame;if(element&&position){let restore=()=>element.scrollTo({left:node.scroll.axis==="y"?element.scrollLeft:position.x,top:node.scroll.axis==="x"?element.scrollTop:position.y,behavior:"auto"});typeof window<"u"&&typeof window.requestAnimationFrame=="function"?frame=window.requestAnimationFrame(restore):restore();}return ()=>{frame!==void 0&&typeof window<"u"&&window.cancelAnimationFrame(frame),scrollAdapter.write(key3,readPosition());}},[node.scroll.axis,node.scroll.restoreKey,policyState.mounted,readPosition,restoresHostScroll,scrollAdapter]),!policyState.mounted)return null;let elementProps={...props,...getRenderNodeDataAttributes(node),ref:setHostRef,className:cn((!unframed||resolvedLayout.mode!=="contents")&&getRenderLayoutClassName(resolvedLayout),className),style:{...resolvedLayout.mode==="grid"&&resolvedLayout.columns?{gridTemplateColumns:`repeat(${resolvedLayout.columns}, minmax(0, 1fr))`}:{},...bentoDepth>0&&["flex","grid"].includes(resolvedLayout.mode)?{gap:"var(--monkeys-bento-gap, var(--global-spacing, 0.75rem))"}:{},...resolveRenderNodeGap(resolvedLayout),...resolveRenderNodeStyle(resolvedStyle),...props.style},hidden:hidden||!policyState.visible||void 0,role:role??(node.state==="error"?"alert":node.state==="loading"||node.state==="empty"?"status":void 0),tabIndex:props.tabIndex??(node.lifecycle.deepLink&&["page","record"].includes(node.kind)?-1:void 0),"data-monkeys-active":policyState.active,"data-monkeys-mounted":policyState.mounted,"data-monkeys-query-enabled":policyState.queryEnabled,"aria-busy":node.state==="loading"||void 0,"aria-disabled":node.state==="disabled"||void 0,"aria-hidden":!policyState.visible||void 0,"aria-live":ariaLive??(node.state==="error"?"assertive":node.state==="loading"||node.state==="empty"?"polite":void 0),"aria-atomic":ariaAtomic??(node.state==="loading"||node.state==="empty"||node.state==="error"?true:void 0),onScroll:event=>{restoresHostScroll&&scrollAdapter&&node.scroll.restoreKey&&scrollAdapter.write(node.scroll.restoreKey,readPosition()),onScroll?.(event);}},renderedChildren=typeof children=="function"?children(unframed?{...runtimeState,elementProps}:runtimeState):children;return unframed?jsxRuntime.jsx(jsxRuntime.Fragment,{children:resolveRenderNodeContent(node,renderedChildren,loading,empty,error)}):jsxRuntime.jsx(Component,{...elementProps,ref:setHostRef,children:resolveRenderNodeContent(node,renderedChildren,loading,empty,error)})});var defaultElementForNode=node=>node.kind==="shell"?"main":node.kind==="navigation"?"nav":node.kind==="detail"?"aside":node.kind==="record"?"article":"section";function RenderTreeHost({tree,maxMaterializedNodes=4096,resolveNodeInstances,wrapNode,activeNodeIds,visibleNodeIds,manualQueryNodeIds,loading,empty,error,elementForNode=defaultElementForNode,asChildForNode,unframedForNode,classNameForNode,elementRefForNode,scrollRestoration,renderNode,onActivate,onManualQueryEnabledChange,onRuntimeStateChange}){let compiled=React8.useMemo(()=>runtime.compileRenderTree(tree),[tree]);if(!Number.isSafeInteger(maxMaterializedNodes)||maxMaterializedNodes<1||maxMaterializedNodes>4096)throw new RangeError("RenderTree materialization budget must be an integer from 1 to 4096.");let materializedNodes=0,renderBranch=(node,parentScope,parentInstanceKey)=>{let instances=resolveNodeInstances?.(node,parentScope);if(instances===void 0)return renderInstance(node,parentScope,parentInstanceKey);let keys=new Set,rendered=instances.map(({key:key3,scope})=>{if(!key3||keys.has(key3))throw new TypeError(`RenderNode ${node.nodeId} requires unique non-empty instance keys.`);return keys.add(key3),renderInstance(node,scope,JSON.stringify([parentInstanceKey??null,node.nodeId,key3]))});return rendered.length===1?rendered[0]:rendered},renderInstance=(node,scope,instanceKey)=>{if(++materializedNodes>maxMaterializedNodes)throw new RangeError("RenderTree materialization budget exceeded.");let runtimeNode=instanceKey&&node.scroll.restoreKey?{...node,scroll:{...node.scroll,restoreKey:JSON.stringify([node.scroll.restoreKey,instanceKey])}}:node,childNodes=compiled.childrenOf(node.nodeId),descendants=childNodes.map(child=>renderBranch(child,scope,instanceKey)),descendantsBySlot=childNodes.reduce((slots,child,index)=>{let slot=child.slot??child.nodeId;return (slots[slot]??(slots[slot]=[])).push(descendants[index]),slots},{}),childrenBySlot=Object.freeze(Object.fromEntries(Object.entries(descendantsBySlot).map(([slot,slotDescendants])=>[slot,slotDescendants.length===1?slotDescendants[0]:jsxRuntime.jsx(jsxRuntime.Fragment,{children:slotDescendants})]))),rendered=jsxRuntime.jsx(RenderNodeHost,{node:runtimeNode,"data-monkeys-instance-key":instanceKey,as:elementForNode(node),asChild:asChildForNode?.(node),unframed:unframedForNode?.(node),active:activeNodeIds?.has(node.nodeId)??true,visible:visibleNodeIds?.has(node.nodeId)??true,manualQueryEnabled:manualQueryNodeIds?.has(node.nodeId)??false,loading,empty,error,className:classNameForNode?.(node),elementRef:elementRefForNode?.(node),scrollRestoration,onActivate,onManualQueryEnabledChange,onRuntimeStateChange,children:runtime=>{let content=renderNode?.({...runtime,node:runtimeNode,scope,instanceKey,children:descendants,childNodes,childrenBySlot})??descendants;return wrapNode?wrapNode({node:runtimeNode,scope,instanceKey,content}):content}},JSON.stringify([node.nodeId,instanceKey??null]));return node.kind==="page"||node.kind==="overlay"?jsxRuntime.jsx(BentoScope,{children:rendered},JSON.stringify([node.nodeId,instanceKey??null])):rendered};return jsxRuntime.jsx(jsxRuntime.Fragment,{children:renderBranch(compiled.root)})}var STATE_KEY="__monkeysRenderTree",readBrowserSnapshot=()=>{if(typeof window>"u")return;let value=window.history.state?.[STATE_KEY];return value?.contract==="RenderTreeRuntimeSnapshot"?value:void 0},withSnapshot=snapshot=>({...typeof window>"u"||!window.history.state||typeof window.history.state!="object"?{}:window.history.state,[STATE_KEY]:snapshot}),notifyBrowserHistory=()=>{typeof window>"u"||window.dispatchEvent(new PopStateEvent("popstate",{state:window.history.state}));},browserRenderTreeHistoryAdapter={read:readBrowserSnapshot,replace(snapshot){typeof window<"u"&&window.history.replaceState(withSnapshot(snapshot),"",window.location.href);},push(snapshot){typeof window<"u"&&window.history.pushState(withSnapshot(snapshot),"",window.location.href);},navigate(path,mode,snapshot){typeof window>"u"||(window.history[mode==="replace"?"replaceState":"pushState"](withSnapshot(snapshot),"",path),notifyBrowserHistory());},subscribe(listener){if(typeof window>"u")return ()=>{};let onPopState=()=>listener(readBrowserSnapshot());return window.addEventListener("popstate",onPopState),()=>window.removeEventListener("popstate",onPopState)}},scheduleFocus=target=>{target?.isConnected&&(typeof window<"u"&&typeof window.requestAnimationFrame=="function"?window.requestAnimationFrame(()=>target.focus({preventScroll:true})):target.focus({preventScroll:true}));};function RenderTreeRuntimeHost({tree,historyAdapter=browserRenderTreeHistoryAdapter,onActivate,onRuntimeStateChange,...props}){let compiled=React8.useMemo(()=>runtime.compileRenderTree(tree),[tree]),allNodeIds=React8.useMemo(()=>new Set(compiled.traversal.map(node=>node.nodeId)),[compiled]),[activeNodeIds,setActiveNodeIds]=React8.useState(()=>new Set(allNodeIds)),[manualQueryNodeIds,setManualQueryNodeIds]=React8.useState(()=>new Set),selectedActivationIdRef=React8.useRef(),activeNodeIdsRef=React8.useRef(activeNodeIds),manualQueryNodeIdsRef=React8.useRef(manualQueryNodeIds),focusReturnTargets=React8.useRef(new Map),snapshot=React8.useCallback((nextActive=activeNodeIdsRef.current,nextManual=manualQueryNodeIdsRef.current,selectedActivationId=selectedActivationIdRef.current)=>({contract:"RenderTreeRuntimeSnapshot",treeId:tree.treeId,activeNodeIds:[...nextActive],manualQueryNodeIds:[...nextManual],selectedActivationId}),[tree.treeId]),applySnapshot=React8.useCallback(value=>{if(!value||value.treeId!==tree.treeId||value.activeNodeIds.some(nodeId=>!allNodeIds.has(nodeId))||value.manualQueryNodeIds.some(nodeId=>!allNodeIds.has(nodeId)))return false;let active=new Set(value.activeNodeIds);if(!active.has(tree.rootNodeId))return false;let manual=new Set(value.manualQueryNodeIds);return selectedActivationIdRef.current=value.selectedActivationId,activeNodeIdsRef.current=active,manualQueryNodeIdsRef.current=manual,setActiveNodeIds(active),setManualQueryNodeIds(manual),true},[allNodeIds,tree.rootNodeId,tree.treeId]);React8.useEffect(()=>{let initial=historyAdapter===false?void 0:historyAdapter.read();if(!applySnapshot(initial)){let active=new Set(allNodeIds),manual=new Set;activeNodeIdsRef.current=active,manualQueryNodeIdsRef.current=manual,selectedActivationIdRef.current=void 0,setActiveNodeIds(active),setManualQueryNodeIds(manual),historyAdapter!==false&&historyAdapter.replace(snapshot(active,manual));}return historyAdapter===false?void 0:historyAdapter.subscribe(applySnapshot)},[allNodeIds,applySnapshot,historyAdapter,snapshot]);let selectNode=React8.useCallback(node=>{let next=new Set(compiled.ancestorsOf(node.nodeId).map(ancestor=>ancestor.nodeId)),addDescendants=current=>{next.add(current.nodeId),compiled.childrenOf(current.nodeId).forEach(addDescendants);};return addDescendants(node),next},[compiled]),handleActivate=React8.useCallback((activation,node)=>{node.lifecycle.focusReturn&&typeof document<"u"&&document.activeElement instanceof HTMLElement&&focusReturnTargets.current.set(node.nodeId,document.activeElement),selectedActivationIdRef.current=activation.activationId;let nextActive=activation.mode==="select"||activation.mode==="inline"?selectNode(node):activeNodeIdsRef.current;activeNodeIdsRef.current=nextActive,setActiveNodeIds(nextActive);let nextSnapshot=snapshot(nextActive);if(activation.mode==="navigate"){if(!activation.targetPath)throw new TypeError(`Navigate activation ${activation.activationId} has no targetPath.`);historyAdapter!==false&&historyAdapter.navigate(activation.targetPath,activation.history??"push",nextSnapshot);}else historyAdapter!==false&&node.lifecycle.deepLink&&(activation.history==="push"?historyAdapter.push(nextSnapshot):historyAdapter.replace(nextSnapshot));onActivate?.(activation,node);},[historyAdapter,onActivate,selectNode,snapshot]),handleManualQueryEnabledChange=React8.useCallback((enabled,node)=>{let next=new Set(manualQueryNodeIdsRef.current);enabled?next.add(node.nodeId):next.delete(node.nodeId),manualQueryNodeIdsRef.current=next,setManualQueryNodeIds(next),historyAdapter!==false&&historyAdapter.replace(snapshot(activeNodeIdsRef.current,next));},[historyAdapter,snapshot]),previousActive=React8.useRef(activeNodeIds);return React8.useEffect(()=>{for(let nodeId of previousActive.current){if(activeNodeIds.has(nodeId))continue;compiled.nodesById.get(nodeId)?.lifecycle.focusReturn&&scheduleFocus(focusReturnTargets.current.get(nodeId));}previousActive.current=activeNodeIds;},[activeNodeIds,compiled.nodesById]),jsxRuntime.jsx(RenderTreeHost,{...props,tree,activeNodeIds,visibleNodeIds:activeNodeIds,manualQueryNodeIds,onActivate:handleActivate,onManualQueryEnabledChange:handleManualQueryEnabledChange,onRuntimeStateChange})}function validateBaseAccordionProps({items,value,defaultValue,allowCollapse,keyboardNavigation}){if(!Array.isArray(items))throw new TypeError("BaseAccordion items must be an array.");if(value!==void 0&&(typeof value!="string"||!value.trim()))throw new TypeError("BaseAccordion value must be a non-empty string when provided.");if(defaultValue!==void 0&&(typeof defaultValue!="string"||!defaultValue.trim()))throw new TypeError("BaseAccordion defaultValue must be a non-empty string when provided.");if(typeof allowCollapse!="boolean")throw new TypeError("BaseAccordion allowCollapse must be a boolean.");if(typeof keyboardNavigation!="boolean")throw new TypeError("BaseAccordion keyboardNavigation must be a boolean.");let values=new Set;items.forEach((item,index)=>{if(!item||typeof item!="object")throw new TypeError(`BaseAccordion item at index ${index} must be an object.`);if(typeof item.value!="string"||!item.value.trim())throw new TypeError(`BaseAccordion item value at index ${index} must be a non-empty string.`);if(values.has(item.value))throw new TypeError(`BaseAccordion items must use unique values; duplicate value ${JSON.stringify(item.value)} at index ${index}.`);if(item.disabled!==void 0&&typeof item.disabled!="boolean")throw new TypeError(`BaseAccordion item disabled at index ${index} must be a boolean.`);values.add(item.value);});}function toDomId(value){return value.replace(/[^a-zA-Z0-9_-]/g,"-")}function getDomIdFragments(items){let usedFragments=new Set;return items.map((item,index)=>{let baseFragment=toDomId(item.value)||`item-${index}`,fragment=baseFragment;if(usedFragments.has(fragment))for(fragment=`${baseFragment}-${index}`;usedFragments.has(fragment);)fragment=`${fragment}-${index}`;return usedFragments.add(fragment),fragment})}var BaseAccordion=React8.forwardRef(function({items=[],value,defaultValue,allowCollapse=true,keyboardNavigation=true,appearance:appearance2,className,classNames,style,onValueChange,id:id9,onFocusCapture,onBlurCapture,...accordionProps},ref){validateBaseAccordionProps({items,value,defaultValue,allowCollapse,keyboardNavigation});let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),generatedId=React8.useId(),rootId=id9??generatedId,[uncontrolledValue,setUncontrolledValue]=React8.useState(defaultValue),[focusedValue,setFocusedValue]=React8.useState(),triggerRefs=React8.useRef(new Map),ownsTriggerFocusRef=React8.useRef(false),isControlled=value!==void 0,openValue=isControlled?value:uncontrolledValue,idFragments=getDomIdFragments(items),enabledItems=items.filter(item=>!item.disabled),openItem=items.find(item=>item.value===openValue),layerDirection=typeof accordionProps.dir=="string"?accordionProps.dir:componentAttributes.dir;React8.useEffect(()=>{if(!ownsTriggerFocusRef.current||focusedValue===void 0)return;let focusedItem=items.find(item=>item.value===focusedValue);if(focusedItem&&!focusedItem.disabled)return;let fallbackItem=enabledItems.find(item=>item.value===openValue)??enabledItems[0];if(!fallbackItem){ownsTriggerFocusRef.current=false;return}setFocusedValue(fallbackItem.value),triggerRefs.current.get(fallbackItem.value)?.focus();},[enabledItems,focusedValue,items,openValue]);let handleToggle=item=>{if(item.disabled)return;let isOpen=openValue===item.value;if(isOpen&&!allowCollapse){onValueChange?.(item.value);return}let nextOpenValue=isOpen?void 0:item.value;isControlled||setUncontrolledValue(nextOpenValue),onValueChange?.(nextOpenValue);},moveFocus=(event,item,step)=>{if(!keyboardNavigation||enabledItems.length===0)return;let targetItem;if(step==="first")targetItem=enabledItems[0];else if(step==="last")targetItem=enabledItems[enabledItems.length-1];else {let nextIndex=(enabledItems.findIndex(enabledItem=>enabledItem.value===item.value)+step+enabledItems.length)%enabledItems.length;targetItem=enabledItems[nextIndex];}targetItem&&(event.preventDefault(),setFocusedValue(targetItem.value),triggerRefs.current.get(targetItem.value)?.focus());},handleKeyDown=(event,item)=>{item.disabled||(event.key==="ArrowDown"?moveFocus(event,item,1):event.key==="ArrowUp"?moveFocus(event,item,-1):event.key==="Home"?moveFocus(event,item,"first"):event.key==="End"&&moveFocus(event,item,"last"));},isOwnedTrigger=target=>target instanceof HTMLElement&&target.dataset.accordionOwner===rootId,handleFocusCapture=event=>{isOwnedTrigger(event.target)&&(ownsTriggerFocusRef.current=true),onFocusCapture?.(event);},handleBlurCapture=event=>{isOwnedTrigger(event.target)&&!isOwnedTrigger(event.relatedTarget)&&(ownsTriggerFocusRef.current=false),onBlurCapture?.(event);};return jsxRuntime.jsx("div",{...componentAttributes,...accordionProps,ref,id:id9,dir:layerDirection,"data-monkeys-component":"accordion","data-slot":"root","data-state":openItem?"open":"closed","data-collapsible":allowCollapse,"data-keyboard-navigation":keyboardNavigation,className:cn(theme.slots.accordionRoot,classNames?.root,className),style:{...theme.styles.accordion,...style},onFocusCapture:handleFocusCapture,onBlurCapture:handleBlurCapture,children:items.map((item,index)=>{let itemId=idFragments[index],triggerId=`${rootId}-${itemId}-trigger`,panelId=`${rootId}-${itemId}-panel`,open=item.value===openValue,state=open?"open":"closed";return React8.createElement("div",{...componentAttributes,key:item.value,dir:layerDirection,"data-monkeys-component":"accordion","data-slot":"item","data-state":state,"data-disabled":item.disabled||void 0,className:cn(theme.slots.accordionItem,classNames?.item)},jsxRuntime.jsxs("button",{...componentAttributes,ref:node=>{node?triggerRefs.current.set(item.value,node):triggerRefs.current.delete(item.value);},id:triggerId,type:"button","aria-expanded":open,"aria-controls":panelId,"aria-disabled":item.disabled||void 0,disabled:item.disabled,dir:layerDirection,"data-accordion-owner":rootId,"data-monkeys-component":"accordion","data-slot":"trigger","data-state":state,"data-disabled":item.disabled||void 0,className:cn(theme.slots.accordionTrigger,classNames?.trigger),onFocus:()=>setFocusedValue(item.value),onKeyDown:event=>handleKeyDown(event,item),onClick:()=>handleToggle(item),children:[jsxRuntime.jsx("span",{className:"min-w-0 truncate",children:item.title}),jsxRuntime.jsx("span",{"aria-hidden":"true","data-monkeys-component":"accordion","data-slot":"trigger-icon","data-state":state,className:cn(theme.slots.accordionTriggerIcon,open&&"rotate-[225deg]",classNames?.triggerIcon)})]}),open?jsxRuntime.jsx("div",{...componentAttributes,id:panelId,role:"region","aria-labelledby":triggerId,dir:layerDirection,"data-monkeys-component":"accordion","data-slot":"panel","data-state":"open",className:cn(theme.slots.accordionPanel,classNames?.panel),children:hasRenderableNode(item.content)?item.content:null}):null)})})});var BaseBadge=React8.forwardRef(function({children,label,icon,tone,appearance:appearance2,variant,density,state,className,classNames,style,...badgeProps},ref){if(tone!==void 0&&tone!=="default"&&tone!=="primary"&&tone!=="success"&&tone!=="warning"&&tone!=="danger"&&tone!=="muted")throw new TypeError('BaseBadge tone must be "default", "primary", "success", "warning", "danger", or "muted".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance({...resolvedAppearance,variant,density,state}),resolvedLabel=children??label,resolvedTone=tone??"default";return jsxRuntime.jsxs("span",{...componentAttributes,...badgeProps,ref,"data-monkeys-component":"badge","data-slot":"root","data-tone":resolvedTone,"data-variant":theme.variant,"data-density":theme.density,"data-state":theme.state,className:cn(theme.slots.badgeBase,getBaseBadgeToneClassName(theme,tone),classNames?.root,className),style:{...theme.styles.badge,...style},children:[icon?jsxRuntime.jsx("span",{"data-slot":"icon","data-tone":resolvedTone,className:cn(theme.slots.badgeIcon,classNames?.icon),children:icon}):null,resolvedLabel!=null?jsxRuntime.jsx("span",{"data-slot":"label","data-tone":resolvedTone,className:cn(theme.slots.badgeLabel,classNames?.label),children:resolvedLabel}):null]})});var buttonSizeClassNames={sm:"h-8 px-2.5 text-xs",md:"h-9 px-3 text-sm",lg:"h-10 px-3.5 text-base"},iconOnlySizeClassNames={sm:"h-8 w-8 px-0",md:"h-9 w-9 px-0",lg:"h-10 w-10 px-0"},iconSizeClassNames={sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"};function nonEmptyText(value){return typeof value=="string"&&value.trim()?value:void 0}function LoadingIcon(){return jsxRuntime.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"h-full w-full motion-safe:animate-spin motion-reduce:animate-none",fill:"none",children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9",className:"opacity-25",stroke:"currentColor",strokeWidth:"3"}),jsxRuntime.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M12 3a9 9 0 0 1 9 9h-3a6 6 0 0 0-6-6V3Z"})]})}var BaseButton=React8.forwardRef(function({children,label,icon,endIcon,type="button",title,ariaLabel,tone,size:size2,active=false,iconOnly=false,disabled=false,loading=false,stopPropagation=false,appearance:appearance2,variant,density,state,className,classNames,style,onClick,"aria-label":nativeAriaLabel,"aria-pressed":nativeAriaPressed,...buttonProps},ref){for(let[name,value]of [["active",active],["iconOnly",iconOnly],["disabled",disabled],["loading",loading],["stopPropagation",stopPropagation]])if(typeof value!="boolean")throw new TypeError(`BaseButton ${name} must be a boolean.`);if(size2!==void 0&&size2!=="sm"&&size2!=="md"&&size2!=="lg")throw new TypeError('BaseButton size must be "sm", "md", or "lg".');if(tone!==void 0&&tone!=="default"&&tone!=="primary"&&tone!=="success"&&tone!=="warning"&&tone!=="danger"&&tone!=="muted")throw new TypeError('BaseButton tone must be "default", "primary", "success", "warning", "danger", or "muted".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance({...resolvedAppearance,variant,density,state}),resolvedLabel=children??label,hasLabel=hasRenderableNode(resolvedLabel)&&(typeof resolvedLabel!="string"||!!resolvedLabel.trim()),explicitAriaLabel=nonEmptyText(ariaLabel)??nonEmptyText(nativeAriaLabel),labelText=typeof resolvedLabel=="string"?nonEmptyText(resolvedLabel):void 0,resolvedTitle=nonEmptyText(title);if(iconOnly&&!hasLabel&&!explicitAriaLabel&&!resolvedTitle)throw new TypeError("BaseButton iconOnly requires ariaLabel, aria-label, title, or a renderable label.");let resolvedAriaLabel=explicitAriaLabel??labelText??resolvedTitle,resolvedDisabled=disabled||loading,resolvedTone=tone??"default",resolvedState=state??(loading?"loading":disabled?"disabled":active?"active":"idle"),handleClick=event=>{stopPropagation&&event.stopPropagation(),!resolvedDisabled&&onClick?.(event);};return jsxRuntime.jsxs("button",{...componentAttributes,...buttonProps,ref,type,title,"aria-label":resolvedAriaLabel,"aria-pressed":nativeAriaPressed??(active||void 0),"aria-busy":loading||void 0,"data-variant":theme.variant,"data-density":theme.density,disabled:resolvedDisabled,"data-monkeys-component":"button","data-slot":"root","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,"data-active":active||void 0,"data-loading":loading||void 0,"data-disabled":resolvedDisabled||void 0,"data-icon-only":iconOnly||void 0,className:cn(theme.slots.buttonBase,iconOnly&&theme.slots.buttonIconOnly,size2&&buttonSizeClassNames[size2],iconOnly&&size2&&iconOnlySizeClassNames[size2],getBaseButtonToneClassName(theme,tone,active),resolvedDisabled&&theme.slots.buttonDisabled,classNames?.root,className),style:{...theme.styles.button,...active?theme.styles.buttonActive:void 0,...resolvedDisabled?theme.styles.buttonDisabled:void 0,...style},onClick:handleClick,children:[loading?jsxRuntime.jsx("span",{"data-slot":"icon","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:cn(theme.slots.buttonIcon,size2&&iconSizeClassNames[size2],classNames?.icon),children:jsxRuntime.jsx(LoadingIcon,{})}):icon?jsxRuntime.jsx("span",{"data-slot":"icon","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:cn(theme.slots.buttonIcon,size2&&iconSizeClassNames[size2],classNames?.icon),children:icon}):null,iconOnly?hasRenderableNode(resolvedLabel)?jsxRuntime.jsx("span",{"data-slot":"label","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:"sr-only",children:resolvedLabel}):null:hasRenderableNode(resolvedLabel)?jsxRuntime.jsx("span",{"data-slot":"label","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:cn(theme.slots.buttonLabel,classNames?.label),children:resolvedLabel}):null,!loading&&endIcon?jsxRuntime.jsx("span",{"data-slot":"end-icon","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:cn(theme.slots.buttonIcon,size2&&iconSizeClassNames[size2],classNames?.icon,classNames?.endIcon),children:endIcon}):null]})});function resolveBaseFieldValidationResult(result){if(result===null)return null;if(typeof result=="string"&&result.trim().length>0)return result;throw new TypeError("BaseField validate must return a non-empty error string or null.")}var BaseFieldContext=React8.createContext(null);function useBaseFieldControl(){let context=React8.useContext(BaseFieldContext),controlKeyRef=React8.useRef(null);controlKeyRef.current===null&&(controlKeyRef.current=Symbol("BaseFieldControl"));let registerControl=context?.registerControl;React8.useEffect(()=>{if(!(!registerControl||controlKeyRef.current===null))return registerControl(controlKeyRef.current)},[registerControl]);let notifyBlur=context?.notifyBlur,notifyChange=context?.notifyChange;return {invalid:context?.invalid??false,notifyBlur:React8.useCallback(value=>notifyBlur?.(value),[notifyBlur]),notifyChange:React8.useCallback(value=>notifyChange?.(value),[notifyChange])}}var boxSizeClassNames={sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"},indicatorSizeClassNames={sm:"text-[10px]",md:"text-[11px]",lg:"text-xs"};function setRefs(element,...refs){for(let ref of refs)if(ref){if(typeof ref=="function"){ref(element);continue}ref.current=element;}}var BaseCheckbox=React8.forwardRef(function({label,description,indeterminate=false,invalid:invalid2=false,disabled=false,controlSize,appearance:appearance2,className,classNames,style,checked,defaultChecked,onBlur,onChange,"aria-invalid":nativeAriaInvalid,...checkboxProps},forwardedRef){for(let[name,value]of [["indeterminate",indeterminate],["invalid",invalid2],["disabled",disabled]])if(typeof value!="boolean")throw new TypeError(`BaseCheckbox ${name} must be a boolean.`);if(controlSize!==void 0&&controlSize!=="sm"&&controlSize!=="md"&&controlSize!=="lg")throw new TypeError('BaseCheckbox controlSize must be "sm", "md", or "lg".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),fieldControl=useBaseFieldControl(),resolvedInvalid=invalid2||fieldControl.invalid,hasLabel=hasRenderableNode(label),hasDescription=hasNonEmptyRenderableNode(description),inputRef=React8.useRef(null),indeterminateRef=React8.useRef(indeterminate);indeterminateRef.current=indeterminate;let[uncontrolledChecked,setUncontrolledChecked]=React8.useState(defaultChecked??false),isControlled=checked!==void 0,resolvedChecked=!!(isControlled?checked:uncontrolledChecked),active=indeterminate||resolvedChecked,state=indeterminate?"mixed":resolvedChecked?"checked":"unchecked",setInputRef=React8.useCallback(element=>{inputRef.current=element,element&&(element.indeterminate=indeterminateRef.current),setRefs(element,forwardedRef);},[forwardedRef]);React8.useEffect(()=>{inputRef.current&&(inputRef.current.indeterminate=indeterminate);},[indeterminate]);let handleChange=event=>{disabled||(isControlled||setUncontrolledChecked(event.currentTarget.checked),onChange?.(event),fieldControl.notifyChange(event.currentTarget.checked),inputRef.current&&(inputRef.current.indeterminate=indeterminate));};return jsxRuntime.jsxs("label",{...componentAttributes,"data-monkeys-component":"checkbox","data-slot":"root","data-state":state,"data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,className:cn(theme.slots.checkboxRoot,!hasDescription&&"items-center",disabled&&theme.slots.checkboxDisabled,classNames?.root,className),style:{...theme.styles.checkboxRoot,...style},children:[jsxRuntime.jsxs("span",{"data-slot":"box","data-state":state,"data-size":controlSize,className:cn(theme.slots.checkboxBox,!hasDescription&&"mt-0",active&&theme.slots.checkboxBoxChecked,resolvedInvalid&&theme.slots.checkboxBoxInvalid,controlSize&&boxSizeClassNames[controlSize],classNames?.box),style:{...theme.styles.checkboxBox},children:[jsxRuntime.jsx("input",{...checkboxProps,ref:setInputRef,type:"checkbox",disabled,checked,defaultChecked,"aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"aria-checked":indeterminate?"mixed":resolvedChecked,"data-slot":"input","data-state":state,"data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,className:cn(theme.slots.checkboxInput,classNames?.input),onBlur:event=>{onBlur?.(event),fieldControl.notifyBlur(event.currentTarget.checked);},onChange:handleChange}),active?jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"indicator","data-state":state,"data-size":controlSize,className:cn(theme.slots.checkboxIndicator,controlSize&&indicatorSizeClassNames[controlSize],classNames?.indicator),children:indeterminate?"\u2013":"\u2713"}):null]}),hasLabel||hasDescription?jsxRuntime.jsxs("span",{"data-slot":"content",className:cn(theme.slots.checkboxContent,classNames?.content),children:[hasLabel?jsxRuntime.jsx("span",{"data-slot":"label",className:cn(theme.slots.checkboxLabel,classNames?.label),children:label}):null,hasDescription?jsxRuntime.jsx("span",{"data-slot":"description",className:cn(theme.slots.checkboxDescription,classNames?.description),children:description}):null]}):null]})});var BaseCode=React8.forwardRef(function({children,display="inline",appearance:appearance2,className,classNames,style,...codeProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);return display==="block"?jsxRuntime.jsx("pre",{...componentAttributes,...codeProps,ref,"data-monkeys-component":"code","data-slot":"root","data-display":"block",className:cn(theme.slots.codeBlock,classNames?.root,className),style:{...theme.styles.code,...style},children:jsxRuntime.jsx("code",{"data-slot":"code",className:cn(theme.slots.codeContent,classNames?.code),style:theme.styles.codeContent,children})}):jsxRuntime.jsx("code",{...componentAttributes,...codeProps,ref,"data-monkeys-component":"code","data-slot":"root","data-display":"inline",className:cn(theme.slots.codeInline,theme.slots.codeContent,classNames?.root,classNames?.code,className),style:{...theme.styles.code,...theme.styles.codeContent,...style},children})});var columnClassNames={1:"grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-2 xl:grid-cols-3"};function BaseDescriptionList({items,columns=1,appearance:appearance2,className,classNames,style,children,...listProps}){let theme=resolveBaseAppearance(appearance2);return jsxRuntime.jsxs("dl",{...listProps,className:cn(theme.slots.descriptionListRoot,columnClassNames[columns],classNames?.root,className),style:{...theme.styles.descriptionList,...style},children:[items?.map((item,index)=>jsxRuntime.jsxs("div",{className:cn(theme.slots.descriptionListItem,classNames?.item),children:[jsxRuntime.jsx("dt",{className:cn(theme.slots.descriptionListTerm,classNames?.term),children:item.term}),jsxRuntime.jsx("dd",{className:cn(theme.slots.descriptionListValue,classNames?.value),children:item.value})]},index)),children]})}function DefaultEmptyIcon(){return jsxRuntime.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"h-6 w-6",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.8",children:[jsxRuntime.jsx("rect",{width:"16",height:"12",x:"4",y:"6",rx:"2"}),jsxRuntime.jsx("path",{d:"M8 10h8"}),jsxRuntime.jsx("path",{d:"M8 14h5"})]})}var BaseEmptyState=React8.forwardRef(function({icon=jsxRuntime.jsx(DefaultEmptyIcon,{}),title,description,actions,variant,appearance:appearance2,className,classNames,style,...stateProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),statusStates=useMonkeysStatusStates(),resolvedVariant=variant??statusStates.empty?.variant??"default",densityClassName=statusStates.density==="compact"?"min-h-0 px-3 py-3":statusStates.density==="comfortable"?"min-h-56 px-8 py-12":void 0,theme=resolveBaseAppearance(resolvedAppearance);return jsxRuntime.jsxs("div",{...componentAttributes,...stateProps,ref,"data-monkeys-component":"empty-state","data-slot":"root","data-state":"empty","data-variant":resolvedVariant,"data-density":statusStates.density,className:cn(theme.slots.stateRoot,densityClassName,resolvedVariant==="compact"&&"min-h-0 gap-1 py-3",classNames?.root,className),style:{...theme.styles.stateRoot,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("div",{"data-slot":"icon","data-state":"empty",className:cn(theme.slots.stateIcon,classNames?.icon),style:theme.styles.stateIcon,children:icon}):null,hasRenderableNode(title)?jsxRuntime.jsx("div",{"data-slot":"title","data-state":"empty",className:cn(theme.slots.stateTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{"data-slot":"description","data-state":"empty",className:cn(theme.slots.stateDescription,classNames?.description),children:description}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{"data-slot":"actions","data-state":"empty",className:cn(theme.slots.stateActions,classNames?.actions),children:actions}):null]})});function validateBoolean2(value,name){if(typeof value!="boolean")throw new TypeError(`BaseTooltip ${name} must be a boolean.`)}function validatePlacement(value){if(value!=="top"&&value!=="bottom"&&value!=="left"&&value!=="right")throw new TypeError('BaseTooltip placement must be "top", "bottom", "left", or "right".')}function normalizeTrigger(children,disabled){return React8.isValidElement(children)&&children.type!==React8.Fragment?children:jsxRuntime.jsx("span",{tabIndex:!disabled&&hasRenderableNode(children)?0:void 0,children})}var BaseTooltip=React8.forwardRef(function({content,children,open,defaultOpen=false,placement="top",disabled=false,portal=false,appearance:appearance2,className,classNames,style,onOpenChange,...tooltipProps},ref){open!==void 0&&validateBoolean2(open,"open"),validateBoolean2(defaultOpen,"defaultOpen"),validateBoolean2(disabled,"disabled"),validateBoolean2(portal,"portal"),validatePlacement(placement);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),overlayPortal=useBaseOverlayPortal({disabled:!portal}),[uncontrolledOpen,setUncontrolledOpen]=React8.useState(defaultOpen),isControlled=open!==void 0,canShow=!disabled&&hasRenderableNode(content),isOpen=canShow&&(isControlled?open:uncontrolledOpen),portalState=portal&&overlayPortal.shouldPortal?"portaled":"inline",handleOpenChange=nextOpen=>{nextOpen&&!canShow||(isControlled||setUncontrolledOpen(nextOpen),onOpenChange?.(nextOpen));},trigger=normalizeTrigger(children,disabled),tooltipContent=canShow?jsxRuntime.jsx(Tooltip__namespace.Content,{...componentAttributes,side:placement,sideOffset:8,collisionPadding:8,"data-monkeys-component":"tooltip","data-slot":"content","data-placement":placement,"data-portal":portalState,"data-disabled":disabled||void 0,className:cn(theme.slots.tooltipContent,classNames?.content),style:theme.styles.tooltip,children:content}):null;return jsxRuntime.jsx("span",{...componentAttributes,...tooltipProps,ref,"data-monkeys-component":"tooltip","data-slot":"root","data-state":isOpen?"open":"closed","data-placement":placement,"data-portal":portalState,"data-disabled":disabled||void 0,className:cn(theme.slots.tooltipRoot,classNames?.root,className),style,children:jsxRuntime.jsx(Tooltip__namespace.Provider,{delayDuration:0,skipDelayDuration:0,disableHoverableContent:true,children:jsxRuntime.jsxs(Tooltip__namespace.Root,{open:isOpen,onOpenChange:handleOpenChange,delayDuration:0,disableHoverableContent:true,children:[jsxRuntime.jsx("span",{...componentAttributes,"data-monkeys-component":"tooltip","data-slot":"trigger-wrapper","data-state":isOpen?"open":"closed","data-placement":placement,"data-portal":portalState,"data-disabled":disabled||void 0,className:cn(theme.slots.tooltipTrigger,classNames?.trigger),children:jsxRuntime.jsx(Tooltip__namespace.Trigger,{asChild:true,...componentAttributes,"data-monkeys-component":"tooltip","data-slot":"trigger","data-placement":placement,"data-portal":portalState,"data-disabled":disabled||void 0,children:trigger})}),portal&&overlayPortal.shouldPortal?jsxRuntime.jsx(Tooltip__namespace.Portal,{...overlayPortal.radixPortalProps,children:tooltipContent}):tooltipContent]})})})});var FormHelpPresentationContext=React8.createContext(false);function BaseFormHelp({children}){let{locale}=useMonkeysLocale();return children==null||children===""?null:jsxRuntime.jsx(BaseTooltip,{content:children,portal:true,children:jsxRuntime.jsx("button",{type:"button","aria-label":typeof children=="string"?children:locale.startsWith("zh")?"\u8BF4\u660E":"Help","data-form-help":true,className:"inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:jsxRuntime.jsx(lucideReact.HelpCircle,{className:"h-4 w-4","aria-hidden":"true"})})})}function mergeAriaIds(...values){let ids2=values.flatMap(value=>value?.split(/\s+/).filter(Boolean)??[]);return ids2.length?Array.from(new Set(ids2)).join(" "):void 0}function resolveOptionalId(value,fallback2,name){if(value===void 0)return fallback2;if(!value.trim()||/\s/.test(value))throw new TypeError(`BaseField ${name} must be a non-empty ID without whitespace.`);return value}var BaseField=React8.forwardRef(function({label,description,message,error,required=false,disabled=false,htmlFor,descriptionId,messageId,errorId,validate,validationMode="onBlur",children,appearance:appearance2,className,classNames,style,...fieldProps},ref){for(let[name,value]of [["required",required],["disabled",disabled]])if(typeof value!="boolean")throw new TypeError(`BaseField ${name} must be a boolean.`);if(validate!==void 0&&typeof validate!="function")throw new TypeError("BaseField validate must be a function.");if(validationMode!=="onBlur"&&validationMode!=="onChange")throw new TypeError('BaseField validationMode must be "onBlur" or "onChange".');let descriptionPresentation=React8.useContext(FormHelpPresentationContext)?"tooltip":"inline",generatedId=React8.useId(),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),hasDescription=hasRenderableNode(description),[internalError,setInternalError]=React8.useState(null),registeredControlsRef=React8.useRef(new Set),validateRef=React8.useRef(validate),validationModeRef=React8.useRef(validationMode),disabledRef=React8.useRef(disabled);validateRef.current=validate,validationModeRef.current=validationMode,disabledRef.current=disabled;let hasValidator=validate!==void 0;React8.useEffect(()=>{(!hasValidator||disabled)&&setInternalError(null);},[disabled,hasValidator]),React8.useEffect(()=>{if(hasValidator&®isteredControlsRef.current.size!==1)throw new TypeError("BaseField with validate must contain exactly one compatible Base control.")},[hasValidator]);let registerControl=React8.useCallback(controlKey=>{let registeredControls=registeredControlsRef.current;if(validateRef.current!==void 0&&!registeredControls.has(controlKey)&®isteredControls.size>0)throw new TypeError("BaseField with validate supports exactly one compatible Base control. Use BaseFieldset for control groups.");return registeredControls.add(controlKey),()=>{registeredControls.delete(controlKey);}},[]),runValidation=React8.useCallback((mode,value)=>{let currentValidate=validateRef.current;if(disabledRef.current||currentValidate===void 0||validationModeRef.current!==mode)return;let result=resolveBaseFieldValidationResult(currentValidate(value));if(result===null){setInternalError(null);return}setInternalError(result);},[]),notifyBlur=React8.useCallback(value=>runValidation("onBlur",value),[runValidation]),notifyChange=React8.useCallback(value=>runValidation("onChange",value),[runValidation]),resolvedError=hasRenderableNode(error)?error:internalError,hasError=hasRenderableNode(resolvedError),hasMessage=!hasError&&hasRenderableNode(message),resolvedMessage=hasError?resolvedError:message,resolvedControlId=htmlFor??`${generatedId}-control`,resolvedDescriptionId=hasDescription?resolveOptionalId(descriptionId,`${generatedId}-description`,"descriptionId"):void 0,resolvedMessageId=hasMessage?resolveOptionalId(messageId,`${generatedId}-message`,"messageId"):void 0,resolvedErrorId=hasError?resolveOptionalId(errorId,`${generatedId}-error`,"errorId"):void 0,controlProps={id:resolvedControlId,"aria-describedby":mergeAriaIds(resolvedDescriptionId,resolvedMessageId),"aria-errormessage":resolvedErrorId,"aria-invalid":hasError?true:void 0,"aria-required":required?true:void 0,required:required||void 0,disabled:disabled||void 0},renderedChildren=typeof children=="function"?children(controlProps):children,fieldContextValue=React8.useMemo(()=>({invalid:hasError,registerControl,notifyBlur,notifyChange}),[hasError,notifyBlur,notifyChange,registerControl]);return jsxRuntime.jsxs("div",{...componentAttributes,...fieldProps,ref,"aria-disabled":disabled||void 0,"data-monkeys-component":"field","data-slot":"root","data-required":required||void 0,"data-disabled":disabled||void 0,"data-invalid":hasError||void 0,className:cn(theme.slots.fieldRoot,disabled&&theme.slots.controlDisabled,classNames?.root,className),style:{...theme.styles.field,...style},children:[hasRenderableNode(label)?jsxRuntime.jsxs("div",{"data-slot":"label-row",className:cn(theme.slots.fieldLabelRow,classNames?.labelRow),children:[jsxRuntime.jsxs("label",{htmlFor:typeof children=="function"?resolvedControlId:htmlFor,"data-slot":"label",className:cn(theme.slots.fieldLabel,classNames?.label),children:[label,required?jsxRuntime.jsxs("span",{"aria-hidden":"true","data-slot":"required-indicator",className:cn(theme.slots.fieldRequired,classNames?.required),children:[" ","*"]}):null]}),descriptionPresentation==="tooltip"&&hasDescription?jsxRuntime.jsx(BaseFormHelp,{children:description}):null]}):null,hasDescription?jsxRuntime.jsx("div",{id:resolvedDescriptionId,"data-slot":"description",className:cn(theme.slots.fieldDescription,classNames?.description,descriptionPresentation==="tooltip"&&"sr-only"),children:description}):null,hasRenderableNode(renderedChildren)?jsxRuntime.jsx("div",{"data-slot":"control",className:cn(theme.slots.fieldControl,classNames?.control),style:theme.styles.fieldControl,children:jsxRuntime.jsx(BaseFieldContext.Provider,{value:fieldContextValue,children:renderedChildren})}):null,hasRenderableNode(resolvedMessage)?jsxRuntime.jsx("div",{id:hasError?resolvedErrorId:resolvedMessageId,role:hasError?"alert":void 0,"data-slot":hasError?"error":"message",className:cn(theme.slots.fieldMessage,hasError&&"text-destructive-text",classNames?.message),children:resolvedMessage}):null]})});function mergeAriaIds2(...values){let ids2=values.flatMap(value=>value?.split(/\s+/).filter(Boolean)??[]);return ids2.length?Array.from(new Set(ids2)).join(" "):void 0}function resolveOptionalId2(value,fallback2,name){if(value===void 0)return fallback2;if(!value.trim()||/\s/.test(value))throw new TypeError(`BaseFieldset ${name} must be a non-empty ID without whitespace.`);return value}var BaseFieldset=React8.forwardRef(function({children,legend,description,descriptionId,error,errorId,disabled,appearance:appearance2,className,classNames,style,"aria-describedby":ariaDescribedBy,"aria-errormessage":ariaErrorMessage,...fieldsetProps},ref){let generatedId=React8.useId(),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);if(!hasRenderableNode(legend)||typeof legend=="string"&&!legend.trim())throw new TypeError("BaseFieldset legend must contain an accessible name.");if(disabled!==void 0&&typeof disabled!="boolean")throw new TypeError("BaseFieldset disabled must be a boolean.");let hasDescription=hasRenderableNode(description),hasError=hasRenderableNode(error),resolvedDescriptionId=hasDescription?resolveOptionalId2(descriptionId,`${generatedId}-description`,"descriptionId"):void 0,resolvedErrorId=hasError?resolveOptionalId2(errorId,`${generatedId}-error`,"errorId"):void 0;return jsxRuntime.jsxs("fieldset",{...componentAttributes,...fieldsetProps,ref,disabled,"aria-describedby":mergeAriaIds2(ariaDescribedBy,resolvedDescriptionId),"aria-errormessage":mergeAriaIds2(ariaErrorMessage,resolvedErrorId),"data-monkeys-component":"fieldset","data-slot":"root",className:cn(theme.slots.fieldsetRoot,classNames?.root,className),style:{...theme.styles.fieldset,...style},children:[jsxRuntime.jsx("legend",{"data-slot":"legend",className:cn(theme.slots.fieldsetLegend,classNames?.legend),style:theme.styles.fieldsetLegend,children:legend}),hasDescription?jsxRuntime.jsx("div",{id:resolvedDescriptionId,"data-slot":"description",className:cn(theme.slots.fieldsetDescription,classNames?.description),style:theme.styles.fieldsetDescription,children:description}):null,hasError?jsxRuntime.jsx("div",{id:resolvedErrorId,"data-slot":"error",className:cn(theme.slots.fieldsetError,classNames?.error),style:theme.styles.fieldsetError,children:error}):null,jsxRuntime.jsx("div",{"data-slot":"content",className:cn(theme.slots.fieldsetContent,classNames?.content),style:theme.styles.fieldsetContent,children})]})});function isHeadingLevel(value){return typeof value=="number"&&Number.isInteger(value)&&value>=1&&value<=6}var BaseHeading=React8.forwardRef(function({level=2,children,size:size2="lg",tone="default",appearance:appearance2,className,classNames,style,...headingProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);if(!isHeadingLevel(level))throw new RangeError("BaseHeading level must be an integer from 1 to 6.");return React8.createElement(`h${level}`,{...componentAttributes,...headingProps,ref,"data-monkeys-component":"heading","data-slot":"root","data-level":level,"data-size":size2,"data-tone":tone,className:cn(theme.slots.headingRoot,getBaseHeadingSizeClassName(theme,size2),getBaseTypographyToneClassName(theme,tone),classNames?.root,className),style:{...theme.styles.heading,...style}},children)});var controlSizeClassNames={sm:"h-8 px-2.5 text-xs",md:"h-9 px-3 text-sm",lg:"h-10 px-3.5 text-base"},BaseInput=React8.forwardRef(function({icon,trailing,invalid:invalid2=false,disabled=false,readOnly=false,controlSize,appearance:appearance2,className,classNames,style,"aria-invalid":nativeAriaInvalid,onBlur,onChange,...inputProps},ref){for(let[name,value]of [["invalid",invalid2],["disabled",disabled],["readOnly",readOnly]])if(typeof value!="boolean")throw new TypeError(`BaseInput ${name} must be a boolean.`);if(controlSize!==void 0&&controlSize!=="sm"&&controlSize!=="md"&&controlSize!=="lg")throw new TypeError('BaseInput controlSize must be "sm", "md", or "lg".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),fieldControl=useBaseFieldControl(),resolvedInvalid=invalid2||fieldControl.invalid;return jsxRuntime.jsxs("div",{...componentAttributes,"data-monkeys-component":"input","data-slot":"root","data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,"data-readonly":readOnly||void 0,className:cn(theme.slots.controlWrapper,resolvedInvalid&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,readOnly&&theme.slots.controlReadOnly,classNames?.root,className),style:{...theme.styles.control,...resolvedInvalid?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("span",{"data-slot":"icon",className:cn(theme.slots.controlIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsx("input",{...inputProps,ref,disabled,readOnly,"aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"data-slot":"control","data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,"data-readonly":readOnly||void 0,className:cn(theme.slots.controlBase,theme.slots.controlInput,controlSize&&controlSizeClassNames[controlSize],classNames?.control),onBlur:event=>{onBlur?.(event),fieldControl.notifyBlur(event.currentTarget.value);},onChange:event=>{onChange?.(event),fieldControl.notifyChange(event.currentTarget.value);}}),hasRenderableNode(trailing)?jsxRuntime.jsx("span",{"data-slot":"trailing",className:cn(theme.slots.controlTrailing,classNames?.trailing),children:trailing}):null]})});var BaseInline=React8.forwardRef(function({children,gap,align="center",justify="start",wrap=true,appearance:appearance2,className,classNames,style,...inlineProps},ref){let bentoDepth=useBentoDepth(),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);if(typeof wrap!="boolean")throw new TypeError("BaseInline wrap must be a boolean.");let resolvedGap=gap===void 0?void 0:resolveBaseLayoutLength("BaseInline","gap",gap);return jsxRuntime.jsx("div",{...componentAttributes,...inlineProps,ref,"data-monkeys-component":"inline","data-slot":"root","data-align":align,"data-justify":justify,"data-wrap":wrap?"wrap":"nowrap",className:cn(theme.slots.inlineRoot,bentoDepth>0&&gap===void 0&&"gap-[var(--monkeys-bento-gap)]",resolvedAppearance?.slots?.inlineRoot,classNames?.root,className),style:{...theme.styles.inline,gap:resolvedGap??theme.styles.inline?.gap,alignItems:resolveBaseLayoutAlign("BaseInline",align),justifyContent:resolveBaseLayoutJustify("BaseInline",justify),flexWrap:wrap?"wrap":"nowrap",...style},children})});var DEFAULT_SPLIT_SIZE=50,DEFAULT_MIN_SIZE=20,DEFAULT_MAX_SIZE=80,DEFAULT_KEYBOARD_STEP=2.5;function assignRef2(ref,value){typeof ref=="function"?ref(value):ref&&(ref.current=value);}function assertBoolean(name,value){if(typeof value!="boolean")throw new TypeError(`BaseLayout ${name} must be a boolean.`)}function assertOrientation(orientation){if(orientation!=="horizontal"&&orientation!=="vertical")throw new TypeError('BaseLayout orientation must be "horizontal" or "vertical".')}function toCssSize(value,fallback2){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new Error("BaseLayout size and gap props must be finite, non-negative numbers.");return `${value}px`}if(typeof value=="string"){if(value.trim().length===0)throw new TypeError("BaseLayout size and gap string props must not be empty.");return value}return fallback2}function assertPercent(name,value){if(!Number.isFinite(value))throw new Error(`BaseLayoutSplit ${name} must be a finite number.`);if(value<0||value>100)throw new Error(`BaseLayoutSplit ${name} must be between 0 and 100.`);return value}function clamp(value,min,max){return Math.min(Math.max(value,min),max)}function resolveSplitBounds({minSize=DEFAULT_MIN_SIZE,maxSize=DEFAULT_MAX_SIZE,keyboardStep=DEFAULT_KEYBOARD_STEP}){let min=assertPercent("minSize",minSize),max=assertPercent("maxSize",maxSize);if(min>max)throw new Error("BaseLayoutSplit minSize cannot be greater than maxSize.");if(!Number.isFinite(keyboardStep)||keyboardStep<=0)throw new Error("BaseLayoutSplit keyboardStep must be a finite positive number.");return {min,max,keyboardStep}}function resolveSplitSize(name,value,fallback2,min,max){return clamp(assertPercent(name,value??fallback2),min,max)}function getSeparatorOrientation(orientation){return orientation==="horizontal"?"vertical":"horizontal"}function isRtl(element){let ownerWindow=element.ownerDocument.defaultView;return ownerWindow?ownerWindow.getComputedStyle(element).direction==="rtl":element.closest('[dir="rtl"]')!==null}function setPointerCaptureIfAvailable(target,pointerId){if(target.setPointerCapture)try{target.setPointerCapture(pointerId);}catch(error){let OwnerDOMException=target.ownerDocument.defaultView?.DOMException;if(OwnerDOMException&&error instanceof OwnerDOMException&&error.name==="NotFoundError")return;throw error}}var BaseLayout=React8.forwardRef(function({header,sidebar,aside,sidebarLabel,asideLabel,footer,children,sidebarSize,asideSize,gap,fullHeight=false,appearance:appearance2,className,classNames,style,...layoutProps},ref){assertBoolean("fullHeight",fullHeight);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),hasHeader=hasRenderableNode(header),hasSidebar=hasRenderableNode(sidebar),hasAside=hasRenderableNode(aside),hasFooter=hasRenderableNode(footer),bodyColumns=[hasSidebar?"var(--base-layout-sidebar-size)":void 0,"minmax(0, 1fr)",hasAside?"var(--base-layout-aside-size)":void 0].filter(Boolean).join(" "),layoutRows=[hasHeader?"auto":void 0,"minmax(0, 1fr)",hasFooter?"auto":void 0].filter(Boolean).join(" "),resolvedGap=gap!==void 0?toCssSize(gap,"0px"):void 0,layoutStyle={...theme.styles.layout,"--base-layout-sidebar-size":toCssSize(sidebarSize,"16rem"),"--base-layout-aside-size":toCssSize(asideSize,"20rem"),gridTemplateRows:layoutRows,...resolvedGap!==void 0?{gap:resolvedGap}:{},...style},bodyStyle={...theme.styles.layoutBody,gridTemplateColumns:bodyColumns,...resolvedGap!==void 0?{gap:resolvedGap}:{}};return jsxRuntime.jsxs("div",{...componentAttributes,...layoutProps,ref,"data-monkeys-component":"layout","data-slot":"root","data-full-height":fullHeight?"true":"false",className:cn(theme.slots.layoutRoot,fullHeight&&theme.slots.layoutRootFull,classNames?.root,className),style:layoutStyle,children:[hasHeader?jsxRuntime.jsx("div",{"data-slot":"header",className:cn(theme.slots.layoutHeader,classNames?.header),style:theme.styles.layoutHeader,children:header}):null,jsxRuntime.jsxs("div",{"data-slot":"body",className:cn(theme.slots.layoutBody,classNames?.body),style:bodyStyle,children:[hasSidebar?jsxRuntime.jsx("aside",{"aria-label":sidebarLabel,"data-slot":"sidebar",className:cn(theme.slots.layoutSidebar,classNames?.sidebar),style:theme.styles.layoutSidebar,children:sidebar}):null,jsxRuntime.jsx("main",{"data-slot":"main",className:cn(theme.slots.layoutMain,classNames?.main),style:theme.styles.layoutMain,children}),hasAside?jsxRuntime.jsx("aside",{"aria-label":asideLabel,"data-slot":"aside",className:cn(theme.slots.layoutAside,classNames?.aside),style:theme.styles.layoutAside,children:aside}):null]}),hasFooter?jsxRuntime.jsx("div",{"data-slot":"footer",className:cn(theme.slots.layoutFooter,classNames?.footer),style:theme.styles.layoutFooter,children:footer}):null]})}),BaseLayoutPane=React8.forwardRef(function({as="div",scrollable=false,bordered=true,surface="default",children,appearance:appearance2,className,classNames,style,...paneProps},ref){assertBoolean("scrollable",scrollable),assertBoolean("bordered",bordered);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);return jsxRuntime.jsx(as,{...componentAttributes,...paneProps,ref,"data-monkeys-component":"layout-pane","data-slot":"root","data-scrollable":scrollable?"true":"false","data-surface":surface,className:cn(theme.slots.layoutPane,scrollable&&theme.slots.layoutPaneScrollable,bordered&&theme.slots.layoutPaneBordered,surface==="muted"&&theme.slots.layoutPaneMuted,surface==="soft"&&theme.slots.layoutPaneSoft,surface==="transparent"&&theme.slots.layoutPaneTransparent,classNames?.root,className),style:{...theme.styles.layoutPane,...style},children})}),BaseLayoutResizeHandle=React8.forwardRef(function({orientation="horizontal",resizable=false,disabled=false,size:size2,minSize,maxSize,label,appearance:appearance2,className,classNames,style,tabIndex,...handleProps},ref){assertOrientation(orientation),assertBoolean("resizable",resizable),assertBoolean("disabled",disabled);let resolvedMin=minSize===void 0?void 0:assertPercent("minSize",minSize),resolvedMax=maxSize===void 0?void 0:assertPercent("maxSize",maxSize);if(resolvedMin!==void 0&&resolvedMax!==void 0&&resolvedMin>resolvedMax)throw new Error("BaseLayoutSplit minSize cannot be greater than maxSize.");let resolvedSize=size2===void 0?void 0:clamp(assertPercent("size",size2),resolvedMin??0,resolvedMax??100),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),messages=useMonkeysLocaleMessages().layout,theme=resolveBaseAppearance(resolvedAppearance),resolvedLabel=label??messages.resizePanels;if(resizable&&(typeof resolvedLabel!="string"||resolvedLabel.trim().length===0))throw new TypeError("BaseLayoutResizeHandle label must be a non-empty string.");let interactive=resizable&&!disabled,separatorOrientation=getSeparatorOrientation(orientation);return jsxRuntime.jsx("div",{...componentAttributes,...handleProps,ref,"data-monkeys-component":"layout-resize-handle","data-slot":"handle","data-orientation":orientation,"data-state":interactive?"enabled":disabled?"disabled":"static",role:resizable?"separator":void 0,"aria-label":resizable?resolvedLabel:void 0,"aria-orientation":resizable?separatorOrientation:void 0,"aria-valuemin":resizable?resolvedMin:void 0,"aria-valuemax":resizable?resolvedMax:void 0,"aria-valuenow":resizable?resolvedSize:void 0,"aria-disabled":resizable&&disabled?true:void 0,tabIndex:interactive?tabIndex??0:void 0,className:cn(theme.slots.layoutResizeHandle,orientation==="horizontal"?theme.slots.layoutResizeHandleHorizontal:theme.slots.layoutResizeHandleVertical,!interactive&&theme.slots.layoutResizeHandleDisabled,classNames?.root,className),style:{...theme.styles.layoutResizeHandle,...style},children:jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"indicator",className:cn(theme.slots.layoutResizeHandleIndicator,orientation==="horizontal"?"h-8 w-px":"h-px w-8",classNames?.indicator)})})});React8.forwardRef(function({orientation="horizontal",primary,secondary,children,resizable=false,disabled=false,size:size2,defaultSize,minSize,maxSize,gap,keyboardStep,resizeLabel,appearance:appearance2,className,classNames,style,onSizeChange,...splitProps},ref){assertOrientation(orientation),assertBoolean("resizable",resizable),assertBoolean("disabled",disabled);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),bounds=resolveSplitBounds({minSize,maxSize,keyboardStep}),initialSize=resolveSplitSize("defaultSize",defaultSize,DEFAULT_SPLIT_SIZE,bounds.min,bounds.max),[uncontrolledSize,setUncontrolledSize]=React8.useState(initialSize),rootRef=React8.useRef(null),cleanupRef=React8.useRef(null),controlled=size2!==void 0,interactive=resizable&&!disabled,renderedSize=resolveSplitSize("size",controlled?size2:uncontrolledSize,initialSize,bounds.min,bounds.max),resolvedDirection=splitProps.dir??componentAttributes.dir,setRootRef=React8.useCallback(node=>{rootRef.current=node,assignRef2(ref,node);},[ref]),commitSize=React8.useCallback(nextSize=>{let clampedSize=clamp(nextSize,bounds.min,bounds.max);controlled||setUncontrolledSize(clampedSize),onSizeChange?.(clampedSize);},[bounds.max,bounds.min,controlled,onSizeChange]),updateFromPointer=React8.useCallback(event=>{let root=rootRef.current;if(!root)return;let rect=root.getBoundingClientRect(),total=orientation==="horizontal"?rect.width:rect.height;if(!Number.isFinite(total)||total<=0)return;let offset2=orientation==="horizontal"?isRtl(root)?rect.right-event.clientX:event.clientX-rect.left:event.clientY-rect.top;commitSize(offset2/total*100);},[commitSize,orientation]),stopResize=React8.useCallback(()=>{let cleanup=cleanupRef.current;cleanupRef.current=null,cleanup?.();},[]);React8.useEffect(()=>(interactive||stopResize(),stopResize),[interactive,stopResize]);let handlePointerDown=event=>{if(!interactive||event.button!==0&&event.pointerType!=="touch")return;event.preventDefault(),stopResize(),updateFromPointer(event);let pointerId=event.pointerId,target=event.currentTarget,ownerDocument=target.ownerDocument,handleMove=nextEvent=>{nextEvent.pointerId===pointerId&&updateFromPointer(nextEvent);},handleStop=nextEvent=>{nextEvent.pointerId===pointerId&&stopResize();},handleLostCapture=nextEvent=>{nextEvent.pointerId===pointerId&&stopResize();};ownerDocument.addEventListener("pointermove",handleMove),ownerDocument.addEventListener("pointerup",handleStop),ownerDocument.addEventListener("pointercancel",handleStop),target.addEventListener("lostpointercapture",handleLostCapture),cleanupRef.current=()=>{ownerDocument.removeEventListener("pointermove",handleMove),ownerDocument.removeEventListener("pointerup",handleStop),ownerDocument.removeEventListener("pointercancel",handleStop),target.removeEventListener("lostpointercapture",handleLostCapture),target.hasPointerCapture?.(pointerId)&&target.releasePointerCapture?.(pointerId);},setPointerCaptureIfAvailable(target,pointerId);},handleKeyDown=event=>{if(!interactive)return;let step=event.shiftKey?bounds.keyboardStep*4:bounds.keyboardStep,rtl=orientation==="horizontal"&&isRtl(event.currentTarget),nextSize;event.key==="Home"&&(nextSize=bounds.min),event.key==="End"&&(nextSize=bounds.max),orientation==="horizontal"&&event.key==="ArrowLeft"&&(nextSize=renderedSize+(rtl?step:-step)),orientation==="horizontal"&&event.key==="ArrowRight"&&(nextSize=renderedSize+(rtl?-step:step)),orientation==="vertical"&&event.key==="ArrowUp"&&(nextSize=renderedSize-step),orientation==="vertical"&&event.key==="ArrowDown"&&(nextSize=renderedSize+step),nextSize!==void 0&&(event.preventDefault(),commitSize(nextSize));},resolvedGap=gap!==void 0?toCssSize(gap,"0px"):void 0,resizeTrack=resolvedGap!==void 0?"var(--base-layout-split-gap)":"auto",resizeHandleStyle=resolvedGap!==void 0?orientation==="horizontal"?{width:"var(--base-layout-split-gap)"}:{height:"var(--base-layout-split-gap)"}:void 0,splitStyle={...theme.styles.layoutSplit,[orientation==="horizontal"?"gridTemplateColumns":"gridTemplateRows"]:resizable?`${renderedSize}% ${resizeTrack} minmax(0, 1fr)`:`${renderedSize}% minmax(0, 1fr)`,...resizable?{gap:0}:{},...resolvedGap!==void 0?{"--base-layout-split-gap":resolvedGap,...resizable?{}:{gap:resolvedGap}}:{},...style};return jsxRuntime.jsxs("div",{...componentAttributes,...splitProps,ref:setRootRef,"data-monkeys-component":"layout-split","data-slot":"root","data-orientation":orientation,"data-state":interactive?"enabled":disabled?"disabled":"static","data-controlled":controlled?"true":"false",className:cn(theme.slots.layoutSplitRoot,orientation==="horizontal"?theme.slots.layoutSplitHorizontal:theme.slots.layoutSplitVertical,classNames?.root,className),style:splitStyle,children:[jsxRuntime.jsx("div",{"data-slot":"primary",className:cn(theme.slots.layoutSplitPane,theme.slots.layoutSplitPrimary,classNames?.primary),style:theme.styles.layoutSplitPane,children:hasRenderableNode(primary)?primary:children}),resizable?jsxRuntime.jsx(BaseLayoutResizeHandle,{orientation,resizable:true,disabled,size:renderedSize,minSize:bounds.min,maxSize:bounds.max,label:resizeLabel,appearance:appearance2,dir:resolvedDirection,className:classNames?.handle,style:resizeHandleStyle,onPointerDown:handlePointerDown,onKeyDown:handleKeyDown}):null,jsxRuntime.jsx("div",{"data-slot":"secondary",className:cn(theme.slots.layoutSplitPane,theme.slots.layoutSplitSecondary,classNames?.secondary),style:theme.styles.layoutSplitPane,children:secondary})]})});var skeletonAnimations=["pulse","shimmer","shimmer-soft","shimmer-diagonal","shimmer-vertical","drift","outline","none"];function validateSkeletonAnimation(value,grouped=false){if(!(value===void 0||skeletonAnimations.includes(value))&&!(grouped&&(value==="shimmer-shared"||value==="shimmer-stagger")))throw new TypeError(`Skeleton animation must be ${skeletonAnimations.join(", ")}${grouped?", shimmer-shared, or shimmer-stagger":""}.`)}var MotionContext=React8.createContext(null),ItemContext=React8.createContext(void 0);function clearGeometry(node){delete node.dataset.skeletonReady;for(let name of ["width","offset","delay"])node.style.removeProperty(`--monkeys-skeleton-${name}`);}function useGroupRegistry(animation,disabled,enabled,containerRef){let registry=React8.useMemo(()=>({nodes:new Map,update:()=>{}}),[]);return React8.useEffect(()=>{if(!enabled||disabled||animation!=="shimmer-shared"&&animation!=="shimmer-stagger")return;let query=window.matchMedia("(prefers-reduced-motion: reduce)"),observer,frame,active=false,observed=new Set,measure=()=>{if(frame=void 0,!active)return;let nodes=[...registry.nodes.keys()].filter(node=>node.isConnected);if(nodes.sort((a,b)=>a.compareDocumentPosition(b)&2?1:-1),animation==="shimmer-stagger"){nodes.forEach((node,index)=>{let item=registry.nodes.get(node)?.item??index;node.style.setProperty("--monkeys-skeleton-delay",`${Math.min(item*80,400)}ms`);});return}let container=containerRef?.current??nodes[0]?.parentElement;for(let node of nodes)for(;container&&!container.contains(node);)container=container.parentElement;let targets=new Set(nodes);for(let node of nodes)for(let ancestor=node.parentElement;ancestor&&(targets.add(ancestor),ancestor!==container);ancestor=ancestor.parentElement);container&&targets.add(container);for(let node of observed)targets.has(node)||(observer?.unobserve(node),observed.delete(node));for(let node of targets)observed.has(node)||(observer?.observe(node),observed.add(node));let boxes=nodes.map(node=>node.getBoundingClientRect()),scales=nodes.map((node,index)=>{let style=getComputedStyle(node),extras=style.boxSizing==="border-box"?0:parseFloat(style.paddingLeft)+parseFloat(style.paddingRight)+parseFloat(style.borderLeftWidth)+parseFloat(style.borderRightWidth),width=parseFloat(style.width)+extras,scale=width?boxes[index].width/width:1;return Math.abs(scale-1)<1e-4?1:scale}),left=Math.min(...boxes.map(box=>box.left)),right=Math.max(...boxes.map(box=>box.right));nodes.forEach((node,index)=>{let box=boxes[index];if(!box.width||!box.height){clearGeometry(node);return}let scale=scales[index];node.style.setProperty("--monkeys-skeleton-width",`${(right-left)/scale}px`),node.style.setProperty("--monkeys-skeleton-offset",`${(left-box.left)/scale}px`),node.dataset.skeletonReady||(node.style.setProperty("--monkeys-skeleton-delay",`${-(performance.now()%2600)}ms`),node.dataset.skeletonReady="true");});},schedule=()=>{active&&frame===void 0&&(frame=window.requestAnimationFrame(measure));},stop=()=>{active=false,observer?.disconnect(),observer=void 0,observed.clear(),frame!==void 0&&window.cancelAnimationFrame(frame),frame=void 0,window.removeEventListener("resize",schedule),window.removeEventListener("scroll",schedule,true),registry.nodes.forEach((_,node)=>clearGeometry(node));},start=()=>{stop(),!(query.matches||animation==="shimmer-shared"&&typeof ResizeObserver>"u")&&(active=true,animation==="shimmer-shared"&&(observer=new ResizeObserver(schedule),window.addEventListener("resize",schedule),window.addEventListener("scroll",schedule,{capture:true,passive:true})),schedule());};return registry.update=schedule,start(),query.addEventListener("change",start),()=>{stop(),query.removeEventListener("change",start),registry.update=()=>{};}},[animation,disabled,enabled,registry,containerRef]),React8.useEffect(()=>{registry.update();}),registry}function SkeletonScope({animation,animated,children,independent=false,containerRef}){if(validateSkeletonAnimation(animation,true),animated!==void 0&&typeof animated!="boolean")throw new TypeError("SkeletonGroup animated must be a boolean.");let parent=React8.useContext(MotionContext),inheritedItem=React8.useContext(ItemContext),ownsGroup=independent||animation!==void 0||!parent,mode=animation??parent?.animation??"pulse",disabled=!!parent?.disabled||animated===false||mode==="none",registry=useGroupRegistry(mode,disabled,ownsGroup,containerRef),value=React8.useMemo(()=>({animation:mode,disabled,registry:ownsGroup?registry:parent.registry}),[mode,disabled,ownsGroup,registry,parent]),content=jsxRuntime.jsx(MotionContext.Provider,{value,children});return jsxRuntime.jsx(ItemContext.Provider,{value:ownsGroup?void 0:inheritedItem,children:content})}function SkeletonItem({index,children}){let parent=React8.useContext(ItemContext);return jsxRuntime.jsx(ItemContext.Provider,{value:parent??index,children})}function useSkeletonRef(receive,forwardedRef){return React8.useMemo(()=>{let cleanup;return element=>{if(receive(element),typeof forwardedRef=="function"){if(cleanup)cleanup(),cleanup=void 0;else if(element===null){forwardedRef(null);return}if(element!==null){let result=forwardedRef(element);typeof result=="function"&&(cleanup=result);}}else forwardedRef&&(forwardedRef.current=element);}},[receive,forwardedRef])}function useSkeletonMotion(animation,animated=true,forwardedRef){validateSkeletonAnimation(animation);let group=React8.useContext(MotionContext),item=React8.useContext(ItemContext),mode=!animated||group?.disabled?"none":animation??group?.animation??"pulse",[node,setNode]=React8.useState(null),ref=useSkeletonRef(setNode,forwardedRef),registry=animation===void 0&&(mode==="shimmer-shared"||mode==="shimmer-stagger")?group?.registry:void 0;return React8.useEffect(()=>{if(!(!node||!registry))return registry.nodes.set(node,{item}),registry.update(),()=>{registry.nodes.delete(node),clearGeometry(node),registry.update();}},[node,registry,item,mode]),{ref,mode,style:mode==="shimmer-stagger"&&item!==void 0?{"--monkeys-skeleton-delay":`${Math.min(item*80,400)}ms`}:void 0}}var variantClassNames={line:"h-4 w-full",block:"h-24 w-full",circle:"aspect-square h-10 rounded-full"},BaseSkeleton=React8.forwardRef(function({variant="line",animated=true,animation,appearance:appearance2,className,classNames,style,...skeletonProps},ref){if(variant!=="line"&&variant!=="block"&&variant!=="circle")throw new TypeError('BaseSkeleton variant must be "line", "block", or "circle".');if(typeof animated!="boolean")throw new TypeError("BaseSkeleton animated must be a boolean.");let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),motion=useSkeletonMotion(animation,animated,ref);return jsxRuntime.jsx("div",{...componentAttributes,...skeletonProps,ref:motion.ref,"aria-hidden":"true","data-monkeys-component":"skeleton","data-slot":"root","data-variant":variant,"data-animated":motion.mode!=="none","data-state":motion.mode!=="none"?"animated":"static","data-skeleton-animation":motion.mode,className:cn(theme.slots.skeletonRoot,variantClassNames[variant],motion.mode==="pulse"&&"motion-safe:animate-pulse motion-reduce:animate-none",classNames?.root,className),style:{...theme.styles.skeleton,...motion.style,...style}})});function DefaultLoadingIcon({className}){return jsxRuntime.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className,fill:"none",children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9",className:"opacity-25",stroke:"currentColor",strokeWidth:"3"}),jsxRuntime.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M12 3a9 9 0 0 1 9 9h-3a6 6 0 0 0-6-6V3Z"})]})}var BaseLoadingState=React8.forwardRef(function({icon,title,description,actions,variant,animation,appearance:appearance2,className,classNames,style,role="status","aria-live":ariaLive="polite","aria-busy":ariaBusy=true,"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,...stateProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),{loading}=useMonkeysLocaleMessages(),statusStates=useMonkeysStatusStates(),resolvedVariant=variant??statusStates.loading?.variant??"spinner",densityClassName=statusStates.density==="compact"?"min-h-0 px-3 py-3":statusStates.density==="comfortable"?"min-h-56 px-8 py-12":void 0,theme=resolveBaseAppearance(resolvedAppearance),resolvedIcon=resolvedVariant==="skeleton"&&icon===void 0?void 0:icon===void 0?jsxRuntime.jsx(DefaultLoadingIcon,{className:theme.slots.loadingSpinner}):icon,resolvedAriaLabel=nativeAriaLabel??(nativeAriaLabelledBy===void 0?typeof title=="string"?title:loading.spinner:void 0);return jsxRuntime.jsxs("div",{...componentAttributes,...stateProps,ref,role,"aria-live":ariaLive,"aria-busy":ariaBusy,"aria-label":resolvedAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"data-monkeys-component":"loading-state","data-slot":"root","data-state":"loading","data-variant":resolvedVariant,"data-density":statusStates.density,className:cn(theme.slots.stateRoot,densityClassName,classNames?.root,className),style:{...theme.styles.stateRoot,...style},children:[resolvedVariant==="skeleton"?jsxRuntime.jsx(SkeletonScope,{animation,children:jsxRuntime.jsxs("div",{className:"flex w-full max-w-sm flex-col gap-3","data-slot":"skeleton",children:[jsxRuntime.jsx(BaseSkeleton,{variant:"block",className:"h-20"}),jsxRuntime.jsx(BaseSkeleton,{variant:"line",className:"w-4/5"}),jsxRuntime.jsx(BaseSkeleton,{variant:"line",className:"w-3/5"})]})}):hasRenderableNode(resolvedIcon)?jsxRuntime.jsx("div",{"data-slot":"icon","data-state":"loading",className:cn(theme.slots.stateIcon,classNames?.icon),style:theme.styles.stateIcon,children:resolvedIcon}):null,resolvedVariant!=="skeleton"&&hasRenderableNode(title)?jsxRuntime.jsx("div",{"data-slot":"title","data-state":"loading",className:cn(theme.slots.stateTitle,classNames?.title),children:title}):null,resolvedVariant!=="skeleton"&&hasRenderableNode(description)?jsxRuntime.jsx("div",{"data-slot":"description","data-state":"loading",className:cn(theme.slots.stateDescription,classNames?.description),children:description}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{"data-slot":"actions","data-state":"loading",className:cn(theme.slots.stateActions,classNames?.actions),children:actions}):null]})});function safeDisplayUrl(value,kind){if(typeof value!="string")return;let text10=value.trim();if(!text10||/[\u0000-\u001f\u007f\\]/.test(text10)||/^https?:/i.test(text10)&&!/^https?:\/\//i.test(text10))return;let url;try{url=new URL(text10,"https://monkeys.invalid/");}catch{return}if(!(url.username||url.password)){if(url.protocol==="http:"||url.protocol==="https:"||kind==="link"&&(url.protocol==="mailto:"||url.protocol==="tel:"))return text10;if(url.protocol==="blob:"){if(url.pathname.startsWith("null/"))return text10;try{let origin=new URL(url.pathname);if(["https:","http:"].includes(origin.protocol)&&!origin.username&&!origin.password)return text10}catch{}}}}function safeDisplaySrcSet(value){if(typeof value!="string"||!value.trim())return;let candidates=value.split(",");for(let candidate of candidates){let parts2=candidate.trim().split(/\s+/);if(!safeDisplayUrl(parts2[0],"media")||parts2.length>2||parts2.length===2&&!/^(?:[1-9]\d*w|(?:\d+(?:\.\d+)?|\.\d+)x)$/.test(parts2[1]))return}return value}var typeaheadResetDelay=500;function validateMultiSelectProps({options:options2,value,defaultValue,invalid:invalid2,disabled,required,openForPreview,maxTagCount}){for(let[name,state]of [["invalid",invalid2],["disabled",disabled],["required",required],["openForPreview",openForPreview]])if(typeof state!="boolean")throw new TypeError(`BaseMultiSelect ${name} must be a boolean.`);if(maxTagCount!==void 0&&typeof maxTagCount!="number")throw new TypeError("BaseMultiSelect maxTagCount must be a number.");if(options2!==void 0&&!Array.isArray(options2))throw new TypeError("BaseMultiSelect options must be an array.");options2?.forEach((option,index)=>{if(!option||typeof option!="object")throw new TypeError(`BaseMultiSelect option at index ${index} must be an object.`);if(typeof option.value!="string")throw new TypeError(`BaseMultiSelect option value at index ${index} must be a string.`);if(option.disabled!==void 0&&typeof option.disabled!="boolean")throw new TypeError(`BaseMultiSelect option disabled at index ${index} must be a boolean.`);if(option.textValue!==void 0&&typeof option.textValue!="string")throw new TypeError(`BaseMultiSelect option textValue at index ${index} must be a string.`)});for(let[name,values]of [["value",value],["defaultValue",defaultValue]]){if(values!==void 0&&!Array.isArray(values))throw new TypeError(`BaseMultiSelect ${name} must be an array.`);values?.forEach((item,index)=>{if(typeof item!="string")throw new TypeError(`BaseMultiSelect ${name} item at index ${index} must be a string.`)});}}function normalizeValues(values){let nextValues=[],seen=new Set;return values?.forEach(value=>{seen.has(value)||(seen.add(value),nextValues.push(value));}),nextValues}function getNextEnabledIndex(options2,currentIndex,direction){if(!options2.length)return -1;let startIndex=currentIndex>=0?currentIndex:direction===1?-1:0;for(let offset2=1;offset2<=options2.length;offset2+=1){let nextIndex=(startIndex+offset2*direction+options2.length)%options2.length;if(!options2[nextIndex]?.disabled)return nextIndex}return -1}function getBoundaryEnabledIndex(options2,boundary){if(boundary==="first")return options2.findIndex(option=>!option.disabled);for(let index=options2.length-1;index>=0;index-=1)if(!options2[index]?.disabled)return index;return -1}function getSafeTagCount(maxTagCount,total){return maxTagCount===void 0||!Number.isFinite(maxTagCount)?total:Math.max(0,Math.min(total,Math.floor(maxTagCount)))}function getOptionText(option){return option.textValue!==void 0?option.textValue:typeof option.label=="string"?option.label:option.value}function toDomId2(value){return value.replace(/[^a-zA-Z0-9_-]/g,"-")}var BaseMultiSelect=React8.forwardRef(function({options:options2,value,defaultValue,name,placeholder,icon,invalid:invalid2=false,disabled=false,required=false,openForPreview=false,maxTagCount,removeLabel,emptyLabel,appearance:appearance2,className,classNames,style,id:id9,"aria-invalid":nativeAriaInvalid,"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,onValueChange,...rootProps},ref){validateMultiSelectProps({options:options2,value,defaultValue,invalid:invalid2,disabled,required,openForPreview,maxTagCount});let messages=useMonkeysLocaleMessages().multiSelect,resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),generatedId=React8.useId(),multiSelectId=id9??generatedId,controlId=`${multiSelectId}-control`,listboxId=`${multiSelectId}-listbox`,rootRef=React8.useRef(null),controlRef=React8.useRef(null),composingRef=React8.useRef(false),typeaheadBufferRef=React8.useRef(""),typeaheadTimerRef=React8.useRef(null),optionList=options2??[],optionIds=optionList.map((option,index)=>`${multiSelectId}-option-${index}-${toDomId2(option.value)}`),forceOpen=openForPreview,[uncontrolledOpen,setUncontrolledOpen]=React8.useState(false),open=forceOpen||uncontrolledOpen,initialDefaultValueRef=React8.useRef(normalizeValues(defaultValue)),[uncontrolledValue,setUncontrolledValue]=React8.useState(()=>[...initialDefaultValueRef.current]),[activeIndex,setActiveIndex]=React8.useState(()=>getBoundaryEnabledIndex(optionList,"first")),isControlled=value!==void 0,selectedValues=React8.useMemo(()=>normalizeValues(isControlled?value:uncontrolledValue),[isControlled,uncontrolledValue,value]),selectedValueSet=React8.useMemo(()=>new Set(selectedValues),[selectedValues]),optionByValue=React8.useMemo(()=>{let map=new Map;return optionList.forEach(option=>{map.has(option.value)||map.set(option.value,option);}),map},[optionList]),selectedOptions=React8.useMemo(()=>selectedValues.map(selectedValue=>optionByValue.get(selectedValue)).filter(option=>option!==void 0),[optionByValue,selectedValues]),firstEnabledIndex=getBoundaryEnabledIndex(optionList,"first"),resolvedActiveIndex=activeIndex>=0&&!optionList[activeIndex]?.disabled?activeIndex:firstEnabledIndex,visibleTagCount=getSafeTagCount(maxTagCount,selectedOptions.length),visibleOptions=selectedOptions.slice(0,visibleTagCount),overflowCount=selectedOptions.length-visibleOptions.length,isPlaceholder=selectedOptions.length===0,layerDirection=rootProps.dir??componentAttributes.dir,rootState=disabled?"disabled":invalid2?"invalid":open?"open":"closed",setRootRef=node=>{rootRef.current=node,typeof ref=="function"?ref(node):ref&&(ref.current=node);},setOpen=nextOpen=>{disabled||forceOpen||(setUncontrolledOpen(nextOpen),nextOpen&&resolvedActiveIndex<0&&setActiveIndex(firstEnabledIndex));},commitValues=nextValues=>{let normalizedValues=normalizeValues(nextValues);isControlled||setUncontrolledValue(normalizedValues),onValueChange?.(normalizedValues);},toggleOption=option=>{if(!option||option.disabled||disabled)return;let nextValues=selectedValueSet.has(option.value)?selectedValues.filter(selectedValue=>selectedValue!==option.value):[...selectedValues,option.value];commitValues(nextValues);},removeOption=option=>{disabled||commitValues(selectedValues.filter(selectedValue=>selectedValue!==option.value));},moveActive=nextIndex=>{nextIndex<0||optionList[nextIndex]?.disabled||(setActiveIndex(nextIndex),open||setOpen(true));},handleTypeahead=(event,character)=>{let ownerWindow=event.currentTarget.ownerDocument.defaultView;if(!ownerWindow)return;let nextBuffer=`${typeaheadBufferRef.current}${character}`.toLocaleLowerCase();typeaheadBufferRef.current=nextBuffer,typeaheadTimerRef.current&&typeaheadTimerRef.current.ownerWindow.clearTimeout(typeaheadTimerRef.current.timerId),typeaheadTimerRef.current={ownerWindow,timerId:ownerWindow.setTimeout(()=>{typeaheadBufferRef.current="",typeaheadTimerRef.current=null;},typeaheadResetDelay)};let query=Array.from(nextBuffer).every(bufferCharacter=>bufferCharacter===nextBuffer[0])?character.toLocaleLowerCase():nextBuffer;for(let offset2=1;offset2<=optionList.length;offset2+=1){let index=(resolvedActiveIndex+offset2+optionList.length)%optionList.length,option=optionList[index];if(!option?.disabled&&getOptionText(option).trim().toLocaleLowerCase().startsWith(query)){event.preventDefault(),moveActive(index);return}}},handleKeyDown=event=>{if(!(disabled||composingRef.current||event.nativeEvent.isComposing)){if(event.key==="ArrowDown"||event.key==="ArrowUp"){event.preventDefault(),open?moveActive(getNextEnabledIndex(optionList,resolvedActiveIndex,event.key==="ArrowDown"?1:-1)):(setActiveIndex(firstEnabledIndex),setOpen(true));return}if(event.key==="Home"||event.key==="End"){event.preventDefault(),moveActive(getBoundaryEnabledIndex(optionList,event.key==="Home"?"first":"last"));return}if(event.key==="Enter"||event.key===" "){event.preventDefault(),open?toggleOption(optionList[resolvedActiveIndex]):setOpen(true);return}if(event.key==="Escape"&&open){event.preventDefault(),setOpen(false);return}if(event.key==="Tab"&&open){setOpen(false);return}event.key.length===1&&!event.ctrlKey&&!event.metaKey&&!event.altKey&&!/\s/.test(event.key)&&handleTypeahead(event,event.key);}};return React8.useEffect(()=>{if(!open||forceOpen)return;let ownerDocument=rootRef.current?.ownerDocument;if(!ownerDocument)return;let handlePointerDown=event=>{rootRef.current?.contains(event.target)||setUncontrolledOpen(false);};return ownerDocument.addEventListener("pointerdown",handlePointerDown),()=>ownerDocument.removeEventListener("pointerdown",handlePointerDown)},[forceOpen,open]),React8.useEffect(()=>{if(isControlled)return;let form=rootRef.current?.closest("form");if(!form)return;let handleReset=()=>{setUncontrolledValue([...initialDefaultValueRef.current]),setActiveIndex(getBoundaryEnabledIndex(optionList,"first")),forceOpen||setUncontrolledOpen(false);};return form.addEventListener("reset",handleReset),()=>form.removeEventListener("reset",handleReset)},[forceOpen,isControlled,optionList]),React8.useEffect(()=>()=>{typeaheadTimerRef.current&&typeaheadTimerRef.current.ownerWindow.clearTimeout(typeaheadTimerRef.current.timerId);},[]),jsxRuntime.jsxs("div",{...componentAttributes,...rootProps,id:id9,ref:setRootRef,dir:layerDirection,"data-monkeys-component":"multi-select","data-slot":"root","data-state":rootState,"data-disabled":disabled||void 0,"data-invalid":invalid2||void 0,className:cn(theme.slots.controlWrapper,"overflow-visible",open&&"z-50",invalid2&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,classNames?.root,className),style:{...theme.styles.control,...invalid2?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("span",{className:cn(theme.slots.controlIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsx("div",{...componentAttributes,ref:controlRef,id:controlId,role:"combobox",tabIndex:disabled?-1:0,dir:layerDirection,"aria-haspopup":"listbox","aria-expanded":open,"aria-controls":listboxId,"aria-activedescendant":open&&resolvedActiveIndex>=0?optionIds[resolvedActiveIndex]:void 0,"aria-autocomplete":"none","aria-disabled":disabled||void 0,"aria-required":required||void 0,"aria-invalid":nativeAriaInvalid??(invalid2||void 0),"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,"data-monkeys-component":"multi-select","data-slot":"control","data-state":rootState,className:cn(theme.slots.controlBase,"flex min-h-9 cursor-pointer flex-wrap items-center gap-1.5 py-1.5 pr-9 text-left",disabled&&"!cursor-not-allowed",classNames?.control),onMouseDown:event=>{disabled||event.button!==0||(event.preventDefault(),controlRef.current?.focus());},onClick:()=>{controlRef.current?.focus(),setOpen(!open);},onBlur:event=>{rootRef.current?.contains(event.relatedTarget)||setOpen(false);},onCompositionStart:()=>{composingRef.current=true;},onCompositionEnd:()=>{composingRef.current=false;},onKeyDown:handleKeyDown,children:jsxRuntime.jsxs("span",{"data-monkeys-component":"multi-select","data-slot":"tag-list","data-state":isPlaceholder?"empty":"filled",className:cn("flex min-w-0 flex-1 flex-wrap items-center gap-1.5",classNames?.tagList),children:[visibleOptions.map((option,index)=>jsxRuntime.jsxs("span",{"data-monkeys-component":"multi-select","data-slot":"tag","data-state":"selected",className:cn("inline-flex max-w-full items-center gap-1 rounded-full border border-border/70 bg-muted/65 px-2 py-0.5 text-xs font-medium text-foreground",classNames?.tag),children:[jsxRuntime.jsx("span",{"data-slot":"tag-label",className:cn("max-w-40 truncate",classNames?.tagLabel),children:option.label}),jsxRuntime.jsx("button",{...componentAttributes,type:"button",tabIndex:-1,dir:layerDirection,"aria-label":removeLabel?.(option)??messages.removeOption({value:option.value}),disabled,"data-monkeys-component":"multi-select","data-slot":"tag-remove","data-state":"selected",className:cn("inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-background/80 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed",classNames?.tagRemove),onClick:event=>{event.preventDefault(),event.stopPropagation(),removeOption(option),controlRef.current?.focus();},onMouseDown:event=>{event.preventDefault(),event.stopPropagation();},onKeyDown:event=>event.stopPropagation(),children:jsxRuntime.jsx("span",{"aria-hidden":"true",children:"x"})})]},`${option.value}-${index}`)),overflowCount>0?jsxRuntime.jsxs("span",{"data-monkeys-component":"multi-select","data-slot":"tag-overflow","data-state":"selected",className:cn("inline-flex max-w-full items-center rounded-full border border-border/70 bg-muted/45 px-2 py-0.5 text-xs font-medium text-muted-foreground",classNames?.tag),children:["+",overflowCount]}):null,isPlaceholder?jsxRuntime.jsx("span",{"data-monkeys-component":"multi-select","data-slot":"placeholder","data-state":"empty",className:cn("min-w-0 truncate",theme.slots.selectPlaceholder,classNames?.placeholder),children:placeholder===void 0?messages.placeholder:placeholder}):null]})}),jsxRuntime.jsx("span",{"data-monkeys-component":"multi-select","data-slot":"chevron","data-state":open?"open":"closed",className:cn(theme.slots.selectChevron,open&&"rotate-[225deg]",classNames?.chevron)}),name?selectedValues.map(selectedValue=>React8.createElement("input",{...componentAttributes,key:selectedValue,type:"hidden",name,value:selectedValue,disabled,dir:layerDirection,"data-monkeys-component":"multi-select","data-slot":"hidden-input","data-state":"selected",className:classNames?.hiddenInput})):null,open?jsxRuntime.jsx("div",{...componentAttributes,id:listboxId,role:"listbox",dir:layerDirection,"aria-multiselectable":"true","aria-labelledby":controlId,"data-monkeys-component":"multi-select","data-slot":"menu","data-state":"open",className:cn(theme.slots.selectMenu,classNames?.menu),style:theme.styles.selectMenu,children:optionList.length>0?optionList.map((option,index)=>{let selected2=selectedValueSet.has(option.value),active=index===resolvedActiveIndex,optionState=option.disabled?"disabled":active?"active":selected2?"selected":"idle";return React8.createElement("button",{...componentAttributes,key:`${option.value}-${index}`,id:optionIds[index],type:"button",role:"option",tabIndex:-1,dir:layerDirection,"aria-selected":selected2,disabled:option.disabled,"data-monkeys-component":"multi-select","data-slot":"option","data-state":optionState,"data-active":active||void 0,"data-selected":selected2||void 0,"data-disabled":option.disabled||void 0,className:cn(theme.slots.selectOption,"gap-2",active&&theme.slots.selectOptionActive,selected2&&theme.slots.selectOptionSelected,option.disabled&&theme.slots.selectOptionDisabled,classNames?.option),style:{...theme.styles.selectOption,...active?theme.styles.selectOptionActive:void 0,...selected2?theme.styles.selectOptionSelected:void 0},onMouseEnter:()=>{option.disabled||setActiveIndex(index);},onMouseDown:event=>event.preventDefault(),onClick:()=>{toggleOption(option),controlRef.current?.focus();}},jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"option-indicator",className:cn("inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-sm border border-border/70 text-[10px]",selected2&&"border-primary/40 bg-primary text-primary-foreground",classNames?.optionIndicator),children:selected2?"\u2713":null}),jsxRuntime.jsx("span",{"data-slot":"option-label",className:cn("min-w-0 flex-1 truncate",classNames?.optionLabel),children:option.label}))}):jsxRuntime.jsx("div",{...componentAttributes,dir:layerDirection,role:"option",tabIndex:-1,"aria-disabled":"true","aria-selected":"false","data-monkeys-component":"multi-select","data-slot":"empty","data-state":"empty",className:cn("px-2.5 py-2 text-sm text-muted-foreground",classNames?.empty),children:emptyLabel===void 0?messages.empty:emptyLabel})}):null]})});function BaseNotice({tone,icon,title,description,actions,children,appearance:appearance2,className,classNames,style,...noticeProps}){let theme=resolveBaseAppearance(appearance2),resolvedDescription=children??description;return jsxRuntime.jsxs("div",{...noticeProps,className:cn(theme.slots.noticeBase,getBaseNoticeToneClassName(theme,tone),classNames?.root,className),style:{...theme.styles.notice,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("div",{className:cn(theme.slots.noticeIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsxs("div",{className:"min-w-0 flex-1",children:[hasRenderableNode(title)?jsxRuntime.jsx("div",{className:cn(theme.slots.noticeTitle,classNames?.title),children:title}):null,hasRenderableNode(resolvedDescription)?jsxRuntime.jsx("div",{className:cn(theme.slots.noticeDescription,classNames?.description),children:resolvedDescription}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{className:cn(theme.slots.noticeActions,classNames?.actions),children:actions}):null]})]})}function BasePanel({as="article",title,description,media,header,footer,children,interactive,selected:selected2,disabled,appearance:appearance2,variant,density,state,className,classNames,style,...panelProps}){let theme=resolveBaseAppearance({...appearance2,variant,density,state}),Component=as,hasHeader=header!==void 0?hasRenderableNode(header):hasRenderableNode(title)||hasRenderableNode(description),hasMedia=media!=null,bodyIsStandalone=!hasHeader&&!hasMedia;return jsxRuntime.jsxs(Component,{...panelProps,"aria-disabled":disabled||void 0,"data-variant":theme.variant,"data-density":theme.density,"data-state":state??(disabled?"disabled":selected2?"selected":"idle"),"data-monkeys-component":"panel","data-slot":"root","data-interactive":interactive||void 0,"data-selected":selected2||void 0,"data-disabled":disabled||void 0,className:cn(theme.slots.panelRoot,interactive&&!disabled&&theme.slots.panelInteractive,selected2&&theme.slots.panelSelected,disabled&&theme.slots.panelDisabled,classNames?.root,className),style:{...theme.styles.panel,...style},children:[hasMedia?jsxRuntime.jsx("div",{"data-slot":"media",className:cn(theme.slots.panelMedia,classNames?.media),children:media}):null,hasHeader?jsxRuntime.jsx("div",{"data-slot":"header",className:cn(theme.slots.panelHeader,classNames?.header),style:theme.styles.panelHeader,children:header!==void 0?header:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[hasRenderableNode(title)?jsxRuntime.jsx("div",{"data-slot":"title",className:cn(theme.slots.panelTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{"data-slot":"description",className:cn(theme.slots.panelDescription,classNames?.description),children:description}):null]})}):null,children!=null?jsxRuntime.jsx("div",{"data-slot":"body",className:cn(theme.slots.panelBody,bodyIsStandalone&&theme.slots.panelBodyStandalone,classNames?.body),style:theme.styles.panelBody,children}):null,footer!=null?jsxRuntime.jsx("div",{"data-slot":"footer",className:cn(theme.slots.panelFooter,classNames?.footer),style:theme.styles.panelFooter,children:footer}):null]})}var paginationModes=new Set(["compact","pages"]);function clampPage(page,pageCount){return Math.min(Math.max(page,1),Math.max(pageCount,1))}function assertPositiveInteger(value,name){if(!Number.isSafeInteger(value)||value<1)throw new RangeError(`BasePagination ${name} must be a positive safe integer.`)}function assertNonNegativeInteger(value,name){if(!Number.isSafeInteger(value)||value<0)throw new RangeError(`BasePagination ${name} must be a non-negative safe integer.`)}function assertOptionalControlLabel(value,name){if(typeof value=="string"&&!value.trim())throw new TypeError(`BasePagination ${name} must be a non-empty string when provided.`)}function assertAccessibleName(ariaLabel,ariaLabelledBy){if(ariaLabel!==void 0&&(typeof ariaLabel!="string"||!ariaLabel.trim()))throw new TypeError("BasePagination aria-label must be a non-empty string when provided.");if(ariaLabelledBy!==void 0&&(typeof ariaLabelledBy!="string"||!ariaLabelledBy.trim()))throw new TypeError("BasePagination aria-labelledby must contain at least one valid ID token.");if(typeof ariaLabelledBy=="string"&&ariaLabelledBy.trim().split(/\s+/).some(token=>/[\u0000-\u001f\u007f]/u.test(token)))throw new TypeError("BasePagination aria-labelledby must contain only valid ID tokens.")}function assertLocaleString(value,name){if(typeof value!="string"||!value.trim())throw new TypeError(`BasePagination locale ${name} must resolve to a non-empty string.`);return value}function getControlContent(value,fallback2){return hasRenderableNode(value)?value:fallback2}function getControlAriaLabel(value,fallback2){return typeof value=="string"&&value.trim()?value:fallback2}function getPageItems(currentPage,pageCount,boundaryCount,siblingCount){let pages=new Set,addPage=page=>{page>=1&&page<=pageCount&&pages.add(page);};for(let offset2=0;offset2<boundaryCount;offset2+=1)addPage(1+offset2),addPage(pageCount-offset2);for(let offset2=-siblingCount;offset2<=siblingCount;offset2+=1)addPage(currentPage+offset2);let sortedPages=[...pages].sort((left,right)=>left-right),items=[];return sortedPages.forEach((page,index)=>{let previousPage=sortedPages[index-1];if(previousPage!==void 0){let gap=page-previousPage;gap===2&&items.push(previousPage+1),gap>2&&items.push("ellipsis");}items.push(page);}),items}var BasePagination=React8.forwardRef(function({page,defaultPage,pageSize=20,total=0,pageCount:pageCountProp,hasNext,hasPrevious,mode="compact",siblingCount=1,boundaryCount=1,label,firstLabel,previousLabel,nextLabel,lastLabel,appearance:appearance2,className,classNames,style,onPageChange,role="navigation","aria-label":ariaLabel,"aria-labelledby":ariaLabelledBy,...paginationProps},ref){let messages=useMonkeysLocaleMessages().pagination,resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),[uncontrolledPage,setUncontrolledPage]=React8.useState(()=>defaultPage??1);if(page!==void 0&&assertPositiveInteger(page,"page"),defaultPage!==void 0&&assertPositiveInteger(defaultPage,"defaultPage"),assertPositiveInteger(pageSize,"pageSize"),assertNonNegativeInteger(total,"total"),pageCountProp!==void 0&&assertPositiveInteger(pageCountProp,"pageCount"),assertNonNegativeInteger(siblingCount,"siblingCount"),assertNonNegativeInteger(boundaryCount,"boundaryCount"),!paginationModes.has(mode))throw new TypeError('BasePagination mode must be "compact" or "pages".');if(onPageChange!==void 0&&typeof onPageChange!="function")throw new TypeError("BasePagination onPageChange must be a function.");assertOptionalControlLabel(firstLabel,"firstLabel"),assertOptionalControlLabel(previousLabel,"previousLabel"),assertOptionalControlLabel(nextLabel,"nextLabel"),assertOptionalControlLabel(lastLabel,"lastLabel"),assertAccessibleName(ariaLabel,ariaLabelledBy);let navigationLabel=assertLocaleString(messages.navigation,"navigation"),firstMessage=assertLocaleString(messages.first,"first"),previousMessage=assertLocaleString(messages.previous,"previous"),nextMessage=assertLocaleString(messages.next,"next"),lastMessage=assertLocaleString(messages.last,"last"),pageCount=pageCountProp??Math.max(Math.ceil(total/pageSize),1),isControlled=page!==void 0,isUncontrolled=!isControlled&&defaultPage!==void 0,currentPage=clampPage(isControlled?page:isUncontrolled?uncontrolledPage:1,pageCount),start=total>0?(currentPage-1)*pageSize+1:0,end=Math.min(currentPage*pageSize,total),canPrevious=hasPrevious??currentPage>1,canNext=hasNext??currentPage<pageCount,pageItems=mode==="pages"?getPageItems(currentPage,pageCount,boundaryCount,siblingCount):[],requestPage=requestedPage=>{let nextPage=clampPage(requestedPage,pageCount);nextPage!==currentPage&&(isUncontrolled&&setUncontrolledPage(nextPage),onPageChange?.(nextPage));},renderControl=(slot,targetPage,enabled,content,accessibleLabel)=>jsxRuntime.jsx("button",{type:"button",disabled:!enabled,"aria-label":accessibleLabel,"data-slot":slot,className:cn(theme.slots.paginationButton,!enabled&&theme.slots.paginationButtonDisabled,classNames?.button),onClick:()=>requestPage(targetPage),children:content});return jsxRuntime.jsxs("div",{...componentAttributes,...paginationProps,ref,role,"aria-label":ariaLabel??(ariaLabelledBy===void 0?navigationLabel:void 0),"aria-labelledby":ariaLabelledBy,"data-monkeys-component":"pagination","data-slot":"root","data-mode":mode,"data-controlled":isControlled||void 0,"data-uncontrolled":isUncontrolled||void 0,className:cn(theme.slots.paginationRoot,classNames?.root,className),style:{...theme.styles.pagination,...style},children:[jsxRuntime.jsx("div",{"aria-live":"polite","data-slot":"info",className:cn(theme.slots.paginationInfo,classNames?.info),children:hasRenderableNode(label)?label:total>0?messages.range({start,end,total}):messages.emptyResults}),jsxRuntime.jsxs("div",{"data-slot":"controls",className:cn(theme.slots.paginationControls,classNames?.controls),children:[mode==="pages"?renderControl("first",1,canPrevious,getControlContent(firstLabel,firstMessage),getControlAriaLabel(firstLabel,firstMessage)):null,renderControl("previous",currentPage-1,canPrevious,getControlContent(previousLabel,previousMessage),getControlAriaLabel(previousLabel,previousMessage)),mode==="compact"?jsxRuntime.jsxs("span",{"aria-current":"page","aria-label":assertLocaleString(messages.currentPage({page:currentPage,pageCount}),"currentPage"),"data-slot":"page","data-page":currentPage,className:cn(theme.slots.paginationPage,classNames?.page),children:[currentPage," / ",pageCount]}):pageItems.map((item,index)=>{if(item==="ellipsis")return jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"ellipsis",className:cn(theme.slots.paginationEllipsis,classNames?.ellipsis),children:"\u2026"},`ellipsis-${index}`);let isCurrent=item===currentPage;return jsxRuntime.jsx("button",{type:"button","aria-current":isCurrent?"page":void 0,"aria-label":assertLocaleString(isCurrent?messages.currentPage({page:item,pageCount}):messages.page({page:item,pageCount}),isCurrent?"currentPage":"page"),"data-slot":"page","data-page":item,"data-current":isCurrent||void 0,className:cn(theme.slots.paginationButton,isCurrent&&theme.slots.paginationPage,classNames?.button,isCurrent&&classNames?.page),onClick:()=>requestPage(item),children:item},item)}),renderControl("next",currentPage+1,canNext,getControlContent(nextLabel,nextMessage),getControlAriaLabel(nextLabel,nextMessage)),mode==="pages"?renderControl("last",pageCount,canNext,getControlContent(lastLabel,lastMessage),getControlAriaLabel(lastLabel,lastMessage)):null]})]})});function LoadingIcon2(){return jsxRuntime.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"ml-1 inline-block h-3 w-3 animate-spin",fill:"none",children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9",className:"opacity-25",stroke:"currentColor",strokeWidth:"3"}),jsxRuntime.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M12 3a9 9 0 0 1 9 9h-3a6 6 0 0 0-6-6V3Z"})]})}function BaseListFooter({total=0,loadedStart,loadedEnd,selectedCount,page=1,pageCount,pageSize=20,pageSizeOptions,showTotal,showPageSize,paginationMode,hasNext,hasPrevious,loading=false,totalLabel,selectedLabel,pageSizeLabel,appearance:appearance2,className,classNames,onPageChange,onPageSizeChange,onSummaryClick,...props}){let config=useMonkeysListFooter(),messages=useMonkeysLocaleMessages().pagination,options2=[...new Set(pageSizeOptions??config.pageSizeOptions??[10,20,50,100])].filter(value=>Number.isSafeInteger(value)&&value>0),showTotalValue=showTotal??config.showTotal??true,showPageSizeValue=showPageSize??config.showPageSize??true,requestedMode=paginationMode??config.paginationMode??"auto",mode=requestedMode==="auto"?total>0?"pages":"compact":requestedMode,hasRange=loadedStart!==void 0&&loadedStart>0&&loadedEnd!==void 0&&loadedEnd>=loadedStart,summary=showTotalValue?totalLabel??(hasRange?messages.range({start:loadedStart,end:loadedEnd,total}):messages.range({start:total>0?(page-1)*pageSize+1:0,end:loadedEnd??0,total})):void 0,showPagination=!!onPageChange&&(hasNext!==void 0||hasPrevious!==void 0?!!(hasNext||hasPrevious||total>pageSize):total>pageSize),align=config.alignment==="end"?"justify-end":config.alignment==="start"?"justify-start":"justify-between";return jsxRuntime.jsx("div",{...props,className:cn("flex min-w-0 flex-wrap items-center gap-3 py-2 text-sm",align,classNames?.root,className),"data-monkeys-component":"list-footer","data-density":config.density,children:jsxRuntime.jsxs("div",{className:"monkeys-list-footer-groups contents",children:[jsxRuntime.jsx("div",{className:cn("min-w-0 text-muted-foreground",classNames?.summary),children:(()=>{let content=jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[selectedLabel??(selectedCount!==void 0?messages.selected({count:selectedCount}):null),selectedCount!==void 0&&summary?jsxRuntime.jsx("span",{className:"mx-2",children:"\xB7"}):null,summary,loading?jsxRuntime.jsx(LoadingIcon2,{}):null]});return onSummaryClick?jsxRuntime.jsx("button",{type:"button",className:"inline-flex items-center",onClick:onSummaryClick,children:content}):content})()}),showPagination?jsxRuntime.jsx(BasePagination,{page,pageCount,pageSize,total,mode,hasNext,hasPrevious,onPageChange,appearance:appearance2,className:classNames?.pagination,classNames:{info:"sr-only"}}):null,showPageSizeValue&&onPageSizeChange&&options2.length>0?jsxRuntime.jsxs("label",{className:cn("inline-flex items-center gap-2 whitespace-nowrap text-muted-foreground",classNames?.pageSize),children:[jsxRuntime.jsx("span",{className:"sr-only",children:pageSizeLabel??messages.pageSize}),jsxRuntime.jsx("select",{"aria-label":typeof pageSizeLabel=="string"?pageSizeLabel:messages.pageSize,value:String(pageSize),className:"h-8 rounded-md border border-border bg-background px-2 text-sm text-foreground",onChange:event=>onPageSizeChange(Number(event.currentTarget.value)),children:options2.map(size2=>jsxRuntime.jsx("option",{value:size2,children:size2},size2))})]}):null]})})}var typeaheadResetDelay2=500;function validateSelectProps({options:options2,value,defaultValue,invalid:invalid2,disabled,openForPreview,portal,required}){for(let[name,state]of [["invalid",invalid2],["disabled",disabled],["openForPreview",openForPreview],["portal",portal]])if(typeof state!="boolean")throw new TypeError(`BaseSelect ${name} must be a boolean.`);if(required!==void 0&&typeof required!="boolean")throw new TypeError("BaseSelect required must be a boolean.");if(options2!==void 0&&!Array.isArray(options2))throw new TypeError("BaseSelect options must be an array.");if(options2?.forEach((option,index)=>{if(!option||typeof option!="object")throw new TypeError(`BaseSelect option at index ${index} must be an object.`);if(typeof option.value!="string")throw new TypeError(`BaseSelect option value at index ${index} must be a string.`);if(option.disabled!==void 0&&typeof option.disabled!="boolean")throw new TypeError(`BaseSelect option disabled at index ${index} must be a boolean.`);if(option.textValue!==void 0&&typeof option.textValue!="string")throw new TypeError(`BaseSelect option textValue at index ${index} must be a string.`)}),options2?.length){if(value!==void 0&&typeof value!="string"&&typeof value!="number")throw new TypeError("BaseSelect value must be a string or number when options are used.");if(defaultValue!==void 0&&typeof defaultValue!="string"&&typeof defaultValue!="number")throw new TypeError("BaseSelect defaultValue must be a string or number when options are used.")}}function normalizeValue(value){return typeof value=="string"||typeof value=="number"?String(value):""}function findOption(options2,value){if(value!==void 0)return options2.find(option=>option.value===value)}function getInitialActiveIndex(options2,value){let selectedIndex=options2.findIndex(option=>option.value===value&&!option.disabled);return selectedIndex>=0?selectedIndex:options2.findIndex(option=>!option.disabled)}function getNextEnabledIndex2(options2,currentIndex,direction){if(!options2.length)return -1;let startIndex=currentIndex>=0?currentIndex:direction===1?-1:0;for(let offset2=1;offset2<=options2.length;offset2+=1){let nextIndex=(startIndex+offset2*direction+options2.length)%options2.length;if(!options2[nextIndex]?.disabled)return nextIndex}return -1}function getBoundaryEnabledIndex2(options2,boundary){if(boundary==="first")return options2.findIndex(option=>!option.disabled);for(let index=options2.length-1;index>=0;index-=1)if(!options2[index]?.disabled)return index;return -1}function getOptionText2(option){return option.textValue!==void 0?option.textValue:typeof option.label=="string"?option.label:option.value}function toDomId3(value){return value.replace(/[^a-zA-Z0-9_-]/g,"-")}var BaseSelect=React8.forwardRef(function({options:options2,placeholder,icon,invalid:invalid2=false,disabled=false,openForPreview=false,portal=false,appearance:appearance2,className,classNames,style,children,value,defaultValue,onBlur,onChange,onFocus,onInvalid,name,id:id9,required,"aria-invalid":nativeAriaInvalid,"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,"aria-required":nativeAriaRequired,...selectProps},ref){validateSelectProps({options:options2,value,defaultValue,invalid:invalid2,disabled,openForPreview,portal,required});let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),fieldControl=useBaseFieldControl(),resolvedInvalid=invalid2||fieldControl.invalid,generatedId=React8.useId(),selectId=id9??generatedId,triggerId=`${selectId}-button`,listboxId=`${selectId}-listbox`,rootRef=React8.useRef(null),triggerRef=React8.useRef(null),selectRef=React8.useRef(null),optionRefs=React8.useRef([]),composingRef=React8.useRef(false),typeaheadBufferRef=React8.useRef(""),typeaheadTimerRef=React8.useRef(null),optionList=options2??[],isCustomSelect=optionList.length>0,forceOpen=openForPreview,[uncontrolledOpen,setUncontrolledOpen]=React8.useState(false),[pointerOpened,setPointerOpened]=React8.useState(false),open=forceOpen||uncontrolledOpen,overlayPortal=useBaseOverlayPortal({disabled:forceOpen||!portal?true:void 0}),{refs,floatingStyles,isPositioned,placement}=react.useFloating({transform:false,open:isCustomSelect&&open&&overlayPortal.shouldPortal,placement:"bottom-start",strategy:"fixed",whileElementsMounted:overlayPortal.shouldPortal?react.autoUpdate:void 0,middleware:[react.offset(6),react.flip({padding:8}),react.shift({padding:8}),react.size({padding:8,apply({rects,availableHeight,elements}){Object.assign(elements.floating.style,{width:`${rects.reference.width}px`,maxHeight:`min(15rem, ${Math.max(0,availableHeight)}px)`});}})]}),setTriggerRef=React8.useCallback(node=>{triggerRef.current=node,refs.setReference(node);},[refs.setReference]),[uncontrolledValue,setUncontrolledValue]=React8.useState(()=>normalizeValue(defaultValue)),isControlled=value!==void 0,selectedValue=isControlled?normalizeValue(value):uncontrolledValue,selectedOption=findOption(optionList,selectedValue),[activeIndex,setActiveIndex]=React8.useState(()=>getInitialActiveIndex(optionList,selectedValue)),resolvedActiveIndex=activeIndex>=0&&!optionList[activeIndex]?.disabled?activeIndex:getInitialActiveIndex(optionList,selectedValue),optionIds=optionList.map((option,index)=>`${selectId}-option-${index}-${toDomId3(option.value)}`),visibleLabel=selectedOption?.label??placeholder,isPlaceholder=!selectedOption,layerDirection=selectProps.dir??componentAttributes.dir,rootState=disabled?"disabled":resolvedInvalid?"invalid":open?"open":"closed",setSelectRef=node=>{selectRef.current=node,typeof ref=="function"?ref(node):ref&&(ref.current=node);},handleNativeBlur=event=>{onBlur?.(event),fieldControl.notifyBlur(event.currentTarget.value);},handleNativeChange=event=>{onChange?.(event),fieldControl.notifyChange(event.currentTarget.value);},resetActiveIndex=()=>{setActiveIndex(getInitialActiveIndex(optionList,selectedValue));},cancelAndClose=()=>{resetActiveIndex(),forceOpen||setUncontrolledOpen(false);},openMenu=(nextActiveIndex,fromPointer=false)=>{setPointerOpened(fromPointer),setActiveIndex(nextActiveIndex??getInitialActiveIndex(optionList,selectedValue)),forceOpen||setUncontrolledOpen(true);},notifyChange=nextValue=>{let selectElement=selectRef.current;if(!selectElement)return;let ownerWindow=selectElement.ownerDocument.defaultView;if(!ownerWindow)throw new Error("BaseSelect cannot dispatch change without an owning window.");let valueSetter=Object.getOwnPropertyDescriptor(ownerWindow.HTMLSelectElement.prototype,"value")?.set;if(!valueSetter)throw new Error("BaseSelect could not resolve the native select value setter.");valueSetter.call(selectElement,nextValue),selectElement.dispatchEvent(new ownerWindow.Event("change",{bubbles:true}));},commitIndex=nextIndex=>{let option=optionList[nextIndex];!option||option.disabled||disabled||(setActiveIndex(nextIndex),option.value!==selectedValue&&(isControlled||setUncontrolledValue(option.value),notifyChange(option.value)),forceOpen||setUncontrolledOpen(false));},moveActive=nextIndex=>{nextIndex<0||optionList[nextIndex]?.disabled||(setActiveIndex(nextIndex),open||openMenu(nextIndex));},handleTypeahead=(event,character)=>{let ownerWindow=event.currentTarget.ownerDocument.defaultView;if(!ownerWindow)return;let nextBuffer=`${typeaheadBufferRef.current}${character}`.toLocaleLowerCase();typeaheadBufferRef.current=nextBuffer,typeaheadTimerRef.current&&typeaheadTimerRef.current.ownerWindow.clearTimeout(typeaheadTimerRef.current.timerId),typeaheadTimerRef.current={ownerWindow,timerId:ownerWindow.setTimeout(()=>{typeaheadBufferRef.current="",typeaheadTimerRef.current=null;},typeaheadResetDelay2)};let query=Array.from(nextBuffer).every(bufferCharacter=>bufferCharacter===nextBuffer[0])?character.toLocaleLowerCase():nextBuffer,startIndex=open?resolvedActiveIndex:optionList.findIndex(option=>option.value===selectedValue&&!option.disabled);for(let offset2=1;offset2<=optionList.length;offset2+=1){let index=(startIndex+offset2+optionList.length)%optionList.length,option=optionList[index];if(!option?.disabled&&getOptionText2(option).trim().toLocaleLowerCase().startsWith(query)){event.preventDefault(),moveActive(index);return}}},handleKeyDown=event=>{if(!(disabled||composingRef.current||event.nativeEvent.isComposing)){if(event.key==="ArrowDown"||event.key==="ArrowUp"){event.preventDefault();let selectedIndex=optionList.findIndex(option=>option.value===selectedValue&&!option.disabled);moveActive(getNextEnabledIndex2(optionList,open?resolvedActiveIndex:selectedIndex,event.key==="ArrowDown"?1:-1));return}if(event.key==="Home"||event.key==="End"){event.preventDefault(),moveActive(getBoundaryEnabledIndex2(optionList,event.key==="Home"?"first":"last"));return}if(event.key==="Enter"||event.key===" "){event.preventDefault(),open?commitIndex(resolvedActiveIndex):openMenu();return}if(event.key==="Escape"&&open){event.preventDefault(),cancelAndClose();return}if(event.key==="Tab"&&open){commitIndex(resolvedActiveIndex);return}event.key.length===1&&!event.ctrlKey&&!event.metaKey&&!event.altKey&&!/\s/.test(event.key)&&handleTypeahead(event,event.key);}},handleCustomFocus=event=>{onFocus?.(event),event.defaultPrevented||triggerRef.current?.focus();},handleCustomInvalid=event=>{onInvalid?.(event),event.preventDefault(),triggerRef.current?.focus();};return React8.useEffect(()=>{if(!isCustomSelect||!open||forceOpen)return;let ownerDocument=rootRef.current?.ownerDocument;if(!ownerDocument)return;let handlePointerDown=event=>{!rootRef.current?.contains(event.target)&&!refs.floating.current?.contains(event.target)&&cancelAndClose();};return ownerDocument.addEventListener("pointerdown",handlePointerDown),()=>{ownerDocument.removeEventListener("pointerdown",handlePointerDown);}},[forceOpen,isCustomSelect,open,optionList,selectedValue]),React8.useEffect(()=>{!isCustomSelect||!open||resolvedActiveIndex<0||optionRefs.current[resolvedActiveIndex]?.scrollIntoView?.({block:"nearest"});},[isCustomSelect,open,resolvedActiveIndex]),React8.useEffect(()=>{if(!isCustomSelect||isControlled)return;let selectElement=selectRef.current,form=selectElement?.form,ownerWindow=selectElement?.ownerDocument.defaultView;if(!form||!ownerWindow)return;let handleReset=()=>{ownerWindow.setTimeout(()=>{let resetValue=normalizeValue(defaultValue);setUncontrolledValue(resetValue),setActiveIndex(getInitialActiveIndex(optionList,resetValue)),forceOpen||setUncontrolledOpen(false);},0);};return form.addEventListener("reset",handleReset),()=>form.removeEventListener("reset",handleReset)},[defaultValue,forceOpen,isControlled,isCustomSelect,optionList]),React8.useEffect(()=>()=>{typeaheadTimerRef.current&&typeaheadTimerRef.current.ownerWindow.clearTimeout(typeaheadTimerRef.current.timerId);},[]),isCustomSelect?jsxRuntime.jsxs("div",{...componentAttributes,ref:rootRef,dir:layerDirection,"data-monkeys-component":"select","data-slot":"root","data-state":rootState,"data-native":"false",className:cn(theme.slots.controlWrapper,"overflow-visible",open&&"z-50",resolvedInvalid&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,classNames?.root,className),style:{...theme.styles.control,...resolvedInvalid?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("span",{className:cn(theme.slots.controlIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsx("button",{...componentAttributes,ref:setTriggerRef,type:"button",id:triggerId,role:"combobox",disabled,dir:layerDirection,"aria-haspopup":"listbox","aria-expanded":open,"aria-controls":listboxId,"aria-activedescendant":open&&resolvedActiveIndex>=0?optionIds[resolvedActiveIndex]:void 0,"aria-autocomplete":"none","aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,"aria-required":nativeAriaRequired??(required||void 0),"data-monkeys-component":"select","data-slot":"trigger","data-state":rootState,className:cn(theme.slots.controlBase,theme.slots.controlSelect,"flex items-center text-left",classNames?.control),onClick:event=>{open?cancelAndClose():openMenu(void 0,event.detail>0);},onBlur:event=>{!rootRef.current?.contains(event.relatedTarget)&&!refs.floating.current?.contains(event.relatedTarget)&&(cancelAndClose(),fieldControl.notifyBlur(selectedValue));},onCompositionStart:()=>{composingRef.current=true;},onCompositionEnd:()=>{composingRef.current=false;},onKeyDown:handleKeyDown,children:jsxRuntime.jsx("span",{className:cn("min-w-0 flex-1 truncate",isPlaceholder&&theme.slots.selectPlaceholder,isPlaceholder&&classNames?.placeholder),children:visibleLabel})}),jsxRuntime.jsx("span",{className:cn(theme.slots.selectChevron,open&&"rotate-[225deg]")}),jsxRuntime.jsxs("select",{...componentAttributes,...selectProps,ref:setSelectRef,id:id9,name,value:selectedValue,required,disabled,dir:layerDirection,"aria-hidden":"true",tabIndex:-1,"data-monkeys-component":"select","data-slot":"native","data-state":rootState,"data-native":"false",className:theme.slots.selectNative,onBlur,onFocus:handleCustomFocus,onInvalid:handleCustomInvalid,onChange:handleNativeChange,children:[hasRenderableNode(placeholder)?jsxRuntime.jsx("option",{value:"",disabled:true,children:placeholder}):null,optionList.map(option=>jsxRuntime.jsx("option",{value:option.value,disabled:option.disabled,children:getOptionText2(option)},option.value))]}),open?renderBaseOverlayPortalContent(jsxRuntime.jsx("div",{...componentAttributes,ref:overlayPortal.shouldPortal?refs.setFloating:void 0,id:listboxId,role:"listbox",dir:layerDirection,"aria-labelledby":triggerId,"data-monkeys-component":"select","data-slot":"menu","data-portal":overlayPortal.shouldPortal?"portaled":"inline","data-state":"open","data-side":overlayPortal.shouldPortal?placement.split("-")[0]:"bottom",className:cn(theme.slots.selectMenu,overlayPortal.shouldPortal&&placement.startsWith("top")?"origin-bottom":"origin-top",pointerOpened&&!forceOpen&&(!overlayPortal.shouldPortal||isPositioned)&&"motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-150 motion-safe:ease-out",classNames?.menu),style:{...theme.styles.selectMenu,...overlayPortal.shouldPortal?{...floatingStyles,right:"auto",visibility:isPositioned?"visible":"hidden"}:void 0},children:optionList.map((option,index)=>{let selected2=option.value===selectedValue,active=index===resolvedActiveIndex,optionState=option.disabled?"disabled":active?"active":selected2?"selected":"idle";return React8.createElement("button",{...componentAttributes,ref:node=>{optionRefs.current[index]=node;},key:option.value,id:optionIds[index],type:"button",role:"option",tabIndex:-1,disabled:option.disabled,dir:layerDirection,"aria-selected":selected2,"data-monkeys-component":"select","data-slot":"option","data-state":optionState,"data-active":active||void 0,"data-selected":selected2||void 0,"data-disabled":option.disabled||void 0,className:cn(theme.slots.selectOption,active&&theme.slots.selectOptionActive,selected2&&theme.slots.selectOptionSelected,option.disabled&&theme.slots.selectOptionDisabled,classNames?.option),style:{...theme.styles.selectOption,...active?theme.styles.selectOptionActive:void 0,...selected2?theme.styles.selectOptionSelected:void 0},onMouseDown:event=>event.preventDefault(),onClick:()=>commitIndex(index)},jsxRuntime.jsx("span",{className:"min-w-0 flex-1 truncate",children:option.label}))})}),overlayPortal):null]}):jsxRuntime.jsxs("div",{...componentAttributes,"data-monkeys-component":"select","data-slot":"root","data-state":rootState,"data-native":"true",className:cn(theme.slots.controlWrapper,resolvedInvalid&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,classNames?.root,className),style:{...theme.styles.control,...resolvedInvalid?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("span",{className:cn(theme.slots.controlIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsxs("select",{...componentAttributes,...selectProps,id:id9,ref,name,value,defaultValue,required,disabled,"aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,"aria-required":nativeAriaRequired,"data-monkeys-component":"select","data-slot":"native","data-state":rootState,"data-native":"true",onBlur:handleNativeBlur,onFocus,onInvalid,onChange:handleNativeChange,className:cn(theme.slots.controlBase,theme.slots.controlSelect,classNames?.control),children:[hasRenderableNode(placeholder)?jsxRuntime.jsx("option",{value:"",disabled:true,children:placeholder}):null,children]}),jsxRuntime.jsx("span",{className:theme.slots.selectChevron})]})});function BaseSectionHeader({eyebrow,title,description,actions,children,appearance:appearance2,className,classNames,style,...headerProps}){let theme=resolveBaseAppearance(appearance2),resolvedDescription=children??description;return jsxRuntime.jsxs("div",{...headerProps,className:cn(theme.slots.sectionHeaderRoot,classNames?.root,className),style:{...theme.styles.sectionHeader,...style},children:[jsxRuntime.jsxs("div",{className:cn(theme.slots.sectionHeaderContent,classNames?.content),children:[hasRenderableNode(eyebrow)?jsxRuntime.jsx("div",{className:cn(theme.slots.sectionHeaderEyebrow,classNames?.eyebrow),children:eyebrow}):null,hasRenderableNode(title)?jsxRuntime.jsx("div",{className:cn(theme.slots.sectionHeaderTitle,classNames?.title),children:title}):null,hasRenderableNode(resolvedDescription)?jsxRuntime.jsx("div",{className:cn(theme.slots.sectionHeaderDescription,classNames?.description),children:resolvedDescription}):null]}),hasRenderableNode(actions)?jsxRuntime.jsx("div",{className:cn(theme.slots.sectionHeaderActions,classNames?.actions),children:actions}):null]})}function getInitialSegmentValue(options2,defaultValue){return defaultValue&&options2?.some(option=>option.value===defaultValue)&&!options2.find(option=>option.value===defaultValue)?.disabled?defaultValue:options2?.find(option=>!option.disabled)?.value??options2?.[0]?.value}function BaseSegmentedControl({options:options2=[],value,defaultValue,appearance:appearance2,className,classNames,style,onValueChange,...controlProps}){let theme=resolveBaseAppearance(appearance2),[uncontrolledValue,setUncontrolledValue]=React8.useState(()=>getInitialSegmentValue(options2,defaultValue)),isControlled=value!==void 0,selectedValue=isControlled?value:uncontrolledValue,handleSelect=(nextValue,disabled)=>{disabled||(isControlled||setUncontrolledValue(nextValue),onValueChange?.(nextValue));},handleKeyDown=event=>{if(!["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(event.key))return;let enabledOptions=options2.filter(option=>!option.disabled);if(enabledOptions.length===0)return;event.preventDefault();let currentIndex=Math.max(0,enabledOptions.findIndex(option=>option.value===selectedValue)),nextIndex=event.key==="Home"?0:event.key==="End"?enabledOptions.length-1:event.key==="ArrowLeft"||event.key==="ArrowUp"?(currentIndex-1+enabledOptions.length)%enabledOptions.length:(currentIndex+1)%enabledOptions.length,nextOption=enabledOptions[nextIndex],buttons=event.currentTarget.querySelectorAll('[role="radio"]'),target=Array.from(buttons).find(button=>button.dataset.value===nextOption.value);handleSelect(nextOption.value),target?.focus();};return jsxRuntime.jsx("div",{...controlProps,role:"radiogroup","aria-orientation":"horizontal",className:cn(theme.slots.segmentedRoot,classNames?.root,className),style:{...theme.styles.segmentedRoot,...style},onKeyDown:handleKeyDown,children:options2.map(option=>{let selected2=option.value===selectedValue;return jsxRuntime.jsxs("button",{type:"button",role:"radio","data-value":option.value,"aria-checked":selected2,tabIndex:selected2?0:-1,disabled:option.disabled,className:cn(theme.slots.segmentedItem,selected2&&theme.slots.segmentedItemActive,option.disabled&&theme.slots.segmentedItemDisabled,classNames?.item),style:theme.styles.segmentedItem,onClick:()=>handleSelect(option.value,option.disabled),children:[hasRenderableNode(option.icon)?jsxRuntime.jsx("span",{className:cn("inline-flex h-4 w-4 shrink-0",classNames?.icon),children:option.icon}):null,jsxRuntime.jsx("span",{className:cn("min-w-0 truncate",classNames?.label),children:option.label})]},option.value)})})}var BaseStack=React8.forwardRef(function({children,gap,align="stretch",justify="start",appearance:appearance2,className,classNames,style,...stackProps},ref){let bentoDepth=useBentoDepth(),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),resolvedGap=gap===void 0?void 0:resolveBaseLayoutLength("BaseStack","gap",gap);return jsxRuntime.jsx("div",{...componentAttributes,...stackProps,ref,"data-monkeys-component":"stack","data-slot":"root","data-align":align,"data-justify":justify,className:cn(theme.slots.stackRoot,bentoDepth>0&&gap===void 0&&"gap-[var(--monkeys-bento-gap)]",resolvedAppearance?.slots?.stackRoot,classNames?.root,className),style:{...theme.styles.stack,gap:resolvedGap??theme.styles.stack?.gap,alignItems:resolveBaseLayoutAlign("BaseStack",align),justifyContent:resolveBaseLayoutJustify("BaseStack",justify),...style},children})});var trackSizeClassNames={sm:"h-5 w-9",md:"h-6 w-10",lg:"h-7 w-12"},thumbSizeClassNames={sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"},checkedThumbClassNames={sm:"translate-x-[18px]",md:"translate-x-5",lg:"translate-x-6"},densitySize={compact:"sm",default:"md",comfortable:"lg"},BaseSwitch=React8.forwardRef(function({label,description,disabled=false,controlSize,appearance:appearance2,className,classNames,style,checked,defaultChecked,onChange,...switchProps},ref){if(typeof disabled!="boolean")throw new TypeError("BaseSwitch disabled must be a boolean.");if(controlSize!==void 0&&controlSize!=="sm"&&controlSize!=="md"&&controlSize!=="lg")throw new TypeError('BaseSwitch controlSize must be "sm", "md", or "lg".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),hasLabel=hasRenderableNode(label),hasDescription=hasNonEmptyRenderableNode(description),[uncontrolledChecked,setUncontrolledChecked]=React8.useState(defaultChecked??false),isControlled=checked!==void 0,resolvedChecked=isControlled?checked:uncontrolledChecked,state=resolvedChecked?"checked":"unchecked",resolvedVisualSize=controlSize??densitySize[theme.density],handleChange=event=>{disabled||(isControlled||setUncontrolledChecked(event.currentTarget.checked),onChange?.(event));};return jsxRuntime.jsxs("label",{...componentAttributes,"data-monkeys-component":"switch","data-slot":"root","data-state":state,"data-size":controlSize,"data-disabled":disabled||void 0,className:cn(theme.slots.switchRoot,!hasDescription&&"items-center",disabled&&theme.slots.switchDisabled,classNames?.root,className),style:{...theme.styles.switchRoot,...style},children:[jsxRuntime.jsxs("span",{"data-slot":"track","data-state":state,"data-size":controlSize,className:cn(theme.slots.switchTrack,!hasDescription&&"mt-0",resolvedChecked&&theme.slots.switchChecked,controlSize&&trackSizeClassNames[controlSize],classNames?.track),style:theme.styles.switchTrack,children:[jsxRuntime.jsx("input",{...switchProps,ref,type:"checkbox",role:"switch",disabled,checked,defaultChecked,"aria-checked":resolvedChecked,"data-slot":"input","data-state":state,"data-size":controlSize,"data-disabled":disabled||void 0,onChange:handleChange,className:cn(theme.slots.switchInput,classNames?.input)}),jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"thumb","data-state":state,"data-size":controlSize,className:cn(theme.slots.switchThumb,controlSize&&thumbSizeClassNames[controlSize],resolvedChecked&&checkedThumbClassNames[resolvedVisualSize],classNames?.thumb),style:theme.styles.switchThumb})]}),hasLabel||hasDescription?jsxRuntime.jsxs("span",{"data-slot":"content",className:cn(theme.slots.switchContent,classNames?.content),children:[hasLabel?jsxRuntime.jsx("span",{"data-slot":"label",className:cn(theme.slots.switchLabel,classNames?.label),children:label}):null,hasDescription?jsxRuntime.jsx("span",{"data-slot":"description",className:cn(theme.slots.switchDescription,classNames?.description),children:description}):null]}):null]})});function SystemStateIcon({kind}){return jsxRuntime.jsx("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"h-7 w-7",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.8",children:{error:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9"}),jsxRuntime.jsx("path",{d:"M12 7v6"}),jsxRuntime.jsx("path",{d:"M12 17h.01"})]}),permission:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("rect",{x:"5",y:"10",width:"14",height:"10",rx:"2"}),jsxRuntime.jsx("path",{d:"M8 10V7a4 4 0 0 1 8 0v3"})]}),offline:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("path",{d:"M5 12.5a10 10 0 0 1 14 0"}),jsxRuntime.jsx("path",{d:"M8.5 16a5 5 0 0 1 7 0"}),jsxRuntime.jsx("path",{d:"M12 20h.01"}),jsxRuntime.jsx("path",{d:"m4 4 16 16"})]}),fallback:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9"}),jsxRuntime.jsx("path",{d:"M9.5 9a2.5 2.5 0 1 1 4.2 1.8c-1 .8-1.7 1.2-1.7 2.7"}),jsxRuntime.jsx("path",{d:"M12 17h.01"})]})}[kind]})}var BaseSystemState=React8.forwardRef(function({kind="fallback",icon,title,description,actions,appearance:appearance2,className,classNames,style,role,"aria-live":ariaLive,...stateProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),statusStates=useMonkeysStatusStates(),densityClassName=statusStates.density==="compact"?"min-h-0 px-3 py-3":statusStates.density==="comfortable"?"min-h-56 px-8 py-12":void 0,theme=resolveBaseAppearance(resolvedAppearance),resolvedIcon=icon===void 0?jsxRuntime.jsx(SystemStateIcon,{kind}):icon,resolvedRole=role??(kind==="error"||kind==="offline"?"alert":"status");return jsxRuntime.jsxs("div",{...componentAttributes,...stateProps,ref,role:resolvedRole,"aria-live":ariaLive??(resolvedRole==="alert"?"assertive":"polite"),"data-monkeys-component":"system-state","data-slot":"root","data-state":kind,"data-density":statusStates.density,className:cn(theme.slots.stateRoot,densityClassName,classNames?.root,className),style:{...theme.styles.stateRoot,...style},children:[hasRenderableNode(resolvedIcon)?jsxRuntime.jsx("div",{"data-slot":"icon","data-state":kind,className:cn(theme.slots.stateIcon,classNames?.icon),style:theme.styles.stateIcon,children:resolvedIcon}):null,hasRenderableNode(title)?jsxRuntime.jsx("div",{"data-slot":"title","data-state":kind,className:cn(theme.slots.stateTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{"data-slot":"description","data-state":kind,className:cn(theme.slots.stateDescription,classNames?.description),children:description}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{"data-slot":"actions","data-state":kind,className:cn(theme.slots.stateActions,classNames?.actions),children:actions}):null]})});var DATA_TRANSFER_COLUMN_TYPE="application/x-monkeys-base-table-column",COLUMN_RESIZE_KEYBOARD_STEP=8;function assignRef3(ref,value){typeof ref=="function"?ref(value):ref&&(ref.current=value);}function assertBoolean2(name,value){if(value!==void 0&&typeof value!="boolean")throw new Error(`BaseTable ${name} must be a boolean.`)}function assertEnum(name,value,values){if(value!==void 0&&!values.includes(value))throw new Error(`BaseTable ${name} must be one of ${values.map(item=>`"${item}"`).join(", ")}.`)}function assertOptionalLabel(name,value){if(value!==void 0&&(typeof value!="string"||value.trim().length===0))throw new Error(`BaseTable ${name} must be a non-empty string when provided.`)}function assertOptionalFunction(name,value){if(value!==void 0&&typeof value!="function")throw new Error(`BaseTable ${name} must be a function when provided.`)}function validateCssSizeValue(value,name,options2={}){if(value!==void 0){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new Error(`BaseTable ${name} must be a finite non-negative number${options2.stringAllowed?" or a non-empty CSS size string":""}.`);return}if(!(options2.stringAllowed&&typeof value=="string"&&value.trim().length>0))throw new Error(`BaseTable ${name} must be ${options2.stringAllowed?"a finite non-negative number or a non-empty CSS size string":"a finite non-negative number"}.`)}}function validateColumns(columns){if(columns===void 0)return;if(!Array.isArray(columns))throw new Error("BaseTable columns must be an array when provided.");let ids2=new Set;return columns.forEach((column,index)=>{if(!column||typeof column!="object"||Array.isArray(column))throw new Error(`BaseTable column at index ${index} must be an object.`);let definition=column;if(typeof definition.id!="string"||definition.id.trim().length===0)throw new Error(`BaseTable column id at index ${index} must be a non-empty string.`);let columnId=definition.id.trim();if(definition.id!==columnId)throw new Error(`BaseTable column id "${definition.id}" must not contain surrounding whitespace.`);if(ids2.has(columnId))throw new Error(`BaseTable columns contain duplicate id "${columnId}".`);if(ids2.add(columnId),validateCssSizeValue(definition.width,`column "${columnId}" width`,{stringAllowed:true}),validateCssSizeValue(definition.minWidth,`column "${columnId}" minWidth`,{stringAllowed:true}),validateCssSizeValue(definition.maxWidth,`column "${columnId}" maxWidth`,{stringAllowed:true}),typeof definition.minWidth=="number"&&typeof definition.maxWidth=="number"&&definition.minWidth>definition.maxWidth)throw new Error(`BaseTable column "${columnId}" minWidth cannot be greater than maxWidth.`)}),ids2}function validateColumnOrder(columnOrder,knownColumnIds){if(columnOrder===void 0)return;if(!Array.isArray(columnOrder))throw new Error("BaseTable columnOrder must be an array when provided.");let ids2=new Set;if(columnOrder.forEach((value,index)=>{if(typeof value!="string"||value.trim().length===0)throw new Error(`BaseTable columnOrder entry at index ${index} must be a non-empty string.`);let columnId=value.trim();if(value!==columnId)throw new Error(`BaseTable columnOrder entry "${value}" must not contain surrounding whitespace.`);if(ids2.has(columnId))throw new Error(`BaseTable columnOrder contains duplicate id "${columnId}".`);if(knownColumnIds&&!knownColumnIds.has(columnId))throw new Error(`BaseTable columnOrder contains unknown column id "${columnId}".`);ids2.add(columnId);}),knownColumnIds&&ids2.size!==knownColumnIds.size){let missing=[...knownColumnIds].filter(columnId=>!ids2.has(columnId));throw new Error(`BaseTable columnOrder must contain every configured column id; missing ${missing.map(columnId=>`"${columnId}"`).join(", ")}.`)}}function validateColumnSizes(columnSizes,knownColumnIds){if(columnSizes!==void 0){if(!columnSizes||typeof columnSizes!="object"||Array.isArray(columnSizes)||![Object.prototype,null].includes(Object.getPrototypeOf(columnSizes)))throw new Error("BaseTable columnSizes must be a plain record when provided.");Object.entries(columnSizes).forEach(([columnId,value])=>{let normalizedColumnId=columnId.trim();if(normalizedColumnId.length===0)throw new Error("BaseTable columnSizes keys must be non-empty strings.");if(columnId!==normalizedColumnId)throw new Error(`BaseTable columnSizes key "${columnId}" must not contain surrounding whitespace.`);if(knownColumnIds&&!knownColumnIds.has(normalizedColumnId))throw new Error(`BaseTable columnSizes contains unknown column id "${columnId}".`);validateCssSizeValue(value,`columnSizes["${columnId}"]`);});}}function isRtl2(element){let ownerWindow=element.ownerDocument.defaultView;return ownerWindow?ownerWindow.getComputedStyle(element).direction==="rtl":element.closest('[dir="rtl"]')!==null}function setPointerCaptureIfAvailable2(target,pointerId){if(target.setPointerCapture)try{target.setPointerCapture(pointerId);}catch(error){let OwnerDOMException=target.ownerDocument.defaultView?.DOMException;if(OwnerDOMException&&error instanceof OwnerDOMException&&error.name==="NotFoundError")return;throw error}}var BaseTableContext=React8.createContext(null);function useBaseTableContext(appearance2){let context=React8.useContext(BaseTableContext),providerAppearance=useMonkeysBaseAppearance(appearance2);if(context){let resolvedAppearance=appearance2===void 0?context.appearance:providerAppearance;return {...context,theme:appearance2===void 0?context.theme:resolveBaseAppearance(resolvedAppearance),appearance:resolvedAppearance}}let theme=resolveBaseAppearance(providerAppearance);return {appearance:providerAppearance,theme,layout:"native",setDraggingColumnId:()=>{}}}function hasSplitScrollTable(children){let found=false;return React8.Children.forEach(children,child=>{if(found||!React8.isValidElement(child))return;let childProps=child.props;if(childProps.layout==="split-scroll"){found=true;return}childProps.children&&(found=hasSplitScrollTable(childProps.children));}),found}function toCssSize2(value){if(value!==void 0)return typeof value=="number"?`${value}px`:value}function validateTableCssSize(value,property){if(value!==void 0){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new Error(`BaseTable ${property} must be a finite non-negative number when numeric.`);return `${value}px`}if(value.trim().length===0)throw new Error(`BaseTable ${property} must not be an empty CSS size.`);return value}}function validateCssSize(value,columnId,property){if(value!==void 0){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new Error(`BaseTable split-scroll column "${columnId}" has invalid ${property}. Expected a finite non-negative number.`);return `${value}px`}if(value.trim().length===0)throw new Error(`BaseTable split-scroll column "${columnId}" has an empty ${property} value.`);return value}}function validateNumericSize(value,columnId,property){if(!(value===void 0||typeof value!="number")){if(!Number.isFinite(value)||value<0)throw new Error(`BaseTable split-scroll column "${columnId}" has invalid ${property}. Expected a finite non-negative number.`);return value}}function buildSplitColumnTemplate(columns,columnSizes){if(!columns?.length)throw new Error('BaseTable layout="split-scroll" requires at least one column definition.');let seenColumnIds=new Set;return `${columns.map((column,index)=>{let columnId=column.id.trim();if(!columnId)throw new Error(`BaseTable split-scroll column at index ${index} requires a non-empty id.`);if(seenColumnIds.has(columnId))throw new Error(`BaseTable layout="split-scroll" received duplicate column id "${columnId}".`);seenColumnIds.add(columnId);let columnSize=columnSizes?.[columnId],numericMinWidth=validateNumericSize(column.minWidth,columnId,"minWidth"),numericMaxWidth=validateNumericSize(column.maxWidth,columnId,"maxWidth");if(numericMinWidth!==void 0&&numericMaxWidth!==void 0&&numericMaxWidth<numericMinWidth)throw new Error(`BaseTable split-scroll column "${columnId}" has maxWidth smaller than minWidth.`);let minWidth=validateCssSize(column.minWidth,columnId,"minWidth"),maxWidth=validateCssSize(column.maxWidth,columnId,"maxWidth"),baseWidth=columnSize!==void 0?clampWidth(columnSize,numericMinWidth,numericMaxWidth):column.width,width=validateCssSize(baseWidth,columnId,"width");return width||`minmax(${minWidth??"0px"}, ${maxWidth??"1fr"})`}).join(" ")} var(--base-table-split-scrollbar-gutter)`}function clampWidth(value,minWidth,maxWidth){let min=minWidth??48,max=maxWidth??Number.POSITIVE_INFINITY;return Math.min(Math.max(value,min),max)}function getNextColumnOrder(order,columnId,targetColumnId){if(!order||columnId===targetColumnId)return;let fromIndex=order.indexOf(columnId),toIndex=order.indexOf(targetColumnId);if(fromIndex<0||toIndex<0)return;let next=[...order],[moved]=next.splice(fromIndex,1);return next.splice(toIndex,0,moved),next}function sortAriaValue(direction){switch(direction){case "asc":return "ascending";case "desc":return "descending";default:return}}function getSplitHeadJustifyContent(align){switch(align){case "center":return "center";case "right":return "flex-end";default:return "flex-start"}}function getSplitHeadAlignItems(verticalAlign){switch(verticalAlign){case "top":return "flex-start";case "bottom":return "flex-end";default:return "center"}}function SortIndicator({direction,className}){return jsxRuntime.jsx("span",{"aria-hidden":"true",className:cn(className,direction==="desc"&&"rotate-180",(!direction||direction==="none")&&"opacity-45"),children:"\u25B2"})}function DragHandleIcon(){return jsxRuntime.jsxs("span",{"aria-hidden":"true",className:"grid gap-0.5",children:[jsxRuntime.jsx("span",{className:"h-0.5 w-0.5 rounded-full bg-current"}),jsxRuntime.jsx("span",{className:"h-0.5 w-0.5 rounded-full bg-current"}),jsxRuntime.jsx("span",{className:"h-0.5 w-0.5 rounded-full bg-current"})]})}var BaseTableContainer=React8.forwardRef(function({appearance:appearance2,attachedFooter=false,children,className,classNames,style,...containerProps},ref){assertBoolean2("attachedFooter",attachedFooter);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),splitScrollContainerStyle=hasSplitScrollTable(children)?{overflow:"hidden",scrollbarGutter:"auto"}:void 0;return jsxRuntime.jsx("div",{...componentAttributes,...containerProps,ref,"data-monkeys-component":"table-container","data-slot":"container","data-base-table-container":"","data-attached-footer":attachedFooter?"":void 0,className:cn(theme.slots.tableContainer,attachedFooter&&theme.slots.tableContainerFooterAttached,classNames?.root,className),style:{...theme.styles.tableContainer,...attachedFooter?theme.styles.tableContainerFooterAttached:void 0,...splitScrollContainerStyle,...style},children})}),BaseTable=React8.forwardRef(function({appearance:appearance2,className,classNames,style,layout="native",columns,bodyMaxHeight,bodyClassName,columnOrder,columnSizes,columnDragEnabled=false,columnResizeEnabled=false,onColumnOrderChange,onColumnSizeChange,...tableProps},ref){assertEnum("layout",layout,["native","split-scroll"]),assertBoolean2("columnDragEnabled",columnDragEnabled),assertBoolean2("columnResizeEnabled",columnResizeEnabled),assertOptionalFunction("onColumnOrderChange",onColumnOrderChange),assertOptionalFunction("onColumnSizeChange",onColumnSizeChange),validateCssSizeValue(bodyMaxHeight,"bodyMaxHeight",{stringAllowed:true});let knownColumnIds=validateColumns(columns);validateColumnOrder(columnOrder,knownColumnIds),validateColumnSizes(columnSizes,knownColumnIds);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),[draggingColumnId,setDraggingColumnId]=React8.useState(),splitHeaderRef=React8.useRef(null),splitFooterRef=React8.useRef(null),isSplitScroll=layout==="split-scroll",columnTemplate=isSplitScroll?buildSplitColumnTemplate(columns,columnSizes):void 0,contextValue={appearance:resolvedAppearance,theme,layout,columnTemplate,bodyMaxHeight,bodyClassName,splitHeaderRef,splitFooterRef,columnOrder,columnSizes,columnDragEnabled,columnResizeEnabled,onColumnOrderChange,onColumnSizeChange,draggingColumnId,setDraggingColumnId};return jsxRuntime.jsx(BaseTableContext.Provider,{value:contextValue,children:jsxRuntime.jsx("table",{...componentAttributes,...tableProps,ref,"data-monkeys-component":"table","data-slot":"root","data-base-table-layout":layout,className:cn(theme.slots.tableRoot,isSplitScroll&&theme.slots.tableSplitRoot,classNames?.root,className),style:{...theme.styles.table,...isSplitScroll?theme.styles.tableSplitRoot:void 0,...columnTemplate?{"--base-table-column-template":columnTemplate}:void 0,...style}})})}),BaseTableHeader=React8.forwardRef(function({appearance:appearance2,className,classNames,style,...headerProps},ref){let{layout,splitHeaderRef,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("thead",{...headerProps,ref:node=>{splitHeaderRef&&(splitHeaderRef.current=isSplitScroll?node:null),assignRef3(ref,node);},"data-slot":"header",className:cn(theme.slots.tableHeader,isSplitScroll&&theme.slots.tableSplitHeader,classNames?.root,className),style:{...theme.styles.tableHeader,...isSplitScroll?theme.styles.tableSplitHeader:void 0,...style}})}),BaseTableBody=React8.forwardRef(function({appearance:appearance2,className,classNames,onScroll,style,...bodyProps},ref){let{bodyClassName,bodyMaxHeight,layout,splitFooterRef,splitHeaderRef,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("tbody",{...bodyProps,ref,"data-slot":"body",onScroll:isSplitScroll?event=>{let scrollLeft=event.currentTarget.scrollLeft;splitHeaderRef?.current&&(splitHeaderRef.current.scrollLeft=scrollLeft),splitFooterRef?.current&&(splitFooterRef.current.scrollLeft=scrollLeft),onScroll?.(event);}:onScroll,className:cn(theme.slots.tableBody,isSplitScroll&&theme.slots.tableSplitBody,isSplitScroll&&bodyClassName,classNames?.root,className),style:{...theme.styles.tableBody,...isSplitScroll?theme.styles.tableSplitBody:void 0,...isSplitScroll&&bodyMaxHeight!==void 0?{maxHeight:validateTableCssSize(bodyMaxHeight,"bodyMaxHeight")}:void 0,...style}})});React8.forwardRef(function({appearance:appearance2,className,classNames,style,...footerProps},ref){let{layout,splitFooterRef,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("tfoot",{...footerProps,ref:node=>{splitFooterRef&&(splitFooterRef.current=isSplitScroll?node:null),assignRef3(ref,node);},"data-slot":"footer",className:cn(theme.slots.tableFooter,isSplitScroll&&theme.slots.tableSplitFooter,classNames?.root,className),style:{...theme.styles.tableFooter,...isSplitScroll?theme.styles.tableSplitFooter:void 0,...style}})});var BaseTableRow=React8.forwardRef(function({interactive,selected:selected2,disabled,appearance:appearance2,className,classNames,style,...rowProps},ref){assertBoolean2("interactive",interactive),assertBoolean2("selected",selected2),assertBoolean2("disabled",disabled);let{layout,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("tr",{...rowProps,ref,"data-slot":"row","aria-disabled":disabled||void 0,"data-state":selected2?"selected":void 0,className:cn(theme.slots.tableRow,isSplitScroll&&theme.slots.tableSplitRow,interactive&&!disabled&&theme.slots.tableRowInteractive,selected2&&theme.slots.tableRowSelected,disabled&&theme.slots.tableRowDisabled,classNames?.root,className),style:{...theme.styles.tableRow,...isSplitScroll?theme.styles.tableSplitRow:void 0,...style}})}),BaseTableHead=React8.forwardRef(function({presentation,columnId,align,verticalAlign,icon,label,description,meta,actions,trailing,sortable,sortDirection="none",sortLabel,onSort,draggable,dragLabel,resizable,resizeLabel,width,minWidth,maxWidth,appearance:appearance2,className,classNames,style,children,onDragOver,onDrop,...headProps},forwardedRef){if(assertEnum("head presentation",presentation,["classic-data-grid"]),assertEnum("head align",align,["left","center","right"]),assertEnum("head verticalAlign",verticalAlign,["top","middle","bottom"]),assertEnum("head sortDirection",sortDirection,["asc","desc","none"]),assertBoolean2("head sortable",sortable),assertBoolean2("head draggable",draggable),assertBoolean2("head resizable",resizable),assertOptionalFunction("head onSort",onSort),assertOptionalLabel("head sortLabel",sortLabel),assertOptionalLabel("head dragLabel",dragLabel),assertOptionalLabel("head resizeLabel",resizeLabel),columnId!==void 0&&(typeof columnId!="string"||columnId.trim().length===0))throw new Error("BaseTable head columnId must be a non-empty string when provided.");if(validateCssSizeValue(width,"head width",{stringAllowed:true}),validateCssSizeValue(minWidth,"head minWidth"),validateCssSizeValue(maxWidth,"head maxWidth"),minWidth!==void 0&&maxWidth!==void 0&&minWidth>maxWidth)throw new Error("BaseTable head minWidth cannot be greater than maxWidth.");let tableContext=useBaseTableContext(appearance2),{theme}=tableContext,messages=useMonkeysLocaleMessages().table,isSplitScroll=tableContext.layout==="split-scroll",classicDataGrid=presentation==="classic-data-grid",resolvedAlign=align??(isSplitScroll?"center":"left"),resolvedVerticalAlign=verticalAlign??"middle",headRef=React8.useRef(null),resizeCleanupRef=React8.useRef(()=>{}),[measuredWidth,setMeasuredWidth]=React8.useState(),setHeadRef=node=>{headRef.current=node,assignRef3(forwardedRef,node);},controlledWidth=columnId&&tableContext.columnSizes?.[columnId]!==void 0?tableContext.columnSizes[columnId]:width,canDrag=!!(columnId&&draggable!==false&&(draggable||tableContext.columnDragEnabled)&&tableContext.columnOrder&&tableContext.onColumnOrderChange),canResize=!!(columnId&&resizable!==false&&(resizable||tableContext.columnResizeEnabled)&&tableContext.onColumnSizeChange);if(canResize&&maxWidth!==void 0&&maxWidth<(minWidth??48))throw new Error("BaseTable resizable head maxWidth cannot be smaller than its effective minWidth.");let interactiveSort=!!(sortable||onSort),ariaSort=sortAriaValue(sortDirection),content=hasRenderableNode(label)?label:children,hasVisibleSortName=hasRenderableNode(content)||hasRenderableNode(description),sortAccessibleName=sortLabel??(hasVisibleSortName?void 0:messages.sortColumn({columnId:columnId?.trim()||void 0})),usesRichHeader=canDrag||hasRenderableNode(icon)||hasRenderableNode(label)||hasRenderableNode(description)||hasRenderableNode(meta)||hasRenderableNode(actions)||hasRenderableNode(trailing)||interactiveSort,renderedContent=classicDataGrid?jsxRuntime.jsx("div",{className:cn("flex h-full min-w-0 select-none items-center",resolvedAlign==="center"?"justify-center":resolvedAlign==="right"?"justify-end":"justify-start",canDrag&&"cursor-grab active:cursor-grabbing"),...canDrag?{draggable:true,role:"button",tabIndex:0,"aria-disabled":false,"aria-roledescription":"sortable",onKeyDown:event=>{if(!columnId||!tableContext.columnOrder||event.key!=="ArrowLeft"&&event.key!=="ArrowRight")return;let currentIndex=tableContext.columnOrder.indexOf(columnId);if(currentIndex<0)return;let rtl=isRtl2(event.currentTarget),physicalDelta=event.key==="ArrowLeft"?-1:1,nextIndex=currentIndex+(rtl?-physicalDelta:physicalDelta),targetColumnId=tableContext.columnOrder[nextIndex];if(!targetColumnId)return;let nextOrder=getNextColumnOrder(tableContext.columnOrder,columnId,targetColumnId);nextOrder&&(event.preventDefault(),tableContext.onColumnOrderChange?.(nextOrder,{columnId,targetColumnId}));},onDragStart:event=>{event.stopPropagation(),tableContext.setDraggingColumnId(columnId),event.dataTransfer.effectAllowed="move",event.dataTransfer.setData(DATA_TRANSFER_COLUMN_TYPE,columnId);},onDragEnd:event=>{event.stopPropagation(),tableContext.setDraggingColumnId(void 0);}}:{},children:content}):usesRichHeader?jsxRuntime.jsxs("div",{className:cn(theme.slots.tableHeadContent,classNames?.content),children:[jsxRuntime.jsxs("div",{className:cn(theme.slots.tableHeadMain,classNames?.main),children:[canDrag?jsxRuntime.jsx("button",{type:"button",draggable:true,title:dragLabel,"aria-label":dragLabel??messages.dragColumn({columnId}),className:cn(theme.slots.tableHeadDragHandle,classNames?.dragHandle),onClick:event=>event.stopPropagation(),onKeyDown:event=>{if(!columnId||!tableContext.columnOrder||event.key!=="ArrowLeft"&&event.key!=="ArrowRight")return;let currentIndex=tableContext.columnOrder.indexOf(columnId);if(currentIndex<0)return;let rtl=isRtl2(event.currentTarget),physicalDelta=event.key==="ArrowLeft"?-1:1,nextIndex=currentIndex+(rtl?-physicalDelta:physicalDelta),targetColumnId=tableContext.columnOrder[nextIndex];if(!targetColumnId)return;let nextOrder=getNextColumnOrder(tableContext.columnOrder,columnId,targetColumnId);nextOrder&&(event.preventDefault(),tableContext.onColumnOrderChange?.(nextOrder,{columnId,targetColumnId}));},onDragStart:event=>{event.stopPropagation(),tableContext.setDraggingColumnId(columnId),event.dataTransfer.effectAllowed="move",event.dataTransfer.setData(DATA_TRANSFER_COLUMN_TYPE,columnId);},onDragEnd:event=>{event.stopPropagation(),tableContext.setDraggingColumnId(void 0);},children:jsxRuntime.jsx(DragHandleIcon,{})}):null,icon?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadIcon,classNames?.icon),children:icon}):null,interactiveSort?jsxRuntime.jsxs("button",{type:"button",disabled:!onSort,title:sortLabel,"aria-label":sortAccessibleName,className:cn(theme.slots.tableHeadSortButton,classNames?.sortButton),onClick:event=>{event.stopPropagation(),onSort?.(columnId);},children:[jsxRuntime.jsxs("span",{className:cn(theme.slots.tableHeadText,classNames?.text),children:[hasRenderableNode(content)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadLabel,classNames?.label),children:content}):null,hasRenderableNode(description)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadDescription,classNames?.description),children:description}):null]}),jsxRuntime.jsx(SortIndicator,{direction:sortDirection,className:cn(theme.slots.tableHeadSortIcon,classNames?.sortIcon)})]}):jsxRuntime.jsxs("span",{className:cn(theme.slots.tableHeadText,classNames?.text),children:[hasRenderableNode(content)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadLabel,classNames?.label),children:content}):null,hasRenderableNode(description)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadDescription,classNames?.description),children:description}):null]})]}),hasRenderableNode(meta)||hasRenderableNode(actions)||hasRenderableNode(trailing)?jsxRuntime.jsxs("div",{className:cn(theme.slots.tableHeadActions,classNames?.actions),children:[hasRenderableNode(meta)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadMeta,classNames?.meta),children:meta}):null,actions,trailing]}):null]}):children,handleDragOver=event=>{onDragOver?.(event),!(!canDrag||!tableContext.draggingColumnId||tableContext.draggingColumnId===columnId)&&(event.preventDefault(),event.dataTransfer.dropEffect="move");},handleDrop=event=>{if(onDrop?.(event),!canDrag||!columnId)return;let sourceColumnId=tableContext.draggingColumnId||event.dataTransfer.getData(DATA_TRANSFER_COLUMN_TYPE);if(!sourceColumnId||sourceColumnId===columnId)return;let nextOrder=getNextColumnOrder(tableContext.columnOrder,sourceColumnId,columnId);nextOrder&&(event.preventDefault(),tableContext.onColumnOrderChange?.(nextOrder,{columnId:sourceColumnId,targetColumnId:columnId})),tableContext.setDraggingColumnId(void 0);},handleResizePointerDown=event=>{if(!canResize||!columnId||!tableContext.onColumnSizeChange||event.button!==0&&event.pointerType!=="touch")return;event.preventDefault(),event.stopPropagation(),resizeCleanupRef.current();let startX=event.clientX,currentWidth=currentResizeWidth??headRef.current?.offsetWidth??minWidth??48,previousWidth=clampWidth(currentWidth,minWidth,maxWidth),pointerId=event.pointerId,target=event.currentTarget,ownerDocument=target.ownerDocument,rtl=isRtl2(target),handlePointerMove=moveEvent=>{if(moveEvent.pointerId!==pointerId)return;let nextWidth=clampWidth(previousWidth+(rtl?startX-moveEvent.clientX:moveEvent.clientX-startX),minWidth,maxWidth);tableContext.onColumnSizeChange?.(columnId,nextWidth,{columnId,previousWidth,minWidth,maxWidth});},handleStop=nextEvent=>{nextEvent.pointerId===pointerId&&resizeCleanupRef.current();},handleLostCapture=nextEvent=>{nextEvent.pointerId===pointerId&&resizeCleanupRef.current();};resizeCleanupRef.current=()=>{ownerDocument.removeEventListener("pointermove",handlePointerMove),ownerDocument.removeEventListener("pointerup",handleStop),ownerDocument.removeEventListener("pointercancel",handleStop),target.removeEventListener("lostpointercapture",handleLostCapture),target.hasPointerCapture?.(pointerId)&&target.releasePointerCapture?.(pointerId),resizeCleanupRef.current=()=>{};},setPointerCaptureIfAvailable2(target,pointerId),ownerDocument.addEventListener("pointermove",handlePointerMove),ownerDocument.addEventListener("pointerup",handleStop),ownerDocument.addEventListener("pointercancel",handleStop),target.addEventListener("lostpointercapture",handleLostCapture);},currentResizeWidth=typeof controlledWidth=="number"?clampWidth(controlledWidth,minWidth,maxWidth):measuredWidth,announcedResizeWidth=currentResizeWidth??clampWidth(minWidth??48,minWidth,maxWidth),handleResizeKeyDown=event=>{if(!canResize||!columnId||!tableContext.onColumnSizeChange)return;let rtl=isRtl2(event.currentTarget),previousWidth=currentResizeWidth??clampWidth(headRef.current?.offsetWidth||minWidth||48,minWidth,maxWidth),nextWidth;event.key==="ArrowLeft"&&(nextWidth=previousWidth+(rtl?COLUMN_RESIZE_KEYBOARD_STEP:-COLUMN_RESIZE_KEYBOARD_STEP)),event.key==="ArrowRight"&&(nextWidth=previousWidth+(rtl?-COLUMN_RESIZE_KEYBOARD_STEP:COLUMN_RESIZE_KEYBOARD_STEP)),event.key==="Home"&&minWidth!==void 0&&(nextWidth=minWidth),event.key==="End"&&maxWidth!==void 0&&(nextWidth=maxWidth),nextWidth!==void 0&&(event.preventDefault(),event.stopPropagation(),tableContext.onColumnSizeChange(columnId,clampWidth(nextWidth,minWidth,maxWidth),{columnId,previousWidth,minWidth,maxWidth}));};return React8.useEffect(()=>{if(typeof controlledWidth=="number"){setMeasuredWidth(void 0);return}let measured=headRef.current?.getBoundingClientRect().width;if(measured&&Number.isFinite(measured)){let nextWidth=clampWidth(measured,minWidth,maxWidth);setMeasuredWidth(current=>current===nextWidth?current:nextWidth);}},[controlledWidth,minWidth,maxWidth,canResize]),React8.useEffect(()=>(canResize||resizeCleanupRef.current(),()=>resizeCleanupRef.current()),[canResize,columnId,tableContext.onColumnSizeChange]),jsxRuntime.jsxs("th",{...headProps,ref:setHeadRef,"data-slot":"head","data-v2-header-drag-id":classicDataGrid&&canDrag?columnId:void 0,scope:headProps.scope??"col","aria-sort":ariaSort,className:cn(theme.slots.tableHead,isSplitScroll&&theme.slots.tableSplitHead,resolvedAlign==="center"&&theme.slots.tableCellAlignCenter,resolvedAlign==="right"&&theme.slots.tableCellAlignRight,classicDataGrid&&"!relative !h-9 !px-3 !align-middle !text-sm !font-medium !text-muted-foreground after:pointer-events-none after:absolute after:bottom-2 after:right-0 after:top-2 after:w-px after:bg-border/50 after:content-['']",classNames?.root,className),style:{...theme.styles.tableHead,...isSplitScroll?theme.styles.tableSplitHead:void 0,width:isSplitScroll?void 0:toCssSize2(controlledWidth),minWidth:isSplitScroll?void 0:toCssSize2(minWidth),maxWidth:isSplitScroll?void 0:toCssSize2(maxWidth),...isSplitScroll?{alignItems:getSplitHeadAlignItems(resolvedVerticalAlign),justifyContent:getSplitHeadJustifyContent(resolvedAlign),textAlign:resolvedAlign}:verticalAlign?{verticalAlign}:void 0,...style},onDragOver:handleDragOver,onDrop:handleDrop,children:[renderedContent,canResize&&classicDataGrid?jsxRuntime.jsx("div",{"data-column-resize-handle":"true",className:"absolute right-0 top-0 z-20 h-full w-2 cursor-col-resize touch-none select-none hover:bg-muted",onPointerDown:handleResizePointerDown}):canResize?jsxRuntime.jsx("button",{type:"button",role:"separator","aria-orientation":"vertical","aria-valuenow":announcedResizeWidth,"aria-valuemin":minWidth??48,"aria-valuemax":maxWidth,"aria-valuetext":`${announcedResizeWidth}px`,title:resizeLabel,"aria-label":resizeLabel??messages.resizeColumn({columnId}),className:cn(theme.slots.tableHeadResizeHandle,classNames?.resizeHandle),onClick:event=>event.stopPropagation(),onKeyDown:handleResizeKeyDown,onPointerDown:handleResizePointerDown}):null]})}),BaseTableCell=React8.forwardRef(function({align="left",appearance:appearance2,className,classNames,style,...cellProps},ref){assertEnum("cell align",align,["left","center","right"]);let{layout,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("td",{...cellProps,ref,"data-slot":"cell",className:cn(theme.slots.tableCell,isSplitScroll&&theme.slots.tableSplitCell,align==="center"&&theme.slots.tableCellAlignCenter,align==="right"&&theme.slots.tableCellAlignRight,classNames?.root,className),style:{...theme.styles.tableCell,...isSplitScroll?theme.styles.tableSplitCell:void 0,...style}})});React8.forwardRef(function({appearance:appearance2,className,classNames,style,...captionProps},ref){let{theme}=useBaseTableContext(appearance2);return jsxRuntime.jsx("caption",{...captionProps,ref,"data-slot":"caption",className:cn(theme.slots.tableCaption,classNames?.root,className),style:{...theme.styles.tableCaption,...style}})});var BaseTableEmpty=React8.forwardRef(function({colSpan,icon,title,description,actions,children,appearance:appearance2,className,classNames,style,...emptyProps},ref){if(!Number.isSafeInteger(colSpan)||colSpan<1)throw new Error("BaseTable empty colSpan must be a positive safe integer.");let{layout,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll",hasStructuredContent=hasRenderableNode(icon)||hasRenderableNode(title)||hasRenderableNode(description)||hasRenderableNode(actions);return jsxRuntime.jsx("tr",{...emptyProps,ref,"data-slot":"empty-row",className:cn(theme.slots.tableEmptyRow,isSplitScroll&&theme.slots.tableSplitRow,classNames?.row,className),style:{...theme.styles.tableEmpty,...isSplitScroll?theme.styles.tableSplitRow:void 0,...style},children:jsxRuntime.jsx("td",{colSpan,"data-slot":"empty-cell",className:cn(theme.slots.tableEmptyCell,isSplitScroll&&theme.slots.tableSplitCell,classNames?.cell),style:isSplitScroll?{gridColumn:"1 / -1"}:void 0,children:hasStructuredContent?jsxRuntime.jsxs("div",{className:cn(theme.slots.tableEmptyContent,classNames?.content),children:[hasRenderableNode(icon)?jsxRuntime.jsx("div",{className:cn(theme.slots.tableEmptyIcon,classNames?.icon),children:icon}):null,hasRenderableNode(title)?jsxRuntime.jsx("div",{className:cn(theme.slots.tableEmptyTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{className:cn(theme.slots.tableEmptyDescription,classNames?.description),children:description}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{className:cn(theme.slots.tableEmptyActions,classNames?.actions),children:actions}):null]}):children})})});function validateTabsProps({items,value,defaultValue,orientation,activationMode}){if(!Array.isArray(items))throw new TypeError("BaseTabs items must be an array.");if(value!==void 0&&typeof value!="string")throw new TypeError("BaseTabs value must be a string.");if(defaultValue!==void 0&&typeof defaultValue!="string")throw new TypeError("BaseTabs defaultValue must be a string.");if(orientation!=="horizontal"&&orientation!=="vertical")throw new TypeError('BaseTabs orientation must be "horizontal" or "vertical".');if(activationMode!=="automatic"&&activationMode!=="manual")throw new TypeError('BaseTabs activationMode must be "automatic" or "manual".');let values=new Set;items.forEach((item,index)=>{if(!item||typeof item!="object")throw new TypeError(`BaseTabs item at index ${index} must be an object.`);if(typeof item.value!="string")throw new TypeError(`BaseTabs item value at index ${index} must be a string.`);if(values.has(item.value))throw new TypeError(`BaseTabs items must use unique values; duplicate value ${JSON.stringify(item.value)} at index ${index}.`);if(item.disabled!==void 0&&typeof item.disabled!="boolean")throw new TypeError(`BaseTabs item disabled at index ${index} must be a boolean.`);values.add(item.value);});}function getResolvedValue(items,candidate){return candidate!==void 0&&items.some(item=>item.value===candidate&&!item.disabled)?candidate:items.find(item=>!item.disabled)?.value}function toDomId4(value){return value.replace(/[^a-zA-Z0-9_-]/g,"-")}function getDomIdFragments2(items){let usedFragments=new Set;return items.map((item,index)=>{let baseFragment=toDomId4(item.value),fragment=baseFragment;if(usedFragments.has(fragment))for(fragment=`${baseFragment}-${index}`;usedFragments.has(fragment);)fragment=`${fragment}-${index}`;return usedFragments.add(fragment),fragment})}function getHorizontalStep(event,key3){let rtl=event.currentTarget.ownerDocument.defaultView?.getComputedStyle(event.currentTarget).direction==="rtl";return key3==="ArrowRight"?rtl?-1:1:rtl?1:-1}var BaseTabs=React8.forwardRef(function({items=[],value,defaultValue,orientation="horizontal",activationMode="automatic",appearance:appearance2,className,classNames,style,onValueChange,id:id9,"aria-label":tablistAriaLabel,"aria-labelledby":tablistAriaLabelledBy,...tabsProps},ref){validateTabsProps({items,value,defaultValue,orientation,activationMode});let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),generatedId=React8.useId(),rootId=id9??generatedId,initialCandidate=value!==void 0?value:defaultValue,[uncontrolledValue,setUncontrolledValue]=React8.useState(()=>getResolvedValue(items,defaultValue)),[focusedValue,setFocusedValue]=React8.useState(()=>getResolvedValue(items,initialCandidate)),triggerRefs=React8.useRef([]),isControlled=value!==void 0,selectedValue=getResolvedValue(items,isControlled?value:uncontrolledValue),selectedIndex=items.findIndex(item=>item.value===selectedValue&&!item.disabled),selectedItem=selectedIndex>=0?items[selectedIndex]:void 0,enabledIndices=items.reduce((indices,item,index)=>(item.disabled||indices.push(index),indices),[]),storedFocusIndex=items.findIndex(item=>item.value===focusedValue&&!item.disabled),rovingIndex=storedFocusIndex>=0?storedFocusIndex:selectedIndex,idFragments=getDomIdFragments2(items),groupState=selectedItem?"active":"disabled",layerDirection=typeof tabsProps.dir=="string"?tabsProps.dir:componentAttributes.dir,activateItem=item=>{item.disabled||(isControlled||setUncontrolledValue(item.value),onValueChange?.(item.value));},moveFocus=(event,targetIndex)=>{let targetItem=items[targetIndex];!targetItem||targetItem.disabled||(event.preventDefault(),setFocusedValue(targetItem.value),triggerRefs.current[targetIndex]?.focus(),activationMode==="automatic"&&activateItem(targetItem));},handleKeyDown=(event,item,index)=>{if(item.disabled)return;if(activationMode==="manual"&&(event.key==="Enter"||event.key===" ")){event.preventDefault(),activateItem(item);return}if(enabledIndices.length===0)return;if(event.key==="Home"){moveFocus(event,enabledIndices[0]);return}if(event.key==="End"){moveFocus(event,enabledIndices[enabledIndices.length-1]);return}let step;if(orientation==="horizontal"&&(event.key==="ArrowLeft"||event.key==="ArrowRight")?step=getHorizontalStep(event,event.key):orientation==="vertical"&&event.key==="ArrowUp"?step=-1:orientation==="vertical"&&event.key==="ArrowDown"&&(step=1),step===void 0)return;let nextPosition=(enabledIndices.indexOf(index)+step+enabledIndices.length)%enabledIndices.length;moveFocus(event,enabledIndices[nextPosition]);};return jsxRuntime.jsxs("div",{...componentAttributes,...tabsProps,ref,id:id9,"data-monkeys-component":"tabs","data-slot":"root","data-state":groupState,"data-orientation":orientation,"data-activation-mode":activationMode,className:cn(theme.slots.tabsRoot,classNames?.root,className),style,children:[jsxRuntime.jsx("div",{...componentAttributes,dir:layerDirection,role:"tablist","aria-label":tablistAriaLabel,"aria-labelledby":tablistAriaLabelledBy,"aria-orientation":orientation,"data-monkeys-component":"tabs","data-slot":"list","data-state":groupState,"data-orientation":orientation,"data-activation-mode":activationMode,className:cn(theme.slots.tabsList,orientation==="vertical"&&"flex-col items-stretch",classNames?.list),style:theme.styles.tabsList,children:items.map((item,index)=>{let itemId=idFragments[index],selected2=index===selectedIndex,state=item.disabled?"disabled":selected2?"active":"inactive";return React8.createElement("button",{...componentAttributes,ref:node=>{triggerRefs.current[index]=node;},key:item.value,id:`${rootId}-${itemId}-tab`,type:"button",role:"tab",tabIndex:!item.disabled&&index===rovingIndex?0:-1,"aria-selected":selected2,"aria-controls":`${rootId}-${itemId}-panel`,disabled:item.disabled,dir:layerDirection,"data-monkeys-component":"tabs","data-slot":"trigger","data-state":state,"data-orientation":orientation,"data-activation-mode":activationMode,"data-disabled":item.disabled||void 0,className:cn(theme.slots.tabsTrigger,selected2&&theme.slots.tabsTriggerActive,item.disabled&&theme.slots.tabsTriggerDisabled,classNames?.trigger),style:theme.styles.tabsTrigger,onFocus:()=>setFocusedValue(item.value),onKeyDown:event=>handleKeyDown(event,item,index),onClick:()=>{setFocusedValue(item.value),activateItem(item);}},jsxRuntime.jsx("span",{className:"min-w-0 truncate",children:item.label}))})}),selectedItem?jsxRuntime.jsx("div",{...componentAttributes,id:`${rootId}-${idFragments[selectedIndex]}-panel`,role:"tabpanel",tabIndex:0,"aria-labelledby":`${rootId}-${idFragments[selectedIndex]}-tab`,dir:layerDirection,"data-monkeys-component":"tabs","data-slot":"panel","data-state":"active","data-orientation":orientation,"data-activation-mode":activationMode,className:cn(theme.slots.tabsPanel,classNames?.panel),style:theme.styles.tabsPanel,children:hasRenderableNode(selectedItem.content)?selectedItem.content:hasRenderableNode(selectedItem.description)?jsxRuntime.jsx("p",{className:"m-0 text-muted-foreground",children:selectedItem.description}):null}):null]})});var controlSizeClassNames2={sm:"min-h-20 px-2.5 py-1.5 text-xs leading-5",md:"min-h-24 px-3 py-2 text-sm leading-6",lg:"min-h-28 px-3.5 py-2.5 text-base leading-7"},BaseTextarea=React8.forwardRef(function({invalid:invalid2=false,disabled=false,readOnly=false,controlSize,appearance:appearance2,className,classNames,style,"aria-invalid":nativeAriaInvalid,onBlur,onChange,...textareaProps},ref){for(let[name,value]of [["invalid",invalid2],["disabled",disabled],["readOnly",readOnly]])if(typeof value!="boolean")throw new TypeError(`BaseTextarea ${name} must be a boolean.`);if(controlSize!==void 0&&controlSize!=="sm"&&controlSize!=="md"&&controlSize!=="lg")throw new TypeError('BaseTextarea controlSize must be "sm", "md", or "lg".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),fieldControl=useBaseFieldControl(),resolvedInvalid=invalid2||fieldControl.invalid;return jsxRuntime.jsx("textarea",{...componentAttributes,...textareaProps,ref,disabled,readOnly,"aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"data-monkeys-component":"textarea","data-slot":"control","data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,"data-readonly":readOnly||void 0,className:cn(theme.slots.controlWrapper,theme.slots.controlBase,theme.slots.controlTextarea,resolvedInvalid&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,readOnly&&theme.slots.controlReadOnly,controlSize&&controlSizeClassNames2[controlSize],classNames?.control,className),style:{...theme.styles.control,...resolvedInvalid?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},onBlur:event=>{onBlur?.(event),fieldControl.notifyBlur(event.currentTarget.value);},onChange:event=>{onChange?.(event),fieldControl.notifyChange(event.currentTarget.value);}})});function useOverflowMotion(viewportRef,contentRef,enabled,content,allowHoverWithReducedMotion=false){React8.useEffect(()=>{let viewport=viewportRef.current,text10=contentRef.current,view=viewport?.ownerDocument.defaultView;if(!enabled||!viewport||!text10||!view?.matchMedia||!text10.animate)return;let trigger=viewport.closest("button, a, [tabindex]")??viewport,preference=view.matchMedia("(prefers-reduced-motion: reduce)"),hovered=trigger.matches(":hover"),focused=trigger.contains(viewport.ownerDocument.activeElement),animation,stop=()=>{animation?.cancel(),animation=void 0,delete viewport.dataset.scrolling;},update=()=>{stop();let distance=text10.scrollWidth-viewport.clientWidth;if(preference.matches&&!(allowHoverWithReducedMotion&&hovered)||!hovered&&!focused||distance<=1)return;let travel=distance/64*1e3,pause=160,duration=travel+pause*2;animation=text10.animate([{transform:"translateX(0)",offset:0},{transform:"translateX(0)",offset:pause/duration},{transform:`translateX(-${distance}px)`,offset:1-pause/duration},{transform:`translateX(-${distance}px)`,offset:1}],{duration,iterations:1/0,direction:"alternate",easing:"linear"}),viewport.dataset.scrolling="true";},enter=()=>{hovered=true,update();},leave=()=>{hovered=false,update();},focus=()=>{focused=true,update();},blur=event=>{focused=event.relatedTarget instanceof view.Node&&trigger.contains(event.relatedTarget),update();},resize=view.ResizeObserver?new view.ResizeObserver(update):void 0;return resize?.observe(viewport),resize?.observe(text10),trigger.addEventListener("pointerenter",enter),trigger.addEventListener("pointerleave",leave),trigger.addEventListener("focusin",focus),trigger.addEventListener("focusout",blur),preference.addEventListener("change",update),update(),()=>{stop(),resize?.disconnect(),trigger.removeEventListener("pointerenter",enter),trigger.removeEventListener("pointerleave",leave),trigger.removeEventListener("focusin",focus),trigger.removeEventListener("focusout",blur),preference.removeEventListener("change",update);}},[viewportRef,contentRef,enabled,content,allowHoverWithReducedMotion]);}var BaseText=React8.forwardRef(function({as="p",children,size:size2="md",tone="default",overflowMotion,appearance:appearance2,className,classNames,style,...textProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),viewportRef=React8.useRef(null),contentRef=React8.useRef(null),scrolling=overflowMotion==="hover-scroll"||overflowMotion==="hover-scroll-always",setRef=React8.useCallback(node=>{viewportRef.current=node,typeof ref=="function"?ref(node):ref&&(ref.current=node);},[ref]);return useOverflowMotion(viewportRef,contentRef,scrolling,children,overflowMotion==="hover-scroll-always"),React8.createElement(as,{...componentAttributes,...textProps,ref:setRef,"data-monkeys-component":"text","data-slot":"root","data-size":size2,"data-tone":tone,className:cn(theme.slots.textRoot,getBaseTextSizeClassName(theme,size2),getBaseTypographyToneClassName(theme,tone),classNames?.root,className),style:{...theme.styles.text,...scrolling?{display:"block",minWidth:0,overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}:{},...style}},scrolling?React8.createElement("span",{ref:contentRef,style:{display:"inline-block",whiteSpace:"nowrap"}},children):children)});function BaseToolbar({leading,title,description,actions,children,appearance:appearance2,className,classNames,style,...toolbarProps}){let theme=resolveBaseAppearance(appearance2),hasTitleBlock=hasRenderableNode(title)||hasRenderableNode(description);return jsxRuntime.jsxs("div",{...toolbarProps,className:cn(theme.slots.toolbarRoot,classNames?.root,className),style:{...theme.styles.toolbar,...style},children:[jsxRuntime.jsxs("div",{className:cn(theme.slots.toolbarLeading,classNames?.leading),children:[hasRenderableNode(leading)?leading:null,hasTitleBlock?jsxRuntime.jsxs("div",{className:cn(theme.slots.toolbarContent,classNames?.content),children:[hasRenderableNode(title)?jsxRuntime.jsx("div",{className:cn(theme.slots.toolbarTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{className:cn(theme.slots.toolbarDescription,classNames?.description),children:description}):null]}):null]}),hasRenderableNode(children)?jsxRuntime.jsx("div",{className:cn(theme.slots.toolbarContent,classNames?.content),children}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{className:cn(theme.slots.toolbarActions,classNames?.actions),children:actions}):null]})}var catalogPromise;function loadCatalog(){return catalogPromise??(catalogPromise=import('@inf-monkeys-tech/monkeys-design/icons/catalog').catch(error=>{throw catalogPromise=void 0,error}))}async function loadIconRecords(){return (await loadCatalog()).records}async function resolveAssetIconNodes(name){let normalized=name.trim().replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/_/g,"-").replace(/\s+/g,"-").toLowerCase();return (await loadIconRecords())[normalized]?.svg}var defaultIconPickerCatalogSource={async load(signal){signal.throwIfAborted();let{records,labels}=await loadCatalog();signal.throwIfAborted();let ids2=["all","custom-upload",...new Set(Object.values(records).flatMap(record=>record.metadata?.categories??[]))];return {icons:Object.entries(records).map(([id9,record])=>({id:id9,icon:{kind:"lucide",name:id9},categoryIds:record.metadata?.categories??[],tags:record.metadata?.tags??[]})),categories:ids2.map(id9=>({id:id9,labelI18n:{defaultLocale:"en-US",values:{"en-US":labels.en[id9]??id9,"zh-CN":labels.zh[id9]??id9}}}))}}};var BASE_ASSET_ICON_DESCRIPTOR_SCHEMA={oneOf:[{type:"object",additionalProperties:false,required:["kind","src"],properties:{kind:{const:"image"},src:{type:"string",minLength:1,maxLength:4096}}},{type:"object",additionalProperties:false,required:["kind","value"],properties:{kind:{const:"emoji"},value:{type:"string",minLength:1,maxLength:64},backgroundColor:{type:"string",maxLength:128}}},{type:"object",additionalProperties:false,required:["kind","name"],properties:{kind:{const:"lucide"},name:{type:"string",minLength:1,maxLength:128}}}]},attributesByTag={path:["d"],circle:["cx","cy","r"],rect:["x","y","width","height","rx","ry"],polyline:["points"],line:["x1","x2","y1","y2"],ellipse:["cx","cy","rx","ry"],polygon:["points"]};function parseAssetIconNodes(value){if(!Array.isArray(value)||!value.length||value.length>256)return;let result=[];for(let node of value){if(!Array.isArray(node)||node.length!==2||typeof node[0]!="string"||!Object.prototype.hasOwnProperty.call(attributesByTag,node[0]))return;let tag=node[0],raw=node[1];if(!raw||typeof raw!="object"||Array.isArray(raw)||Object.getPrototypeOf(raw)!==Object.prototype)return;let attributes={};for(let[key3,descriptor]of Object.entries(Object.getOwnPropertyDescriptors(raw))){if(!("value"in descriptor)||typeof descriptor.value!="string")return;let text10=descriptor.value;if(key3==="key"){if(text10.length>256)return}else if(key3==="fill"){if(text10!=="currentColor"&&text10!=="none")return}else if(attributesByTag[tag].includes(key3)){if(key3==="d"){if(!text10.length||text10.length>8192||!/^[MmZzLlHhVvCcSsQqTtAa0-9eE+.,\s-]+$/.test(text10))return}else if(key3==="points"){if(!text10.length||text10.length>8192||!/^[0-9eE+.,\s-]+$/.test(text10))return}else if(!text10.trim()||text10.length>128||!Number.isFinite(Number(text10)))return}else return;attributes[key3]=text10;}result.push([tag,attributes]);}return result}var BaseAssetIcon=React8.forwardRef(function({icon,alt,normalizeImageIcon=false,className,style,...props},ref){let attributes=useMonkeysComponentAttributes(),resolver=useMonkeysAssetIconResolver()??resolveAssetIconNodes,imageResolver=useMonkeysAssetImageResolver(),imageReference=icon.kind==="image"?icon.src:void 0,[image,setImage]=React8.useState();React8.useEffect(()=>{if(!imageReference||!imageResolver)return;let controller=new AbortController;return Promise.resolve().then(()=>imageResolver(imageReference,controller.signal)).then(src=>{controller.signal.aborted||setImage({reference:imageReference,resolver:imageResolver,src:safeDisplayUrl(src,"media")});}).catch(()=>{controller.signal.aborted||setImage({reference:imageReference,resolver:imageResolver});}),()=>controller.abort()},[imageReference,imageResolver]);let imageSource=imageResolver?image&&image.reference===imageReference&&image.resolver===imageResolver?image.src:void 0:safeDisplayUrl(imageReference,"media"),name=icon.kind==="lucide"?icon.name:void 0,[loaded,setLoaded]=React8.useState();React8.useEffect(()=>{let active=true;return name&&resolver&&Promise.resolve().then(()=>resolver(name)).then(value=>{active&&setLoaded({name,resolver,nodes:parseAssetIconNodes(value)});}).catch(()=>{active&&setLoaded({name,resolver,nodes:void 0});}),()=>{active=false;}},[name,resolver]);let nodes=loaded?.name===name&&loaded?.resolver===resolver?loaded?.nodes:void 0;return jsxRuntime.jsx("div",{...attributes,...props,ref,role:"img","aria-label":alt,className:cn("monkeys-asset-icon flex h-11 w-11 shrink-0 items-center justify-center rounded-xl text-muted-foreground",icon.kind==="emoji"?"text-2xl":icon.kind==="image"&&!normalizeImageIcon?"overflow-hidden border":"bg-muted",className),style:{...icon.kind==="emoji"&&icon.backgroundColor?{backgroundColor:icon.backgroundColor}:{},...style},children:icon.kind==="image"?imageSource?jsxRuntime.jsx("img",{src:imageSource,alt:"","aria-hidden":"true",loading:"lazy",className:normalizeImageIcon?"h-5 w-5 object-contain":"h-full w-full object-cover"}):jsxRuntime.jsx(lucideReact.Wrench,{"aria-hidden":"true",className:"h-5 w-5 max-h-full max-w-full"}):icon.kind==="emoji"?jsxRuntime.jsx("span",{"aria-hidden":"true",children:icon.value}):nodes?jsxRuntime.jsx("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",className:"h-5 w-5 max-h-full max-w-full",children:nodes.map(([tag,attributes2],index)=>{let{key:key3,...props2}=attributes2;return React8.createElement(tag,{...props2,key:key3??index})})}):jsxRuntime.jsx(lucideReact.Wrench,{"aria-hidden":"true",className:"h-5 w-5 max-h-full max-w-full"})})});var DESIGN_CAPABILITY_I18N_KEYS=Object.freeze({numericSeries:Object.freeze({inspect:"monkeys.design.capability.numericSeries.inspect",noPoints:"monkeys.design.capability.numericSeries.noPoints",point:"monkeys.design.capability.numericSeries.point",label:"monkeys.design.capability.numericSeries.label",description:"monkeys.design.capability.numericSeries.description",start:"monkeys.design.capability.numericSeries.start",end:"monkeys.design.capability.numericSeries.end",reset:"monkeys.design.capability.numericSeries.reset",expand:"monkeys.design.capability.numericSeries.expand",close:"monkeys.design.capability.numericSeries.close"}),catalog:Object.freeze({shellLayout:Object.freeze({label:"monkeys.design.catalog.shellLayout.label",description:"monkeys.design.catalog.shellLayout.description"}),sidebarFilter:Object.freeze({label:"monkeys.design.catalog.sidebarFilter.label",description:"monkeys.design.catalog.sidebarFilter.description"}),ontologyNavigator:Object.freeze({label:"monkeys.design.catalog.ontologyNavigator.label",description:"monkeys.design.catalog.ontologyNavigator.description"}),dataToolbar:Object.freeze({label:"monkeys.design.catalog.dataToolbar.label",description:"monkeys.design.catalog.dataToolbar.description"}),ontologyTable:Object.freeze({label:"monkeys.design.catalog.ontologyTable.label",description:"monkeys.design.catalog.ontologyTable.description"}),cardGrid:Object.freeze({label:"monkeys.design.catalog.cardGrid.label",description:"monkeys.design.catalog.cardGrid.description"}),pagination:Object.freeze({label:"monkeys.design.catalog.pagination.label",description:"monkeys.design.catalog.pagination.description"}),recordDetail:Object.freeze({label:"monkeys.design.catalog.recordDetail.label",description:"monkeys.design.catalog.recordDetail.description"}),recordEditor:Object.freeze({label:"monkeys.design.catalog.recordEditor.label",description:"monkeys.design.catalog.recordEditor.description"}),recordHistory:Object.freeze({label:"monkeys.design.catalog.recordHistory.label",description:"monkeys.design.catalog.recordHistory.description"}),ontologyManagement:Object.freeze({label:"monkeys.design.catalog.ontologyManagement.label",description:"monkeys.design.catalog.ontologyManagement.description"}),featureColumnManager:Object.freeze({label:"monkeys.design.catalog.featureColumnManager.label",description:"monkeys.design.catalog.featureColumnManager.description"}),ontologyTrendMatrix:Object.freeze({label:"monkeys.design.catalog.ontologyTrendMatrix.label",description:"monkeys.design.catalog.ontologyTrendMatrix.description"}),dataContextBar:Object.freeze({label:"monkeys.design.catalog.dataContextBar.label",description:"monkeys.design.catalog.dataContextBar.description"}),gallery:Object.freeze({label:"monkeys.design.catalog.gallery.label",description:"monkeys.design.catalog.gallery.description"}),sectionHeader:Object.freeze({label:"monkeys.design.catalog.sectionHeader.label",description:"monkeys.design.catalog.sectionHeader.description"}),notice:Object.freeze({label:"monkeys.design.catalog.notice.label",description:"monkeys.design.catalog.notice.description"}),descriptionList:Object.freeze({label:"monkeys.design.catalog.descriptionList.label",description:"monkeys.design.catalog.descriptionList.description"}),contentPanel:Object.freeze({label:"monkeys.design.catalog.contentPanel.label",description:"monkeys.design.catalog.contentPanel.description"}),toolbar:Object.freeze({label:"monkeys.design.catalog.toolbar.label",description:"monkeys.design.catalog.toolbar.description"}),status:Object.freeze({label:"monkeys.design.catalog.status.label",description:"monkeys.design.catalog.status.description"}),viewLeaf:Object.freeze({label:"monkeys.design.catalog.viewLeaf.label",description:"monkeys.design.catalog.viewLeaf.description"})}),status:Object.freeze({loading:Object.freeze({title:"monkeys.design.capability.status.loading.title",description:"monkeys.design.capability.status.loading.description"}),empty:Object.freeze({title:"monkeys.design.capability.status.empty.title",description:"monkeys.design.capability.status.empty.description"}),error:Object.freeze({title:"monkeys.design.capability.status.error.title",description:"monkeys.design.capability.status.error.description"}),forbidden:Object.freeze({title:"monkeys.design.capability.status.forbidden.title",description:"monkeys.design.capability.status.forbidden.description"}),retry:"monkeys.design.capability.status.retry.label"}),shellLayout:Object.freeze({resizeSidebar:"monkeys.design.capability.shellLayout.resizeSidebar",collapseSidebar:"monkeys.design.capability.shellLayout.collapseSidebar",expandSidebar:"monkeys.design.capability.shellLayout.expandSidebar",resizeAside:"monkeys.design.capability.shellLayout.resizeAside"}),sidebarFilter:Object.freeze({title:"monkeys.design.capability.sidebarFilter.title",searchLabel:"monkeys.design.capability.sidebarFilter.search.label",searchPlaceholder:"monkeys.design.capability.sidebarFilter.search.placeholder",groupLabel:"monkeys.design.capability.sidebarFilter.group.label",optionLabel:"monkeys.design.capability.sidebarFilter.option.label"}),gallery:Object.freeze({itemTitle:"monkeys.design.capability.gallery.item.title",itemActivate:"monkeys.design.capability.gallery.item.activate",loadMore:"monkeys.design.capability.gallery.pagination.loadMore",loadingMore:"monkeys.design.capability.gallery.pagination.loadingMore"}),ontologyNavigator:Object.freeze({empty:"monkeys.design.capability.ontologyNavigator.empty",moreActions:"monkeys.design.capability.ontologyNavigator.moreActions",searchLabel:"monkeys.design.capability.ontologyNavigator.search.label",searchPlaceholder:"monkeys.design.capability.ontologyNavigator.search.placeholder",loadMore:"monkeys.design.capability.ontologyNavigator.loadMore",loadingMore:"monkeys.design.capability.ontologyNavigator.loadingMore"}),dataToolbar:Object.freeze({addRow:"monkeys.design.capability.dataToolbar.addRow",blankRowName:"monkeys.design.capability.dataToolbar.blankRowName",searchPlaceholder:"monkeys.design.capability.dataToolbar.search.placeholder",selection:"monkeys.design.capability.dataToolbar.selection",gallerySettings:"monkeys.design.capability.dataToolbar.gallerySettings",galleryPresentation:{visibleColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.visibleColumns",coverField:"monkeys.design.capability.dataToolbar.galleryPresentation.coverField",autoDetect:"monkeys.design.capability.dataToolbar.galleryPresentation.autoDetect",cardDensity:"monkeys.design.capability.dataToolbar.galleryPresentation.cardDensity",cardColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.cardColumns",detailColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.detailColumns",fieldVisibility:"monkeys.design.capability.dataToolbar.galleryPresentation.fieldVisibility",fieldLimit:"monkeys.design.capability.dataToolbar.galleryPresentation.fieldLimit",fieldLimitHint:"monkeys.design.capability.dataToolbar.galleryPresentation.fieldLimitHint",layout:"monkeys.design.capability.dataToolbar.galleryPresentation.layout",compact:"monkeys.design.capability.dataToolbar.galleryPresentation.compact",comfortable:"monkeys.design.capability.dataToolbar.galleryPresentation.comfortable",detailed:"monkeys.design.capability.dataToolbar.galleryPresentation.detailed",autoColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.autoColumns",columns:"monkeys.design.capability.dataToolbar.galleryPresentation.columns",bentoColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.bentoColumns",topLimit:"monkeys.design.capability.dataToolbar.galleryPresentation.topLimit",allFields:"monkeys.design.capability.dataToolbar.galleryPresentation.allFields",adaptiveGrid:"monkeys.design.capability.dataToolbar.galleryPresentation.adaptiveGrid",masonry:"monkeys.design.capability.dataToolbar.galleryPresentation.masonry",rail:"monkeys.design.capability.dataToolbar.galleryPresentation.rail"}}),ontologyTable:Object.freeze({label:"monkeys.design.capability.ontologyTable.label",empty:"monkeys.design.capability.ontologyTable.empty",activate:"monkeys.design.capability.ontologyTable.activate",select:"monkeys.design.capability.ontologyTable.select",sort:"monkeys.design.capability.ontologyTable.sort",loadMore:"monkeys.design.capability.ontologyTable.loadMore",loadingMore:"monkeys.design.capability.ontologyTable.loadingMore"}),cardGrid:Object.freeze({empty:"monkeys.design.capability.cardGrid.empty",activate:"monkeys.design.capability.cardGrid.activate",select:"monkeys.design.capability.cardGrid.select",loadMore:"monkeys.design.capability.cardGrid.loadMore",loadingMore:"monkeys.design.capability.cardGrid.loadingMore"}),pagination:Object.freeze({label:"monkeys.design.capability.pagination.label",loadMore:"monkeys.design.capability.pagination.loadMore",loadingMore:"monkeys.design.capability.pagination.loadingMore"}),recordDetail:Object.freeze({edit:"monkeys.design.capability.recordDetail.edit",close:"monkeys.design.capability.recordDetail.close",attachments:"monkeys.design.capability.recordDetail.attachments",previous:"monkeys.design.capability.recordDetail.previous",next:"monkeys.design.capability.recordDetail.next"}),recordEditor:Object.freeze({submit:"monkeys.design.capability.recordEditor.submit",cancel:"monkeys.design.capability.recordEditor.cancel",mapping:Object.freeze({targets:"monkeys.design.capability.recordEditor.mapping.targets",sources:"monkeys.design.capability.recordEditor.mapping.sources",actions:"monkeys.design.capability.recordEditor.mapping.actions",addTarget:"monkeys.design.capability.recordEditor.mapping.addTarget",removeTarget:"monkeys.design.capability.recordEditor.mapping.removeTarget",addSource:"monkeys.design.capability.recordEditor.mapping.addSource",removeSource:"monkeys.design.capability.recordEditor.mapping.removeSource",search:"monkeys.design.capability.recordEditor.mapping.search",emptyTargets:"monkeys.design.capability.recordEditor.mapping.emptyTargets",emptySources:"monkeys.design.capability.recordEditor.mapping.emptySources"}),optionsEmpty:"monkeys.design.capability.recordEditor.options.empty",optionsLoadMore:"monkeys.design.capability.recordEditor.options.loadMore",optionsLoadingMore:"monkeys.design.capability.recordEditor.options.loadingMore",jsonInvalid:"monkeys.design.capability.recordEditor.json.invalid"}),recordHistory:Object.freeze({title:"monkeys.design.capability.recordHistory.title",close:"monkeys.design.capability.recordHistory.close",commits:"monkeys.design.capability.recordHistory.commits",loadMore:"monkeys.design.capability.recordHistory.loadMore",loadingMore:"monkeys.design.capability.recordHistory.loadingMore",selected:"monkeys.design.capability.recordHistory.selected",diff:"monkeys.design.capability.recordHistory.diff",field:"monkeys.design.capability.recordHistory.diff.field",before:"monkeys.design.capability.recordHistory.diff.before",after:"monkeys.design.capability.recordHistory.diff.after",noDiff:"monkeys.design.capability.recordHistory.diff.empty",reason:"monkeys.design.capability.recordHistory.reason",reasonDescription:"monkeys.design.capability.recordHistory.reason.description",rollback:"monkeys.design.capability.recordHistory.rollback",delete:"monkeys.design.capability.recordHistory.delete"}),ontologyManagement:Object.freeze({title:"monkeys.design.capability.ontologyManagement.title",markerDescription:"monkeys.design.capability.ontologyManagement.markerDescription",create:"monkeys.design.capability.ontologyManagement.create",edit:"monkeys.design.capability.ontologyManagement.edit",delete:"monkeys.design.capability.ontologyManagement.delete",import:"monkeys.design.capability.ontologyManagement.import",description:"monkeys.design.capability.ontologyManagement.description",submit:"monkeys.design.capability.ontologyManagement.submit",cancel:"monkeys.design.capability.ontologyManagement.cancel",displayName:"monkeys.design.capability.ontologyManagement.field.displayName",label:"monkeys.design.capability.ontologyManagement.field.label",templateKey:"monkeys.design.capability.ontologyManagement.field.templateKey",templateName:"monkeys.design.capability.ontologyManagement.field.templateName",templateDescription:"monkeys.design.capability.ontologyManagement.field.templateDescription",templateTags:"monkeys.design.capability.ontologyManagement.field.templateTags",templateTagsDescription:"monkeys.design.capability.ontologyManagement.field.templateTagsDescription",creatorCurrentUser:"monkeys.design.capability.ontologyManagement.field.creatorCurrentUser",creatorCurrentUserShort:"monkeys.design.capability.ontologyManagement.field.creatorCurrentUserShort",defaultViewTemplatesDescription:"monkeys.design.capability.ontologyManagement.field.defaultViewTemplatesDescription",defaultViewTemplate:"monkeys.design.capability.ontologyManagement.field.defaultViewTemplate",defaultSelectedView:"monkeys.design.capability.ontologyManagement.field.defaultSelectedView",tagFilterEnabled:"monkeys.design.capability.ontologyManagement.field.tagFilterEnabled",tagFilterEmpty:"monkeys.design.capability.ontologyManagement.field.tagFilterEmpty",tableColumnsSummary:"monkeys.design.capability.ontologyManagement.field.tableColumnsSummary",editTemplateDetails:"monkeys.design.capability.ontologyManagement.field.editTemplateDetails",editTemplateDetailsDescription:"monkeys.design.capability.ontologyManagement.field.editTemplateDetailsDescription",filterInclude:"monkeys.design.capability.ontologyManagement.filter.include",filterAny:"monkeys.design.capability.ontologyManagement.filter.any",filterExclude:"monkeys.design.capability.ontologyManagement.filter.exclude",filterNoTags:"monkeys.design.capability.ontologyManagement.filter.noTags",filterSearch:"monkeys.design.capability.ontologyManagement.filter.search",filterTagGroup:"monkeys.design.capability.ontologyManagement.filter.tagGroup",filterAllGroups:"monkeys.design.capability.ontologyManagement.filter.allGroups",filterAddOrGroup:"monkeys.design.capability.ontologyManagement.filter.addOrGroup",filterNoOrGroups:"monkeys.design.capability.ontologyManagement.filter.noOrGroups",filterOrGroup:"monkeys.design.capability.ontologyManagement.filter.orGroup",filterDeleteGroup:"monkeys.design.capability.ontologyManagement.filter.deleteGroup",filterSupplement:"monkeys.design.capability.ontologyManagement.filter.supplement",filterConfigureSupplement:"monkeys.design.capability.ontologyManagement.filter.configureSupplement",filterClearSupplement:"monkeys.design.capability.ontologyManagement.filter.clearSupplement",filterSupplementMode:"monkeys.design.capability.ontologyManagement.filter.supplementMode",filterModeOr:"monkeys.design.capability.ontologyManagement.filter.modeOr",filterModeAnd:"monkeys.design.capability.ontologyManagement.filter.modeAnd",filterModeCombination:"monkeys.design.capability.ontologyManagement.filter.modeCombination",filterRequiredAll:"monkeys.design.capability.ontologyManagement.filter.requiredAll",filterRequiredAny:"monkeys.design.capability.ontologyManagement.filter.requiredAny",filterAdvancedRules:"monkeys.design.capability.ontologyManagement.filter.advancedRules",filterAdvancedRulesDescription:"monkeys.design.capability.ontologyManagement.filter.advancedRulesDescription",filterRemoveAdvancedRules:"monkeys.design.capability.ontologyManagement.filter.removeAdvancedRules",defaultViewTemplates:"monkeys.design.capability.ontologyManagement.field.defaultViewTemplates",markerExists:"monkeys.design.capability.ontologyManagement.field.markerExists",targetOntology:"monkeys.design.capability.ontologyManagement.field.targetOntology",deleteTemplate:"monkeys.design.capability.ontologyManagement.action.deleteTemplate",deleteMarker:"monkeys.design.capability.ontologyManagement.action.deleteMarker",createDefaultViews:"monkeys.design.capability.ontologyManagement.action.createDefaultViews",techpackPreset:"monkeys.design.capability.ontologyManagement.action.techpackPreset",trendPreset:"monkeys.design.capability.ontologyManagement.action.trendPreset",addTemplate:"monkeys.design.capability.ontologyManagement.action.addTemplate",noTemplates:"monkeys.design.capability.ontologyManagement.empty.noTemplates",descriptionField:"monkeys.design.capability.ontologyManagement.field.description",bodyKind:"monkeys.design.capability.ontologyManagement.field.bodyKind",visible:"monkeys.design.capability.ontologyManagement.field.visible",kernelReadAllTeams:"monkeys.design.capability.ontologyManagement.field.kernelReadAllTeams",publicRead:"monkeys.design.capability.ontologyManagement.field.publicRead",publicWrite:"monkeys.design.capability.ontologyManagement.field.publicWrite",customizeViewModes:"monkeys.design.capability.ontologyManagement.field.customizeViewModes",availableViewModes:"monkeys.design.capability.ontologyManagement.field.availableViewModes",defaultViewMode:"monkeys.design.capability.ontologyManagement.field.defaultViewMode",viewModeTable:"monkeys.design.capability.ontologyManagement.field.viewMode.table",viewModeCard:"monkeys.design.capability.ontologyManagement.field.viewMode.card",viewModeGallery:"monkeys.design.capability.ontologyManagement.field.viewMode.gallery",viewModeTrendMatrix:"monkeys.design.capability.ontologyManagement.field.viewMode.trendMatrix",selectAtLeastOneViewMode:"monkeys.design.capability.ontologyManagement.field.validation.selectAtLeastOneViewMode",profile:"monkeys.design.capability.ontologyManagement.field.profile",sourceOntologyId:"monkeys.design.capability.ontologyManagement.field.sourceOntologyId",viewId:"monkeys.design.capability.ontologyManagement.field.viewId",name:"monkeys.design.capability.ontologyManagement.field.name",targetTeamId:"monkeys.design.capability.ontologyManagement.field.targetTeamId",currentTeamId:"monkeys.design.capability.ontologyManagement.field.currentTeamId",count:"monkeys.design.capability.ontologyManagement.field.count",blankRowLabel:"monkeys.design.capability.ontologyManagement.field.blankRowLabel",indexMode:"monkeys.design.capability.ontologyManagement.field.indexMode",parentId:"monkeys.design.capability.ontologyManagement.field.parentId",viewType:"monkeys.design.capability.ontologyManagement.field.viewType.label",viewTypeFilter:"monkeys.design.capability.ontologyManagement.field.viewType.filter",viewTypeContainer:"monkeys.design.capability.ontologyManagement.field.viewType.container",sourceContainerViewId:"monkeys.design.capability.ontologyManagement.field.sourceContainerViewId",displayConfig:"monkeys.design.capability.ontologyManagement.field.displayConfig",sort:"monkeys.design.capability.ontologyManagement.field.sort",managedFileId:"monkeys.design.capability.ontologyManagement.field.managedFileId",mode:"monkeys.design.capability.ontologyManagement.field.mode",columnId:"monkeys.design.capability.ontologyManagement.field.columnId",containerViewId:"monkeys.design.capability.ontologyManagement.field.containerViewId",type:"monkeys.design.capability.ontologyManagement.field.type",config:"monkeys.design.capability.ontologyManagement.field.config",scopeContainerViewId:"monkeys.design.capability.ontologyManagement.field.scopeContainerViewId",attached:"monkeys.design.capability.ontologyManagement.field.attached.label",attachedTrue:"monkeys.design.capability.ontologyManagement.field.attached.true",attachedFalse:"monkeys.design.capability.ontologyManagement.field.attached.false",pageSize:"monkeys.design.capability.ontologyManagement.field.pageSize",tagGroupIds:"monkeys.design.capability.ontologyManagement.field.tagGroupIds",featureColumnIds:"monkeys.design.capability.ontologyManagement.field.featureColumnIds",basicFieldIds:"monkeys.design.capability.ontologyManagement.field.basicFieldIds",columnType:"monkeys.design.capability.ontologyManagement.field.columnType.label",columnTypeFeature:"monkeys.design.capability.ontologyManagement.field.columnType.feature",columnTypePreview:"monkeys.design.capability.ontologyManagement.field.columnType.preview",featureColumnId:"monkeys.design.capability.ontologyManagement.field.featureColumnId",itemLimit:"monkeys.design.capability.ontologyManagement.field.itemLimit",shareOperation:"monkeys.design.capability.ontologyManagement.field.shareOperation.label",shareOperationUpsert:"monkeys.design.capability.ontologyManagement.field.shareOperation.upsert",shareOperationRevoke:"monkeys.design.capability.ontologyManagement.field.shareOperation.revoke",targetType:"monkeys.design.capability.ontologyManagement.field.targetType.label",targetTypeUser:"monkeys.design.capability.ontologyManagement.field.targetType.user",targetTypeTeam:"monkeys.design.capability.ontologyManagement.field.targetType.team",targetId:"monkeys.design.capability.ontologyManagement.field.targetId",permissions:"monkeys.design.capability.ontologyManagement.field.permissions",expiresAt:"monkeys.design.capability.ontologyManagement.field.expiresAt",actions:Object.freeze({"ontology-create":"monkeys.design.capability.ontologyManagement.action.ontologyCreate","ontology-update":"monkeys.design.capability.ontologyManagement.action.ontologyUpdate","ontology-delete":"monkeys.design.capability.ontologyManagement.action.ontologyDelete","ontology-marker":"monkeys.design.capability.ontologyManagement.action.ontologyMarker","ontology-default-views":"monkeys.design.capability.ontologyManagement.action.ontologyDefaultViews","ontology-snapshot":"monkeys.design.capability.ontologyManagement.action.ontologySnapshot","ontology-import-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportJsonl","ontology-import-records-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportRecordsJsonl","ontology-import-tag-relations-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportTagRelationsJsonl","ontology-import-text-column-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportTextColumnJsonl","ontology-import-json-column-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportJsonColumnJsonl","ontology-import-relation-column-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportRelationColumnJsonl","feature-column-create":"monkeys.design.capability.ontologyManagement.action.featureColumnCreate","feature-column-update":"monkeys.design.capability.ontologyManagement.action.featureColumnUpdate","feature-column-attachment-set":"monkeys.design.capability.ontologyManagement.action.featureColumnAttachmentSet","view-export-jsonl":"monkeys.design.capability.ontologyManagement.action.viewExportJsonl","feature-column-images-export":"monkeys.design.capability.ontologyManagement.action.featureColumnImagesExport","view-create":"monkeys.design.capability.ontologyManagement.action.viewCreate","view-detail":"monkeys.design.capability.ontologyManagement.action.viewDetail","view-convert-to-container":"monkeys.design.capability.ontologyManagement.action.viewConvertToContainer","view-edit-team":"monkeys.design.capability.ontologyManagement.action.viewEditTeam","view-insert-blank-rows":"monkeys.design.capability.ontologyManagement.action.viewInsertBlankRows","view-snapshot":"monkeys.design.capability.ontologyManagement.action.viewSnapshot","view-update":"monkeys.design.capability.ontologyManagement.action.viewUpdate","view-delete":"monkeys.design.capability.ontologyManagement.action.viewDelete","view-share":"monkeys.design.capability.ontologyManagement.action.viewShare"})}),ontologyTrendMatrix:Object.freeze({label:"monkeys.design.capability.ontologyTrendMatrix.label",row:"monkeys.design.capability.ontologyTrendMatrix.row",window:"monkeys.design.capability.ontologyTrendMatrix.window",select:"monkeys.design.capability.ontologyTrendMatrix.select"}),dataContextBar:Object.freeze({label:"monkeys.design.capability.dataContextBar.label",filter:"monkeys.design.capability.dataContextBar.filter",searchLabel:"monkeys.design.capability.dataContextBar.search.label",searchPlaceholder:"monkeys.design.capability.dataContextBar.search.placeholder",clear:"monkeys.design.capability.dataContextBar.clear",clearAll:"monkeys.design.capability.dataContextBar.clearAll",tagFilterClear:"monkeys.design.capability.dataContextBar.tagFilterClear",filterDescription:"monkeys.design.capability.dataContextBar.filterDescription",tagScope:"monkeys.design.capability.dataContextBar.tagScope",currentViewTags:"monkeys.design.capability.dataContextBar.currentViewTags",allTags:"monkeys.design.capability.dataContextBar.allTags",panelFilter:"monkeys.design.capability.dataContextBar.panelFilter",searchTags:"monkeys.design.capability.dataContextBar.searchTags",noAvailableTags:"monkeys.design.capability.dataContextBar.noAvailableTags",loadedAll:"monkeys.design.capability.dataContextBar.loadedAll",refreshTags:"monkeys.design.capability.dataContextBar.refreshTags",confirm:"monkeys.design.capability.dataContextBar.confirm",tagPanel:"monkeys.design.capability.dataContextBar.tagPanel",selectPanel:"monkeys.design.capability.dataContextBar.selectPanel",noPanels:"monkeys.design.capability.dataContextBar.noPanels",noPanelGroups:"monkeys.design.capability.dataContextBar.noPanelGroups",singleSelect:"monkeys.design.capability.dataContextBar.singleSelect",multiSelect:"monkeys.design.capability.dataContextBar.multiSelect",defaultGroup:"monkeys.design.capability.dataContextBar.defaultGroup",more:"monkeys.design.capability.dataContextBar.more",dashboardContext:"monkeys.design.capability.dataContextBar.dashboardContext",contextCount:"monkeys.design.capability.dataContextBar.contextCount",fields:Object.freeze({search:"monkeys.design.capability.dataContextBar.field.search",tagIds:"monkeys.design.capability.dataContextBar.field.tagIds",tagGroupIds:"monkeys.design.capability.dataContextBar.field.tagGroupIds",timeFrom:"monkeys.design.capability.dataContextBar.field.timeFrom",timeTo:"monkeys.design.capability.dataContextBar.field.timeTo",clickedField:"monkeys.design.capability.dataContextBar.field.clickedField",clickedValue:"monkeys.design.capability.dataContextBar.field.clickedValue",dashboardDrilldown:"monkeys.design.capability.dataContextBar.field.dashboardDrilldown"})})}),DESIGN_CAPABILITY_NATIVE_ANALYTICS_MESSAGES=Object.freeze({"en-US":Object.freeze({"monkeys.design.capability.agentConversation.label":"Agent conversation","monkeys.design.capability.agentConversation.description":"Persistent conversation through an authenticated Agent runtime.","monkeys.design.capability.reportDocument.label":"Report document","monkeys.design.capability.reportDocument.description":"Read a projected report with managed media.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.markerDescription]:"Configure the ontology marker and default views.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.label]:"Marker name",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.targetOntology]:"Target ontology",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateKey]:"Template key",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateName]:"View name",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateDescription]:"View description",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateTags]:"Tag filters",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateTagsDescription]:"Choose the tags included, matched, or excluded by this view.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.creatorCurrentUser]:"Only show records created by the current user",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.creatorCurrentUserShort]:"Current user",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplatesDescription]:"Configure default views and their filters for this ontology.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplate]:"Default view template",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultSelectedView]:"Open by default",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tagFilterEnabled]:"Tag filters configured",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tagFilterEmpty]:"No tag filters",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tableColumnsSummary]:"{count} table columns configured",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.editTemplateDetails]:"Edit view template",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.editTemplateDetailsDescription]:"Configure the name, order, and filters.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplates]:"Default view templates",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.markerExists]:"Ontology marker exists",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterInclude]:"Include all",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAny]:"Match any",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterExclude]:"Exclude",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterNoTags]:"No matching tags",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSearch]:"Search tags",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterTagGroup]:"Tag group",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAllGroups]:"All tag groups",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAddOrGroup]:"Add OR group",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterNoOrGroups]:"No OR groups",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterOrGroup]:"OR group {n}",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterDeleteGroup]:"Delete group",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSupplement]:"Supplement rules for {name}",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterConfigureSupplement]:"Configure supplement rules",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterClearSupplement]:"Clear supplement rules",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSupplementMode]:"Match mode",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeOr]:"Any condition (OR)",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeAnd]:"All conditions (AND)",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeCombination]:"Combined conditions",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRequiredAll]:"Require all tags",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRequiredAny]:"Require at least one tag",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAdvancedRules]:"{count} advanced rules",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAdvancedRulesDescription]:"Existing rules are preserved unless explicitly removed.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRemoveAdvancedRules]:"Remove advanced rules",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.deleteTemplate]:"Delete template",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.deleteMarker]:"Delete marker",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.createDefaultViews]:"Create default views",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.addTemplate]:"Add view template",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.noTemplates]:"No default view templates",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["ontology-marker"]]:"Set ontology marker",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-detail"]]:"View details",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-convert-to-container"]]:"Convert to enhanced view",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-edit-team"]]:"Edit view team",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-insert-blank-rows"]]:"Insert blank rows",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-snapshot"]]:"Import to new Ontology",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.targetTeamId]:"Target team ID",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.currentTeamId]:"Current team ID",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.count]:"Row count",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.blankRowLabel]:"Blank row label","monkeys.design.capability.pagination.previous":"Previous page","monkeys.design.capability.pagination.next":"Next page","monkeys.design.iconPicker.confirm":"Confirm","monkeys.design.iconPicker.categories":"Categories","monkeys.design.iconPicker.icon":"Icon","monkeys.design.iconPicker.choose":"Choose an icon","monkeys.design.iconPicker.current":"Current icon","monkeys.design.iconPicker.reset":"Reset","monkeys.design.iconPicker.search":"Search icons","monkeys.design.iconPicker.category":"Category","monkeys.design.iconPicker.background":"Background color","monkeys.design.iconPicker.upload":"Upload icon","monkeys.design.iconPicker.uploadFailed":"Icon upload failed","monkeys.design.iconPicker.loading":"Loading icons","monkeys.design.iconPicker.retry":"Retry","monkeys.design.iconPicker.empty":"No matching icons","monkeys.design.iconPicker.close":"Close","monkeys.design.iconPicker.emoji":"Emoji","monkeys.design.iconPicker.catalogFailed":"Unable to load icons","monkeys.design.emojiPanel.loading":"Loading emoji","monkeys.design.emojiPanel.unavailable":"Unable to load emoji","monkeys.design.capability.choicePicker.label":"Choice picker","monkeys.design.capability.choicePicker.description":"Search and select a paginated collection.","monkeys.design.capability.runtimeTerminal.status":"Terminal","monkeys.design.capability.runtimeTerminal.waiting":"Connecting to terminal\u2026","monkeys.design.capability.recordEditor.add":"Add item","monkeys.design.capability.recordEditor.remove":"Remove item","monkeys.design.capability.recordEditor.moveUp":"Move up","monkeys.design.capability.recordEditor.moveDown":"Move down","monkeys.design.capability.recordEditor.reset":"Reset","monkeys.design.capability.imageUpload.sizeHint":"One image, up to {{size}} MB","monkeys.design.capability.imageUpload.title":"Click or drag an image here","monkeys.design.capability.imageUpload.hint":"Paste an image or image link","monkeys.design.capability.imageUpload.paste":"Paste from clipboard","monkeys.design.capability.imageUpload.replace":"Replace image","monkeys.design.capability.imageUpload.clipboardUnavailable":"Clipboard access is unavailable. Paste with your keyboard or choose a file.","monkeys.design.capability.imageUpload.clipboardEmpty":"No image or image link was found in the clipboard.","monkeys.design.capability.filePicker.label":"Choose file","monkeys.design.capability.mediaDraft.choose":"Add images","monkeys.design.capability.mediaDraft.hint":"Up to {count} images, {size} MB each. Uploaded when you save.","monkeys.design.capability.mediaDraft.replace":"Replace","monkeys.design.capability.mediaDraft.preview":"Preview image","monkeys.design.capability.mediaDraft.previewPrevious":"Previous image","monkeys.design.capability.mediaDraft.previewNext":"Next image","monkeys.design.capability.mediaDraft.count":"Too many images. Remove an image before adding more.","monkeys.design.capability.mediaDraft.type":"Choose image files.","monkeys.design.capability.mediaDraft.size":"An image is empty or exceeds the allowed size.","monkeys.design.capability.mediaDraft.failed":"Images could not be selected. Try again.","monkeys.design.capability.mediaDraft.unavailable":"Preview unavailable","monkeys.design.capability.mediaDraft.previous":"Move image earlier","monkeys.design.capability.mediaDraft.next":"Move image later","monkeys.design.capability.mediaDraft.remove":"Remove","monkeys.design.capability.filePicker.description":"Select a local file for a governed action.","monkeys.design.capability.filePicker.cancel":"Clear file","monkeys.design.capability.filePicker.tooLarge":"The file exceeds the allowed size.","monkeys.design.capability.filePicker.invalidType":"Choose a supported file type.","monkeys.design.capability.filePicker.registrationFailed":"The file could not be selected. Try again.","monkeys.design.capability.recordEditor.date.invalid":"Enter a valid date and time within the allowed range.","monkeys.design.capability.recordEditor.month.choose":"Choose year and month","monkeys.design.capability.recordEditor.month.previous":"Previous year or group of years","monkeys.design.capability.recordEditor.month.next":"Next year or group of years","monkeys.design.capability.recordEditor.month.clear":"Clear","monkeys.design.capability.recordEditor.clear":"Clear","monkeys.design.capability.recordEditor.notSet":"Not set","monkeys.design.capability.recordEditor.noOptions":"No matching options","monkeys.design.capability.recordEditor.pick":"Choose","monkeys.design.capability.recordEditor.selectionSummary":"Selected: {{count}}","monkeys.design.capability.recordEditor.sections":"Form sections","monkeys.design.capability.recordEditor.secretKeep":"Keep existing","monkeys.design.capability.recordEditor.treeReorderFailed":"Could not save the order. Reload the list and try again.","monkeys.design.capability.recordEditor.secretMode":"{field} update mode","monkeys.design.capability.recordEditor.secretReplace":"Replace","monkeys.design.capability.recordEditor.secretClear":"Clear","monkeys.design.capability.recordEditor.mapping.targets":"Targets","monkeys.design.capability.recordEditor.mapping.sources":"Sources","monkeys.design.capability.recordEditor.mapping.actions":"Mapping actions","monkeys.design.capability.recordEditor.mapping.addTarget":"Add target","monkeys.design.capability.recordEditor.mapping.removeTarget":"Remove target","monkeys.design.capability.recordEditor.mapping.addSource":"Add source","monkeys.design.capability.recordEditor.mapping.removeSource":"Remove source","monkeys.design.capability.recordEditor.mapping.search":"Search sources","monkeys.design.capability.recordEditor.mapping.emptyTargets":"No targets","monkeys.design.capability.recordEditor.mapping.emptySources":"No sources assigned","monkeys.design.capability.recordEditor.mapping.groupCount":"{count} grouped targets","monkeys.design.capability.recordEditor.mapping.memberCount":"({count})","monkeys.design.capability.recordEditor.mapping.newTarget":"Enter target name","monkeys.design.capability.recordEditor.mapping.rename":"Target name","monkeys.design.capability.recordEditor.mapping.unnamed":"Unnamed target","monkeys.design.capability.recordEditor.mapping.incomplete":"Enter a name and assign at least one source before saving.","monkeys.design.capability.recordEditor.mapping.deleteConfirmation":"Delete \u201C{name}\u201D?","monkeys.design.capability.recordEditor.mapping.confirmDelete":"Delete","monkeys.design.capability.recordEditor.mapping.cancel":"Cancel","monkeys.design.capability.recordEditor.mapping.selectTarget":"Select a target on the left first","monkeys.design.capability.recordEditor.mapping.sourceTabs":"Source list","monkeys.design.capability.recordEditor.mapping.assigned":"Included ({count})","monkeys.design.capability.recordEditor.mapping.available":"Available ({count})","monkeys.design.capability.recordEditor.mapping.selectVisible":"Select current list","monkeys.design.capability.recordEditor.mapping.selected":"{count} selected","monkeys.design.capability.recordEditor.mapping.noMatches":"No matches","monkeys.design.capability.recordEditor.mapping.noAvailable":"No available sources","monkeys.design.capability.recordEditor.mapping.customSource":"Add custom source","monkeys.design.capability.recordEditor.mapping.addCustom":"Add custom source","monkeys.design.capability.recordEditor.mapping.add":"Add","monkeys.design.capability.recordEditor.mapping.addHint":"Add selected sources to this target","monkeys.design.capability.recordEditor.mapping.removeHint":"Remove selected sources from this target","monkeys.design.capability.recordEditor.mapping.currentTarget":"Current target: {name}","monkeys.design.capability.recordEditor.mapping.invalid":"The mapping is invalid.","monkeys.design.capability.recordEditor.mapping.invalidName":"Enter a valid name.","monkeys.design.capability.recordEditor.mapping.alreadyAssigned":"This source belongs to another target.","monkeys.design.capability.recordEditor.mapping.unavailable":"This source is unavailable.","monkeys.design.capability.recordEditor.mapping.added":"Added {count} sources to \u201C{name}\u201D","monkeys.design.capability.recordEditor.mapping.removed":"Removed {count} sources from \u201C{name}\u201D","monkeys.design.capability.recordEditor.mapping.deleted":"Deleted \u201C{name}\u201D",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.inspect]:"Inspect observation","monkeys.design.capability.summaryChart.label":"Summary chart","monkeys.design.capability.dataToolbar.moreActions":"More actions","monkeys.design.capability.summaryChart.description":"Compare numeric series and category totals.",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.noPoints]:"No observations in this range",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.point]:"{xLabel} {x}, {yLabel} {y}",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.label]:"Numeric series",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.description]:"Inspect numeric observations with range zoom and expansion.",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.start]:"Range start",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.end]:"Range end",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.reset]:"Reset range",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.expand]:"Expand chart",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.close]:"Close chart",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.resizeSidebar]:"Resize sidebar",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.collapseSidebar]:"Collapse sidebar",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.expandSidebar]:"Expand sidebar",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.resizeAside]:"Resize detail panel",[DESIGN_CAPABILITY_I18N_KEYS.ontologyNavigator.moreActions]:"More actions",[DESIGN_CAPABILITY_I18N_KEYS.dataToolbar.addRow]:"Add row",[DESIGN_CAPABILITY_I18N_KEYS.dataToolbar.blankRowName]:"Blank Row",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.label]:"Ontology trend matrix",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.row]:"Row",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.window]:"Visible rows {start}-{end} of {total}",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.select]:"Select {row}, {column}, {value}",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.label]:"Data filters and drilldown context",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.filter]:"Filters",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchLabel]:"Search data",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchPlaceholder]:"Search",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.clear]:"Clear",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.clearAll]:"Clear all",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagFilterClear]:"Clear",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.filterDescription]:"Filter assets by selecting tags via tag panel or manual search.",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagScope]:"Tag scope",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.currentViewTags]:"Current view",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.allTags]:"All tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.panelFilter]:"Panel filter",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchTags]:"Search tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noAvailableTags]:"No available tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.loadedAll]:"All loaded",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.refreshTags]:"Refresh tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.confirm]:"Confirm",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagPanel]:"Tag panel",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.selectPanel]:"Select a panel",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noPanels]:"No available panels",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noPanelGroups]:"No tag groups in this panel",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.singleSelect]:"Single select",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.multiSelect]:"Multi select",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.defaultGroup]:"Default group",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.more]:"+{count} more",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.dashboardContext]:"Dashboard context",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.contextCount]:"{count} context values",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.search]:"Search",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.tagIds]:"Tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.tagGroupIds]:"Tag groups",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.timeFrom]:"From",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.timeTo]:"To",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.clickedField]:"Drilldown field",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.clickedValue]:"Drilldown value",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.dashboardDrilldown]:"Dashboard drilldown"}),"zh-CN":Object.freeze({"monkeys.design.capability.agentConversation.label":"\u667A\u80FD\u4F53\u5BF9\u8BDD","monkeys.design.capability.agentConversation.description":"\u901A\u8FC7\u5DF2\u8BA4\u8BC1\u667A\u80FD\u4F53\u8FD0\u884C\u65F6\u8FDB\u884C\u6301\u4E45\u5316\u5BF9\u8BDD\u3002","monkeys.design.capability.reportDocument.label":"\u62A5\u544A\u6587\u6863","monkeys.design.capability.reportDocument.description":"\u9605\u8BFB\u5305\u542B\u6258\u7BA1\u5A92\u4F53\u7684\u62A5\u544A\u6295\u5F71\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.markerDescription]:"\u914D\u7F6E\u4ED3\u5E93\u6807\u8BB0\u548C\u9ED8\u8BA4\u89C6\u56FE\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.label]:"\u6807\u8BB0\u540D\u79F0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.targetOntology]:"\u76EE\u6807\u4ED3\u5E93",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateKey]:"\u6A21\u677F\u6807\u8BC6",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateName]:"\u89C6\u56FE\u540D\u79F0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateDescription]:"\u89C6\u56FE\u63CF\u8FF0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateTags]:"\u6807\u7B7E\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateTagsDescription]:"\u8BBE\u7F6E\u8BE5\u89C6\u56FE\u5305\u542B\u3001\u5339\u914D\u6216\u6392\u9664\u7684\u6807\u7B7E\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.creatorCurrentUser]:"\u4EC5\u663E\u793A\u5F53\u524D\u7528\u6237\u521B\u5EFA\u7684\u6570\u636E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.creatorCurrentUserShort]:"\u5F53\u524D\u7528\u6237",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplatesDescription]:"\u4E3A\u4ED3\u5E93\u914D\u7F6E\u9ED8\u8BA4\u89C6\u56FE\u53CA\u5176\u7B5B\u9009\u6761\u4EF6\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplate]:"\u9ED8\u8BA4\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultSelectedView]:"\u9ED8\u8BA4\u6253\u5F00",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tagFilterEnabled]:"\u5DF2\u914D\u7F6E\u6807\u7B7E\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tagFilterEmpty]:"\u672A\u914D\u7F6E\u6807\u7B7E\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tableColumnsSummary]:"\u5DF2\u914D\u7F6E {count} \u4E2A\u8868\u683C\u5217",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.editTemplateDetails]:"\u7F16\u8F91\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.editTemplateDetailsDescription]:"\u914D\u7F6E\u540D\u79F0\u3001\u6392\u5E8F\u548C\u7B5B\u9009\u6761\u4EF6\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplates]:"\u9ED8\u8BA4\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.markerExists]:"\u5DF2\u6709\u4ED3\u5E93\u6807\u8BB0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterInclude]:"\u5168\u90E8\u5305\u542B",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAny]:"\u5339\u914D\u4EFB\u610F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterExclude]:"\u6392\u9664",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterNoTags]:"\u6CA1\u6709\u5339\u914D\u7684\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSearch]:"\u641C\u7D22\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterTagGroup]:"\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAllGroups]:"\u5168\u90E8\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAddOrGroup]:"\u6DFB\u52A0\u6216\u6761\u4EF6\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterNoOrGroups]:"\u6682\u65E0\u6216\u6761\u4EF6\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterOrGroup]:"\u6216\u6761\u4EF6\u7EC4 {n}",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterDeleteGroup]:"\u5220\u9664\u6761\u4EF6\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSupplement]:"{name} \u7684\u8865\u5145\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterConfigureSupplement]:"\u914D\u7F6E\u8865\u5145\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterClearSupplement]:"\u6E05\u9664\u8865\u5145\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSupplementMode]:"\u5339\u914D\u65B9\u5F0F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeOr]:"\u4EFB\u610F\u6761\u4EF6\uFF08OR\uFF09",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeAnd]:"\u5168\u90E8\u6761\u4EF6\uFF08AND\uFF09",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeCombination]:"\u7EC4\u5408\u6761\u4EF6",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRequiredAll]:"\u5FC5\u987B\u5305\u542B\u5168\u90E8\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRequiredAny]:"\u81F3\u5C11\u5305\u542B\u4E00\u4E2A\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAdvancedRules]:"{count} \u9879\u9AD8\u7EA7\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAdvancedRulesDescription]:"\u5DF2\u6709\u89C4\u5219\u5C06\u4FDD\u7559\uFF0C\u9664\u975E\u660E\u786E\u79FB\u9664\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRemoveAdvancedRules]:"\u79FB\u9664\u9AD8\u7EA7\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.deleteTemplate]:"\u5220\u9664\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.deleteMarker]:"\u5220\u9664\u4ED3\u5E93\u6807\u8BB0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.createDefaultViews]:"\u521B\u5EFA\u9ED8\u8BA4\u89C6\u56FE",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.addTemplate]:"\u6DFB\u52A0\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.noTemplates]:"\u6682\u65E0\u9ED8\u8BA4\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["ontology-marker"]]:"\u8BBE\u7F6E\u4ED3\u5E93\u6807\u8BB0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-detail"]]:"\u67E5\u770B\u8BE6\u60C5",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-convert-to-container"]]:"\u8F6C\u5316\u4E3A\u589E\u5F3A\u89C6\u56FE",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-edit-team"]]:"\u4FEE\u6539\u89C6\u56FE\u56E2\u961F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-insert-blank-rows"]]:"\u63D2\u5165\u7A7A\u767D\u884C",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-snapshot"]]:"\u5BFC\u5165\u5230\u65B0 Ontology",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.targetTeamId]:"\u76EE\u6807\u56E2\u961F ID",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.currentTeamId]:"\u5F53\u524D\u56E2\u961F ID",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.count]:"\u884C\u6570",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.blankRowLabel]:"\u7A7A\u767D\u884C\u540D\u79F0","monkeys.design.capability.pagination.previous":"\u4E0A\u4E00\u9875","monkeys.design.capability.pagination.next":"\u4E0B\u4E00\u9875","monkeys.design.iconPicker.confirm":"\u786E\u8BA4","monkeys.design.iconPicker.categories":"\u5206\u7C7B","monkeys.design.iconPicker.icon":"\u56FE\u6807","monkeys.design.iconPicker.choose":"\u9009\u62E9\u56FE\u6807","monkeys.design.iconPicker.current":"\u5F53\u524D\u56FE\u6807","monkeys.design.iconPicker.reset":"\u91CD\u7F6E","monkeys.design.iconPicker.search":"\u641C\u7D22\u56FE\u6807","monkeys.design.iconPicker.category":"\u5206\u7C7B","monkeys.design.iconPicker.background":"\u80CC\u666F\u989C\u8272","monkeys.design.iconPicker.upload":"\u4E0A\u4F20\u56FE\u6807","monkeys.design.iconPicker.uploadFailed":"\u56FE\u6807\u4E0A\u4F20\u5931\u8D25","monkeys.design.iconPicker.loading":"\u6B63\u5728\u52A0\u8F7D\u56FE\u6807","monkeys.design.iconPicker.retry":"\u91CD\u8BD5","monkeys.design.iconPicker.empty":"\u6CA1\u6709\u5339\u914D\u7684\u56FE\u6807","monkeys.design.iconPicker.close":"\u5173\u95ED","monkeys.design.iconPicker.emoji":"\u8868\u60C5","monkeys.design.iconPicker.catalogFailed":"\u65E0\u6CD5\u52A0\u8F7D\u56FE\u6807","monkeys.design.emojiPanel.loading":"\u6B63\u5728\u52A0\u8F7D\u8868\u60C5","monkeys.design.emojiPanel.unavailable":"\u65E0\u6CD5\u52A0\u8F7D\u8868\u60C5","monkeys.design.capability.choicePicker.label":"\u9009\u9879\u9009\u62E9\u5668","monkeys.design.capability.choicePicker.description":"\u641C\u7D22\u5E76\u9009\u62E9\u5206\u9875\u96C6\u5408\u4E2D\u7684\u9009\u9879\u3002","monkeys.design.capability.summaryChart.label":"\u6C47\u603B\u56FE\u8868","monkeys.design.capability.dataToolbar.moreActions":"\u66F4\u591A\u64CD\u4F5C","monkeys.design.capability.summaryChart.description":"\u6BD4\u8F83\u6570\u503C\u5E8F\u5217\u4E0E\u5206\u7C7B\u6C47\u603B\u3002","monkeys.design.capability.runtimeTerminal.status":"\u7EC8\u7AEF","monkeys.design.capability.runtimeTerminal.waiting":"\u6B63\u5728\u8FDE\u63A5\u7EC8\u7AEF\u2026","monkeys.design.capability.recordEditor.add":"\u6DFB\u52A0\u6761\u76EE","monkeys.design.capability.recordEditor.remove":"\u5220\u9664\u6761\u76EE","monkeys.design.capability.recordEditor.moveUp":"\u4E0A\u79FB","monkeys.design.capability.recordEditor.moveDown":"\u4E0B\u79FB","monkeys.design.capability.recordEditor.reset":"\u91CD\u7F6E","monkeys.design.capability.imageUpload.sizeHint":"\u5355\u5F20\u56FE\u7247\uFF0C\u6700\u5927 {{size}} MB","monkeys.design.capability.imageUpload.title":"\u70B9\u51FB\u6216\u62D6\u62FD\u4E0A\u4F20\u56FE\u7247","monkeys.design.capability.imageUpload.hint":"\u652F\u6301\u7C98\u8D34\u56FE\u7247\u6216\u56FE\u7247\u94FE\u63A5","monkeys.design.capability.imageUpload.paste":"\u4ECE\u526A\u8D34\u677F\u7C98\u8D34","monkeys.design.capability.imageUpload.replace":"\u66FF\u6362\u56FE\u7247","monkeys.design.capability.imageUpload.clipboardUnavailable":"\u65E0\u6CD5\u8BFB\u53D6\u526A\u8D34\u677F\uFF0C\u8BF7\u4F7F\u7528\u952E\u76D8\u7C98\u8D34\u6216\u9009\u62E9\u6587\u4EF6\u3002","monkeys.design.capability.imageUpload.clipboardEmpty":"\u526A\u8D34\u677F\u4E2D\u6CA1\u6709\u56FE\u7247\u6216\u56FE\u7247\u94FE\u63A5\u3002","monkeys.design.capability.filePicker.label":"\u9009\u62E9\u6587\u4EF6","monkeys.design.capability.mediaDraft.choose":"\u6DFB\u52A0\u56FE\u7247","monkeys.design.capability.mediaDraft.hint":"\u6BCF\u5F20\u4E0D\u8D85\u8FC7 {size} MB\uFF0C\u6700\u591A {count} \u5F20\u3002\u70B9\u51FB\u300C\u4FDD\u5B58\u300D\u540E\u4E0A\u4F20\u3002","monkeys.design.capability.mediaDraft.replace":"\u66FF\u6362","monkeys.design.capability.mediaDraft.preview":"\u9884\u89C8\u56FE\u7247","monkeys.design.capability.mediaDraft.previewPrevious":"\u4E0A\u4E00\u5F20","monkeys.design.capability.mediaDraft.previewNext":"\u4E0B\u4E00\u5F20","monkeys.design.capability.mediaDraft.count":"\u56FE\u7247\u6570\u91CF\u8D85\u8FC7\u9650\u5236\uFF0C\u8BF7\u79FB\u9664\u540E\u518D\u6DFB\u52A0\u3002","monkeys.design.capability.mediaDraft.type":"\u8BF7\u9009\u62E9\u56FE\u7247\u6587\u4EF6\u3002","monkeys.design.capability.mediaDraft.size":"\u56FE\u7247\u4E3A\u7A7A\u6216\u5927\u5C0F\u8D85\u8FC7\u5141\u8BB8\u8303\u56F4\u3002","monkeys.design.capability.mediaDraft.failed":"\u65E0\u6CD5\u9009\u62E9\u56FE\u7247\uFF0C\u8BF7\u91CD\u8BD5\u3002","monkeys.design.capability.mediaDraft.unavailable":"\u6682\u65E0\u9884\u89C8","monkeys.design.capability.mediaDraft.previous":"\u524D\u79FB\u56FE\u7247","monkeys.design.capability.mediaDraft.next":"\u540E\u79FB\u56FE\u7247","monkeys.design.capability.mediaDraft.remove":"\u79FB\u9664","monkeys.design.capability.filePicker.description":"\u9009\u62E9\u672C\u5730\u6587\u4EF6\u4EE5\u6267\u884C\u53D7\u6CBB\u7406\u64CD\u4F5C\u3002","monkeys.design.capability.filePicker.cancel":"\u6E05\u9664\u6587\u4EF6","monkeys.design.capability.filePicker.tooLarge":"\u6587\u4EF6\u5927\u5C0F\u8D85\u8FC7\u5141\u8BB8\u8303\u56F4\u3002","monkeys.design.capability.filePicker.invalidType":"\u8BF7\u9009\u62E9\u652F\u6301\u7684\u6587\u4EF6\u7C7B\u578B\u3002","monkeys.design.capability.filePicker.registrationFailed":"\u65E0\u6CD5\u9009\u62E9\u8BE5\u6587\u4EF6\uFF0C\u8BF7\u91CD\u8BD5\u3002","monkeys.design.capability.recordEditor.date.invalid":"\u8BF7\u8F93\u5165\u5141\u8BB8\u8303\u56F4\u5185\u7684\u6709\u6548\u65E5\u671F\u548C\u65F6\u95F4\u3002","monkeys.design.capability.recordEditor.month.choose":"\u9009\u62E9\u5E74\u6708","monkeys.design.capability.recordEditor.month.previous":"\u4E0A\u4E00\u5E74\u6216\u4E0A\u4E00\u7EC4\u5E74\u4EFD","monkeys.design.capability.recordEditor.month.next":"\u4E0B\u4E00\u5E74\u6216\u4E0B\u4E00\u7EC4\u5E74\u4EFD","monkeys.design.capability.recordEditor.month.clear":"\u6E05\u9664","monkeys.design.capability.recordEditor.clear":"\u6E05\u9664","monkeys.design.capability.recordEditor.notSet":"\u672A\u8BBE\u7F6E","monkeys.design.capability.recordEditor.noOptions":"\u6682\u65E0\u5339\u914D\u9009\u9879","monkeys.design.capability.recordEditor.pick":"\u9009\u62E9","monkeys.design.capability.recordEditor.selectionSummary":"\u5DF2\u9009 {{count}} \u9879","monkeys.design.capability.recordEditor.sections":"\u8868\u5355\u5206\u7C7B","monkeys.design.capability.recordEditor.secretKeep":"\u4FDD\u7559\u73B0\u6709\u503C","monkeys.design.capability.recordEditor.treeReorderFailed":"\u987A\u5E8F\u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u91CD\u65B0\u52A0\u8F7D\u5217\u8868\u540E\u91CD\u8BD5\u3002","monkeys.design.capability.recordEditor.secretMode":"{field} \u66F4\u65B0\u65B9\u5F0F","monkeys.design.capability.recordEditor.secretReplace":"\u66FF\u6362","monkeys.design.capability.recordEditor.secretClear":"\u6E05\u9664","monkeys.design.capability.recordEditor.mapping.targets":"\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.sources":"\u539F\u59CB\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.actions":"\u5F52\u5E76\u64CD\u4F5C","monkeys.design.capability.recordEditor.mapping.addTarget":"\u65B0\u589E\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.removeTarget":"\u5220\u9664\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.addSource":"\u52A0\u5165\u5F53\u524D\u5F52\u5E76","monkeys.design.capability.recordEditor.mapping.removeSource":"\u79FB\u51FA\u5F53\u524D\u5F52\u5E76","monkeys.design.capability.recordEditor.mapping.search":"\u641C\u7D22\u539F\u59CB\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.emptyTargets":"\u6682\u65E0\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.emptySources":"\u5F53\u524D\u5F52\u5E76\u90E8\u95E8\u6682\u65E0\u539F\u59CB\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.groupCount":"\u5171 {count} \u4E2A\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.memberCount":"\uFF08{count} \u4E2A\uFF09","monkeys.design.capability.recordEditor.mapping.newTarget":"\u8F93\u5165\u5F52\u5E76\u90E8\u95E8\u540D\u79F0","monkeys.design.capability.recordEditor.mapping.rename":"\u5F52\u5E76\u90E8\u95E8\u540D\u79F0","monkeys.design.capability.recordEditor.mapping.unnamed":"\u672A\u547D\u540D\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.incomplete":"\u8BF7\u586B\u5199\u540D\u79F0\u5E76\u81F3\u5C11\u52A0\u5165\u4E00\u4E2A\u539F\u59CB\u90E8\u95E8\u540E\u4FDD\u5B58\u3002","monkeys.design.capability.recordEditor.mapping.deleteConfirmation":"\u786E\u5B9A\u5220\u9664\u201C{name}\u201D\u5417\uFF1F","monkeys.design.capability.recordEditor.mapping.confirmDelete":"\u786E\u8BA4\u5220\u9664","monkeys.design.capability.recordEditor.mapping.cancel":"\u53D6\u6D88","monkeys.design.capability.recordEditor.mapping.selectTarget":"\u8BF7\u5148\u9009\u62E9\u5DE6\u4FA7\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.sourceTabs":"\u539F\u59CB\u90E8\u95E8\u5217\u8868","monkeys.design.capability.recordEditor.mapping.assigned":"\u5DF2\u5305\u542B\uFF08{count}\uFF09","monkeys.design.capability.recordEditor.mapping.available":"\u53EF\u6DFB\u52A0\uFF08{count}\uFF09","monkeys.design.capability.recordEditor.mapping.selectVisible":"\u5168\u9009\u5F53\u524D\u5217\u8868","monkeys.design.capability.recordEditor.mapping.selected":"\u5DF2\u9009 {count} \u4E2A","monkeys.design.capability.recordEditor.mapping.noMatches":"\u6CA1\u6709\u5339\u914D\u7684\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.noAvailable":"\u6CA1\u6709\u53EF\u6DFB\u52A0\u7684\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.customSource":"\u6DFB\u52A0\u81EA\u5B9A\u4E49\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.addCustom":"\u6DFB\u52A0\u81EA\u5B9A\u4E49\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.add":"\u6DFB\u52A0","monkeys.design.capability.recordEditor.mapping.addHint":"\u5C06\u9009\u4E2D\u7684\u90E8\u95E8\u52A0\u5165\u5F53\u524D\u5F52\u5E76","monkeys.design.capability.recordEditor.mapping.removeHint":"\u5C06\u9009\u4E2D\u7684\u90E8\u95E8\u79FB\u51FA\u5F53\u524D\u5F52\u5E76","monkeys.design.capability.recordEditor.mapping.currentTarget":"\u5F53\u524D\u5F52\u5E76\uFF1A{name}","monkeys.design.capability.recordEditor.mapping.invalid":"\u5F52\u5E76\u914D\u7F6E\u65E0\u6548\uFF0C\u8BF7\u68C0\u67E5\u540D\u79F0\u548C\u90E8\u95E8\u5F52\u5C5E\u3002","monkeys.design.capability.recordEditor.mapping.invalidName":"\u8BF7\u8F93\u5165\u6709\u6548\u540D\u79F0\u3002","monkeys.design.capability.recordEditor.mapping.alreadyAssigned":"\u8BE5\u90E8\u95E8\u5DF2\u7ECF\u5F52\u5165\u5176\u4ED6\u5F52\u5E76\u90E8\u95E8\u3002","monkeys.design.capability.recordEditor.mapping.unavailable":"\u8BE5\u90E8\u95E8\u5F53\u524D\u4E0D\u53EF\u6DFB\u52A0\u3002","monkeys.design.capability.recordEditor.mapping.added":"\u5DF2\u5411\u201C{name}\u201D\u52A0\u5165 {count} \u4E2A\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.removed":"\u5DF2\u4ECE\u201C{name}\u201D\u79FB\u51FA {count} \u4E2A\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.deleted":"\u5DF2\u5220\u9664\u201C{name}\u201D",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.inspect]:"\u67E5\u770B\u89C2\u6D4B\u70B9",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.noPoints]:"\u6B64\u8303\u56F4\u5185\u6CA1\u6709\u89C2\u6D4B\u70B9",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.point]:"{xLabel} {x}, {yLabel} {y}",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.label]:"\u6570\u503C\u5E8F\u5217",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.description]:"\u67E5\u770B\u6570\u503C\u89C2\u6D4B\uFF0C\u7F29\u653E\u8303\u56F4\u5E76\u653E\u5927\u56FE\u8868\u3002",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.start]:"\u8303\u56F4\u8D77\u70B9",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.end]:"\u8303\u56F4\u7EC8\u70B9",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.reset]:"\u91CD\u7F6E\u8303\u56F4",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.expand]:"\u653E\u5927\u56FE\u8868",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.close]:"\u5173\u95ED\u56FE\u8868",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.resizeSidebar]:"\u8C03\u6574\u4FA7\u8FB9\u680F\u5BBD\u5EA6",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.collapseSidebar]:"\u6536\u8D77\u4FA7\u8FB9\u680F",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.expandSidebar]:"\u5C55\u5F00\u4FA7\u8FB9\u680F",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.resizeAside]:"\u8C03\u6574\u8BE6\u60C5\u4FA7\u8FB9\u680F\u5BBD\u5EA6",[DESIGN_CAPABILITY_I18N_KEYS.ontologyNavigator.moreActions]:"\u66F4\u591A\u64CD\u4F5C",[DESIGN_CAPABILITY_I18N_KEYS.dataToolbar.addRow]:"\u6DFB\u52A0\u4E00\u884C",[DESIGN_CAPABILITY_I18N_KEYS.dataToolbar.blankRowName]:"\u7A7A\u767D\u884C",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.label]:"\u672C\u4F53\u8D8B\u52BF\u77E9\u9635",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.row]:"\u884C",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.window]:"\u5F53\u524D\u663E\u793A\u7B2C {start}-{end} \u884C\uFF0C\u5171 {total} \u884C",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.select]:"\u9009\u62E9 {row}\u3001{column}\u3001{value}",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.label]:"\u6570\u636E\u7B5B\u9009\u4E0E\u94BB\u53D6\u4E0A\u4E0B\u6587",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.filter]:"\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchLabel]:"\u641C\u7D22\u6570\u636E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchPlaceholder]:"\u641C\u7D22",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.clear]:"\u6E05\u9664",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.clearAll]:"\u5168\u90E8\u6E05\u9664",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagFilterClear]:"\u6E05\u7A7A",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.filterDescription]:"\u901A\u8FC7\u6807\u7B7E\u9762\u677F\u6216\u624B\u52A8\u641C\u7D22\uFF0C\u9009\u62E9\u7528\u4E8E\u8FC7\u6EE4\u8D44\u4EA7\u7684 Tag\u3002",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagScope]:"\u6807\u7B7E\u8303\u56F4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.currentViewTags]:"\u5F53\u524D\u89C6\u56FE",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.allTags]:"\u5168\u90E8\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.panelFilter]:"\u9762\u677F\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchTags]:"\u641C\u7D22\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noAvailableTags]:"\u6682\u65E0\u53EF\u7528\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.loadedAll]:"\u5DF2\u52A0\u8F7D\u5168\u90E8",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.refreshTags]:"\u5237\u65B0\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.confirm]:"\u786E\u5B9A",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagPanel]:"\u6807\u7B7E\u9762\u677F",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.selectPanel]:"\u9009\u62E9\u6807\u7B7E\u9762\u677F",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noPanels]:"\u6682\u65E0\u53EF\u7528\u6807\u7B7E\u9762\u677F",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noPanelGroups]:"\u5F53\u524D\u9762\u677F\u6CA1\u6709\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.singleSelect]:"\u5355\u9009",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.multiSelect]:"\u591A\u9009",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.defaultGroup]:"\u9ED8\u8BA4\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.more]:"\u53E6\u6709 {count} \u9879",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.dashboardContext]:"\u4EEA\u8868\u76D8\u4E0A\u4E0B\u6587",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.contextCount]:"{count} \u9879\u4E0A\u4E0B\u6587",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.search]:"\u641C\u7D22",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.tagIds]:"\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.tagGroupIds]:"\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.timeFrom]:"\u5F00\u59CB\u65F6\u95F4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.timeTo]:"\u7ED3\u675F\u65F6\u95F4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.clickedField]:"\u94BB\u53D6\u5B57\u6BB5",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.clickedValue]:"\u94BB\u53D6\u503C",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.dashboardDrilldown]:"\u4EEA\u8868\u76D8\u94BB\u53D6"})});var DEFAULT_TOAST_DURATION=5200;function isToastInput(input){return !input||typeof input!="object"||React8.isValidElement(input)?false:"title"in input||"description"in input||"variant"in input}function isEmptyToastContent(value){return value==null||typeof value=="string"&&!value.trim()}function normalizeToastInput(input,variant,options2){let{description:_description,...baseOptions}=options2??{};return isToastInput(input)?{...baseOptions,...input,variant:input.variant??variant}:{...baseOptions,title:input,variant}}function emitToast(input){let{title,description,duration,variant="info",...options2}=input,message=isEmptyToastContent(title)?description:title;if(isEmptyToastContent(message))return;let descriptionValue=!isEmptyToastContent(description)&&description!==message?description:void 0,sonnerOptions={...options2,description:descriptionValue,duration:duration??DEFAULT_TOAST_DURATION};switch(variant){case "error":return sonner.toast.error(message,sonnerOptions);case "warning":return sonner.toast.warning(message,sonnerOptions);case "success":return sonner.toast.success(message,sonnerOptions);default:return sonner.toast(message,sonnerOptions)}}var toast=Object.assign((message,options2)=>sonner.toast(message,options2),{show:emitToast,error:(input,options2)=>emitToast(normalizeToastInput(input,"error",options2)),warning:(input,options2)=>emitToast(normalizeToastInput(input,"warning",options2)),success:(input,options2)=>emitToast(normalizeToastInput(input,"success",options2)),info:(input,options2)=>emitToast(normalizeToastInput(input,"info",options2)),message:sonner.toast.message,promise:sonner.toast.promise,dismiss:sonner.toast.dismiss,loading:sonner.toast.loading,custom:sonner.toast.custom,getHistory:sonner.toast.getHistory,getToasts:sonner.toast.getToasts});var STATUS_KEYS=DESIGN_CAPABILITY_I18N_KEYS.status,CapabilityStatus=({kind,translate,code,titleKey,descriptionKey,actions,onRetry,presentation,loadingLabelKey,emptyLabelKey,errorLabelKey})=>{let keys=STATUS_KEYS[kind],values=code?{code}:void 0,title=translate(titleKey??keys.title,values),description=translate(descriptionKey??keys.description,values),resolvedActions=actions??(kind==="error"&&onRetry?jsxRuntime.jsx(BaseButton,{label:translate(STATUS_KEYS.retry),onClick:onRetry}):void 0),legacyErrorToastMessage=presentation==="legacy-data-explorer"&&kind==="error"&&errorLabelKey?translate(errorLabelKey):void 0;return React8.useEffect(()=>{legacyErrorToastMessage&&toast.error(legacyErrorToastMessage);},[legacyErrorToastMessage]),presentation==="legacy-data-explorer"?jsxRuntime.jsx("div",{className:"col-span-full flex h-full min-h-0 flex-1 flex-col overflow-hidden","data-presentation":"legacy-data-explorer-status",children:kind==="loading"?jsxRuntime.jsx(BaseLoadingState,{variant:"skeleton",className:"min-h-64",title:loadingLabelKey?translate(loadingLabelKey):title}):jsxRuntime.jsx("div",{className:"flex h-64 items-center justify-center",children:jsxRuntime.jsx("p",{className:"text-muted-foreground",children:translate(emptyLabelKey??DESIGN_CAPABILITY_I18N_KEYS.status.empty.title)})})}):kind==="loading"?jsxRuntime.jsx(BaseLoadingState,{variant:"skeleton",title}):kind==="empty"?jsxRuntime.jsx(BaseEmptyState,{title:emptyLabelKey?translate(emptyLabelKey):title,description:emptyLabelKey?void 0:description,actions:resolvedActions}):jsxRuntime.jsx(BaseSystemState,{kind:kind==="forbidden"?"permission":"error",title,description,actions:resolvedActions})};var isJsonObject=value=>typeof value=="object"&&value!==null&&!Array.isArray(value);var providerStateFromNode=node=>node.state==="loading"?{kind:"loading",model:node.renderModel}:node.state==="empty"?{kind:"empty",model:node.renderModel}:node.state==="error"?{kind:"error",model:node.renderModel,code:"capability.render.error"}:{kind:"ready",model:node.renderModel},errorCode=error=>typeof error=="object"&&error!==null&&"code"in error&&typeof error.code=="string"&&error.code.length<=128&&/^[a-z0-9]+(?:[._-][a-z0-9]+)*$/i.test(error.code)?error.code:"capability.provider.failed",CapabilityNodeBoundary=({context,entry,provider,renderer,binding,access,translate,onIntent,onPerformanceEvidence,now})=>{let{node}=context,[attempt,setAttempt]=React8.useState(0),[providerState,setProviderState]=React8.useState(()=>providerStateFromNode(node)),generationRef=React8.useRef(0),performanceEvidenceRef=React8.useRef(onPerformanceEvidence);React8.useEffect(()=>{performanceEvidenceRef.current=onPerformanceEvidence;},[onPerformanceEvidence]),React8.useEffect(()=>{let generation=generationRef.current+1;if(generationRef.current=generation,!access.allowed||!context.queryEnabled||!provider.load){setProviderState(providerStateFromNode(node));return}let controller=new AbortController,startedAt=now(),settled=false;setProviderState({kind:"loading",model:node.renderModel});let report=(outcome,durationMs)=>performanceEvidenceRef.current?.({capabilityId:entry.manifest.id,providerId:provider.providerId,nodeId:node.nodeId,durationMs,budgetMs:entry.provider.performance.budgetMs,outcome}),fail=(error,durationMs)=>{controller.signal.aborted||generationRef.current!==generation||(settled=true,setProviderState({kind:"error",model:node.renderModel,code:errorCode(error)}),report("error",durationMs));},finish=(result,durationMs)=>{if(controller.signal.aborted||generationRef.current!==generation)return;if(!isJsonObject(result?.model)||result.empty!==void 0&&typeof result.empty!="boolean"){fail({code:"capability.provider.invalid-result"},durationMs);return}settled=true;let budgetMs=entry.provider.performance.budgetMs,outcome=budgetMs!==void 0&&durationMs>budgetMs?"budget-exceeded":result.empty?"empty":"success";setProviderState(result.empty?{kind:"empty",model:result.model}:{kind:"ready",model:result.model}),report(outcome,durationMs);},pending;try{pending=Promise.resolve(provider.load({node,manifest:entry.manifest,descriptor:entry.provider,binding,signal:controller.signal}));}catch(error){pending=Promise.reject(error);}return pending.then(result=>finish(result,Math.max(0,now()-startedAt)),error=>fail(error,Math.max(0,now()-startedAt))),()=>{controller.abort(),settled||report("cancelled",Math.max(0,now()-startedAt));}},[access.allowed,attempt,binding,context.queryEnabled,entry,node,now,provider]);let retry=React8.useCallback(()=>setAttempt(value=>value+1),[]),emitIntent=React8.useCallback((type,payload={})=>{onIntent?.({type,payload},node);},[node,onIntent]);return access.allowed?providerState.kind==="loading"?jsxRuntime.jsx(CapabilityStatus,{kind:"loading",translate}):providerState.kind==="empty"?jsxRuntime.jsx(CapabilityStatus,{kind:"empty",translate}):providerState.kind==="error"?jsxRuntime.jsx(CapabilityStatus,{kind:"error",code:providerState.code,translate,onRetry:provider.load?retry:void 0}):renderer({...context,entry,binding,model:providerState.model,translate,access,loading:false,empty:false,retry,emitIntent}):jsxRuntime.jsx(CapabilityStatus,{kind:"forbidden",code:access.reasonCode??"capability.access.forbidden",translate})},defaultResolveBinding=(node,bindings)=>node.dataContextRef?bindings[node.dataContextRef.id]:void 0,defaultResolveAccess=(node,access)=>node.accessRef?access[node.accessRef.id]??{allowed:false,reasonCode:"capability.access.unresolved"}:{allowed:true},defaultNow=()=>typeof performance>"u"?Date.now():performance.now(),CapabilityRuntimeHost=({tree,runtime,translate,bindings={},access={},resolveBinding=defaultResolveBinding,resolveAccess=defaultResolveAccess,onIntent,onPerformanceEvidence,now=defaultNow,renderMissingCapability,elementForNode,...props})=>{let renderNode=React8.useMemo(()=>context=>{try{let registration=runtime.resolve(context.node,tree.product);return jsxRuntime.jsx(CapabilityNodeBoundary,{context,...registration,binding:resolveBinding(context.node,bindings),access:resolveAccess(context.node,access),translate,onIntent,onPerformanceEvidence,now})}catch(error){return renderMissingCapability?.(context,error)??jsxRuntime.jsx(CapabilityStatus,{kind:"error",code:"capability.registration.missing",translate})}},[access,bindings,now,onIntent,onPerformanceEvidence,renderMissingCapability,resolveAccess,resolveBinding,runtime,translate,tree]),resolvedElementForNode=React8.useCallback(node=>elementForNode?elementForNode(node):node.kind==="shell"?"div":node.kind==="navigation"?"nav":node.kind==="detail"?"aside":node.kind==="record"?"article":"section",[elementForNode]);return jsxRuntime.jsx(RenderTreeRuntimeHost,{...props,tree,renderNode,elementForNode:resolvedElementForNode})};var AgentConversationModelSchema=zod.z.object({agentId:zod.z.string().min(1).max(256),sessionId:zod.z.string().min(1).max(256).optional(),title:zod.z.string(),modelId:zod.z.string(),mode:zod.z.enum(["chat","work"]),knowledgeGroundingEnabled:zod.z.boolean(),welcomeVariant:zod.z.enum(["default","trend"]).optional(),recommendationsEnabled:zod.z.boolean().optional(),recommendationModelId:zod.z.string().max(256).optional(),sessionSnapshot:monkeys.AgentSessionSnapshotSchema.optional()}).strict(),AGENT_CONVERSATION_MODEL_SCHEMA=zod.z.toJSONSchema(AgentConversationModelSchema,{io:"input"});function AgentConversationSkeleton({label}){return jsxRuntime.jsxs("div",{role:"status","aria-label":label,"aria-busy":"true","data-conversation-loading":"true",className:"monkeys-conversation-skeleton flex h-full min-h-0 w-full flex-col overflow-hidden",style:{boxSizing:"border-box",padding:"var(--monkeys-conversation-padding, var(--global-spacing))",gap:"var(--monkeys-conversation-gap, var(--global-spacing))"},children:[jsxRuntime.jsxs("div",{"aria-hidden":"true",className:"mx-auto flex w-full min-h-0 flex-1 flex-col",style:{boxSizing:"border-box",maxWidth:"var(--monkeys-conversation-max-width, 64rem)",gap:"var(--monkeys-conversation-gap, var(--global-spacing))",paddingInline:"var(--monkeys-conversation-content-px, var(--global-spacing-sm))",paddingBlock:"var(--monkeys-conversation-content-py, var(--global-spacing))"},children:[jsxRuntime.jsx(BaseSkeleton,{variant:"block",className:"h-12 w-1/3 shrink-0 self-end"}),jsxRuntime.jsxs("div",{className:"flex w-2/3 flex-col gap-3",children:[jsxRuntime.jsx(BaseSkeleton,{variant:"circle",className:"size-8"}),jsxRuntime.jsx(BaseSkeleton,{className:"w-full"}),jsxRuntime.jsx(BaseSkeleton,{className:"w-4/5"}),jsxRuntime.jsx(BaseSkeleton,{className:"w-3/5"})]})]}),jsxRuntime.jsx("div",{"aria-hidden":"true","data-slot":"composer",className:"mx-auto w-full shrink-0",style:{boxSizing:"border-box",maxWidth:"var(--monkeys-conversation-max-width, 64rem)",padding:"var(--monkeys-conversation-composer-padding, 0px)"},children:jsxRuntime.jsx(BaseSkeleton,{variant:"block",className:"h-32 w-full",style:{borderRadius:"var(--radius)"}})})]})}var AgentConversationRuntimeContext=React8.createContext(null);function AgentConversationCapabilityRenderer(context){let Runtime=React8.useContext(AgentConversationRuntimeContext);if(!context.access.allowed)return jsxRuntime.jsx(CapabilityStatus,{kind:"forbidden",translate:context.translate});let parsed=AgentConversationModelSchema.safeParse(context.model);if(context.loading&&!parsed.success)return jsxRuntime.jsx(AgentConversationSkeleton,{label:context.translate(DESIGN_CAPABILITY_I18N_KEYS.status.loading.title)});if(!parsed.success||!Runtime)return jsxRuntime.jsx(CapabilityStatus,{kind:"error",code:"AGENT_CONVERSATION_RUNTIME_UNAVAILABLE",translate:context.translate});let model=parsed.data;return jsxRuntime.jsx("div",{className:"contents","aria-busy":context.loading===true,...context.loading?{inert:""}:{},children:jsxRuntime.jsx(Runtime,{...model,sessionId:model.sessionId??"",readOnly:context.readOnly===true,onSessionStarted:context.readOnly?void 0:sessionId=>context.emitIntent("sessionStarted",{sessionId}),onContinue:context.readOnly||context.loading?void 0:(messageId,runId)=>context.emitIntent("continue",{messageId,runId},{awaitCompletion:true})},model.agentId)})}var VERSION="1",OWNER="monkeys-design",PRODUCT_CONTEXTS=monkeys.ProductContextSchema.options,TOKEN_REFS=["semantic.color.background","semantic.color.foreground","semantic.color.border","semantic.spacing.global","semantic.radius.base"],GLOBAL_VISIBILITY="global",SCHEMA_VERSION=1,REVISION=1,i18n=(english,chinese)=>({defaultLocale:"en-US",values:{"en-US":english,"zh-CN":chinese}}),stableRef=(kind,id9)=>({kind,id:id9,ownerRepo:OWNER,visibility:GLOBAL_VISIBILITY}),revisionRef=(kind,id9,content,revision=REVISION)=>({...stableRef(kind,id9),revision,schemaVersion:SCHEMA_VERSION,contentHash:monkeys.canonicalContentHash(content)}),JSON_SCHEMA_DIALECT="https://json-schema.org/draft/2020-12/schema",jsonSchema=(id9,definition)=>({$schema:JSON_SCHEMA_DIALECT,$id:id9,...definition}),schemaDocumentEntry=(id9,document2,revision=REVISION)=>({schemaRevisionRef:revisionRef("schema",id9,document2,revision),document:document2}),schemaDocumentKey=({schemaRevisionRef})=>`${schemaRevisionRef.ownerRepo}:${schemaRevisionRef.id}@${schemaRevisionRef.revision}:${schemaRevisionRef.contentHash}`,createDesignCapabilityEntry=({id:id9,version=VERSION,runtimeContractVersion="1",providerVersion=version,revision=REVISION,authoringRevision=revision,schemaRevision=REVISION,rendererKey,kind,category,labelKey,descriptionKey,authoringLabel,authoringDescription,inputPort,schemaRef,schemaDocument,compatibility=[],slots,loading="eager",sideEffects=[],supportedPageTypes,supportedSurfaces,authoringSurfaces=monkeys.ProductSurfaceSchema.options,propertySchema={type:"object",additionalProperties:false,properties:{}},uiSchema={order:[]},propertyFields=[],outputPorts=[],frameOwner="host",virtualized=false,budgetMs,editorEligible=true})=>{let providerId=`${id9}.provider`,providerRef={kind:"view-provider",id:providerId,version:providerVersion,ownerRepo:OWNER},manifest={contract:"CapabilityManifest",id:id9,capabilityVersion:version,ownerRepo:OWNER,kind,displayName:labelKey,description:descriptionKey,ports:{inputs:[{name:inputPort,schemaRef,required:true,multiple:false}],outputs:outputPorts.map(({name,schemaRef:schemaRef2})=>({name,schemaRef:schemaRef2,required:false,multiple:false}))},runtime:{providerBindings:[{providerRef,productContexts:[...PRODUCT_CONTEXTS],priority:100}],loading,stateOwner:"host",sideEffects:[...sideEffects]},placement:{surfaces:[...supportedSurfaces],slots:[...slots],variants:[],tokenRefs:[...TOKEN_REFS]},accessibility:{keyboardModel:`${id9}.keyboard`,focusModel:`${id9}.focus`,labelContract:`${id9}.labels`},observability:{eventNamespace:id9,metrics:["load.duration","load.outcome"],evidenceRefs:["render-node.evidenceRef"],...budgetMs===void 0?{}:{performanceBudgetMs:budgetMs}}},provider={contract:"ViewProviderDescriptor",runtimeContractVersion,providerId,providerVersion,ownerRepo:OWNER,capabilityRef:{kind:"capability",id:id9,version,ownerRepo:OWNER},rendererKey,renderModelSchemaRef:schemaRef,loading,stateOwner:"host",supportedPageTypes:[...supportedPageTypes],supportedSurfaces,frameOwner,sideEffects:[...sideEffects],...sideEffects.length>0?{sideEffectAdapterRef:{kind:"side-effect-adapter",id:`${id9}.side-effects`,version,ownerRepo:OWNER}}:{},lifecycle:{preserveMount:frameOwner==="provider",preserveScroll:frameOwner==="provider",focusModel:`${id9}.focus`},performance:{lazy:loading!=="eager",virtualized,...budgetMs===void 0?{}:{budgetMs}}},editor={eligible:editorEligible,category,labelKey,descriptionKey,slots,ontologyCompatibility:compatibility},propertySchemaDocument=jsonSchema(`${id9}.properties`,propertySchema),uiSchemaDocument=jsonSchema(`${id9}.properties.ui`,{type:"object",additionalProperties:false,properties:{order:{type:"array",items:{type:"string"}}},required:["order"],default:uiSchema}),propertySchemaEntry=schemaDocumentEntry(`${id9}.properties`,propertySchemaDocument,schemaRevision),uiSchemaEntry=schemaDocumentEntry(`${id9}.properties.ui`,uiSchemaDocument,schemaRevision),inputSchemaEntry=schemaDocumentEntry(schemaRef,schemaDocument,schemaRevision),outputSchemaEntries=outputPorts.map(port2=>schemaDocumentEntry(port2.schemaRef,port2.schemaDocument,schemaRevision)),schemaDocuments=[propertySchemaEntry,uiSchemaEntry,inputSchemaEntry,...outputSchemaEntries].filter((entry,index,entries)=>entries.findIndex(candidate=>schemaDocumentKey(candidate)===schemaDocumentKey(entry))===index),unsignedRegistration={runtimeContractVersion,capabilityRevisionRef:revisionRef("capability",id9,manifest,revision),providerRevisionRef:revisionRef("view-provider",providerId,provider,Number(providerVersion)),propertySchemaRevisionRef:propertySchemaEntry.schemaRevisionRef,uiSchemaRevisionRef:uiSchemaEntry.schemaRevisionRef,editorEligible,category,label:authoringLabel,description:authoringDescription,supportedSurfaces:[...authoringSurfaces],allowedSlots:[...slots],allowedParentCapabilityRefs:[],allowedChildCapabilityRefs:[],inputPorts:manifest.ports.inputs.map(port2=>({name:port2.name,schemaRevisionRef:inputSchemaEntry.schemaRevisionRef,required:port2.required,multiple:port2.multiple})),outputPorts:manifest.ports.outputs.map(port2=>{let schema2=outputSchemaEntries.find(entry=>entry.schemaRevisionRef.id===port2.schemaRef);if(!schema2)throw new TypeError(`Missing output schema document for ${port2.schemaRef}.`);return {name:port2.name,schemaRevisionRef:schema2.schemaRevisionRef,required:port2.required,multiple:port2.multiple}}),allowedSideEffects:[...sideEffects],ontologyRequirements:compatibility.map(requirement=>({inputPort:requirement.inputPort,renderModelSchemaRevisionRef:inputSchemaEntry.schemaRevisionRef,modes:[requirement.mode],requiredPermissionCodes:[]})),actionRequirements:outputPorts.map(port2=>({outputPort:port2.name,allowedCommandKinds:[...port2.allowedCommandKinds??[]],requiredPermissionCodes:[...port2.requiredPermissionCodes??[]]})),propertyFields:propertyFields.map(field=>({...field})),schemaDocuments},sourceContentHash=monkeys.canonicalContentHash(unsignedRegistration),declarativeRegistration=monkeys.DeclarativeCapabilityAuthoringRegistrationSchema.parse({...unsignedRegistration,registrationRevisionRef:{...stableRef("design-capability-registration",`${id9}.authoring`),revision:authoringRevision,schemaVersion:SCHEMA_VERSION,contentHash:sourceContentHash},sourceContentHash});return {manifest,provider,editor,declarativeRegistration}};var AGENT_CONVERSATION_ENTRY=createDesignCapabilityEntry({id:"monkeys.design.agent-conversation",version:"2",revision:2,schemaRevision:2,rendererKey:"monkeys.design.renderer.agent-conversation",kind:"view",category:"content",labelKey:"monkeys.design.capability.agentConversation.label",descriptionKey:"monkeys.design.capability.agentConversation.description",authoringLabel:i18n("Agent conversation","\u667A\u80FD\u4F53\u5BF9\u8BDD"),authoringDescription:i18n("Persistent conversation through an authenticated Agent runtime.","\u901A\u8FC7\u5DF2\u8BA4\u8BC1\u667A\u80FD\u4F53\u8FD0\u884C\u65F6\u8FDB\u884C\u6301\u4E45\u5316\u5BF9\u8BDD\u3002"),inputPort:"model",schemaRef:"monkeys-design://agent-conversation/model/v1",schemaDocument:jsonSchema("monkeys-design://agent-conversation/model/v1",AGENT_CONVERSATION_MODEL_SCHEMA),slots:[],outputPorts:[{name:"sessionStarted",schemaRef:"monkeys-design://agent-conversation/session-started/v1",schemaDocument:jsonSchema("monkeys-design://agent-conversation/session-started/v1",{type:"object",additionalProperties:false,required:["sessionId"],properties:{sessionId:{type:"string",minLength:1,maxLength:256}}}),allowedCommandKinds:[]},{name:"continue",schemaRef:"monkeys-design://agent-conversation/continue/v1",schemaDocument:jsonSchema("monkeys-design://agent-conversation/continue/v1",{type:"object",additionalProperties:false,required:["messageId","runId"],properties:{messageId:{type:"string",minLength:1,maxLength:256},runId:{type:"string",minLength:1,maxLength:256}}}),allowedCommandKinds:["domain-command"]}],sideEffects:["network"],supportedPageTypes:["page","workspace"],supportedSurfaces:["page","workspace"]});var oneTimeValueAppearance={preset:"soft",density:"default",radius:"lg",border:"subtle",background:"soft"},maskOneTimeValue=value=>`${value.slice(0,3)}${"*".repeat(32)}${value.slice(-4)}`;function OneTimeValueDialog({open,title,description,valueLabel,readValue,clearValue,labels,onCopy,onClose}){let[visible,setVisible]=React8.useState(false);React8.useEffect(()=>(setVisible(false),clearValue),[clearValue]);let close=()=>{clearValue(),setVisible(false),onClose();},copy2=()=>{let current=readValue();current&&onCopy(current);};return jsxRuntime.jsx(BaseDialog,{appearance:oneTimeValueAppearance,open,onOpenChange:next=>{next||close();},title,description,closeLabel:labels.close,classNames:{panel:"sm:max-w-xl"},footer:jsxRuntime.jsx(BaseButton,{appearance:oneTimeValueAppearance,tone:"primary",label:labels.close,onClick:close}),children:jsxRuntime.jsx("div",{className:"grid gap-4 py-2",children:jsxRuntime.jsxs("div",{className:"rounded-md border border-border/70 bg-muted/40 p-3",children:[jsxRuntime.jsxs("div",{className:"mb-2 flex items-center justify-between gap-2",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium",children:valueLabel}),jsxRuntime.jsxs("div",{className:"flex gap-2",children:[jsxRuntime.jsx(BaseButton,{appearance:oneTimeValueAppearance,tone:"muted",iconOnly:true,icon:visible?jsxRuntime.jsx(lucideReact.EyeOff,{className:"h-4 w-4"}):jsxRuntime.jsx(lucideReact.Eye,{className:"h-4 w-4"}),ariaLabel:visible?labels.hide:labels.show,title:visible?labels.hide:labels.show,onClick:()=>setVisible(current=>!current)}),jsxRuntime.jsx(BaseButton,{appearance:oneTimeValueAppearance,tone:"muted",iconOnly:true,icon:jsxRuntime.jsx(lucideReact.Copy,{className:"h-4 w-4"}),ariaLabel:labels.copy,title:labels.copy,onClick:copy2})]})]}),jsxRuntime.jsx("code",{className:"block break-all rounded bg-background p-2 font-mono text-sm",children:visible?readValue():maskOneTimeValue(readValue())})]})})})}var GALLERY_CARD_POSITIONS=["top-left","top-center","top-right","middle-left","middle-right","bottom-left","bottom-center","bottom-right"];function resolveGalleryScrollDirection(layout,direction){let expected=layout==="rail"?"horizontal":"vertical";if(direction&&direction!=="auto"&&direction!==expected)throw new TypeError(`Gallery layout ${layout} requires ${expected} scrolling.`);return expected}var ids=zod.z.array(zod.z.string().min(1).max(256)).max(32).refine(values=>new Set(values).size===values.length),spacing=zod.z.number().min(0).max(48),GalleryCardSchema=zod.z.object({slots:zod.z.array(zod.z.object({position:zod.z.enum(GALLERY_CARD_POSITIONS),fieldIds:ids.optional(),actionIds:ids.optional(),visibility:zod.z.enum(["always","hover"]).optional(),direction:zod.z.enum(["horizontal","vertical"]).optional(),gap:spacing.optional(),inset:spacing.optional()}).strict()).max(8).refine(slots=>new Set(slots.map(slot=>slot.position)).size===slots.length).optional(),title:zod.z.object({fieldId:zod.z.string().min(1).max(256).optional(),placement:zod.z.enum(["none","overlay-top","overlay-bottom","above","below"]).optional(),align:zod.z.enum(["left","center","right"]).optional(),size:zod.z.enum(["sm","md","lg"]).optional(),weight:zod.z.enum(["normal","medium","semibold"]).optional(),maxLines:zod.z.number().int().min(1).max(6).optional(),background:zod.z.enum(["none","solid","gradient","panel"]).optional(),padding:spacing.optional()}).strict().optional(),hover:zod.z.object({effect:zod.z.enum(["none","zoom","outline","lift"]).optional(),scale:zod.z.number().min(1).max(1.15).optional()}).strict().optional()}).strict(),idList={type:"array",maxItems:32,uniqueItems:true,items:{type:"string",minLength:1,maxLength:256}},space={type:"number",minimum:0,maximum:48},GALLERY_CARD_SCHEMA={type:"object",additionalProperties:false,properties:{slots:{type:"array",maxItems:8,items:{type:"object",additionalProperties:false,required:["position"],properties:{position:{enum:[...GALLERY_CARD_POSITIONS]},fieldIds:idList,actionIds:idList,visibility:{enum:["always","hover"]},direction:{enum:["horizontal","vertical"]},gap:space,inset:space}}},title:{type:"object",additionalProperties:false,properties:{fieldId:{type:"string",minLength:1,maxLength:256},placement:{enum:["none","overlay-top","overlay-bottom","above","below"]},align:{enum:["left","center","right"]},size:{enum:["sm","md","lg"]},weight:{enum:["normal","medium","semibold"]},maxLines:{type:"integer",minimum:1,maximum:6},background:{enum:["none","solid","gradient","panel"]},padding:space}},hover:{type:"object",additionalProperties:false,properties:{effect:{enum:["none","zoom","outline","lift"]},scale:{type:"number",minimum:1,maximum:1.15}}}}};function validateGalleryCard(value,fieldIds,actionIds){let config=GalleryCardSchema.parse(value);if(config.title?.fieldId&&!fieldIds.includes(config.title.fieldId))throw new TypeError("Unknown gallery title field.");for(let slot of config.slots??[]){if(slot.fieldIds?.some(id9=>!fieldIds.includes(id9)))throw new TypeError("Unknown gallery slot field.");if(slot.actionIds?.some(id9=>!actionIds.includes(id9)))throw new TypeError("Unknown gallery slot action.")}return config}var REGION_CONTENT_SLOTS=["sidebar","main","aside",...Array.from({length:8},(_,i)=>`panel${i+1}`)],REGION_LAYOUT_SLOTS=REGION_CONTENT_SLOTS.flatMap(slot=>[slot,`${slot}-header`,`${slot}-toolbar`,`${slot}-footer`]),integer=(minimum,maximum)=>({type:"integer",minimum,maximum}),id={type:"string",minLength:1,maxLength:64,pattern:"^[a-zA-Z][a-zA-Z0-9_-]*$"},REGION_STATE_SCHEMA={type:"object",additionalProperties:false,required:["regions"],properties:{regions:{type:"array",maxItems:11,items:{type:"object",additionalProperties:false,required:["id"],properties:{id,size:integer(40,2400),collapsed:{type:"boolean"},columnSpan:integer(1,12),rowSpan:integer(1,12)}}}}},REGION_LAYOUT_SCHEMA={type:"object",additionalProperties:false,required:["mode","regions"],properties:{mode:{enum:["split","grid"]},chrome:{enum:["panel","plain"]},direction:{enum:["horizontal","vertical"]},columns:integer(1,12),rowHeight:integer(80,800),gap:integer(0,48),padding:integer(0,48),border:{enum:["none","outer","panels"]},radius:integer(0,32),breakpoint:integer(320,1200),headerHeight:integer(32,120),disabled:{type:"boolean"},reorderable:{type:"boolean"},regions:{type:"array",minItems:1,maxItems:11,items:{type:"object",additionalProperties:false,required:["id","slot"],properties:{id,slot:{enum:REGION_CONTENT_SLOTS},title:{type:"string",maxLength:120},titleKey:{type:"string",minLength:1},size:integer(40,2400),minSize:integer(40,2400),maxSize:integer(40,2400),columnSpan:integer(1,12),rowSpan:integer(1,12),padding:integer(0,48),border:{type:"boolean"},radius:integer(0,32),surface:{enum:["default","muted","transparent"]},chrome:{enum:["panel","plain"]},scroll:{enum:["content","none"]},mobile:{enum:["stack","drawer"]},resizable:{type:"boolean"},collapsible:{type:"boolean"},collapsed:{type:"boolean"},disabled:{type:"boolean"},collapsePlacement:{enum:["start","end"]},collapseControlRegion:id}}}}};function resolveRegionState(config,state){let ids2=new Set,slots=new Set;for(let region of config.regions){if(ids2.has(region.id)||slots.has(region.slot))throw new Error("Layout region IDs and content slots must be unique.");if(ids2.add(region.id),slots.add(region.slot),(region.minSize??40)>(region.maxSize??2400))throw new Error("Layout minimum size exceeds maximum.");if(region.collapsed&&!region.collapsible)throw new Error("A non-collapsible region cannot start collapsed.")}for(let region of config.regions){if(!region.collapseControlRegion)continue;let target=config.regions.find(item=>item.id===region.collapseControlRegion);if(!region.collapsible||!target||target.id===region.id||target.collapsible||target.mobile==="drawer")throw new Error("Collapse controls require a distinct, non-collapsible target outside a drawer.")}let incoming=state?.regions??[];if(new Set(incoming.map(item=>item.id)).size!==incoming.length||incoming.some(item=>!ids2.has(item.id)))throw new Error("Layout state contains duplicate or unknown region IDs.");return {regions:[...incoming.map(item=>item.id),...config.regions.filter(item=>!incoming.some(value=>value.id===item.id)).map(item=>item.id)].map(key3=>{let region=config.regions.find(item=>item.id===key3),value={id:key3,size:region.size,collapsed:region.collapsed??false,columnSpan:region.columnSpan??1,rowSpan:region.rowSpan??1,...incoming.find(item=>item.id===key3)};if(value.size!==void 0&&(value.size<(region.minSize??40)||value.size>(region.maxSize??2400)))throw new Error("Layout size is outside configured bounds.");if(value.collapsed&&!region.collapsible)throw new Error("Layout state cannot collapse a non-collapsible region.");if(value.columnSpan>(config.columns??12))throw new Error("Layout column span exceeds the grid column count.");return Object.fromEntries(Object.entries(value).filter(([,item])=>item!==void 0))})}}var id2={type:"string",minLength:1,maxLength:256},COLLECTION_STEPPER_ENTRY=createDesignCapabilityEntry({providerVersion:"6",authoringRevision:9,id:"monkeys.design.collection-stepper",rendererKey:"monkeys.design.renderer.collection-stepper",version:"9",revision:9,schemaRevision:6,kind:"view",category:"navigation",labelKey:"monkeys.design.collectionStepper.label",descriptionKey:"monkeys.design.collectionStepper.description",authoringLabel:i18n("Collection stepper","\u96C6\u5408\u524D\u540E\u6D4F\u89C8"),authoringDescription:i18n("Navigate the retained source window without querying a duplicate collection.","\u5728\u4FDD\u7559\u7684\u6765\u6E90\u7A97\u53E3\u4E2D\u524D\u540E\u6D4F\u89C8\uFF0C\u4E0D\u91CD\u590D\u67E5\u8BE2\u96C6\u5408\u3002"),inputPort:"model",schemaRef:"monkeys-design://collection-stepper/model/v2",schemaDocument:jsonSchema("monkeys-design://collection-stepper/model/v2",{type:"object",additionalProperties:false,required:["collectionId","activeId","labels"],properties:{collectionId:id2,activeId:id2,appearance:{enum:["text","icons"],default:"text"},placement:{enum:["inline","overlay","sidebar"],default:"inline"},showPosition:{type:"boolean",default:false},allowLoadMore:{type:"boolean",default:true},labels:{type:"object",additionalProperties:false,required:["previous","next","loading","missing","retry"],properties:Object.fromEntries(["previous","next","loading","missing","retry"].map(key3=>[key3,{type:"string",minLength:1}]))}}}),slots:[],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace","overlay"],outputPorts:[{name:"capability.collection-stepper.activate",schemaRef:"monkeys-design://collection-stepper/activate/v1",schemaDocument:jsonSchema("monkeys-design://collection-stepper/activate/v1",{type:"object",additionalProperties:false,required:["itemId"],properties:{itemId:id2}}),allowedCommandKinds:["query-intent"]}]});var id3={type:"string",minLength:1,maxLength:256},text={type:"string",maxLength:2048},bounded={type:"integer",minimum:1,maximum:1e3},GROUPED_FILTER_SELECTION_SCHEMA={type:"object",additionalProperties:false,required:["scopeKey","values"],properties:{scopeKey:{type:"string",maxLength:256},values:{type:"object",maxProperties:1e3,propertyNames:id3,additionalProperties:{type:"array",maxItems:1e3,uniqueItems:true,items:id3}}}},GROUPED_FILTER_MODEL_SCHEMA={type:"object",additionalProperties:false,required:["scopeKey","selection","groups","limits","labels"],properties:{scopeKey:id3,selection:GROUPED_FILTER_SELECTION_SCHEMA,disabled:{type:"boolean"},triggerAppearance:{enum:["button","plain"]},groups:{type:"array",maxItems:1e3,items:{type:"object",additionalProperties:false,required:["id","label","status","options"],properties:{id:id3,label:text,status:{enum:["ready","loading","error"]},options:{type:"array",maxItems:1e4,items:{type:"object",additionalProperties:false,required:["id","label"],properties:{id:id3,label:text,searchTokens:{type:"array",maxItems:16,items:text},disabled:{type:"boolean"},dormant:{type:"boolean"},count:{type:"integer",minimum:0}}}}}}},limits:{type:"object",additionalProperties:false,required:["groups","perGroup","total"],properties:{groups:bounded,perGroup:bounded,total:bounded}},labels:{type:"object",additionalProperties:false,required:["search","clear","empty","loading","error","dormant","groups","perGroup","total","retry"],properties:Object.fromEntries(["search","clear","empty","loading","error","dormant","groups","perGroup","total","retry"].map(key3=>[key3,text]))}}},GROUPED_FILTER_ENTRY=createDesignCapabilityEntry({providerVersion:"8",authoringRevision:8,id:"monkeys.design.grouped-filter",rendererKey:"monkeys.design.renderer.grouped-filter",version:"8",revision:8,schemaRevision:2,kind:"view",category:"navigation",labelKey:"monkeys.design.capability.groupedFilter.label",descriptionKey:"monkeys.design.capability.groupedFilter.description",authoringLabel:i18n("Grouped filters","\u5206\u7EC4\u7B5B\u9009"),authoringDescription:i18n("Search and edit bounded scope-owned choices locally.","\u672C\u5730\u641C\u7D22\u5E76\u7F16\u8F91\u6709\u4F5C\u7528\u57DF\u548C\u6570\u91CF\u8FB9\u754C\u7684\u5206\u7EC4\u9009\u9879\u3002"),inputPort:"model",schemaRef:"monkeys-design://grouped-filter/model/v2",schemaDocument:jsonSchema("monkeys-design://grouped-filter/model/v2",GROUPED_FILTER_MODEL_SCHEMA),slots:[],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace","overlay"],outputPorts:[{name:"capability.grouped-filter.retry",schemaRef:"monkeys-design://grouped-filter/retry/v1",schemaDocument:jsonSchema("monkeys-design://grouped-filter/retry/v1",{type:"object",additionalProperties:false,required:["groupId"],properties:{groupId:id3}}),allowedCommandKinds:["query-intent"]},{name:"capability.grouped-filter.change",schemaRef:"monkeys-design://grouped-filter/change/v1",schemaDocument:jsonSchema("monkeys-design://grouped-filter/change/v1",{type:"object",additionalProperties:false,required:["selection"],properties:{selection:GROUPED_FILTER_SELECTION_SCHEMA}}),allowedCommandKinds:["query-intent"]}]});var mediaViewerToolbarSchema=zod.z.object({controlsGrouping:zod.z.enum(["grouped","separate"]).default("grouped"),actionsGrouping:zod.z.enum(["grouped","separate"]).default("grouped"),actionsPlacement:zod.z.enum(["overlay","footer"]).default("overlay"),downloadPosition:zod.z.enum(["first","last"]).default("last"),controls:zod.z.array(zod.z.enum(["reset","fitPage","fitWidth","originalSize","zoomIn","zoomOut"])).max(6).default(["fitPage","originalSize","zoomIn","zoomOut"])}).strict(),MEDIA_VIEWER_TOOLBAR_SCHEMA=zod.z.toJSONSchema(mediaViewerToolbarSchema,{io:"input"});var IMAGE_PREVIEW_POSITIONS=["topLeft","top","topRight","left","right","bottomLeft","bottom","bottomRight"],options=zod.z.object({minScale:zod.z.number().min(1e-6).max(64).default(.01),maxScale:zod.z.number().min(1e-6).max(64).default(16),zoomStep:zod.z.number().gt(1).max(4).default(1.18),stagePadding:zod.z.number().min(0).max(128).default(16),wheelZoom:zod.z.enum(["plain","modifier","disabled"]).default("plain"),doubleClickAction:zod.z.enum(["reset","original-size","disabled"]).default("reset"),panEnabled:zod.z.boolean().default(true),keyboardEnabled:zod.z.boolean().default(true),controlsVisible:zod.z.boolean().default(true),zoomLabelVisible:zod.z.boolean().default(true),controlsPosition:zod.z.enum(IMAGE_PREVIEW_POSITIONS).default("bottomRight")}).strict(),IMAGE_PREVIEW_OPTIONS_SCHEMA=zod.z.toJSONSchema(options,{io:"input"}),imagePreviewOptionsSchema=options.refine(value=>value.minScale<=value.maxScale,{message:"minScale must not exceed maxScale",path:["minScale"]});function previewFailureKind(error){let name=error&&typeof error=="object"&&"name"in error?error.name:"";return name==="PasswordException"?"passwordRequired":name==="InvalidPDFException"?"invalidDocument":name==="MissingPDFException"||name==="UnexpectedResponseException"||name==="TypeError"?"networkFailed":"unavailable"}function safePreviewUrl(value){if(typeof value=="string"&&!(/^[\s]*$/.test(value)||/[\\\u0000-\u0020]/.test(value)))try{let relative=/^(?:\/(?!\/)|\.\.?\/)/.test(value),url=new URL(value,relative&&typeof window<"u"?window.location.href:void 0);if(["https:","http:"].includes(url.protocol)&&!url.username&&!url.password)return url.href}catch{}}var clampDocumentZoom=zoom=>Math.min(3,Math.max(.5,Number.isFinite(zoom)?zoom:1)),clampDocumentPage=(page,count)=>Math.min(count,Math.max(1,Math.trunc(page)||1)),clampPreviewSidebar=width=>Math.min(420,Math.max(120,Number.isFinite(width)?width:200)),MEDIA_VIEWER_LABELS=["back","previous","next","loading","unavailable","retry","download","downloadFailed","fullscreen","fullscreenFailed","fitPage","fitWidth","zoomIn","zoomOut","thumbnails","page","resizeSidebar","openExternal"];var id4={type:"string",minLength:1,maxLength:256},text2={type:"string",minLength:1,maxLength:2048},MEDIA_VIEWER_MODEL_SCHEMA={type:"object",additionalProperties:false,required:["id","title","kind","source","labels"],properties:{id:id4,title:text2,kind:{enum:["image","pdf","video","audio","text","file"]},downloadEnabled:{type:"boolean",default:true},openExternalEnabled:{type:"boolean",default:true},closeVisible:{type:"boolean",default:true},toolbarAppearance:{enum:["text","icons"],default:"text"},actionChrome:{enum:["framed","plain"],default:"framed"},layout:{enum:["toolbar","canvas"],default:"toolbar"},canvasToolbar:MEDIA_VIEWER_TOOLBAR_SCHEMA,imagePreview:IMAGE_PREVIEW_OPTIONS_SCHEMA,detailsPanel:{type:"object",additionalProperties:false,required:["label"],properties:{collapsible:{type:"boolean",default:false},defaultOpen:{type:"boolean",default:true},label:{type:"string",minLength:1,maxLength:256},width:{type:"integer",minimum:180,maximum:480,default:320}}},secondaryPanel:{type:"object",additionalProperties:false,required:["label"],properties:{defaultOpen:{type:"boolean",default:false},label:{type:"string",minLength:1,maxLength:256},width:{type:"integer",minimum:180,maximum:480,default:280}}},sidePanelsMaxWidthPercent:{type:"number",minimum:25,maximum:60,default:44},source:{type:"object",additionalProperties:false,required:["url","fileName"],properties:{url:{type:"string",maxLength:8192},fileName:text2,text:{type:"string",maxLength:262144},posterUrl:{type:"string",maxLength:8192}}},labels:{type:"object",additionalProperties:false,required:[...MEDIA_VIEWER_LABELS],properties:Object.fromEntries([...MEDIA_VIEWER_LABELS,"passwordRequired","invalidDocument","networkFailed","metricsFailed","originalSize","reset"].map(key3=>[key3,text2]))},navigation:{type:"object",additionalProperties:false,required:["previous","next"],properties:{previous:{type:"boolean"},next:{type:"boolean"},loading:{type:"boolean"}}}}},port=(name,properties2,required)=>{let schemaRef=`monkeys-design://media-viewer/${name}/v1`;return {name:`capability.media-viewer.${name}`,schemaRef,schemaDocument:jsonSchema(schemaRef,{type:"object",additionalProperties:false,properties:properties2,required}),allowedCommandKinds:["query-intent"]}},MEDIA_VIEWER_ENTRY=createDesignCapabilityEntry({providerVersion:"7",authoringRevision:16,id:"monkeys.design.media-viewer",rendererKey:"monkeys.design.renderer.media-viewer",version:"16",revision:16,schemaRevision:13,kind:"view",category:"content",labelKey:"monkeys.design.capability.mediaViewer.label",descriptionKey:"monkeys.design.capability.mediaViewer.description",authoringLabel:i18n("Media viewer","\u5A92\u4F53\u9605\u8BFB\u5668"),authoringDescription:i18n("Read one image or document with bounded page rendering.","\u9605\u8BFB\u5355\u5F20\u56FE\u7247\u6216\u6309\u9700\u6E32\u67D3\u7684\u6587\u6863\u3002"),inputPort:"model",schemaRef:"monkeys-design://media-viewer/model/v1",schemaDocument:jsonSchema("monkeys-design://media-viewer/model/v1",MEDIA_VIEWER_MODEL_SCHEMA),slots:["details","actions","navigation","secondary","toolbar","imageOverlay",...IMAGE_PREVIEW_POSITIONS],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace","overlay"],outputPorts:[port("close",{},[]),port("navigate",{direction:{enum:["previous","next"]},itemId:id4},["direction","itemId"]),port("page-change",{page:{type:"integer",minimum:1},itemId:id4},["page","itemId"]),port("zoom-change",{zoom:{type:"number",minimum:1e-6,maximum:64},itemId:id4},["zoom","itemId"]),{...port("download",{itemId:id4},["itemId"]),allowedCommandKinds:["domain-command"]}]});var RETAINED_DETAIL_ENTRY=createDesignCapabilityEntry({providerVersion:"5",authoringRevision:5,id:"monkeys.design.retained-detail",rendererKey:"monkeys.design.renderer.retained-detail",version:"5",revision:5,schemaRevision:1,kind:"view",category:"layout",labelKey:"monkeys.design.capability.retainedDetail.label",descriptionKey:"monkeys.design.capability.retainedDetail.description",authoringLabel:i18n("Retained detail","\u4FDD\u7559\u5217\u8868\u7684\u8BE6\u60C5\u5BB9\u5668"),authoringDescription:i18n("Display a detail slot while retaining the source viewport and focus.","\u5C55\u793A\u8BE6\u60C5\u65F6\u4FDD\u7559\u6765\u6E90\u5217\u8868\u7684\u7A97\u53E3\u548C\u7126\u70B9\u3002"),inputPort:"model",schemaRef:"monkeys-design://retained-detail/model/v1",schemaDocument:jsonSchema("monkeys-design://retained-detail/model/v1",{type:"object",additionalProperties:false,required:["active"],properties:{active:{type:"boolean"}}}),slots:["main","detail","overlay"],outputPorts:[],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace"]});var text3={type:"string"},id5={type:"string",minLength:1,maxLength:256},object=(properties2,required=Object.keys(properties2))=>({type:"object",additionalProperties:false,properties:properties2,required}),COMMENT_THREAD_MODEL=object({scopeKey:{type:"string",minLength:1,maxLength:1024},canWrite:{type:"boolean"},items:{type:"array",maxItems:1e4,items:object({id:id5,author:text3,text:{type:"string",maxLength:1e4},createdAt:{type:"integer",minimum:0,maximum:864e13}})},pagination:object({hasMore:{type:"boolean"},nextCursor:{type:["string","null"]},loadingMore:{type:"boolean"},errorCode:text3},["hasMore","nextCursor"]),labels:object(Object.fromEntries(["title","empty","draft","send","sending","failed","more","loading","limit"].map(key3=>[key3,{type:"string",minLength:1}])))});COMMENT_THREAD_MODEL.properties={...COMMENT_THREAD_MODEL.properties,appearance:{enum:["default","panel"],default:"default"},showCharacterCount:{type:"boolean",default:true}};var COMMENT_THREAD_ENTRY=createDesignCapabilityEntry({providerVersion:"5",authoringRevision:6,id:"monkeys.design.comment-thread",rendererKey:"monkeys.design.renderer.comment-thread",version:"6",revision:6,schemaRevision:3,kind:"view",category:"content",labelKey:"monkeys.design.capability.commentThread.label",descriptionKey:"monkeys.design.capability.commentThread.description",authoringLabel:i18n("Comment thread","\u8BC4\u8BBA"),authoringDescription:i18n("Read paged comments and submit a bounded draft through governed commands.","\u5206\u9875\u8BFB\u53D6\u8BC4\u8BBA\uFF0C\u5E76\u901A\u8FC7\u53D7\u6CBB\u7406\u547D\u4EE4\u63D0\u4EA4\u6709\u957F\u5EA6\u9650\u5236\u7684\u8349\u7A3F\u3002"),inputPort:"ontologyView",schemaRef:"monkeys-design://comment-thread/model/v1",schemaDocument:jsonSchema("monkeys-design://comment-thread/model/v1",COMMENT_THREAD_MODEL),slots:[],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace"],outputPorts:[{name:"capability.comment-thread.submit",schemaRef:"monkeys-design://comment-thread/submit/v1",schemaDocument:jsonSchema("monkeys-design://comment-thread/submit/v1",object({text:{type:"string",minLength:1,maxLength:1e4},clientRequestId:{type:"string",minLength:1,maxLength:128}})),allowedCommandKinds:["domain-command"]},{name:"capability.comment-thread.load-more",schemaRef:"monkeys-design://comment-thread/load-more/v1",schemaDocument:jsonSchema("monkeys-design://comment-thread/load-more/v1",object({cursor:{type:"string",minLength:1,maxLength:8192}})),allowedCommandKinds:["query-intent"]}]});var ReportDocumentModelSchema=zod.z.object({id:zod.z.string().min(1),title:zod.z.string(),markdown:zod.z.string(),html:zod.z.string(),reference:zod.z.string(),period:zod.z.string(),focus:zod.z.string(),brandName:zod.z.string(),sceneName:zod.z.string(),imageUrls:zod.z.array(zod.z.string())}).strict(),REPORT_DOCUMENT_MODEL_SCHEMA=zod.z.toJSONSchema(ReportDocumentModelSchema,{io:"input"});var REPORT_DOCUMENT_ENTRY=createDesignCapabilityEntry({id:"monkeys.design.report-document",rendererKey:"monkeys.design.renderer.report-document",kind:"view",category:"content",labelKey:"monkeys.design.capability.reportDocument.label",descriptionKey:"monkeys.design.capability.reportDocument.description",authoringLabel:i18n("Report document","\u62A5\u544A\u6587\u6863"),authoringDescription:i18n("Read a projected report with managed media.","\u9605\u8BFB\u5305\u542B\u6258\u7BA1\u5A92\u4F53\u7684\u62A5\u544A\u6295\u5F71\u3002"),inputPort:"model",schemaRef:"monkeys-design://report-document/model/v1",schemaDocument:jsonSchema("monkeys-design://report-document/model/v1",REPORT_DOCUMENT_MODEL_SCHEMA),slots:[],sideEffects:["network"],supportedPageTypes:["page","workspace"],supportedSurfaces:["page","workspace"]});var badgeVariants=({variant="default",shape="pill",className}={})=>cn("inline-flex items-center border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2",shape==="pill"?"rounded-full":"rounded-md",variant==="secondary"&&"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",variant==="destructive"&&"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",variant==="outline"&&"text-foreground",variant==="success"&&"border-transparent bg-success/15 text-success",variant==="warning"&&"border-transparent bg-warning/15 text-warning-foreground",(!variant||variant==="default")&&"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",className),Badge=React8__namespace.forwardRef(({className,variant,shape,...props},ref)=>jsxRuntime.jsx("div",{ref,className:badgeVariants({variant,shape,className}),...props}));Badge.displayName="Badge";var RoundedBadge=React8__namespace.forwardRef((props,ref)=>jsxRuntime.jsx(Badge,{ref,shape:"rounded",...props}));RoundedBadge.displayName="RoundedBadge";function useBentoSurface(){let parentDepth=useBentoDepth(),level=parentDepth+1,recipe=resolveBentoTokens(useMonkeysResolvedTheme(),level),variables=Object.fromEntries(BENTO_STYLE_FIELDS.map(field=>[`--monkeys-bento-${field.replace(/[A-Z]/g,letter=>`-${letter.toLowerCase()}`)}`,recipe.values[field]]));return {parentDepth,level,variables}}var ownsPadding=(styles,classes)=>Object.keys(styles??{}).some(key3=>key3.startsWith("padding")&&styles?.[key3]!==void 0)||/(?:^|[\s:])!?p[xytrblse]?-(?:\[|[a-z0-9])/.test(classes??"");function BentoPanel({children,className,contentClassName,chrome="panel",headerWrap=false,title,titleIcon:TitleIcon,action,appearance:explicitAppearance,classNames,...props}){let{parentDepth,level,variables}=useBentoSurface(),appearance2=useMonkeysBaseAppearance(explicitAppearance),framed=chrome==="panel",bodyOwnsPadding=ownsPadding(appearance2?.styles?.panelBody,[classNames?.body,contentClassName,appearance2?.slots?.panelBody].join(" "));return jsxRuntime.jsx(BentoDepthProvider,{depth:framed?level:parentDepth,children:jsxRuntime.jsx(BasePanel,{as:"section",appearance:{...appearance2,slots:{...appearance2?.slots,panelRoot:appearance2?.slots?.panelRoot},styles:{...appearance2?.styles,panelHeader:{...chrome==="plain"?{padding:0,paddingBlockEnd:"var(--global-spacing-lg, 1rem)"}:{},...appearance2?.styles?.panelHeader},panelBody:{...!bodyOwnsPadding||chrome==="plain"?{padding:0}:{},...appearance2?.styles?.panelBody}}},classNames:{...classNames,root:cn("min-h-0",framed&&"gap-[var(--monkeys-bento-gap)]",framed&&appearance2?.radius===void 0&&!appearance2?.preset&&"rounded-[var(--monkeys-bento-radius)]",framed&&appearance2?.border===void 0&&!appearance2?.preset&&"border-[length:var(--monkeys-bento-border-width)] border-[color:var(--monkeys-bento-border-color)] [border-style:var(--monkeys-bento-border-style)]",framed&&appearance2?.background===void 0&&!appearance2?.preset&&"bg-[var(--monkeys-bento-background)]",framed&&!appearance2?.preset&&appearance2?.background===void 0&&"shadow-[shadow:var(--monkeys-bento-shadow)]",framed&&!bodyOwnsPadding&&"p-[var(--monkeys-bento-padding)]",!framed&&"border-0 bg-transparent shadow-none",appearance2?.slots?.panelRoot,classNames?.root,className),header:cn("flex min-w-0 items-center gap-[var(--monkeys-bento-gap,var(--global-spacing,0.75rem))] border-b border-border p-0 pb-[var(--monkeys-bento-gap)]",chrome==="plain"&&"border-0 px-0 pt-0 pb-token-lg",classNames?.header),body:cn("flex min-h-0 flex-col gap-[var(--monkeys-bento-gap,var(--global-spacing,0.75rem))] p-0",appearance2?.slots?.panelBody,classNames?.body,contentClassName),footer:cn("px-0 pb-0 pt-[var(--monkeys-bento-gap)]",classNames?.footer)},header:title?jsxRuntime.jsxs("div",{className:cn("flex min-w-0 flex-1 items-center justify-between gap-token-md",headerWrap&&"flex-wrap"),children:[jsxRuntime.jsxs("div",{className:cn("flex min-w-0 flex-1 items-center gap-token-sm",headerWrap&&"basis-auto"),children:[TitleIcon?jsxRuntime.jsx("span",{className:"inline-flex size-8 shrink-0 items-center justify-center rounded-md border border-primary/30 bg-primary/10 text-primary",children:jsxRuntime.jsx(TitleIcon,{className:"size-4 text-primary",color:"currentColor",stroke:"currentColor"})}):null,jsxRuntime.jsxs("div",{className:"min-w-0",children:[jsxRuntime.jsx("h2",{className:"truncate text-base font-semibold text-foreground",children:title}),props.description?jsxRuntime.jsx("div",{className:"mt-1 text-sm text-muted-foreground",children:props.description}):null]})]}),action?jsxRuntime.jsx("div",{className:cn("shrink-0",headerWrap&&"max-w-full"),children:action}):null]}):void 0,...props,"data-monkeys-bento-level":framed?level:void 0,style:{...framed?variables:{},...props.style},children})})}function Calendar({className,classNames,components,showOutsideDays=true,...props}){return jsxRuntime.jsx(reactDayPicker.DayPicker,{showOutsideDays,className:cn("p-3",className),classNames:{months:"flex flex-col space-y-4 sm:flex-row sm:space-x-4 sm:space-y-0",month:"space-y-4",caption:"relative flex items-center justify-center pt-1",caption_label:"text-sm font-medium",nav:"flex items-center space-x-1",nav_button:"inline-flex h-7 w-7 items-center justify-center rounded-md border border-input bg-transparent p-0 text-foreground opacity-100 shadow-sm transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",nav_icon:"size-4 stroke-current",nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-y-1",head_row:"flex",head_cell:"w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground",row:"mt-2 flex w-full",cell:"relative h-9 w-9 p-0 text-center text-sm [&:has([aria-selected].day-range-end)]:rounded-r-md [&:has([aria-selected].day-outside)]:bg-accent/50 [&:has([aria-selected])]:bg-accent first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md focus-within:relative focus-within:z-20",day:"inline-flex h-9 w-9 items-center justify-center rounded-md p-0 font-normal transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring aria-selected:opacity-100 disabled:pointer-events-none disabled:opacity-50",day_range_end:"day-range-end",day_selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground",day_today:"bg-accent text-accent-foreground",day_outside:"day-outside text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30",day_disabled:"text-muted-foreground opacity-50",day_range_middle:"aria-selected:bg-accent aria-selected:text-accent-foreground",day_hidden:"invisible",...classNames},components:{IconLeft:({className:iconClassName,...iconProps})=>jsxRuntime.jsx(lucideReact.ChevronLeft,{"aria-hidden":"true",className:cn("size-4 stroke-current",iconClassName),...iconProps}),IconRight:({className:iconClassName,...iconProps})=>jsxRuntime.jsx(lucideReact.ChevronRight,{"aria-hidden":"true",className:cn("size-4 stroke-current",iconClassName),...iconProps}),...components},...props})}Calendar.displayName="Calendar";var overlaySurfaceRoleClassNames={menu:"monkeys-overlay-surface--menu bg-menu-surface text-popover-foreground",dialog:"monkeys-overlay-surface--dialog bg-dialog-surface text-foreground"};function getOverlaySurfaceClassName(role,options2={}){return ["monkeys-overlay-surface",overlaySurfaceRoleClassNames[role],options2.rounded===false?void 0:"monkeys-overlay-surface--rounded"].filter(Boolean).join(" ")}var AccordionItem=React8__namespace.forwardRef(({className,style,...props},ref)=>jsxRuntime.jsx(AccordionPrimitive__namespace.Item,{ref,className:cn("border-b",className),style:{borderColor:"var(--monkeys-component-accordion-item-border-color, hsl(var(--border)))",...style},...props}));AccordionItem.displayName="AccordionItem";var AccordionTrigger=React8__namespace.forwardRef(({className,children,...props},ref)=>jsxRuntime.jsx(AccordionPrimitive__namespace.Header,{className:"flex",children:jsxRuntime.jsxs(AccordionPrimitive__namespace.Trigger,{ref,className:cn("flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",className),...props,children:[children,jsxRuntime.jsx(lucideReact.ChevronDown,{"aria-hidden":"true",className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));AccordionTrigger.displayName="AccordionTrigger";var AccordionContent=React8__namespace.forwardRef(({className,children,...props},ref)=>jsxRuntime.jsx(AccordionPrimitive__namespace.Content,{ref,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...props,children:jsxRuntime.jsx("div",{className:cn("pb-4 pt-0",className),children})}));AccordionContent.displayName="AccordionContent";var Checkbox=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(CheckboxPrimitive__namespace.Root,{ref,className:cn("peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",className),...props,children:jsxRuntime.jsx(CheckboxPrimitive__namespace.Indicator,{className:"flex items-center justify-center text-current",children:jsxRuntime.jsx(lucideReact.Check,{"aria-hidden":"true",className:"h-4 w-4"})})}));Checkbox.displayName="Checkbox";var buttonVariants=classVarianceAuthority.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_[data-slot=icon]]:text-[inherit] [&_[data-slot=icon]_*]:!text-[inherit] [&_[data-slot=icon]_svg]:!stroke-current [&_[data-slot=icon]_svg_*]:!stroke-current [&_[data-slot=end-icon]]:text-[inherit] [&_[data-slot=end-icon]_*]:!text-[inherit] [&_[data-slot=end-icon]_svg]:!stroke-current [&_[data-slot=end-icon]_svg_*]:!stroke-current [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-sm hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-control-surface shadow-sm ring-offset-control-surface hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-sm px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),Button=React8__namespace.forwardRef(({className,variant,size:size2,asChild=false,...props},ref)=>jsxRuntime.jsx(asChild?reactSlot.Slot:"button",{ref,className:buttonVariants({variant,size:size2,className}),...props}));Button.displayName="Button";var ScrollArea=React8__namespace.forwardRef(({className,children,viewportClassName,viewportRef,onViewportScroll,scrollbar=true,scrollbarOrientation="vertical",scrollBarDisabled=false,type,...props},ref)=>{let bentoDepth=useBentoDepth();return jsxRuntime.jsxs(ScrollArea2__namespace.Root,{ref,type:type??(bentoDepth>0?"auto":void 0),className:cn("group relative overflow-hidden",scrollBarDisabled&&"no-scrollbar",className),...props,children:[jsxRuntime.jsx(ScrollArea2__namespace.Viewport,{ref:viewportRef,onScroll:onViewportScroll,className:cn("h-full w-full rounded-[inherit]",viewportClassName),children}),scrollbar?jsxRuntime.jsx(ScrollBar,{orientation:scrollbarOrientation,className:cn(scrollBarDisabled&&"size-0 p-0")}):null,jsxRuntime.jsx(ScrollArea2__namespace.Corner,{})]})});ScrollArea.displayName="ScrollArea";var ScrollBar=React8__namespace.forwardRef(({className,orientation="vertical",...props},ref)=>jsxRuntime.jsx(ScrollArea2__namespace.ScrollAreaScrollbar,{ref,"data-monkeys-scrollbar":"",orientation,className:cn("flex touch-none select-none opacity-0 transition-opacity group-hover:opacity-100 group-focus-within:opacity-100 data-[state=visible]:opacity-100",orientation==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",orientation==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",className),...props,children:jsxRuntime.jsx(ScrollArea2__namespace.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));ScrollBar.displayName="ScrollBar";var Switch=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SwitchPrimitive__namespace.Root,{ref,className:cn("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",className),...props,children:jsxRuntime.jsx(SwitchPrimitive__namespace.Thumb,{className:"pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0"})}));Switch.displayName="Switch";var Tabs=React8__namespace.forwardRef(({variant="default",...props},ref)=>jsxRuntime.jsx(TabsPrimitive__namespace.Root,{ref,"data-variant":variant,...props}));Tabs.displayName="Tabs";var TabsList=React8__namespace.forwardRef(({className,gap,style,...props},ref)=>jsxRuntime.jsx(TabsPrimitive__namespace.List,{ref,className:cn("inline-flex h-10 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",className),style:{gap,...style},...props}));TabsList.displayName="TabsList";var TabsTrigger=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(TabsPrimitive__namespace.Trigger,{ref,className:cn("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",className),...props}));TabsTrigger.displayName="TabsTrigger";var TabsContent=React8__namespace.forwardRef(({className,...props},ref)=>{let depth=useBentoDepth();return jsxRuntime.jsx(TabsPrimitive__namespace.Content,{ref,className:cn("mt-2 ring-offset-background focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",depth>0&&"gap-[var(--monkeys-bento-gap)]",className),...props})});TabsContent.displayName="TabsContent";var TooltipContent=React8__namespace.forwardRef(({className,sideOffset=4,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(Tooltip__namespace.Portal,{children:jsxRuntime.jsx(Tooltip__namespace.Content,{...componentAttributes,...props,ref,sideOffset,"data-monkeys-component":"tooltip","data-slot":"content","data-surface":"menu",className:cn("z-50 overflow-hidden border px-3 py-1.5 text-xs animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",getOverlaySurfaceClassName("menu"),className)})})});TooltipContent.displayName="TooltipContent";var Input=React8__namespace.forwardRef(({className,appearance:appearance2="standard",type,...props},ref)=>jsxRuntime.jsx("input",{ref,type,className:cn("flex w-full border border-input bg-control-surface px-3 text-foreground ring-offset-control-surface transition-[border-color,background-color,color,box-shadow] file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",appearance2==="compact"?"h-9 rounded-md py-1 text-sm shadow-sm":"h-10 rounded-md py-2 text-sm shadow-sm",appearance2==="shadow"&&"rounded-lg shadow-sm shadow-black/[0.02] dark:border-white/10 dark:bg-white/[0.04] dark:shadow-none",className),...props}));Input.displayName="Input";var Textarea=React8__namespace.forwardRef(({className,appearance:appearance2="standard",...props},ref)=>jsxRuntime.jsx("textarea",{ref,className:cn("flex w-full border border-input bg-control-surface px-3 py-2 text-foreground ring-offset-control-surface placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",appearance2==="compact"?"min-h-[60px] rounded-md text-sm shadow-sm":"min-h-[80px] rounded-md text-sm",appearance2==="shadow"&&"rounded-lg shadow-sm shadow-black/[0.02] dark:border-white/10 dark:bg-white/[0.04] dark:shadow-none",className),...props}));Textarea.displayName="Textarea";var FloatingPopoverContext=React8__namespace.createContext(null);function FloatingPopover({open:controlledOpen,defaultOpen=false,onOpenChange,placement="bottom-start",offset:offset2=8,children}){let[uncontrolledOpen,setUncontrolledOpen]=React8__namespace.useState(defaultOpen),open=controlledOpen??uncontrolledOpen,setOpen=React8__namespace.useCallback(next=>{onOpenChange?.(next),controlledOpen===void 0&&setUncontrolledOpen(next);},[controlledOpen,onOpenChange]),{refs,floatingStyles,context}=react.useFloating({placement,open,onOpenChange:setOpen,middleware:[react.offset(offset2),react.flip({padding:8}),react.shift({padding:8})],whileElementsMounted:react.autoUpdate}),click=react.useClick(context),dismiss=react.useDismiss(context,{outsidePressEvent:"pointerdown"}),role=react.useRole(context,{role:"dialog"}),{getReferenceProps,getFloatingProps}=react.useInteractions([click,dismiss,role]),value=React8__namespace.useMemo(()=>({open,floatingStyles,getReferenceProps,getFloatingProps,context,refs}),[context,floatingStyles,getFloatingProps,getReferenceProps,open,refs]);return jsxRuntime.jsx(FloatingPopoverContext.Provider,{value,children})}function useFloatingPopoverContext(){let context=React8__namespace.useContext(FloatingPopoverContext);if(!context)throw new Error("FloatingPopover components must be used within <FloatingPopover>");return context}var FloatingPopoverTrigger=React8__namespace.forwardRef(({asChild,...props},forwardedRef)=>{let context=useFloatingPopoverContext();return jsxRuntime.jsx(asChild?reactSlot.Slot:"button",{...context.getReferenceProps({ref:node=>{context.refs.setReference(node),typeof forwardedRef=="function"?forwardedRef(node):forwardedRef&&(forwardedRef.current=node);},type:asChild?void 0:"button",...props})})});FloatingPopoverTrigger.displayName="FloatingPopoverTrigger";var FloatingPopoverContent=React8__namespace.forwardRef(({className,style,portal=true,...props},forwardedRef)=>{let context=useFloatingPopoverContext(),componentAttributes=useMonkeysComponentAttributes();if(!context.open)return null;let floatingProps=context.getFloatingProps({ref:node=>{context.refs.setFloating(node),typeof forwardedRef=="function"?forwardedRef(node):forwardedRef&&(forwardedRef.current=node);},className:cn("z-50 w-72 border p-4 outline-hidden",getOverlaySurfaceClassName("menu"),className),style:{...context.floatingStyles,...style},tabIndex:-1,...props}),content=jsxRuntime.jsx(react.FloatingFocusManager,{context:context.context,modal:false,returnFocus:false,children:jsxRuntime.jsx("div",{...floatingProps,...componentAttributes,"data-monkeys-component":"floating-popover","data-slot":"content","data-surface":"menu"})});return portal?jsxRuntime.jsx(react.FloatingPortal,{children:content}):content});FloatingPopoverContent.displayName="FloatingPopoverContent";var menuItemClassName="relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",menuContentClassName=`z-50 min-w-[8rem] overflow-hidden border p-1 ${getOverlaySurfaceClassName("menu")} data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,DropdownMenu=DropdownMenuPrimitive__namespace.Root,DropdownMenuTrigger=DropdownMenuPrimitive__namespace.Trigger;var DropdownMenuRadioGroup=DropdownMenuPrimitive__namespace.RadioGroup,DropdownMenuSubTrigger=React8__namespace.forwardRef(({className,inset,children,...props},ref)=>jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.SubTrigger,{ref,className:cn(menuItemClassName,"data-[state=open]:bg-accent",inset&&"pl-8",className),...props,children:[children,jsxRuntime.jsx(lucideReact.ChevronRight,{"aria-hidden":"true",className:"ml-auto"})]}));DropdownMenuSubTrigger.displayName="DropdownMenuSubTrigger";var DropdownMenuSubContent=React8__namespace.forwardRef(({className,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DropdownMenuPrimitive__namespace.SubContent,{...componentAttributes,...props,ref,"data-monkeys-component":"dropdown-menu","data-slot":"content","data-surface":"menu",className:cn(menuContentClassName,className)})});DropdownMenuSubContent.displayName="DropdownMenuSubContent";var DropdownMenuContent=React8__namespace.forwardRef(({className,sideOffset=4,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal,{children:jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Content,{...componentAttributes,...props,ref,sideOffset,"data-monkeys-component":"dropdown-menu","data-slot":"content","data-surface":"menu",className:cn(menuContentClassName,className)})})});DropdownMenuContent.displayName="DropdownMenuContent";var DropdownMenuItem=React8__namespace.forwardRef(({className,inset,...props},ref)=>jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Item,{ref,className:cn(menuItemClassName,inset&&"pl-8",className),...props}));DropdownMenuItem.displayName="DropdownMenuItem";var DropdownMenuCheckboxItem=React8__namespace.forwardRef(({className,children,checked,...props},ref)=>jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.CheckboxItem,{ref,className:cn(menuItemClassName,"pl-8",className),checked,...props,children:[jsxRuntime.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator,{children:jsxRuntime.jsx(lucideReact.Check,{"aria-hidden":"true",className:"h-4 w-4"})})}),children]}));DropdownMenuCheckboxItem.displayName="DropdownMenuCheckboxItem";var DropdownMenuRadioItem=React8__namespace.forwardRef(({className,children,...props},ref)=>jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.RadioItem,{ref,className:cn(menuItemClassName,"pl-8",className),...props,children:[jsxRuntime.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator,{children:jsxRuntime.jsx(lucideReact.Circle,{"aria-hidden":"true",className:"h-2 w-2 fill-current"})})}),children]}));DropdownMenuRadioItem.displayName="DropdownMenuRadioItem";var DropdownMenuLabel=React8__namespace.forwardRef(({className,inset,...props},ref)=>jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Label,{ref,className:cn("px-2 py-1.5 text-sm font-semibold",inset&&"pl-8",className),...props}));DropdownMenuLabel.displayName="DropdownMenuLabel";var DropdownMenuSeparator=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Separator,{ref,className:cn("-mx-1 my-1 h-px bg-muted",className),...props}));DropdownMenuSeparator.displayName="DropdownMenuSeparator";var Select=SelectPrimitive__namespace.Root,SelectGroup=SelectPrimitive__namespace.Group,SelectValue=SelectPrimitive__namespace.Value,SelectTrigger=React8__namespace.forwardRef(({className,children,iconClassName,size:size2="default",...props},ref)=>jsxRuntime.jsxs(SelectPrimitive__namespace.Trigger,{ref,className:cn("flex h-10 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-control-surface px-3 py-2 text-left text-sm text-foreground shadow-sm ring-offset-control-surface data-[placeholder]:text-muted-foreground focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1 [&>span]:min-w-0 [&>span]:flex-1 [&>span]:text-left",size2==="sm"&&"h-8 px-2 py-1 text-xs",className),...props,children:[children,jsxRuntime.jsx(SelectPrimitive__namespace.Icon,{asChild:true,children:jsxRuntime.jsx(lucideReact.ChevronDown,{"aria-hidden":"true",className:cn("h-4 w-4 opacity-50",iconClassName)})})]}));SelectTrigger.displayName="SelectTrigger";var SelectScrollUpButton=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SelectPrimitive__namespace.ScrollUpButton,{ref,className:cn("flex cursor-default items-center justify-center py-1",className),...props,children:jsxRuntime.jsx(lucideReact.ChevronUp,{"aria-hidden":"true",className:"h-4 w-4"})}));SelectScrollUpButton.displayName="SelectScrollUpButton";var SelectScrollDownButton=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SelectPrimitive__namespace.ScrollDownButton,{ref,className:cn("flex cursor-default items-center justify-center py-1",className),...props,children:jsxRuntime.jsx(lucideReact.ChevronDown,{"aria-hidden":"true",className:"h-4 w-4"})}));SelectScrollDownButton.displayName="SelectScrollDownButton";var SelectContent=React8__namespace.forwardRef(({className,children,position="popper",viewportClassName,disableTriggerViewportSizing=false,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(SelectPrimitive__namespace.Portal,{children:jsxRuntime.jsxs(SelectPrimitive__namespace.Content,{...componentAttributes,...props,ref,position,"data-monkeys-component":"select","data-slot":"content","data-surface":"menu",className:cn(menuContentClassName,"relative max-h-[var(--radix-select-content-available-height)] overflow-y-auto overflow-x-hidden",position==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",className),children:[jsxRuntime.jsx(SelectScrollUpButton,{}),jsxRuntime.jsx(SelectPrimitive__namespace.Viewport,{className:cn("p-1",position==="popper"&&"w-full min-w-[var(--radix-select-trigger-width)]",position==="popper"&&!disableTriggerViewportSizing&&"h-[var(--radix-select-trigger-height)]",viewportClassName),children}),jsxRuntime.jsx(SelectScrollDownButton,{})]})})});SelectContent.displayName="SelectContent";var SelectLabel=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SelectPrimitive__namespace.Label,{ref,className:cn("px-2 py-1.5 text-sm font-semibold",className),...props}));SelectLabel.displayName="SelectLabel";var SelectItem=React8__namespace.forwardRef(({className,children,indicatorClassName,itemText,hideIndicator=false,...props},ref)=>jsxRuntime.jsxs(SelectPrimitive__namespace.Item,{ref,className:cn(menuItemClassName,"w-full",hideIndicator?"px-2":"pl-8 pr-2",className),...props,children:[hideIndicator?null:jsxRuntime.jsx("span",{className:cn("absolute left-2 flex h-3.5 w-3.5 items-center justify-center",indicatorClassName),children:jsxRuntime.jsx(SelectPrimitive__namespace.ItemIndicator,{children:jsxRuntime.jsx(lucideReact.Check,{"aria-hidden":"true",className:"h-4 w-4"})})}),itemText?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(SelectPrimitive__namespace.ItemText,{asChild:true,children:jsxRuntime.jsx("span",{className:"sr-only",children:itemText})}),children]}):jsxRuntime.jsx(SelectPrimitive__namespace.ItemText,{children})]}));SelectItem.displayName="SelectItem";var SelectSeparator=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SelectPrimitive__namespace.Separator,{ref,className:cn("-mx-1 my-1 h-px bg-muted",className),...props}));SelectSeparator.displayName="SelectSeparator";function svgPreviewSurface(src){if(!src)return;let svg=/^data:image\/svg\+xml(?:[;,]|$)/i.test(src.trim());if(!svg)try{svg=/\.svgz?$/i.test(decodeURIComponent(new URL(src,"https://preview.invalid").pathname));}catch{return}return svg?{backgroundColor:"var(--monkeys-media-svg-background)",objectFit:"contain"}:void 0}var mediaPreviewFrameClassName=({aspectRatio="square",maxSquareHeight=true,className}={})=>cn("w-full overflow-hidden bg-muted",(aspectRatio==="square"||aspectRatio==="1:1")&&"aspect-square",(aspectRatio==="square"||aspectRatio==="1:1")&&maxSquareHeight&&"max-h-[300px]",aspectRatio==="4:3"&&"aspect-[4/3]",aspectRatio==="3:4"&&"aspect-[3/4]",(aspectRatio==="video"||aspectRatio==="16:9")&&"aspect-video",aspectRatio==="9:16"&&"aspect-[9/16]",className),MediaPreviewFrame=React8__namespace.forwardRef(({aspectRatio="square",maxSquareHeight=true,className,...props},ref)=>jsxRuntime.jsx("div",{ref,className:mediaPreviewFrameClassName({aspectRatio,maxSquareHeight,className}),...props}));MediaPreviewFrame.displayName="MediaPreviewFrame";var MediaPreviewImage=React8__namespace.forwardRef(({fit="contain",className,style,...props},ref)=>{let surface=svgPreviewSurface(props.src);return jsxRuntime.jsx("img",{ref,className:cn("block size-full",fit==="contain"?"object-contain":"object-cover",className),style:{...surface,...surface?{objectFit:fit}:{},...style},...props})});MediaPreviewImage.displayName="MediaPreviewImage";var key2=Symbol.for("@inf-monkeys-tech/monkeys-design/dialog-dock@1"),host2=globalThis,DockContext=host2[key2]??(host2[key2]=React8__namespace.createContext(null)),useDialogDock=()=>React8__namespace.useContext(DockContext);var DockedDialogContent=React8__namespace.forwardRef(({children,className,style,closeLabel="Close",showCloseButton=true,onInteractOutside,...props},ref)=>{let dock=useDialogDock(),id9=React8__namespace.useId(),collapseRef=React8__namespace.useRef(null),wasCollapsed=React8__namespace.useRef(false);return React8__namespace.useEffect(()=>{wasCollapsed.current&&!dock?.collapsed&&dock?.activeId===id9&&collapseRef.current?.focus(),wasCollapsed.current=!!dock?.collapsed;},[dock?.collapsed,dock?.activeId,id9]),React8__namespace.useEffect(()=>dock?.register(id9),[dock?.register,id9]),dock?.container?jsxRuntime.jsx(DialogPrimitive2__namespace.Portal,{container:dock.container,children:jsxRuntime.jsx("div",{style:{display:"contents"},children:jsxRuntime.jsx(BentoScope,{children:jsxRuntime.jsx(BentoPanel,{className:"monkeys-dialog-dock-panel overflow-auto",contentClassName:"shrink-0",style:{display:dock.activeId===id9?void 0:"none"},children:jsxRuntime.jsxs(DialogPrimitive2__namespace.Content,{...props,ref,"data-monkeys-dialog-content":true,"data-presentation":"docked","data-title-visible":dock.showTitle,"data-collapsible":dock.collapsible,className:cn("monkeys-dialog-dock-content",className),style,onInteractOutside:event=>{onInteractOutside?.(event),event.preventDefault();},children:[children,dock.collapsible&&jsxRuntime.jsx("button",{ref:collapseRef,type:"button",className:"monkeys-dialog-dock-collapse","aria-label":dock.collapseLabel,title:dock.collapseLabel,"aria-expanded":!dock.collapsed,onClick:()=>dock.setCollapsed(true),children:jsxRuntime.jsx(lucideReact.PanelRightClose,{"aria-hidden":"true",className:"size-4"})}),showCloseButton&&jsxRuntime.jsxs(DialogPrimitive2__namespace.Close,{className:"monkeys-dialog-dock-close","aria-label":typeof closeLabel=="string"?closeLabel:void 0,children:[jsxRuntime.jsx(lucideReact.X,{"aria-hidden":"true",className:"size-4"}),jsxRuntime.jsx("span",{className:"sr-only",children:closeLabel})]})]})})})})}):null});DockedDialogContent.displayName="DockedDialogContent";var dialogOpenKey=Symbol.for("@inf-monkeys-tech/monkeys-design/dialog-open@1"),dialogOpenHost=globalThis,DialogOpenContext=dialogOpenHost[dialogOpenKey]??(dialogOpenHost[dialogOpenKey]=React8__namespace.createContext(false));function Dialog2({open,defaultOpen,onOpenChange,modal,...props}){let dock=useDialogDock(),[internalOpen,setInternalOpen]=React8__namespace.useState(defaultOpen??false),isOpen=open??internalOpen;return jsxRuntime.jsx(DialogOpenContext.Provider,{value:isOpen,children:jsxRuntime.jsx(DialogPrimitive2__namespace.Root,{...props,open:isOpen,modal:dock?false:modal,onOpenChange:next=>{setInternalOpen(next),onOpenChange?.(next);}})})}var DialogTrigger=DialogPrimitive2__namespace.Trigger,DialogPortal=DialogPrimitive2__namespace.Portal;var DialogOverlay=React8__namespace.forwardRef(({className,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DialogPrimitive2__namespace.Overlay,{...componentAttributes,...props,ref,className:cn("theme-overlay-backdrop fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",className),"data-monkeys-component":"dialog","data-slot":"overlay","data-monkeys-overlay":true})});DialogOverlay.displayName="DialogOverlay";var DialogSurfaceContent=React8__namespace.forwardRef(({className,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DialogPrimitive2__namespace.Content,{...componentAttributes,...props,ref,className,"data-monkeys-component":"dialog","data-slot":"content","data-surface":"dialog","data-monkeys-dialog-content":true})});DialogSurfaceContent.displayName="DialogSurfaceContent";var DialogContent=React8__namespace.forwardRef(({className,children,showCloseButton=true,closeLabel="Close",overlayClassName,overlayStyle,...props},ref)=>{let dock=useDialogDock(),open=React8__namespace.useContext(DialogOpenContext);return dock?open?jsxRuntime.jsx(DockedDialogContent,{...props,ref,className,showCloseButton,closeLabel,children}):null:jsxRuntime.jsxs(DialogPortal,{children:[jsxRuntime.jsx(DialogOverlay,{className:overlayClassName,style:overlayStyle}),jsxRuntime.jsxs(DialogSurfaceContent,{...props,ref,className:cn("fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border p-6 duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",getOverlaySurfaceClassName("dialog"),className),children:[jsxRuntime.jsx(BentoScope,{children}),showCloseButton?jsxRuntime.jsxs(DialogPrimitive2__namespace.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-dialog-surface transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[jsxRuntime.jsx(lucideReact.X,{"aria-hidden":"true",className:"h-4 w-4"}),jsxRuntime.jsx("span",{className:"sr-only",children:closeLabel})]}):null]})]})});DialogContent.displayName="DialogContent";var DialogContentNoAnimation=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogContent,{ref,className:cn("duration-0 data-[state=open]:animate-none data-[state=closed]:animate-none",className),...props}));DialogContentNoAnimation.displayName="DialogContentNoAnimation";var DialogHeader=({className,...props})=>jsxRuntime.jsx("div",{className:cn(useDialogDock()?.showTitle===false?"contents":"flex flex-col space-y-1.5 text-center sm:text-left",className),...props});DialogHeader.displayName="DialogHeader";var DialogFooter=({className,...props})=>jsxRuntime.jsx("div",{className:cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",className),...props});DialogFooter.displayName="DialogFooter";var DialogTitle=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogPrimitive2__namespace.Title,{ref,className:cn("text-lg font-semibold leading-none tracking-tight",className,useDialogDock()?.showTitle===false&&"sr-only"),...props}));DialogTitle.displayName="DialogTitle";var DialogDescription=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogPrimitive2__namespace.Description,{ref,className:cn("text-sm text-muted-foreground",className),...props}));DialogDescription.displayName="DialogDescription";var AlertDialog=({onOpenChange,open,...props})=>{let dock=useDialogDock();React8__namespace.useEffect(()=>{if(open!==false||typeof document>"u")return;let cleanup=()=>{document.querySelector('[data-state="open"][role="dialog"], [data-state="open"][role="alertdialog"]')||(document.body.style.pointerEvents="");};requestAnimationFrame(cleanup);let timer=window.setTimeout(cleanup,300);return ()=>window.clearTimeout(timer)},[open]);let handleOpenChange=React8__namespace.useCallback(next=>{onOpenChange?.(next),!next&&typeof document<"u"&&requestAnimationFrame(()=>{document.querySelector('[data-state="open"][role="dialog"], [data-state="open"][role="alertdialog"]')||(document.body.style.pointerEvents="");});},[onOpenChange]);return dock?jsxRuntime.jsx(Dialog2,{open,onOpenChange:handleOpenChange,...props}):jsxRuntime.jsx(AlertDialogPrimitive__namespace.Root,{open,onOpenChange:handleOpenChange,...props})};React8__namespace.forwardRef((props,ref)=>{let Trigger21=useDialogDock()?DialogPrimitive2__namespace.Trigger:AlertDialogPrimitive__namespace.Trigger;return jsxRuntime.jsx(Trigger21,{...props,ref})});var AlertDialogPortal=AlertDialogPrimitive__namespace.Portal,AlertDialogOverlay=React8__namespace.forwardRef(({className,style,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(AlertDialogPrimitive__namespace.Overlay,{...componentAttributes,...props,ref,className:cn("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",className),"data-monkeys-component":"alert-dialog","data-slot":"overlay","data-monkeys-overlay":true,style:{pointerEvents:"auto",...style}})});AlertDialogOverlay.displayName="AlertDialogOverlay";var AlertDialogContent=React8__namespace.forwardRef(({className,style,children,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return useDialogDock()?jsxRuntime.jsx(DialogContent,{...props,...componentAttributes,ref,role:"alertdialog",showCloseButton:false,className,style,children}):jsxRuntime.jsxs(AlertDialogPortal,{children:[jsxRuntime.jsx(AlertDialogOverlay,{}),jsxRuntime.jsx(AlertDialogPrimitive__namespace.Content,{...componentAttributes,...props,ref,className:cn("fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border p-6 duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",getOverlaySurfaceClassName("dialog"),className),"data-monkeys-component":"alert-dialog","data-slot":"content","data-surface":"dialog","data-monkeys-dialog-content":true,style:{pointerEvents:"auto",...style},children:jsxRuntime.jsx(BentoScope,{children})})]})});AlertDialogContent.displayName="AlertDialogContent";var AlertDialogHeader=({className,...props})=>jsxRuntime.jsx("div",{className:cn("flex flex-col space-y-2 text-center sm:text-left",className),...props}),AlertDialogFooter=({className,...props})=>jsxRuntime.jsx("div",{className:cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",className),...props}),AlertDialogTitle=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Title:AlertDialogPrimitive__namespace.Title;return jsxRuntime.jsx(Part,{ref,className:cn("text-lg font-semibold",className,useDialogDock()?.showTitle===false&&"sr-only"),...props})}),AlertDialogDescription=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Description:AlertDialogPrimitive__namespace.Description;return jsxRuntime.jsx(Part,{ref,className:cn("text-sm text-muted-foreground",className),...props})}),AlertDialogAction=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Close:AlertDialogPrimitive__namespace.Action;return jsxRuntime.jsx(Part,{ref,className:cn(buttonVariants(),className),...props})}),AlertDialogDangerAction=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Close:AlertDialogPrimitive__namespace.Action;return jsxRuntime.jsx(Part,{ref,className:cn(buttonVariants({variant:"destructive"}),className),...props})}),AlertDialogCancel=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Close:AlertDialogPrimitive__namespace.Cancel;return jsxRuntime.jsx(Part,{ref,className:cn(buttonVariants({variant:"outline"}),"mt-2 sm:mt-0",className),...props})});AlertDialogHeader.displayName="AlertDialogHeader";AlertDialogFooter.displayName="AlertDialogFooter";AlertDialogTitle.displayName="AlertDialogTitle";AlertDialogDescription.displayName="AlertDialogDescription";AlertDialogAction.displayName="AlertDialogAction";AlertDialogDangerAction.displayName="AlertDialogDangerAction";AlertDialogCancel.displayName="AlertDialogCancel";var Popover=PopoverPrimitive__namespace.Root,PopoverTrigger=PopoverPrimitive__namespace.Trigger;var PopoverContent=React8__namespace.forwardRef(function({align="center",sideOffset=4,container,className,style,...props},ref){let componentAttributes=useMonkeysComponentAttributes(),fallbackContainer=typeof document<"u"?(()=>{let activeDialog=document.activeElement?.closest("[data-monkeys-dialog-content]");return activeDialog||Array.from(document.querySelectorAll('[data-monkeys-dialog-content][data-state="open"]')).at(-1)})():void 0;return jsxRuntime.jsx(PopoverPrimitive__namespace.Portal,{container:container??fallbackContainer,children:jsxRuntime.jsx(PopoverPrimitive__namespace.Content,{...componentAttributes,...props,ref,align,sideOffset,"data-monkeys-component":"popover","data-slot":"content","data-surface":"menu",className:cn("z-50 w-72 border p-4 outline-hidden",getOverlaySurfaceClassName("menu"),"data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2","data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",className),style:{pointerEvents:"auto",...style}})})});PopoverContent.displayName=PopoverPrimitive__namespace.Content.displayName;var Label3=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(LabelPrimitive__namespace.Root,{ref,className:cn("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",className),...props}));Label3.displayName=LabelPrimitive__namespace.Root.displayName;var Sheet=DialogPrimitive2__namespace.Root,SheetTrigger=DialogPrimitive2__namespace.Trigger;var SheetPortal=DialogPrimitive2__namespace.Portal,SheetOverlay=React8__namespace.forwardRef(({className,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DialogPrimitive2__namespace.Overlay,{...componentAttributes,...props,ref,"data-monkeys-component":"sheet","data-slot":"overlay","data-monkeys-overlay":true,className:cn("theme-overlay-backdrop fixed inset-0 z-50 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",className)})});SheetOverlay.displayName="SheetOverlay";var sideClassNames={top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm"},SheetContent=React8__namespace.forwardRef(({side="right",className,children,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsxs(SheetPortal,{children:[jsxRuntime.jsx(SheetOverlay,{}),jsxRuntime.jsxs(DialogPrimitive2__namespace.Content,{...componentAttributes,...props,ref,"data-monkeys-component":"sheet","data-slot":"content","data-surface":"dialog","data-monkeys-dialog-content":true,className:cn("fixed z-50 gap-4 p-6 transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",getOverlaySurfaceClassName("dialog",{rounded:false}),sideClassNames[side],className),children:[jsxRuntime.jsxs(DialogPrimitive2__namespace.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-dialog-surface transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[jsxRuntime.jsx("svg",{"aria-hidden":"true",className:"h-4 w-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:jsxRuntime.jsx("path",{d:"M18 6 6 18M6 6l12 12"})}),jsxRuntime.jsx("span",{className:"sr-only",children:"Close"})]}),jsxRuntime.jsx(BentoScope,{children})]})]})});SheetContent.displayName="SheetContent";var SheetTitle=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogPrimitive2__namespace.Title,{ref,className:cn("text-lg font-semibold text-foreground",className),...props}));SheetTitle.displayName="SheetTitle";var SheetDescription=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogPrimitive2__namespace.Description,{ref,className:cn("text-sm text-muted-foreground",className),...props}));SheetDescription.displayName="SheetDescription";var Table=React8__namespace.forwardRef(({className,container=true,containerClassName,containerProps,density="compact",...props},ref)=>{let table=jsxRuntime.jsx("table",{ref,"data-density":density,className:cn("w-full caption-bottom text-sm",className),...props});if(!container)return table;let{className:nestedClassName,...rest}=containerProps??{};return jsxRuntime.jsx("div",{className:cn("relative w-full overflow-auto",containerClassName,nestedClassName),...rest,children:table})});Table.displayName="Table";var TableHeader=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("thead",{ref,className:cn("[&_tr]:border-b",className),...props}));TableHeader.displayName="TableHeader";var TableBody=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("tbody",{ref,className:cn("[&_tr:last-child]:border-0",className),...props}));TableBody.displayName="TableBody";var TableFooter=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("tfoot",{ref,className:cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",className),...props}));TableFooter.displayName="TableFooter";var TableRow=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("tr",{ref,className:cn("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",className),...props}));TableRow.displayName="TableRow";var TableHead=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("th",{ref,className:cn("h-10 px-2 text-left align-middle font-medium text-muted-foreground [[data-density=comfortable]_&]:h-12 [[data-density=comfortable]_&]:px-4 [&:has([role=checkbox])]:pr-0",className),...props}));TableHead.displayName="TableHead";var TableCell=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("td",{ref,className:cn("p-2 align-middle [[data-density=comfortable]_&]:p-4 [&:has([role=checkbox])]:pr-0",className),...props}));TableCell.displayName="TableCell";var TableCaption=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("caption",{ref,className:cn("mt-4 text-sm text-muted-foreground",className),...props}));TableCaption.displayName="TableCaption";function WorkbenchGalleryCardSurface({children,title,presentation,renderSlot}){let config=presentation.title,placement=config?.placement??"none",TitleContent=config?.background==="panel"?"div":"span",slots=(presentation.slots??[]).map(slot=>({slot,content:renderSlot?.(slot)})).filter(entry=>entry.content!=null),titleNode=placement==="none"?null:jsxRuntime.jsx("div",{className:"monkeys-gallery-cover-title",title:typeof title=="string"||typeof title=="number"?String(title):void 0,"data-placement":placement,"data-background":config?.background??(placement.startsWith("overlay")?"gradient":"none"),style:{...config?.background==="panel"?{margin:12,borderRadius:"var(--radius)",border:"1px solid hsl(var(--border) / .8)",background:"hsl(var(--card) / .9)",backdropFilter:"blur(12px)",boxShadow:"var(--monkeys-component-overlay-dialog-shadow)"}:{},textAlign:config?.align??"left",padding:config?.padding??12,fontSize:`var(--monkeys-gallery-title-${config?.size??"md"})`,fontWeight:config?.weight==="normal"?400:config?.weight==="medium"?500:600},children:jsxRuntime.jsx(TitleContent,{style:{display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:config?.background==="panel"?void 0:config?.maxLines??2,overflow:"hidden"},children:title})}),band=row2=>jsxRuntime.jsx("div",{className:"monkeys-gallery-slot-row","data-row":row2,children:slots.filter(({slot})=>slot.position.startsWith(row2)).map(({slot,content})=>jsxRuntime.jsx("div",{"data-card-slot":slot.position,"data-visibility":slot.visibility??"always",className:slot.visibility==="hover"?"monkeys-gallery-hover-actions":void 0,style:{gridColumn:slot.position.endsWith("left")?1:slot.position.endsWith("center")?2:3,justifySelf:slot.position.endsWith("left")?"start":slot.position.endsWith("center")?"center":"end",padding:slot.inset??12,gap:slot.gap??8,flexDirection:slot.direction==="vertical"?"column":"row"},children:content},slot.position))});return jsxRuntime.jsxs("div",{className:"monkeys-gallery-card-surface","data-hover-effect":presentation.hover?.effect??"none",style:{"--monkeys-gallery-hover-scale":presentation.hover?.scale??1.02},children:[placement==="above"&&titleNode,jsxRuntime.jsxs("div",{className:"monkeys-gallery-media-card",children:[jsxRuntime.jsx("div",{className:"monkeys-gallery-card-media",children}),jsxRuntime.jsxs("div",{className:"monkeys-gallery-card-overlay",children:[jsxRuntime.jsxs("div",{children:[placement==="overlay-top"&&titleNode,band("top")]}),band("middle"),jsxRuntime.jsxs("div",{children:[band("bottom"),placement==="overlay-bottom"&&titleNode]})]})]}),placement==="below"&&titleNode]})}var imageExtPattern=/\.(png|jpe?g|webp|gif|svg|bmp|avif)$/i,audioExtPattern=/\.(wav|mp3|ogg|m4a|flac|aac)$/i,isLikelyUrl=value=>/^https?:\/\//i.test(String(value||"")),getColumnRenderKind=column=>String(column?.renderType||column?.type||"").toLowerCase(),isImageLikeValue=value=>String(value||"").startsWith("data:image/")||imageExtPattern.test(String(value||"")),isAudioLikeValue=value=>String(value||"").startsWith("data:audio/")||audioExtPattern.test(String(value||"")),escapeSvgText=value=>String(value||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"),getDefaultGalleryFieldValue=(column,row2)=>column?row2?.[column.key]??null:null,getDefaultGalleryDisplayText=value=>{if(value==null||value==="")return "\u2014";if(Array.isArray(value))return value.map(item=>{if(typeof item=="string")return item;if(!item||typeof item!="object")return "";let objectItem=item;return objectItem.text||objectItem.label||objectItem.title||objectItem.display||objectItem.value||objectItem.recordId||""}).filter(Boolean).join(" \xB7 ")||"\u2014";if(typeof value=="object"){let objectValue=value;return String(objectValue.text||objectValue.label||objectValue.title||objectValue.display||objectValue.value||"\u2014")}return String(value)},isDefaultGalleryImageField=(column={key:""},value)=>getColumnRenderKind(column)==="image"||isImageLikeValue(value),isDefaultGalleryAudioField=(column={key:""},value)=>getColumnRenderKind(column)==="audio"||isAudioLikeValue(value),getDefaultGalleryImagePreviewSrc=(value,rowId,columnLabel)=>{if(isLikelyUrl(value)||String(value||"").startsWith("data:image/"))return String(value);let title=escapeSvgText(value||columnLabel||rowId||""),svg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 960 540'><defs><linearGradient id='g' x1='0' y1='0' x2='1' y2='1'><stop offset='0%' stop-color='#0f172a'/><stop offset='55%' stop-color='#1d4ed8'/><stop offset='100%' stop-color='#14b8a6'/></linearGradient></defs><rect width='960' height='540' fill='url(#g)'/><g opacity='0.28'><circle cx='780' cy='130' r='150' fill='#67e8f9'/><circle cx='180' cy='430' r='170' fill='#a78bfa'/></g>${title?`<text x='68' y='450' fill='white' font-family='Inter, Arial' font-size='52' font-weight='700'>${title}</text>`:""}</svg>`;return `data:image/svg+xml;utf8,${encodeURIComponent(svg)}`},isDefaultGalleryMediaColumn=(column,row2,{getFieldValue=getDefaultGalleryFieldValue,shouldEnhanceMultimodal=true,isImageField=isDefaultGalleryImageField,isAudioField=isDefaultGalleryAudioField}={})=>{if(!column||!shouldEnhanceMultimodal)return false;let value=getFieldValue(column,row2);return isImageField(column,value)||isAudioField(column,value)},isDefaultGalleryTitleCandidate=(column,row2,{isMediaColumn=()=>false}={})=>!column||column.renderType==="icon"?false:!isMediaColumn(column,row2),isDefaultGallerySummaryCandidate=(column,row2,{isMediaColumn=()=>false}={})=>!column||column.renderType==="icon"?false:!isMediaColumn(column,row2),renderDefaultGalleryFieldValue=(column,row2,{compact=false,getFieldValue=getDefaultGalleryFieldValue,getDisplayText=getDefaultGalleryDisplayText}={})=>{let value=getFieldValue(column,row2);return jsxRuntime.jsx("span",{className:cn("leading-relaxed",compact&&column?.wrap===true&&"line-clamp-2 block"),children:getDisplayText(value)})};function isWorkbenchIconComponent(icon){return typeof icon=="function"?true:typeof icon=="object"&&icon!==null&&!React8.isValidElement(icon)&&"$$typeof"in icon}function renderWorkbenchIcon(icon,className){return icon?React8.isValidElement(icon)?icon:isWorkbenchIconComponent(icon)?jsxRuntime.jsx(icon,{className}):icon:null}function getWorkbenchIconComponent(icon){return !icon||!isWorkbenchIconComponent(icon)?null:icon}var getDefaultGalleryDetailLimit=density=>density==="compact"?2:density==="detailed"?6:4,getNormalizedGalleryBentoColumns=(columns,density)=>columns===1||columns===2||columns===3?Number(columns):density==="detailed"?1:2,getNormalizedGalleryDetailLimit=({density,visibility,limit})=>{if(visibility==="all")return Number.POSITIVE_INFINITY;let parsedLimit=Number.parseInt(String(limit),10);return Number.isFinite(parsedLimit)&&parsedLimit>0?parsedLimit:getDefaultGalleryDetailLimit(density)},getGalleryCardPaddingClassName=density=>density==="compact"?"p-3":density==="detailed"?"p-4":"p-3.5",getGalleryPreviewClassName=(density,isMasonry)=>isMasonry?"h-auto w-full object-cover":density==="compact"?"h-32 w-full object-cover":density==="detailed"?"h-48 w-full object-cover":"h-40 w-full object-cover",getGalleryDetailGridClassName=columns=>columns===1?"grid-cols-1":columns===3?"grid-cols-1 sm:grid-cols-2 2xl:grid-cols-3":"grid-cols-1 sm:grid-cols-2";function getIconComponent(icon){return getWorkbenchIconComponent(icon)}function defaultFormatLabel(value){return value}function getLabelText(value){return typeof value=="string"||typeof value=="number"?String(value):""}function WorkbenchGalleryCard({row:row2,columns,onClick,cardInteraction="button",cardPresentation,renderCardSlot,renderCoverTitle,isSelected=false,isMasonry=false,galleryFieldKey="auto",galleryDensity="comfortable",galleryBentoColumns,galleryDetailVisibility="limit",galleryDetailLimit,galleryDetailPresentation="tiles",shouldEnhanceMultimodal=true,getFieldValue,isMediaColumn,isTitleCandidate,isSummaryCandidate,getDisplayText,renderFieldValue,getImagePreviewSrc,isImageField,isAudioField,AudioPlayerComponent,cardVariant="default",renderPreview,renderMeta,renderLeadingVisual,resolveRecordVisual,hiddenDetailFieldKeys=[],labels,formatLabel=defaultFormatLabel,className}){let resolvedGetFieldValue=getFieldValue||getDefaultGalleryFieldValue,resolvedGetDisplayText=getDisplayText||getDefaultGalleryDisplayText,resolvedIsImageField=isImageField||isDefaultGalleryImageField,resolvedIsAudioField=isAudioField||isDefaultGalleryAudioField,resolvedGetImagePreviewSrc=getImagePreviewSrc||getDefaultGalleryImagePreviewSrc,resolvedIsMediaColumn=isMediaColumn||((column,candidateRow)=>isDefaultGalleryMediaColumn(column,candidateRow,{getFieldValue:resolvedGetFieldValue,shouldEnhanceMultimodal,isImageField:resolvedIsImageField,isAudioField:resolvedIsAudioField})),resolvedIsTitleCandidate=isTitleCandidate||((column,candidateRow)=>isDefaultGalleryTitleCandidate(column,candidateRow,{isMediaColumn:resolvedIsMediaColumn})),resolvedIsSummaryCandidate=isSummaryCandidate||((column,candidateRow)=>isDefaultGallerySummaryCandidate(column,candidateRow,{isMediaColumn:resolvedIsMediaColumn})),resolvedRenderFieldValue=renderFieldValue||((column,candidateRow,{compact}={})=>renderDefaultGalleryFieldValue(column,candidateRow,{compact,getFieldValue:resolvedGetFieldValue,getDisplayText:resolvedGetDisplayText})),isPreviewOnly=cardVariant==="preview-only",isImageOnly=cardVariant==="image-only",isChromaticBento=cardVariant==="chromatic-bento",mediaColumn=(galleryFieldKey!=="auto"?columns.find(column=>column.key===galleryFieldKey&&resolvedIsMediaColumn(column,row2)):null)||(shouldEnhanceMultimodal?columns.find(column=>resolvedIsMediaColumn(column,row2)):null),iconColumn=columns.find(column=>column.renderType==="icon"),iconVisual=iconColumn&&resolveRecordVisual?resolveRecordVisual(row2[iconColumn.key],row2,iconColumn):null,IconComponent=getIconComponent(iconVisual?.Icon||iconVisual?.icon),mediaValue=mediaColumn?resolvedGetFieldValue(mediaColumn,row2):null,isImageMedia=mediaColumn?resolvedIsImageField(mediaColumn,mediaValue):false,isAudioMedia=mediaColumn?resolvedIsAudioField(mediaColumn,mediaValue):false,contentColumns=columns.filter(column=>column.key!==mediaColumn?.key&&column.renderType!=="icon"),titleColumn=contentColumns.filter(column=>{if(!column||resolvedIsMediaColumn(column,row2)||!resolvedIsTitleCandidate(column,row2))return false;let value=resolvedGetFieldValue(column,row2);return !(value==null||value==="")})[0]||null,titleText=resolvedGetDisplayText(titleColumn?resolvedGetFieldValue(titleColumn,row2):row2.linkKey||row2.id),summaries=contentColumns.filter(column=>column&&column.key!==titleColumn?.key&&!resolvedIsMediaColumn(column,row2)&&resolvedIsSummaryCandidate(column,row2)).map(column=>({column,text:String(resolvedGetDisplayText(resolvedGetFieldValue(column,row2)))})),summaryColumn=(summaries.find(({text:text10})=>text10!=="\u2014"&&text10.length>12)||summaries.find(({text:text10})=>text10!=="\u2014"))?.column||null,summaryText=summaryColumn?resolvedGetDisplayText(resolvedGetFieldValue(summaryColumn,row2)):"",hiddenDetailKeySet=new Set(hiddenDetailFieldKeys),detailColumns=contentColumns.filter(column=>column.key!==titleColumn?.key&&column.key!==summaryColumn?.key&&!hiddenDetailKeySet.has(column.key)),resolvedDetailLimit=getNormalizedGalleryDetailLimit({density:galleryDensity,visibility:galleryDetailVisibility,limit:galleryDetailLimit}),visibleDetailColumns=Number.isFinite(resolvedDetailLimit)?detailColumns.slice(0,resolvedDetailLimit):detailColumns,isDetailedCard=galleryDensity==="detailed",resolvedBentoColumns=getNormalizedGalleryBentoColumns(galleryBentoColumns,galleryDensity),cardPaddingClassName=getGalleryCardPaddingClassName(galleryDensity),detailGridClassName=getGalleryDetailGridClassName(resolvedBentoColumns),lineDetails=galleryDetailPresentation==="lines",previewClassName=isImageOnly?cardPresentation?"block h-auto w-full":"block h-auto w-full transition-transform duration-500 group-hover:scale-[1.02]":getGalleryPreviewClassName(galleryDensity,isMasonry),customPreview=typeof renderPreview=="function"?renderPreview({row:row2,mediaColumn,mediaValue,isImageMedia,isAudioMedia,iconVisual,IconComponent,previewClassName}):null,metaContext={row:row2,contentColumns,detailColumns,titleColumn,summaryColumn,getDisplayText:resolvedGetDisplayText,getFieldValue:resolvedGetFieldValue},metaContent=renderMeta?.(metaContext)??null,customLeadingVisual=renderLeadingVisual?.({...metaContext,iconVisual})??null,defaultLeadingVisual=!customLeadingVisual&&iconVisual?jsxRuntime.jsx("div",{className:cn("flex h-9 w-9 items-center justify-center rounded-lg border",iconVisual.chipClassName||"border-primary/20 bg-primary/10 text-primary"),children:renderWorkbenchIcon(iconVisual.Icon||iconVisual.icon,cn("h-4 w-4",iconVisual.iconClassName||"text-primary"))}):null,leadingVisual=customLeadingVisual||defaultLeadingVisual,defaultMetaClassName=isChromaticBento?"shrink-0 rounded-full border border-border/40 bg-muted/25 px-2.5 py-1 text-[10px] text-muted-foreground transition-all duration-300 group-hover:border-primary/30 group-hover:bg-primary/10 group-hover:text-primary dark:border-border/35 dark:bg-muted/15":"shrink-0 rounded-md border border-border/40 bg-muted/25 px-2 py-1 text-[10px] text-muted-foreground dark:border-border/35 dark:bg-muted/15",detailCellClassName=isChromaticBento?"rounded-xl border border-border/35 bg-muted/20 px-3 py-2.5 transition-all duration-300 group-hover:border-primary/25 group-hover:bg-primary/5 dark:border-border/30 dark:bg-muted/10":"rounded-lg border border-border/35 bg-muted/20 px-2.5 py-2 dark:border-border/30 dark:bg-muted/10",detailLabelClassName=isChromaticBento?"text-[10px] uppercase tracking-[0.14em] text-muted-foreground transition-colors duration-300 group-hover:text-foreground":"text-[10px] uppercase tracking-[0.12em] text-muted-foreground",detailValueClassName=isChromaticBento?"mt-1.5 text-[11px] text-muted-foreground transition-colors duration-300 group-hover:text-foreground [&_*]:max-w-full [&_pre]:text-[11px] [&_pre]:leading-relaxed":"mt-1.5 text-[11px] text-foreground [&_*]:max-w-full [&_pre]:text-[11px] [&_pre]:leading-relaxed",fieldCountLabel=labels?.fieldCount?.(contentColumns.length),coverOnlyHint=labels?.coverOnlyHint,previewImageSrc=customPreview==null&&isImageMedia&&mediaColumn?resolvedGetImagePreviewSrc(mediaValue,row2.id,mediaColumn.label):void 0,preview=customPreview??jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[isImageMedia&&mediaColumn?jsxRuntime.jsx("div",{className:cn("overflow-hidden bg-card/50",isImageOnly?"rounded-[inherit] bg-transparent":isPreviewOnly?"rounded-[inherit]":"mb-3 rounded-lg border border-border/70"),children:jsxRuntime.jsx("img",{src:previewImageSrc,style:svgPreviewSurface(previewImageSrc),alt:typeof mediaValue?.alt=="string"?mediaValue.alt:typeof mediaValue=="string"?mediaValue:String(mediaColumn.label||""),className:previewClassName,loading:"lazy",referrerPolicy:"no-referrer",onError:event=>{event.currentTarget.onerror=null,event.currentTarget.src=resolvedGetImagePreviewSrc("",row2.id,mediaColumn.label);}})}):null,!isImageMedia&&iconVisual&&isPreviewOnly?jsxRuntime.jsx("div",{className:cn("flex items-center justify-center","rounded-[inherit] border py-10",iconVisual.chipClassName||"border-primary/20 bg-primary/5"),children:renderWorkbenchIcon(iconVisual.Icon||iconVisual.icon,cn("h-10 w-10",iconVisual.iconClassName||"text-primary"))}):null,isAudioMedia&&AudioPlayerComponent?jsxRuntime.jsx("div",{className:cn(!isPreviewOnly&&"mb-3"),children:jsxRuntime.jsx(AudioPlayerComponent,{filename:String(mediaValue)})}):null]}),Surface=cardPresentation?WorkbenchGalleryCardSurface:null,surfaceTitleColumn=cardPresentation?.title?.fieldId?columns.find(column=>column.key===cardPresentation.title?.fieldId):titleColumn,surfaceTitle=renderCoverTitle?renderCoverTitle(row2):surfaceTitleColumn?resolvedGetDisplayText(resolvedGetFieldValue(surfaceTitleColumn,row2)):titleText,hasSlots=!!cardPresentation?.slots?.length,Root29=hasSlots||cardInteraction==="container"?"div":"button";return jsxRuntime.jsxs(Root29,{"data-gallery-card":true,"data-card-hover-effect":cardPresentation?.hover?.effect,type:Root29==="button"?"button":void 0,role:hasSlots&&cardInteraction==="button"&&onClick?"group":void 0,tabIndex:hasSlots&&cardInteraction==="button"&&onClick?0:void 0,onKeyDown:hasSlots&&cardInteraction==="button"&&onClick?event=>{event.target===event.currentTarget&&(event.key==="Enter"||event.key===" ")&&(event.preventDefault(),onClick());}:void 0,onClick:cardInteraction==="button"?event=>{(!hasSlots||!event.target.closest("button,a,input,select,textarea,[role=button],[role=menuitem]"))&&onClick?.();}:void 0,"aria-label":getLabelText(titleText),className:cn("group relative w-full rounded-lg text-left transition-all duration-300",isImageOnly?"overflow-hidden bg-transparent p-0 shadow-none":isPreviewOnly?"overflow-hidden bg-transparent p-0":cn("overflow-hidden border",isChromaticBento&&"shadow-none"),!isPreviewOnly&&!isImageOnly&&cardPaddingClassName,!isPreviewOnly&&!isImageOnly&&(isSelected?isChromaticBento?"border-primary/35 bg-background/85 ring-1 ring-primary/20":"border-primary/40 bg-primary/10 ring-1 ring-primary/30":isChromaticBento?cardPresentation?"workbench-surface-card":"workbench-surface-card hover:-translate-y-1 hover:border-primary/20":cardPresentation?"workbench-surface-card":"workbench-surface-card hover:border-primary/30"),isPreviewOnly&&isSelected&&"ring-1 ring-primary/30",isImageOnly&&(isSelected?"ring-1 ring-primary/30":!cardPresentation&&"hover:-translate-y-0.5"),isMasonry?"block h-full w-full min-w-0":"h-full min-w-0",className),children:[isChromaticBento?jsxRuntime.jsx("div",{"aria-hidden":"true",className:cn("pointer-events-none absolute inset-0 bg-[radial-gradient(circle_at_top_right,hsl(var(--primary)/0.18),transparent_40%),radial-gradient(circle_at_bottom_left,hsl(var(--accent)/0.18),transparent_45%)] opacity-0 transition-opacity duration-300",isSelected?"opacity-100":"group-hover:opacity-100")}):null,jsxRuntime.jsxs("div",{className:cn("relative z-[1]",(isImageOnly||isPreviewOnly)&&"rounded-[inherit]"),children:[Surface&&cardPresentation?jsxRuntime.jsx(Surface,{presentation:cardPresentation,title:surfaceTitle,renderSlot:slot=>renderCardSlot?.(slot,metaContext),children:preview}):preview,!isPreviewOnly&&!isImageOnly?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-3",children:[leadingVisual?jsxRuntime.jsx("div",{className:"shrink-0",children:leadingVisual}):null,jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-1 items-start justify-between gap-3",children:[jsxRuntime.jsxs("div",{className:"min-w-0 flex-1",children:[!cardPresentation?.title&&jsxRuntime.jsx("div",{className:cn("flex items-center gap-2 text-sm font-semibold",isChromaticBento?"text-muted-foreground transition-colors duration-300 group-hover:text-foreground":"text-foreground"),children:jsxRuntime.jsx("span",{className:"truncate",children:cardInteraction==="container"&&onClick?jsxRuntime.jsx("button",{type:"button",onClick,className:"border-0 bg-transparent p-0 text-left hover:underline",style:{font:"inherit",color:"inherit"},children:titleText}):titleText})}),summaryText&&summaryText!==titleText?jsxRuntime.jsx("div",{className:cn("mt-1 text-[11px] leading-5 text-muted-foreground",isDetailedCard?"line-clamp-4":"line-clamp-2",isChromaticBento&&"transition-colors duration-300 group-hover:text-foreground"),children:summaryText}):null]}),metaContent??(hasRenderableNode(fieldCountLabel)?jsxRuntime.jsx("span",{className:defaultMetaClassName,children:fieldCountLabel}):null)]})]}),visibleDetailColumns.length>0?jsxRuntime.jsx("div",{"data-gallery-detail-presentation":galleryDetailPresentation,className:cn("mt-3 grid grid-flow-row gap-2",lineDetails?"grid-cols-1":detailGridClassName),children:visibleDetailColumns.map(column=>jsxRuntime.jsxs("div",{className:lineDetails?"flex min-w-0 items-start gap-2 text-xs":detailCellClassName,children:[column.label?jsxRuntime.jsx("div",{className:lineDetails?"shrink-0 text-muted-foreground":detailLabelClassName,children:formatLabel(column.label,{column})}):null,jsxRuntime.jsx("div",{className:lineDetails?"min-w-0 text-foreground":cn(detailValueClassName,!column.label&&"mt-0"),children:resolvedRenderFieldValue(column,row2,{compact:galleryDensity!=="detailed",surface:"gallery"})})]},`${row2.id||row2.linkKey}-${column.key}`))}):null,!titleColumn&&!summaryText&&visibleDetailColumns.length===0&&hasRenderableNode(coverOnlyHint)?jsxRuntime.jsx("div",{className:cn("mt-3 text-[11px] text-muted-foreground",isChromaticBento&&"transition-colors duration-300 group-hover:text-foreground"),children:coverOnlyHint}):null]}):null]})]})}function placeWindowedItems(heights,columns,width,gap,mode){let bottoms=Array.from({length:columns},()=>0),rowTop=0,rowHeight=0,placements=heights.map((height,index)=>{if(mode==="rail")return {index,left:index*(width+gap),top:0,width,height};if(mode==="grid")return index>0&&index%columns===0&&(rowTop+=rowHeight+gap,rowHeight=0),rowHeight=Math.max(rowHeight,height),{index,left:index%columns*(width+gap),top:rowTop,width,height};let column=bottoms.indexOf(Math.min(...bottoms)),top=bottoms[column];return bottoms[column]=top+height+gap,{index,left:column*(width+gap),top,width,height}});return {placements,height:Math.max(0,...placements.map(item=>item.top+item.height)),width:mode==="rail"?Math.max(0,heights.length*(width+gap)-gap):columns*(width+gap)-gap}}function visibleWindow(placements,start,length,horizontal,overscan){let low=start-overscan,high=start+length+overscan;return placements.filter(item=>{let offset2=horizontal?item.left:item.top;return offset2<=high&&offset2+(horizontal?item.width:item.height)>=low})}function WorkbenchWindowedLayout({items,getKey,layout,cardWidth,estimateHeight,getScrollOwner,railRef,tailRef,containerProps,getItemProps,renderItem}){let horizontal=layout.mode==="rail",columns=horizontal?1:layout.columnCount,width=Math.max(1,horizontal?cardWidth??280:layout.columnWidth),rootRef=React8.useRef(null),nodes=React8.useRef(new Map),observer=React8.useRef(),[measurements,setMeasurements]=React8.useState({width,heights:{}}),[viewport,setViewport]=React8.useState({start:0,length:horizontal?1280:720}),[focused,setFocused]=React8.useState(),[requestedFocus,setRequestedFocus]=React8.useState(),keys=items.map(getKey),signature=JSON.stringify(keys),heights=keys.map((key3,index)=>measurements.heights[key3]??Math.max(1,estimateHeight(items[index],width))),geometry=React8.useMemo(()=>placeWindowedItems(heights,columns,width,layout.gap,horizontal?"rail":layout.mode==="grid"?"grid":"masonry"),[JSON.stringify(heights),columns,width,layout.gap,horizontal,layout.mode]),updateViewport=React8.useCallback(()=>{let node=rootRef.current,owner=getScrollOwner();if(!node||!owner)return;let rootBounds=node.getBoundingClientRect(),ownerBounds=owner.getBoundingClientRect(),start=horizontal?owner.scrollLeft:ownerBounds.top+owner.clientTop-rootBounds.top,length=horizontal?owner.clientWidth:owner.clientHeight;length<=0||setViewport(previous=>previous.start===start&&previous.length===length?previous:{start,length});},[getScrollOwner,horizontal]);React8.useLayoutEffect(()=>{updateViewport();},[updateViewport,geometry.height,geometry.width]),React8.useEffect(()=>{let owner=getScrollOwner();if(!owner)return;let frame=0,update=()=>{frame||(frame=requestAnimationFrame(()=>{frame=0,updateViewport();}));};owner.addEventListener("scroll",update,{passive:true}),window.addEventListener("resize",update);let resize=typeof ResizeObserver=="function"?new ResizeObserver(update):void 0;return resize?.observe(owner),rootRef.current&&resize?.observe(rootRef.current),()=>{owner.removeEventListener("scroll",update),window.removeEventListener("resize",update),resize?.disconnect(),cancelAnimationFrame(frame);}},[getScrollOwner,updateViewport]),React8.useEffect(()=>{if(typeof ResizeObserver!="function")return;let resize=new ResizeObserver(entries=>{setMeasurements(previous=>{let next={...previous.heights},changed=previous.width!==width;for(let entry of entries){let key3=entry.target.dataset.windowKey,height=entry.target.getBoundingClientRect().height;key3!==void 0&&height>0&&next[key3]!==height&&(next[key3]=height,changed=true);}return changed?{width,heights:next}:previous});});return observer.current=resize,nodes.current.forEach(node=>resize.observe(node)),()=>{resize.disconnect(),observer.current=void 0;}},[width]),React8.useEffect(()=>{let liveKeys=new Set(keys);setMeasurements(previous=>({width:previous.width,heights:Object.fromEntries(Object.entries(previous.heights).filter(([key3])=>liveKeys.has(key3)))}));},[signature]);let register=(key3,node)=>{let previous=nodes.current.get(key3);if(previous&&observer.current?.unobserve(previous),!node){nodes.current.delete(key3);return}node.dataset.windowKey=key3,nodes.current.set(key3,node),observer.current?.observe(node);},overscan=viewport.length,visible=visibleWindow(geometry.placements,viewport.start,viewport.length,horizontal,overscan),mounted=new Set(visible.map(item=>item.index));for(let key3 of [focused,requestedFocus]){let index=key3===void 0?-1:keys.indexOf(key3);index>=0&&mounted.add(index);}React8.useLayoutEffect(()=>{if(!requestedFocus)return;let node=nodes.current.get(requestedFocus)?.parentElement;node&&(node.focus(),node.scrollIntoView({block:"nearest",inline:"nearest"}),setRequestedFocus(void 0));},[requestedFocus]);let itemContext={...layout,columnWidth:width,itemWidth:width};return jsxRuntime.jsxs("div",{...containerProps,ref:node=>{rootRef.current=node,railRef&&(railRef.current=node);},"data-collection-windowed":"","data-collection-total":items.length,style:{...containerProps.style,position:"relative",...horizontal?{overflowX:"auto",height:geometry.height+12}:{height:geometry.height},overflowAnchor:"none"},children:[horizontal?jsxRuntime.jsx("div",{"aria-hidden":"true",style:{width:geometry.width,height:1,pointerEvents:"none"}}):null,Array.from(mounted).sort((a,b)=>a-b).map(index=>{let item=items[index],key3=keys[index],position=geometry.placements[index],props=getItemProps(item,itemContext);return jsxRuntime.jsx("div",{...props,"aria-posinset":index+1,"aria-setsize":items.length,onFocus:event=>{setFocused(key3),props.onFocus?.(event);},onBlur:event=>{event.currentTarget.contains(event.relatedTarget)||setFocused(void 0),props.onBlur?.(event);},onKeyDown:event=>{if(event.target===event.currentTarget){let step=horizontal?1:columns,next=event.key==="Home"?0:event.key==="End"?items.length-1:event.key==="ArrowRight"?index+1:event.key==="ArrowLeft"?index-1:event.key==="ArrowDown"?index+step:event.key==="ArrowUp"?index-step:void 0;if(next!==void 0){event.preventDefault(),setRequestedFocus(keys[Math.min(items.length-1,Math.max(0,next))]);return}}props.onKeyDown?.(event);},style:{...props.style,position:"absolute",left:position.left,top:position.top,width:position.width},children:jsxRuntime.jsx("div",{ref:node=>register(key3,node),children:renderItem(item,itemContext)})},key3)}),tailRef?jsxRuntime.jsx("div",{ref:tailRef,"aria-hidden":"true",style:{position:"absolute",left:Math.max(0,geometry.width-1),top:0,width:1,height:1}}):null]})}var DEFAULT_MASONRY_GAP_PX=12,DEFAULT_MASONRY_ROW_HEIGHT_PX=8,DEFAULT_MASONRY_COLUMN_WIDTH_PX=280,DEFAULT_MASONRY_ITEM_HEIGHT_PX=240,useIsomorphicLayoutEffect=typeof window>"u"?React8.useEffect:React8.useLayoutEffect;function clamp2(value,min,max){return Math.min(Math.max(value,min),max)}function getRootFontSize(node){if(typeof window>"u")return 16;let target=node||document.documentElement,parsed=Number.parseFloat(window.getComputedStyle(target).fontSize);return Number.isFinite(parsed)&&parsed>0?parsed:16}function resolveLengthToPixels(value,fallback2,node){if(typeof value=="number"&&Number.isFinite(value)&&value>0)return value;if(typeof value!="string")return fallback2;let normalized=value.trim().toLowerCase();if(!normalized)return fallback2;if(/^\d+(\.\d+)?$/.test(normalized)){let parsed=Number.parseFloat(normalized);return Number.isFinite(parsed)&&parsed>0?parsed:fallback2}if(normalized.endsWith("px")){let parsed=Number.parseFloat(normalized);return Number.isFinite(parsed)&&parsed>0?parsed:fallback2}if(normalized.endsWith("rem")){let parsed=Number.parseFloat(normalized);return !Number.isFinite(parsed)||parsed<=0?fallback2:parsed*getRootFontSize(node)}return fallback2}function areMeasurementMapsEqual(prev,next){let prevKeys=Object.keys(prev),nextKeys=Object.keys(next);if(prevKeys.length!==nextKeys.length)return false;for(let key3 of nextKeys)if(prev[key3]!==next[key3])return false;return true}function getMasonryColumnCount({containerWidth,itemCount,targetColumnWidth,gap}){if(!containerWidth)return 1;let safeItemCount=Math.max(itemCount,1),maxCandidate=Math.max(1,Math.min(safeItemCount,Math.ceil((containerWidth+gap)/(Math.max(targetColumnWidth*.58,1)+gap)))),bestCount=1,bestScore=Number.POSITIVE_INFINITY;for(let candidateCount=1;candidateCount<=maxCandidate;candidateCount+=1){let actualColumnWidth=(containerWidth-gap*Math.max(candidateCount-1,0))/candidateCount;if(!Number.isFinite(actualColumnWidth)||actualColumnWidth<=0)continue;let underflowPenalty=Math.max(0,targetColumnWidth*.78-actualColumnWidth),overflowPenalty=Math.max(0,actualColumnWidth-targetColumnWidth*1.35),candidateScore=Math.abs(actualColumnWidth-targetColumnWidth)+underflowPenalty*3+overflowPenalty*2;candidateScore<bestScore&&(bestScore=candidateScore,bestCount=candidateCount);}return bestCount}function getItemColumnSpan({size:size2,columnWidth,columnCount,gap}){if(Number.isFinite(size2?.columnSpan)&&Number(size2?.columnSpan)>0)return clamp2(Math.round(Number(size2?.columnSpan)),1,columnCount);let itemWidth=resolveLengthToPixels(size2?.width,columnWidth,null);return clamp2(Math.ceil((itemWidth+gap)/(columnWidth+gap)),1,columnCount)}function getItemRowSpan({size:size2,measuredHeight,rowHeight,gap}){if(Number.isFinite(size2?.rowSpan)&&Number(size2?.rowSpan)>0)return Math.max(1,Math.round(Number(size2?.rowSpan)));let itemHeight=Number.isFinite(measuredHeight)&&Number(measuredHeight)>0?Number(measuredHeight):resolveLengthToPixels(size2?.height,DEFAULT_MASONRY_ITEM_HEIGHT_PX,null);return Math.max(1,Math.ceil((itemHeight+gap)/(rowHeight+gap)))}function getResolvedItemHeight({size:size2,measuredHeight}){return Number.isFinite(measuredHeight)&&Number(measuredHeight)>0?Number(measuredHeight):resolveLengthToPixels(size2?.height,DEFAULT_MASONRY_ITEM_HEIGHT_PX,null)}function WorkbenchMasonryLayout({items=[],renderItem,getItemKey=(item,index)=>item?.id??item?.key??index,getItemSize,columnWidth=DEFAULT_MASONRY_COLUMN_WIDTH_PX,columnCount:requestedColumnCount,gap=DEFAULT_MASONRY_GAP_PX,rowHeight=DEFAULT_MASONRY_ROW_HEIGHT_PX,placementStrategy="shelf",containerProps,getItemProps,className}){let containerRef=React8.useRef(null),itemNodesRef=React8.useRef(new Map),itemObserverRef=React8.useRef(null),[containerWidth,setContainerWidth]=React8.useState(0),[measuredHeights,setMeasuredHeights]=React8.useState({}),itemKeys=React8.useMemo(()=>items.map((item,index)=>String(getItemKey(item,index))),[getItemKey,items]),itemKeysSignature=itemKeys.join("|");React8.useEffect(()=>{let node=containerRef.current;if(!node)return;let updateWidth=()=>{let nextWidth=Math.round(node.getBoundingClientRect().width);setContainerWidth(prevWidth=>prevWidth===nextWidth?prevWidth:nextWidth);};if(updateWidth(),typeof ResizeObserver=="function"){let observer=new ResizeObserver(()=>updateWidth());return observer.observe(node),()=>observer.disconnect()}return window.addEventListener("resize",updateWidth),()=>window.removeEventListener("resize",updateWidth)},[]),React8.useEffect(()=>{setMeasuredHeights(prev=>{let currentItemKeys=new Set(itemKeys),next=Object.fromEntries(Object.entries(prev).filter(([key3])=>currentItemKeys.has(key3)));return areMeasurementMapsEqual(prev,next)?prev:next});},[itemKeys,itemKeysSignature]);let resolvedTargetColumnWidth=resolveLengthToPixels(columnWidth,DEFAULT_MASONRY_COLUMN_WIDTH_PX,containerRef.current),isDensePlacement=placementStrategy==="dense",columnCount=(Number.isFinite(requestedColumnCount)&&Number(requestedColumnCount)>0?clamp2(Math.round(Number(requestedColumnCount)),1,24):void 0)||getMasonryColumnCount({containerWidth,itemCount:items.length,targetColumnWidth:resolvedTargetColumnWidth,gap}),resolvedColumnWidth=containerWidth>0?(containerWidth-gap*Math.max(columnCount-1,0))/columnCount:resolvedTargetColumnWidth,layoutItems=React8.useMemo(()=>items.map((item,index)=>{let key3=itemKeys[index],size2=typeof getItemSize=="function"?getItemSize(item,{columnCount,columnWidth:resolvedColumnWidth,containerWidth,gap,placementStrategy,rowHeight})||{}:{};return {key:key3,item,size:size2,columnSpan:getItemColumnSpan({size:size2,columnWidth:resolvedColumnWidth,columnCount,gap}),rowSpan:getItemRowSpan({size:size2,measuredHeight:measuredHeights[key3],rowHeight,gap})}}),[columnCount,containerWidth,gap,getItemSize,itemKeys,items,measuredHeights,placementStrategy,resolvedColumnWidth,rowHeight]);useIsomorphicLayoutEffect(()=>{let nextMeasurements={};itemNodesRef.current.forEach((node,key3)=>{let nextHeight=Math.ceil(node.getBoundingClientRect().height);Number.isFinite(nextHeight)&&nextHeight>0&&(nextMeasurements[key3]=nextHeight);}),setMeasuredHeights(prev=>{if(!Object.keys(nextMeasurements).length)return prev;let merged={...prev,...nextMeasurements};return areMeasurementMapsEqual(prev,merged)?prev:merged});},[columnCount,isDensePlacement,itemKeysSignature,resolvedColumnWidth]),React8.useEffect(()=>{if(typeof ResizeObserver!="function")return;let observer=new ResizeObserver(entries=>{setMeasuredHeights(prev=>{let next={...prev},didChange=false;for(let entry of entries){let key3=entry.target.dataset.masonryKey;if(!key3)continue;let nextHeight=Math.ceil(entry.contentRect.height);!Number.isFinite(nextHeight)||nextHeight<=0||next[key3]===nextHeight||(next[key3]=nextHeight,didChange=true);}return didChange?next:prev});});return itemObserverRef.current=observer,itemNodesRef.current.forEach(node=>observer.observe(node)),()=>{observer.disconnect(),itemObserverRef.current=null;}},[isDensePlacement,itemKeysSignature]);let registerItemNode=(key3,node)=>{let currentNodes=itemNodesRef.current,previousNode=currentNodes.get(key3);if(previousNode&&previousNode!==node&&itemObserverRef.current&&itemObserverRef.current.unobserve(previousNode),!node){currentNodes.delete(key3);return}node.dataset.masonryKey=key3,currentNodes.set(key3,node),itemObserverRef.current&&itemObserverRef.current.observe(node);};if(!isDensePlacement){let orderedLayout=(()=>{let columnBottoms=Array.from({length:columnCount},()=>0),nextColumnIndex=0,maxBottom=0,positionedItems=layoutItems.map(({key:key3,item,columnSpan,rowSpan,size:size2})=>{let resolvedSpan=clamp2(columnSpan,1,columnCount),startColumn=nextColumnIndex;if(placementStrategy==="shortest"){let shortestBottom=Number.POSITIVE_INFINITY;for(let candidate=0;candidate<=columnCount-resolvedSpan;candidate+=1){let candidateBottom=Math.max(...columnBottoms.slice(candidate,candidate+resolvedSpan));candidateBottom<shortestBottom&&(shortestBottom=candidateBottom,startColumn=candidate);}}else startColumn+resolvedSpan>columnCount&&(startColumn=0),startColumn=Math.min(startColumn,columnCount-resolvedSpan);let itemWidth=resolvedColumnWidth*resolvedSpan+gap*Math.max(resolvedSpan-1,0),itemHeight=getResolvedItemHeight({size:size2,measuredHeight:measuredHeights[key3]}),top=Math.max(...columnBottoms.slice(startColumn,startColumn+resolvedSpan)),left=startColumn*(resolvedColumnWidth+gap),bottom=top+itemHeight;for(let columnIndex=startColumn;columnIndex<startColumn+resolvedSpan;columnIndex+=1)columnBottoms[columnIndex]=bottom+gap;return maxBottom=Math.max(maxBottom,bottom),placementStrategy!=="shortest"&&(nextColumnIndex=startColumn+resolvedSpan,nextColumnIndex>=columnCount&&(nextColumnIndex=0)),{key:key3,item,columnSpan:resolvedSpan,itemHeight,itemWidth,left,rowSpan,size:size2,top}});return {containerHeight:Math.max(0,maxBottom),positionedItems}})();return jsxRuntime.jsx("div",{ref:containerRef,...containerProps,className:cn("relative w-full",className,containerProps?.className),style:{...containerProps?.style,height:`${orderedLayout.containerHeight}px`},children:orderedLayout.positionedItems.map(({key:key3,item,columnSpan,rowSpan,size:size2,itemWidth,left,top})=>{let unresolvedSingleColumnWidth=containerWidth<=0&&columnCount===1,itemWidthValue=unresolvedSingleColumnWidth?"100%":`${itemWidth}px`,layoutContext={columnCount,columnSpan,columnWidth:resolvedColumnWidth,containerWidth,gap,itemWidth,placementStrategy,rowSpan,rowHeight,size:size2},itemProps=getItemProps?.(item,layoutContext);return jsxRuntime.jsx("div",{...itemProps,className:cn("absolute min-w-0",itemProps?.className),style:{...itemProps?.style,left:unresolvedSingleColumnWidth?0:`${left}px`,top:`${top}px`,width:itemWidthValue,maxWidth:itemWidthValue},children:jsxRuntime.jsx("div",{ref:node=>registerItemNode(key3,node),role:"presentation",className:"min-w-0",children:renderItem(item,layoutContext)})},key3)})})}return jsxRuntime.jsx("div",{ref:containerRef,...containerProps,className:cn("grid w-full items-start",className,containerProps?.className),style:{...containerProps?.style,gap:`${gap}px`,gridAutoFlow:"row dense",gridAutoRows:`${rowHeight}px`,gridTemplateColumns:`repeat(${columnCount}, minmax(0, 1fr))`},children:layoutItems.map(({key:key3,item,columnSpan,rowSpan,size:size2})=>{let layoutContext={columnCount,columnSpan,columnWidth:resolvedColumnWidth,containerWidth,gap,placementStrategy,rowSpan,rowHeight,size:size2},itemProps=getItemProps?.(item,layoutContext);return jsxRuntime.jsx("div",{...itemProps,className:cn("min-w-0",itemProps?.className),style:{...itemProps?.style,gridColumn:`span ${columnSpan}`,gridRow:`span ${rowSpan}`},children:jsxRuntime.jsx("div",{ref:node=>registerItemNode(key3,node),role:"presentation",className:"min-w-0",children:renderItem(item,layoutContext)})},key3)})})}var DEFAULT_PROVISIONAL_CAPACITY=12,DEFAULT_GRID_ASPECT_RATIOS=[1],DEFAULT_RAIL_ASPECT_RATIOS=[4/3],DEFAULT_MASONRY_ASPECT_RATIOS=[1,4/5,3/2,3/4,5/4],MIN_SKELETON_ASPECT_RATIO=.5,MAX_SKELETON_ASPECT_RATIO=2,SKELETON_BACKGROUND_COLOR="hsl(var(--monkeys-color-muted, var(--muted)))";function clamp3(value,min,max){return Math.min(Math.max(value,min),max)}function normalizeCount(value,fallback2,max){return typeof value!="number"||!Number.isFinite(value)||value<=0?fallback2:clamp3(Math.round(value),1,max)}function getDefaultAspectRatios(mode){return mode==="masonry"||mode==="dense"?DEFAULT_MASONRY_ASPECT_RATIOS:mode==="rail"?DEFAULT_RAIL_ASPECT_RATIOS:DEFAULT_GRID_ASPECT_RATIOS}function resolveAspectRatios(mode,values){let normalized=values?.filter(value=>typeof value=="number"&&Number.isFinite(value)&&value>0).map(value=>clamp3(value,MIN_SKELETON_ASPECT_RATIO,MAX_SKELETON_ASPECT_RATIO));return normalized?.length?normalized:getDefaultAspectRatios(mode)}function resolveWorkbenchCollectionSkeletonCapacity(config){return normalizeCount(config?.count,DEFAULT_PROVISIONAL_CAPACITY,48)}function resolveWorkbenchCollectionLoadingVariant(value){if(value===void 0)return "skeleton";if(value==="skeleton"||value==="spinner")return value;throw new TypeError('WorkbenchCollection loading.variant must be "skeleton" or "spinner".')}function resolveSkeletonCount({columnCount,config,phase}){if(phase==="initial"){let fallback3=clamp3(columnCount*2,6,24);return normalizeCount(config?.count,fallback3,48)}let fallback2=clamp3(columnCount,1,12);return normalizeCount(config?.loadMoreCount,fallback2,24)}function getSkeletonHeight(columnWidth,aspectRatio){return Math.max(1,columnWidth/aspectRatio)}function WorkbenchCollectionSkeleton({mode,phase,columnCount,columnWidth,cardWidth,gap,rowHeight,config,ariaLabel,className}){let count=resolveSkeletonCount({columnCount,config,phase}),aspectRatios=resolveAspectRatios(mode,config?.aspectRatios),animated=config?.animated??true,items=React8.useMemo(()=>Array.from({length:count},(_,index)=>({aspectRatio:aspectRatios[index%aspectRatios.length],key:`${phase}-${index}`,index})),[aspectRatios,count,phase]),renderSkeleton=(item,style)=>jsxRuntime.jsx(SkeletonItem,{index:item.index,children:jsxRuntime.jsx(BaseSkeleton,{variant:"block",animated,className:"h-auto w-full rounded-lg",style:{backgroundColor:SKELETON_BACKGROUND_COLOR,...style??{aspectRatio:String(item.aspectRatio)}},"data-collection-skeleton-item":"","data-skeleton-aspect-ratio":item.aspectRatio})});return jsxRuntime.jsx(SkeletonScope,{animation:config?.animation,animated,children:jsxRuntime.jsx("div",{role:"status","aria-label":ariaLabel,"aria-atomic":"true","data-collection-loading":phase,"data-layout-mode":mode,className:"min-w-0",children:mode==="masonry"||mode==="dense"?jsxRuntime.jsx(WorkbenchMasonryLayout,{items,columnCount,columnWidth,gap,rowHeight,placementStrategy:mode==="dense"?"dense":"shortest",className,containerProps:{"aria-hidden":true},getItemKey:item=>item.key,getItemSize:(item,layout)=>({height:getSkeletonHeight(layout.columnWidth,item.aspectRatio)}),renderItem:(item,layout)=>renderSkeleton(item,{height:`${getSkeletonHeight(layout.columnWidth,item.aspectRatio)}px`})}):mode==="rail"?jsxRuntime.jsx("div",{"aria-hidden":"true",className:cn("grid min-w-0 grid-flow-col items-start overflow-x-auto",className),style:{gap,gridAutoColumns:typeof cardWidth=="number"?`${cardWidth}px`:cardWidth??`${columnWidth}px`},children:items.map(item=>jsxRuntime.jsx("div",{children:renderSkeleton(item)},item.key))}):jsxRuntime.jsx("div",{"aria-hidden":"true",className:cn("grid min-w-0 items-start",className),style:{gap,gridTemplateColumns:`repeat(${columnCount}, minmax(0, 1fr))`},children:items.map(item=>jsxRuntime.jsx("div",{children:renderSkeleton(item)},item.key))})})})}function setsEqual(left,right){if(left.size!==right.size)return false;for(let value of left)if(!right.has(value))return false;return true}function getComparableKey(key3){return String(key3)}function getDefaultBehavior(mode){return mode==="multiple"?"toggle":"replace"}function useWorkbenchCollectionSelection({items,getItemKey,mode="none",behavior,selectedKeys:controlledSelectedKeys,defaultSelectedKeys,isItemDisabled,onSelectionChange}){let controlled=controlledSelectedKeys!==void 0,[internalSelectedKeys,setInternalSelectedKeys]=React8.useState(()=>new Set(defaultSelectedKeys??[])),anchorKeyRef=React8.useRef(null),onSelectionChangeRef=React8.useRef(onSelectionChange);onSelectionChangeRef.current=onSelectionChange;let normalizedItems=React8.useMemo(()=>{let seenKeys=new Map;return items.map((item,index)=>{let key3=getItemKey(item,index),comparableKey=getComparableKey(key3),duplicateIndex=seenKeys.get(comparableKey);if(duplicateIndex!==void 0)throw new TypeError(`useWorkbenchCollectionSelection received duplicate item key "${comparableKey}" at indices ${duplicateIndex} and ${index}.`);return seenKeys.set(comparableKey,index),{item,index,key:key3}})},[getItemKey,items]),itemByKey=React8.useMemo(()=>{let entries=new Map;return normalizedItems.forEach(entry=>entries.set(entry.key,entry)),entries},[normalizedItems]),selectedKeys=React8.useMemo(()=>mode==="none"?new Set:controlled?new Set(controlledSelectedKeys??[]):internalSelectedKeys,[controlled,controlledSelectedKeys,internalSelectedKeys,mode]),selectedKeysRef=React8.useRef(selectedKeys);selectedKeysRef.current=selectedKeys;let resetAnchor=React8.useCallback(()=>{anchorKeyRef.current=null;},[]);React8.useEffect(()=>{if(controlled)return;let availableKeys=new Set(normalizedItems.map(({key:key3})=>key3));setInternalSelectedKeys(previous=>{let next=new Set(Array.from(previous).filter(key3=>availableKeys.has(key3)));return setsEqual(previous,next)?previous:(selectedKeysRef.current=next,next)});},[controlled,normalizedItems]),React8.useEffect(()=>{let anchorKey=anchorKeyRef.current;if(mode!=="multiple"||selectedKeys.size===0||anchorKey===null){resetAnchor();return}let anchor=itemByKey.get(anchorKey);(!anchor||isItemDisabled?.(anchor.item,anchor.index))&&resetAnchor();},[isItemDisabled,itemByKey,mode,resetAnchor,selectedKeys.size]);let selectKey=React8.useCallback((key3,intent={})=>{if(mode==="none")return;let entry=itemByKey.get(key3);if(!entry||isItemDisabled?.(entry.item,entry.index))return;let current=new Set(selectedKeysRef.current),configuredBehavior=behavior??getDefaultBehavior(mode),effectiveBehavior=intent.shiftKey&&mode==="multiple"?"range":intent.behavior??configuredBehavior;mode==="single"&&(effectiveBehavior=effectiveBehavior==="toggle"?"toggle":"replace");let anchor=anchorKeyRef.current===null?void 0:itemByKey.get(anchorKeyRef.current),hasValidAnchor=!!(anchor&&!isItemDisabled?.(anchor.item,anchor.index));mode==="multiple"&&effectiveBehavior==="range"&&!hasValidAnchor&&(effectiveBehavior=configuredBehavior==="range"?"toggle":configuredBehavior);let next=new Set;if(mode==="single")effectiveBehavior==="toggle"&¤t.has(entry.key)||next.add(entry.key);else if(effectiveBehavior==="range"&&anchor){current.forEach(selectedKey=>next.add(selectedKey));let start=Math.min(anchor.index,entry.index),end=Math.max(anchor.index,entry.index);normalizedItems.slice(start,end+1).forEach(candidate=>{isItemDisabled?.(candidate.item,candidate.index)||next.add(candidate.key);});}else effectiveBehavior==="replace"?next.add(entry.key):(current.forEach(selectedKey=>next.add(selectedKey)),next.has(entry.key)?next.delete(entry.key):next.add(entry.key));anchorKeyRef.current=mode==="multiple"?entry.key:null,controlled||(selectedKeysRef.current=next,setInternalSelectedKeys(next)),onSelectionChangeRef.current?.(next,{item:entry.item,index:entry.index,key:entry.key,behavior:effectiveBehavior});},[behavior,controlled,isItemDisabled,itemByKey,mode,normalizedItems]),isSelected=React8.useCallback(key3=>selectedKeys.has(key3),[selectedKeys]);return {mode,selectedKeys,isSelected,selectKey,resetAnchor}}var DEFAULT_GAP_PX=12,DEFAULT_ROW_HEIGHT_PX=8,DEFAULT_CARD_WIDTH_PX=280,BREAKPOINT_TABLET_PX=640,BREAKPOINT_DESKTOP_PX=1024,MAX_COLUMN_COUNT=24;function clamp4(value,min,max){return Math.min(Math.max(value,min),max)}function resolveRenderableSlot(slot,context){return typeof slot=="function"?slot(context):slot}function resolveLengthToPixels2(value,fallback2,node){if(typeof value=="number"&&Number.isFinite(value)&&value>0)return value;if(typeof value!="string")return fallback2;let normalized=value.trim().toLowerCase();if(!normalized)return fallback2;if(/^\d+(\.\d+)?(px)?$/.test(normalized)){let parsed=Number.parseFloat(normalized);return Number.isFinite(parsed)&&parsed>0?parsed:fallback2}if(normalized.endsWith("rem")){let parsed=Number.parseFloat(normalized),rootFontSize=typeof window>"u"?16:Number.parseFloat(window.getComputedStyle(node||document.documentElement).fontSize)||16;return Number.isFinite(parsed)&&parsed>0?parsed*rootFontSize:fallback2}return fallback2}function normalizeColumns(value){if(!(typeof value!="number"||!Number.isFinite(value)||value<=0))return clamp4(Math.round(value),1,MAX_COLUMN_COUNT)}function resolveResponsiveColumns(columns,containerWidth){if(columns==="auto"||columns===void 0)return;if(typeof columns=="number")return normalizeColumns(columns);let mobile=normalizeColumns(columns.mobile),tablet=normalizeColumns(columns.tablet),desktop=normalizeColumns(columns.desktop);return containerWidth>=BREAKPOINT_DESKTOP_PX?desktop??tablet??mobile:containerWidth>=BREAKPOINT_TABLET_PX?tablet??mobile??desktop:mobile??tablet??desktop}function resolveColumnCount({containerWidth,itemCount,gap,columns,underfilledBehavior,maxColumns,minCardWidth,idealCardWidth,maxCardWidth,node}){let fixedColumns=resolveResponsiveColumns(columns,containerWidth),resolvedMaxColumns=resolveResponsiveColumns(maxColumns,containerWidth);if(fixedColumns)return resolvedMaxColumns?Math.min(fixedColumns,resolvedMaxColumns):fixedColumns;if(!containerWidth)return 1;let idealWidth=resolveLengthToPixels2(idealCardWidth,DEFAULT_CARD_WIDTH_PX,node),minWidth=resolveLengthToPixels2(minCardWidth,idealWidth*.78,node),maxWidth=Math.max(minWidth,resolveLengthToPixels2(maxCardWidth,idealWidth*1.35,node)),safeItemCount=Math.max(itemCount,1),maxCandidate=Math.max(1,Math.min(underfilledBehavior==="preserve-columns"?MAX_COLUMN_COUNT:safeItemCount,Math.ceil((containerWidth+gap)/(Math.max(minWidth*.75,1)+gap)))),bestCount=1,bestScore=Number.POSITIVE_INFINITY;for(let candidate=1;candidate<=maxCandidate;candidate+=1){let width=(containerWidth-gap*Math.max(candidate-1,0))/candidate;if(!Number.isFinite(width)||width<=0)continue;let score=Math.abs(width-idealWidth)+Math.max(0,minWidth-width)*3+Math.max(0,width-maxWidth)*2;score<bestScore&&(bestScore=score,bestCount=candidate);}return resolvedMaxColumns?Math.min(bestCount,resolvedMaxColumns):bestCount}function normalizeGap(value){return typeof value=="number"&&Number.isFinite(value)&&value>=0?value:DEFAULT_GAP_PX}function normalizeRowHeight(value){return typeof value=="number"&&Number.isFinite(value)&&value>0?value:DEFAULT_ROW_HEIGHT_PX}function normalizeThreshold(value){return typeof value=="number"&&Number.isFinite(value)?clamp4(value,0,1):0}function normalizeItemSize(size2,aspectRatio,columnWidth){let normalizedAspectRatio=Number.isFinite(aspectRatio)&&Number(aspectRatio)>0?Number(aspectRatio):void 0,normalizedHeight=size2?.height??(normalizedAspectRatio?Math.max(1,columnWidth/normalizedAspectRatio):void 0);return {...size2,height:normalizedHeight}}function getDefaultItemKey(item,index){if(item&&typeof item=="object"){let candidate=item;if(typeof candidate.id=="string"||typeof candidate.id=="number")return candidate.id;if(typeof candidate.key=="string"||typeof candidate.key=="number")return candidate.key}return index}function getScrollStorageKey(key3){return `@inf-monkeys-tech/monkeys-design:workbench-collection:${key3}`}function getParentScrollOwner(node){let current=node?.parentElement??null;for(;current;){if(typeof window>"u")return current;let overflowY=window.getComputedStyle(current).overflowY;if(overflowY==="auto"||overflowY==="scroll")return current;current=current.parentElement;}return null}function isInteractiveEventTarget(target,currentTarget){if(typeof Element>"u"||!(target instanceof Element)||target===currentTarget)return false;let control=target.closest('a, button, input, select, textarea, summary, [contenteditable="true"], [data-collection-action]');return !!(control&¤tTarget.contains(control))}function normalizeTitleMaxLines(value){if(!(!Number.isFinite(value)||Number(value)<=0))return clamp4(Math.round(Number(value)),1,12)}function WorkbenchCollection({items,config,renderItem,slots,callbacks,className,classNames,style,ariaLabel}){let componentAttributes=useMonkeysComponentAttributes(),localeMessages=useMonkeysLocaleMessages().workbench.collection,statusStates=useMonkeysStatusStates(),resolvedTheme=useMonkeysResolvedTheme(),componentId=React8.useId().replace(/:/g,""),rootRef=React8.useRef(null),railRef=React8.useRef(null),itemsRef=React8.useRef(null),loadMoreRef=React8.useRef(null),loadMoreRequestPendingRef=React8.useRef(false),loadMoreIntersectionActiveRef=React8.useRef(false),loadMoreIntersectionConsumedRef=React8.useRef(false),loadMoreScrollValidationPendingRef=React8.useRef(false),observedLoadMoreTargetRef=React8.useRef(null),observedLoadMoreKeysRef=React8.useRef(null),observedLoadMorePageRef=React8.useRef(void 0),layoutReadyRef=React8.useRef(false),[containerWidth,setContainerWidth]=React8.useState(0),[themeGap,setThemeGap]=React8.useState(DEFAULT_GAP_PX),[itemsNode,setItemsNode]=React8.useState(null),callbacksRef=React8.useRef(callbacks);callbacksRef.current=callbacks;let registerItemsNode=React8.useCallback(node=>{itemsRef.current=node,setItemsNode(node);},[]),mode=config.layout.mode;if(mode!=="grid"&&mode!=="masonry"&&mode!=="dense"&&mode!=="rail")throw new TypeError(`WorkbenchCollection layout.mode "${String(mode)}" is not supported.`);let gap=config.layout.gap===void 0?themeGap:normalizeGap(config.layout.gap),rowHeight=normalizeRowHeight(config.layout.rowHeight),getItemKey=config.getItemKey??getDefaultItemKey,normalizedItems=React8.useMemo(()=>items.map((item,index)=>{let key3=getItemKey(item,index);return {item,index,key:key3,stringKey:String(key3)}}),[getItemKey,items]),keysSignature=normalizedItems.map(({stringKey})=>stringKey).join(""),state=config.state,loading=state?.loading===true,loadingMore=state?.loadingMore===true,hasMore=state?.hasMore===true,loadingVariant=resolveWorkbenchCollectionLoadingVariant(config.loading?.variant),layoutItemCount=loading&&normalizedItems.length===0&&loadingVariant==="skeleton"?resolveWorkbenchCollectionSkeletonCapacity(config.loading?.skeleton):normalizedItems.length,selectionMode=config.selection?.mode??"none",isSelectionItemDisabled=React8.useCallback(entry=>config.selection?.isItemDisabled?.(entry.item,entry.index)??false,[config.selection?.isItemDisabled]),getSelectionItemKey=React8.useCallback(entry=>entry.key,[]),handleSelectionChange=React8.useCallback((next,details)=>{callbacksRef.current?.onSelectionChange?.(next,{item:details.item.item,key:details.key,behavior:details.behavior});},[]),{selectedKeys,selectKey}=useWorkbenchCollectionSelection({items:normalizedItems,getItemKey:getSelectionItemKey,mode:selectionMode,behavior:config.selection?.behavior,selectedKeys:config.selection?.selectedKeys,defaultSelectedKeys:config.selection?.defaultSelectedKeys,isItemDisabled:isSelectionItemDisabled,onSelectionChange:handleSelectionChange});React8.useEffect(()=>{let node=itemsNode;if(!node)return;let updateWidth=()=>{if(config.layout.gap===void 0&&rootRef.current){let nextGap=Number.parseFloat(window.getComputedStyle(rootRef.current).columnGap);setThemeGap(Number.isFinite(nextGap)&&nextGap>=0?nextGap:DEFAULT_GAP_PX);}let nextWidth=Math.round(node.getBoundingClientRect().width);setContainerWidth(previous=>previous===nextWidth?previous:nextWidth);};if(updateWidth(),typeof ResizeObserver=="function"){let observer=new ResizeObserver(updateWidth);return observer.observe(node),()=>observer.disconnect()}if(!(typeof window>"u"))return window.addEventListener("resize",updateWidth),()=>window.removeEventListener("resize",updateWidth)},[itemsNode,config.layout.gap,style?.gap,resolvedTheme]);let columnCount=resolveColumnCount({containerWidth,itemCount:layoutItemCount,gap,columns:config.layout.columns,underfilledBehavior:config.layout.underfilledBehavior,maxColumns:config.layout.maxColumns,minCardWidth:config.layout.minCardWidth,idealCardWidth:config.layout.idealCardWidth??config.layout.columnWidth,maxCardWidth:config.layout.maxCardWidth,node:itemsRef.current}),columnWidth=containerWidth>0?Math.max(0,(containerWidth-gap*Math.max(columnCount-1,0))/columnCount):resolveLengthToPixels2(config.layout.cardWidth??config.layout.columnWidth??config.layout.idealCardWidth,DEFAULT_CARD_WIDTH_PX,itemsRef.current),placementStrategy=config.layout.placementStrategy??(mode==="dense"?"dense":mode==="masonry"?"shortest":"shelf"),labels=React8.useMemo(()=>({collection:config.labels?.collection??localeMessages.label,loading:config.labels?.loading??localeMessages.loading,empty:config.labels?.empty??localeMessages.empty,loadError:config.labels?.loadError??localeMessages.loadError,refreshError:config.labels?.refreshError??localeMessages.refreshError,retry:config.labels?.retry??localeMessages.retry,loadingMore:config.labels?.loadingMore??localeMessages.loadingMore,permission:config.labels?.permission??localeMessages.permission,offline:config.labels?.offline??localeMessages.offline,requestAccess:config.labels?.requestAccess??localeMessages.requestAccess}),[config.labels,localeMessages]),virtualizationError=React8.useMemo(()=>{let virtualization=config.virtualization;return virtualization?.enabled!==true||virtualization.fallback!=="error"?null:virtualization.adapter?virtualization.adapter.supports?.(mode)===false?new Error(`WorkbenchCollection virtualization adapter does not support mode "${mode}".`):null:new Error("WorkbenchCollection virtualization requires an adapter.")},[config.virtualization,mode]),layoutSnapshot=React8.useMemo(()=>({mode,columnCount,columnWidth,containerWidth,gap,itemCount:normalizedItems.length}),[columnCount,columnWidth,containerWidth,gap,mode,normalizedItems.length]);React8.useEffect(()=>{callbacksRef.current?.onLayoutChange?.(layoutSnapshot),containerWidth>0&&!layoutReadyRef.current&&(layoutReadyRef.current=true,callbacksRef.current?.onLayoutReady?.(layoutSnapshot));},[layoutSnapshot,containerWidth]),React8.useEffect(()=>{layoutReadyRef.current=false;},[mode]);let resolveScrollOwner=React8.useCallback(()=>{let requestedOwner=config.layout.scrollOwner;return requestedOwner&&requestedOwner!=="self"&&requestedOwner!=="parent"?requestedOwner:mode==="rail"?railRef.current:requestedOwner==="parent"?getParentScrollOwner(rootRef.current):rootRef.current},[config.layout.scrollOwner,mode]);React8.useEffect(()=>{let restorationKey=config.scrollRestorationKey?.trim();if(!restorationKey||typeof window>"u")return;let owner=resolveScrollOwner();if(!owner)return;let storageKey=getScrollStorageKey(restorationKey);try{let stored=Number.parseFloat(window.sessionStorage.getItem(storageKey)??"");Number.isFinite(stored)&&stored>=0&&(owner.scrollTop=stored);}catch{}let saveScrollPosition=()=>{try{window.sessionStorage.setItem(storageKey,String(owner.scrollTop));}catch{}};return owner.addEventListener("scroll",saveScrollPosition,{passive:true}),()=>{saveScrollPosition(),owner.removeEventListener("scroll",saveScrollPosition);}},[config.scrollRestorationKey,resolveScrollOwner]);let canLoadMore=typeof callbacks?.onLoadMore=="function",effectiveError=state?.error??virtualizationError;React8.useEffect(()=>{(!canLoadMore||!hasMore)&&(loadMoreIntersectionActiveRef.current=false,loadMoreIntersectionConsumedRef.current=false,loadMoreScrollValidationPendingRef.current=false);},[canLoadMore,hasMore]);let requestLoadMore=React8.useCallback(()=>{if(!canLoadMore||!hasMore||loadingMore||loadMoreRequestPendingRef.current)return;loadMoreRequestPendingRef.current=true;let releaseRequest=()=>{loadMoreRequestPendingRef.current=false;};try{let result=callbacksRef.current?.onLoadMore?.();result&&typeof result.then=="function"?result.then(releaseRequest,releaseRequest):releaseRequest();}catch(error){throw releaseRequest(),error}},[canLoadMore,hasMore,loadingMore]);React8.useEffect(()=>{let sentinel=loadMoreRef.current;if((observedLoadMoreTargetRef.current!==sentinel||observedLoadMoreKeysRef.current!==keysSignature||observedLoadMorePageRef.current!==config.loading?.pageKey)&&(observedLoadMoreTargetRef.current=sentinel,observedLoadMoreKeysRef.current=keysSignature,observedLoadMorePageRef.current=config.loading?.pageKey,loadMoreIntersectionActiveRef.current=false,loadMoreIntersectionConsumedRef.current=false,loadMoreScrollValidationPendingRef.current=false),!sentinel||!canLoadMore||!hasMore||typeof IntersectionObserver!="function")return;let owner=resolveScrollOwner(),observerHasDelivered=false,active=true,observer=new IntersectionObserver(entries=>{if(!active)return;let isIntersecting=entries.some(entry=>entry.isIntersecting);if(!(isIntersecting&&(loadingMore||loadMoreRequestPendingRef.current))){if(loadMoreScrollValidationPendingRef.current){if(observerHasDelivered=true,loadMoreScrollValidationPendingRef.current=false,loadMoreIntersectionActiveRef.current=isIntersecting,!isIntersecting){loadMoreIntersectionConsumedRef.current=false;return}if(loadMoreIntersectionConsumedRef.current)return;loadMoreIntersectionConsumedRef.current=true,requestLoadMore();return}if(!observerHasDelivered){observerHasDelivered=true,loadMoreIntersectionActiveRef.current=isIntersecting,isIntersecting||(loadMoreIntersectionConsumedRef.current=false),isIntersecting&&config.loading?.autoFill&&!loadMoreIntersectionConsumedRef.current&&(loadMoreIntersectionConsumedRef.current=true,requestLoadMore());return}if(!isIntersecting){loadMoreIntersectionActiveRef.current=false,loadMoreIntersectionConsumedRef.current=false;return}loadMoreIntersectionActiveRef.current||(loadMoreIntersectionActiveRef.current=true,loadMoreIntersectionConsumedRef.current=true,requestLoadMore());}},{root:owner===rootRef.current?owner:owner||null,rootMargin:config.loading?.rootMargin??"240px",threshold:normalizeThreshold(config.loading?.threshold)}),scrollTarget=owner??(typeof window>"u"?null:window),validateActiveIntersection=()=>{!loadMoreIntersectionActiveRef.current||loadMoreIntersectionConsumedRef.current||loadMoreScrollValidationPendingRef.current||(loadMoreScrollValidationPendingRef.current=true,observer.unobserve(sentinel),observer.takeRecords(),observer.observe(sentinel));};return observer.observe(sentinel),scrollTarget?.addEventListener("scroll",validateActiveIntersection,{passive:true}),()=>{active=false,observer.disconnect(),scrollTarget?.removeEventListener("scroll",validateActiveIntersection);}},[canLoadMore,config.loading?.autoFill,config.loading?.pageKey,config.loading?.rootMargin,config.loading?.threshold,hasMore,keysSignature,loadingMore,normalizedItems.length,requestLoadMore,resolveScrollOwner]),React8.useEffect(()=>{if(!config.loading?.autoFill||!canLoadMore||!hasMore||loadingMore||loadMoreIntersectionConsumedRef.current||loadMoreRequestPendingRef.current||!loadMoreRef.current)return;let owner=resolveScrollOwner()??(config.layout.scrollOwner==="parent"?rootRef.current?.parentElement??null:null)??rootRef.current;if(!owner)return;let viewportSize=mode==="rail"?owner.clientWidth:owner.clientHeight,contentSize=mode==="rail"?owner.scrollWidth:owner.scrollHeight;viewportSize<=0||contentSize<=viewportSize+1&&(loadMoreIntersectionConsumedRef.current=true,requestLoadMore());},[canLoadMore,config.layout.scrollOwner,config.loading?.autoFill,config.loading?.pageKey,hasMore,keysSignature,loadingMore,normalizedItems.length,requestLoadMore,resolveScrollOwner,mode]);let groups=React8.useMemo(()=>{if(!config.grouping)return [{key:"__all__",stringKey:"__all__",items:normalizedItems}];let grouped=new Map;return normalizedItems.forEach(entry=>{let groupKey=config.grouping?.getGroupKey(entry.item,entry.index)??"__all__",stringKey=String(groupKey),existing=grouped.get(stringKey);if(existing){existing.items.push(entry);return}grouped.set(stringKey,{key:groupKey,stringKey,label:config.grouping?.getGroupLabel?.(groupKey,entry.item),items:[entry]});}),Array.from(grouped.values())},[config.grouping,normalizedItems]),createItemContext=React8.useCallback((entry,layout)=>{let disabled=config.selection?.isItemDisabled?.(entry.item,entry.index)??false,context={item:entry.item,index:entry.index,key:entry.key,status:config.getItemStatus?.(entry.item,entry.index)??"idle",disabled,selected:selectedKeys.has(entry.key),selectionMode,layout,select:behavior=>selectKey(entry.key,{behavior}),selectFromEvent:(event,behavior)=>selectKey(entry.key,{behavior,shiftKey:event.shiftKey}),preview:()=>callbacks?.onItemPreview?.(entry.item,context),detail:()=>callbacks?.onItemDetail?.(entry.item,context),renderSlot:name=>slots?.item?.[name]?.(entry.item,context),notifyMediaLoad:()=>callbacks?.onMediaLoad?.(entry.item,context),notifyMediaError:error=>callbacks?.onMediaError?.(entry.item,context,error)};return context},[callbacks,config.getItemStatus,config.selection,selectedKeys,selectKey,selectionMode,slots?.item]),getItemInteractionProps=React8.useCallback((entry,context)=>{let handleKeyboard=event=>{event.target!==event.currentTarget||event.key!=="Enter"&&event.key!==" "||(event.preventDefault(),selectionMode!=="none"?context.selectFromEvent(event):callbacks?.onItemClick?.(entry.item,context,event));};return {id:`${componentId}-item-${entry.index}`,"data-monkeys-collection-item":"","data-item-key":entry.stringKey,"data-selected":context.selected||void 0,"data-disabled":context.disabled||void 0,"data-status":context.status,role:selectionMode==="none"?"listitem":"option","aria-selected":selectionMode==="none"?void 0:context.selected,"aria-disabled":context.disabled||void 0,tabIndex:callbacks?.onItemClick||selectionMode!=="none"||config.item?.title?.visibility==="hover"?0:void 0,draggable:callbacks?.onItemDragStart?true:void 0,className:cn("min-w-0 group/workbench-collection-item outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",config.appearance?.hover&&config.appearance.hover!=="none"&&"transition-[transform,box-shadow,background-color] duration-200",config.appearance?.hover==="highlight"&&"hover:bg-muted/30",config.appearance?.hover==="lift"&&"hover:-translate-y-0.5 motion-reduce:transform-none",config.appearance?.hover==="scale"&&"hover:scale-[1.01] motion-reduce:transform-none",config.appearance?.hover==="shadow"&&"hover:shadow-md",config.appearance?.hover==="lift-shadow"&&"hover:-translate-y-0.5 hover:shadow-md motion-reduce:transform-none",config.appearance?.selection==="ring"&&context.selected&&"ring-2 ring-primary",config.appearance?.selection==="outline"&&context.selected&&"outline outline-2 outline-primary",classNames?.item),onClick:event=>{isInteractiveEventTarget(event.target,event.currentTarget)||(selectionMode!=="none"&&context.selectFromEvent(event),callbacks?.onItemClick?.(entry.item,context,event));},onDoubleClick:event=>{isInteractiveEventTarget(event.target,event.currentTarget)||callbacks?.onItemDoubleClick?.(entry.item,context,event);},onMouseEnter:event=>callbacks?.onItemHoverChange?.(entry.item,context,true,event),onMouseLeave:event=>callbacks?.onItemHoverChange?.(entry.item,context,false,event),onKeyDown:handleKeyboard,onDragStart:event=>callbacks?.onItemDragStart?.(entry.item,context,event),onDragOver:callbacks?.onItemDrop?event=>event.preventDefault():void 0,onDrop:event=>callbacks?.onItemDrop?.(entry.item,context,event)}},[callbacks,classNames?.item,componentId,config.appearance,config.item?.title?.visibility,selectionMode]),renderItemContent=React8.useCallback((entry,context)=>{let content=renderItem(entry.item,context),titleConfig=config.item?.title,visibility=titleConfig?.visibility??"always",title=titleConfig&&visibility!=="never"?titleConfig.getContent?.(entry.item,context)??context.renderSlot("title"):null,hasTitle=!!(titleConfig&&hasRenderableNode(title)),placement=titleConfig?.placement??"below",titleOverlay=hasTitle&&placement.startsWith("overlay-"),maxLines=normalizeTitleMaxLines(titleConfig?.maxLines),surface=titleConfig?.surface??(titleOverlay?"scrim":"none"),titleNode=hasTitle?jsxRuntime.jsx("div",{"data-collection-item-title":"","data-title-placement":placement,"data-title-visibility":visibility,className:cn("min-w-0 px-1 py-2 text-sm font-medium text-foreground",titleConfig?.align==="center"&&"text-center",titleConfig?.align==="end"&&"text-right",visibility==="hover"&&"!opacity-0 transition-opacity group-hover/workbench-collection-item:!opacity-100 group-focus-within/workbench-collection-item:!opacity-100",titleOverlay&&"pointer-events-none absolute inset-x-0 z-10 px-3 py-2",placement==="overlay-top"&&"top-0",placement==="overlay-center"&&"top-1/2 -translate-y-1/2 motion-reduce:transform-none",placement==="overlay-bottom"&&"bottom-0",surface==="surface"&&"bg-background/90 backdrop-blur-sm",surface==="scrim"&&placement==="overlay-top"&&"bg-gradient-to-b from-background/90 to-transparent pb-8",surface==="scrim"&&placement==="overlay-bottom"&&"bg-gradient-to-t from-background/90 to-transparent pt-8",surface==="scrim"&&placement==="overlay-center"&&"bg-background/75 backdrop-blur-sm",!!maxLines&&"overflow-hidden [display:-webkit-box] [-webkit-box-orient:vertical]",classNames?.itemTitle),style:maxLines?{WebkitLineClamp:maxLines}:void 0,children:title}):null,actionsConfig=config.item?.actions,actionsVisibility=actionsConfig?.visibility??"always",actions=actionsConfig&&actionsVisibility!=="never"?context.renderSlot("actions"):null,hasActions=!!(actionsConfig&&hasRenderableNode(actions)),actionsPlacement=actionsConfig?.placement??"overlay-bottom",actionsOverlay=hasActions&&actionsPlacement.startsWith("overlay-"),actionsNode=hasActions?jsxRuntime.jsx("div",{"data-collection-item-actions":"","data-actions-placement":actionsPlacement,"data-actions-align":actionsConfig?.align??"center","data-actions-visibility":actionsVisibility,className:cn("flex min-w-0 items-center gap-2 px-2 py-2",actionsConfig?.align==="start"&&"justify-start",(actionsConfig?.align===void 0||actionsConfig.align==="center")&&"justify-center",actionsConfig?.align==="end"&&"justify-end",actionsConfig?.wrap!==false&&"flex-wrap",actionsVisibility==="hover"&&"!opacity-0 transition-opacity group-hover/workbench-collection-item:!opacity-100 group-focus-within/workbench-collection-item:!opacity-100 [@media(hover:none)]:!opacity-100",actionsOverlay&&"pointer-events-none absolute inset-x-0 z-20",actionsPlacement==="overlay-top"&&"top-1",actionsPlacement==="overlay-bottom"&&"bottom-1",classNames?.itemActions),children:jsxRuntime.jsx("div",{className:cn("pointer-events-auto flex items-center gap-2",actionsConfig?.wrap!==false&&"flex-wrap"),children:actions})}):null;return !hasTitle&&!hasActions?content:jsxRuntime.jsxs("div",{className:cn("min-w-0",(titleOverlay||actionsOverlay)&&"relative",classNames?.itemContent),"data-collection-item-content":"",children:[placement==="above"?titleNode:null,actionsPlacement==="above"?actionsNode:null,content,placement==="below"||titleOverlay?titleNode:null,actionsPlacement==="below"||actionsOverlay?actionsNode:null]})},[classNames?.itemActions,classNames?.itemContent,classNames?.itemTitle,config.item,renderItem]),renderEntry=React8.useCallback((entry,layout,includeShell=true)=>{let context=createItemContext(entry,layout),content=renderItemContent(entry,context);return includeShell?jsxRuntime.jsx("div",{...getItemInteractionProps(entry,context),children:content}):content},[createItemContext,getItemInteractionProps,renderItemContent]),baseLayoutContext=React8.useMemo(()=>({mode,columnCount,columnWidth,containerWidth,gap,placementStrategy,rowHeight}),[columnCount,columnWidth,containerWidth,gap,mode,placementStrategy,rowHeight]),renderGroupItems=group=>{if(config.windowed&&mode!=="dense"){let isLastGroup=group===groups[groups.length-1];return jsxRuntime.jsx(WorkbenchWindowedLayout,{items:group.items,getKey:entry=>entry.stringKey,layout:baseLayoutContext,cardWidth:resolveLengthToPixels2(config.layout.cardWidth,DEFAULT_CARD_WIDTH_PX,rootRef.current),getScrollOwner:resolveScrollOwner,railRef:mode==="rail"&&isLastGroup?railRef:void 0,tailRef:mode==="rail"&&isLastGroup?loadMoreRef:void 0,estimateHeight:(entry,width)=>{let size2=config.layout.getItemSize?.(entry.item,{...baseLayoutContext,columnWidth:width}),ratio=config.layout.getItemAspectRatio?.(entry.item,entry.index);return resolveLengthToPixels2(size2?.height,ratio&&ratio>0?width/ratio:300,rootRef.current)},containerProps:{role:selectionMode==="none"?"list":"listbox","aria-label":ariaLabel??labels.collection,"aria-multiselectable":selectionMode==="multiple"||void 0,className:classNames?.layout},getItemProps:(entry,layout)=>getItemInteractionProps(entry,createItemContext(entry,layout)),renderItem:(entry,layout)=>renderEntry(entry,layout,false)})}let virtualization=config.virtualization,adapter=virtualization?.adapter,virtualizationRequested=virtualization?.enabled===true;if(virtualizationRequested&&(!adapter||adapter.supports?.(mode)===false)&&virtualization?.fallback==="error")return null;if(virtualizationRequested&&adapter&&adapter.supports?.(mode)!==false)return adapter.render({items:group.items.map(({item})=>item),keys:group.items.map(({key:key3})=>key3),layout:config.layout,scrollOwner:resolveScrollOwner(),renderItem:(item,localIndex,layout)=>{let entry=group.items[localIndex];return entry?jsxRuntime.jsx(React8.Fragment,{children:renderEntry(entry,layout)},entry.stringKey):null}});if(mode==="masonry"||mode==="dense")return jsxRuntime.jsx(WorkbenchMasonryLayout,{items:group.items,columnCount,columnWidth:config.layout.cardWidth??config.layout.columnWidth??config.layout.idealCardWidth,gap,rowHeight,placementStrategy:mode==="dense"?"dense":placementStrategy,className:classNames?.layout,containerProps:{role:selectionMode==="none"?"list":"listbox","aria-label":ariaLabel??labels.collection,"aria-multiselectable":selectionMode==="multiple"||void 0},getItemProps:(entry,masonryLayout)=>{let context=createItemContext(entry,{...masonryLayout,mode});return getItemInteractionProps(entry,context)},getItemKey:entry=>entry.key,getItemSize:(entry,masonryLayout)=>{let layout={...masonryLayout,mode},customSize=config.layout.getItemSize?.(entry.item,layout),aspectRatio=config.layout.getItemAspectRatio?.(entry.item,entry.index);return normalizeItemSize(customSize,aspectRatio,masonryLayout.columnWidth)},renderItem:(entry,masonryLayout)=>renderEntry(entry,{...masonryLayout,mode},false)});if(mode==="rail"){let cardWidth=config.layout.cardWidth??config.layout.idealCardWidth??DEFAULT_CARD_WIDTH_PX,isLastGroup=group===groups[groups.length-1];return jsxRuntime.jsx("div",{ref:isLastGroup?railRef:void 0,role:selectionMode==="none"?"list":"listbox","aria-label":ariaLabel??labels.collection,"aria-multiselectable":selectionMode==="multiple"||void 0,className:cn("grid min-w-0 grid-flow-col items-start overflow-x-auto",classNames?.layout),style:{gap,gridAutoColumns:typeof cardWidth=="number"?`${cardWidth}px`:cardWidth},children:group.items.map((entry,index)=>jsxRuntime.jsx("div",{ref:isLastGroup&&index===group.items.length-1?loadMoreRef:void 0,className:"min-w-0",children:renderEntry(entry,baseLayoutContext)},entry.stringKey))})}return jsxRuntime.jsx("div",{role:selectionMode==="none"?"list":"listbox","aria-label":ariaLabel??labels.collection,"aria-multiselectable":selectionMode==="multiple"||void 0,className:cn("grid min-w-0 items-start",classNames?.layout),style:{gap,gridTemplateColumns:`repeat(${columnCount}, minmax(0, 1fr))`},children:group.items.map(entry=>{let customSize=config.layout.getItemSize?.(entry.item,baseLayoutContext),span=clamp4(Math.round(Number(customSize?.columnSpan)||1),1,columnCount),aspectRatio=config.layout.getItemAspectRatio?.(entry.item,entry.index);return jsxRuntime.jsx("div",{...getItemInteractionProps(entry,createItemContext(entry,{...baseLayoutContext,columnSpan:span,size:customSize})),style:{gridColumn:span>1?`span ${span}`:void 0,aspectRatio:Number.isFinite(aspectRatio)&&Number(aspectRatio)>0?String(aspectRatio):void 0},children:renderEntry(entry,{...baseLayoutContext,columnSpan:span,size:customSize},false)},entry.stringKey)})})},slotContext={items,error:effectiveError,loading,loadingMore,selectedKeys,retry:()=>callbacks?.onRetry?.()},header=resolveRenderableSlot(slots?.header,slotContext),toolbar=resolveRenderableSlot(slots?.toolbar,slotContext),selectionToolbar=selectedKeys.size>0?resolveRenderableSlot(slots?.selectionToolbar,slotContext):null,beforeItems=resolveRenderableSlot(slots?.beforeItems,slotContext),footer=resolveRenderableSlot(slots?.footer,slotContext),showPermission=state?.permission===true,showOffline=state?.offline===true&&!showPermission,showInitialLoading=loading&&items.length===0&&!showPermission&&!showOffline,showInitialError=!!effectiveError&&items.length===0&&!showPermission&&!showOffline&&!showInitialLoading,showEmpty=!showPermission&&!showOffline&&!showInitialLoading&&!showInitialError&&(state?.empty===true||items.length===0),loadingSlot=resolveRenderableSlot(slots?.loading,slotContext),errorSlot=resolveRenderableSlot(slots?.error,slotContext),permissionSlot=resolveRenderableSlot(slots?.permission,slotContext),offlineSlot=resolveRenderableSlot(slots?.offline,slotContext),emptySlot=resolveRenderableSlot(slots?.empty,slotContext),loadMoreSlot=resolveRenderableSlot(slots?.loadMore,slotContext),selfScrollable=config.layout.scrollOwner==="self"||config.layout.scrollOwner===void 0&&(config.layout.fillHeight||config.layout.maxHeight),rootStyle={...style,gap:config.layout.gap===void 0?style?.gap??"var(--monkeys-bento-gap, var(--global-spacing, 0.75rem))":normalizeGap(config.layout.gap),padding:config.layout.padding??style?.padding,height:config.layout.fillHeight?"100%":style?.height,maxHeight:config.layout.maxHeight??style?.maxHeight,overflow:selfScrollable?"auto":style?.overflow};return jsxRuntime.jsxs("section",{ref:rootRef,...componentAttributes,"data-monkeys-component":"workbench-collection","data-layout-mode":mode,"data-density":config.appearance?.density,"data-radius":config.appearance?.radius,"data-media-fit":config.appearance?.mediaFit,"data-hover-effect":config.appearance?.hover,"aria-label":ariaLabel??labels.collection,"aria-busy":loading||loadingMore||void 0,className:cn("min-h-0 min-w-0",config.layout.fillHeight&&"h-full",classNames?.root,className),style:rootStyle,children:[hasRenderableNode(header)?jsxRuntime.jsx("div",{className:classNames?.header,children:header}):null,hasRenderableNode(toolbar)?jsxRuntime.jsx("div",{className:classNames?.toolbar,children:toolbar}):null,hasRenderableNode(selectionToolbar)?jsxRuntime.jsx("div",{className:classNames?.selectionToolbar,children:selectionToolbar}):null,hasRenderableNode(beforeItems)?jsxRuntime.jsx("div",{className:classNames?.beforeItems,children:beforeItems}):null,showPermission?hasRenderableNode(permissionSlot)?permissionSlot:jsxRuntime.jsx(BaseSystemState,{kind:"permission",title:labels.permission,actions:statusStates.permission?.showRequestAccess!==false&&callbacks?.onRequestAccess?jsxRuntime.jsx(BaseButton,{size:"sm",label:labels.requestAccess,onClick:callbacks.onRequestAccess}):void 0}):showOffline?hasRenderableNode(offlineSlot)?offlineSlot:jsxRuntime.jsx(BaseSystemState,{kind:"offline",title:labels.offline,actions:statusStates.error?.showRetry!==false&&callbacks?.onRetry?jsxRuntime.jsx(BaseButton,{size:"sm",label:labels.retry,onClick:callbacks.onRetry}):void 0}):showInitialLoading?hasRenderableNode(loadingSlot)?loadingSlot:loadingVariant==="spinner"?jsxRuntime.jsx(BaseLoadingState,{title:labels.loading,variant:"spinner"}):jsxRuntime.jsx("div",{ref:registerItemsNode,className:cn("min-w-0",classNames?.items),children:jsxRuntime.jsx(WorkbenchCollectionSkeleton,{mode,phase:"initial",columnCount,columnWidth,cardWidth:config.layout.cardWidth??config.layout.idealCardWidth,gap,rowHeight,config:config.loading?.skeleton,ariaLabel:labels.loading,className:classNames?.layout})}):showInitialError?hasRenderableNode(errorSlot)?errorSlot:jsxRuntime.jsx(BaseSystemState,{kind:"error",title:labels.loadError,actions:statusStates.error?.showRetry!==false&&callbacks?.onRetry?jsxRuntime.jsx(BaseButton,{size:"sm",label:labels.retry,onClick:callbacks.onRetry}):void 0}):showEmpty?hasRenderableNode(emptySlot)?emptySlot:jsxRuntime.jsx(BaseEmptyState,{title:labels.empty}):jsxRuntime.jsx("div",{ref:registerItemsNode,className:cn("min-w-0",classNames?.items),children:groups.map((group,groupIndex)=>{let groupContext={key:group.key,label:group.label,items:group.items.map(({item})=>item),groupIndex},heading=config.grouping?slots?.groupHeading?.(groupContext,slotContext)??group.label:null,headingId=`${componentId}-group-${groupIndex}`;return jsxRuntime.jsxs("div",{"data-collection-group":group.stringKey,className:classNames?.group,children:[hasRenderableNode(heading)?jsxRuntime.jsx("div",{id:headingId,role:"heading","aria-level":2,className:classNames?.groupHeading,children:heading}):null,renderGroupItems(group)]},group.stringKey)})}),items.length>0&&effectiveError?jsxRuntime.jsx("div",{className:classNames?.status,children:hasRenderableNode(errorSlot)?errorSlot:jsxRuntime.jsx(BaseSystemState,{kind:"error",title:labels.refreshError,actions:statusStates.error?.showRetry!==false&&callbacks?.onRetry?jsxRuntime.jsx(BaseButton,{size:"sm",label:labels.retry,onClick:callbacks.onRetry}):void 0})}):null,items.length>0&&(hasMore||loadingMore)?jsxRuntime.jsx("div",{ref:mode==="rail"?void 0:loadMoreRef,className:classNames?.loadMore,"data-collection-load-more":"",children:hasRenderableNode(loadMoreSlot)?loadMoreSlot:loadingMore?loadingVariant==="spinner"?jsxRuntime.jsx(BaseLoadingState,{title:labels.loadingMore,variant:"spinner"}):jsxRuntime.jsx(WorkbenchCollectionSkeleton,{mode,phase:"load-more",columnCount,columnWidth,cardWidth:config.layout.cardWidth??config.layout.idealCardWidth,gap,rowHeight,config:config.loading?.skeleton,ariaLabel:labels.loadingMore,className:classNames?.layout}):null}):null,hasRenderableNode(footer)?jsxRuntime.jsx("div",{className:classNames?.footer,children:footer}):null]})}function getNormalizedGalleryGridCardWidth(cardWidth){if(typeof cardWidth=="number"&&Number.isFinite(cardWidth)&&cardWidth>0)return `${cardWidth}px`;if(typeof cardWidth=="string"&&cardWidth.trim())return cardWidth.trim()}function getDefaultGalleryDetailLimit2(density){return density==="compact"?2:density==="detailed"?6:4}function getNormalizedGalleryBentoColumns2(columns,density){return columns===1||columns===2||columns===3?Number(columns):density==="detailed"?1:2}function getNormalizedGalleryDetailLimit2({density,visibility,limit}){if(visibility==="all")return Number.POSITIVE_INFINITY;let parsedLimit=Number.parseInt(String(limit),10);return Number.isFinite(parsedLimit)&&parsedLimit>0?parsedLimit:getDefaultGalleryDetailLimit2(density)}function getGalleryCardWidthMetrics(density){return density==="compact"?{min:220,ideal:244,max:268}:density==="detailed"?{min:320,ideal:372,max:420}:{min:260,ideal:304,max:348}}function getNormalizedGalleryGridColumns(columns){if(columns==null||columns===""||columns==="auto")return;let parsedColumns=Number.parseInt(String(columns),10);if(!(!Number.isFinite(parsedColumns)||parsedColumns<=0))return Math.max(1,Math.min(parsedColumns,8))}function getGalleryTextLength(value){if(value==null)return 0;let text10=String(value).trim();return text10&&text10!=="\u2014"?text10.length:0}function getGalleryFieldText({column,row:row2,getFieldValue,getDisplayText}){if(!column)return "";let rawValue=getFieldValue(column,row2);if(rawValue==null||rawValue==="")return "";let textValue=getDisplayText(rawValue);return textValue==="\u2014"?"":String(textValue)}function estimateLineCount({text:text10,charsPerLine,maxLines}){let textLength=getGalleryTextLength(text10);return textLength?Math.max(1,Math.min(maxLines,Math.ceil(textLength/charsPerLine))):0}function estimateGalleryDetailCellHeight({text:text10,density,bentoColumns}){let baseHeight=density==="detailed"?54:density==="compact"?44:48,lineCount=estimateLineCount({text:text10,charsPerLine:bentoColumns===1?density==="detailed"?32:26:density==="detailed"?18:15,maxLines:density==="detailed"?3:2});return lineCount?baseHeight+Math.max(0,lineCount-1)*16:baseHeight}function estimateGalleryDetailGridHeight({columns,density,bentoColumns}){if(!columns.length)return 0;let cellHeights=columns.map(column=>estimateGalleryDetailCellHeight({text:column.text,density,bentoColumns}));if(bentoColumns===1)return 12+cellHeights.reduce((sum,height)=>sum+height,0)+Math.max(0,columns.length-1)*8;let totalHeight=12;for(let index=0;index<cellHeights.length;index+=bentoColumns){let rowHeights=cellHeights.slice(index,index+bentoColumns);totalHeight+=Math.max(...rowHeights),index+bentoColumns<cellHeights.length&&(totalHeight+=8);}return totalHeight}function getDefaultGalleryMasonryItemSize({row:row2,columns,galleryFieldKey,galleryDensity,galleryBentoColumns,galleryDetailVisibility,galleryDetailLimit,getFieldValue,isMediaColumn,isTitleCandidate,isSummaryCandidate,getDisplayText,isImageField,isAudioField,cardVariant,renderPreview,renderLeadingVisual,hiddenDetailFieldKeys,layout,resolveRecordVisual}){let iconColumn=columns.find(column=>column.renderType==="icon"),iconVisual=iconColumn&&resolveRecordVisual?resolveRecordVisual(row2?.[iconColumn.key],row2,iconColumn):null,mediaColumn=(galleryFieldKey!=="auto"?columns.find(column=>column.key===galleryFieldKey&&isMediaColumn(column,row2)):null)||columns.find(column=>isMediaColumn(column,row2))||null,mediaValue=mediaColumn?getFieldValue(mediaColumn,row2):null,isImageMedia=mediaColumn?isImageField(mediaColumn,mediaValue):false,isAudioMedia=mediaColumn?isAudioField(mediaColumn,mediaValue):false,hasLeadingVisual=!!renderLeadingVisual||!!iconVisual,contentColumns=columns.filter(column=>column.key!==mediaColumn?.key&&column.renderType!=="icon"),titleColumn=contentColumns.filter(column=>{if(!column||isMediaColumn(column,row2)||!isTitleCandidate(column,row2))return false;let value=getFieldValue(column,row2);return !(value==null||value==="")})[0]||null,titleText=titleColumn?getGalleryFieldText({column:titleColumn,row:row2,getFieldValue,getDisplayText}):String(getDisplayText(row2?.linkKey||row2?.id||"")),summaryColumn=contentColumns.find(column=>!column||column.key===titleColumn?.key||isMediaColumn(column,row2)||!isSummaryCandidate(column,row2)?false:getGalleryFieldText({column,row:row2,getFieldValue,getDisplayText}).length>12)||contentColumns.find(column=>!column||column.key===titleColumn?.key||isMediaColumn(column,row2)||!isSummaryCandidate(column,row2)?false:getGalleryTextLength(getGalleryFieldText({column,row:row2,getFieldValue,getDisplayText}))>0)||null,summaryText=summaryColumn?getGalleryFieldText({column:summaryColumn,row:row2,getFieldValue,getDisplayText}):"",hiddenDetailKeySet=new Set(hiddenDetailFieldKeys),detailColumns=contentColumns.filter(column=>column.key!==titleColumn?.key&&column.key!==summaryColumn?.key&&!hiddenDetailKeySet.has(column.key)).map(column=>({column,text:getGalleryFieldText({column,row:row2,getFieldValue,getDisplayText})})),resolvedDetailLimit=getNormalizedGalleryDetailLimit2({density:galleryDensity,visibility:galleryDetailVisibility,limit:galleryDetailLimit}),visibleDetailColumns=Number.isFinite(resolvedDetailLimit)?detailColumns.slice(0,resolvedDetailLimit):detailColumns,hiddenDetailCount=Math.max(detailColumns.length-visibleDetailColumns.length,0),resolvedBentoColumns=getNormalizedGalleryBentoColumns2(galleryBentoColumns,galleryDensity),resolvedColumnWidth=layout?.columnWidth||getGalleryCardWidthMetrics(galleryDensity).ideal;if(cardVariant==="image-only")return {width:resolvedColumnWidth,height:Math.round(resolvedColumnWidth*1.25)};if(cardVariant==="preview-only")return {width:resolvedColumnWidth,height:Math.round(resolvedColumnWidth*.82)};let estimatedHeight=galleryDensity==="detailed"?84:galleryDensity==="compact"?64:72;typeof renderPreview=="function"?estimatedHeight+=galleryDensity==="detailed"?188:galleryDensity==="compact"?140:164:isImageMedia?estimatedHeight+=Math.round(resolvedColumnWidth*(galleryDensity==="detailed"?.72:.62))+12:isAudioMedia&&(estimatedHeight+=92);let titleLines=estimateLineCount({text:titleText,charsPerLine:galleryDensity==="detailed"?26:24,maxLines:2})||1,summaryLines=estimateLineCount({text:summaryText,charsPerLine:hasLeadingVisual?22:galleryDensity==="detailed"?30:26,maxLines:galleryDensity==="detailed"?4:2}),textHeaderHeight=26+titleLines*18+(summaryLines>0?summaryLines*16+4:0);return estimatedHeight+=Math.max(hasLeadingVisual?56:0,textHeaderHeight),estimatedHeight+=estimateGalleryDetailGridHeight({columns:visibleDetailColumns,density:galleryDensity,bentoColumns:resolvedBentoColumns}),hiddenDetailCount>0&&(estimatedHeight+=18),!summaryText&&visibleDetailColumns.length===0&&(estimatedHeight+=24),{width:resolvedColumnWidth,height:estimatedHeight}}function WorkbenchGalleryView({rows=[],children,columns=[],onRowClick,cardInteraction="button",selectedLinkKey,selectedRowKey,selectedRowKeys,className,isMasonry=false,galleryLayoutMode="auto",galleryRailCardWidth,galleryGap,galleryScrollDirection,galleryGridColumns,galleryGridColumnsResponsive,galleryCardWidthMetrics,galleryCardAspectRatio,galleryCardMinHeight,galleryGridCardWidth,galleryUnderfilledBehavior,galleryMasonryColumnWidth,masonryPlacementStrategy,pagination,onLoadMore,scrollOwner,windowed,galleryFieldKey="auto",galleryDensity="comfortable",galleryBentoColumns=2,galleryDetailVisibility="limit",galleryDetailLimit,shouldEnhanceMultimodal=true,getFieldValue,isMediaColumn,isTitleCandidate,isSummaryCandidate,getDisplayText,renderFieldValue,getImagePreviewSrc,isImageField,isAudioField,AudioPlayerComponent,cardVariant="default",cardPresentation,renderCardSlot,renderCoverTitle,galleryDetailPresentation,renderPreview,renderMeta,renderLeadingVisual,resolveRecordVisual,hiddenDetailFieldKeys=[],labels,formatLabel,getMasonryItemSize}){let{min:resolvedMinCardWidth,ideal:resolvedIdealCardWidth,max:resolvedMaxCardWidth}=galleryCardWidthMetrics??getGalleryCardWidthMetrics(galleryDensity),resolvedRailCardWidth=galleryRailCardWidth||resolvedMinCardWidth,resolvedGridColumnCount=getNormalizedGalleryGridColumns(galleryGridColumns),resolvedGridCardWidth=getNormalizedGalleryGridCardWidth(galleryGridCardWidth),resolvedMasonryColumnWidth=galleryMasonryColumnWidth||resolvedMinCardWidth,isRailLayout=galleryLayoutMode==="rail",resolvedGetFieldValue=getFieldValue||getDefaultGalleryFieldValue,resolvedGetDisplayText=getDisplayText||getDefaultGalleryDisplayText,resolvedIsImageField=isImageField||isDefaultGalleryImageField,resolvedIsAudioField=isAudioField||isDefaultGalleryAudioField,resolvedIsMediaColumn=isMediaColumn||((column,row2)=>isDefaultGalleryMediaColumn(column,row2,{getFieldValue:resolvedGetFieldValue,shouldEnhanceMultimodal,isImageField:resolvedIsImageField,isAudioField:resolvedIsAudioField})),resolvedIsTitleCandidate=isTitleCandidate||((column,row2)=>isDefaultGalleryTitleCandidate(column,row2,{isMediaColumn:resolvedIsMediaColumn})),resolvedIsSummaryCandidate=isSummaryCandidate||((column,row2)=>isDefaultGallerySummaryCandidate(column,row2,{isMediaColumn:resolvedIsMediaColumn})),resolvedRenderFieldValue=renderFieldValue||((column,row2,{compact}={})=>jsxRuntime.jsx("span",{children:resolvedGetDisplayText(resolvedGetFieldValue(column,row2))})),renderGalleryCard=(row2,rowIndex)=>jsxRuntime.jsx(WorkbenchGalleryCard,{row:row2,columns,cardInteraction,onClick:onRowClick?()=>onRowClick(row2,rowIndex):void 0,isSelected:selectedRowKeys?selectedRowKeys.has(String(row2?.linkKey||row2?.id||"")):String(row2?.linkKey||row2?.id||"")===String(selectedRowKey||selectedLinkKey||""),isMasonry,galleryFieldKey,galleryDensity,galleryBentoColumns,galleryDetailVisibility,galleryDetailLimit,galleryDetailPresentation,shouldEnhanceMultimodal,getFieldValue:resolvedGetFieldValue,isMediaColumn:resolvedIsMediaColumn,isTitleCandidate:resolvedIsTitleCandidate,isSummaryCandidate:resolvedIsSummaryCandidate,getDisplayText:resolvedGetDisplayText,renderFieldValue:resolvedRenderFieldValue,getImagePreviewSrc,isImageField:resolvedIsImageField,isAudioField:resolvedIsAudioField,AudioPlayerComponent,cardVariant,cardPresentation,renderCardSlot,renderCoverTitle,renderPreview,renderMeta,renderLeadingVisual,resolveRecordVisual,hiddenDetailFieldKeys,labels,formatLabel},row2?.id||row2?.linkKey||rowIndex),collectionMode=isMasonry?masonryPlacementStrategy==="dense"?"dense":"masonry":isRailLayout?"rail":"grid";if(resolveGalleryScrollDirection(collectionMode,galleryScrollDirection),children!==void 0){let entries=React8.Children.toArray(children);return jsxRuntime.jsx(WorkbenchCollection,{items:entries,callbacks:{onLoadMore},slots:{loadMore:pagination?.loadingMore?jsxRuntime.jsx(BaseLoadingState,{variant:"spinner",className:"py-global",style:{minHeight:0}}):void 0},classNames:{layout:className},config:{windowed,state:pagination,loading:{autoFill:true},getItemKey:(entry,index)=>React8.isValidElement(entry)&&entry.key!=null?entry.key:index,layout:{mode:collectionMode,scrollOwner:scrollOwner??"parent",gap:galleryGap,columns:galleryGridColumnsResponsive??(resolvedGridColumnCount?{mobile:1,tablet:Math.min(2,resolvedGridColumnCount),desktop:resolvedGridColumnCount}:"auto"),underfilledBehavior:galleryUnderfilledBehavior,cardWidth:isRailLayout?resolvedRailCardWidth:void 0,minCardWidth:resolvedGridCardWidth??resolvedMinCardWidth,idealCardWidth:resolvedGridCardWidth??resolvedIdealCardWidth,maxCardWidth:resolvedGridCardWidth??resolvedMaxCardWidth}},renderItem:entry=>entry})}return jsxRuntime.jsx(WorkbenchCollection,{items:rows,slots:{loadMore:pagination?.loadingMore?jsxRuntime.jsx(BaseLoadingState,{variant:"spinner",className:"py-global",style:{minHeight:0}}):void 0},callbacks:{onLoadMore,onItemClick:cardInteraction==="container"&&onRowClick?(row2,context)=>onRowClick(row2,context.index):void 0},classNames:{layout:className},config:{windowed,state:pagination,loading:{autoFill:true},getItemKey:(row2,rowIndex)=>row2?.id||row2?.linkKey||rowIndex,layout:{mode:collectionMode,underfilledBehavior:galleryUnderfilledBehavior,scrollOwner,gap:galleryGap,columns:galleryGridColumnsResponsive??(resolvedGridColumnCount?{mobile:1,tablet:Math.min(2,resolvedGridColumnCount),desktop:resolvedGridColumnCount}:"auto"),cardWidth:isRailLayout?resolvedRailCardWidth:void 0,minCardWidth:resolvedGridCardWidth??resolvedMinCardWidth,idealCardWidth:isMasonry?resolvedMasonryColumnWidth:resolvedGridCardWidth??resolvedIdealCardWidth,maxCardWidth:resolvedGridCardWidth??resolvedMaxCardWidth,placementStrategy:masonryPlacementStrategy??(cardVariant==="image-only"?"shortest":"shelf"),getItemAspectRatio:cardVariant==="image-only"?row2=>{let mediaColumn=columns.find(column=>column.key===galleryFieldKey)??columns.find(column=>resolvedIsMediaColumn(column,row2)),value=mediaColumn?resolvedGetFieldValue(mediaColumn,row2):void 0,ratio=value&&typeof value=="object"&&"aspectRatio"in value?value.aspectRatio:void 0;if(typeof ratio!="string"||!/^\d+(?:\.\d+)?:\d+(?:\.\d+)?$/.test(ratio))return;let[width,height]=ratio.split(":").map(Number);return width>0&&height>0?width/height:void 0}:void 0,getItemSize:cardVariant==="image-only"&&galleryCardAspectRatio&&galleryCardAspectRatio>0?(_row,layout)=>({height:Math.max(galleryCardMinHeight??0,layout.columnWidth/galleryCardAspectRatio)}):isMasonry?(row2,layout)=>{let defaultSize=getDefaultGalleryMasonryItemSize({row:row2,columns,galleryFieldKey,galleryDensity,galleryBentoColumns,galleryDetailVisibility,galleryDetailLimit,getFieldValue:resolvedGetFieldValue,isMediaColumn:resolvedIsMediaColumn,isTitleCandidate:resolvedIsTitleCandidate,isSummaryCandidate:resolvedIsSummaryCandidate,getDisplayText:resolvedGetDisplayText,isImageField:resolvedIsImageField,isAudioField:resolvedIsAudioField,cardVariant,renderPreview,renderLeadingVisual,hiddenDetailFieldKeys,layout,resolveRecordVisual});if(typeof getMasonryItemSize!="function")return defaultSize;let customSize=getMasonryItemSize(row2,{...layout,placementStrategy:layout.placementStrategy==="dense"?"dense":"shelf",defaultSize})||{};return {...defaultSize,...customSize}}:void 0}},renderItem:(row2,context)=>renderGalleryCard(row2,context.index)})}function toCssSize3(value){if(value!==void 0)return typeof value=="number"?`${value}px`:value}var DEFAULT_WORKBENCH_COLUMN_WIDTH=160,DEFAULT_WORKBENCH_ICON_COLUMN_WIDTH=56,DEFAULT_WORKBENCH_ACTION_COLUMN_WIDTH=128;function numericCssSize(value){if(typeof value=="number"&&Number.isFinite(value)&&value>0)return value;if(typeof value!="string")return;let match=value.trim().match(/^(\d+(?:\.\d+)?)px$/i);return match?Number(match[1]):void 0}function defaultWorkbenchColumnWidth(column,action){return column.renderType==="icon"?DEFAULT_WORKBENCH_ICON_COLUMN_WIDTH:action?DEFAULT_WORKBENCH_ACTION_COLUMN_WIDTH:DEFAULT_WORKBENCH_COLUMN_WIDTH}function resolvedWorkbenchColumnWidth(column,controlledWidth,action){return controlledWidth??numericCssSize(column.width)??numericCssSize(column.minWidth)??defaultWorkbenchColumnWidth(column,action)}function defaultFormatLabel2(value){return value==null||value===false?null:value}function toTitle(value){if(typeof value=="string"||typeof value=="number")return String(value)}function defaultGetRowKey(row2,rowIndex){return row2?.id??row2?.key??row2?.linkKey??rowIndex}function defaultGetRowSelectionKey(row2){return row2?.linkKey??row2?.id??row2?.key}function getOrderedColumns(columns,columnOrder){if(!columnOrder?.length)return columns;let columnMap=new Map(columns.map(column=>[column.key,column])),orderedColumns=columnOrder.map(columnKey=>columnMap.get(columnKey)).filter(Boolean),orderedKeySet=new Set(orderedColumns.map(column=>column.key)),remainingColumns=columns.filter(column=>!orderedKeySet.has(column.key));return [...orderedColumns,...remainingColumns]}function normalizeColumnOrder(columnKeys,columnOrder){let validColumnKeys=new Set(columnKeys),orderedKeys=(columnOrder||[]).filter(columnKey=>validColumnKeys.has(columnKey)),orderedKeySet=new Set(orderedKeys),remainingKeys=columnKeys.filter(columnKey=>!orderedKeySet.has(columnKey));return [...orderedKeys,...remainingKeys]}function WorkbenchTableHeaderHelper({helperText,className}){return hasRenderableNode(helperText)?jsxRuntime.jsxs("span",{className:cn("group relative inline-flex items-center",className),children:[jsxRuntime.jsx("button",{type:"button",title:toTitle(helperText),"aria-label":toTitle(helperText)||"Field help",className:"inline-flex h-4 w-4 items-center justify-center rounded-md border border-border/60 bg-background text-xs font-semibold normal-case tracking-normal text-muted-foreground shadow-sm transition-colors hover:border-primary/40 hover:text-primary focus-visible:border-primary/40 focus-visible:text-primary focus-visible:outline-hidden",onClick:event=>event.stopPropagation(),children:"?"}),jsxRuntime.jsx("span",{role:"tooltip",className:"pointer-events-none absolute left-1/2 top-full z-40 mt-2 hidden w-72 -translate-x-1/2 whitespace-pre-line rounded-lg border border-border/60 bg-card px-3 py-2 text-xs font-normal normal-case leading-5 tracking-normal text-foreground shadow-sm backdrop-blur-sm group-hover:block group-focus-within:block",children:helperText})]}):null}function WorkbenchTableView({rows=[],columns=[],onRowClick,selectedRowKey,selectedLinkKey,activePrimaryColumn,activeTablePrimaryColumn,renderedRowCount,totalRowCount,tableMinWidth,minWidth,bodyMaxHeight="min(58vh, 38rem)",stickyFirstColumn=true,appearance:appearance2,headerPresentation,fillRemainingWidthColumnKey,columnOrder,columnSizes,columnDragEnabled,columnResizeEnabled,className,tableClassName,rowClassName,classNames,style,renderCell,renderFieldValue,renderColumnHeader,onColumnOrderChange,onColumnSizeChange,onSort,formatLabel=defaultFormatLabel2,getColumnDataType,getColumnIcon,getColumnTypeIcon,getRowKey=defaultGetRowKey,getRowSelectionKey=defaultGetRowSelectionKey,isActionColumn,isActionField,isRowDisabled,isWorkbenchPlaceholderRow,emptyState="-",hiddenRowsMessage,scrollFooter,scrollRestoration}){let columnKeySignature=columns.map(column=>column.key).join(""),defaultColumnOrder=React8.useMemo(()=>columnKeySignature?columnKeySignature.split(""):[],[columnKeySignature]),[internalColumnOrder,setInternalColumnOrder]=React8.useState(defaultColumnOrder),[internalColumnSizes,setInternalColumnSizes]=React8.useState({}),scrollAreaRef=React8.useRef(null),rowElements=React8.useRef(new Map),scrollAdapter=React8.useRef(scrollRestoration);scrollAdapter.current=scrollRestoration;let restoredScrollKey=React8.useRef(void 0),saveScroll=React8.useCallback(()=>{let viewport=scrollAreaRef.current,adapter=scrollAdapter.current;if(!viewport||!adapter||restoredScrollKey.current!==adapter.key)return;let top=viewport.getBoundingClientRect().top,anchor=Array.from(rowElements.current.entries()).find(([,element])=>element.getBoundingClientRect().bottom>top);adapter.write({x:viewport.scrollLeft,y:viewport.scrollTop,...anchor?{rowKey:anchor[0],rowOffset:anchor[1].getBoundingClientRect().top-top}:{}});},[]);React8.useEffect(()=>{let viewport=scrollAreaRef.current,adapter=scrollAdapter.current;if(!viewport||!adapter||restoredScrollKey.current===adapter.key||rows.length===0)return;let position=adapter.read(),restore=()=>{let anchor=position?.rowKey?rowElements.current.get(position.rowKey):void 0,y=anchor&&typeof position?.rowOffset=="number"?viewport.scrollTop+anchor.getBoundingClientRect().top-viewport.getBoundingClientRect().top-position.rowOffset:position?.y??0;viewport.scrollTo({left:position?.x??0,top:Math.max(0,y),behavior:"auto"}),restoredScrollKey.current=adapter.key;},ownerWindow=viewport.ownerDocument.defaultView;if(!ownerWindow){restore();return}let frame=ownerWindow.requestAnimationFrame(restore);return ()=>ownerWindow.cancelAnimationFrame(frame)},[rows,scrollRestoration?.key]),React8.useEffect(()=>{let ownerWindow=scrollAreaRef.current?.ownerDocument.defaultView;return ownerWindow?.addEventListener("pagehide",saveScroll),()=>{ownerWindow?.removeEventListener("pagehide",saveScroll),saveScroll();}},[saveScroll]);let[tableViewportWidth,setTableViewportWidth]=React8.useState();React8.useEffect(()=>{setInternalColumnOrder(current=>normalizeColumnOrder(defaultColumnOrder,current));},[defaultColumnOrder]);let resolvedColumnOrder=columnOrder?normalizeColumnOrder(defaultColumnOrder,columnOrder):internalColumnOrder,resolvedColumnSizes=columnSizes??internalColumnSizes,handleColumnOrderChange=React8.useCallback((nextOrder,detail)=>{let normalizedOrder=normalizeColumnOrder(defaultColumnOrder,nextOrder);columnOrder||setInternalColumnOrder(normalizedOrder),onColumnOrderChange?.(normalizedOrder,detail);},[columnOrder,defaultColumnOrder,onColumnOrderChange]),handleColumnSizeChange=React8.useCallback((columnId,width,detail)=>{columnSizes||setInternalColumnSizes(current=>({...current,[columnId]:width})),onColumnSizeChange?.(columnId,width,detail);},[columnSizes,onColumnSizeChange]),resolvedSelectedKey=selectedRowKey??selectedLinkKey,resolvedActivePrimaryColumn=activePrimaryColumn??activeTablePrimaryColumn,sourceOrderedColumns=getOrderedColumns(columns,resolvedColumnOrder),fixedTableWidth=fillRemainingWidthColumnKey?sourceOrderedColumns.reduce((total,column)=>column.key===fillRemainingWidthColumnKey?total:total+resolvedWorkbenchColumnWidth(column,resolvedColumnSizes[column.key],isActionColumn?.(column)??isActionField?.(column)??false),0):void 0,remainingTableWidth=fillRemainingWidthColumnKey&&fixedTableWidth!==void 0&&tableViewportWidth!==void 0?Math.max(0,Math.round(tableViewportWidth-fixedTableWidth)):void 0,orderedColumns=sourceOrderedColumns.flatMap(column=>column.key!==fillRemainingWidthColumnKey?[column]:remainingTableWidth===0?[]:remainingTableWidth===void 0?[column]:[{...column,width:remainingTableWidth,minWidth:remainingTableWidth,maxWidth:remainingTableWidth}]),hiddenRowCount=Math.max(0,Number(totalRowCount||rows.length)-Number(renderedRowCount||rows.length)),renderValue=renderCell??renderFieldValue??((column,row2)=>row2?.[column.key]),isAction=isActionColumn??isActionField??(()=>false),isDisabled=isRowDisabled??isWorkbenchPlaceholderRow??(()=>false),resolveColumnIcon=getColumnIcon??getColumnTypeIcon,resolvedTableWidth=fixedTableWidth!==void 0&&remainingTableWidth!==void 0?fixedTableWidth+remainingTableWidth:void 0,resolvedMinWidth=resolvedTableWidth??tableMinWidth??minWidth??Math.max(760,orderedColumns.reduce((total,column)=>total+resolvedWorkbenchColumnWidth(column,resolvedColumnSizes[column.key],isAction(column)),0));React8.useEffect(()=>{if(!fillRemainingWidthColumnKey){setTableViewportWidth(void 0);return}let scrollArea=scrollAreaRef.current;if(!scrollArea)return;let ownerWindow=scrollArea.ownerDocument.defaultView,updateWidth=()=>{let nextWidth=Math.round(scrollArea.getBoundingClientRect().width);!Number.isFinite(nextWidth)||nextWidth<=0||setTableViewportWidth(current=>current===nextWidth?current:nextWidth);};updateWidth();let Observer=ownerWindow?.ResizeObserver,observer=Observer?new Observer(updateWidth):void 0;return observer?.observe(scrollArea),ownerWindow?.addEventListener("resize",updateWidth),()=>{observer?.disconnect(),ownerWindow?.removeEventListener("resize",updateWidth);}},[fillRemainingWidthColumnKey]);let footer=hiddenRowCount>0&&hiddenRowsMessage?typeof hiddenRowsMessage=="function"?hiddenRowsMessage(hiddenRowCount,renderedRowCount||rows.length,totalRowCount||rows.length):hiddenRowsMessage:null;return jsxRuntime.jsxs(BaseTableContainer,{appearance:appearance2,className:cn("w-full overflow-hidden rounded-lg border border-border/40 bg-muted/15 dark:border-border/35 dark:bg-muted/10",classNames?.root,className),style:bodyMaxHeight==="100%"?{display:"flex",minHeight:0,flex:1,flexDirection:"column",...style}:style,children:[jsxRuntime.jsxs("div",{ref:scrollAreaRef,onScroll:saveScroll,className:cn("w-full overflow-auto",classNames?.scrollArea),style:{maxHeight:toCssSize3(bodyMaxHeight),...bodyMaxHeight==="100%"?{minHeight:0,flex:1}:{}},children:[jsxRuntime.jsxs(BaseTable,{appearance:appearance2,columnOrder:resolvedColumnOrder,columnSizes:resolvedColumnSizes,columnDragEnabled,columnResizeEnabled,onColumnOrderChange:handleColumnOrderChange,onColumnSizeChange:handleColumnSizeChange,className:cn("w-full table-auto text-left text-xs",classNames?.table,tableClassName),style:{width:resolvedTableWidth,minWidth:resolvedMinWidth},children:[jsxRuntime.jsx(BaseTableHeader,{appearance:appearance2,className:cn("z-20 text-xs font-sans text-muted-foreground",classNames?.header),children:jsxRuntime.jsx(BaseTableRow,{className:cn("hover:bg-transparent",classNames?.headerRow),children:orderedColumns.map((column,columnIndex)=>{let defaultColumnWidth=defaultWorkbenchColumnWidth(column,isAction(column)),columnType=column.renderType||column.type||getColumnDataType?.(column.key,rows,column),columnIcon=renderWorkbenchIcon(resolveColumnIcon?.(columnType,column),"h-3.5 w-3.5 shrink-0 text-primary"),followsRecordIcon=orderedColumns[columnIndex-1]?.renderType==="icon"&&column.key===resolvedActivePrimaryColumn?.key,headerContent=renderColumnHeader?renderColumnHeader(column,{column,columnIndex,columns:orderedColumns,rows,columnType}):formatLabel(column.label,{column}),headerTrailing=!renderColumnHeader&&(hasRenderableNode(column.trailing)||hasRenderableNode(column.helperText))?jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[hasRenderableNode(column.trailing)?formatLabel(column.trailing,{column}):null,jsxRuntime.jsx(WorkbenchTableHeaderHelper,{helperText:formatLabel(column.helperText,{column}),className:classNames?.helper})]}):void 0,sortable=!!column.sortable,handleSort=sortable&&onSort?()=>onSort(column.key,column):void 0;return jsxRuntime.jsx(BaseTableHead,{appearance:appearance2,presentation:headerPresentation,columnId:column.key,align:column.align,icon:renderColumnHeader?void 0:columnIcon,label:headerContent,description:renderColumnHeader?void 0:formatLabel(column.description,{column}),meta:renderColumnHeader?void 0:formatLabel(column.meta,{column}),actions:column.actions,trailing:headerTrailing,sortable,sortDirection:column.sortDirection,sortLabel:column.sortLabel,onSort:handleSort,draggable:column.draggable,dragLabel:column.dragLabel,resizable:column.resizable,resizeLabel:column.resizeLabel,width:column.width??defaultColumnWidth,minWidth:typeof column.minWidth=="number"?column.minWidth:void 0,maxWidth:typeof column.maxWidth=="number"?column.maxWidth:void 0,className:cn("sticky top-0 z-20 h-auto whitespace-nowrap bg-card/95 px-4 py-3 font-medium backdrop-blur-sm supports-[backdrop-filter]:bg-card/90",stickyFirstColumn&&columnIndex===0&&"md:left-0 md:z-30 md:shadow-[1px_0_0_0_hsl(var(--border)/0.35)]",column.compactHeaderClassName,column.renderType==="icon"&&"pl-3 pr-1",followsRecordIcon&&"pl-2",classNames?.headerCell,column.headerClassName),style:{minWidth:typeof column.minWidth=="string"?column.minWidth:void 0,maxWidth:typeof column.maxWidth=="string"?column.maxWidth:void 0,...column.headerStyle}},column.key)})})}),jsxRuntime.jsx(BaseTableBody,{appearance:appearance2,className:cn("divide-y divide-border/35 dark:divide-border/30",classNames?.body),children:rows.length?rows.map((row2,rowIndex)=>{let key3=getRowKey(row2,rowIndex),disabled=isDisabled(row2,rowIndex),selectionKey=getRowSelectionKey(row2,rowIndex),selected2=!!(resolvedSelectedKey&&String(selectionKey)===String(resolvedSelectedKey)),resolvedRowClassName=typeof rowClassName=="function"?rowClassName(row2,rowIndex):rowClassName;return jsxRuntime.jsx(BaseTableRow,{appearance:appearance2,ref:element=>{element?rowElements.current.set(String(key3),element):rowElements.current.delete(String(key3));},interactive:!!onRowClick&&!disabled,"data-item-key":String(key3),tabIndex:onRowClick&&!disabled?0:void 0,selected:selected2,disabled,onClick:event=>{disabled||(onRowClick&&event.currentTarget.focus({preventScroll:true}),onRowClick?.(row2,rowIndex));},onKeyDown:event=>{event.target!==event.currentTarget||disabled||!onRowClick||!["Enter"," "].includes(event.key)||(event.preventDefault(),onRowClick(row2,rowIndex));},className:cn(onRowClick&&!disabled?"cursor-pointer":"cursor-default",selected2?"bg-primary/10 hover:bg-primary/15":disabled?"":"hover:bg-muted/25 dark:hover:bg-muted/15",classNames?.row,resolvedRowClassName),children:orderedColumns.map((column,columnIndex)=>{let shouldWrap=isAction(column)||column.wrap===true,followsRecordIcon=orderedColumns[columnIndex-1]?.renderType==="icon"&&column.key===resolvedActivePrimaryColumn?.key;return jsxRuntime.jsx(BaseTableCell,{appearance:appearance2,align:column.align,className:cn(shouldWrap?"align-top whitespace-normal":"whitespace-nowrap","px-4 py-3 text-muted-foreground",!shouldWrap&&"overflow-hidden text-ellipsis",stickyFirstColumn&&columnIndex===0&&"md:sticky md:left-0 md:z-10 md:bg-card/95 md:text-foreground md:shadow-[1px_0_0_0_hsl(var(--border)/0.3)]",column.compactCellClassName,column.renderType==="icon"&&"pl-3 pr-1",followsRecordIcon&&"pl-2",classNames?.cell,column.cellClassName),style:column.cellStyle,children:renderValue(column,row2,{row:row2,rowIndex,column,columnIndex,compact:true,surface:"list"})},`${key3}-${column.key}`)})},key3)}):jsxRuntime.jsx(BaseTableEmpty,{appearance:appearance2,colSpan:Math.max(orderedColumns.length,1),classNames:{cell:"px-4 py-10 text-center text-sm text-muted-foreground"},children:emptyState})})]}),hasRenderableNode(scrollFooter)?jsxRuntime.jsx("div",{style:{minWidth:resolvedMinWidth},children:scrollFooter}):null]}),footer?jsxRuntime.jsx("div",{className:cn("border-t border-border/40 px-4 py-2 text-xs text-muted-foreground dark:border-border/30",classNames?.footer),children:footer}):null]})}function toCssSize4(value){if(value!==void 0)return typeof value=="number"?`${value}px`:value}function defaultGetRowId(row2,rowIndex){return String(row2?.id??row2?.key??rowIndex)}function defaultGetColumnId(row2){return String(row2?.columnId??row2?.status??"")}function defaultRenderCard(row2){let value=row2?.title??row2?.name??row2?.id??"Untitled";return jsxRuntime.jsx("div",{className:"rounded-lg border border-border/70 bg-card px-3 py-2 text-sm text-foreground shadow-sm",children:String(value)})}function WorkbenchLaneDraggableCard({row:row2,rowId,rowIndex,column,classNames,renderCard}){let{attributes,listeners,setNodeRef,isDragging}=core.useDraggable({id:rowId});return jsxRuntime.jsx("div",{ref:setNodeRef,...listeners,...attributes,className:cn("touch-none",classNames?.cardWrapper),children:renderCard(row2,{row:row2,rowIndex,column,isDragging,isOverlay:false})})}function WorkbenchLaneColumnView({column,columnRows,columnWidth,columnMinHeight,emptyColumn,classNames,renderCard}){let{setNodeRef,isOver}=core.useDroppable({id:column.id});return jsxRuntime.jsxs("section",{className:cn("flex shrink-0 flex-col rounded-xl border border-border/60 bg-card p-2 shadow-sm",classNames?.column,column.className),style:{width:toCssSize4(columnWidth)??"280px"},children:[jsxRuntime.jsxs("div",{className:cn("flex h-10 items-center gap-2 px-1",classNames?.columnHeader,column.headerClassName),children:[column.icon?jsxRuntime.jsx("span",{className:cn("inline-flex h-4 w-4 items-center justify-center text-muted-foreground",classNames?.columnIcon,column.iconClassName),children:column.icon}):null,jsxRuntime.jsx("span",{className:cn("inline-flex items-center rounded px-2 py-0.5 text-xs font-semibold bg-muted text-muted-foreground",classNames?.columnBadge,column.badgeClassName),children:column.label??column.id}),jsxRuntime.jsx("span",{className:cn("text-xs text-muted-foreground",classNames?.columnCount),children:columnRows.length})]}),jsxRuntime.jsx("div",{ref:setNodeRef,className:cn("mt-1 flex min-h-[200px] flex-1 flex-col gap-2 overflow-y-auto rounded-lg p-1 transition-colors [scrollbar-width:thin]",isOver&&"bg-accent/60",classNames?.columnBody,column.bodyClassName),style:{minHeight:toCssSize4(columnMinHeight)},children:columnRows.length?columnRows.map(({row:row2,rowIndex,rowId})=>jsxRuntime.jsx(WorkbenchLaneDraggableCard,{row:row2,rowId,rowIndex,column,classNames,renderCard},rowId)):emptyColumn?jsxRuntime.jsx("div",{className:cn("flex min-h-24 items-center justify-center rounded-lg border border-dashed border-border/60 px-3 py-4 text-xs text-muted-foreground",classNames?.emptyColumn),children:emptyColumn}):null})]})}function WorkbenchLaneView({rows=[],columns=[],getRowId=defaultGetRowId,getColumnId=defaultGetColumnId,renderCard,renderOverlayCard,onMoveRow,onSelectRow,emptyColumn,activationDistance=5,columnWidth=280,columnMinHeight,className,classNames,style}){let cardRenderer=renderCard??((row2,context)=>onSelectRow?jsxRuntime.jsx(BaseButton,{className:"w-full justify-start whitespace-normal text-left",onClick:()=>onSelectRow({rowId:getRowId(row2,context.rowIndex)}),children:String(row2?.title??row2?.name??getRowId(row2,context.rowIndex))}):defaultRenderCard(row2)),[activeRowId,setActiveRowId]=React8.useState(null),sensors=core.useSensors(core.useSensor(core.PointerSensor,{activationConstraint:{distance:activationDistance}})),columnMap=React8.useMemo(()=>new Map(columns.map(column=>[column.id,column])),[columns]),rowEntries=React8.useMemo(()=>rows.map((row2,rowIndex)=>({row:row2,rowIndex,rowId:getRowId(row2,rowIndex),columnId:getColumnId(row2,rowIndex)})),[getColumnId,getRowId,rows]),activeEntry=activeRowId?rowEntries.find(entry=>entry.rowId===activeRowId):void 0,rowsByColumn=React8.useMemo(()=>{let next=new Map;return columns.forEach(column=>next.set(column.id,[])),rowEntries.forEach(({row:row2,rowIndex,rowId,columnId})=>{next.get(columnId)?.push({row:row2,rowIndex,rowId});}),next},[columns,rowEntries]),activeColumn=activeEntry?columnMap.get(activeEntry.columnId):void 0,handleDragStart=React8.useCallback(event=>{setActiveRowId(String(event.active.id));},[]),handleDragEnd=React8.useCallback(event=>{setActiveRowId(null);let rowId=String(event.active.id),nextColumnId=String(event.over?.id??""),activeRow=rowEntries.find(entry=>entry.rowId===rowId);!activeRow||!columnMap.has(nextColumnId)||activeRow.columnId===nextColumnId||onMoveRow?.(rowId,nextColumnId,activeRow.row);},[columnMap,onMoveRow,rowEntries]),handleDragCancel=React8.useCallback(()=>{setActiveRowId(null);},[]);return jsxRuntime.jsxs(core.DndContext,{sensors,onDragStart:handleDragStart,onDragEnd:handleDragEnd,onDragCancel:handleDragCancel,children:[jsxRuntime.jsx("div",{className:cn("flex min-h-0 flex-1 gap-4 overflow-x-auto p-4 [scrollbar-width:thin]",classNames?.root,className),style,children:columns.map(column=>jsxRuntime.jsx(WorkbenchLaneColumnView,{column,columnRows:rowsByColumn.get(column.id)||[],columnWidth,columnMinHeight,emptyColumn,classNames,renderCard:cardRenderer},column.id))}),jsxRuntime.jsx(core.DragOverlay,{children:activeEntry&&activeColumn?jsxRuntime.jsx("div",{className:cn(classNames?.overlayWrapper),children:(renderOverlayCard||cardRenderer)(activeEntry.row,{row:activeEntry.row,rowIndex:activeEntry.rowIndex,column:activeColumn,isDragging:false,isOverlay:true})}):null})]})}var identifier={type:"string",minLength:1,maxLength:512};function DirectoryPreview({title,cover,icon,onOpen}){let[failed,setFailed]=React8.useState(false);return React8.useEffect(()=>setFailed(false),[cover]),jsxRuntime.jsx(BaseButton,{variant:"ghost",className:"mb-global flex aspect-[4/3] h-auto w-full items-center justify-center overflow-hidden rounded-base p-0","aria-label":title,onPointerDown:event=>event.stopPropagation(),onClick:onOpen,children:cover&&!failed?cover.startsWith("file://")?jsxRuntime.jsx(BaseAssetIcon,{icon:{kind:"image",src:cover},alt:title,className:"h-full w-full rounded-none border-0"}):jsxRuntime.jsx("img",{src:cover,alt:title,className:"h-full w-full object-cover",loading:"lazy",onError:()=>setFailed(true)}):jsxRuntime.jsx(BaseAssetIcon,{alt:title,icon:icon?.startsWith("lucide:")?{kind:"lucide",name:icon.slice(7)}:/^https?:\/\//.test(icon||"")?{kind:"image",src:icon}:icon?{kind:"emoji",value:icon.replace(/^emoji:/,"").slice(0,64)}:{kind:"lucide",name:"image"}})})}var DIRECTORY_VIEW_SCHEMA="monkeys-design://ontology-view/directory/v1",DIRECTORY_VIEW_MODEL_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:DIRECTORY_VIEW_SCHEMA,type:"object",additionalProperties:false,required:["viewMode","columns","rows","pagination","rowActions"],properties:{viewMode:{enum:["table","gallery","kanban"]},emptyLabelKey:identifier,actionLabelKey:identifier,loadingLabelKey:identifier,columns:{type:"array",minItems:1,items:{type:"object",additionalProperties:false,required:["key","labelKey"],properties:{key:identifier,labelKey:identifier,hidden:{type:"boolean"}}}},rows:{type:"array",items:{type:"object",additionalProperties:false,required:["id","title","summary","columnId","columnLabel","href","browsingContext"],properties:{id:identifier,title:{type:"string"},summary:{type:"string"},cover:{type:"string"},icon:{type:"string"},columnId:identifier,columnLabel:{type:"string"},href:{type:"string",pattern:"^/(?!/)[^\\\\]*$"},browsingContext:{enum:["same","new"]},actionIds:{type:"array",uniqueItems:true,items:identifier}}}},rowActions:{type:"array",items:{type:"object",additionalProperties:false,required:["id","labelKey"],properties:{id:identifier,labelKey:identifier,destructive:{type:"boolean"},disabled:{type:"boolean"}}}},settings:{type:"object",additionalProperties:false,properties:{galleryColumns:{type:"integer",minimum:1,maximum:8},density:{enum:["compact","comfortable","detailed"]},layout:{enum:["fixed","masonry"]},tableDensity:{enum:["compact","comfortable","tall"]},detailVisibility:{enum:["all","limit"]},detailLimit:{type:"integer",minimum:1,maximum:100},coverField:{enum:["auto","board","icon"]},tableGroup:{enum:["none","tag","owner"]},kanbanPrimary:{enum:["title","summary"]}}},pagination:{type:"object",additionalProperties:false,required:["hasMore","nextCursor","loadingMore"],properties:{hasMore:{type:"boolean"},nextCursor:{type:["string","null"]},loadingMore:{type:"boolean"},errorCode:{type:"string"}}}}},DIRECTORY_ROW_ACTION_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"monkeys-design://intent/directory-row-action/v1",type:"object",additionalProperties:false,required:["rowId","actionId"],properties:{rowId:identifier,actionId:identifier}},DIRECTORY_LOAD_MORE_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"monkeys-design://intent/directory-load-more/v1",type:"object",additionalProperties:false,required:["cursor"],properties:{cursor:{type:"string",minLength:1,maxLength:2048}}},DirectoryViewCapabilityRenderer=({model,translate,emitIntent,loading,errorCode:errorCode2,pendingActionInvocations})=>{let rows=model.rows??[],actions=model.rowActions??[],settings=model.settings??{},pagination=model.pagination,viewport=React8.useRef(null),requested=React8.useRef(),next=React8.useCallback(()=>{!pagination?.hasMore||!pagination.nextCursor||pagination.loadingMore||loading||requested.current===pagination.nextCursor||(requested.current=pagination.nextCursor,Promise.resolve(emitIntent("capability.directory-view.load-more",{cursor:pagination.nextCursor})).catch(()=>{requested.current=void 0;}));},[emitIntent,pagination?.hasMore,pagination?.nextCursor,pagination?.loadingMore,loading]);React8.useEffect(()=>{requested.current=void 0;},[pagination?.nextCursor,pagination?.loadingMore]),React8.useEffect(()=>{let root=viewport.current;if(!root||loading)return;let check=target=>{target.scrollHeight-target.clientHeight-target.scrollTop<target.clientHeight/2&&next();},tableViewport=root.querySelector(".directory-table-scroll"),lanes=[...root.querySelectorAll(".directory-lane-scroll")],targets=model.viewMode==="kanban"&&lanes.length?lanes:[settings.tableGroup&&settings.tableGroup!=="none"?root:tableViewport||root],onScroll=event=>check(event.target);root.addEventListener("scroll",onScroll,true);let observer=new ResizeObserver(()=>targets.forEach(check));return targets.forEach(element=>observer.observe(element)),targets.forEach(check),()=>{root.removeEventListener("scroll",onScroll,true),observer.disconnect();}},[next,loading,rows.length,model.viewMode]);let columns=React8.useMemo(()=>(model.columns??[]).filter(x=>!x.hidden).map(x=>({key:x.key,label:translate(x.labelKey)})),[model.columns,translate]),open=row2=>{/^\/(?!\/)[^\\]*$/.test(row2.href)&&(row2.browsingContext==="new"?window.open(row2.href,"_blank","noopener,noreferrer"):window.location.assign(row2.href));},menu=row2=>{let allowed=actions.filter(action=>!row2.actionIds||row2.actionIds.includes(action.id));return allowed.length?jsxRuntime.jsxs(DropdownMenu,{children:[jsxRuntime.jsx(DropdownMenuTrigger,{asChild:true,children:jsxRuntime.jsx(BaseButton,{variant:"ghost",loading:!!pendingActionInvocations?.length,disabled:!!pendingActionInvocations?.length,label:"\u22EF","aria-label":translate(String(model.actionLabelKey||"common.utils.operate")),onClick:event=>event.stopPropagation(),onPointerDown:event=>event.stopPropagation(),onKeyDown:event=>event.stopPropagation()})}),jsxRuntime.jsx(DropdownMenuContent,{onClick:event=>event.stopPropagation(),children:allowed.map(action=>jsxRuntime.jsx(DropdownMenuItem,{disabled:action.disabled,"data-destructive":action.destructive||void 0,onSelect:event=>{event.stopPropagation(),emitIntent("capability.directory-view.row-action",{rowId:row2.id,actionId:action.id});},children:translate(action.labelKey)},action.id))})]}):null},galleryProps={cardInteraction:"container",columns:[{key:"cover",label:""},...columns],galleryGridColumns:settings.galleryColumns??"auto",galleryDensity:settings.density,galleryDetailPresentation:"lines",galleryDetailVisibility:settings.detailVisibility,galleryDetailLimit:settings.detailLimit,isMasonry:settings.layout==="masonry",getFieldValue:(column,row2)=>model.viewMode==="kanban"&&settings.kanbanPrimary==="summary"&&column.key==="title"?row2.summary||row2.title:row2[column.key],isTitleCandidate:column=>column.key==="title",isSummaryCandidate:column=>column.key==="summary",isMediaColumn:column=>column.key==="cover",isImageField:column=>column.key==="cover",getImagePreviewSrc:value=>String(value||""),hiddenDetailFieldKeys:["summary"],renderPreview:({row:row2})=>jsxRuntime.jsx(DirectoryPreview,{title:row2.title,cover:settings.coverField==="icon"?void 0:row2.cover,icon:row2.icon,onOpen:()=>open(row2)}),renderMeta:({row:row2})=>menu(row2)};if(!rows.length)return loading?jsxRuntime.jsx(BaseLoadingState,{title:translate(String(model.loadingLabelKey||"common.load.loading")),variant:"skeleton"}):jsxRuntime.jsx(BaseEmptyState,{title:translate(String(model.emptyLabelKey||"common.load.empty"))});let laneColumns=Array.from(new Map(rows.map(row2=>[row2.columnId,{id:row2.columnId,label:row2.columnLabel}])).values());return jsxRuntime.jsxs("div",{ref:viewport,className:"flex h-full min-h-0 min-w-0 flex-col overflow-auto","data-directory-view":String(model.viewMode),children:[errorCode2?jsxRuntime.jsx("div",{"data-action-error-code":errorCode2,children:jsxRuntime.jsx(CapabilityStatus,{kind:"error",code:errorCode2,translate})}):null,model.viewMode==="table"&&settings.tableGroup&&settings.tableGroup!=="none"?jsxRuntime.jsx("div",{className:"space-y-global",children:laneColumns.map(group=>jsxRuntime.jsxs("section",{children:[jsxRuntime.jsx(BaseText,{as:"div",size:"sm",tone:"muted",className:"mb-global font-medium",children:group.label||translate("common.utils.all")}),jsxRuntime.jsx(WorkbenchTableView,{rows:rows.filter(row2=>row2.columnId===group.id),columns:[...columns,...actions.length?[{key:"_actions",label:"",width:64}]:[]],onRowClick:open,renderCell:(column,row2)=>column.key==="_actions"?menu(row2):String(row2[column.key]||"")})]},group.id))}):model.viewMode==="table"?jsxRuntime.jsx(WorkbenchTableView,{rows,columns:[...columns,...actions.length?[{key:"_actions",label:"",width:64}]:[]],appearance:{density:settings.tableDensity==="compact"?"compact":"default"},onRowClick:open,bodyMaxHeight:"100%",classNames:{scrollArea:"directory-table-scroll"},renderCell:(column,row2)=>column.key==="_actions"?menu(row2):String(row2[column.key]||"")}):model.viewMode==="kanban"?jsxRuntime.jsx(WorkbenchLaneView,{rows,columns:laneColumns,classNames:{columnBody:"directory-lane-scroll"},onSelectRow:({rowId})=>{let row2=rows.find(x=>x.id===rowId);row2&&open(row2);},renderCard:row2=>jsxRuntime.jsx(WorkbenchGalleryCard,{...galleryProps,row:row2,onClick:()=>open(row2)})}):jsxRuntime.jsx(WorkbenchGalleryView,{...galleryProps,rows,onRowClick:open}),pagination?.loadingMore?jsxRuntime.jsx(BaseText,{role:"status",size:"sm",tone:"muted",className:"shrink-0 p-global text-center",children:translate(String(model.loadingLabelKey||"common.load.loading"))}):null]})},LOCATION_NAVIGATION_SCHEMA="monkeys-design://navigation/location/v1",LOCATION_NAVIGATION_MODEL_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:LOCATION_NAVIGATION_SCHEMA,type:"object",additionalProperties:false,required:["href","browsingContext"],properties:{href:{type:"string",pattern:"^/(?!/)[^\\\\]*$"},browsingContext:{enum:["same","new"]}}},LocationNavigationCapabilityRenderer=({model,emitIntent})=>{let last=React8.useRef();return React8.useEffect(()=>{let href=String(model.href||"");!/^\/(?!\/)[^\\]*$/.test(href)||last.current===href||(last.current=href,model.browsingContext==="new"?window.open(href,"_blank","noopener,noreferrer"):window.location.assign(href),emitIntent("capability.location-navigation.complete",{}));},[model.href,model.browsingContext,emitIntent]),null};var PAGINATION_PROPERTIES={hasMore:{type:"boolean"},nextCursor:{oneOf:[{type:"string",minLength:1,maxLength:2048},{type:"null"}]},loadingMore:{type:"boolean"},errorCode:{type:"string",minLength:1,maxLength:128}},cursorPaginationSchema=()=>({oneOf:[{type:"object",additionalProperties:false,required:["hasMore","nextCursor","loadingMore"],properties:{mode:{const:"append"},...PAGINATION_PROPERTIES,pageSize:{type:"integer",minimum:1,maximum:1e3},returned:{type:"integer",minimum:0},total:{type:"integer",minimum:0},loadedCount:{type:"integer",minimum:0},loadedStart:{type:"integer",minimum:0},loadedEnd:{type:"integer",minimum:0}}},{type:"object",additionalProperties:false,required:["mode","currentPage","totalPages","hasPrevious","hasNext","loading","pageSize","returned","total","loadedCount","loadedStart","loadedEnd"],properties:{mode:{const:"window"},currentPage:{type:"integer",minimum:1},totalPages:{type:"integer",minimum:1},hasPrevious:{type:"boolean"},hasNext:{type:"boolean"},loading:{type:"boolean"},errorCode:{type:"string",minLength:1,maxLength:128},pageSize:{type:"integer",minimum:1,maximum:1e3},returned:{type:"integer",minimum:0},total:{type:"integer",minimum:0},loadedCount:{type:"integer",minimum:0},loadedStart:{type:"integer",minimum:0},loadedEnd:{type:"integer",minimum:0}}}]});var text4={type:"string"},CHOICE_PICKER_MODEL_SCHEMA={type:"object",additionalProperties:false,properties:{nodes:{type:"array",items:{type:"object",additionalProperties:false,properties:{id:text4,label:text4,labelKey:text4,labelI18n:{type:"object",additionalProperties:text4},count:{type:"integer",minimum:0},defaultSelected:{type:"boolean"}},required:["id","label"]}},total:{type:"integer",minimum:0},selectedNodeId:text4,initialSelectionId:text4,showSelectedId:{type:"boolean"},search:{type:"object",additionalProperties:false,properties:{value:text4},required:["value"]},placeholderKey:text4,searchPlaceholderKey:text4,countLabelKey:text4,statLabelKey:text4,emptyLabelKey:text4,loadingLabelKey:text4,searchMode:{enum:["remote","local"]},searchDebounceMs:{type:"integer",minimum:0},contextHint:{type:"object",additionalProperties:false,properties:{selectedLabelKey:text4,emptyLabelKey:text4,icon:{enum:["layers","building"]}},required:["selectedLabelKey","emptyLabelKey","icon"]},pagination:{type:"object",additionalProperties:false,properties:{hasMore:{type:"boolean"},nextCursor:{type:["string","null"]},loadingMore:{type:"boolean"}},required:["hasMore","nextCursor","loadingMore"]},declarativeModelProjection:{type:"object",additionalProperties:false,properties:{kind:{const:"navigator"},selectedStateId:text4,initialSelection:{type:"object",additionalProperties:false,properties:{strategy:{enum:["default-or-first","selected-only","result-only"]},intentPort:{const:"capability.choice-picker.select"},payloadField:{const:"itemId"}},required:["strategy","intentPort","payloadField"]}},required:["kind","selectedStateId"]}},required:["nodes","pagination"]},CHOICE_PICKER_ENTRY=createDesignCapabilityEntry({providerVersion:"6",authoringRevision:6,version:"6",revision:6,schemaRevision:3,id:"monkeys.design.choice-picker",rendererKey:"monkeys.design.renderer.choice-picker",kind:"view",category:"navigation",labelKey:"monkeys.design.capability.choicePicker.label",descriptionKey:"monkeys.design.capability.choicePicker.description",authoringLabel:i18n("Choice picker","\u9009\u9879\u9009\u62E9\u5668"),authoringDescription:i18n("Search and select a host-owned paginated collection.","\u641C\u7D22\u5E76\u9009\u62E9\u5BBF\u4E3B\u63D0\u4F9B\u7684\u5206\u9875\u96C6\u5408\u3002"),inputPort:"content",schemaRef:"monkeys-design://choice-picker/model/v1",schemaDocument:jsonSchema("monkeys-design://choice-picker/model/v1",CHOICE_PICKER_MODEL_SCHEMA),slots:["controls"],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace","overlay"],outputPorts:[...["search","select","load-more"].map(action=>{let field=action==="search"?"value":action==="select"?"itemId":"cursor";return {name:`capability.choice-picker.${action}`,schemaRef:`monkeys-design://choice-picker/${action}/v1`,schemaDocument:jsonSchema(`monkeys-design://choice-picker/${action}/v1`,{type:"object",additionalProperties:false,required:[field],properties:{[field]:text4}}),allowedCommandKinds:["query-intent"]}})]});var localePattern="^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-[A-Z]{2}|-\\d{3})?$",I18N_DISPLAY_TEXT_SCHEMA={type:"object",additionalProperties:false,required:["defaultLocale","values"],properties:{defaultLocale:{type:"string",pattern:localePattern},values:{type:"object",minProperties:1,propertyNames:{pattern:localePattern},additionalProperties:{type:"string",minLength:1,pattern:"\\S"}}}},LOCALIZED_DISPLAY_PARAMETERS_SCHEMA={type:"object",additionalProperties:{oneOf:[{type:["string","number","boolean"]},I18N_DISPLAY_TEXT_SCHEMA]}};function resolveI18nDisplayText(value,locale){let parsed=monkeys.I18nTextSchema.safeParse(value);if(!parsed.success)throw new TypeError("Invalid I18n display text");let canonical;try{canonical=Intl.getCanonicalLocales(locale)[0]??"";}catch{canonical="";}let language=canonical.split("-")[0]??"";return parsed.data.values[canonical]??parsed.data.values[language]??parsed.data.values[parsed.data.defaultLocale]}function LocalizedDisplayText({value}){let{locale}=useMonkeysLocale();return jsxRuntime.jsx(jsxRuntime.Fragment,{children:resolveI18nDisplayText(value,locale)})}function resolveLocalizedDisplayParameters(value,locale){if(value!==void 0){if(typeof value!="object"||value===null||Array.isArray(value)||![Object.prototype,null].includes(Object.getPrototypeOf(value)))throw new TypeError("Invalid localized interpolation parameters");return Object.fromEntries(Object.entries(value).map(([key3,item])=>typeof item=="string"||typeof item=="boolean"||typeof item=="number"&&Number.isFinite(item)?[key3,item]:[key3,resolveI18nDisplayText(item,locale)]))}}function LocalizedMessageText({messageKey,values,translate}){let{locale}=useMonkeysLocale();return jsxRuntime.jsx(jsxRuntime.Fragment,{children:translate(messageKey,resolveLocalizedDisplayParameters(values,locale))})}var localizedLabelProperties={label:{type:"string"},labelKey:{type:"string",minLength:1}},RECORD_EDITOR_OPTION_GROUP_SCHEMA={type:"object",additionalProperties:false,required:["id"],anyOf:[{required:["label"]},{required:["labelKey"]},{required:["labelI18n"]}],properties:{id:{type:"string",minLength:1},...localizedLabelProperties,label:{type:"string",minLength:1},labelI18n:I18N_DISPLAY_TEXT_SCHEMA,labelParameters:LOCALIZED_DISPLAY_PARAMETERS_SCHEMA}},RECORD_EDITOR_OPTION_SCHEMA={type:"object",additionalProperties:false,required:["id"],properties:{id:{type:"string",minLength:1},...localizedLabelProperties,labelI18n:I18N_DISPLAY_TEXT_SCHEMA,labelParameters:LOCALIZED_DISPLAY_PARAMETERS_SCHEMA,group:RECORD_EDITOR_OPTION_GROUP_SCHEMA,color:{type:"string",minLength:1},mediaType:{type:"string",minLength:1},ontologyId:{type:"string",minLength:1},disabled:{type:"boolean"},disabledWhen:{type:"object"}}},RECORD_EDITOR_STRING_OPTION_SCHEMA={...RECORD_EDITOR_OPTION_SCHEMA,properties:{...RECORD_EDITOR_OPTION_SCHEMA.properties,id:{type:"string"}}},optionPathSchema={type:"array",minItems:1,maxItems:16,items:{type:"string",minLength:1,maxLength:256,pattern:"^[^\\u0000-\\u001f\\u007f-\\u009f]+$",not:{enum:["__proto__","prototype","constructor"]}}},RECORD_EDITOR_OPTIONS_SOURCE_SCHEMA={type:"object",additionalProperties:false,required:["modelPath","parentKeyPath"],properties:{modelPath:{...optionPathSchema,minItems:2,maxItems:2,prefixItems:[{const:"optionTables"}]},parentKeyPath:optionPathSchema}},validateOptions=runtime.compileTargetRenderModelValidator({type:"object",additionalProperties:false,required:["options"],properties:{options:{type:"array",maxItems:1e4,items:RECORD_EDITOR_STRING_OPTION_SCHEMA}}});function validateRecordEditorOptions(input){if(!Array.isArray(input)||input.length>1e4)throw new TypeError("Editor options exceed the candidate limit.");let json=JSON.stringify(input);if(new TextEncoder().encode(json).byteLength>1024*1024)throw new TypeError("Editor options exceed the byte limit.");let result=validateOptions({options:input}).options;if(!Array.isArray(result))throw new TypeError("Editor options must be an array.");return result}var tableKeySchema={type:"string",minLength:1,maxLength:256,pattern:"^[^\\u0000-\\u001f\\u007f-\\u009f]+$",not:{enum:["__proto__","prototype","constructor"]}},RECORD_EDITOR_OPTION_TABLES_SCHEMA={type:"object",propertyNames:tableKeySchema,additionalProperties:{type:"object",propertyNames:tableKeySchema,additionalProperties:{type:"array",maxItems:1e4,items:RECORD_EDITOR_STRING_OPTION_SCHEMA}}},validateTables=runtime.compileTargetRenderModelValidator({type:"object",additionalProperties:false,required:["tables"],properties:{tables:RECORD_EDITOR_OPTION_TABLES_SCHEMA}});function validateRecordEditorOptionTables(input){if(new TextEncoder().encode(JSON.stringify(input)).byteLength>1024*1024)throw new TypeError("Editor option tables exceed the byte limit.");let tables=validateTables({tables:input}).tables;if(!tables||typeof tables!="object"||Array.isArray(tables))throw new TypeError("Invalid editor option tables.");let count=0;for(let table of Object.values(tables)){if(!table||typeof table!="object"||Array.isArray(table))throw new TypeError("Invalid editor option table.");for(let options2 of Object.values(table)){if(!Array.isArray(options2))throw new TypeError("Invalid editor option list.");if(count+=options2.length,count>1e4)throw new TypeError("Editor option tables exceed the candidate limit.")}}}var ORDERED_SELECTION_MAX_ITEMS=1e4,ORDERED_SELECTION_MAX_GROUPS=ORDERED_SELECTION_MAX_ITEMS+2,ORDERED_SELECTION_MAX_BYTES=1024*1024,validId=id9=>typeof id9=="string"&&id9.trim().length>0&&id9.length<=256&&!/[\u0000-\u001f\u007f-\u009f]/.test(id9);function validateOrderedSelection(ids2){if(ids2.length>ORDERED_SELECTION_MAX_ITEMS)return "ORDERED_SELECTION_LIMIT_EXCEEDED";if(ids2.some(id9=>!validId(id9))||new Set(ids2).size!==ids2.length)return "ORDERED_SELECTION_INVALID_MODEL";if(new TextEncoder().encode(JSON.stringify(ids2)).byteLength>ORDERED_SELECTION_MAX_BYTES)return "ORDERED_SELECTION_BYTES_EXCEEDED"}function OrderedSelection(props){return jsxRuntime.jsx(SelectionDraft,{...props},JSON.stringify([props.model.scopeId,props.model.revision]))}function SelectionDraft({model,onIntent,translate:t}){let{locale}=useMonkeysLocale(),[ids2,setIds]=React8.useState(()=>[...model.selectedIds]),[search,setSearch]=React8.useState(model.search??""),[input,setInput]=React8.useState(""),[error,setError]=React8.useState(()=>validateOrderedSelection(model.selectedIds)),[start,setStart]=React8.useState(0),committedIds=React8.useRef(ids2),consumed=React8.useRef(new Set),cache2=React8.useRef(new Map),active=React8.useRef(true),drag=React8.useRef();React8.useEffect(()=>(active.current=true,()=>{active.current=false;}),[]);let blocked=!!(model.pending||model.readOnly||model.loading),latest=React8.useRef({blocked,model});latest.current={blocked,model};let emit=intent=>{active.current&&!latest.current.blocked&&onIntent(intent);},appendRows=model.append&&!consumed.current.has(model.append.revision)?model.append.rows:[],currentRows=[...model.candidates??[],...appendRows],selectedSet=new Set(committedIds.current),selectedAppendRows=(model.append?.rows??[]).filter(row2=>selectedSet.has(row2.id));for(let row2 of [...(model.selectedRows??[]).filter(row3=>selectedSet.has(row3.id)),...selectedAppendRows,...currentRows])validId(row2.id)&&cache2.current.set(row2.id,row2);let retained=new Set([...committedIds.current,...currentRows.map(row2=>row2.id)]);for(let id9 of cache2.current.keys())retained.has(id9)||cache2.current.delete(id9);let displayIssue=next=>{let groups=model.groups??[];if(groups.length>ORDERED_SELECTION_MAX_GROUPS||groups.some(row2=>!validId(row2.id))||new Set(groups.map(row2=>row2.id)).size!==groups.length)return "ORDERED_SELECTION_INVALID_MODEL";let displayed=new Map;for(let id9 of next)displayed.set(id9,cache2.current.get(id9)??{id:id9});for(let row2 of currentRows)displayed.set(row2.id,row2);return new TextEncoder().encode(JSON.stringify({selectedIds:next,rows:[...displayed.values()],groups})).byteLength>ORDERED_SELECTION_MAX_BYTES?"ORDERED_SELECTION_BYTES_EXCEEDED":void 0},label=id9=>{let row2=cache2.current.get(id9);return row2?.labelI18n?resolveI18nDisplayText(row2.labelI18n,locale):row2?.labelKey?t(row2.labelKey):row2?.label||id9},rowText=(id9,selected2=false)=>{let row2=cache2.current.get(id9),detail=[row2?.descriptionI18n?resolveI18nDisplayText(row2.descriptionI18n,locale):row2?.descriptionKey?t(row2.descriptionKey):row2?.description,row2?.showId?id9:void 0].filter(value=>value!==void 0&&value!=="").join(" \xB7 ");return jsxRuntime.jsxs("span",{className:"min-w-0 flex-1 overflow-hidden",children:[jsxRuntime.jsxs("span",{className:"block truncate",children:[label(id9),selected2&&row2?.missing?` (${t("Unavailable")})`:""]}),detail?jsxRuntime.jsx("span",{className:"block truncate text-xs text-muted-foreground",title:detail,children:detail}):null]})},max=model.selectionMode==="single"?1:Math.min(1e4,model.maxSelected??1e4),min=model.minSelected??0,commit=next=>{if(latest.current.blocked||!active.current)return false;let code=(next.length>max?"ORDERED_SELECTION_LIMIT_EXCEEDED":validateOrderedSelection(next))??displayIssue(next);return code?(setError(code),emit({type:"error",scopeId:model.scopeId,code}),false):(committedIds.current=next,setError(void 0),setIds(next),emit({type:"change",scopeId:model.scopeId,expectedRevision:model.revision,selectedIds:[...next],selectedCount:next.length}),true)};React8.useEffect(()=>{!model.append||model.append.rows.length===0||blocked||consumed.current.has(model.append.revision)||commit([...new Set([...ids2,...model.append.rows.map(row2=>row2.id)])])&&consumed.current.add(model.append.revision);},[model.append,blocked,ids2]);let move=(id9,target)=>{let from=ids2.indexOf(id9);if(from<0||target<0||target>=ids2.length||from===target)return;let next=[...ids2];next.splice(from,1),next.splice(target,0,id9),commit(next);},searchNow=()=>emit({type:"search",scopeId:model.scopeId,value:search.trim()}),modelIssue=!Number.isSafeInteger(min)||!Number.isSafeInteger(max)||min<0||max<0||min>max?"ORDERED_SELECTION_INVALID_MODEL":displayIssue(ids2),safeCode2=modelIssue??error??(model.errorCode&&/^[A-Z][A-Z0-9_]{0,127}$/.test(model.errorCode)?model.errorCode:model.errorCode?"ORDERED_SELECTION_INVALID_MODEL":void 0),windowStart=Math.min(start,Math.max(0,ids2.length-1));return jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-col gap-3","data-ordered-selection":model.scopeId,children:[safeCode2?jsxRuntime.jsx("p",{role:"alert",children:t(safeCode2)}):null,model.loading?jsxRuntime.jsx("p",{role:"status",children:t("Loading")}):null,model.mode==="ids"?jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(BaseTextarea,{"aria-label":t("IDs"),disabled:blocked,value:input,onChange:event=>setInput(event.target.value)}),jsxRuntime.jsx(BaseButton,{disabled:blocked,onClick:()=>{commit([...new Set([...ids2,...input.split(/[\s,;]+/).filter(Boolean)])]);},children:t("Add")})]}):jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[model.groupId!==void 0?jsxRuntime.jsx(BaseSelect,{"aria-label":t("Group"),value:model.groupId,disabled:blocked||model.canBrowse===false,onChange:event=>emit({type:"group-change",scopeId:model.scopeId,value:event.currentTarget.value}),children:(model.groups??[]).map(row2=>jsxRuntime.jsx("option",{value:row2.id,children:row2.labelI18n?resolveI18nDisplayText(row2.labelI18n,locale):row2.labelKey?t(row2.labelKey):row2.label||row2.id},row2.id))}):null,jsxRuntime.jsx(BaseInput,{"aria-label":t("Search"),value:search,disabled:blocked||model.canBrowse===false,onChange:event=>setSearch(event.target.value),onKeyDown:event=>{event.key==="Enter"&&(event.preventDefault(),searchNow());}}),jsxRuntime.jsx(BaseButton,{disabled:blocked||model.canBrowse===false,onClick:searchNow,children:t("Search")}),model.allowCreate?jsxRuntime.jsx(BaseButton,{disabled:blocked,onClick:()=>emit({type:"create",scopeId:model.scopeId}),children:t("Create")}):null,jsxRuntime.jsx("div",{className:"w-full space-y-2","data-ordered-candidates":true,style:{maxHeight:384,overflowY:"auto"},children:(model.candidates??[]).map(row2=>jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsxs("label",{className:"flex min-w-0 flex-1 items-center gap-2",children:[jsxRuntime.jsx(BaseCheckbox,{disabled:blocked||row2.disabled,checked:ids2.includes(row2.id),onChange:event=>commit(event.currentTarget.checked?model.selectionMode==="single"?[row2.id]:[...new Set([...ids2,row2.id])]:ids2.filter(id9=>id9!==row2.id))}),rowText(row2.id)]}),model.allowCopy?jsxRuntime.jsx(BaseButton,{disabled:blocked||row2.disabled,onClick:()=>emit({type:"copy",scopeId:model.scopeId,id:row2.id}),children:t("Copy")}):null]},row2.id))}),model.pagination?.hasMore&&model.pagination.nextCursor?jsxRuntime.jsx(BaseButton,{disabled:blocked||model.canBrowse===false||model.pagination.loadingMore,onClick:()=>emit({type:"load-more",scopeId:model.scopeId,cursor:model.pagination.nextCursor}),children:t("Load more")}):null]}),jsxRuntime.jsx(BaseButton,{className:"self-start",disabled:blocked||ids2.length===0,onClick:()=>commit([]),children:t("Clear")}),jsxRuntime.jsxs("div",{role:"status","aria-live":"polite",children:[ids2.length," / ",ORDERED_SELECTION_MAX_ITEMS]}),jsxRuntime.jsx("div",{"data-ordered-viewport":true,style:{height:Math.min(384,ids2.length*48),overflowY:"auto"},onScroll:event=>setStart(Math.max(0,Math.floor(event.currentTarget.scrollTop/48)-2)),children:jsxRuntime.jsx("ol",{"aria-label":t("Selected"),style:{height:ids2.length*48,position:"relative",margin:0},children:ids2.slice(windowStart,windowStart+14).map((id9,offset2)=>{let index=windowStart+offset2;return jsxRuntime.jsxs("li",{"data-ordered-id":id9,"aria-posinset":index+1,"aria-setsize":ids2.length,style:{position:"absolute",top:index*48,height:48,left:0,right:0,display:"flex",gap:8},onDragOver:event=>{!blocked&&drag.current&&event.preventDefault();},onDrop:event=>{event.preventDefault(),drag.current&&event.dataTransfer.getData("application/x-monkeys-ordered-selection")===drag.current&&move(drag.current,index),drag.current=void 0;},children:[jsxRuntime.jsx(BaseButton,{"data-ordered-drag":id9,"aria-label":t("Move"),disabled:blocked,draggable:!blocked,onDragStart:event=>{if(blocked)return event.preventDefault();drag.current=id9,event.dataTransfer.setData("application/x-monkeys-ordered-selection",id9);},onDragEnd:()=>{drag.current=void 0;},onKeyDown:event=>{(event.key==="ArrowUp"||event.key==="ArrowDown")&&(event.preventDefault(),move(id9,index+(event.key==="ArrowUp"?-1:1)));},children:"\u2195"}),rowText(id9,true),jsxRuntime.jsx(BaseButton,{disabled:blocked||index===0,"aria-label":t("Move up"),onClick:()=>move(id9,index-1),children:"\u2191"}),jsxRuntime.jsx(BaseButton,{disabled:blocked||index===ids2.length-1,"aria-label":t("Move down"),onClick:()=>move(id9,index+1),children:"\u2193"}),jsxRuntime.jsx(BaseButton,{disabled:blocked,"aria-label":t("Remove"),onClick:()=>commit(ids2.filter(value=>value!==id9)),children:"\xD7"})]},id9)})})}),jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[model.showSubmit!==false?jsxRuntime.jsx(BaseButton,{disabled:blocked||!!(error||modelIssue)||ids2.length<min||ids2.length>max,onClick:()=>emit({type:"submit",scopeId:model.scopeId,expectedRevision:model.revision,selectedIds:[...ids2],selectedCount:ids2.length}),children:t("Save")}):null,model.showCancel!==false?jsxRuntime.jsx(BaseButton,{disabled:blocked,onClick:()=>emit({type:"cancel",scopeId:model.scopeId}),children:t("Cancel")}):null,model.errorCode?jsxRuntime.jsx(BaseButton,{disabled:blocked,onClick:()=>emit({type:"retry",scopeId:model.scopeId}),children:t("Retry")}):null]})]})}var id6=zod.z.string().min(1).max(256),row=zod.z.object({id:id6,label:zod.z.string().optional(),labelKey:zod.z.string().min(1).optional(),labelI18n:monkeys.I18nTextSchema.optional(),description:zod.z.string().optional(),descriptionKey:zod.z.string().min(1).optional(),descriptionI18n:monkeys.I18nTextSchema.optional(),showId:zod.z.boolean().optional(),missing:zod.z.boolean().optional(),disabled:zod.z.boolean().optional()}).strict(),modelSchema=zod.z.object({scopeId:id6,revision:id6,titleKey:zod.z.string().min(1).optional(),descriptionKey:zod.z.string().min(1).optional(),selectedIds:zod.z.array(id6).max(1e4),selectedRows:zod.z.array(row).max(1e4).optional(),candidates:zod.z.array(row).max(1e4).optional(),mode:zod.z.enum(["options","ids"]).optional(),selectionMode:zod.z.enum(["single","multiple"]).optional(),minSelected:zod.z.number().int().min(0).max(1e4).optional(),maxSelected:zod.z.number().int().min(0).max(1e4).optional(),showSubmit:zod.z.boolean().optional(),showCancel:zod.z.boolean().optional(),loading:zod.z.boolean().optional(),pending:zod.z.boolean().optional(),readOnly:zod.z.boolean().optional(),search:zod.z.string().optional(),groupId:id6.optional(),groups:zod.z.array(row).max(10002).optional(),pagination:zod.z.object({hasMore:zod.z.boolean(),nextCursor:zod.z.string().optional(),loadingMore:zod.z.boolean().optional()}).strict().optional(),append:zod.z.object({revision:id6,rows:zod.z.array(row).max(1e4)}).strict().optional(),allowCreate:zod.z.boolean().optional(),allowCopy:zod.z.boolean().optional(),canBrowse:zod.z.boolean().optional(),errorCode:zod.z.string().optional()}).strict(),ID={type:"string",minLength:1,maxLength:256},ROW={type:"object",additionalProperties:false,required:["id"],properties:{id:ID,label:{type:"string"},labelKey:{type:"string",minLength:1},labelI18n:I18N_DISPLAY_TEXT_SCHEMA,description:{type:"string"},descriptionKey:{type:"string",minLength:1},descriptionI18n:I18N_DISPLAY_TEXT_SCHEMA,showId:{type:"boolean"},missing:{type:"boolean"},disabled:{type:"boolean"}}},ROWS={type:"array",maxItems:1e4,items:ROW},IDS={type:"array",maxItems:1e4,uniqueItems:true,items:ID},BOUND={type:"integer",minimum:0,maximum:1e4},ORDERED_SELECTION_MODEL_SCHEMA={type:"object",additionalProperties:false,required:["scopeId","revision","selectedIds"],properties:{scopeId:ID,revision:ID,titleKey:{type:"string",minLength:1},descriptionKey:{type:"string",minLength:1},selectedIds:IDS,selectedRows:ROWS,candidates:ROWS,mode:{enum:["options","ids"]},selectionMode:{enum:["single","multiple"]},minSelected:BOUND,maxSelected:BOUND,showSubmit:{type:"boolean"},showCancel:{type:"boolean"},loading:{type:"boolean"},pending:{type:"boolean"},readOnly:{type:"boolean"},search:{type:"string"},groupId:ID,groups:{...ROWS,maxItems:10002},pagination:{type:"object",additionalProperties:false,required:["hasMore"],properties:{hasMore:{type:"boolean"},nextCursor:{type:"string"},loadingMore:{type:"boolean"}}},append:{type:"object",additionalProperties:false,required:["revision","rows"],properties:{revision:ID,rows:ROWS}},allowCreate:{type:"boolean"},allowCopy:{type:"boolean"},canBrowse:{type:"boolean"},errorCode:{type:"string",maxLength:128}}},selected={selectedIds:IDS,selectedCount:BOUND,expectedRevision:ID},INTENT_PROPERTIES={change:selected,submit:selected,search:{value:{type:"string"}},"group-change":{value:ID},"load-more":{cursor:{type:"string",minLength:1}},copy:{id:ID},create:{},retry:{},cancel:{},error:{code:{enum:["ORDERED_SELECTION_LIMIT_EXCEEDED","ORDERED_SELECTION_BYTES_EXCEEDED","ORDERED_SELECTION_INVALID_MODEL"]}}},ORDERED_SELECTION_INTENT_SCHEMAS=Object.fromEntries(Object.entries(INTENT_PROPERTIES).map(([name,properties2])=>[name,{type:"object",additionalProperties:false,required:["scopeId",...Object.keys(properties2)],properties:{scopeId:ID,...properties2}}])),LABELS={Loading:"loading",IDs:"ids",Add:"add",Group:"group",Search:"search",Create:"create",Copy:"copy","Load more":"loadMore",Clear:"clear",Selected:"selected",Move:"move",Unavailable:"unavailable","Move up":"moveUp","Move down":"moveDown",Remove:"remove",Save:"save",Cancel:"cancel",Retry:"retry",ORDERED_SELECTION_LIMIT_EXCEEDED:"errors.limit",ORDERED_SELECTION_BYTES_EXCEEDED:"errors.bytes",ORDERED_SELECTION_INVALID_MODEL:"errors.invalid"},runtimePaginationSchema=zod.z.object({hasMore:zod.z.boolean(),nextCursor:zod.z.string().nullable().optional(),loadingMore:zod.z.boolean().optional(),pageSize:zod.z.number().int().positive().optional(),returned:zod.z.number().int().nonnegative().optional(),total:zod.z.number().int().nonnegative().optional(),loadedCount:zod.z.number().int().nonnegative().optional(),loadedStart:zod.z.number().int().nonnegative().optional(),loadedEnd:zod.z.number().int().nonnegative().optional(),errorCode:zod.z.string().max(128).optional()}).strict();function normalizeOrderedSelectionRuntimeModel(input){let{submitting,pagination:rawPagination,...publicModel}=input;if(submitting!==void 0&&typeof submitting!="boolean")throw new TypeError("Invalid runtime submitting state.");let pagination=rawPagination===void 0?void 0:runtimePaginationSchema.parse(rawPagination),model=modelSchema.parse({...publicModel,...pagination?{pagination:{hasMore:pagination.hasMore,...pagination.nextCursor===null||pagination.nextCursor===void 0?{}:{nextCursor:pagination.nextCursor},...pagination.loadingMore===void 0?{}:{loadingMore:pagination.loadingMore}}}:{},...publicModel.errorCode===void 0&&pagination?.errorCode?{errorCode:pagination.errorCode}:{}});return {...model,pending:model.pending===true||submitting===true}}function OrderedSelectionCapabilityRenderer(context){let model=normalizeOrderedSelectionRuntimeModel(context.model);return jsxRuntime.jsx(OrderedSelection,{model,translate:key3=>context.translate(LABELS[key3]?`monkeys.design.capability.orderedSelection.${LABELS[key3]}`:key3),onIntent:intent=>{let{type,...payload}=intent;context.emitIntent(`capability.ordered-selection.${type}`,payload);}})}var id7=zod.z.string().min(1).max(256).refine(value=>value.trim().length>0&&!/[\u0000-\u001f\u007f]/.test(value)&&!["__proto__","constructor","prototype"].includes(value)),GalleryPresentationSettingsSchema=zod.z.object({visibleColumnKeys:zod.z.array(id7).min(1).refine(value=>new Set(value).size===value.length),galleryFieldKey:id7,galleryLayout:zod.z.enum(["fixed","masonry","rail"]),galleryDensity:zod.z.enum(["compact","comfortable","detailed"]),galleryGridColumns:zod.z.union([zod.z.literal("auto"),zod.z.number().int().min(1).max(5)]),galleryBentoColumns:zod.z.number().int().min(1).max(3),galleryDetailVisibility:zod.z.enum(["all","limit"]),galleryDetailLimit:zod.z.number().int().min(1).max(Number.MAX_SAFE_INTEGER)}).strict(),GalleryPresentationFieldsSchema=zod.z.array(zod.z.object({id:id7,label:zod.z.string().optional(),labelKey:zod.z.string().min(1).optional(),labelI18n:monkeys.I18nTextSchema.optional(),role:zod.z.enum(["title","summary","media","detail","actions"]).optional()}).strict()).min(1).refine(fields=>new Set(fields.map(field=>field.id)).size===fields.length),idSchema={type:"string",minLength:1,maxLength:256,pattern:"^(?!__proto__$|constructor$|prototype$)(?=.*\\S)[^\\u0000-\\u001f\\u007f]+$"},properties={visibleColumnKeys:{type:"array",minItems:1,uniqueItems:true,items:idSchema},galleryFieldKey:idSchema,galleryLayout:{enum:["fixed","masonry","rail"]},galleryDensity:{enum:["compact","comfortable","detailed"]},galleryGridColumns:{oneOf:[{const:"auto"},{type:"integer",minimum:1,maximum:5}]},galleryBentoColumns:{type:"integer",minimum:1,maximum:3},galleryDetailVisibility:{enum:["all","limit"]},galleryDetailLimit:{type:"integer",minimum:1,maximum:Number.MAX_SAFE_INTEGER}},GALLERY_PRESENTATION_SETTINGS_SCHEMA={type:"object",additionalProperties:false,required:Object.keys(properties),properties},GALLERY_PRESENTATION_FIELDS_SCHEMA={type:"array",minItems:1,items:{type:"object",additionalProperties:false,required:["id"],properties:{id:idSchema,label:{type:"string"},labelKey:{type:"string",minLength:1},labelI18n:I18N_DISPLAY_TEXT_SCHEMA,role:{enum:["title","summary","media","detail","actions"]}}}},GALLERY_PRESENTATION_SETTING_CHANGE_SCHEMA={oneOf:Object.entries(properties).map(([settingId,value])=>({type:"object",additionalProperties:false,required:["settingId","value"],properties:{settingId:{const:settingId},value}}))};function normalizeGalleryPresentationSettings(value,fieldIds){if(!value||typeof value!="object"||Array.isArray(value))throw new TypeError("Invalid gallery settings.");let input={...value};for(let key3 of ["galleryGridColumns","galleryBentoColumns","galleryDetailLimit"])typeof input[key3]=="string"&&/^[1-9][0-9]*$/.test(input[key3])&&(input[key3]=Number(input[key3]));return validateGalleryPresentationSettings(input,fieldIds)}function validateGalleryPresentationSettings(value,fieldIds){let settings=GalleryPresentationSettingsSchema.parse(value),allowed=new Set(fieldIds);if(settings.visibleColumnKeys.some(key3=>!allowed.has(key3))||settings.galleryFieldKey!=="auto"&&!allowed.has(settings.galleryFieldKey))throw new TypeError("Unknown gallery field.");return settings}var RUNTIME_TERMINAL_MAX_RETAINED_FRAMES=2048,RUNTIME_TERMINAL_MAX_RETAINED_BYTES=2*1024*1024,RuntimeTerminalOutputError=class extends Error{constructor(code,expectedSequence,receivedSequence){super(code);this.code=code;this.expectedSequence=expectedSequence;this.receivedSequence=receivedSequence;this.name="RuntimeTerminalOutputError";}};function prepareRuntimeTerminalOutput(history,output){let fail=(code,received)=>{throw new RuntimeTerminalOutputError(code,history.highWater+1,received)};if(!Array.isArray(output))return fail("invalid-frame");if(output.length>RUNTIME_TERMINAL_MAX_RETAINED_FRAMES)return fail("output-budget-exceeded");let known=new Map(history.frames.map(frame=>[frame.sequence,frame])),append=[],highWater=history.highWater,previous,batchBytes=0;for(let frame of output){if(!frame||!Number.isSafeInteger(frame.sequence)||frame.sequence<1||typeof frame.data!="string")return fail("invalid-frame");if(previous!==void 0&&frame.sequence===previous)return fail("duplicate-sequence",frame.sequence);if(previous!==void 0&&frame.sequence!==previous+1)return fail("sequence-gap",frame.sequence);if(previous=frame.sequence,frame.data.length>RUNTIME_TERMINAL_MAX_RETAINED_BYTES)return fail("output-budget-exceeded",frame.sequence);let bytes2=new TextEncoder().encode(frame.data).byteLength;if(batchBytes+=bytes2,batchBytes>RUNTIME_TERMINAL_MAX_RETAINED_BYTES)return fail("output-budget-exceeded",frame.sequence);if(frame.sequence<=highWater){let seen=known.get(frame.sequence);if(!seen)return fail("history-expired",frame.sequence);if(seen.data!==frame.data)return fail("sequence-conflict",frame.sequence)}else {if(frame.sequence!==highWater+1)return fail("sequence-gap",frame.sequence);highWater=frame.sequence,append.push({sequence:frame.sequence,data:frame.data,bytes:bytes2});}}let frames=[...history.frames,...append],bytes=history.bytes+append.reduce((sum,frame)=>sum+frame.bytes,0),remove=0;for(;frames.length-remove>RUNTIME_TERMINAL_MAX_RETAINED_FRAMES||bytes>RUNTIME_TERMINAL_MAX_RETAINED_BYTES;)bytes-=frames[remove++].bytes;return {history:{highWater,bytes,frames:frames.slice(remove)},append:append.map(({sequence,data})=>({sequence,data}))}}function RuntimeTerminalView(props){let element=React8.useRef(null),latest=React8.useRef(props);latest.current=props;let running=React8.useRef();return React8.useEffect(()=>{let sessionKey=props.sessionKey,container=element.current;if(!container||!sessionKey)return;let active=true,terminal,observer,subscriptions=[],cleaned=false,cleanup=()=>{cleaned||(cleaned=true,observer?.disconnect(),subscriptions.forEach(subscription=>subscription.dispose()),terminal?.dispose());},history={highWater:0,bytes:0,frames:[]},current=()=>active&&latest.current.sessionKey===sessionKey,report=error=>{if(!current())return;let fault=error instanceof RuntimeTerminalOutputError?error:new RuntimeTerminalOutputError("load-failed",history.highWater+1);latest.current.onOutputError?.({sessionKey,code:fault.code,expectedSequence:fault.expectedSequence,...fault.receivedSequence===void 0?{}:{receivedSequence:fault.receivedSequence}});};return Promise.all([import('@xterm/xterm'),import('@xterm/addon-fit'),import('@xterm/addon-web-links')]).then(([{Terminal},{FitAddon},{WebLinksAddon}])=>{if(!current())return;let openLink=(_event,uri)=>{let safe=safeDisplayUrl(uri,"link");current()&&safe&&/^https?:\/\//i.test(safe)&&window.open(safe,"_blank","noopener,noreferrer");},term=new Terminal({linkHandler:{activate:openLink},cursorBlink:true,disableStdin:latest.current.disabled===true,fontSize:13,fontFamily:'"JetBrains Mono", Menlo, Monaco, "Courier New", monospace'});terminal=term;let fit=new FitAddon;term.loadAddon(fit),term.loadAddon(new WebLinksAddon(openLink)),term.open(container);let resize=()=>{if(!current())return;fit.fit();let dimensions=fit.proposeDimensions();dimensions&&Number.isInteger(dimensions.cols)&&Number.isInteger(dimensions.rows)&&dimensions.cols>0&&dimensions.rows>0&&latest.current.onResize?.({sessionKey,columns:dimensions.cols,rows:dimensions.rows});};subscriptions.push(term.onData(data=>{current()&&!latest.current.disabled&&latest.current.onInput?.({sessionKey,data});}));let write=output=>{if(current())try{let prepared=prepareRuntimeTerminalOutput(history,output);prepared.append.length&&term.write(prepared.append.map(frame=>frame.data).join("")),history=prepared.history;}catch(error){report(error);}};running.current={sessionKey,terminal:term,write},resize(),typeof ResizeObserver<"u"&&(observer=new ResizeObserver(resize),observer.observe(container)),write(latest.current.output);}).catch(error=>{cleanup(),terminal&&running.current?.terminal===terminal&&(running.current=void 0),report(error);}),()=>{active=false,cleanup(),terminal&&running.current?.terminal===terminal&&(running.current=void 0);}},[props.sessionKey]),React8.useEffect(()=>{let state=running.current;state?.sessionKey===props.sessionKey&&(state.terminal.options.disableStdin=props.disabled===true,state.write(props.output));},[props.sessionKey,props.output,props.disabled]),jsxRuntime.jsxs("div",{className:props.className,style:props.style,children:[jsxRuntime.jsx("div",{role:"status",children:props.statusLabel}),jsxRuntime.jsx("div",{ref:element,className:"h-full min-h-48 w-full rounded-2xl"})]})}var RUNTIME_TERMINAL_MODEL_SCHEMA={type:"object",additionalProperties:false,properties:{statusLabelKey:{type:"string",minLength:1,maxLength:256},disabled:{type:"boolean"}}},safeCode=code=>typeof code=="string"&&/^[A-Za-z][A-Za-z0-9_.-]{0,127}$/.test(code)?code:"PAGE_STREAM_UNAVAILABLE";function TerminalSession({context}){let{stream,model,translate}=context,latest=React8.useRef(context);latest.current=context;let active=React8.useRef(true);React8.useEffect(()=>(active.current=true,()=>{active.current=false;}),[]);let[outputError,setOutputError]=React8.useState(),dimensions=React8.useRef(),sentDimensions=React8.useRef(),sessionKey=stream.sessionKey,disabled=model.disabled===true||stream.status!=="open"||!!outputError,output=[],invalid2=false,initial=stream.model?.output;try{if(initial!==void 0&&!Array.isArray(initial))throw new TypeError("Invalid output");output=[...Array.isArray(initial)?initial:[],...stream.events].map(value=>{if(!value||typeof value!="object"||Array.isArray(value)||!Number.isSafeInteger(value.sequence)||Number(value.sequence)<1||typeof value.data!="string")throw new TypeError("Invalid output");return {sequence:Number(value.sequence),data:value.data}}),prepareRuntimeTerminalOutput({highWater:0,bytes:0,frames:[]},output);}catch{invalid2=true,output=[];}let send=(key3,port2,payload)=>{let current=latest.current;if(!(!active.current||key3!==current.stream?.sessionKey||current.stream.status!=="open"||current.model.disabled===true||outputError||invalid2||!current.sendStreamControl))try{Promise.resolve(current.sendStreamControl(port2,payload)).catch(()=>{active.current&&latest.current.stream?.sessionKey===key3&&setOutputError("PAGE_STREAM_CONTROL_FAILED");});}catch{setOutputError("PAGE_STREAM_CONTROL_FAILED");}},error=invalid2?"PAGE_STREAM_OUTPUT_INVALID":outputError??stream.errorCode,flushResize=()=>{let value=dimensions.current;if(!value||disabled||invalid2||!latest.current.sendStreamControl)return;let identity2=`${value.columns}:${value.rows}`;sentDimensions.current!==identity2&&(sentDimensions.current=identity2,send(sessionKey,"terminal.resize",value));};return React8.useEffect(()=>{if(disabled||invalid2){sentDimensions.current=void 0;return}flushResize();},[stream.status,model.disabled,outputError,invalid2,context.sendStreamControl]),jsxRuntime.jsxs("div",{"data-monkeys-component":"runtime-terminal-capability",children:[error?jsxRuntime.jsx("div",{role:"alert",children:safeCode(error)}):null,jsxRuntime.jsx(RuntimeTerminalView,{sessionKey,output,disabled:disabled||invalid2,statusLabel:translate(typeof model.statusLabelKey=="string"?model.statusLabelKey:"monkeys.design.capability.runtimeTerminal.status"),onInput:event=>send(event.sessionKey,"terminal.input",{data:event.data}),onResize:event=>{!active.current||event.sessionKey!==latest.current.stream?.sessionKey||!Number.isInteger(event.columns)||!Number.isInteger(event.rows)||event.columns<1||event.rows<1||(dimensions.current={columns:event.columns,rows:event.rows},flushResize());},onOutputError:event=>{active.current&&latest.current.stream?.sessionKey===event.sessionKey&&setOutputError(safeCode(event.code));}})]})}function RuntimeTerminalCapabilityRenderer(context){return context.stream?.sessionKey?jsxRuntime.jsx(TerminalSession,{context},context.stream.sessionKey):jsxRuntime.jsx("div",{role:"status",children:context.translate("monkeys.design.capability.runtimeTerminal.waiting")})}var TABLE_MESSAGE_VALUE_SCHEMA={type:"object",additionalProperties:false,required:["key"],properties:{key:{type:"string",minLength:1},values:{type:"object",additionalProperties:{type:["string","number","boolean"]}}}},isRecord=value=>typeof value=="object"&&value!==null&&!Array.isArray(value)&&(Object.getPrototypeOf(value)===Object.prototype||Object.getPrototypeOf(value)===null);function renderTableMessageValue(value,translate){if(!isRecord(value)||typeof value.key!="string"||value.key.length===0||Object.keys(value).some(key3=>key3!=="key"&&key3!=="values"))throw new TypeError("Invalid table message value");if(value.values!==void 0&&(!isRecord(value.values)||Object.values(value.values).some(item=>typeof item!="string"&&typeof item!="boolean"&&!(typeof item=="number"&&Number.isFinite(item)))))throw new TypeError("Invalid table message interpolation values");return translate(value.key,value.values)}function RecordDetailCopyValue({value,copy:copy2,translate,valueFormat="text"}){let[feedback,setFeedback]=React8.useState(null),mounted=React8.useRef(true),pending=React8.useRef(false);return React8.useEffect(()=>(mounted.current=true,()=>{mounted.current=false;}),[]),jsxRuntime.jsxs("span",{className:"flex min-w-0 flex-col items-start gap-2",children:[jsxRuntime.jsx("span",{className:"whitespace-pre-wrap break-all",children:value}),jsxRuntime.jsx("button",{type:"button",className:"rounded border border-border px-2 py-1 text-sm text-foreground hover:bg-accent focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring",onClick:async()=>{if(!pending.current){pending.current=true,setFeedback(null);try{if(!navigator.clipboard?.writeText)throw new Error("Clipboard unavailable.");let copied=value;if(valueFormat==="absolute-url"){let safe=safeDisplayUrl(value,"link");if(!safe)throw new Error("Unsafe copy URL.");let absolute=new URL(safe,window.location.origin);if(!["http:","https:"].includes(absolute.protocol)||!safeDisplayUrl(absolute.href,"link"))throw new Error("Unsafe copy URL.");copied=absolute.href;}else if(valueFormat!=="text")throw new Error("Unknown copy format.");await navigator.clipboard.writeText(copied),mounted.current&&setFeedback("success");}catch{mounted.current&&setFeedback("failure");}finally{pending.current=false;}}},children:translate(String(copy2.labelKey))}),feedback?jsxRuntime.jsx("span",{role:feedback==="failure"?"alert":"status",children:translate(String(feedback==="success"?copy2.successLabelKey:copy2.failureLabelKey))}):null]})}var tones=["default","primary","success","warning","danger","muted"],TABLE_COPY_PARAMETERS_SCHEMA={type:"object",additionalProperties:false,required:["labelKey","successLabelKey","failureLabelKey"],properties:{labelKey:{type:"string",minLength:1},successLabelKey:{type:"string",minLength:1},failureLabelKey:{type:"string",minLength:1}}},TABLE_DISPLAY_CELL_SCHEMAS=[{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"stack"},value:{type:"object",additionalProperties:false,required:["lines"],properties:{lines:{type:"array",items:{oneOf:[{type:"string"},I18N_DISPLAY_TEXT_SCHEMA,TABLE_MESSAGE_VALUE_SCHEMA]}},icon:BASE_ASSET_ICON_DESCRIPTOR_SCHEMA}}}},{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"metrics"},value:{type:"object",additionalProperties:false,required:["items"],properties:{items:{type:"array",items:{type:"object",additionalProperties:false,required:["labelKey","value"],properties:{labelKey:{type:"string",minLength:1},value:{type:"number"}}}}}}}},{type:"object",additionalProperties:false,required:["valueType","value","copy"],properties:{valueType:{const:"copy"},value:{type:"string"},copy:TABLE_COPY_PARAMETERS_SCHEMA,valueFormat:{enum:["text","absolute-url"]}}},{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"localized-text"},value:I18N_DISPLAY_TEXT_SCHEMA}},{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"identity"},value:{type:"object",additionalProperties:false,anyOf:[{required:["text"]},{required:["textI18n"]}],properties:{text:{type:"string"},textI18n:I18N_DISPLAY_TEXT_SCHEMA,imageUrl:{type:"string",minLength:1,maxLength:4096},icon:BASE_ASSET_ICON_DESCRIPTOR_SCHEMA}}}},{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"badge"},value:{type:"object",additionalProperties:false,oneOf:[{required:["textKey"],not:{required:["textI18n"]}},{required:["textI18n"],not:{anyOf:[{required:["textKey"]},{required:["textParameters"]}]}}],properties:{textKey:{type:"string",minLength:1},textParameters:{type:"object",additionalProperties:{type:["string","number","boolean","null"]}},textI18n:I18N_DISPLAY_TEXT_SCHEMA,tone:{enum:[...tones]},icon:BASE_ASSET_ICON_DESCRIPTOR_SCHEMA}}}}],object2=value=>!!value&&typeof value=="object"&&!Array.isArray(value);function iconDescriptor(value){if(value===void 0)return;if(!object2(value))throw new TypeError("Invalid display icon descriptor.");let keys=Object.keys(value);if(value.kind==="image"&&typeof value.src=="string"&&value.src.length>0&&value.src.length<=4096&&keys.every(key3=>["kind","src"].includes(key3)))return {kind:"image",src:value.src};if(value.kind==="lucide"&&typeof value.name=="string"&&value.name.length>0&&value.name.length<=128&&keys.every(key3=>["kind","name"].includes(key3)))return {kind:"lucide",name:value.name};if(value.kind==="emoji"&&typeof value.value=="string"&&value.value.length>0&&value.value.length<=64&&(value.backgroundColor===void 0||typeof value.backgroundColor=="string"&&value.backgroundColor.length<=128)&&keys.every(key3=>["kind","value","backgroundColor"].includes(key3)))return {kind:"emoji",value:value.value,...typeof value.backgroundColor=="string"?{backgroundColor:value.backgroundColor}:{}};throw new TypeError("Invalid display icon descriptor.")}function TypedDisplayCell({valueType,value,copy:copy2,valueFormat,translate}){let{locale}=useMonkeysLocale();if(valueType==="copy"){if(valueFormat!==void 0&&valueFormat!=="text"&&valueFormat!=="absolute-url")throw new TypeError("Invalid copy value format.");if(typeof value!="string"||!object2(copy2)||Object.keys(copy2).length!==3||!["labelKey","successLabelKey","failureLabelKey"].every(key3=>typeof copy2[key3]=="string"&©2[key3].length>0))throw new TypeError("Invalid table copy value.");return jsxRuntime.jsx(RecordDetailCopyValue,{value,valueFormat,copy:{labelKey:String(copy2.labelKey),successLabelKey:String(copy2.successLabelKey),failureLabelKey:String(copy2.failureLabelKey)},translate},JSON.stringify([value,valueFormat]))}if(valueFormat!==void 0)throw new TypeError("Value format requires a copy cell.");if(copy2!==void 0)throw new TypeError("Copy configuration requires a copy cell.");if(valueType==="localized-text")return jsxRuntime.jsx(jsxRuntime.Fragment,{children:resolveI18nDisplayText(value,locale)});if(!object2(value))throw new TypeError("Invalid typed display cell.");if(valueType==="stack"){if(Object.keys(value).some(key3=>!["lines","icon"].includes(key3))||!Array.isArray(value.lines))throw new TypeError("Invalid stack display value.");let icon2=iconDescriptor(value.icon),lines=value.lines.map(line=>{if(typeof line=="string")return line;if(!object2(line))throw new TypeError("Invalid stack display line.");return "defaultLocale"in line?resolveI18nDisplayText(line,locale):renderTableMessageValue(line,translate)});return jsxRuntime.jsxs("span",{className:"inline-flex min-w-0 items-start gap-2",children:[icon2?jsxRuntime.jsx(BaseAssetIcon,{icon:icon2,alt:"",normalizeImageIcon:true,className:"h-5 w-5 shrink-0 rounded"}):null,jsxRuntime.jsx("span",{className:"flex min-w-0 flex-col",children:lines.map((line,index)=>jsxRuntime.jsx("span",{className:"whitespace-pre-wrap break-words",children:line},index))})]})}if(valueType==="metrics"){if(Object.keys(value).some(key3=>key3!=="items")||!Array.isArray(value.items))throw new TypeError("Invalid metrics display value.");let numberFormat=new Intl.NumberFormat(locale),items=value.items.map(item=>{if(!object2(item)||Object.keys(item).some(key3=>!["labelKey","value"].includes(key3))||typeof item.labelKey!="string"||!item.labelKey||typeof item.value!="number"||!Number.isFinite(item.value))throw new TypeError("Invalid metrics display item.");return {label:translate(item.labelKey),value:numberFormat.format(item.value)}});return jsxRuntime.jsx("dl",{className:"flex flex-wrap gap-x-3 gap-y-1",children:items.map((item,index)=>jsxRuntime.jsxs("div",{className:"inline-flex gap-1",children:[jsxRuntime.jsx("dt",{children:item.label}),jsxRuntime.jsx("dd",{children:item.value})]},index))})}let allowed=valueType==="identity"?["text","textI18n","imageUrl","icon"]:["textKey","textParameters","textI18n","tone","icon"];if(Object.keys(value).some(key3=>!allowed.includes(key3)))throw new TypeError("Invalid typed display cell fields.");let icon=iconDescriptor(value.icon),image=descriptor=>jsxRuntime.jsx(BaseAssetIcon,{icon:descriptor,alt:"",normalizeImageIcon:true,className:"h-5 w-5 rounded"});if(valueType==="identity"){if(value.text!==void 0&&typeof value.text!="string"||value.imageUrl!==void 0&&(typeof value.imageUrl!="string"||!value.imageUrl||value.imageUrl.length>4096))throw new TypeError("Invalid identity display value.");let text11=value.textI18n!==void 0?resolveI18nDisplayText(value.textI18n,locale):value.text;if(typeof text11!="string")throw new TypeError("Identity requires text or localized text.");return jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-2",children:[typeof value.imageUrl=="string"?image({kind:"image",src:value.imageUrl}):icon?image(icon):null,jsxRuntime.jsx("span",{children:text11})]})}if(valueType!=="badge"||value.textKey!==void 0==(value.textI18n!==void 0)||value.textKey!==void 0&&(typeof value.textKey!="string"||!value.textKey)||value.tone!==void 0&&!tones.some(tone=>tone===value.tone))throw new TypeError("Invalid badge display value.");let textParameters;if(value.textParameters!==void 0){if(value.textI18n!==void 0||!object2(value.textParameters)||![Object.prototype,null].includes(Object.getPrototypeOf(value.textParameters)))throw new TypeError("Invalid badge text parameters.");textParameters=Object.fromEntries(Object.entries(value.textParameters).map(([key3,item])=>{if(item===null)return [key3,""];if(typeof item=="string"||typeof item=="boolean"||typeof item=="number"&&Number.isFinite(item))return [key3,item];throw new TypeError("Invalid badge text parameters.")}));}let text10=value.textI18n!==void 0?resolveI18nDisplayText(value.textI18n,locale):translate(String(value.textKey),textParameters);return jsxRuntime.jsx(BaseBadge,{label:text10,tone:value.tone,icon:icon?image(icon):void 0})}var FILE_PICKER_MAX_BYTES=5*1024*1024*1024,FILE_PICKER_SCHEMA="monkeys-design://render-model/file-picker/v1",metadataProperties={handleId:{type:"string",minLength:1,maxLength:256},fileName:{type:"string",minLength:1,maxLength:1024},size:{type:"integer",minimum:0,maximum:FILE_PICKER_MAX_BYTES},mimeType:{type:"string",maxLength:256}},metadataSchema={type:"object",additionalProperties:false,required:["handleId","fileName","size","mimeType"],properties:metadataProperties},FILE_PICKER_RENDER_MODEL_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:FILE_PICKER_SCHEMA,type:"object",additionalProperties:false,required:["labelKey","maxBytes"],properties:{labelKey:{type:"string",minLength:1,maxLength:256},accept:{type:"string",maxLength:1024},maxBytes:{type:"integer",minimum:1,maximum:FILE_PICKER_MAX_BYTES},disabled:{type:"boolean"},submitting:{type:"boolean"},selected:{anyOf:[{type:"null"},metadataSchema]}}},FILE_PICKER_SELECT_INTENT_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"monkeys-design://intent/file-picker-select/v1",...metadataSchema},FILE_PICKER_CANCEL_INTENT_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"monkeys-design://intent/file-picker-cancel/v1",type:"object",additionalProperties:false,maxProperties:0};function filePickerAccepts(file,accept){if(!accept?.trim())return true;let name=file.name.toLowerCase(),type=file.type.toLowerCase();return accept.split(",").some(raw=>{let rule=raw.trim().toLowerCase();return /^\.[a-z0-9][a-z0-9._-]*$/.test(rule)?name.endsWith(rule):/^[a-z0-9!#$&^_.+-]+\/\*$/.test(rule)?type.startsWith(rule.slice(0,-1)):/^[a-z0-9!#$&^_.+-]+\/[a-z0-9!#$&^_.+-]+$/.test(rule)&&type===rule})}function readTransientFileMetadata(value){if(!value||typeof value!="object"||Array.isArray(value))return;let object6=value;if(!(Object.keys(object6).length!==4||typeof object6.handleId!="string"||object6.handleId.length<1||object6.handleId.length>256||typeof object6.fileName!="string"||object6.fileName.length<1||object6.fileName.length>1024||typeof object6.mimeType!="string"||object6.mimeType.length>256||typeof object6.size!="number"||!Number.isInteger(object6.size)||object6.size<0||object6.size>FILE_PICKER_MAX_BYTES))return {handleId:object6.handleId,fileName:object6.fileName,size:object6.size,mimeType:object6.mimeType}}function FilePickerView({model,translate,emitIntent,transientFiles}){let id9=React8.useId(),input=React8.useRef(null),current=React8.useRef(),[selected2,setSelected]=React8.useState(),[error,setError]=React8.useState(),disabled=!(typeof model.labelKey=="string"&&typeof model.maxBytes=="number"&&Number.isInteger(model.maxBytes)&&model.maxBytes>=1&&model.maxBytes<=FILE_PICKER_MAX_BYTES)||!transientFiles||model.disabled===true||model.submitting===true,authoritative=readTransientFileMetadata(model.selected),authoritativeKey=authoritative?JSON.stringify(authoritative):"";React8.useEffect(()=>()=>{current.current&&transientFiles?.discard(current.current.handleId),current.current=void 0;},[transientFiles]),React8.useEffect(()=>{let next=transientFiles?authoritative:void 0;current.current&¤t.current.handleId!==next?.handleId&&transientFiles?.discard(current.current.handleId),current.current=next,setSelected(next),setError(void 0),input.current&&(input.current.value="");},[transientFiles,authoritativeKey]);let clear=()=>{disabled||(current.current&&transientFiles?.discard(current.current.handleId),current.current=void 0,setSelected(void 0),setError(void 0),input.current&&(input.current.value=""),emitIntent("capability.file-picker.cancel",{}));},label=typeof model.labelKey=="string"?model.labelKey:"monkeys.design.capability.filePicker.label";return jsxRuntime.jsxs("div",{className:"grid gap-2",children:[jsxRuntime.jsx("label",{htmlFor:id9,children:translate(label)}),jsxRuntime.jsx("input",{ref:input,id:id9,type:"file",hidden:true,accept:typeof model.accept=="string"?model.accept:void 0,disabled,"aria-invalid":!!error,onChange:event=>{if(disabled||!transientFiles)return;let file=event.currentTarget.files?.[0];if(event.currentTarget.value="",!file)return;if(file.size>Number(model.maxBytes)){setError("monkeys.design.capability.filePicker.tooLarge");return}if(!filePickerAccepts(file,typeof model.accept=="string"?model.accept:void 0)){setError("monkeys.design.capability.filePicker.invalidType");return}let registered;try{registered=transientFiles.register(file,{maxBytes:Number(model.maxBytes)});}catch{setError("monkeys.design.capability.filePicker.registrationFailed");return}let metadata={handleId:registered.handleId,fileName:registered.fileName,size:registered.size,mimeType:registered.mimeType},previous=current.current;current.current=metadata,setSelected(metadata),setError(void 0),previous&&previous.handleId!==metadata.handleId&&transientFiles.discard(previous.handleId),emitIntent("capability.file-picker.select",metadata);}}),jsxRuntime.jsxs("div",{className:"flex items-center gap-token-md",children:[jsxRuntime.jsx(BaseTooltip,{content:translate(label),portal:true,children:jsxRuntime.jsx(BaseButton,{label:translate(label),iconOnly:true,size:"md",icon:jsxRuntime.jsx(lucideReact.Upload,{className:"h-4 w-4"}),disabled,onClick:()=>input.current?.click()})}),jsxRuntime.jsx(BaseTooltip,{content:translate("monkeys.design.capability.filePicker.cancel"),portal:true,children:jsxRuntime.jsx(BaseButton,{label:translate("monkeys.design.capability.filePicker.cancel"),iconOnly:true,size:"md",icon:jsxRuntime.jsx(lucideReact.X,{className:"h-4 w-4"}),disabled,onClick:clear})}),selected2?jsxRuntime.jsx("span",{children:selected2.fileName}):null]}),error?jsxRuntime.jsx("span",{role:"alert",children:translate(error)}):null]})}var FilePickerCapabilityRenderer=context=>jsxRuntime.jsx(FilePickerView,{...context});var cx=(...values)=>values.filter(Boolean).join(" ");function useControllable(value,defaultValue,fallback2,onChange){let controlled=value!==void 0,initial=React8.useRef(controlled),warned=React8.useRef(false);process.env.NODE_ENV!=="production"&&!warned.current&&(value!==void 0&&defaultValue!==void 0||initial.current!==controlled)&&(console.error("monkeys-design UI: choose controlled or uncontrolled state; do not supply both value and defaultValue or switch modes."),warned.current=true);let[local,setLocal]=React8.useState(defaultValue??fallback2),current=controlled?value:local;return [current,next=>{controlled||setLocal(next),next!==current&&onChange?.(next);}]}var tokens_default={seed:{ui:{color:{lightEdgeBlue:{$value:{hex:"#4285FF"}},blueGlow:{$value:{hex:"#2357EA"}},violetGlow:{$value:{hex:"#7631FF"}}}}}};var UIThemeContext=React8.createContext(null),PortalDepthContext=React8.createContext(0);function useUIDirection(explicit){let theme=React8.useContext(UIThemeContext),inherited=useMonkeysDirection(),environment=useMonkeysEnvironment(),[documentDirection,setDocumentDirection]=React8.useState();return React8.useEffect(()=>{if(explicit||theme?.dir||inherited)return;let root=(environment.getDocument?.()??globalThis.document)?.documentElement;if(!root)return;let update=()=>setDocumentDirection(root.dir==="rtl"?"rtl":"ltr");update();let observer=new MutationObserver(update);return observer.observe(root,{attributes:true,attributeFilter:["dir"]}),()=>observer.disconnect()},[explicit,theme?.dir,inherited,environment]),explicit??theme?.dir??inherited??documentDirection}function useUILocale(){let locale=useMonkeysLocale();return locale.provided?locale:{...zhCN,provided:false}}function useTooltipScope(){return React8.useContext(UIThemeContext)!==null}var inputDocuments=new WeakMap;function observeInput(document2){let existing=inputDocuments.get(document2);if(existing)return existing.count++,()=>releaseInput(document2);let root=document2.documentElement,previous=root.getAttribute("data-monkeys-ui-input"),pointer=()=>root.setAttribute("data-monkeys-ui-input","pointer"),keyboard=()=>root.setAttribute("data-monkeys-ui-input","keyboard");return document2.addEventListener("pointerdown",pointer,true),document2.addEventListener("keydown",keyboard,true),inputDocuments.set(document2,{count:1,dispose:()=>{document2.removeEventListener("pointerdown",pointer,true),document2.removeEventListener("keydown",keyboard,true),previous===null?root.removeAttribute("data-monkeys-ui-input"):root.setAttribute("data-monkeys-ui-input",previous);}}),()=>releaseInput(document2)}function releaseInput(document2){let entry=inputDocuments.get(document2);entry&&--entry.count===0&&(entry.dispose(),inputDocuments.delete(document2));}function Portal11({children}){let theme=React8.useContext(UIThemeContext),environment=useMonkeysEnvironment(),options2=useMonkeysPortalOptions(),direction=useUIDirection(),depth=React8.useContext(PortalDepthContext)+1,[host3,setHost]=React8.useState(null);React8.useEffect(()=>{let document2=environment.getDocument?.()??globalThis.document;return setHost(typeof options2.container=="function"?options2.container():options2.container??document2?.body??null),document2?observeInput(document2):void 0},[environment,options2.container]);let content=jsxRuntime.jsx(PortalDepthContext.Provider,{value:depth,children:jsxRuntime.jsx("div",{className:"monkeys-ui-scope monkeys-ui-portal",dir:direction,"data-monkeys-ui-theme":"dark",style:{...theme?.variables,"--monkeys-ui-overlay-layer":1200+depth*10},children})});return options2.disabled?content:host3?reactDom.createPortal(content,host3):null}function sampleInk(color){if(!color||!/^#([\da-f]{3}|[\da-f]{6})$/i.test(color))return "light";let hex=color.slice(1).length===3?[...color.slice(1)].map(value=>value+value).join(""):color.slice(1),channels=[0,2,4].map(index=>{let value=parseInt(hex.slice(index,index+2),16)/255;return value<=.04045?value/12.92:((value+.055)/1.055)**2.4}),luminance=channels[0]*.2126+channels[1]*.7152+channels[2]*.0722;return (luminance+.05)/.05>=1.05/(luminance+.05)?"dark":"light"}function ButtonLightEdge(options2){let filterId=`button-light-edge-${React8.useId().replace(/:/g,"")}`,hostRef=React8.useRef(null),[module,setModule]=React8.useState(null),[enabled,setEnabled]=React8.useState(false),[ready,setReady]=React8.useState(false),[shape,setShape]=React8.useState(null);return React8.useEffect(()=>{let motion=window.matchMedia("(prefers-reduced-motion: reduce)"),colors2=window.matchMedia("(forced-colors: active)"),update=()=>setEnabled(!motion.matches&&!colors2.matches);return update(),motion.addEventListener("change",update),colors2.addEventListener("change",update),()=>{motion.removeEventListener("change",update),colors2.removeEventListener("change",update);}},[]),React8.useEffect(()=>{if(!enabled)return;let active=true;return import('shaders/react').then(loaded=>{active&&setModule(loaded);}).catch(()=>{}),()=>{active=false;}},[enabled]),React8.useEffect(()=>{let host3=hostRef.current,button=host3?.closest("button");if(!button||!host3)return;let update=()=>{let width=host3.clientWidth,height=host3.clientHeight;if(!width||!height)return;let radiusValue=getComputedStyle(button).borderTopLeftRadius,radius=radiusValue.endsWith("%")?Math.min(width,height)*parseFloat(radiusValue)/100:parseFloat(radiusValue)||0,inset=1.5;setShape({type:"roundedRectSDF",radius:Math.max(.01,width/(2*height)-inset/height),height:Math.max(.01,.5-inset/height),rounding:Math.max(0,Math.min(radius-inset,height/2-inset))/height});};update();let observer=new ResizeObserver(update);return observer.observe(button),()=>observer.disconnect()},[]),jsxRuntime.jsxs("span",{ref:hostRef,className:"monkeys-ui-button-light-edge-mask","data-ready":ready||void 0,children:[jsxRuntime.jsx("svg",{width:"0",height:"0","aria-hidden":"true",className:"monkeys-ui-button-light-edge-defs",children:jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("filter",{id:filterId,x:"-30%",y:"-100%",width:"160%",height:"300%",colorInterpolationFilters:"sRGB",children:[jsxRuntime.jsx("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"4.5",result:"glow"}),jsxRuntime.jsx("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"1",result:"flow"}),jsxRuntime.jsxs("feMerge",{children:[jsxRuntime.jsx("feMergeNode",{in:"glow"}),jsxRuntime.jsx("feMergeNode",{in:"flow"})]})]})})}),jsxRuntime.jsxs("span",{className:"monkeys-ui-button-light-edge-flow",style:{filter:`url(#${filterId})`},children:[jsxRuntime.jsx("span",{className:"monkeys-ui-button-light-edge-ambient"}),enabled&&module&&shape?jsxRuntime.jsx(module.Shader,{disableTelemetry:true,style:{width:"100%",height:"100%"},onReady:()=>setReady(true),children:jsxRuntime.jsx(module.LightEdge,{colorA:tokens_default.seed.ui.color.lightEdgeBlue.$value.hex,colorB:tokens_default.seed.ui.color.violetGlow.$value.hex,thickness:.48,softness:1,intensity:.9,bloom:.2,spots:1,spotSize:.6,smoke:.12,smokeSize:.65,speed:.45,...options2,stops:null,shape})}):null]})]})}var Button2=React8.forwardRef(function({variant,shape="default",icon,tone="neutral",size:size2="md",loading=false,lightEdge=false,type="button",className,children,onClick,onPointerDown,onKeyDown,...props},ref){let direction=useUIDirection();return jsxRuntime.jsxs("button",{...props,dir:props.dir??direction,ref,type,className:cx("monkeys-ui-button",className),"data-light-edge":lightEdge?true:void 0,"data-shape":shape,"data-variant":variant??(shape==="icon"?"ghost":shape==="tile"?"outline":"solid"),"data-tone":tone,"data-size":size2,onPointerDown:event=>{event.currentTarget.dataset.input="pointer",onPointerDown?.(event);},onKeyDown:event=>{event.currentTarget.dataset.input="keyboard",onKeyDown?.(event);},"aria-busy":loading||void 0,"aria-disabled":loading||props["aria-disabled"],onClick:event=>{if(loading||props["aria-disabled"]===true||props["aria-disabled"]==="true"){event.preventDefault();return}onClick?.(event);},children:[lightEdge?jsxRuntime.jsx("span",{className:"monkeys-ui-button-light-edge","aria-hidden":"true",children:jsxRuntime.jsx(ButtonLightEdge,{...lightEdge===true?{}:lightEdge})}):null,jsxRuntime.jsxs("span",{className:"monkeys-ui-button-label","data-loading":loading||void 0,children:[icon?jsxRuntime.jsx("span",{className:"monkeys-ui-button-icon","aria-hidden":"true",children:icon}):null,children]}),loading?jsxRuntime.jsx("span",{className:"monkeys-ui-button-spinner","aria-hidden":"true"}):null]})});React8.forwardRef(function({checked,defaultChecked,onCheckedChange,onClick,...props},ref){let[value,setValue]=useControllable(checked,defaultChecked,false,onCheckedChange);return jsxRuntime.jsx(Button2,{...props,ref,"aria-pressed":value,onClick:event=>{onClick?.(event),event.defaultPrevented||setValue(!value);}})});React8.forwardRef(function({options:options2,value,defaultValue,onValueChange,onValueCommit,disabled,readOnly,className,style,onPointerDown,onKeyDown,onPointerUp,onKeyUp,dir,...props},ref){let field=useField(props),direction=useUIDirection(dir==="rtl"||dir==="ltr"?dir:void 0),[selected2,setSelected]=useControllable(value,defaultValue,options2[0]?.id??"",onValueChange),index=Math.max(0,options2.findIndex(option2=>option2.id===selected2)),option=options2[index],position=options2.length>1?index/(options2.length-1):.5,location=fraction=>`calc(${fraction*100}% + ${.5-fraction} * var(--monkeys-ui-color-slider-thumb-width))`,gradient=options2.map((item,index2)=>{let t=options2.length>1?index2/(options2.length-1):0;return `${item.color} ${location(t)}`}),background=options2.length>1?`linear-gradient(to ${direction==="rtl"?"left":"right"}, ${gradient.join(", ")})`:option?.color,locked=disabled||readOnly||options2.length<2,commit=input=>{let next=options2[Number(input.value)];!locked&&next&&onValueCommit?.(next.id);};return jsxRuntime.jsxs("div",{className:cx("monkeys-ui-color-slider",className),"data-disabled":disabled||options2.length===0||void 0,dir:direction,style,children:[jsxRuntime.jsx("span",{className:"monkeys-ui-color-slider-track",style:{background},"aria-hidden":"true"}),jsxRuntime.jsx("span",{className:"monkeys-ui-color-slider-thumb","data-ink":sampleInk(option?.color),style:{insetInlineStart:location(position),"--monkeys-ui-color-slider-selected":option?.color},"aria-hidden":"true",children:jsxRuntime.jsx("span",{className:"monkeys-ui-color-slider-label",children:option?.label})}),jsxRuntime.jsx("input",{...props,...field,ref,type:"range",dir:direction,min:0,max:Math.max(0,options2.length-1),step:1,value:index,disabled:disabled||options2.length===0,"aria-readonly":readOnly||void 0,"aria-valuetext":option?.label??"",className:"monkeys-ui-color-slider-input",onPointerDown:event=>{onPointerDown?.(event),readOnly&&event.preventDefault();},onKeyDown:event=>{onKeyDown?.(event),readOnly&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown"].includes(event.key)&&event.preventDefault();},onChange:event=>{if(!locked){let next=options2[Number(event.target.value)];next&&setSelected(next.id);}},onPointerUp:event=>{onPointerUp?.(event),event.defaultPrevented||commit(event.currentTarget);},onKeyUp:event=>{onKeyUp?.(event),!event.defaultPrevented&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown"].includes(event.key)&&commit(event.currentTarget);}})]})});var FieldContext=React8.createContext(null);function useField(props){let field=React8.useContext(FieldContext),direction=useUIDirection(props.dir==="rtl"||props.dir==="ltr"?props.dir:void 0);return {id:field?.id??props.id,dir:props.dir??direction,"aria-describedby":[field?.describedBy,props["aria-describedby"]].filter(Boolean).join(" ")||void 0,"aria-invalid":props["aria-invalid"]??field?.invalid,required:props.required??field?.required}}function Field({id:explicitId,label,description,error,invalid:invalid2,required,className,children,...props}){let generated=React8.useId(),helpInTooltip=React8.useContext(FormHelpPresentationContext),id9=explicitId??(React8.isValidElement(children)?children.props.id:void 0)??generated,describedBy=[description?id9+"-description":"",error?id9+"-error":""].filter(Boolean).join(" ")||void 0,fieldLabel=jsxRuntime.jsxs("label",{className:"monkeys-ui-label",htmlFor:id9,children:[label,required?jsxRuntime.jsx("span",{className:"monkeys-ui-required","aria-hidden":"true",children:" *"}):null]});return jsxRuntime.jsxs("div",{...props,className:cx("monkeys-ui-field",className),children:[helpInTooltip&&description?jsxRuntime.jsxs("div",{className:"flex items-center gap-1","data-slot":"label-row",children:[fieldLabel,jsxRuntime.jsx(BaseFormHelp,{children:description})]}):fieldLabel,jsxRuntime.jsx(FieldContext.Provider,{value:{id:id9,describedBy,invalid:invalid2??!!error,required},children:React8.Children.only(children)}),description?jsxRuntime.jsx("div",{id:id9+"-description",className:helpInTooltip?"monkeys-ui-visually-hidden":"monkeys-ui-description",children:description}):null,error?jsxRuntime.jsx("div",{id:id9+"-error",className:"monkeys-ui-error",role:"alert",children:error}):null]})}function Fieldset({legend,children,className,...props}){return jsxRuntime.jsxs("fieldset",{...props,className:cx("monkeys-ui-fieldset",className),children:[legend!=null?jsxRuntime.jsx("legend",{children:legend}):null,children]})}var Input2=React8.forwardRef(function({className,...props},ref){let field=useField(props);return jsxRuntime.jsx("input",{...props,...field,className:cx("monkeys-ui-input",className),ref})}),Textarea2=React8.forwardRef(function({className,...props},ref){let field=useField(props);return jsxRuntime.jsx("textarea",{...props,...field,ref,className:cx("monkeys-ui-textarea",className)})});function parseNumberValue(text10){return /^-?(?:\d+|\d*\.\d+)$/.test(text10.trim())&&Number.isFinite(Number(text10))?Number(text10):null}React8.forwardRef(function({value,defaultValue,onValueChange,...props},ref){let[text10,setText]=useControllable(value,defaultValue,"",next=>onValueChange?.(next,{numberValue:parseNumberValue(next)}));return jsxRuntime.jsx(Input2,{...props,type:"text",inputMode:"decimal",value:text10,onChange:event=>setText(event.target.value),ref})});React8.forwardRef(function({value,defaultValue,onValueChange,onSearch,clearLabel="\u6E05\u7A7A\u641C\u7D22",className,onKeyDown,disabled,readOnly,...props},ref){let[text10,setText]=useControllable(value,defaultValue,"",onValueChange),composing=React8.useRef(false),input=React8.useRef(null);return React8.useImperativeHandle(ref,()=>input.current,[]),jsxRuntime.jsxs("div",{className:cx("monkeys-ui-search",className),children:[jsxRuntime.jsx(lucideReact.Search,{size:17,"aria-hidden":"true"}),jsxRuntime.jsx(Input2,{...props,ref:input,type:"search",disabled,readOnly,value:text10,onChange:event=>setText(event.target.value),onCompositionStart:()=>{composing.current=true;},onCompositionEnd:()=>{composing.current=false;},onKeyDown:event=>{onKeyDown?.(event),!event.defaultPrevented&&event.key==="Enter"&&!composing.current&&!event.nativeEvent.isComposing&&(event.preventDefault(),onSearch?.(text10));}}),text10?jsxRuntime.jsx(Button2,{shape:"icon","aria-label":clearLabel,size:"sm",disabled:disabled||readOnly,onClick:()=>{!disabled&&!readOnly&&(setText(""),input.current?.focus());},children:jsxRuntime.jsx(lucideReact.X,{size:14,"aria-hidden":"true"})}):null]})});var Switch2=React8.forwardRef(function({checked,defaultChecked,onCheckedChange,className,onPointerDown,onKeyDown,...props},ref){let field=useField(props),[value,setValue]=useControllable(checked,defaultChecked,false,onCheckedChange);return jsxRuntime.jsx(SwitchPrimitive__namespace.Root,{...props,...field,ref,checked:value,onCheckedChange:setValue,onPointerDown:event=>{event.currentTarget.dataset.input="pointer",onPointerDown?.(event);},onKeyDown:event=>{event.currentTarget.dataset.input="keyboard",onKeyDown?.(event);},className:cx("monkeys-ui-switch",className),children:jsxRuntime.jsx(SwitchPrimitive__namespace.Thumb,{className:"monkeys-ui-switch-thumb"})})}),PickerTrigger=React8.forwardRef(function({indicator=jsxRuntime.jsx(lucideReact.ChevronDown,{size:12}),className,children,type="button",...props},ref){return jsxRuntime.jsxs("button",{...props,ref,type,className:cx("monkeys-ui-select",className),children:[jsxRuntime.jsx("span",{className:"min-w-0 truncate",children}),jsxRuntime.jsx("span",{className:"shrink-0","aria-hidden":"true",children:indicator})]})}),Select2=React8.forwardRef(function({options:options2,placeholder,className,style,id:id9,"aria-label":label,"aria-describedby":describedBy,"aria-invalid":invalid2,value,defaultValue,onValueChange,...props},ref){let field=useField({id:id9,dir:props.dir,"aria-describedby":describedBy,"aria-invalid":invalid2,required:props.required}),[selected2,setSelected]=useControllable(value,defaultValue,"",onValueChange),direction=useUIDirection(props.dir),locale=useUILocale(),{required,...fieldAttributes}=field;return jsxRuntime.jsxs(SelectPrimitive__namespace.Root,{...props,dir:direction,required,value:selected2,onValueChange:setSelected,children:[jsxRuntime.jsxs(SelectPrimitive__namespace.Trigger,{ref,...fieldAttributes,"aria-required":required||void 0,"aria-label":label,className:cx("monkeys-ui-select",className),style,children:[jsxRuntime.jsx(SelectPrimitive__namespace.Value,{placeholder:placeholder??locale.messages.multiSelect.placeholder}),jsxRuntime.jsx(SelectPrimitive__namespace.Icon,{"aria-hidden":"true",children:jsxRuntime.jsx(lucideReact.ChevronDown,{size:12})})]}),jsxRuntime.jsx(Portal11,{children:jsxRuntime.jsxs(SelectPrimitive__namespace.Content,{className:"monkeys-ui-select-content",position:"popper",sideOffset:6,children:[jsxRuntime.jsx(SelectPrimitive__namespace.ScrollUpButton,{children:jsxRuntime.jsx(lucideReact.ChevronUp,{size:12,"aria-hidden":"true"})}),jsxRuntime.jsx(SelectPrimitive__namespace.Viewport,{children:options2.map(option=>jsxRuntime.jsxs(SelectPrimitive__namespace.Item,{value:option.value,disabled:option.disabled,className:"monkeys-ui-select-item",children:[jsxRuntime.jsx(SelectPrimitive__namespace.ItemText,{children:option.label}),jsxRuntime.jsx(SelectPrimitive__namespace.ItemIndicator,{children:jsxRuntime.jsx(lucideReact.Check,{size:12,"aria-hidden":"true"})})]},option.value))}),jsxRuntime.jsx(SelectPrimitive__namespace.ScrollDownButton,{children:jsxRuntime.jsx(lucideReact.ChevronDown,{size:12,"aria-hidden":"true"})})]})})]})});function SectionTitle({as:Element2="h2",indicator=true,className,...props}){return jsxRuntime.jsx(Element2,{...props,className:cx("monkeys-ui-section-title",className),"data-indicator":indicator})}var ScrollSurface=React8.forwardRef(function({as:Element2="section",children,className,onScroll,dir,...props},ref){let direction=useUIDirection(dir==="rtl"||dir==="ltr"?dir:void 0);return jsxRuntime.jsx(ScrollArea2__namespace.Root,{asChild:true,type:"scroll",scrollHideDelay:700,dir:direction,children:jsxRuntime.jsxs(Element2,{...props,ref,className:cx("monkeys-ui-scroll-surface",className),children:[jsxRuntime.jsx(ScrollArea2__namespace.Viewport,{className:"monkeys-ui-scroll-viewport",tabIndex:0,role:"group","aria-labelledby":props["aria-labelledby"],"aria-label":props["aria-labelledby"]?void 0:props["aria-label"]??"\u6EDA\u52A8\u5185\u5BB9",onScroll,children}),jsxRuntime.jsx(ScrollArea2__namespace.Scrollbar,{orientation:"vertical",className:"monkeys-ui-scrollbar","aria-hidden":"true",children:jsxRuntime.jsx(ScrollArea2__namespace.Thumb,{className:"monkeys-ui-scroll-thumb"})}),jsxRuntime.jsx(ScrollArea2__namespace.Scrollbar,{orientation:"horizontal",className:"monkeys-ui-scrollbar","aria-hidden":"true",children:jsxRuntime.jsx(ScrollArea2__namespace.Thumb,{className:"monkeys-ui-scroll-thumb"})})]})})});function Tooltip2({content,children,delayDuration,side="top"}){let scoped=useTooltipScope(),tooltip=jsxRuntime.jsxs(Tooltip__namespace.Root,{delayDuration,children:[jsxRuntime.jsx(Tooltip__namespace.Trigger,{asChild:true,children}),jsxRuntime.jsx(Portal11,{children:jsxRuntime.jsx(Tooltip__namespace.Content,{side,sideOffset:7,className:"monkeys-ui-tooltip",children:content})})]});return scoped?tooltip:jsxRuntime.jsx(Tooltip__namespace.Provider,{delayDuration:delayDuration??500,skipDelayDuration:300,children:tooltip})}function Badge2({tone="neutral",className,...props}){return jsxRuntime.jsx("span",{...props,"data-tone":tone,className:cx("monkeys-ui-badge",className)})}function Notice({tone="neutral",action,children,className,...props}){return jsxRuntime.jsxs("div",{role:tone==="danger"?"alert":"status",...props,"data-tone":tone,className:cx("monkeys-ui-notice",className),children:[jsxRuntime.jsx("div",{children}),action]})}React8.forwardRef(function({src,alt,fallback:fallback2,className,...props},ref){return jsxRuntime.jsxs(AvatarPrimitive__namespace.Root,{...props,ref,className:cx("monkeys-ui-avatar",className),children:[jsxRuntime.jsx(AvatarPrimitive__namespace.Image,{src,alt}),jsxRuntime.jsx(AvatarPrimitive__namespace.Fallback,{children:fallback2??alt.slice(0,1)})]})});var defaultAccept=["image/jpeg","image/png"],identity=file=>`${file.name}:${file.size}:${file.lastModified}`;function validateImageFiles(files,{accept=defaultAccept,maxFileBytes=1/0,existingFiles=[]}={}){let seen=new Set(existingFiles.map(identity)),accepted=[],rejected=[];for(let file of files){let key3=identity(file),reason=accept.includes(file.type)?file.size>maxFileBytes?"size":seen.has(key3)?"duplicate":void 0:"type";reason?rejected.push({file,reason}):(seen.add(key3),accepted.push(file));}return {accepted,rejected}}var UploadedImageItem=React8.forwardRef(function({item,onRemove,onRetry,onSelectCover,cover,disabled,className,...props},ref){return jsxRuntime.jsxs("div",{...props,ref,className:cx("monkeys-ui-uploaded-image",className),"data-state":item.status,"aria-label":item.name,"aria-busy":item.status==="pending",children:[item.src?jsxRuntime.jsx("img",{src:item.src,alt:item.name}):jsxRuntime.jsx(lucideReact.ImageOff,{size:24,"aria-hidden":"true"}),jsxRuntime.jsxs("div",{className:"monkeys-ui-uploaded-info",children:[jsxRuntime.jsx("span",{title:item.name,children:item.name}),item.status==="pending"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{role:"status",children:"\u4E0A\u4F20\u4E2D"}),item.progress!=null?jsxRuntime.jsx("progress",{"aria-label":item.name+" \u4E0A\u4F20\u8FDB\u5EA6",value:item.progress,max:100}):null]}):null,item.status==="error"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{role:"alert",children:item.error??"\u4E0A\u4F20\u5931\u8D25"}),onRetry?jsxRuntime.jsx(Button2,{size:"sm",disabled,onClick:onRetry,children:"\u91CD\u8BD5"}):null]}):null,onSelectCover&&item.status!=="error"?jsxRuntime.jsx(Button2,{size:"sm",disabled,"aria-pressed":cover,onClick:onSelectCover,children:cover?"\u5C01\u9762":"\u8BBE\u4E3A\u5C01\u9762"}):null]}),onRemove?jsxRuntime.jsx(Button2,{shape:"icon","aria-label":"\u79FB\u9664 "+item.name,className:"monkeys-ui-upload-remove",size:"sm",disabled,onClick:onRemove,children:jsxRuntime.jsx(lucideReact.X,{size:14,"aria-hidden":"true"})}):null]})});React8.forwardRef(function({id:explicitId,label="\u4E0A\u4F20\u56FE\u7247",description,items,disabled,accept=defaultAccept,maxFileBytes,existingFiles,onFilesSelected,onRejected,onRemove,onRetry,onSelectCover,coverId,error,className,onDrop,onPaste,onDragOver,...props},ref){let generated=React8.useId(),id9=explicitId??generated,input=React8.useRef(null);function receive(files){if(disabled)return;let result=validateImageFiles(files,{accept,maxFileBytes,existingFiles});result.rejected.length&&onRejected?.(result.rejected),result.accepted.length&&onFilesSelected(result.accepted);}return jsxRuntime.jsxs("div",{...props,ref,id:id9,role:"group","aria-label":label,"aria-describedby":description?id9+"-description":void 0,className:cx("monkeys-ui-upload",className),onDragOver:event=>{onDragOver?.(event),!disabled&&event.dataTransfer.types.includes("Files")&&event.preventDefault();},onDrop:event=>{onDrop?.(event),!event.defaultPrevented&&event.dataTransfer.files.length&&(event.preventDefault(),receive(Array.from(event.dataTransfer.files)));},onPaste:event=>{onPaste?.(event),!event.defaultPrevented&&event.clipboardData.files.length&&(event.preventDefault(),receive(Array.from(event.clipboardData.files)));},children:[jsxRuntime.jsx("div",{className:"monkeys-ui-label",children:label}),jsxRuntime.jsxs("div",{className:"monkeys-ui-upload-items",children:[jsxRuntime.jsxs(Button2,{className:"monkeys-ui-upload-target",variant:"outline",disabled,onClick:()=>input.current?.click(),"aria-describedby":description?id9+"-description":void 0,children:[jsxRuntime.jsx(lucideReact.Plus,{size:28,"aria-hidden":"true"}),jsxRuntime.jsx("span",{children:"\u9009\u62E9\u3001\u62D6\u5165\u6216\u7C98\u8D34\u56FE\u7247"})]}),jsxRuntime.jsx("input",{className:"monkeys-ui-visually-hidden",ref:input,type:"file",tabIndex:-1,accept:accept.join(","),multiple:true,disabled,"aria-label":label,onChange:event=>{receive(Array.from(event.currentTarget.files??[])),event.currentTarget.value="";}}),items.map(item=>jsxRuntime.jsx(UploadedImageItem,{item,disabled,cover:item.id===coverId,onRemove:onRemove?()=>onRemove(item.id):void 0,onRetry:onRetry?()=>onRetry(item.id):void 0,onSelectCover:onSelectCover?()=>onSelectCover(item.id):void 0},item.id))]}),description?jsxRuntime.jsx("div",{className:"monkeys-ui-description",id:id9+"-description",children:description}):null,error?jsxRuntime.jsx(Notice,{tone:"danger",children:error}):null]})});var MEDIA_DRAFT_MAX_BYTES=25*1024*1024,MEDIA_DRAFT_MAX_ITEMS=20;var MEDIA_DRAFT_FIELD_PROPERTIES={uploadBinding:{type:"string",minLength:1,maxLength:4096},media:{type:"object",additionalProperties:false,required:["maxItems","maxBytes"],properties:{presentation:{enum:["compact","cards"]},maxItems:{type:"integer",minimum:1,maximum:MEDIA_DRAFT_MAX_ITEMS},maxBytes:{type:"integer",minimum:1,maximum:MEDIA_DRAFT_MAX_BYTES}}}};function readMediaDraft(value){if(!value||typeof value!="object"||Array.isArray(value)||Object.keys(value).some(key3=>key3!=="items"))return;let items=value.items;if(!Array.isArray(items)||items.length>MEDIA_DRAFT_MAX_ITEMS)return;let ids2=new Set;for(let raw of items){if(!raw||typeof raw!="object"||Array.isArray(raw))return;let{source,...rest}=raw,id9;if(source==="local"){let metadata=readTransientFileMetadata(rest);if(!metadata||metadata.size<1||metadata.size>MEDIA_DRAFT_MAX_BYTES||!metadata.mimeType.startsWith("image/"))return;id9="local:"+metadata.handleId;}else if(source==="existing"){if(Object.keys(rest).some(key3=>!["id","original","previewUrl"].includes(key3))||typeof rest.id!="string"||!rest.id||rest.id.length>256||!rest.original||typeof rest.original!="object"||Array.isArray(rest.original)||Object.keys(rest.original).length>32||rest.previewUrl!==void 0&&(typeof rest.previewUrl!="string"||!/^https?:\/\//.test(rest.previewUrl)||rest.previewUrl.length>8192))return;id9="existing:"+rest.id;}else return;if(ids2.has(id9))return;ids2.add(id9);}return items}function mediaDraftInvalid(field){if(field.kind!=="media-draft"||field.hidden===true||field.disabled===true)return false;let items=readMediaDraft(field.value),config=field.media,count=Number(config?.maxItems),bytes=Number(config?.maxBytes);return !items||!Number.isInteger(count)||count<1||count>MEDIA_DRAFT_MAX_ITEMS||!Number.isInteger(bytes)||bytes<1||bytes>MEDIA_DRAFT_MAX_BYTES||items.length>count||field.required===true&&items.length===0||items.some(item=>item.source==="local"&&Number(item.size)>bytes)}function withMediaDraftFields(fields,configurations){if(configurations===void 0)return fields;if(!Array.isArray(configurations)||configurations.length>64)throw new TypeError("Invalid media draft configuration");let pending=new Map;for(let raw of configurations){if(!raw||typeof raw!="object"||Array.isArray(raw)||typeof raw.fieldId!="string"||!raw.fieldId||pending.has(raw.fieldId))throw new TypeError("Invalid media draft field");pending.set(raw.fieldId,raw);}let configured=new Set(pending.keys()),seen=new Set,walk=rows=>rows.map(field=>{if(configured.has(String(field.id))){if(seen.has(String(field.id)))throw new TypeError("Duplicate media draft field");seen.add(String(field.id));}let config=pending.get(String(field.id));if(config){if(field.kind!=="json")throw new TypeError("Media draft requires a JSON field");return pending.delete(String(field.id)),{...field,kind:"media-draft",uploadBinding:config.uploadBinding,media:config.media}}return field.kind==="object"&&Array.isArray(field.children)?{...field,children:walk(field.children)}:field}),result=walk(fields);if(pending.size)throw new TypeError("Unknown media draft field");return result}function RecordEditorMediaDraft({value,field,disabled,label,registry,translate,onChange,onPreviewChange,showHint=true,catalog=false}){let input=React8.useRef(null),owned=React8.useRef(new Map),dragging=React8.useRef(),area=React8.useRef(null),dragDepth=React8.useRef(0),[hovered,setHovered]=React8.useState(false),[fileDrag,setFileDrag]=React8.useState(false),cards=field.media&&typeof field.media=="object"&&!Array.isArray(field.media)&&field.media.presentation==="cards",replacementInput=React8.useRef(null),replacing=React8.useRef(),[preview,setPreview]=React8.useState(),[error,setError]=React8.useState(),items=readMediaDraft(value),config=field.media,compact=config?.presentation==="compact",maxItems=Number(config?.maxItems),maxBytes=Number(config?.maxBytes),valid=!!(items&&Number.isInteger(maxItems)&&maxItems>0&&maxItems<=MEDIA_DRAFT_MAX_ITEMS&&Number.isInteger(maxBytes)&&maxBytes>0&&maxBytes<=MEDIA_DRAFT_MAX_BYTES),locked=disabled||!registry||!valid,release=handle=>{let url=owned.current.get(handle);url&&(URL.revokeObjectURL(url),registry?.discard(handle),owned.current.delete(handle));};React8.useEffect(()=>()=>{for(let handle of owned.current.keys())release(handle);},[registry]),React8.useEffect(()=>{let retained=new Set((items??[]).filter(item=>item.source==="local").map(item=>item.handleId));for(let handle of owned.current.keys())retained.has(handle)||release(handle);},[value]);let commit=next=>{setError(void 0),onChange({items:next});},add=files=>{if(locked||!registry||!items||!files.length)return;if(items.length+files.length>maxItems){setError("count");return}if(files.some(file=>!file.type.startsWith("image/"))){setError("type");return}if(files.some(file=>file.size<1||file.size>maxBytes)){setError("size");return}let added=[];try{for(let file of files){let metadata=registry.register(file,{maxBytes,maxTotalBytes:maxBytes*maxItems});try{owned.current.set(metadata.handleId,URL.createObjectURL(file));}catch(error2){throw registry.discard(metadata.handleId),error2}added.push({source:"local",handleId:metadata.handleId,fileName:metadata.fileName,size:metadata.size,mimeType:metadata.mimeType});}}catch{for(let item of added)release(String(item.handleId));setError("failed");return}commit([...items,...added]);};React8.useEffect(()=>{if(!hovered||locked)return;let paste=event=>{let target=event.target instanceof Element?event.target:null;if(event.defaultPrevented||target?.closest('[role="dialog"]')!==area.current?.closest('[role="dialog"]'))return;let files=Array.from(event.clipboardData?.files??[]).filter(file=>file.type.startsWith("image/"));files.length&&(event.preventDefault(),event.stopPropagation(),add(files));};return document.addEventListener("paste",paste,true),()=>document.removeEventListener("paste",paste,true)},[hovered,locked,value,registry,maxItems,maxBytes]);let move=(from,to)=>{if(locked||!items||from===to||from<0||to<0||from>=items.length||to>=items.length)return;let next=[...items],[item]=next.splice(from,1);next.splice(to,0,item),commit(next);},identity2=item=>String(item.source==="local"?item.handleId:item.id),previewSrc=item=>item.source==="local"?owned.current.get(identity2(item)):typeof item.previewUrl=="string"?item.previewUrl:void 0,coverSource=items?.[0]?previewSrc(items[0]):void 0;React8.useEffect(()=>{onPreviewChange?.(coverSource);},[coverSource,onPreviewChange]);let replace=files=>{let selected2=replacing.current;if(replacing.current=void 0,locked||!registry||!items||files.length!==1||!selected2)return;let index=items.findIndex(item=>item.source+":"+identity2(item)===selected2);if(index<0)return;let file=files[0];if(!file.type.startsWith("image/")){setError("type");return}if(!file.size||file.size>maxBytes){setError("size");return}let url;try{url=URL.createObjectURL(file);let old=items[index],handle=identity2(old),metadata=registry.register(file,{maxBytes,maxTotalBytes:maxBytes*maxItems,...old.source==="local"&&owned.current.has(handle)?{replaces:handle}:{}});owned.current.set(metadata.handleId,url);let next=[...items];next[index]={source:"local",handleId:metadata.handleId,fileName:metadata.fileName,size:metadata.size,mimeType:metadata.mimeType},commit(next);}catch{url&&URL.revokeObjectURL(url),setError("failed");}},message=key3=>translate("monkeys.design.capability.mediaDraft."+key3),previewIndex=(items??[]).findIndex(item=>item.source+":"+identity2(item)===preview),previewItem=items?.[previewIndex];return jsxRuntime.jsxs("div",{ref:area,className:"relative grid gap-3 min-w-0",tabIndex:locked?-1:0,"aria-label":label,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),onDragEnter:event=>{!locked&&event.dataTransfer.types.includes("Files")&&(event.preventDefault(),dragDepth.current++,setFileDrag(true));},onDragOver:event=>{!locked&&event.dataTransfer.types.includes("Files")&&event.preventDefault();},onDragLeave:event=>{event.dataTransfer.types.includes("Files")&&(dragDepth.current=Math.max(0,dragDepth.current-1),dragDepth.current||setFileDrag(false));},onDrop:event=>{locked||!event.dataTransfer.types.includes("Files")||(event.preventDefault(),dragDepth.current=0,setFileDrag(false),add(Array.from(event.dataTransfer.files)));},onPaste:event=>{if(locked||event.defaultPrevented)return;let files=Array.from(event.clipboardData.files).filter(file=>file.type.startsWith("image/"));files.length&&(event.preventDefault(),add(files));},children:[jsxRuntime.jsx("input",{ref:input,type:"file",multiple:true,accept:"image/*",hidden:true,disabled:locked,"aria-label":message("choose"),onChange:event=>{let files=Array.from(event.currentTarget.files??[]);event.currentTarget.value="",add(files);}}),jsxRuntime.jsx("input",{ref:replacementInput,type:"file",accept:"image/*",hidden:true,disabled:locked,"aria-label":message("replace"),onChange:event=>{let files=Array.from(event.currentTarget.files??[]);event.currentTarget.value="",replace(files);}}),jsxRuntime.jsxs("div",{className:catalog?"monkeys-ui-upload-items":"grid grid-cols-2 sm:grid-cols-3 gap-3",children:[catalog&&(!compact||(items?.length??0)<maxItems)?jsxRuntime.jsxs(Button2,{className:"monkeys-ui-upload-target",variant:"outline",disabled:locked||(items?.length??0)>=maxItems,"aria-label":message("choose"),onClick:()=>input.current?.click(),children:[jsxRuntime.jsx(lucideReact.Plus,{size:28,"aria-hidden":"true"}),jsxRuntime.jsx("span",{children:message("choose")})]}):null,(items??[]).map((item,index)=>{let id9=String(item.source==="local"?item.handleId:item.id),src=item.source==="local"?owned.current.get(id9):typeof item.previewUrl=="string"?item.previewUrl:void 0;return jsxRuntime.jsx("div",{className:compact?"relative h-[121px] w-[121px] overflow-hidden rounded-xl border border-border bg-card":catalog?"grid min-w-0 gap-2":cards?"relative flex min-w-0 flex-col overflow-hidden rounded-xl border border-border bg-card":"relative min-w-0 overflow-hidden rounded-3xl border bg-card",draggable:!locked,onDragStart:()=>{dragging.current=index;},onDragEnd:()=>{dragging.current=void 0;},onDragOver:event=>{!locked&&dragging.current!==void 0&&event.preventDefault();},onDrop:event=>{event.preventDefault(),dragging.current!==void 0&&move(dragging.current,index),dragging.current=void 0;},children:compact?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[src?jsxRuntime.jsx("img",{src,alt:typeof item.fileName=="string"?item.fileName:`${label} ${index+1}`,className:"h-full w-full object-contain"}):jsxRuntime.jsx("span",{role:"img","aria-label":message("unavailable")}),jsxRuntime.jsx(Button2,{shape:"icon",className:"monkeys-ui-upload-remove",size:"sm",disabled:locked,"aria-label":`${message("remove")} ${index+1}`,onClick:()=>{items&&commit(items.filter((_,position)=>position!==index));},children:"\xD7"})]}):catalog?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(UploadedImageItem,{item:{id:id9,name:typeof item.fileName=="string"?item.fileName:`${label} ${index+1}`,src,status:"ready"},disabled:locked,cover:index===0,onSelectCover:()=>move(index,0),onRemove:()=>{items&&commit(items.filter((_,position)=>position!==index));}}),jsxRuntime.jsxs("div",{className:"flex flex-wrap gap-1",children:[jsxRuntime.jsx(Button2,{size:"sm",disabled:!src,"aria-label":`${message("preview")} ${index+1}`,onClick:()=>setPreview(item.source+":"+id9),children:message("preview")}),jsxRuntime.jsx(Button2,{size:"sm",disabled:locked,"aria-label":`${message("replace")} ${index+1}`,onClick:()=>{replacing.current=item.source+":"+id9,replacementInput.current?.click();},children:message("replace")}),jsxRuntime.jsx("button",{type:"button",className:"sr-only focus:not-sr-only",disabled:locked||index===0,"aria-label":`${message("previous")} ${index+1}`,onClick:()=>move(index,index-1),children:"\u2190"}),jsxRuntime.jsx("button",{type:"button",className:"sr-only focus:not-sr-only",disabled:locked||index===(items?.length??0)-1,"aria-label":`${message("next")} ${index+1}`,onClick:()=>move(index,index+1),children:"\u2192"})]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[src?jsxRuntime.jsx("button",{type:"button",className:cards?"relative block aspect-[2/1] w-full bg-muted p-3":"block w-full p-3","aria-label":`${message("preview")} ${index+1}`,onClick:()=>setPreview(item.source+":"+id9),children:jsxRuntime.jsx("img",{src,alt:typeof item.fileName=="string"?item.fileName:`${label} ${index+1}`,className:cards?"absolute inset-0 h-full w-full object-contain p-3":"h-20 w-full object-contain"})}):jsxRuntime.jsx("span",{children:message("unavailable")}),jsxRuntime.jsxs("div",{className:cards?"mt-auto flex flex-wrap items-center":"flex flex-wrap items-center",children:[jsxRuntime.jsx("button",{type:"button",className:"sr-only focus:not-sr-only",disabled:locked||index===0,"aria-label":`${message("previous")} ${index+1}`,onClick:()=>move(index,index-1),children:"\u2190"}),jsxRuntime.jsx("button",{type:"button",className:"sr-only focus:not-sr-only",disabled:locked||index===(items?.length??0)-1,"aria-label":`${message("next")} ${index+1}`,onClick:()=>move(index,index+1),children:"\u2192"}),jsxRuntime.jsx("button",{type:"button",className:cards?"w-full px-3 py-3 text-left text-sm font-medium disabled:opacity-50":"w-full bg-muted px-3 py-3 text-left text-sm disabled:opacity-50","aria-label":`${message("replace")} ${index+1}`,disabled:locked,onClick:()=>{replacing.current=item.source+":"+id9,replacementInput.current?.click();},children:message("replace")}),jsxRuntime.jsx("button",{type:"button",className:"absolute right-2 top-2 grid size-6 place-items-center rounded-md bg-primary text-primary-foreground disabled:opacity-50","aria-label":`${message("remove")} ${index+1}`,disabled:locked,onClick:()=>{items&&commit(items.filter((_,position)=>position!==index));},children:"\xD7"})]})]})},item.source+":"+id9)}),!catalog&&(!compact||(items?.length??0)<maxItems)?jsxRuntime.jsxs("button",{type:"button",disabled:locked||(items?.length??0)>=maxItems,onClick:()=>input.current?.click(),"aria-label":message("choose"),className:cards?"relative grid min-w-0 content-center justify-items-center gap-2 overflow-hidden rounded-xl border border-dashed border-border bg-muted/20 text-center text-sm hover:border-primary/60 hover:bg-muted/40 disabled:opacity-50":"grid min-h-36 content-center justify-items-center gap-2 rounded-3xl border border-dashed p-3 text-center text-sm disabled:opacity-50",children:[cards?jsxRuntime.jsxs("span",{"aria-hidden":"true",className:"col-start-1 row-start-1 w-full",children:[jsxRuntime.jsx("span",{className:"block aspect-[2/1] w-full"}),jsxRuntime.jsx("span",{className:"block h-11"})]}):null,jsxRuntime.jsxs("span",{className:cards?"col-start-1 row-start-1 flex flex-col items-center justify-center gap-2 p-3":"contents",children:[jsxRuntime.jsx("span",{"aria-hidden":"true",className:"text-3xl",children:"\uFF0B"}),jsxRuntime.jsx("span",{children:message("choose")})]}),showHint?jsxRuntime.jsx("span",{className:"text-xs text-muted-foreground",children:translate("monkeys.design.capability.mediaDraft.hint",{count:maxItems,size:Math.floor(maxBytes/1024/1024)})}):null]}):null]}),catalog&&showHint?jsxRuntime.jsx("div",{className:"monkeys-ui-description",children:translate("monkeys.design.capability.mediaDraft.hint",{count:maxItems,size:Math.floor(maxBytes/1024/1024)})}):null,fileDrag&&!locked?jsxRuntime.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-1 z-10 rounded-xl border-2 border-primary bg-primary/10"}):null,error||!valid?jsxRuntime.jsx("span",{role:"alert",children:message(error??"failed")}):null,jsxRuntime.jsx(BaseDialog,{open:!!previewItem,onOpenChange:open=>{open||setPreview(void 0);},title:message("preview"),size:"viewport",children:previewItem?jsxRuntime.jsxs("div",{className:"grid gap-3 min-w-0",children:[jsxRuntime.jsx("img",{src:previewSrc(previewItem),alt:typeof previewItem.fileName=="string"?previewItem.fileName:label,className:"w-full max-h-[70dvh] object-contain"}),jsxRuntime.jsxs("div",{className:"flex items-center justify-between gap-3",children:[jsxRuntime.jsx("button",{type:"button",disabled:previewIndex<=0,onClick:()=>{let item=items[previewIndex-1];setPreview(item.source+":"+identity2(item));},children:message("previewPrevious")}),jsxRuntime.jsxs("span",{children:[previewIndex+1," / ",items?.length]}),jsxRuntime.jsx("button",{type:"button",disabled:previewIndex>=(items?.length??0)-1,onClick:()=>{let item=items[previewIndex+1];setPreview(item.source+":"+identity2(item));},children:message("previewNext")})]})]}):null})]})}var PanelSurfaceContext=React8.createContext("catalog");var chromaFlow={baseColor:tokens_default.seed.ui.color.blueGlow.$value.hex,intensity:.7,momentum:23,radius:6,upColor:tokens_default.seed.ui.color.violetGlow.$value.hex};function SurfaceEffect({variant}){let[enabled,setEnabled]=React8.useState(false),[shaders,setShaders]=React8.useState(null),[rendererState,setRendererState]=React8.useState("loading"),surface=React8.useRef(null);return React8.useEffect(()=>{let reducedMotion=window.matchMedia("(prefers-reduced-motion: reduce)"),forcedColors=window.matchMedia("(forced-colors: active)"),update=()=>setEnabled(!reducedMotion.matches&&!forcedColors.matches);return update(),reducedMotion.addEventListener("change",update),forcedColors.addEventListener("change",update),()=>{reducedMotion.removeEventListener("change",update),forcedColors.removeEventListener("change",update);}},[]),React8.useEffect(()=>{if(!enabled||shaders)return;let active=true;return import('shaders/react').then(module=>{active&&setShaders(module);}).catch(()=>{active&&setRendererState("unavailable");}),()=>{active=false;}},[enabled,shaders]),React8.useEffect(()=>{let element=surface.current,parent=element?.parentElement;if(!enabled||variant!=="chroma"||rendererState==="ready"||!element||!parent)return;let move=event=>{if(event.pointerType==="touch")return;let bounds=element.getBoundingClientRect();element.style.setProperty("--monkeys-ui-surface-x",`${event.clientX-bounds.left}px`),element.style.setProperty("--monkeys-ui-surface-y",`${event.clientY-bounds.top}px`),element.dataset.pointerActive="";},leave=()=>{delete element.dataset.pointerActive;};return parent.addEventListener("pointerenter",move),parent.addEventListener("pointermove",move),parent.addEventListener("pointerleave",leave),()=>{parent.removeEventListener("pointerenter",move),parent.removeEventListener("pointermove",move),parent.removeEventListener("pointerleave",leave),leave(),element.style.removeProperty("--monkeys-ui-surface-x"),element.style.removeProperty("--monkeys-ui-surface-y");}},[enabled,variant,rendererState]),jsxRuntime.jsxs("div",{ref:surface,className:variant==="banner"?"monkeys-ui-brand-banner-effect":"monkeys-ui-card-surface-effect","data-monkeys-ui-brand-effect":variant==="banner"?"":void 0,"data-monkeys-ui-card-effect":variant==="chroma"?"":void 0,"data-renderer-state":enabled?rendererState:"disabled","aria-hidden":"true",children:[enabled&&variant==="chroma"&&rendererState!=="ready"?jsxRuntime.jsx("div",{className:"monkeys-ui-shader-fallback","data-effect":"surface-chroma"}):null,enabled&&shaders?jsxRuntime.jsxs(shaders.Shader,{disableTelemetry:true,onReady:()=>setRendererState("ready"),onUnavailable:()=>setRendererState("unavailable"),style:{width:"100%",height:"100%"},children:[jsxRuntime.jsx(shaders.ChromaFlow,{...chromaFlow}),variant==="banner"?jsxRuntime.jsx(shaders.Aurora,{colorA:chromaFlow.baseColor,colorB:chromaFlow.upColor,colorSpace:"hsl",curtainCount:2,height:81,intensity:64,rayDensity:12,speed:10,waviness:39,transform:{rotation:180}}):null]}):null]})}var Panel=React8.forwardRef(function({title,actions,density="comfortable",classNames,className,children,...props},ref){let id9=React8.useId();return React8.useContext(PanelSurfaceContext)==="bento"?jsxRuntime.jsx(BentoPanel,{...props,className:cx("monkeys-ui-bento-panel",className),children:jsxRuntime.jsxs(ScrollSurface,{ref,"aria-labelledby":title?id9:props["aria-labelledby"],className:"monkeys-ui-bento-scroll",children:[title||actions?jsxRuntime.jsxs("div",{className:cx("monkeys-ui-panel-header",classNames?.header),children:[title?jsxRuntime.jsx("h2",{id:id9,children:title}):null,actions]}):null,jsxRuntime.jsx("div",{className:cx("monkeys-ui-panel-body",classNames?.body),children})]})}):jsxRuntime.jsxs(ScrollSurface,{...props,ref,"data-density":density,"aria-labelledby":title?id9:props["aria-labelledby"],className:cx("monkeys-ui-panel",className),children:[title||actions?jsxRuntime.jsxs("div",{className:cx("monkeys-ui-panel-header",classNames?.header),children:[title?jsxRuntime.jsx("h2",{id:id9,children:title}):null,actions]}):null,jsxRuntime.jsx("div",{className:cx("monkeys-ui-panel-body",classNames?.body),children})]})});function SplitLayout({sidebar,side="start",sidebarWidth="252px",children,className,style,...props}){return jsxRuntime.jsxs("div",{...props,"data-side":side,className:cx("monkeys-ui-split",className),style:{"--monkeys-ui-sidebar-width":sidebarWidth,...style},children:[jsxRuntime.jsx("div",{className:"monkeys-ui-split-sidebar",children:sidebar}),jsxRuntime.jsx("div",{className:"monkeys-ui-split-main",children})]})}var Card=React8.forwardRef(function({title,variant="card",chrome="card",selected:selected2,onSelectedChange,size:size2,headingLevel,image,imageAlt="",imagePosition,imageStyle,media,mediaOverlay,emptyMedia,href,onOpen,header,breadcrumbSurface="default",meta,description,content,children,stats=[],actions,navigation,navigationLabel,footer,className,classNames,...props},ref){let[failedSource,setFailedSource]=React8.useState(),id9=React8.useId(),detail=variant==="detail",hasDescription=description!=null&&description!==false&&description!=="",hasEntry=variant!=="preview"&&!!(onSelectedChange||href||onOpen),descriptionId=id9+"-description",describedBy=[props["aria-describedby"],hasDescription?descriptionId:void 0].filter(Boolean).join(" ")||void 0,Heading=`h${headingLevel??(detail?1:3)}`,tooltipTitle=detail&&typeof title=="string"&&title.length>0,headingContent=jsxRuntime.jsx(Heading,{id:id9,className:cx("monkeys-ui-record-heading",classNames?.heading),tabIndex:tooltipTitle?0:void 0,title:!detail&&typeof title=="string"?title:void 0,children:title}),heading=tooltipTitle?jsxRuntime.jsx(Tooltip2,{content:title,children:headingContent}):headingContent,mediaContent=media??(image&&failedSource!==image?jsxRuntime.jsx("img",{className:cx(detail?"monkeys-ui-sidebar-image":"monkeys-ui-record-card-image",classNames?.image),src:image,alt:imageAlt,style:{objectPosition:imagePosition,...imageStyle},onError:()=>setFailedSource(image),loading:"lazy"}):emptyMedia??(detail?null:jsxRuntime.jsx("div",{className:"monkeys-ui-media-placeholder","aria-label":"\u6682\u65E0\u56FE\u7247",children:jsxRuntime.jsx(lucideReact.ImageOff,{size:32,"aria-hidden":"true"})}))),statistics=stats.length?jsxRuntime.jsx(StatGroup,{items:stats}):null,body=content??children;return detail?jsxRuntime.jsxs(ScrollSurface,{as:"aside",...props,ref,"aria-labelledby":props["aria-label"]?void 0:id9,"data-variant":variant,"data-chrome":chrome==="plain"?chrome:void 0,className:cx("monkeys-ui-card","monkeys-ui-record-detail",className),children:[jsxRuntime.jsxs("div",{className:cx("monkeys-ui-sidebar-media",classNames?.media),children:[mediaContent,mediaOverlay]}),jsxRuntime.jsxs("div",{className:"monkeys-ui-sidebar-header",children:[jsxRuntime.jsx("div",{className:"monkeys-ui-breadcrumbs","data-surface":breadcrumbSurface==="transparent"?"transparent":void 0,children:header}),actions?jsxRuntime.jsx("div",{className:cx("monkeys-ui-sidebar-header-actions",classNames?.actions),children:actions}):null]}),jsxRuntime.jsxs("div",{className:cx("monkeys-ui-sidebar-details",classNames?.content),children:[jsxRuntime.jsx(SurfaceEffect,{variant:"chroma"}),heading,meta?jsxRuntime.jsx("div",{className:"monkeys-ui-sidebar-meta",children:meta}):null,description?jsxRuntime.jsx("div",{className:"monkeys-ui-description",children:description}):null,body,statistics,navigation?jsxRuntime.jsx("nav",{"aria-label":navigationLabel??"\u8BB0\u5F55\u5BFC\u822A",className:"monkeys-ui-sidebar-navigation",children:navigation}):null,footer?jsxRuntime.jsx("div",{className:"monkeys-ui-sidebar-actions",children:footer}):null]})]}):jsxRuntime.jsxs("article",{...props,ref,"aria-labelledby":props["aria-label"]?void 0:id9,"aria-describedby":hasEntry?props["aria-describedby"]:describedBy,tabIndex:props.tabIndex??(hasDescription&&!hasEntry?0:void 0),"data-variant":variant,"data-chrome":chrome==="plain"?chrome:void 0,"data-selected":selected2||void 0,"data-size":size2,"data-preview":variant==="preview"||void 0,className:cx("monkeys-ui-card","monkeys-ui-record-card",className),children:[variant==="content"&&!media&&!image?null:media!==void 0?jsxRuntime.jsx("div",{className:cx("monkeys-ui-record-media",classNames?.media),children:mediaContent}):mediaContent,mediaOverlay?jsxRuntime.jsx("div",{className:"monkeys-ui-media-overlay",children:mediaOverlay}):null,header,hasEntry&&(onSelectedChange?jsxRuntime.jsx("button",{type:"button","aria-pressed":selected2??false,onClick:()=>onSelectedChange(!selected2),"aria-labelledby":id9,"aria-describedby":describedBy,className:"monkeys-ui-card-entry"}):href?jsxRuntime.jsx("a",{href,"aria-labelledby":id9,"aria-describedby":describedBy,className:"monkeys-ui-card-entry"}):jsxRuntime.jsx("button",{type:"button",onClick:onOpen,"aria-labelledby":id9,"aria-describedby":describedBy,className:"monkeys-ui-card-entry"})),selected2?jsxRuntime.jsx("span",{className:"monkeys-ui-card-selection-mark","aria-hidden":"true",children:jsxRuntime.jsx(lucideReact.Check,{size:14})}):null,jsxRuntime.jsxs("div",{className:cx("monkeys-ui-card-info",classNames?.content),children:[heading,meta,body,statistics,hasDescription?jsxRuntime.jsx("div",{className:"monkeys-ui-card-description",children:jsxRuntime.jsx("div",{className:"monkeys-ui-card-description-clip",children:jsxRuntime.jsx("div",{id:descriptionId,className:"monkeys-ui-description",children:description})})}):null]}),actions?jsxRuntime.jsx("div",{className:cx("monkeys-ui-card-actions",classNames?.actions),children:actions}):null,footer]})});function StatGroup({items,className,...props}){return jsxRuntime.jsx("dl",{...props,className:cx("monkeys-ui-stats",className),children:items.map(item=>jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx("dt",{children:item.label}),jsxRuntime.jsx("dd",{children:item.value})]},item.label))})}React8.forwardRef(function({direction="vertical",gap=16,wrap,className,style,...props},ref){return jsxRuntime.jsx("div",{...props,ref,className:cx("monkeys-ui-stack",className),"data-direction":direction,style:{flexDirection:direction==="vertical"?"column":"row",gap,flexWrap:wrap?"wrap":void 0,...style}})});React8.forwardRef(function({className,...props},ref){return jsxRuntime.jsx("div",{...props,ref,role:"listitem",className:cx("monkeys-ui-card-grid-item",className)})});var FormPanel=React8.forwardRef(function({title,description,actions,children,className,...props},ref){return jsxRuntime.jsx(Panel,{className:"monkeys-ui-form-panel",children:jsxRuntime.jsxs("form",{...props,ref,className,children:[jsxRuntime.jsxs("div",{className:"monkeys-ui-form-header",children:[jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(SectionTitle,{as:"h1",children:title}),description?jsxRuntime.jsx("p",{children:description}):null]}),actions?jsxRuntime.jsx("div",{className:"monkeys-ui-form-actions",children:actions}):null]}),jsxRuntime.jsx("div",{className:"monkeys-ui-form-body",children})]})})});function FormGrid({variant="standard",className,children,...props}){return jsxRuntime.jsx("div",{...props,className:cx("monkeys-ui-form-grid",className),"data-variant":variant,children:jsxRuntime.jsx("div",{className:"monkeys-ui-form-grid-content",children})})}function PreviewPanel({children,state="ready",pendingLabel,emptyMessage,errorMessage,className,...props}){return jsxRuntime.jsx(Panel,{...props,className:cx("monkeys-ui-preview-panel",className),children:jsxRuntime.jsxs("div",{className:"monkeys-ui-preview-panel-card",children:[children,state==="pending"&&pendingLabel?jsxRuntime.jsx(Badge2,{children:pendingLabel}):null,state==="empty"&&emptyMessage?jsxRuntime.jsx("span",{className:"monkeys-ui-description",children:emptyMessage}):null,state==="error"&&errorMessage?jsxRuntime.jsx(Notice,{tone:"danger",children:errorMessage}):null]})})}var RECORD_EDITOR_PAGE_PREVIEW_SCHEMA={type:"object",additionalProperties:false,required:["titleFieldId","panelTitleKey","emptyTitleKey","emptyMessageKey"],properties:Object.fromEntries(["titleFieldId","descriptionFieldId","mediaFieldId","amountFieldId","amountPrefix","panelTitleKey","emptyTitleKey","emptyMessageKey"].map(key3=>[key3,{type:"string",minLength:1,maxLength:256}]))};function RecordEditorWorkspace({title,description,actions,children,preview,fields,mediaSource,translate,onSubmit}){let helpInTooltip=React8.useContext(FormHelpPresentationContext),value=key3=>fields.find(field=>field.id===preview?.[key3]&&field.hidden!==true)?.value,name=value("titleFieldId"),summary=value("descriptionFieldId"),amount=value("amountFieldId"),form=jsxRuntime.jsx(FormPanel,{title,description,actions,"aria-label":typeof title=="string"?title:void 0,"data-record-editor-page":true,"data-record-editor-workspace":true,onSubmit:event=>{event.preventDefault(),onSubmit();},children});return preview?jsxRuntime.jsx(BentoDepthProvider,{depth:0,children:jsxRuntime.jsx(PanelSurfaceContext.Provider,{value:"bento",children:jsxRuntime.jsx(SplitLayout,{"data-record-editor-workspace":true,side:"end",sidebarWidth:"323px",sidebar:jsxRuntime.jsx(PreviewPanel,{title:helpInTooltip?jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[translate(String(preview.panelTitleKey)),jsxRuntime.jsx(BaseFormHelp,{children:translate(String(preview.emptyMessageKey))})]}):translate(String(preview.panelTitleKey)),state:mediaSource?"ready":"empty",emptyMessage:helpInTooltip?void 0:translate(String(preview.emptyMessageKey)),children:jsxRuntime.jsx(Card,{variant:"preview",title:typeof name=="string"&&name.trim()?name:translate(String(preview.emptyTitleKey)),image:mediaSource,imageAlt:typeof name=="string"?name:"",imageStyle:{objectFit:"contain"},description:typeof summary=="string"?summary:void 0,content:typeof amount=="number"&&Number.isFinite(amount)?`${preview.amountPrefix??""}${amount}`:void 0})}),children:form})})}):jsxRuntime.jsx(BentoDepthProvider,{depth:0,children:jsxRuntime.jsx(PanelSurfaceContext.Provider,{value:"bento",children:form})})}var TEXT_TOKEN_PRESENTATION_SCHEMA={type:"array",maxItems:64,items:{type:"object",additionalProperties:false,required:["fieldId","removeLabelKey","limitLabelKey"],properties:{fieldId:{type:"string",minLength:1,maxLength:256},separator:{enum:["line","line-or-comma"]},maxItems:{type:"integer",minimum:1,maximum:1e3},maxItemLength:{type:"integer",minimum:1,maximum:1024},maxLength:{type:"integer",minimum:1,maximum:1e5},removeLabelKey:{type:"string",minLength:1,maxLength:256},limitLabelKey:{type:"string",minLength:1,maxLength:256}}}},validateTokens=runtime.compileTargetRenderModelValidator({type:"object",additionalProperties:false,required:["textTokens"],properties:{textTokens:TEXT_TOKEN_PRESENTATION_SCHEMA}});function withTextTokenFields(fields,input){if(input===void 0)return fields;if(!Array.isArray(input)||input.length>64)throw new TypeError("Invalid text token presentation");let used=new Set,options2=new Map;for(let item of validateTokens({textTokens:input}).textTokens){if(!item||typeof item!="object"||Array.isArray(item))throw new TypeError("Invalid text token presentation");let option=item,fieldId=option.fieldId;if(typeof fieldId!="string"||used.has(fieldId)||fields.filter(field=>field.id===fieldId).length!==1||fields.find(field=>field.id===fieldId)?.kind!=="text")throw new TypeError("Text tokens require one unique text field");used.add(fieldId),options2.set(fieldId,option);}return fields.map(field=>options2.has(String(field.id))?{...field,tokenOptions:options2.get(String(field.id))}:field)}function RecordEditorTextTokens({field,value,label,domId,disabled,translate,onChange,onValidityChange,fieldId,catalog=false}){let options2=field.tokenOptions,parse=text10=>[...new Set(text10.split(options2.separator==="line"||/[\r\n]/.test(text10)?/\r\n?|\n/:/[,,]/).map(part=>part.trim()).filter(Boolean))],source=typeof value=="string"?value:"",[state,setState]=React8.useState(()=>({source,tokens:parse(source),draft:""})),[error,setError]=React8.useState(false),composing=React8.useRef(false);React8.useEffect(()=>{onValidityChange(fieldId,!error);},[error,fieldId,onValidityChange]),React8.useEffect(()=>()=>onValidityChange(fieldId,true),[fieldId,onValidityChange]),state.source!==source&&(setState({source,tokens:parse(source),draft:""}),error&&setError(false));let change=(tokens,draft)=>{if(disabled)return;let all=parse([...tokens,draft].join(`
|
|
68
|
+
var DESIGN_CAPABILITY_CATALOG_SOURCE_REF="monkeys.design.capabilities",DESIGN_CAPABILITY_CATALOG_REVISION=144,EDITOR_CATEGORIES=new Set(["layout","navigation","data-view","data-editor","content","status"]),requireNonEmptyKey=(value,field)=>{if(!value.trim()||!value.includes("."))throw new TypeError(`${field} must be a non-empty semantic i18n key.`)},sameVersion=(left,right)=>left===void 0||String(left)===right,revisionRefKey=reference=>`${reference.ownerRepo}:${reference.id}@${reference.revision}:${reference.contentHash}`,validateEntry=input=>{let manifest=monkeys.CapabilityManifestSchema.parse(input.manifest),provider=monkeys.ViewProviderDescriptorSchema.parse(input.provider),declarativeRegistration=monkeys.DeclarativeCapabilityAuthoringRegistrationSchema.parse(input.declarativeRegistration),editor=Object.freeze({...input.editor,slots:Object.freeze([...input.editor.slots]),ontologyCompatibility:Object.freeze(input.editor.ontologyCompatibility.map(compatibility=>Object.freeze({...compatibility})))});if(requireNonEmptyKey(editor.labelKey,"editor.labelKey"),requireNonEmptyKey(editor.descriptionKey,"editor.descriptionKey"),typeof editor.eligible!="boolean"||editor.eligible!==declarativeRegistration.editorEligible||!EDITOR_CATEGORIES.has(editor.category))throw new TypeError(`Capability ${manifest.id} has invalid editor eligibility metadata.`);if(provider.capabilityRef.id!==manifest.id)throw new TypeError(`Provider ${provider.providerId} targets ${provider.capabilityRef.id}, not ${manifest.id}.`);if(declarativeRegistration.capabilityRevisionRef.id!==manifest.id||declarativeRegistration.capabilityRevisionRef.ownerRepo!==manifest.ownerRepo||String(declarativeRegistration.capabilityRevisionRef.revision)!==String(manifest.capabilityVersion))throw new TypeError(`Capability ${manifest.id} authoring registration does not pin its exact manifest identity.`);if(declarativeRegistration.runtimeContractVersion!==provider.runtimeContractVersion||declarativeRegistration.providerRevisionRef.id!==provider.providerId||declarativeRegistration.providerRevisionRef.ownerRepo!==provider.ownerRepo||String(declarativeRegistration.providerRevisionRef.revision)!==String(provider.providerVersion))throw new TypeError(`Capability ${manifest.id} authoring registration does not pin its exact provider identity.`);if(declarativeRegistration.capabilityRevisionRef.contentHash!==monkeys.canonicalContentHash(manifest)||declarativeRegistration.providerRevisionRef.contentHash!==monkeys.canonicalContentHash(provider))throw new TypeError(`Capability ${manifest.id} authoring registration has stale capability or provider content hashes.`);let{registrationRevisionRef,sourceContentHash,...registrationSource}=declarativeRegistration;if(sourceContentHash!==monkeys.canonicalContentHash(registrationSource)||registrationRevisionRef.contentHash!==sourceContentHash)throw new TypeError(`Capability ${manifest.id} authoring registration source hash is not exact.`);let schemaDocuments=new Map(declarativeRegistration.schemaDocuments.map(entry=>[revisionRefKey(entry.schemaRevisionRef),entry])),requiredSchemaReferences=[declarativeRegistration.propertySchemaRevisionRef,...declarativeRegistration.uiSchemaRevisionRef?[declarativeRegistration.uiSchemaRevisionRef]:[],...declarativeRegistration.inputPorts.map(port2=>port2.schemaRevisionRef),...declarativeRegistration.outputPorts.map(port2=>port2.schemaRevisionRef),...declarativeRegistration.ontologyRequirements.map(requirement=>requirement.renderModelSchemaRevisionRef)],requiredSchemaKeys=new Set(requiredSchemaReferences.map(revisionRefKey));if(schemaDocuments.size!==declarativeRegistration.schemaDocuments.length||schemaDocuments.size!==requiredSchemaKeys.size)throw new TypeError(`Capability ${manifest.id} authoring registration must publish one canonical document for each exact schema reference.`);for(let reference of requiredSchemaReferences){let entry=schemaDocuments.get(revisionRefKey(reference));if(!entry)throw new TypeError(`Capability ${manifest.id} has no canonical document for schema ${reference.id}.`);if(entry.schemaRevisionRef.kind!=="schema"||entry.schemaRevisionRef.contentHash!==monkeys.canonicalContentHash(entry.document)||entry.document.$schema!=="https://json-schema.org/draft/2020-12/schema"||entry.document.$id!==entry.schemaRevisionRef.id||typeof entry.document.type!="string")throw new TypeError(`Capability ${manifest.id} schema ${reference.id} is not an exact canonical JSON Schema document.`)}if(!sameVersion(provider.capabilityRef.version,manifest.capabilityVersion))throw new TypeError(`Provider ${provider.providerId} does not target capability version ${manifest.capabilityVersion}.`);let binding=manifest.runtime.providerBindings.find(({providerRef})=>providerRef.id===provider.providerId);if(!binding||!sameVersion(binding.providerRef.version,provider.providerVersion))throw new TypeError(`Capability ${manifest.id} does not explicitly bind provider ${provider.providerId}@${provider.providerVersion}.`);if(provider.loading!==manifest.runtime.loading||provider.stateOwner!==manifest.runtime.stateOwner)throw new TypeError(`Provider ${provider.providerId} lifecycle does not match capability ${manifest.id}.`);let registrationInputPorts=new Map(declarativeRegistration.inputPorts.map(port2=>[port2.name,port2])),registrationOutputPorts=new Map(declarativeRegistration.outputPorts.map(port2=>[port2.name,port2]));if(registrationInputPorts.size!==manifest.ports.inputs.length||manifest.ports.inputs.some(port2=>{let registrationPort=registrationInputPorts.get(port2.name);return !registrationPort||registrationPort.required!==port2.required||registrationPort.multiple!==port2.multiple})||registrationOutputPorts.size!==manifest.ports.outputs.length||manifest.ports.outputs.some(port2=>{let registrationPort=registrationOutputPorts.get(port2.name);return !registrationPort||registrationPort.required!==port2.required||registrationPort.multiple!==port2.multiple}))throw new TypeError(`Capability ${manifest.id} authoring ports differ from its manifest ports.`);if(declarativeRegistration.allowedSideEffects.length!==manifest.runtime.sideEffects.length||declarativeRegistration.allowedSideEffects.some(sideEffect=>!manifest.runtime.sideEffects.includes(sideEffect)))throw new TypeError(`Capability ${manifest.id} authoring side effects differ from its manifest.`);if(provider.sideEffects.length!==manifest.runtime.sideEffects.length||provider.sideEffects.some(sideEffect=>!manifest.runtime.sideEffects.includes(sideEffect)))throw new TypeError(`Provider ${provider.providerId} side effects differ from capability ${manifest.id}.`);if(provider.performance.budgetMs!==void 0&&manifest.observability.performanceBudgetMs!==void 0&&provider.performance.budgetMs!==manifest.observability.performanceBudgetMs)throw new TypeError(`Provider ${provider.providerId} performance budget differs from capability ${manifest.id}.`);let declaredSlots=new Set(manifest.placement.slots),uniqueEditorSlots=new Set(editor.slots);if(uniqueEditorSlots.size!==editor.slots.length)throw new TypeError(`Capability ${manifest.id} editor slots must be unique.`);for(let slot of editor.slots)if(!declaredSlots.has(slot))throw new TypeError(`Capability ${manifest.id} editor slot ${slot} is absent from its manifest.`);if(declaredSlots.size!==uniqueEditorSlots.size||[...declaredSlots].some(slot=>!uniqueEditorSlots.has(slot)))throw new TypeError(`Capability ${manifest.id} editor slots must exactly match its manifest slots.`);let inputPorts=new Map(manifest.ports.inputs.map(port2=>[port2.name,port2.schemaRef])),compatibilityPorts=new Set;for(let compatibility of editor.ontologyCompatibility){if(compatibilityPorts.has(compatibility.inputPort))throw new TypeError(`Capability ${manifest.id} has duplicate Ontology compatibility for ${compatibility.inputPort}.`);if(compatibilityPorts.add(compatibility.inputPort),inputPorts.get(compatibility.inputPort)!==compatibility.schemaRef)throw new TypeError(`Capability ${manifest.id} Ontology compatibility for ${compatibility.inputPort} is not backed by the declared input port schema.`)}return Object.freeze({manifest,provider,editor,declarativeRegistration})},compileDesignCapabilityCatalog=inputs=>{let entries=Object.freeze(inputs.map(validateEntry)),manifestsById=new Map,entriesByProviderId=new Map,groupedEntries=new Map;for(let entry of entries){let existingManifest=manifestsById.get(entry.manifest.id);if(existingManifest&&JSON.stringify(existingManifest)!==JSON.stringify(entry.manifest))throw new TypeError(`Capability ${entry.manifest.id} has conflicting catalog manifests.`);if(manifestsById.set(entry.manifest.id,entry.manifest),entriesByProviderId.has(entry.provider.providerId))throw new TypeError(`Duplicate provider ${entry.provider.providerId}.`);entriesByProviderId.set(entry.provider.providerId,entry);let capabilityEntries=groupedEntries.get(entry.manifest.id)??[];capabilityEntries.push(entry),groupedEntries.set(entry.manifest.id,capabilityEntries);}let manifests=Object.freeze([...manifestsById.values()]),providers=Object.freeze(entries.map(({provider})=>provider)),sdkRegistry=runtime.compileViewProviderRegistry({capabilities:manifests,providers}),entriesByCapabilityId=new Map([...groupedEntries].map(([capabilityId,capabilityEntries])=>[capabilityId,Object.freeze([...capabilityEntries])])),requireProvider=providerId=>{let entry=entriesByProviderId.get(providerId);if(!entry)throw new TypeError(`Unknown Design capability provider ${providerId}.`);return entry};return Object.freeze({entries,manifests,providers,entriesByProviderId,entriesByCapabilityId,requireProvider,resolve(capabilityId,product,preferredProviderId){let provider=sdkRegistry.resolveProvider(capabilityId,product,preferredProviderId);return requireProvider(provider.providerId)}})},compileDesignCapabilityCatalogArtifact=({catalog,sourceRef=DESIGN_CAPABILITY_CATALOG_SOURCE_REF,revision=DESIGN_CAPABILITY_CATALOG_REVISION})=>runtime.compileDesignCapabilityCatalogArtifact({sourceRef,revision,entries:catalog.entries.map(({manifest,provider,declarativeRegistration})=>({manifest,provider,declarativeRegistration}))});var key=Symbol.for("@inf-monkeys-tech/monkeys-design/bento-depth@1"),host=globalThis,BentoDepth=host[key]??(host[key]=React8.createContext(0));function useBentoDepth(){return React8.useContext(BentoDepth)}function BentoDepthProvider({children,depth}){return jsxRuntime.jsx(BentoDepth.Provider,{value:depth,children})}function BentoScope({children}){return jsxRuntime.jsx(BentoDepthProvider,{depth:0,children})}var enUS={locale:"en-US",messages:{pagination:{navigation:"Pagination",first:"First",previous:"Previous",next:"Next",last:"Last",page:({page,pageCount})=>`Page ${page} of ${pageCount}`,currentPage:({page,pageCount})=>`Page ${page} of ${pageCount}, current page`,emptyResults:"0 results",range:({start,end,total})=>`${start}-${end} of ${total}`,selected:({count})=>`${count} selected`,pageSize:"Items per page",loadBatchSize:"Items per load",perLoad:"Items per load",jumpToPage:"Jump to page",pages:"pages",clickToJump:"Click to jump to a page"},dialog:{close:"Close dialog"},dropdownMenu:{actions:"Actions"},loading:{spinner:"Loading"},layout:{resizePanels:"Resize panels",expandPanel:"Expand",collapsePanel:"Collapse",movePanel:"Move",moveBefore:"Move earlier",moveAfter:"Move later"},steps:{label:"Progress",current:"Current",completed:"Completed",error:"Error",disabled:"Disabled"},numberInput:{increment:"Increase value",decrement:"Decrease value"},passwordInput:{showPassword:"Show password",hidePassword:"Hide password"},multiSelect:{placeholder:"Select options",empty:"No options",removeOption:({value})=>`Remove ${value}`},table:{dragColumn:({columnId})=>`Drag column ${columnId}`,resizeColumn:({columnId})=>`Resize column ${columnId}`,sortColumn:({columnId})=>columnId?`Sort column ${columnId}`:"Sort column",loadingRow:"Loading table row"},toolbar:{theme:{label:"Appearance",toggle:"Toggle theme",auto:"Auto",light:"Light",dark:"Dark"},language:{label:"Language",switch:"Switch language"}},toast:{errorTitle:"Error",warningTitle:"Warning",defaultErrorDescription:"Something went wrong.",defaultWarningDescription:"Please check and try again."},dataExplorer:{viewTree:{actions:"More actions",expand:"Expand",collapse:"Collapse",loading:"Loading...",empty:"No views",error:"Unable to load views"}},workbench:{relationshipGraph:{zoomOut:"Zoom out",zoomIn:"Zoom in",zoomToFit:"Fit graph",minimap:"Graph overview"},collection:{label:"Collection",loading:"Loading items",empty:"No items",loadError:"Unable to load items",refreshError:"Unable to refresh items",retry:"Retry",loadingMore:"Loading more items",permission:"You do not have permission to view this content",offline:"You appear to be offline",requestAccess:"Request access"},interactiveTable:{columnActions:"Column actions",freezeColumn:"Freeze to left",freezeEndColumn:"Freeze to right",unfreezeColumn:"Unfreeze from left",unfreezeEndColumn:"Unfreeze from right",unfreezeAllColumns:"Unfreeze all columns",resetColumnWidth:"Reset column width",frozenColumnTitle:"Frozen column"}},agentWorkbench:{label:"Session activity",reasoning:"Reasoning",plan:"Plan",taskNoDetail:"No additional details",modes:{chat:"Chat",work:"Work"},composer:{send:"Send message",stop:"Stop generating",queue:"Queue message",attach:"Add photos or files",voice:"Start voice input",webSearch:"Web search",chatMode:"Chat mode",model:"Model",reasoning:"Reasoning effort",permissions:"Permissions",removeAttachment:"Remove attachment",editQueued:"Edit queued message",deleteQueued:"Delete queued message",moveUp:"Move message up",moveDown:"Move message down",queued:"Queued messages",uploading:"Uploading",uploadFailed:"Upload failed",retryAttachment:"Retry attachment upload",noModels:"No models available",message:"Message",attachmentOnly:"Attachment",reasoningOptions:{low:"Low",medium:"Medium",high:"High",xhigh:"Extra high"},permissionOptions:{"approval-required":"Approval required","auto-approve":"Auto approve","full-access":"Full access"}},quickStart:{label:"Quick start",back:"Back",addFile:"Add file"},tool:{input:"Input",output:"Output",status:{pending:"Pending",running:"Running",completed:"Completed",failed:"Error",denied:"Denied"}},approval:{approve:"Approve",reject:"Reject",approved:"Approved",rejected:"Rejected"},artifact:{pending:"Preparing",ready:"Ready",failed:"Failed",open:({name})=>`Open ${name}`},run:{stopping:"Stopping...",stoppedAfter:({duration})=>`You stopped after ${duration}`},process:{running:"Working",queued:"Queued",waitingApproval:"Waiting for approval",failed:"Failed",stopped:"Stopped",processed:"Processed",processedFor:({duration})=>`Worked for ${duration}`,completedCount:({completed,total})=>`${completed}/${total} completed`},artifactWorkspace:{outputs:"Outputs",sources:"Sources",viewAll:"View all",toggleSummary:"Toggle files",tabs:"Open files",closeTab:({name})=>`Close ${name}`,closeWorkspace:"Close workspace",download:({name})=>`Download ${name}`,openExternal:({name})=>`Open ${name} in a new window`,loading:"Loading preview...",failed:"Preview unavailable",retry:"Try again"},usage:{label:"Context usage",context:({used,total})=>`${used} / ${total} tokens`},navigation:{search:"Search agents and sessions",searchSessions:"Search sessions",searchShortcut:"Focus search",clearSearch:"Clear search",tabsLabel:"Agent workbench navigation",agents:"Agents",sessions:"Sessions",newAgent:"New Agent",newSession:"New Session",capabilities:"Capabilities & Extensions",settings:"Agent Settings",allAgents:"All Agents",recentSessions:"Recent Sessions",chat:"Chat",work:"Work",chats:"Chats",builtIn:"Built-in",noDescription:"No description",loading:"Loading...",emptyAgents:"No agents yet",emptySessions:"No sessions yet",noResults:"No matching results",retry:"Retry",pin:"Pin",unpin:"Unpin",rename:"Rename",delete:"Delete",actions:"Actions",save:"Save",cancel:"Cancel",running:"Running",completed:"Completed",failed:"Failed",contextUsage:({percent})=>`${percent}% context used`},details:{title:"Task details",description:"Summary and workspace activity",duration:"Duration",updated:"Updated",model:"Model",mode:"Mode",permissions:"Permissions",tokenUsage:"Token usage",summary:"Summary",summaryEmpty:"No summary is available yet.",summaryFailed:"The summary could not be generated.",highlights:"Highlights",pendingItems:"Pending items",tabs:{label:"Task detail views",summary:"Summary",workspace:"Workspace"},status:{queued:"Queued",running:"Running",waiting_approval:"Waiting for approval",stopping:"Stopping",stopped:"Stopped",completed:"Completed",failed:"Failed"},state:{loading:{title:"Loading task details",description:"Restoring the latest session activity."},empty:{title:"No task selected",description:"Select a task to inspect its details."},error:{title:"Unable to load task details",description:"Try again after the session is available."}},actions:{close:"Close task details",copySummary:"Copy summary",retry:"Retry",retrySummary:"Retry summary",resume:"Resume",continueInNewTask:"Continue in new task",editAndRerun:"Edit and rerun",export:"Export"},workspace:{diffs:"Code changes",files:"Files",terminals:"Terminals",tests:"Tests",artifacts:"Artifacts",exitCode:({code})=>`Exit code ${code}`,diffStatus:{added:"Added",modified:"Modified",deleted:"Deleted",renamed:"Renamed"},fileOperation:{upsert:"Updated",delete:"Deleted"}}}}}};var zhCN={locale:"zh-CN",messages:{pagination:{navigation:"\u5206\u9875\u5BFC\u822A",first:"\u9996\u9875",previous:"\u4E0A\u4E00\u9875",next:"\u4E0B\u4E00\u9875",last:"\u672B\u9875",page:({page,pageCount})=>`\u7B2C ${page} \u9875\uFF0C\u5171 ${pageCount} \u9875`,currentPage:({page,pageCount})=>`\u7B2C ${page} \u9875\uFF0C\u5171 ${pageCount} \u9875\uFF0C\u5F53\u524D\u9875`,emptyResults:"\u5171 0 \u6761",range:({start,end,total})=>`\u7B2C ${start}-${end} \u6761\uFF0C\u5171 ${total} \u6761`,selected:({count})=>`\u5DF2\u9009\u62E9 ${count} \u9879`,pageSize:"\u6BCF\u9875\u663E\u793A\u6570\u91CF",loadBatchSize:"\u6BCF\u6B21\u52A0\u8F7D\u6570\u91CF",perLoad:"\u6BCF\u6B21\u52A0\u8F7D",jumpToPage:"\u8DF3\u8F6C\u5230\u9875\u7801",pages:"\u9875",clickToJump:"\u70B9\u51FB\u8DF3\u8F6C\u9875\u7801"},dialog:{close:"\u5173\u95ED\u5BF9\u8BDD\u6846"},dropdownMenu:{actions:"\u64CD\u4F5C"},loading:{spinner:"\u6B63\u5728\u52A0\u8F7D"},layout:{resizePanels:"\u8C03\u6574\u9762\u677F\u5927\u5C0F",expandPanel:"\u5C55\u5F00",collapsePanel:"\u6536\u8D77",movePanel:"\u79FB\u52A8",moveBefore:"\u5411\u524D\u79FB\u52A8",moveAfter:"\u5411\u540E\u79FB\u52A8"},steps:{label:"\u8FDB\u5EA6",current:"\u5F53\u524D\u6B65\u9AA4",completed:"\u5DF2\u5B8C\u6210",error:"\u9519\u8BEF",disabled:"\u5DF2\u7981\u7528"},numberInput:{increment:"\u589E\u52A0\u6570\u503C",decrement:"\u51CF\u5C11\u6570\u503C"},passwordInput:{showPassword:"\u663E\u793A\u5BC6\u7801",hidePassword:"\u9690\u85CF\u5BC6\u7801"},multiSelect:{placeholder:"\u8BF7\u9009\u62E9",empty:"\u6682\u65E0\u9009\u9879",removeOption:({value})=>`\u79FB\u9664 ${value}`},table:{dragColumn:({columnId})=>`\u62D6\u52A8\u5217 ${columnId}`,resizeColumn:({columnId})=>`\u8C03\u6574\u5217\u5BBD ${columnId}`,sortColumn:({columnId})=>columnId?`\u6392\u5E8F\u5217 ${columnId}`:"\u6392\u5E8F\u5217",loadingRow:"\u6B63\u5728\u52A0\u8F7D\u8868\u683C\u884C"},toolbar:{theme:{label:"\u5916\u89C2",toggle:"\u5207\u6362\u4E3B\u9898",auto:"\u8DDF\u968F\u7CFB\u7EDF",light:"\u6D45\u8272\u6A21\u5F0F",dark:"\u6DF1\u8272\u6A21\u5F0F"},language:{label:"\u8BED\u8A00",switch:"\u5207\u6362\u8BED\u8A00"}},toast:{errorTitle:"\u9519\u8BEF",warningTitle:"\u63D0\u793A",defaultErrorDescription:"\u53D1\u751F\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",defaultWarningDescription:"\u8BF7\u68C0\u67E5\u540E\u91CD\u8BD5\u3002"},dataExplorer:{viewTree:{actions:"\u66F4\u591A\u64CD\u4F5C",expand:"\u5C55\u5F00",collapse:"\u6536\u8D77",loading:"\u6B63\u5728\u52A0\u8F7D...",empty:"\u6682\u65E0\u89C6\u56FE",error:"\u65E0\u6CD5\u52A0\u8F7D\u89C6\u56FE"}},workbench:{relationshipGraph:{zoomOut:"\u7F29\u5C0F",zoomIn:"\u653E\u5927",zoomToFit:"\u9002\u5E94\u753B\u5E03",minimap:"\u56FE\u8C31\u6982\u89C8"},collection:{label:"\u5185\u5BB9\u96C6\u5408",loading:"\u6B63\u5728\u52A0\u8F7D\u5185\u5BB9",empty:"\u6682\u65E0\u5185\u5BB9",loadError:"\u65E0\u6CD5\u52A0\u8F7D\u5185\u5BB9",refreshError:"\u65E0\u6CD5\u5237\u65B0\u5185\u5BB9",retry:"\u91CD\u8BD5",loadingMore:"\u6B63\u5728\u52A0\u8F7D\u66F4\u591A\u5185\u5BB9",permission:"\u4F60\u6CA1\u6709\u6743\u9650\u67E5\u770B\u6B64\u5185\u5BB9",offline:"\u7F51\u7EDC\u8FDE\u63A5\u5DF2\u65AD\u5F00",requestAccess:"\u7533\u8BF7\u6743\u9650"},interactiveTable:{columnActions:"\u5217\u64CD\u4F5C",freezeColumn:"\u56FA\u5B9A\u5230\u5DE6\u4FA7",freezeEndColumn:"\u56FA\u5B9A\u5230\u53F3\u4FA7",unfreezeColumn:"\u53D6\u6D88\u5DE6\u4FA7\u56FA\u5B9A",unfreezeEndColumn:"\u53D6\u6D88\u53F3\u4FA7\u56FA\u5B9A",unfreezeAllColumns:"\u53D6\u6D88\u5168\u90E8\u56FA\u5B9A",resetColumnWidth:"\u91CD\u7F6E\u5217\u5BBD",frozenColumnTitle:"\u5DF2\u56FA\u5B9A\u5217"}},agentWorkbench:{label:"\u4F1A\u8BDD\u6D3B\u52A8",reasoning:"\u601D\u8003\u8FC7\u7A0B",plan:"\u6267\u884C\u8BA1\u5212",taskNoDetail:"\u6682\u65E0\u66F4\u591A\u8BE6\u60C5",modes:{chat:"\u5BF9\u8BDD",work:"\u5DE5\u4F5C"},composer:{send:"\u53D1\u9001\u6D88\u606F",stop:"\u505C\u6B62\u751F\u6210",queue:"\u6392\u961F\u53D1\u9001",attach:"\u6DFB\u52A0\u7167\u7247\u6216\u6587\u4EF6",voice:"\u5F00\u59CB\u8BED\u97F3\u8F93\u5165",webSearch:"\u8054\u7F51\u641C\u7D22",chatMode:"\u5BF9\u8BDD\u6A21\u5F0F",model:"\u6A21\u578B",reasoning:"\u601D\u8003\u5F3A\u5EA6",permissions:"\u6743\u9650",removeAttachment:"\u79FB\u9664\u9644\u4EF6",editQueued:"\u7F16\u8F91\u6392\u961F\u6D88\u606F",deleteQueued:"\u5220\u9664\u6392\u961F\u6D88\u606F",moveUp:"\u4E0A\u79FB\u6D88\u606F",moveDown:"\u4E0B\u79FB\u6D88\u606F",queued:"\u6392\u961F\u6D88\u606F",uploading:"\u4E0A\u4F20\u4E2D",uploadFailed:"\u4E0A\u4F20\u5931\u8D25",retryAttachment:"\u91CD\u8BD5\u9644\u4EF6\u4E0A\u4F20",noModels:"\u6682\u65E0\u53EF\u7528\u6A21\u578B",message:"\u6D88\u606F",attachmentOnly:"\u9644\u4EF6",reasoningOptions:{low:"\u4F4E",medium:"\u4E2D",high:"\u9AD8",xhigh:"\u6700\u9AD8"},permissionOptions:{"approval-required":"\u9700\u8981\u6279\u51C6","auto-approve":"\u81EA\u52A8\u6279\u51C6","full-access":"\u5B8C\u5168\u8BBF\u95EE"}},quickStart:{label:"\u5FEB\u901F\u5F00\u59CB",back:"\u8FD4\u56DE",addFile:"\u6DFB\u52A0\u6587\u4EF6"},tool:{input:"\u8F93\u5165",output:"\u8F93\u51FA",status:{pending:"\u7B49\u5F85\u4E2D",running:"\u8FD0\u884C\u4E2D",completed:"\u5DF2\u5B8C\u6210",failed:"\u9519\u8BEF",denied:"\u5DF2\u62D2\u7EDD"}},approval:{approve:"\u5141\u8BB8",reject:"\u62D2\u7EDD",approved:"\u5DF2\u5141\u8BB8",rejected:"\u5DF2\u62D2\u7EDD"},artifact:{pending:"\u51C6\u5907\u4E2D",ready:"\u5DF2\u5C31\u7EEA",failed:"\u5931\u8D25",open:({name})=>`\u6253\u5F00 ${name}`},run:{stopping:"\u6B63\u5728\u505C\u6B62...",stoppedAfter:({duration})=>`\u4F60\u5728 ${duration} \u540E\u505C\u6B62\u4E86\u4EFB\u52A1`},process:{running:"\u6267\u884C\u8FC7\u7A0B",queued:"\u6392\u961F\u4E2D",waitingApproval:"\u7B49\u5F85\u5BA1\u6279",failed:"\u5931\u8D25",stopped:"\u5DF2\u505C\u6B62",processed:"\u5DF2\u5904\u7406",processedFor:({duration})=>`\u8017\u65F6 ${duration.replace(/(\d+)h/g,"$1\u5C0F\u65F6").replace(/(\d+)m/g,"$1\u5206\u949F").replace(/(\d+)s/g,"$1\u79D2").replace(/\s+/g,"")}`,completedCount:({completed,total})=>`${completed}/${total} \u5DF2\u5B8C\u6210`},artifactWorkspace:{outputs:"\u8F93\u51FA",sources:"\u6765\u6E90",viewAll:"\u67E5\u770B\u5168\u90E8",toggleSummary:"\u5207\u6362\u6587\u4EF6\u6458\u8981",tabs:"\u5DF2\u6253\u5F00\u6587\u4EF6",closeTab:({name})=>`\u5173\u95ED ${name}`,closeWorkspace:"\u5173\u95ED\u5DE5\u4F5C\u533A",download:({name})=>`\u4E0B\u8F7D ${name}`,openExternal:({name})=>`\u5728\u65B0\u7A97\u53E3\u6253\u5F00 ${name}`,loading:"\u6B63\u5728\u52A0\u8F7D\u9884\u89C8...",failed:"\u9884\u89C8\u4E0D\u53EF\u7528",retry:"\u91CD\u8BD5"},usage:{label:"\u4E0A\u4E0B\u6587\u7528\u91CF",context:({used,total})=>`${used} / ${total} tokens`},navigation:{search:"\u641C\u7D22\u667A\u80FD\u4F53\u548C\u4F1A\u8BDD",searchSessions:"\u641C\u7D22\u4F1A\u8BDD",searchShortcut:"\u805A\u7126\u641C\u7D22\u6846",clearSearch:"\u6E05\u9664\u641C\u7D22",tabsLabel:"\u667A\u80FD\u4F53\u5DE5\u4F5C\u53F0\u5BFC\u822A",agents:"\u667A\u80FD\u4F53",sessions:"\u4F1A\u8BDD",newAgent:"\u65B0\u5EFA\u667A\u80FD\u4F53",newSession:"\u65B0\u5EFA\u4F1A\u8BDD",capabilities:"\u80FD\u529B\u4E0E\u6269\u5C55",settings:"\u667A\u80FD\u4F53\u8BBE\u7F6E",allAgents:"\u5168\u90E8\u667A\u80FD\u4F53",recentSessions:"\u6700\u8FD1\u4F1A\u8BDD",chat:"\u5BF9\u8BDD",work:"\u5DE5\u4F5C",chats:"\u804A\u5929",builtIn:"\u5185\u7F6E",noDescription:"\u6682\u65E0\u63CF\u8FF0",loading:"\u52A0\u8F7D\u4E2D...",emptyAgents:"\u6682\u65E0\u667A\u80FD\u4F53",emptySessions:"\u6682\u65E0\u4F1A\u8BDD",noResults:"\u6CA1\u6709\u5339\u914D\u7ED3\u679C",retry:"\u91CD\u8BD5",pin:"\u7F6E\u9876",unpin:"\u53D6\u6D88\u7F6E\u9876",rename:"\u91CD\u547D\u540D",delete:"\u5220\u9664",actions:"\u64CD\u4F5C",save:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",running:"\u8FD0\u884C\u4E2D",completed:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25",contextUsage:({percent})=>`\u5DF2\u4F7F\u7528 ${percent}% \u4E0A\u4E0B\u6587`},details:{title:"\u4EFB\u52A1\u8BE6\u60C5",description:"\u6458\u8981\u4E0E\u5DE5\u4F5C\u533A\u6D3B\u52A8",duration:"\u8017\u65F6",updated:"\u66F4\u65B0\u65F6\u95F4",model:"\u6A21\u578B",mode:"\u6A21\u5F0F",permissions:"\u6743\u9650",tokenUsage:"Token \u7528\u91CF",summary:"\u6458\u8981",summaryEmpty:"\u6682\u65F6\u6CA1\u6709\u53EF\u7528\u6458\u8981\u3002",summaryFailed:"\u6458\u8981\u751F\u6210\u5931\u8D25\u3002",highlights:"\u91CD\u70B9",pendingItems:"\u5F85\u5904\u7406\u4E8B\u9879",tabs:{label:"\u4EFB\u52A1\u8BE6\u60C5\u89C6\u56FE",summary:"\u6458\u8981",workspace:"\u5DE5\u4F5C\u533A"},status:{queued:"\u6392\u961F\u4E2D",running:"\u8FD0\u884C\u4E2D",waiting_approval:"\u7B49\u5F85\u5BA1\u6279",stopping:"\u6B63\u5728\u505C\u6B62",stopped:"\u5DF2\u505C\u6B62",completed:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25"},state:{loading:{title:"\u6B63\u5728\u52A0\u8F7D\u4EFB\u52A1\u8BE6\u60C5",description:"\u6B63\u5728\u6062\u590D\u6700\u65B0\u7684\u4F1A\u8BDD\u6D3B\u52A8\u3002"},empty:{title:"\u672A\u9009\u62E9\u4EFB\u52A1",description:"\u9009\u62E9\u4EFB\u52A1\u540E\u67E5\u770B\u8BE6\u7EC6\u4FE1\u606F\u3002"},error:{title:"\u65E0\u6CD5\u52A0\u8F7D\u4EFB\u52A1\u8BE6\u60C5",description:"\u4F1A\u8BDD\u6062\u590D\u53EF\u7528\u540E\u8BF7\u91CD\u8BD5\u3002"}},actions:{close:"\u5173\u95ED\u4EFB\u52A1\u8BE6\u60C5",copySummary:"\u590D\u5236\u6458\u8981",retry:"\u91CD\u8BD5",retrySummary:"\u91CD\u65B0\u751F\u6210\u6458\u8981",resume:"\u7EE7\u7EED\u8FD0\u884C",continueInNewTask:"\u5728\u65B0\u4EFB\u52A1\u4E2D\u7EE7\u7EED",editAndRerun:"\u7F16\u8F91\u5E76\u91CD\u65B0\u8FD0\u884C",export:"\u5BFC\u51FA"},workspace:{diffs:"\u4EE3\u7801\u53D8\u66F4",files:"\u6587\u4EF6",terminals:"\u7EC8\u7AEF",tests:"\u6D4B\u8BD5",artifacts:"\u4EA7\u7269",exitCode:({code})=>`\u9000\u51FA\u7801 ${code}`,diffStatus:{added:"\u65B0\u589E",modified:"\u4FEE\u6539",deleted:"\u5220\u9664",renamed:"\u91CD\u547D\u540D"},fileOperation:{upsert:"\u5DF2\u66F4\u65B0",delete:"\u5DF2\u5220\u9664"}}}}}};function mergeMonkeysLocaleMessages(base,override){return base}var defaultMonkeysLocale={locale:enUS.locale,messages:mergeMonkeysLocaleMessages(enUS.messages)};var EMPTY_ENVIRONMENT=Object.freeze({}),EMPTY_PORTAL=Object.freeze({}),MONKEYS_PROVIDER_CONTEXTS_KEY=Symbol.for("@inf-monkeys-tech/monkeys-design/provider-context@1");function createMonkeysProviderContexts(){return Object.freeze({locale:React8.createContext({...defaultMonkeysLocale,provided:false}),theme:React8.createContext({provided:false}),direction:React8.createContext({provided:false}),environment:React8.createContext({provided:false,environment:EMPTY_ENVIRONMENT,portal:EMPTY_PORTAL})})}function getMonkeysProviderContexts(){let host3=globalThis,existing=host3[MONKEYS_PROVIDER_CONTEXTS_KEY];if(existing)return existing;let contexts=createMonkeysProviderContexts();return Object.defineProperty(host3,MONKEYS_PROVIDER_CONTEXTS_KEY,{value:contexts,enumerable:false,configurable:false,writable:false}),contexts}var providerContexts=getMonkeysProviderContexts(),MonkeysLocaleContext=providerContexts.locale,MonkeysThemeContext=providerContexts.theme,MonkeysDirectionContext=providerContexts.direction,MonkeysEnvironmentContext=providerContexts.environment;function mergeAppearance(inherited,explicit){return explicit===void 0?inherited:inherited===void 0?explicit:{...inherited,...explicit,slots:inherited.slots||explicit.slots?{...inherited.slots,...explicit.slots}:void 0,styles:inherited.styles||explicit.styles?{...inherited.styles,...explicit.styles}:void 0}}function useMonkeysLocale(){try{return React8.useContext(MonkeysLocaleContext)??{...defaultMonkeysLocale,provided:!1}}catch{return {...defaultMonkeysLocale,provided:false}}}function useMonkeysLocaleMessages(){return React8.useContext(MonkeysLocaleContext).messages}function useMonkeysResolvedTheme(){return React8.useContext(MonkeysThemeContext).resolvedTheme}function useMonkeysBaseAppearance(explicit){let inherited=React8.useContext(MonkeysThemeContext).baseAppearance;return React8.useMemo(()=>mergeAppearance(inherited,explicit),[explicit,inherited])}function useMonkeysStatusStates(){return React8.useContext(MonkeysThemeContext).statusStates??{}}function useMonkeysListFooter(){return React8.useContext(MonkeysThemeContext).listFooter??{}}function useMonkeysDirection(){return React8.useContext(MonkeysDirectionContext).direction}function useMonkeysEnvironment(){return React8.useContext(MonkeysEnvironmentContext).environment}function useMonkeysPortalOptions(){return React8.useContext(MonkeysEnvironmentContext).portal}function useMonkeysComponentAttributes(){let locale=React8.useContext(MonkeysLocaleContext),theme=React8.useContext(MonkeysThemeContext),direction=React8.useContext(MonkeysDirectionContext),providerActive=locale.provided||theme.provided||direction.provided;return React8.useMemo(()=>providerActive?{dir:direction.direction,"data-monkeys-direction":direction.direction,"data-monkeys-locale":locale.locale,"data-monkeys-theme":theme.themeId,"data-monkeys-theme-mode":theme.resolvedTheme?.colorMode}:{},[direction.direction,locale.locale,providerActive,theme.resolvedTheme?.colorMode,theme.themeId])}function useMonkeysAssetIconResolver(){return React8.useContext(MonkeysEnvironmentContext).iconResolver}function useMonkeysAssetImageResolver(){return React8.useContext(MonkeysEnvironmentContext).imageResolver}function resolveContainerValue(value,source){let candidate=typeof value=="function"?value():value;if(candidate===null)return null;if(!candidate||typeof candidate!="object"||candidate.nodeType!==1)throw new TypeError(`${source} must resolve to an Element or null.`);return candidate}function resolveBasePortalContainer({explicitProvided,explicitContainer,providerProvided,providerContainer,getDocument}){if(explicitProvided)return resolveContainerValue(explicitContainer,"BasePortal container");if(providerProvided)return resolveContainerValue(providerContainer,"MonkeysProvider portal.container");if(!getDocument)return null;let ownerDocument=getDocument();if(ownerDocument===null)return null;if(!ownerDocument||typeof ownerDocument!="object"||!("body"in ownerDocument))throw new TypeError("MonkeysProvider environment.getDocument must resolve to a Document or null.");return resolveContainerValue(ownerDocument.body,"MonkeysProvider environment.getDocument().body")}function resolveBaseOverlayPortalState({mounted,explicitDisabled,explicitContainer,providerDisabled,providerContainer,getDocument}){let disabled=explicitDisabled??providerDisabled??false;if(!mounted||disabled)return {mounted,disabled,shouldPortal:false,container:null,radixPortalProps:void 0};let container=resolveBasePortalContainer({explicitProvided:explicitContainer!==void 0,explicitContainer,providerProvided:providerContainer!==void 0,providerContainer,getDocument});return container?{mounted:true,disabled:false,shouldPortal:true,container,radixPortalProps:Object.freeze({container})}:{mounted:true,disabled:false,shouldPortal:false,container:null,radixPortalProps:void 0}}function getDefaultDocument(){return globalThis.document??null}function useBaseOverlayPortal(options2={}){let environment=useMonkeysEnvironment(),portalOptions=useMonkeysPortalOptions(),[mounted,setMounted]=React8.useState(false);return React8.useEffect(()=>{setMounted(true);},[]),resolveBaseOverlayPortalState({mounted,explicitDisabled:options2.disabled,explicitContainer:options2.container,providerDisabled:portalOptions.disabled,providerContainer:portalOptions.container,getDocument:environment.getDocument??getDefaultDocument})}function renderBaseOverlayPortalContent(children,portal){return portal.shouldPortal?reactDom.createPortal(children,portal.container):jsxRuntime.jsx(jsxRuntime.Fragment,{children})}function cn(...parts2){return tailwindMerge.twMerge(parts2.filter(Boolean).join(" "))}function hasRenderableNode(node){return node!=null&&typeof node!="boolean"}function hasNonEmptyRenderableNode(node){return typeof node=="string"?node.trim().length>0:hasRenderableNode(node)}var emptyStyles={},motionBase="motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",motionInteractive="motion-safe:transition-all motion-safe:duration-300 motion-safe:ease-out",motionTransform="motion-safe:transition-transform motion-safe:duration-300 motion-safe:ease-out",tableScrollbarChrome=cn("[scrollbar-width:thin]","[scrollbar-color:hsl(var(--muted-foreground)/0.45)_transparent]","[&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-2","[&::-webkit-scrollbar-button]:hidden [&::-webkit-scrollbar-button]:h-0 [&::-webkit-scrollbar-button]:w-0 [&::-webkit-scrollbar-button]:bg-transparent","[&::-webkit-scrollbar-button:single-button]:hidden [&::-webkit-scrollbar-button:single-button]:h-0 [&::-webkit-scrollbar-button:single-button]:w-0","[&::-webkit-scrollbar-button:double-button]:hidden [&::-webkit-scrollbar-button:double-button]:h-0 [&::-webkit-scrollbar-button:double-button]:w-0","[&::-webkit-scrollbar-corner]:bg-transparent","[&::-webkit-scrollbar-track]:bg-transparent","[&:has(thead.sticky)::-webkit-scrollbar-track]:mt-[var(--base-table-header-height)]","[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-muted-foreground/40","hover:[&::-webkit-scrollbar-thumb]:bg-muted-foreground/55"),tableStickyHeaderCells=cn("[&.sticky_th]:sticky [&.sticky_th]:top-0 [&.sticky_th]:z-[2]","[&.sticky_th]:bg-[var(--base-table-sticky-header-bg)]","[&.sticky_th]:shadow-[inset_0_-1px_0_var(--base-table-header-separator)]"),baseSlots={buttonBase:cn("group/button inline-flex min-w-0 items-center justify-center gap-2 rounded-md border px-3 text-sm font-medium focus-visible:outline-hidden","cursor-pointer disabled:!cursor-not-allowed",motionInteractive),buttonDefault:"border-border bg-background text-foreground hover:bg-accent/60",buttonPrimary:"border-primary/20 bg-primary/10 text-primary hover:bg-primary/15",buttonSuccess:"border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-[hsl(var(--success,142_72%_29%))] hover:bg-[hsl(var(--success,142_72%_29%)_/_0.15)]",buttonWarning:"border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))] hover:bg-[hsl(var(--warning,45_93%_47%)_/_0.15)]",buttonDanger:"border-destructive/20 bg-destructive/10 text-destructive-text hover:bg-destructive/15",buttonMuted:"border-border/60 bg-muted/45 text-muted-foreground hover:bg-muted/70 hover:text-foreground",buttonActive:"border-primary/35 bg-primary/10 text-primary",buttonDisabled:"!cursor-not-allowed opacity-60",buttonIconOnly:"w-9 px-0",buttonIcon:"inline-flex h-4 w-4 shrink-0 items-center justify-center text-[inherit] [&_*]:!text-[inherit] [&_svg]:!stroke-current [&_svg_*]:!stroke-current",buttonLabel:"min-w-0 truncate",badgeBase:cn("inline-flex max-w-full items-center gap-1.5 rounded-full border px-2 py-0.5 text-xs font-medium",motionBase),badgeDefault:"border-border/60 bg-background text-foreground",badgePrimary:"border-primary/30 bg-primary/10 text-primary",badgeSuccess:"border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-[hsl(var(--success,142_72%_29%))]",badgeWarning:"border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))]",badgeDanger:"border-destructive/30 bg-destructive/10 text-destructive-text",badgeMuted:"border-border/60 bg-muted text-muted-foreground",badgeIcon:"inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center",badgeLabel:"min-w-0 truncate",textRoot:"min-w-0 break-words leading-6",textSizeXs:"text-xs",textSizeSm:"text-sm",textSizeMd:"text-base",textSizeLg:"text-lg",textSizeXl:"text-xl",typographyToneDefault:"text-foreground",typographyToneMuted:"text-muted-foreground",typographyTonePrimary:"text-primary",typographyToneSuccess:"text-emerald-700 dark:text-emerald-400",typographyToneWarning:"text-amber-700 dark:text-amber-400",typographyToneDanger:"text-destructive-text",typographyToneInherit:"text-inherit",headingRoot:"min-w-0 break-words font-semibold tracking-tight",headingSizeXs:"text-sm leading-5",headingSizeSm:"text-base leading-6",headingSizeMd:"text-lg leading-7",headingSizeLg:"text-xl leading-7",headingSizeXl:"text-2xl leading-8",headingSize2xl:"text-3xl leading-9",linkRoot:"inline break-words underline decoration-current/40 underline-offset-4 hover:decoration-current focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30",codeInline:"rounded border border-border/70 bg-muted/60 px-1.5 py-0.5 font-mono text-[0.875em] leading-[1.45] text-foreground",codeBlock:"m-0 max-w-full overflow-x-auto rounded-md border border-border/70 bg-muted/60 p-4 text-foreground",codeContent:"font-mono text-sm leading-6",kbdRoot:"inline-flex min-h-5 items-center rounded border border-border bg-muted/70 px-1.5 font-mono text-[0.75em] font-medium leading-5 text-foreground shadow-[inset_0_-1px_0_hsl(var(--monkeys-color-border))]",listRoot:"m-0 min-w-0 list-outside break-words ps-5 text-foreground",listSpacingCompact:"[&>li+li]:mt-1",listSpacingDefault:"[&>li+li]:mt-2",listSpacingRelaxed:"[&>li+li]:mt-3",listMarkerNone:"list-none ps-0",listMarkerDisc:"list-disc",listMarkerCircle:"list-[circle]",listMarkerSquare:"list-[square]",listMarkerDecimal:"list-decimal",listMarkerLowerAlpha:"list-[lower-alpha]",listMarkerUpperAlpha:"list-[upper-alpha]",listItem:"min-w-0 ps-1 leading-6 marker:text-muted-foreground",stackRoot:"flex min-w-0 flex-col",inlineRoot:"flex min-w-0 flex-row",gridRoot:"grid min-w-0",containerRoot:"mx-auto w-full min-w-0",aspectRatioRoot:"relative min-w-0 overflow-hidden [&>*]:h-full [&>*]:w-full",spinnerRoot:"inline-flex shrink-0 items-center justify-center text-current align-middle",spinnerIndicator:"h-5 w-5 rounded-full border-2 border-current border-r-transparent motion-safe:animate-spin motion-reduce:animate-none",visuallyHiddenRoot:"sr-only",visuallyHiddenFocusable:"focus:not-sr-only focus:fixed focus:left-4 focus:top-4 focus:z-[1000] focus:rounded-md focus:bg-background focus:px-4 focus:py-2 focus:text-foreground focus:shadow-lg focus:outline-hidden focus:ring-2 focus:ring-ring focus-within:not-sr-only focus-within:fixed focus-within:left-4 focus-within:top-4 focus-within:z-[1000] focus-within:rounded-md focus-within:bg-background focus-within:px-4 focus-within:py-2 focus-within:text-foreground focus-within:shadow-lg focus-within:ring-2 focus-within:ring-ring",fieldsetRoot:"min-w-0 border-0 p-0 text-foreground",fieldsetLegend:"min-w-0 text-sm font-semibold leading-6 text-foreground",fieldsetDescription:"mt-1 text-sm leading-5 text-muted-foreground",fieldsetError:"mt-1 text-sm leading-5 text-destructive-text",fieldsetContent:"mt-3 grid min-w-0 gap-3",stepsRoot:"m-0 min-w-0 list-none p-0 text-foreground",stepsHorizontal:"flex w-full max-w-full items-start overflow-x-auto pb-2",stepsVertical:"grid",stepsItem:"relative min-w-0",stepsItemHorizontal:"flex min-w-52 flex-1 items-start",stepsItemVertical:"pb-6 last:pb-0",stepsTrigger:"flex min-w-0 flex-1 items-start gap-3 rounded-md border-0 bg-transparent p-1 text-start text-inherit",stepsTriggerInteractive:"cursor-pointer hover:bg-accent/50 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",stepsTriggerDisabled:"!cursor-not-allowed opacity-60",stepsIndicator:"relative z-[1] inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full border text-xs font-semibold",stepsIndicatorPending:"border-border bg-background text-muted-foreground",stepsIndicatorCurrent:"border-primary/50 bg-primary/10 text-primary",stepsIndicatorCompleted:"border-primary bg-primary text-primary-foreground",stepsIndicatorError:"border-destructive bg-destructive text-destructive-foreground",stepsContent:"grid min-w-0 gap-1 pt-0.5",stepsLabel:"min-w-0 break-words text-sm font-medium leading-5",stepsDescription:"min-w-0 break-words text-sm leading-5 text-muted-foreground",stepsStatus:"sr-only",stepsConnector:"shrink-0 bg-border",stepsConnectorHorizontal:"mt-3.5 h-px w-8",stepsConnectorVertical:"absolute bottom-0 top-8 start-3.5 w-px -translate-x-1/2",stepsConnectorCompleted:"bg-primary/60",stepsConnectorError:"bg-destructive/60",scrollAreaViewport:"min-h-0 min-w-0",numberInputControl:"tabular-nums",numberInputStepControls:"me-1 flex shrink-0 self-stretch overflow-hidden border-s border-border",numberInputStepButton:"flex min-h-6 w-7 cursor-pointer items-center justify-center border-0 bg-transparent px-1 text-xs leading-none text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:z-[1] focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-40",passwordInputControl:"pe-2",passwordInputToggle:"me-1 inline-flex min-h-7 shrink-0 cursor-pointer items-center justify-center rounded px-2 text-xs font-medium text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-40",inputGroupRoot:cn("relative flex min-w-0 items-stretch overflow-hidden rounded-md border border-border bg-background text-foreground focus-within:border-primary/50 focus-within:ring-2 focus-within:ring-ring/30",motionBase),inputGroupInvalid:"border-destructive/55 focus-within:border-destructive/70 focus-within:ring-destructive/25",inputGroupDisabled:"!cursor-not-allowed bg-muted/35",inputGroupContent:"flex min-w-0 flex-1 items-stretch [&>*]:min-w-0",inputGroupStartElement:"inline-flex shrink-0 items-center justify-center ps-3 pe-1 text-foreground/75",inputGroupEndElement:"inline-flex shrink-0 items-center justify-center ps-1 pe-3 text-foreground/75",inputGroupStartAddon:"inline-flex max-w-[min(40%,16rem)] shrink-0 items-center overflow-hidden border-e border-border bg-muted/60 px-3 text-sm text-foreground/75 text-ellipsis whitespace-nowrap [&>*]:min-w-0",inputGroupEndAddon:"inline-flex max-w-[min(40%,16rem)] shrink-0 items-center overflow-hidden border-s border-border bg-muted/60 px-3 text-sm text-foreground/75 text-ellipsis whitespace-nowrap [&>*]:min-w-0",panelRoot:cn("group relative flex min-w-0 flex-col overflow-hidden rounded-lg border border-border/70 bg-background",motionInteractive),panelInteractive:"cursor-pointer hover:shadow-md",panelSelected:"border-primary/45 bg-primary/5",panelDisabled:"!cursor-not-allowed opacity-60",panelMedia:"shrink-0 overflow-hidden",panelHeader:"min-w-0 p-token-lg",panelTitle:"min-w-0 truncate text-sm font-semibold leading-none text-foreground",panelDescription:"mt-1 text-sm leading-5 text-foreground/75",panelBody:"min-w-0 px-token-lg pb-token-lg text-sm text-foreground",panelBodyStandalone:"pt-token-lg",panelFooter:"shrink-0 border-t border-border/60 px-token-lg py-token-md",stateRoot:cn("flex min-h-48 flex-col items-center justify-center rounded-lg border border-border/70 bg-background px-6 py-10 text-center",motionBase),stateIcon:"mb-token-lg flex h-12 w-12 items-center justify-center rounded-full bg-muted text-muted-foreground motion-safe:animate-in motion-safe:fade-in",stateTitle:"text-sm font-semibold text-foreground",stateDescription:"mt-2 max-w-md text-sm leading-6 text-muted-foreground",stateActions:"mt-token-xl flex flex-wrap items-center justify-center gap-token-sm",loadingSpinner:"h-5 w-5 motion-safe:animate-spin motion-reduce:animate-none",fieldRoot:"grid min-w-0 gap-token-md",fieldLabelRow:"flex min-w-0 items-center justify-between gap-token-md",fieldLabel:"min-w-0 text-sm font-medium leading-none text-foreground",fieldRequired:"text-destructive-text",fieldDescription:"text-sm leading-5 text-muted-foreground",fieldMessage:"text-sm leading-5 text-muted-foreground",fieldControl:"min-w-0",controlWrapper:cn("relative flex min-w-0 items-center rounded-md border border-border bg-background text-foreground focus-within:border-primary/35",motionBase),controlBase:"min-w-0 flex-1 bg-transparent px-3 text-sm text-foreground outline-hidden placeholder:text-muted-foreground disabled:!cursor-not-allowed",controlInput:"h-9",controlTextarea:"min-h-24 resize-y py-2 leading-6",controlSelect:"h-9 cursor-pointer appearance-none pr-9 disabled:!cursor-not-allowed",controlIcon:"pointer-events-none ml-3 inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",controlTrailing:"mr-3 inline-flex shrink-0 items-center justify-center text-muted-foreground",controlInvalid:"border-destructive/45 focus-within:border-destructive/60",controlDisabled:"!cursor-not-allowed opacity-60",controlReadOnly:"bg-muted/35",selectChevron:cn("pointer-events-none absolute right-3 top-1/2 h-2 w-2 -translate-y-1/2 rotate-45 border-b border-r border-current text-muted-foreground",motionTransform),selectMenu:"absolute left-0 right-0 top-[calc(100%+0.375rem)] z-50 max-h-60 overflow-auto rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-hidden",selectOption:cn("flex min-h-8 w-full min-w-0 cursor-pointer items-center rounded-sm px-2.5 py-1.5 text-left text-sm text-foreground",motionInteractive),selectOptionActive:"bg-accent text-accent-foreground",selectOptionSelected:"bg-primary/10 text-primary",selectOptionDisabled:"!cursor-not-allowed opacity-50",selectPlaceholder:"text-muted-foreground",selectNative:"sr-only",switchRoot:"inline-flex min-w-0 cursor-pointer items-start gap-3",switchInput:"sr-only",switchTrack:cn("relative mt-0.5 inline-flex h-6 w-10 shrink-0 items-center rounded-full border border-border bg-muted focus-within:border-primary/35",motionBase),switchThumb:cn("h-4 w-4 translate-x-1 rounded-full bg-background shadow-sm",motionTransform),switchChecked:"border-primary/40 bg-primary/80 text-primary-foreground",switchDisabled:"!cursor-not-allowed opacity-60",switchContent:"grid min-w-0 gap-1",switchLabel:"text-sm font-medium leading-none text-foreground",switchDescription:"text-sm leading-5 text-muted-foreground",checkboxRoot:"inline-flex min-w-0 cursor-pointer items-start gap-3",checkboxInput:"sr-only",checkboxBox:cn("mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center rounded border border-border bg-background text-primary focus-within:border-primary/40",motionBase),checkboxBoxChecked:"border-primary/45 bg-primary text-primary-foreground",checkboxBoxInvalid:"border-destructive/50",checkboxIndicator:"text-xs font-bold leading-none",checkboxDisabled:"!cursor-not-allowed opacity-60",checkboxContent:"grid min-w-0 gap-1",checkboxLabel:"text-sm font-medium leading-none text-foreground",checkboxDescription:"text-sm leading-5 text-muted-foreground",radioGroupRoot:"grid min-w-0 gap-2",radioOption:cn("inline-flex min-w-0 cursor-pointer items-start gap-3 rounded-md border border-border/60 bg-background px-3 py-2 text-sm",motionInteractive,"hover:bg-muted/35"),radioInput:"sr-only",radioMarker:cn("mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-full border border-border bg-background text-primary focus-within:border-primary/40",motionBase),radioMarkerChecked:"border-primary/50 bg-primary/10",radioIndicator:"h-2 w-2 rounded-full bg-primary",radioOptionDisabled:"!cursor-not-allowed opacity-60 hover:bg-background",radioContent:"grid min-w-0 gap-1",radioLabel:"text-sm font-medium leading-none text-foreground",radioDescription:"text-sm leading-5 text-muted-foreground",dialogRoot:"relative",dialogTrigger:"",dialogTriggerDisabled:"!cursor-not-allowed opacity-60",dialogOverlay:"fixed inset-0 z-50 bg-background/70 backdrop-blur-sm motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",dialogContent:"pointer-events-none fixed inset-0 z-50 flex min-h-0 items-center justify-center p-4",dialogPanel:cn("pointer-events-auto relative flex max-h-[min(85vh,720px)] w-full max-w-lg min-w-0 flex-col overflow-hidden rounded-lg border border-border/70 bg-background text-foreground shadow-xl","motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out"),dialogHeader:"grid min-w-0 gap-1 border-b border-border/60 px-5 py-4",dialogTitle:"min-w-0 pr-8 text-base font-semibold leading-6 text-foreground",dialogDescription:"text-sm leading-6 text-muted-foreground",dialogBody:"min-h-0 min-w-0 overflow-auto px-5 py-4 text-sm text-foreground",dialogFooter:"flex shrink-0 flex-wrap items-center justify-end gap-2 border-t border-border/60 px-5 py-4",dialogClose:cn("absolute right-3 top-3 inline-flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-muted-foreground hover:bg-muted/60 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30",motionInteractive),dropdownRoot:"relative inline-flex min-w-0",dropdownTrigger:"",dropdownTriggerDisabled:"!cursor-not-allowed opacity-60",dropdownMenu:"z-50 min-w-48 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",dropdownMenuTop:"bottom-[calc(100%+0.375rem)] top-auto",dropdownMenuEnd:"left-auto right-0",dropdownLabel:"px-2.5 py-1.5 text-xs font-semibold uppercase tracking-[0.12em] text-muted-foreground",dropdownSeparator:"my-1 h-px bg-border/70",dropdownItem:cn("flex min-w-0 cursor-pointer items-center gap-2 rounded-sm px-2.5 py-2 text-left text-sm text-foreground hover:bg-accent/60 focus:bg-accent/60 data-[highlighted]:bg-accent/60 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30",motionInteractive),dropdownItemDanger:"text-destructive-text hover:bg-destructive/10 focus:bg-destructive/10 data-[highlighted]:bg-destructive/10",dropdownItemDisabled:"!cursor-not-allowed opacity-50 hover:bg-transparent focus:bg-transparent data-[highlighted]:bg-transparent",dropdownItemIcon:"inline-flex h-4 w-4 shrink-0 items-center justify-center",dropdownItemContent:"grid min-w-0 flex-1 gap-0.5",dropdownItemLabel:"min-w-0 truncate",dropdownItemDescription:"min-w-0 truncate text-xs leading-4 text-muted-foreground",dropdownItemShortcut:"ml-3 shrink-0 text-xs font-medium text-muted-foreground",tooltipRoot:"relative inline-flex min-w-0",tooltipTrigger:"inline-flex min-w-0",tooltipContent:"pointer-events-none z-50 max-w-xs rounded-md border border-border bg-popover px-2.5 py-1.5 text-xs leading-5 text-popover-foreground shadow-lg motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",noticeBase:cn("flex min-w-0 gap-3 rounded-lg border px-4 py-3 text-sm",motionBase,"motion-safe:animate-in motion-safe:fade-in"),noticeDefault:"border-border bg-background text-foreground",noticePrimary:"border-primary/25 bg-primary/10 text-primary",noticeSuccess:"border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-foreground",noticeWarning:"border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))]",noticeDanger:"border-destructive/30 bg-destructive/10 text-destructive-text",noticeMuted:"border-border/60 bg-muted/35 text-muted-foreground",noticeIcon:"mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center motion-safe:animate-in motion-safe:fade-in",noticeTitle:"font-semibold leading-5",noticeDescription:"leading-6",noticeActions:"mt-3 flex flex-wrap items-center gap-2",dividerRoot:cn("shrink-0 border-border/70",motionBase),dividerLabel:"mx-3 shrink-0 text-xs font-medium uppercase tracking-[0.12em] text-muted-foreground motion-safe:animate-in motion-safe:fade-in",sectionHeaderRoot:"flex min-w-0 flex-wrap items-start justify-between gap-token-md motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",sectionHeaderContent:"grid min-w-0 gap-1",sectionHeaderEyebrow:"text-xs font-semibold uppercase tracking-[0.14em] text-muted-foreground",sectionHeaderTitle:"text-base font-semibold leading-6 text-foreground",sectionHeaderDescription:"max-w-2xl text-sm leading-6 text-muted-foreground",sectionHeaderActions:"flex shrink-0 flex-wrap items-center gap-2",tabsRoot:"grid min-w-0 gap-token-md",tabsList:cn("inline-flex min-w-0 flex-wrap items-center gap-token-xs rounded-lg border border-border/70 bg-muted/30 p-token-xs",motionBase),tabsTrigger:cn("inline-flex min-w-0 cursor-pointer items-center justify-center rounded-md px-3 py-1.5 text-sm font-medium text-muted-foreground hover:bg-background/70 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 focus-visible:ring-offset-1 motion-reduce:transition-none",motionInteractive),tabsTriggerActive:"bg-background text-foreground shadow-sm",tabsTriggerDisabled:"!cursor-not-allowed opacity-50 hover:bg-transparent",tabsPanel:"min-w-0 rounded-lg border border-border/70 bg-background p-4 text-sm text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",segmentedRoot:cn("inline-flex min-w-0 items-center gap-1 rounded-lg border border-border/70 bg-muted/30 p-1",motionBase),segmentedItem:cn("inline-flex min-w-0 cursor-pointer items-center justify-center gap-1.5 rounded-md px-3 py-1.5 text-sm font-medium text-muted-foreground hover:bg-background/70 hover:text-foreground focus-visible:outline-hidden",motionInteractive),segmentedItemActive:"bg-background text-foreground shadow-sm",segmentedItemDisabled:"!cursor-not-allowed opacity-50 hover:bg-transparent",progressRoot:"grid min-w-0 gap-2",progressTrack:"h-2 w-full overflow-hidden rounded-full bg-muted",progressIndicator:"h-full rounded-full bg-primary motion-safe:transition-[width] motion-safe:duration-500 motion-safe:ease-out",progressLabelRow:"flex min-w-0 items-center justify-between gap-3",progressLabel:"min-w-0 truncate text-sm font-medium text-foreground",progressValue:"shrink-0 text-xs font-medium text-muted-foreground",skeletonRoot:"relative overflow-hidden rounded-md bg-muted/70",avatarRoot:"relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full border border-border bg-muted text-sm font-semibold text-muted-foreground motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",avatarImage:"h-full w-full object-cover",avatarFallback:"flex h-full w-full items-center justify-center bg-muted text-foreground",avatarStatus:"absolute bottom-0 right-0 h-2.5 w-2.5 rounded-full border-2 border-background bg-muted-foreground motion-safe:animate-pulse",avatarText:"min-w-0 truncate text-sm font-medium text-foreground",toolbarRoot:cn("flex min-w-0 flex-wrap items-center justify-between gap-token-md rounded-lg border border-border/70 bg-background px-token-lg py-token-md",motionBase),toolbarLeading:"flex min-w-0 items-center gap-token-md",toolbarTitle:"min-w-0 truncate text-sm font-semibold text-foreground",toolbarDescription:"mt-0.5 text-sm leading-5 text-muted-foreground",toolbarContent:"min-w-0 flex-1",toolbarActions:"flex shrink-0 flex-wrap items-center gap-token-sm",breadcrumbRoot:"min-w-0 text-sm text-muted-foreground",breadcrumbList:"flex min-w-0 flex-wrap items-center gap-1.5",breadcrumbItem:"inline-flex min-w-0 items-center gap-1.5",breadcrumbLink:"min-w-0 cursor-pointer truncate text-muted-foreground hover:text-foreground disabled:!cursor-not-allowed disabled:opacity-50 aria-disabled:!cursor-not-allowed aria-disabled:opacity-50 aria-disabled:hover:text-muted-foreground motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",breadcrumbCurrent:"min-w-0 truncate font-medium text-foreground",breadcrumbSeparator:"shrink-0 text-muted-foreground/70",paginationRoot:"flex min-w-0 flex-wrap items-center justify-between gap-3 text-sm",paginationInfo:"min-w-0 text-muted-foreground",paginationControls:"flex min-w-0 flex-wrap items-center justify-end gap-1.5",paginationButton:"inline-flex h-8 min-w-8 cursor-pointer items-center justify-center whitespace-nowrap rounded-md border border-border bg-background px-2.5 text-sm font-medium text-foreground hover:bg-accent/60 disabled:!cursor-not-allowed disabled:opacity-50 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",paginationButtonDisabled:"!cursor-not-allowed opacity-50",paginationPage:"inline-flex h-8 min-w-8 cursor-default items-center justify-center rounded-md bg-muted/50 px-2.5 text-sm font-medium text-foreground hover:bg-muted/50",paginationEllipsis:"inline-flex h-8 min-w-6 items-center justify-center px-1 text-sm text-muted-foreground",descriptionListRoot:"grid min-w-0 gap-3 text-sm",descriptionListItem:"grid min-w-0 gap-1 rounded-md border border-border/60 bg-background px-3 py-2 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out hover:shadow-sm",descriptionListTerm:"min-w-0 truncate text-xs font-medium uppercase tracking-[0.08em] text-muted-foreground",descriptionListValue:"min-w-0 text-sm leading-6 text-foreground",accordionRoot:"grid min-w-0 gap-2",accordionItem:"overflow-hidden rounded-lg border border-border/70 bg-background motion-safe:transition motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",accordionTrigger:"flex w-full min-w-0 cursor-pointer items-center justify-between gap-3 px-4 py-3 text-start text-sm font-medium text-foreground hover:bg-muted/40 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-50 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",accordionTriggerIcon:cn("h-2 w-2 shrink-0 rotate-45 border-b border-r border-current text-muted-foreground",motionTransform,"motion-reduce:transition-none"),accordionPanel:"border-t border-border/60 px-4 py-3 text-sm leading-6 text-muted-foreground motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out motion-reduce:animate-none",menuTrigger:"inline-flex min-w-0",menuContent:"z-50 min-w-44 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-hidden motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out",menuLabel:"px-2 py-1.5 text-xs font-medium text-muted-foreground",menuSeparator:"-mx-1 my-1 h-px bg-border",menuItem:cn("relative flex min-h-8 min-w-0 cursor-pointer select-none items-center gap-2 rounded-sm px-2.5 py-1.5 text-sm text-foreground outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:!cursor-not-allowed data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground",motionInteractive),menuItemDefault:"text-foreground",menuItemPrimary:"text-primary focus:text-primary data-[highlighted]:text-primary",menuItemSuccess:"text-[hsl(var(--success,142_72%_29%))] focus:text-[hsl(var(--success,142_72%_29%))] data-[highlighted]:text-[hsl(var(--success,142_72%_29%))]",menuItemWarning:"text-[hsl(var(--warning-foreground,28_73%_26%))] focus:text-[hsl(var(--warning-foreground,28_73%_26%))] data-[highlighted]:text-[hsl(var(--warning-foreground,28_73%_26%))]",menuItemDanger:"text-destructive-text focus:text-destructive-text data-[highlighted]:text-destructive-text",menuItemMuted:"text-muted-foreground focus:text-foreground data-[highlighted]:text-foreground",menuItemDisabled:"!cursor-not-allowed opacity-50 data-[disabled]:pointer-events-none",menuItemIcon:"inline-flex h-4 w-4 shrink-0 items-center justify-center",menuItemLabel:"min-w-0 flex-1 truncate",menuItemShortcut:"ml-4 shrink-0 text-xs font-medium text-muted-foreground",menuCheckboxIndicator:"absolute left-2 inline-flex h-4 w-4 items-center justify-center text-current",menuRadioIndicator:"absolute left-2 inline-flex h-4 w-4 items-center justify-center text-current",menuSubTrigger:cn("relative flex min-h-8 min-w-0 cursor-pointer select-none items-center gap-2 rounded-sm px-2.5 py-1.5 text-sm text-foreground outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:!cursor-not-allowed data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",motionInteractive),menuSubTriggerIcon:"ml-auto inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",menuSubContent:"z-50 min-w-40 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-hidden motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out",tableContainer:cn("relative isolate min-w-0 overflow-auto rounded-lg border border-border/70 bg-background/95 bg-clip-padding [scrollbar-gutter:stable]","[--base-table-header-height:2.75rem] [--base-table-split-scrollbar-gutter:0.75rem]","[--base-table-sticky-header-bg:hsl(var(--background))] [--base-table-header-separator:hsl(var(--border)_/_0.7)]",tableScrollbarChrome,motionBase),tableContainerFooterAttached:"!rounded-b-none !shadow-none",tableRoot:"w-full caption-bottom border-separate border-spacing-0 text-sm text-foreground",tableCaption:"mt-3 text-sm text-muted-foreground",tableHeader:cn("relative z-[2] bg-transparent [&_tr]:bg-transparent",tableStickyHeaderCells),tableBody:"[&_tr:last-child>*]:border-b-0",tableFooter:"bg-muted/30 font-medium [&_tr>*]:border-t [&_tr>*]:border-border/70",tableFooterBar:cn("flex min-w-0 flex-wrap items-center justify-between gap-3 rounded-lg border border-border/70 bg-muted/20 px-4 py-3 text-sm text-foreground shadow-none",motionBase),tableFooterBarAttached:"-mt-px rounded-t-none border-t border-border/70 shadow-none",tableFooterBarLeading:"flex min-w-0 items-center gap-2",tableFooterBarContent:"min-w-0 flex-1",tableFooterBarActions:"ms-auto flex shrink-0 flex-wrap items-center gap-2",tableSplitRoot:"grid w-full min-w-0 grid-cols-[minmax(0,1fr)] grid-rows-[auto_minmax(0,1fr)_auto] caption-bottom border-separate border-spacing-0 text-sm text-foreground",tableSplitHeader:"block w-full min-w-0 shrink-0 overflow-x-hidden overflow-y-hidden bg-transparent",tableSplitBody:cn("block min-h-0 w-full min-w-0 max-w-full justify-self-stretch overflow-auto [scrollbar-gutter:stable]",tableScrollbarChrome),tableSplitFooter:"block w-full min-w-0 shrink-0 overflow-x-hidden overflow-y-hidden",tableSplitRow:"grid w-max min-w-full [grid-template-columns:var(--base-table-column-template)]",tableSplitHead:"flex min-w-0 overflow-hidden",tableSplitCell:"block min-w-0 overflow-hidden [overflow-wrap:anywhere]",tableRow:cn("[&>*]:border-b [&>*]:border-border/60 data-[state=selected]:bg-primary/5 data-[state=selected]:[&>*]:bg-primary/5",motionBase),tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.35)] hover:bg-[var(--base-table-row-hover-bg)] hover:[&>*]:bg-[var(--base-table-row-hover-bg)]",tableRowSelected:"bg-primary/5 [&>*]:bg-primary/5",tableRowDisabled:"!cursor-not-allowed opacity-60",tableHead:"relative h-11 whitespace-nowrap px-3 py-2 text-left align-middle text-xs font-semibold text-muted-foreground shadow-[inset_0_-1px_0_var(--base-table-header-separator)]",tableHeadContent:"flex min-w-0 items-center justify-between gap-2",tableHeadMain:"flex min-w-0 items-center gap-2",tableHeadIcon:"inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",tableHeadText:"grid min-w-0 gap-0.5",tableHeadLabel:"min-w-0 truncate text-xs font-semibold leading-4 text-foreground",tableHeadDescription:"min-w-0 truncate text-xs font-normal leading-4 text-muted-foreground",tableHeadMeta:"shrink-0 text-xs font-medium text-muted-foreground",tableHeadActions:"flex shrink-0 items-center gap-1",tableHeadSortButton:cn("inline-flex min-w-0 cursor-pointer items-center gap-1 rounded-sm text-left focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-60",motionBase),tableHeadSortIcon:cn("inline-flex h-3 w-3 shrink-0 items-center justify-center text-muted-foreground",motionTransform),tableHeadDragHandle:cn("inline-flex h-5 w-4 shrink-0 cursor-grab items-center justify-center rounded-sm text-muted-foreground hover:bg-muted active:cursor-grabbing focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-50",motionBase),tableHeadResizeHandle:cn("absolute end-0 top-1/2 h-7 w-2 -translate-y-1/2 cursor-col-resize touch-none rounded-sm after:absolute after:start-1/2 after:top-1/2 after:h-5 after:w-px after:-translate-x-1/2 after:-translate-y-1/2 after:bg-border hover:after:bg-primary focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-50",motionBase),tableCell:"min-w-0 px-3 py-2 align-middle text-sm text-foreground [overflow-wrap:anywhere]",tableCellAlignCenter:"text-center",tableCellAlignRight:"text-right",tableEmptyRow:"[&>*]:border-b [&>*]:border-border/60",tableEmptyCell:"px-4 py-10 text-center",tableEmptyContent:"mx-auto flex max-w-md flex-col items-center justify-center text-center",tableEmptyIcon:"mb-3 flex h-10 w-10 items-center justify-center rounded-full bg-muted text-muted-foreground",tableEmptyTitle:"text-sm font-semibold text-foreground",tableEmptyDescription:"mt-1 text-sm leading-6 text-muted-foreground",tableEmptyActions:"mt-4 flex flex-wrap items-center justify-center gap-2",tableLoadingRow:"[&>*]:border-b [&>*]:border-border/60",tableLoadingCell:"px-3 py-2",tableLoadingSkeleton:"h-4 w-full rounded-md bg-muted/70",layoutRoot:cn("grid min-w-0 overflow-hidden grid-rows-[auto_minmax(0,1fr)_auto] gap-3 rounded-lg border border-border/70 bg-background p-3 text-foreground",motionBase),layoutRootFull:"h-full min-h-0",layoutHeader:"min-w-0",layoutBody:"grid min-h-0 min-w-0 overflow-hidden gap-token-md",layoutSidebar:"min-h-0 min-w-0 overflow-hidden",layoutMain:"min-h-0 min-w-0 overflow-hidden",layoutAside:"min-h-0 min-w-0 overflow-hidden",layoutFooter:"min-w-0",layoutPane:cn("h-full max-h-full min-h-0 min-w-0 overflow-hidden rounded-lg bg-background text-foreground",motionBase),layoutPaneScrollable:"overflow-auto",layoutPaneBordered:"border border-border/70",layoutPaneMuted:"bg-muted/25",layoutPaneSoft:"bg-background/95 shadow-sm",layoutPaneTransparent:"bg-transparent shadow-none",layoutSplitRoot:"grid min-h-0 min-w-0 overflow-hidden",layoutSplitHorizontal:"grid-flow-col",layoutSplitVertical:"grid-flow-row",layoutSplitPane:"min-h-0 min-w-0 overflow-hidden",layoutSplitPrimary:"",layoutSplitSecondary:"",layoutResizeHandle:cn("group/resize relative z-10 flex shrink-0 items-center justify-center bg-transparent text-muted-foreground hover:bg-border/60 active:bg-border/70 focus-visible:bg-border/60 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30",motionInteractive),layoutResizeHandleHorizontal:"w-2 cursor-col-resize",layoutResizeHandleVertical:"h-2 cursor-row-resize",layoutResizeHandleDisabled:"cursor-default opacity-60",layoutResizeHandleIndicator:"rounded-full bg-muted-foreground/45 group-hover/resize:bg-primary/70"},densitySlots={compact:{buttonBase:"h-8 px-2.5 text-xs",buttonIconOnly:"h-8 w-8 px-0",badgeBase:"px-1.5 py-0 text-xs",panelHeader:"p-token-md",panelBody:"px-token-md pb-token-md text-xs",panelBodyStandalone:"pt-token-md",panelFooter:"px-token-md py-token-md",stateRoot:"min-h-36 px-4 py-7",stateIcon:"mb-3 h-10 w-10",fieldRoot:"gap-token-sm",fieldLabel:"text-xs",fieldDescription:"text-xs leading-5",fieldMessage:"text-xs leading-5",controlInput:"h-8 text-xs",controlTextarea:"min-h-20 text-xs",controlSelect:"h-8 text-xs",selectMenu:"text-xs",selectOption:"min-h-7 px-2 py-1 text-xs",switchTrack:"h-5 w-9",switchThumb:"h-3.5 w-3.5",checkboxBox:"h-3.5 w-3.5",checkboxLabel:"text-xs",checkboxDescription:"text-xs leading-5",radioOption:"px-2 py-1.5 text-xs",radioMarker:"h-3.5 w-3.5",radioIndicator:"h-1.5 w-1.5",radioLabel:"text-xs",radioDescription:"text-xs leading-5",dialogPanel:"max-w-md",dialogHeader:"px-4 py-3",dialogTitle:"text-sm leading-5",dialogDescription:"text-xs leading-5",dialogBody:"px-4 py-3 text-xs",dialogFooter:"px-4 py-3",dropdownMenu:"min-w-44 text-xs",dropdownItem:"px-2 py-1.5 text-xs",tooltipContent:"text-xs leading-4",noticeBase:"px-3 py-2 text-xs",dividerLabel:"text-xs",sectionHeaderRoot:"gap-token-sm",sectionHeaderTitle:"text-sm leading-5",sectionHeaderDescription:"text-xs leading-5",tabsList:"gap-token-xs p-token-xs",tabsTrigger:"px-2 py-1 text-xs",tabsPanel:"p-3 text-xs",segmentedRoot:"gap-token-xs p-token-xs",segmentedItem:"px-2 py-1 text-xs",progressTrack:"h-1.5",avatarRoot:"text-xs",toolbarRoot:"gap-token-sm px-token-md py-token-md",toolbarTitle:"text-xs",toolbarDescription:"text-xs leading-5",paginationButton:"h-7 min-w-7 px-2 text-xs",paginationPage:"h-7 min-w-7 px-2 text-xs",descriptionListRoot:"gap-2 text-xs",descriptionListItem:"px-2 py-1.5",descriptionListTerm:"text-xs",descriptionListValue:"text-xs leading-5",accordionTrigger:"px-3 py-2 text-xs",accordionPanel:"px-3 py-2 text-xs leading-5",menuContent:"min-w-40 p-0.5 text-xs",menuSubContent:"min-w-36 p-0.5 text-xs",menuLabel:"px-2 py-1 text-xs",menuItem:"min-h-7 px-2 py-1 text-xs",menuSubTrigger:"min-h-7 px-2 py-1 text-xs",menuItemShortcut:"text-xs",tableContainer:"[--base-table-header-height:2.25rem]",tableHead:"h-9 px-2 py-1.5 text-xs",tableCell:"px-2 py-1.5 text-xs",tableHeadLabel:"text-xs",tableHeadDescription:"text-xs leading-3",tableLoadingCell:"px-2 py-1.5",layoutRoot:"gap-token-md p-token-md",layoutBody:"gap-token-md",layoutPane:"rounded-md text-xs",layoutResizeHandleHorizontal:"w-1.5",layoutResizeHandleVertical:"h-1.5"},default:{buttonBase:"h-9"},comfortable:{buttonBase:"h-10 px-3.5",buttonIconOnly:"h-10 w-10 px-0",badgeBase:"px-2.5 py-1",panelHeader:"p-token-xl",panelBody:"px-token-xl pb-token-xl",panelBodyStandalone:"pt-token-xl",panelFooter:"px-token-xl py-token-lg",stateRoot:"min-h-56 px-8 py-12",stateIcon:"mb-5 h-14 w-14",fieldRoot:"gap-token-md",controlInput:"h-10",controlTextarea:"min-h-28",controlSelect:"h-10",selectMenu:"p-1.5",selectOption:"min-h-9 px-3 py-2",switchTrack:"h-7 w-12",switchThumb:"h-5 w-5",checkboxBox:"h-5 w-5",radioOption:"px-4 py-3",radioMarker:"h-5 w-5",radioIndicator:"h-2.5 w-2.5",dialogPanel:"max-w-xl",dialogHeader:"px-6 py-5",dialogBody:"px-6 py-5",dialogFooter:"px-6 py-5",dropdownMenu:"min-w-56",dropdownItem:"px-3 py-2.5",noticeBase:"px-5 py-4",sectionHeaderTitle:"text-lg leading-7",tabsTrigger:"px-3.5 py-2",tabsPanel:"p-5",segmentedItem:"px-3.5 py-2",progressTrack:"h-2.5",toolbarRoot:"px-token-xl py-token-lg",paginationButton:"h-9 min-w-9 px-3",paginationPage:"h-9 min-w-9 px-3",descriptionListItem:"px-4 py-3",accordionTrigger:"px-5 py-4",accordionPanel:"px-5 py-4",menuContent:"min-w-48 p-1.5",menuSubContent:"min-w-44 p-1.5",menuItem:"min-h-9 px-3 py-2",menuSubTrigger:"min-h-9 px-3 py-2",tableContainer:"[--base-table-header-height:3rem]",tableHead:"h-12 px-4 py-3",tableCell:"px-4 py-3",tableLoadingCell:"px-4 py-3",layoutRoot:"gap-token-lg p-token-lg",layoutBody:"gap-token-lg",layoutPane:"rounded-xl",layoutResizeHandleHorizontal:"w-2.5",layoutResizeHandleVertical:"h-2.5"}},radiusSlots={none:{buttonBase:"rounded-none",badgeBase:"rounded-none",panelRoot:"rounded-none",stateRoot:"rounded-none",stateIcon:"rounded-none",controlWrapper:"rounded-none",selectMenu:"rounded-none",selectOption:"rounded-none",switchTrack:"rounded-none",switchThumb:"rounded-none",checkboxBox:"rounded-none",radioOption:"rounded-none",dialogPanel:"rounded-none",dialogClose:"rounded-none",dropdownMenu:"rounded-none",dropdownItem:"rounded-none",tooltipContent:"rounded-none",noticeBase:"rounded-none",tabsList:"rounded-none",tabsTrigger:"rounded-none",tabsPanel:"rounded-none",segmentedRoot:"rounded-none",segmentedItem:"rounded-none",progressTrack:"rounded-none",progressIndicator:"rounded-none",skeletonRoot:"rounded-none",avatarRoot:"rounded-none",avatarStatus:"rounded-none",toolbarRoot:"rounded-none",paginationButton:"rounded-none",paginationPage:"rounded-none",descriptionListItem:"rounded-none",accordionItem:"rounded-none",menuContent:"rounded-none",menuItem:"rounded-none",menuSubTrigger:"rounded-none",menuSubContent:"rounded-none",tableContainer:"rounded-none",tableEmptyIcon:"rounded-none",tableLoadingSkeleton:"rounded-none",layoutRoot:"rounded-none",layoutPane:"rounded-none"},sm:{buttonBase:"rounded-sm",badgeBase:"rounded-sm",panelRoot:"rounded-sm",stateRoot:"rounded-sm",stateIcon:"rounded-sm",controlWrapper:"rounded-sm",selectMenu:"rounded-sm",selectOption:"rounded-sm",switchTrack:"rounded-sm",switchThumb:"rounded-sm",checkboxBox:"rounded-sm",radioOption:"rounded-sm",dialogPanel:"rounded-sm",dialogClose:"rounded-sm",dropdownMenu:"rounded-sm",dropdownItem:"rounded-sm",tooltipContent:"rounded-sm",noticeBase:"rounded-sm",tabsList:"rounded-sm",tabsTrigger:"rounded-sm",tabsPanel:"rounded-sm",segmentedRoot:"rounded-sm",segmentedItem:"rounded-sm",progressTrack:"rounded-sm",progressIndicator:"rounded-sm",skeletonRoot:"rounded-sm",avatarRoot:"rounded-sm",avatarStatus:"rounded-sm",toolbarRoot:"rounded-sm",paginationButton:"rounded-sm",paginationPage:"rounded-sm",descriptionListItem:"rounded-sm",accordionItem:"rounded-sm",menuContent:"rounded-sm",menuItem:"rounded-sm",menuSubTrigger:"rounded-sm",menuSubContent:"rounded-sm",tableContainer:"rounded-sm",tableEmptyIcon:"rounded-sm",tableLoadingSkeleton:"rounded-sm",layoutRoot:"rounded-sm",layoutPane:"rounded-sm"},md:{},lg:{buttonBase:"rounded-lg",badgeBase:"rounded-lg",panelRoot:"rounded-xl",stateRoot:"rounded-xl",stateIcon:"rounded-xl",controlWrapper:"rounded-lg",selectMenu:"rounded-lg",selectOption:"rounded-md",switchTrack:"rounded-full",switchThumb:"rounded-full",checkboxBox:"rounded-md",radioOption:"rounded-xl",dialogPanel:"rounded-xl",dialogClose:"rounded-lg",dropdownMenu:"rounded-lg",dropdownItem:"rounded-md",tooltipContent:"rounded-md",noticeBase:"rounded-xl",tabsList:"rounded-xl",tabsTrigger:"rounded-lg",tabsPanel:"rounded-xl",segmentedRoot:"rounded-xl",segmentedItem:"rounded-lg",skeletonRoot:"rounded-lg",toolbarRoot:"rounded-xl",descriptionListItem:"rounded-lg",accordionItem:"rounded-xl",menuContent:"rounded-lg",menuItem:"rounded-md",menuSubTrigger:"rounded-md",menuSubContent:"rounded-lg",tableContainer:"rounded-xl",tableEmptyIcon:"rounded-xl",tableLoadingSkeleton:"rounded-lg",layoutRoot:"rounded-xl",layoutPane:"rounded-xl"},xl:{buttonBase:"rounded-xl",badgeBase:"rounded-xl",panelRoot:"rounded-2xl",stateRoot:"rounded-2xl",stateIcon:"rounded-2xl",controlWrapper:"rounded-xl",selectMenu:"rounded-xl",selectOption:"rounded-lg",switchTrack:"rounded-full",switchThumb:"rounded-full",checkboxBox:"rounded-lg",radioOption:"rounded-2xl",dialogPanel:"rounded-2xl",dialogClose:"rounded-xl",dropdownMenu:"rounded-xl",dropdownItem:"rounded-lg",tooltipContent:"rounded-lg",noticeBase:"rounded-2xl",tabsList:"rounded-2xl",tabsTrigger:"rounded-xl",tabsPanel:"rounded-2xl",segmentedRoot:"rounded-2xl",segmentedItem:"rounded-xl",skeletonRoot:"rounded-xl",toolbarRoot:"rounded-2xl",paginationButton:"rounded-xl",paginationPage:"rounded-xl",descriptionListItem:"rounded-xl",accordionItem:"rounded-2xl",menuContent:"rounded-xl",menuItem:"rounded-lg",menuSubTrigger:"rounded-lg",menuSubContent:"rounded-xl",tableContainer:"rounded-2xl",tableEmptyIcon:"rounded-2xl",tableLoadingSkeleton:"rounded-xl",layoutRoot:"rounded-2xl",layoutPane:"rounded-2xl"},full:{buttonBase:"rounded-full",badgeBase:"rounded-full",panelRoot:"rounded-2xl",stateRoot:"rounded-2xl",stateIcon:"rounded-full",controlWrapper:"rounded-full",selectMenu:"rounded-2xl",selectOption:"rounded-full",switchTrack:"rounded-full",switchThumb:"rounded-full",checkboxBox:"rounded-full",radioOption:"rounded-2xl",dialogPanel:"rounded-2xl",dialogClose:"rounded-full",dropdownMenu:"rounded-2xl",dropdownItem:"rounded-full",tooltipContent:"rounded-full",noticeBase:"rounded-2xl",tabsList:"rounded-full",tabsTrigger:"rounded-full",tabsPanel:"rounded-2xl",segmentedRoot:"rounded-full",segmentedItem:"rounded-full",progressTrack:"rounded-full",progressIndicator:"rounded-full",skeletonRoot:"rounded-full",avatarRoot:"rounded-full",avatarStatus:"rounded-full",toolbarRoot:"rounded-2xl",paginationButton:"rounded-full",paginationPage:"rounded-full",descriptionListItem:"rounded-2xl",accordionItem:"rounded-2xl",menuContent:"rounded-2xl",menuItem:"rounded-full",menuSubTrigger:"rounded-full",menuSubContent:"rounded-2xl",tableContainer:"rounded-2xl",tableEmptyIcon:"rounded-full",tableLoadingSkeleton:"rounded-full",layoutRoot:"rounded-2xl",layoutPane:"rounded-2xl"}},borderSlots={none:{buttonBase:"border-transparent",badgeBase:"border-transparent",panelRoot:"border-transparent",panelFooter:"border-transparent",stateRoot:"border-transparent",controlWrapper:"border-transparent",selectMenu:"border-transparent",switchTrack:"border-transparent",checkboxBox:"border-transparent",radioOption:"border-transparent",radioMarker:"border-transparent",dialogPanel:"border-transparent",dialogHeader:"border-transparent",dialogFooter:"border-transparent",dropdownMenu:"border-transparent",tooltipContent:"border-transparent",noticeBase:"border-transparent",dividerRoot:"border-transparent",tabsList:"border-transparent",tabsPanel:"border-transparent",segmentedRoot:"border-transparent",avatarRoot:"border-transparent",toolbarRoot:"border-transparent",paginationButton:"border-transparent",descriptionListItem:"border-transparent",accordionItem:"border-transparent",accordionPanel:"border-transparent",menuContent:"border-transparent",menuSeparator:"bg-transparent",menuSubContent:"border-transparent",tableContainer:"border-transparent [--base-table-header-separator:transparent]",tableHeader:"border-transparent",tableFooter:"[&_tr>*]:border-transparent",tableFooterBar:"border-transparent",tableFooterBarAttached:"border-t border-transparent",tableRow:"[&>*]:border-transparent",tableEmptyRow:"[&>*]:border-transparent",tableLoadingRow:"[&>*]:border-transparent",layoutRoot:"border-transparent",layoutPaneBordered:"border-transparent",layoutResizeHandle:"bg-transparent hover:bg-transparent active:bg-transparent focus-visible:bg-transparent"},subtle:{buttonDefault:"border-border/60",badgeDefault:"border-border/60",panelRoot:"border-border/60",panelFooter:"border-border/60",stateRoot:"border-border/60",controlWrapper:"border-border/60",selectMenu:"border-border/60",switchTrack:"border-border/60",checkboxBox:"border-border/60",radioOption:"border-border/60",radioMarker:"border-border/60",dialogPanel:"border-border/60",dialogHeader:"border-border/60",dialogFooter:"border-border/60",dropdownMenu:"border-border/60",tooltipContent:"border-border/60",noticeDefault:"border-border/60",dividerRoot:"border-border/60",tabsList:"border-border/60",tabsPanel:"border-border/60",segmentedRoot:"border-border/60",avatarRoot:"border-border/60",toolbarRoot:"border-border/60",paginationButton:"border-border/60",descriptionListItem:"border-border/60",accordionItem:"border-border/60",accordionPanel:"border-border/60",menuContent:"border-border/60",menuSeparator:"bg-border/60",menuSubContent:"border-border/60",tableContainer:"border-border/60 [--base-table-header-separator:hsl(var(--border)_/_0.6)]",tableHeader:"border-border/60",tableFooter:"[&_tr>*]:border-border/60",tableFooterBar:"border-border/60",tableFooterBarAttached:"border-t border-border/60",tableRow:"[&>*]:border-border/50",tableEmptyRow:"[&>*]:border-border/50",tableLoadingRow:"[&>*]:border-border/50",layoutRoot:"border-border/60",layoutPaneBordered:"border-border/60"},solid:{},strong:{buttonDefault:"border-foreground/20",badgeDefault:"border-foreground/20",panelRoot:"border-foreground/20",panelFooter:"border-foreground/20",stateRoot:"border-foreground/20",controlWrapper:"border-foreground/20",selectMenu:"border-foreground/20",switchTrack:"border-foreground/20",checkboxBox:"border-foreground/20",radioOption:"border-foreground/20",radioMarker:"border-foreground/20",dialogPanel:"border-foreground/20",dialogHeader:"border-foreground/15",dialogFooter:"border-foreground/15",dropdownMenu:"border-foreground/20",tooltipContent:"border-foreground/20",noticeDefault:"border-foreground/20",dividerRoot:"border-foreground/20",tabsList:"border-foreground/20",tabsPanel:"border-foreground/20",segmentedRoot:"border-foreground/20",avatarRoot:"border-foreground/20",toolbarRoot:"border-foreground/20",paginationButton:"border-foreground/20",descriptionListItem:"border-foreground/20",accordionItem:"border-foreground/20",accordionPanel:"border-foreground/20",menuContent:"border-foreground/20",menuSeparator:"bg-foreground/15",menuSubContent:"border-foreground/20",tableContainer:"border-foreground/20 [--base-table-header-separator:hsl(var(--foreground)_/_0.15)]",tableHeader:"border-foreground/20",tableFooter:"[&_tr>*]:border-foreground/20",tableFooterBar:"border-foreground/20",tableFooterBarAttached:"border-t border-foreground/20",tableRow:"[&>*]:border-foreground/15",tableEmptyRow:"[&>*]:border-foreground/15",tableLoadingRow:"[&>*]:border-foreground/15",layoutRoot:"border-foreground/20",layoutPaneBordered:"border-foreground/20",layoutResizeHandle:"hover:bg-foreground/15 active:bg-foreground/20 focus-visible:bg-foreground/15"}},backgroundSlots={plain:{},muted:{buttonDefault:"bg-muted/20 hover:bg-muted/45",panelRoot:"bg-card",panelFooter:"bg-muted/20",stateRoot:"bg-muted/20",controlWrapper:"bg-background",selectMenu:"bg-background",selectOptionActive:"bg-muted/70 text-foreground",checkboxBox:"bg-background",radioOption:"bg-card hover:bg-muted/45",radioMarker:"bg-background",dialogPanel:"bg-card",dropdownMenu:"bg-background",dropdownItem:"hover:bg-muted/60",tooltipContent:"bg-popover",noticeDefault:"bg-muted/20",tabsList:"bg-muted/35",tabsTriggerActive:"bg-background",tabsPanel:"bg-card",segmentedRoot:"bg-muted/35",segmentedItemActive:"bg-background",progressTrack:"bg-muted/60",skeletonRoot:"bg-muted",toolbarRoot:"bg-card",paginationButton:"bg-background hover:bg-muted/60",paginationPage:"bg-muted/60",descriptionListItem:"bg-card",accordionItem:"bg-card",menuContent:"bg-background",menuItem:"focus:bg-muted/70 data-[highlighted]:bg-muted/70",menuSubTrigger:"focus:bg-muted/70 data-[highlighted]:bg-muted/70 data-[state=open]:bg-muted/70",menuSubContent:"bg-background",tableContainer:"bg-background/95 [scrollbar-gutter:stable]",tableFooter:"bg-muted/35",tableFooterBar:"bg-muted/30 shadow-none",tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.45)]",tableLoadingSkeleton:"bg-muted",layoutRoot:"bg-card",layoutPane:"bg-card",layoutPaneMuted:"bg-muted/35",layoutResizeHandle:"hover:bg-border/70 active:bg-border/80 focus-visible:bg-border/70"},soft:{buttonDefault:"bg-muted/30 hover:bg-muted/55",panelRoot:"bg-background/95 shadow-sm",stateRoot:"bg-background/95 shadow-sm",controlWrapper:"bg-background/95",selectMenu:"bg-background/95 shadow-xl",selectOptionActive:"bg-muted/60 text-foreground",checkboxBox:"bg-background/95",radioOption:"bg-background/95 shadow-sm hover:bg-muted/35",radioMarker:"bg-background/95",dialogPanel:"bg-background/95 shadow-xl",dropdownMenu:"bg-background/95 shadow-xl",dropdownItem:"hover:bg-muted/55",tooltipContent:"bg-popover shadow-xl",noticeDefault:"bg-background/95 shadow-sm",tabsList:"bg-background/60 shadow-sm",tabsTriggerActive:"bg-background",tabsPanel:"bg-background/95 shadow-sm",segmentedRoot:"bg-background/60 shadow-sm",segmentedItemActive:"bg-background",skeletonRoot:"bg-background/80",toolbarRoot:"bg-background/95 shadow-sm",paginationButton:"bg-background/95 hover:bg-muted/55",descriptionListItem:"bg-background/95 shadow-sm",accordionItem:"bg-background/95 shadow-sm",menuContent:"bg-background/95 shadow-xl",menuItem:"focus:bg-muted/60 data-[highlighted]:bg-muted/60",menuSubTrigger:"focus:bg-muted/60 data-[highlighted]:bg-muted/60 data-[state=open]:bg-muted/60",menuSubContent:"bg-background/95 shadow-xl",tableContainer:"bg-background/95 shadow-sm [scrollbar-gutter:stable]",tableFooter:"bg-muted/25",tableFooterBar:"bg-muted/25 shadow-none",tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.35)]",tableLoadingSkeleton:"bg-muted/65",layoutRoot:"bg-background/95 shadow-sm",layoutPane:"bg-background/95 shadow-sm",layoutPaneSoft:"bg-background/95 shadow-md"},glass:{buttonBase:"backdrop-blur-md",buttonDefault:"border-white/10 bg-white/[0.08] text-foreground hover:bg-white/[0.14]",badgeDefault:"border-white/10 bg-white/[0.08] text-foreground",panelRoot:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",panelFooter:"border-white/10 bg-white/[0.05]",stateRoot:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",stateIcon:"bg-white/10 text-foreground",controlWrapper:"border-white/10 bg-white/[0.08] text-foreground backdrop-blur-md",selectMenu:"border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",selectOption:"text-foreground",selectOptionActive:"bg-white/[0.14] text-foreground",selectOptionSelected:"bg-white/[0.18] text-foreground",switchTrack:"border-white/10 bg-white/[0.12] backdrop-blur-md",checkboxBox:"border-white/10 bg-white/[0.08] backdrop-blur-md",checkboxBoxChecked:"border-white/20 bg-white/[0.22] text-foreground",radioOption:"border-white/10 bg-white/[0.06] backdrop-blur-md hover:bg-white/[0.10]",radioMarker:"border-white/10 bg-white/[0.08] backdrop-blur-md",radioMarkerChecked:"border-white/25 bg-white/[0.16]",dialogOverlay:"bg-background/45 backdrop-blur-md",dialogPanel:"border-white/10 bg-white/[0.08] shadow-2xl backdrop-blur-md",dialogHeader:"border-white/10",dialogFooter:"border-white/10",dropdownMenu:"border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",dropdownItem:"text-foreground hover:bg-white/[0.14]",tooltipContent:"border-foreground/10 bg-background/15 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",noticeDefault:"border-white/10 bg-white/[0.08] text-foreground backdrop-blur-md",dividerRoot:"border-white/15",tabsList:"border-white/10 bg-white/[0.08] backdrop-blur-md",tabsTrigger:"text-muted-foreground hover:bg-white/[0.12] hover:text-foreground",tabsTriggerActive:"bg-white/[0.16] text-foreground shadow-none",tabsPanel:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",segmentedRoot:"border-white/10 bg-white/[0.08] backdrop-blur-md",segmentedItem:"text-muted-foreground hover:bg-white/[0.12] hover:text-foreground",segmentedItemActive:"bg-white/[0.16] text-foreground shadow-none",progressTrack:"bg-white/[0.12]",skeletonRoot:"bg-white/[0.16]",avatarRoot:"border-white/10 bg-white/[0.12] text-foreground",avatarFallback:"bg-white/[0.12] text-foreground",avatarStatus:"border-background",toolbarRoot:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",paginationButton:"border-white/10 bg-white/[0.08] text-foreground hover:bg-white/[0.14]",paginationPage:"bg-white/[0.12] text-foreground",descriptionListItem:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",accordionItem:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",accordionPanel:"border-white/10",menuContent:"border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",menuSeparator:"bg-white/10",menuItem:"text-foreground focus:bg-white/[0.14] focus:text-foreground data-[highlighted]:bg-white/[0.14] data-[highlighted]:text-foreground",menuSubTrigger:"text-foreground focus:bg-white/[0.14] focus:text-foreground data-[highlighted]:bg-white/[0.14] data-[highlighted]:text-foreground data-[state=open]:bg-white/[0.16]",menuSubContent:"border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",tableContainer:"border-foreground/10 bg-background/[0.06] shadow-none backdrop-blur-md [scrollbar-gutter:stable] [--base-table-sticky-header-bg:hsl(var(--background)/0.94)] [--base-table-header-separator:hsl(var(--foreground)/0.24)]",tableHeader:"border-white/10",tableFooter:"bg-white/[0.05] [&_tr>*]:border-white/10",tableFooterBar:"border-white/10 bg-white/[0.05] shadow-none backdrop-blur-md",tableFooterBarAttached:"border-t border-white/10",tableRow:"[&>*]:border-white/10",tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--foreground)/0.08)]",tableHeadLabel:"text-foreground",tableLoadingSkeleton:"bg-white/[0.16]",layoutRoot:"border-white/10 bg-white/[0.05] shadow-none backdrop-blur-md",layoutPane:"border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",layoutPaneMuted:"bg-white/[0.08]",layoutPaneSoft:"bg-white/[0.10] shadow-none backdrop-blur-md",layoutResizeHandle:"text-foreground/65 hover:bg-white/10 active:bg-white/15 focus-visible:bg-white/10",layoutResizeHandleIndicator:"bg-white/45 group-hover/resize:bg-white/75"},dark:{buttonBase:"border-white/15 text-white shadow-lg backdrop-blur",buttonDefault:"bg-black/30 hover:bg-black/[0.45]",buttonPrimary:"border-white/25 bg-white/20 text-white hover:bg-white/25",buttonMuted:"border-white/10 bg-black/20 text-white/70 hover:bg-black/[0.35] hover:text-white",badgeDefault:"border-white/10 bg-white/[0.08] text-white",badgeMuted:"border-white/10 bg-black/20 text-white/70",panelRoot:"border-white/10 bg-slate-950 text-white shadow-none",panelTitle:"text-white",panelDescription:"text-white/65",panelBody:"text-white/85",panelFooter:"border-white/10 bg-white/[0.04]",stateRoot:"border-white/10 bg-slate-950 text-white shadow-none",stateIcon:"bg-white/10 text-white/75",stateTitle:"text-white",stateDescription:"text-white/65",fieldLabel:"text-white",fieldDescription:"text-white/65",fieldMessage:"text-white/65",controlWrapper:"border-white/15 bg-black/30 text-white shadow-lg backdrop-blur focus-within:border-white/35",controlBase:"text-white placeholder:text-white/45",selectChevron:"text-white/65",selectMenu:"border-white/15 bg-slate-950 text-white shadow-2xl",selectOption:"text-white",selectOptionActive:"bg-white/[0.12] text-white",selectOptionSelected:"bg-white/[0.16] text-white",selectPlaceholder:"text-white/45",switchTrack:"border-white/15 bg-black/30 shadow-lg backdrop-blur",switchChecked:"border-white/25 bg-white/25 text-white",switchLabel:"text-white",switchDescription:"text-white/65",checkboxBox:"border-white/15 bg-black/30 text-white shadow-lg backdrop-blur",checkboxBoxChecked:"border-white/25 bg-white/25 text-white",checkboxLabel:"text-white",checkboxDescription:"text-white/65",radioOption:"border-white/10 bg-white/[0.06] text-white hover:bg-white/[0.08]",radioMarker:"border-white/15 bg-black/30 text-white shadow-lg backdrop-blur",radioMarkerChecked:"border-white/25 bg-white/25",radioIndicator:"bg-white",radioLabel:"text-white",radioDescription:"text-white/65",dialogOverlay:"bg-slate-950/75",dialogPanel:"border-white/10 bg-slate-950 text-white shadow-2xl",dialogHeader:"border-white/10",dialogTitle:"text-white",dialogDescription:"text-white/65",dialogBody:"text-white/85",dialogFooter:"border-white/10",dialogClose:"text-white/65 hover:bg-white/[0.08] hover:text-white",dropdownMenu:"border-white/15 bg-slate-950 text-white shadow-2xl",dropdownLabel:"text-white/55",dropdownSeparator:"bg-white/15",dropdownItem:"text-white hover:bg-white/[0.10]",dropdownItemDescription:"text-white/55",dropdownItemShortcut:"text-white/55",tooltipContent:"border-white/15 bg-slate-950 text-white shadow-2xl",noticeDefault:"border-white/10 bg-white/[0.08] text-white",noticeMuted:"border-white/10 bg-black/20 text-white/70",dividerRoot:"border-white/15",dividerLabel:"text-white/55",sectionHeaderEyebrow:"text-white/55",sectionHeaderTitle:"text-white",sectionHeaderDescription:"text-white/65",tabsList:"border-white/10 bg-white/[0.08]",tabsTrigger:"text-white/65 hover:bg-white/[0.12] hover:text-white",tabsTriggerActive:"bg-white/[0.16] text-white shadow-none",tabsPanel:"border-white/10 bg-white/[0.06] text-white",segmentedRoot:"border-white/10 bg-white/[0.08]",segmentedItem:"text-white/65 hover:bg-white/[0.12] hover:text-white",segmentedItemActive:"bg-white/[0.16] text-white shadow-none",progressTrack:"bg-white/[0.12]",progressLabel:"text-white",progressValue:"text-white/65",skeletonRoot:"bg-white/[0.14]",avatarRoot:"border-white/15 bg-white/[0.10] text-white",avatarFallback:"bg-white/[0.10] text-white/75",avatarText:"text-white",avatarStatus:"border-slate-950",toolbarRoot:"border-white/10 bg-white/[0.06] text-white",toolbarTitle:"text-white",toolbarDescription:"text-white/65",breadcrumbLink:"text-white/65 hover:text-white",breadcrumbCurrent:"text-white",breadcrumbSeparator:"text-white/45",paginationInfo:"text-white/65",paginationButton:"border-white/10 bg-white/[0.08] text-white hover:bg-white/[0.14]",paginationPage:"bg-white/[0.14] text-white",descriptionListItem:"border-white/10 bg-white/[0.06]",descriptionListTerm:"text-white/55",descriptionListValue:"text-white",accordionItem:"border-white/10 bg-white/[0.06]",accordionTrigger:"text-white hover:bg-white/[0.08]",accordionPanel:"border-white/10 text-white/70",tableContainer:"border-foreground/10 bg-background text-foreground shadow-none [scrollbar-gutter:stable] [--base-table-sticky-header-bg:hsl(var(--background)/0.98)] [--base-table-header-separator:hsl(var(--foreground)/0.16)]",tableRoot:"text-white",tableHeader:"border-white/10",tableFooter:"bg-white/[0.05] [&_tr>*]:border-white/10",tableFooterBar:"border-white/10 bg-white/[0.05] text-white/65",tableFooterBarAttached:"border-t border-white/10",tableRow:"[&>*]:border-white/10",tableRowInteractive:"cursor-pointer [--base-table-row-hover-bg:hsl(var(--foreground)/0.06)]",tableHead:"text-white/65",tableHeadLabel:"text-white",tableHeadDescription:"text-white/55",tableHeadMeta:"text-white/55",tableHeadIcon:"text-white/55",tableHeadSortIcon:"text-white/55",tableHeadDragHandle:"text-white/55 hover:bg-white/[0.08]",tableHeadResizeHandle:"after:bg-white/20 hover:after:bg-white/60",tableCell:"text-white/85",tableEmptyIcon:"bg-white/10 text-white/65",tableEmptyTitle:"text-white",tableEmptyDescription:"text-white/60",menuContent:"border-white/10 bg-slate-950 text-white shadow-2xl",menuLabel:"text-white/55",menuSeparator:"bg-white/10",menuItem:"text-white focus:bg-white/[0.10] focus:text-white data-[highlighted]:bg-white/[0.10] data-[highlighted]:text-white",menuItemDefault:"text-white",menuItemPrimary:"text-primary focus:text-primary data-[highlighted]:text-primary",menuItemSuccess:"text-[hsl(var(--success,142_69%_58%))] focus:text-[hsl(var(--success,142_69%_58%))] data-[highlighted]:text-[hsl(var(--success,142_69%_58%))]",menuItemWarning:"text-[hsl(var(--warning-foreground,53_98%_77%))] focus:text-[hsl(var(--warning-foreground,53_98%_77%))] data-[highlighted]:text-[hsl(var(--warning-foreground,53_98%_77%))]",menuItemDanger:"text-destructive-text focus:text-destructive-text data-[highlighted]:text-destructive-text",menuItemMuted:"text-white/65 focus:text-white data-[highlighted]:text-white",menuItemShortcut:"text-white/45",menuSubTrigger:"text-white focus:bg-white/[0.10] focus:text-white data-[highlighted]:bg-white/[0.10] data-[highlighted]:text-white data-[state=open]:bg-white/[0.12]",menuSubTriggerIcon:"text-white/55",menuSubContent:"border-white/10 bg-slate-950 text-white shadow-2xl",tableLoadingSkeleton:"bg-white/[0.14]",layoutRoot:"border-white/10 bg-slate-950 text-white shadow-none",layoutPane:"border-white/10 bg-slate-950 text-white shadow-none",layoutPaneMuted:"bg-white/[0.06]",layoutPaneSoft:"bg-white/[0.08] shadow-none",layoutResizeHandle:"text-white/65 hover:bg-white/10 active:bg-white/15 focus-visible:bg-white/10",layoutResizeHandleIndicator:"bg-white/45 group-hover/resize:bg-white/75"}},presetDefaults={default:{density:"default",radius:"md",border:"solid",background:"plain"},soft:{density:"default",radius:"lg",border:"subtle",background:"soft"},compact:{density:"compact",radius:"md",border:"subtle",background:"muted"},"tinted-glass":{density:"default",radius:"lg",border:"subtle",background:"glass"},glass:{density:"default",radius:"xl",border:"subtle",background:"glass"},"hard-edge":{density:"compact",radius:"none",border:"strong",background:"plain"}},presetSlots={soft:{buttonBase:"font-medium",panelRoot:"border-border/70",controlWrapper:"font-medium",tabsTrigger:"font-medium",segmentedItem:"font-medium",toolbarRoot:"border-border/70",tableContainer:"border-border/70",tableFooterBar:"border-border/70",tableHeadLabel:"font-semibold",menuItemLabel:"font-medium"},compact:{buttonBase:"text-xs",badgeBase:"text-xs",fieldLabel:"text-xs",controlBase:"text-xs",selectOption:"text-xs",menuItem:"text-xs",menuSubTrigger:"text-xs",noticeBase:"text-xs",sectionHeaderTitle:"text-sm",tabsTrigger:"text-xs",segmentedItem:"text-xs",toolbarTitle:"text-xs",paginationRoot:"text-xs"},"tinted-glass":{buttonPrimary:"border-primary/25 bg-primary/15 text-primary-foreground hover:bg-primary/20",badgePrimary:"border-primary/25 bg-primary/15 text-primary-foreground",noticePrimary:"border-primary/25 bg-primary/15 text-primary-foreground",progressIndicator:"bg-primary",avatarStatus:"border-background"},glass:{panelRoot:"shadow-[0_24px_80px_hsl(var(--foreground)/0.12)]",stateRoot:"shadow-[0_24px_80px_hsl(var(--foreground)/0.12)]",noticeBase:"shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",tabsPanel:"shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",toolbarRoot:"shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",descriptionListItem:"shadow-[0_12px_40px_hsl(var(--foreground)/0.08)]",accordionItem:"shadow-[0_12px_40px_hsl(var(--foreground)/0.08)]"},"hard-edge":{buttonBase:"shadow-none",panelRoot:"shadow-none",stateRoot:"shadow-none",controlWrapper:"shadow-none",selectMenu:"shadow-none",menuContent:"shadow-none",menuSubContent:"shadow-none",noticeBase:"shadow-none",tabsList:"shadow-none",tabsTriggerActive:"shadow-none",tabsPanel:"shadow-none",segmentedRoot:"shadow-none",segmentedItemActive:"shadow-none",toolbarRoot:"shadow-none",descriptionListItem:"shadow-none",accordionItem:"shadow-none"}};function getPresetDefaults(preset){return presetDefaults[preset]??presetDefaults.default}var slotKeys=Object.keys(baseSlots);function mergeSlots(...sources){return slotKeys.reduce((resolved,key3)=>(resolved[key3]=cn(...sources.map(source=>source?.[key3])),resolved),{})}function mergeStyles(...styleSets){return Object.assign({},...styleSets.filter(Boolean))}function resolveBaseAppearance(appearance2){let preset=appearance2?.preset??"default",variant=appearance2?.variant??"default",defaults=getPresetDefaults(preset),density=appearance2?.density??defaults.density??"default",state=appearance2?.state??"idle",radius=appearance2?.radius??defaults.radius??"md",border=appearance2?.border??defaults.border??"solid",background=appearance2?.background??defaults.background??"plain";return {preset,variant,density,state,radius,border,background,styles:mergeStyles(emptyStyles,appearance2?.styles),slots:mergeSlots(baseSlots,presetSlots[preset],densitySlots[density],radiusSlots[radius],borderSlots[border],backgroundSlots[background],appearance2?.slots)}}function getBaseButtonToneClassName(theme,tone="default",active=false){return cn(tone==="default"&&theme.slots.buttonDefault,tone==="primary"&&theme.slots.buttonPrimary,tone==="success"&&theme.slots.buttonSuccess,tone==="warning"&&theme.slots.buttonWarning,tone==="danger"&&theme.slots.buttonDanger,tone==="muted"&&theme.slots.buttonMuted,active&&theme.slots.buttonActive)}function getBaseBadgeToneClassName(theme,tone="default"){return cn(tone==="default"&&theme.slots.badgeDefault,tone==="primary"&&theme.slots.badgePrimary,tone==="success"&&theme.slots.badgeSuccess,tone==="warning"&&theme.slots.badgeWarning,tone==="danger"&&theme.slots.badgeDanger,tone==="muted"&&theme.slots.badgeMuted)}function getBaseNoticeToneClassName(theme,tone="default"){return cn(tone==="default"&&theme.slots.noticeDefault,tone==="primary"&&theme.slots.noticePrimary,tone==="success"&&theme.slots.noticeSuccess,tone==="warning"&&theme.slots.noticeWarning,tone==="danger"&&theme.slots.noticeDanger,tone==="muted"&&theme.slots.noticeMuted)}function getBaseTypographyToneClassName(theme,tone="default"){return cn(tone==="default"&&theme.slots.typographyToneDefault,tone==="muted"&&theme.slots.typographyToneMuted,tone==="primary"&&theme.slots.typographyTonePrimary,tone==="success"&&theme.slots.typographyToneSuccess,tone==="warning"&&theme.slots.typographyToneWarning,tone==="danger"&&theme.slots.typographyToneDanger,tone==="inherit"&&theme.slots.typographyToneInherit)}function getBaseTextSizeClassName(theme,size2="md"){return cn(size2==="xs"&&theme.slots.textSizeXs,size2==="sm"&&theme.slots.textSizeSm,size2==="md"&&theme.slots.textSizeMd,size2==="lg"&&theme.slots.textSizeLg,size2==="xl"&&theme.slots.textSizeXl)}function getBaseHeadingSizeClassName(theme,size2="lg"){return cn(size2==="xs"&&theme.slots.headingSizeXs,size2==="sm"&&theme.slots.headingSizeSm,size2==="md"&&theme.slots.headingSizeMd,size2==="lg"&&theme.slots.headingSizeLg,size2==="xl"&&theme.slots.headingSizeXl,size2==="2xl"&&theme.slots.headingSize2xl)}var cssLengthPattern=/^(?:0+(?:\.0+)?|(?:\d+(?:\.\d+)?|\.\d+)(?:%|cap|ch|cm|dvb|dvh|dvi|dvw|em|ex|ic|in|lh|lvb|lvh|lvi|lvw|mm|pc|pt|px|q|rem|rlh|svb|svh|svi|svw|vb|vh|vi|vmax|vmin|vw))$/i,cssLengthFunctions=new Set(["calc","clamp","max","min","var"]),unsafeCssValuePattern=/[;{}<>"'\\\u0000-\u001f\u007f]/;function hasBalancedDelimiters(value){let pairs={")":"(","]":"["},stack=[];for(let character of value)if(character==="("||character==="[")stack.push(character);else if((character===")"||character==="]")&&stack.pop()!==pairs[character])return false;return stack.length===0}function isSupportedCssLengthFunction(value){let match=/^([a-z]+)\(([\s\S]+)\)$/i.exec(value);return !match||!cssLengthFunctions.has(match[1].toLowerCase())||!match[2].trim()||!hasBalancedDelimiters(value)?false:match[1].toLowerCase()==="var"?/^\s*--[a-z0-9_-]+(?:\s*,[\s\S]+)?\s*$/i.test(match[2]):cssLengthPattern.test(match[2].trim())||/\b(?:calc|clamp|max|min|var)\s*\(/i.test(match[2])||/(?:^|[\s,(])(?:0+(?:\.0+)?|(?:\d+(?:\.\d+)?|\.\d+)(?:%|cap|ch|cm|dvb|dvh|dvi|dvw|em|ex|ic|in|lh|lvb|lvh|lvi|lvw|mm|pc|pt|px|q|rem|rlh|svb|svh|svi|svw|vb|vh|vi|vmax|vmin|vw))(?:$|[\s,)])/i.test(match[2])}function resolveBaseLayoutLength(componentName,propName,value){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new RangeError(`${componentName} ${propName} must be a finite, non-negative number or a supported CSS length string.`);return `${value}px`}if(typeof value!="string")throw new TypeError(`${componentName} ${propName} must be a finite, non-negative number or a supported CSS length string.`);let normalized=value.trim();if(!normalized||unsafeCssValuePattern.test(normalized)||!cssLengthPattern.test(normalized)&&!isSupportedCssLengthFunction(normalized))throw new TypeError(`${componentName} ${propName} must be a non-empty, non-negative CSS length (for example 12px, 1rem, 5%, or var(--space)).`);return normalized}var layoutAlignValues={start:"flex-start",center:"center",end:"flex-end",stretch:"stretch",baseline:"baseline"},layoutJustifyValues={start:"flex-start",center:"center",end:"flex-end",between:"space-between",around:"space-around",evenly:"space-evenly"};function resolveBaseLayoutAlign(componentName,value){if(!Object.prototype.hasOwnProperty.call(layoutAlignValues,value))throw new TypeError(`${componentName} align must be one of: start, center, end, stretch, baseline.`);return layoutAlignValues[value]}function resolveBaseLayoutJustify(componentName,value){if(!Object.prototype.hasOwnProperty.call(layoutJustifyValues,value))throw new TypeError(`${componentName} justify must be one of: start, center, end, between, around, evenly.`);return layoutJustifyValues[value]}var dialogTriggerTones=["default","primary","success","warning","danger","muted"];function validateBoolean(value,name){if(typeof value!="boolean")throw new TypeError(`BaseDialog ${name} must be a boolean.`)}function validateTriggerTone(value){if(!dialogTriggerTones.includes(value))throw new TypeError('BaseDialog triggerTone must be "default", "primary", "success", "warning", "danger", or "muted".')}function renderTrigger({trigger,triggerLabel,triggerIcon,triggerTone,triggerDisabled,theme}){return hasRenderableNode(trigger)?jsxRuntime.jsx("span",{role:"button",tabIndex:triggerDisabled?-1:0,"aria-disabled":triggerDisabled||void 0,onKeyDown:event=>{triggerDisabled||(event.key==="Enter"||event.key===" ")&&(event.preventDefault(),event.currentTarget.click());},children:trigger}):hasRenderableNode(triggerLabel)?jsxRuntime.jsxs("button",{type:"button",disabled:triggerDisabled,"aria-label":typeof triggerLabel=="string"&&triggerLabel.trim()?triggerLabel:void 0,className:cn(theme.slots.buttonBase,getBaseButtonToneClassName(theme,triggerTone),triggerDisabled&&theme.slots.buttonDisabled),style:{...theme.styles.button,...triggerDisabled?theme.styles.buttonDisabled:void 0},children:[hasRenderableNode(triggerIcon)?jsxRuntime.jsx("span",{"data-slot":"icon",className:theme.slots.buttonIcon,children:triggerIcon}):null,jsxRuntime.jsx("span",{"data-slot":"label",className:theme.slots.buttonLabel,children:triggerLabel})]}):null}var BaseDialog=React8.forwardRef(function({open,defaultOpen=false,size:size2="default",title,description,header,footer,trigger,triggerLabel,triggerIcon,triggerTone="default",triggerDisabled=false,closeLabel,closeOnEscape=true,closeOnOverlayClick=true,showCloseButton=true,keepMounted=false,trapFocus=true,restoreFocus=true,initialFocus="first-interactive",initialFocusRef,zIndex,portal=false,appearance:appearance2,className,classNames,style,children,onOpenChange,id:id9,...dialogProps},ref){if(open!==void 0&&validateBoolean(open,"open"),validateBoolean(defaultOpen,"defaultOpen"),!["default","viewport","page"].includes(size2))throw new TypeError("BaseDialog size must be default, viewport or page.");if(validateBoolean(triggerDisabled,"triggerDisabled"),validateBoolean(closeOnEscape,"closeOnEscape"),validateBoolean(closeOnOverlayClick,"closeOnOverlayClick"),validateBoolean(showCloseButton,"showCloseButton"),validateBoolean(keepMounted,"keepMounted"),validateBoolean(trapFocus,"trapFocus"),validateBoolean(restoreFocus,"restoreFocus"),validateBoolean(portal,"portal"),validateTriggerTone(triggerTone),initialFocus!=="first-interactive"&&initialFocus!=="container"&&initialFocus!=="explicit")throw new TypeError('BaseDialog initialFocus must be "first-interactive", "container", or "explicit".');if(zIndex!==void 0&&!Number.isFinite(zIndex))throw new TypeError("BaseDialog zIndex must be a finite number.");let messages=useMonkeysLocaleMessages().dialog,resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),resolvedCloseLabel=closeLabel===void 0?messages.close:closeLabel,theme=resolveBaseAppearance(resolvedAppearance),overlayPortal=useBaseOverlayPortal({disabled:!portal}),[uncontrolledOpen,setUncontrolledOpen]=React8.useState(defaultOpen),panelRef=React8.useRef(null),returnFocusRef=React8.useRef(null),isControlled=open!==void 0,isOpen=isControlled?open:uncontrolledOpen,portalState=portal&&overlayPortal.shouldPortal?"portaled":"inline",hasTitle=hasRenderableNode(title),hasDescription=hasRenderableNode(description),hasCustomHeader=hasRenderableNode(header);if(showCloseButton&&(typeof resolvedCloseLabel!="string"||!resolvedCloseLabel.trim()))throw new TypeError("BaseDialog closeLabel must be a non-empty string when showCloseButton is true.");let handleOpenChange=nextOpen=>{isControlled||setUncontrolledOpen(nextOpen),onOpenChange?.(nextOpen);};React8.useEffect(()=>{if(!isOpen||!keepMounted)return;let panel=panelRef.current,ownerDocument=panel?.ownerDocument,ownerWindow=ownerDocument?.defaultView;if(!panel||!ownerDocument||!ownerWindow)return;returnFocusRef.current=ownerDocument.activeElement instanceof ownerWindow.HTMLElement?ownerDocument.activeElement:null;let focusableSelector=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(","),focusInitial=()=>{let firstInteractive=panel.querySelector(focusableSelector);(initialFocus==="container"?panel:initialFocus==="explicit"?initialFocusRef?.current??panel:firstInteractive??panel).focus();},frame=ownerWindow.requestAnimationFrame(focusInitial),handleKeyDown=event=>{if(event.key==="Escape"&&closeOnEscape){event.preventDefault(),event.stopPropagation(),handleOpenChange(false);return}if(event.key!=="Tab"||!trapFocus)return;let focusable=Array.from(panel.querySelectorAll(focusableSelector));if(focusable.length===0){event.preventDefault(),panel.focus();return}let first=focusable[0],last=focusable[focusable.length-1];event.shiftKey&&ownerDocument.activeElement===first?(event.preventDefault(),last.focus()):!event.shiftKey&&ownerDocument.activeElement===last&&(event.preventDefault(),first.focus());};return ownerWindow.addEventListener("keydown",handleKeyDown),()=>{ownerWindow.cancelAnimationFrame(frame),ownerWindow.removeEventListener("keydown",handleKeyDown),restoreFocus&&returnFocusRef.current?.isConnected&&returnFocusRef.current.focus();}},[closeOnEscape,initialFocus,initialFocusRef,isOpen,keepMounted,restoreFocus,trapFocus]);let semanticHeader=hasCustomHeader||hasTitle||hasDescription?jsxRuntime.jsxs("div",{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"header","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogHeader,classNames?.header,size2==="page"&&"sr-only"),children:[hasCustomHeader?header:null,hasTitle?jsxRuntime.jsx(DialogPrimitive2__namespace.Title,{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"title","data-state":isOpen?"open":"closed","data-portal":portalState,className:hasCustomHeader?"sr-only":cn(theme.slots.dialogTitle,classNames?.title),children:title}):null,hasDescription?jsxRuntime.jsx(DialogPrimitive2__namespace.Description,{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"description","data-state":isOpen?"open":"closed","data-portal":portalState,className:hasCustomHeader?"sr-only":cn(theme.slots.dialogDescription,classNames?.description),children:description}):null]}):null,triggerNode=renderTrigger({trigger,triggerLabel,triggerIcon,triggerTone,triggerDisabled,theme}),dialogLayers=isOpen||keepMounted?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(DialogPrimitive2__namespace.Overlay,{forceMount:keepMounted||void 0,hidden:!isOpen,...componentAttributes,"aria-hidden":"true","data-monkeys-component":"dialog","data-slot":"overlay","data-portal":portalState,className:cn(theme.slots.dialogOverlay,classNames?.overlay),style:{...theme.styles.dialogOverlay,zIndex,...size2==="page"?{background:"transparent",backdropFilter:"none"}:{}}}),jsxRuntime.jsx("div",{...componentAttributes,hidden:!isOpen,"data-monkeys-component":"dialog","data-slot":"content","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogContent,classNames?.content),style:{zIndex,...size2==="page"?{padding:0,inset:0}:{}},children:jsxRuntime.jsx(DialogPrimitive2__namespace.Content,{forceMount:keepMounted||void 0,...componentAttributes,...hasTitle?{}:{"aria-labelledby":void 0},...hasDescription?{}:{"aria-describedby":void 0},asChild:true,onOpenAutoFocus:event=>{if(keepMounted){event.preventDefault();return}let panel=panelRef.current;returnFocusRef.current=panel?.ownerDocument.activeElement,(initialFocus==="container"||initialFocus==="explicit")&&(event.preventDefault(),(initialFocus==="explicit"?initialFocusRef?.current??panel:panel)?.focus({preventScroll:true}));},onCloseAutoFocus:event=>{if(keepMounted||!restoreFocus){event.preventDefault();return}let target=returnFocusRef.current;target?.isConnected&&(event.preventDefault(),target.focus({preventScroll:true}));},onEscapeKeyDown:event=>{(keepMounted||!closeOnEscape)&&event.preventDefault();},onPointerDownOutside:event=>{closeOnOverlayClick||event.preventDefault();},children:jsxRuntime.jsxs("div",{...componentAttributes,ref:panelRef,tabIndex:-1,"aria-modal":"true","data-monkeys-component":"dialog","data-slot":"panel","data-portal":portalState,className:cn(theme.slots.dialogPanel,classNames?.panel),"data-presentation":size2,style:{...theme.styles.dialogPanel,...size2!=="default"?{width:size2==="page"?"100vw":"96vw",maxWidth:"none",height:size2==="page"?"100dvh":"94dvh",maxHeight:size2==="page"?"100dvh":"94dvh",display:"flex",flexDirection:"column"}:{},...size2==="page"?{borderRadius:0,border:0,boxShadow:"none",margin:0,animation:"none"}:{}},children:[semanticHeader,showCloseButton?jsxRuntime.jsx(DialogPrimitive2__namespace.Close,{asChild:true,children:jsxRuntime.jsx("button",{...componentAttributes,type:"button","aria-label":resolvedCloseLabel,title:resolvedCloseLabel,"data-monkeys-component":"dialog","data-slot":"close","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogClose,classNames?.close),children:"\xD7"})}):null,jsxRuntime.jsx("div",{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"body","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogBody,classNames?.body),style:size2!=="default"?{minHeight:0,flex:"1 1 0%",overflow:"hidden",padding:0}:void 0,children}),hasRenderableNode(footer)?jsxRuntime.jsx("div",{...componentAttributes,"data-monkeys-component":"dialog","data-slot":"footer","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogFooter,classNames?.footer),children:footer}):null]})})})]}):null;return jsxRuntime.jsx("div",{...componentAttributes,...dialogProps,ref,id:id9,"data-monkeys-component":"dialog","data-slot":"root","data-state":isOpen?"open":"closed","data-portal":portalState,className:cn(theme.slots.dialogRoot,classNames?.root,className),style,children:jsxRuntime.jsxs(DialogPrimitive2__namespace.Root,{open:isOpen,onOpenChange:handleOpenChange,modal:!keepMounted&&trapFocus,children:[triggerNode?jsxRuntime.jsx(DialogPrimitive2__namespace.Trigger,{...componentAttributes,asChild:true,disabled:triggerDisabled,"data-monkeys-component":"dialog","data-slot":"trigger","data-portal":portalState,"data-tone":triggerTone,"data-disabled":triggerDisabled||void 0,className:cn(theme.slots.dialogTrigger,triggerDisabled&&theme.slots.dialogTriggerDisabled,classNames?.trigger),children:triggerNode}):null,portal&&overlayPortal.shouldPortal?jsxRuntime.jsx(BentoScope,{children:jsxRuntime.jsx(DialogPrimitive2__namespace.Portal,{...overlayPortal.radixPortalProps,forceMount:keepMounted||void 0,children:dialogLayers})}):jsxRuntime.jsx(BentoScope,{children:dialogLayers})]})})});function toCssVariableName(path,prefix){let normalized=path.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/[^a-zA-Z0-9]+/g,"-").replace(/^-+|-+$/g,"").toLowerCase();return `--${prefix}-${normalized}`}var HSL_SEMANTIC_VARIABLES={"semantic.color.background":"--background","semantic.color.foreground":"--foreground","semantic.color.card":"--card","semantic.color.card-foreground":"--card-foreground","semantic.color.popover":"--popover","semantic.color.popover-foreground":"--popover-foreground","semantic.color.primary":"--primary","semantic.color.primary-foreground":"--primary-foreground","semantic.color.secondary":"--secondary","semantic.color.secondary-foreground":"--secondary-foreground","semantic.color.muted":"--muted","semantic.color.muted-foreground":"--muted-foreground","semantic.color.accent":"--accent","semantic.color.accent-foreground":"--accent-foreground","semantic.color.destructive":"--destructive","semantic.color.destructive-foreground":"--destructive-foreground","semantic.color.success":"--success","semantic.color.success-foreground":"--success-foreground","semantic.color.warning":"--warning","semantic.color.warning-foreground":"--warning-foreground","semantic.color.border":"--border","semantic.color.input":"--input","semantic.color.ring":"--ring","semantic.color.media-surface":"--media-surface","semantic.color.media-foreground":"--media-foreground","semantic.color.media-overlay":"--media-overlay","semantic.color.radar-canvas":"--radar-canvas","semantic.color.radar-panel":"--radar-panel","semantic.color.radar-border":"--radar-border","semantic.color.radar-shell-border":"--radar-shell-border","semantic.color.radar-grid":"--radar-grid","semantic.color.radar-axis":"--radar-axis","semantic.color.radar-series-one":"--radar-series-one","semantic.color.radar-series-two":"--radar-series-two","semantic.color.radar-series-three":"--radar-series-three","semantic.color.radar-series-four":"--radar-series-four"},THEME_TOKEN_CSS_ALIASES=Object.freeze({...Object.fromEntries(Object.entries(HSL_SEMANTIC_VARIABLES).map(([path,variableName])=>[path,{variableName,axis:"colorMode",expectedType:"color",format:"hsl"}])),"semantic.color.neocard":{variableName:"--neocard",axis:"colorMode",expectedType:"color",format:"css"},"semantic.radius.base":{variableName:"--radius",axis:"colorMode",expectedType:"dimension",format:"css"},"semantic.spacing.global":{variableName:"--global-spacing",axis:"density",expectedType:"dimension",format:"css"},"semantic.gradient.brand":{variableName:"--monkeys-gradient",axis:"colorMode",expectedType:"gradient",format:"css"},"semantic.font.body":{variableName:"--font-sans",axis:"colorMode",expectedType:"fontFamily",format:"css"}});function resolveThemeTokenCssVariable(reference){let path=reference.startsWith("$")?reference.slice(1).trim():reference.trim();if(!/^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$/i.test(path))throw new TypeError(`Invalid Design Token path ${reference}.`);let alias=THEME_TOKEN_CSS_ALIASES[path];return alias?alias.format==="hsl"?`hsl(var(${alias.variableName}))`:`var(${alias.variableName})`:`var(${toCssVariableName(path,"monkeys")})`}var BENTO_STYLE_FIELDS=["background","glowColor","borderColor","borderWidth","borderStyle","radius","shadow","padding","gap"],fallback={background:"hsl(var(--card, 0 0% 100%))",glowColor:"var(--monkeys-bento-glow-default)",borderColor:"hsl(var(--border, 214.3 31.8% 91.4%))",borderWidth:"1px",borderStyle:"solid",radius:"var(--radius, 0.75rem)",shadow:"none",padding:"var(--global-spacing, 0.75rem)",gap:"var(--global-spacing, 0.75rem)"},cache=new WeakMap;function resolveBentoTokens(theme,level){if(!Number.isSafeInteger(level)||level<1)throw new RangeError("Bento level must be a positive safe integer.");let cached=theme&&cache.get(theme)?.get(level);if(cached)return cached;let values={...fallback},sources=Object.fromEntries(BENTO_STYLE_FIELDS.map(field=>[field,"builtin"]));for(let field of BENTO_STYLE_FIELDS){let axis=field==="padding"||field==="gap"?theme?.density:theme?.colorMode,namespace=field==="glowColor"?"component.bento":"semantic.bento",paths=[`${namespace}.levels.level${level}.${field}`,`${namespace}.default.${field}`];for(let base of paths){let path=axis&&theme?.cssValues[`${base}.${axis}`]!==void 0?`${base}.${axis}`:base,value=theme?.cssValues[path];if(value!==void 0){values[field]=value,sources[field]=path;break}}}let result=Object.freeze({values:Object.freeze(values),sources:Object.freeze(sources)});if(theme){let levels=cache.get(theme)??new Map;levels.set(level,result),cache.set(theme,levels);}return result}var refIdentity=reference=>reference?.id,getRenderNodeDataAttributes=node=>({"data-monkeys-node-id":node.nodeId,"data-monkeys-node-kind":node.kind,"data-monkeys-node-version":node.version,"data-monkeys-owner":node.ownerRepo,"data-monkeys-parent-node":node.parentNodeId,"data-monkeys-slot":node.slot,"data-monkeys-page-id":refIdentity(node.pageRef),"data-monkeys-semantic-id":refIdentity(node.semanticRef),"data-monkeys-data-context-id":refIdentity(node.dataContextRef),"data-monkeys-capability-id":refIdentity(node.capabilityRef),"data-monkeys-provider-id":refIdentity(node.providerRef),"data-monkeys-state-id":refIdentity(node.stateRef),"data-monkeys-frame-owner":node.surface.frameOwner,"data-monkeys-surface-tone":node.surface.tone,"data-monkeys-density":node.surface.density,"data-monkeys-scroll-owner":node.scroll.owner,"data-monkeys-scroll-axis":node.scroll.axis,"data-monkeys-scroll-restore-key":node.scroll.restoreKey,"data-monkeys-virtualization-boundary":node.scroll.virtualizationBoundary,"data-monkeys-activation-id":node.activation.activationId,"data-monkeys-activation-mode":node.activation.mode,"data-monkeys-mount-policy":node.lifecycle.mountPolicy,"data-monkeys-query-policy":node.lifecycle.queryPolicy,"data-monkeys-deep-link":node.lifecycle.deepLink,"data-monkeys-focus-return":node.lifecycle.focusReturn,"data-monkeys-layout-mode":node.layout.mode,"data-monkeys-responsive-rules":node.responsive.length,"data-monkeys-child-count":node.children.length,"data-monkeys-access-id":refIdentity(node.accessRef),"data-monkeys-evidence-id":refIdentity(node.evidenceRef),"data-monkeys-render-state":node.state}),sessionStorageKey=key3=>`monkeys.render.scroll.${key3}`,sessionRenderNodeScrollRestoration={read(key3){if(!(typeof window>"u"))try{let value=window.sessionStorage.getItem(sessionStorageKey(key3));if(!value)return;let parsed=JSON.parse(value);return typeof parsed.x=="number"&&typeof parsed.y=="number"?{x:parsed.x,y:parsed.y}:void 0}catch{return}},write(key3,position){if(!(typeof window>"u"))try{window.sessionStorage.setItem(sessionStorageKey(key3),JSON.stringify(position));}catch{}},remove(key3){if(!(typeof window>"u"))try{window.sessionStorage.removeItem(sessionStorageKey(key3));}catch{}}},resolveRenderNodeLayout=(node,viewportWidth)=>{if(viewportWidth===void 0)return node.layout;let matching=node.responsive.filter(rule=>(rule.minWidthPx===void 0||viewportWidth>=rule.minWidthPx)&&(rule.maxWidthPx===void 0||viewportWidth<=rule.maxWidthPx));return matching.length===0?node.layout:matching[matching.length-1].layout},resolveRenderNodeResponsiveStyle=(style,responsive,viewportWidth)=>{let matching=viewportWidth===void 0?[]:responsive.filter(rule=>(rule.minWidthPx===void 0||viewportWidth>=rule.minWidthPx)&&(rule.maxWidthPx===void 0||viewportWidth<=rule.maxWidthPx)&&rule.style);return matching.length===0?style:matching.reduce((resolved,rule)=>({...resolved,...rule.style}),{...style??{}})},LAYOUT_MODE_CLASSES={contents:"contents",block:"block",flex:"flex",grid:"grid",absolute:"absolute"},ALIGN_CLASSES={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},JUSTIFY_CLASSES={start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around"},tokenPathToCssVariable=value=>resolveThemeTokenCssVariable(value),resolveRenderNodeStyle=style=>style?Object.fromEntries(Object.entries(style).map(([property,value])=>[property,typeof value=="string"&&value.startsWith("$")?tokenPathToCssVariable(value):value])):void 0,resolveRenderNodeGap=layout=>{if(layout.gapTokenRef)return {gap:tokenPathToCssVariable(`$${layout.gapTokenRef.id}`)}},getRenderLayoutClassName=layout=>cn(LAYOUT_MODE_CLASSES[layout.mode],layout.mode==="flex"&&(layout.direction==="row"?"flex-row":"flex-col"),layout.align&&ALIGN_CLASSES[layout.align],layout.justify&&JUSTIFY_CLASSES[layout.justify]),shouldMountNode=(node,active,visible)=>node.lifecycle.mountPolicy==="always"?true:node.lifecycle.mountPolicy==="when-visible"?visible:active,shouldQueryNode=(node,active,visible,manualQueryEnabled)=>node.lifecycle.queryPolicy==="always"?true:node.lifecycle.queryPolicy==="when-visible"?visible:node.lifecycle.queryPolicy==="when-active"?active:manualQueryEnabled,resolveRenderNodePolicyState=(node,input)=>{let policyMounted=shouldMountNode(node,input.active,input.visible);return {active:input.active,visible:input.visible,mounted:policyMounted||node.lifecycle.retainOnDeactivate&&input.previouslyMounted===true,queryEnabled:shouldQueryNode(node,input.active,input.visible,input.manualQueryEnabled===true)}},resolveRenderNodeContent=(node,content,loading,empty,error)=>node.state==="loading"&&loading!==void 0?loading:node.state==="empty"&&empty!==void 0?empty:node.state==="error"&&error!==void 0?error:content,assignRef=(ref,value)=>{typeof ref=="function"?ref(value):ref&&(ref.current=value);},RenderNodeHost=React8.forwardRef(function({node,as="div",active=true,visible=active,manualQueryEnabled=false,asChild=false,unframed=false,children,loading,empty,error,elementRef,scrollRestoration=sessionRenderNodeScrollRestoration,onActivate,onManualQueryEnabledChange,onRuntimeStateChange,onScroll,className,hidden,role,"aria-live":ariaLive,"aria-atomic":ariaAtomic,...props},forwardedRef){let bentoDepth=useBentoDepth(),Component=asChild?reactSlot.Slot:as,hostRef=React8.useRef(null),[viewportWidth,setViewportWidth]=React8.useState(()=>typeof window>"u"?void 0:window.innerWidth),[mountedNodeId,setMountedNodeId]=React8.useState(()=>shouldMountNode(node,active,visible)?node.nodeId:void 0),policyMounted=shouldMountNode(node,active,visible);React8.useEffect(()=>{if(node.responsive.length===0||typeof window>"u")return;let handleResize=()=>setViewportWidth(window.innerWidth);return handleResize(),window.addEventListener("resize",handleResize,{passive:true}),()=>window.removeEventListener("resize",handleResize)},[node.responsive.length]);let resolvedLayout=React8.useMemo(()=>resolveRenderNodeLayout(node,viewportWidth),[node,viewportWidth]),resolvedStyle=React8.useMemo(()=>resolveRenderNodeResponsiveStyle(node.style,node.responsive,viewportWidth),[node.responsive,node.style,viewportWidth]);React8.useEffect(()=>{if(!active||!visible||!node.lifecycle.deepLink||!["page","record"].includes(node.kind))return;let element=hostRef.current;!element||element.style.display==="contents"||element.focus({preventScroll:true});},[active,node.kind,node.lifecycle.deepLink,node.nodeId,visible]),React8.useEffect(()=>{policyMounted?setMountedNodeId(node.nodeId):node.lifecycle.retainOnDeactivate||setMountedNodeId(void 0);},[node.lifecycle.retainOnDeactivate,node.nodeId,policyMounted]);let policyState=React8.useMemo(()=>resolveRenderNodePolicyState(node,{active,visible,manualQueryEnabled,previouslyMounted:mountedNodeId===node.nodeId}),[active,manualQueryEnabled,mountedNodeId,node,visible]),activate=React8.useCallback(()=>{onActivate?.(node.activation,node);},[node,onActivate]),setManualQueryEnabled=React8.useCallback(enabled=>{onManualQueryEnabledChange?.(enabled,node);},[node,onManualQueryEnabledChange]),runtimeState=React8.useMemo(()=>({...policyState,activate,setManualQueryEnabled}),[activate,policyState,setManualQueryEnabled]);React8.useEffect(()=>{onRuntimeStateChange?.(policyState,node);},[node,onRuntimeStateChange,policyState]);let setHostRef=React8.useCallback(value=>{hostRef.current=value,assignRef(elementRef,value),assignRef(forwardedRef,value);},[elementRef,forwardedRef]),scrollAdapter=scrollRestoration===false?void 0:scrollRestoration,restoresHostScroll=scrollAdapter!==void 0&&node.scroll.owner!=="provider"&&!node.scroll.virtualizationBoundary&&node.scroll.axis!=="none"&&node.scroll.restoreKey!==void 0,readPosition=React8.useCallback(()=>{let element=hostRef.current;return element?{x:node.scroll.axis==="y"?0:element.scrollLeft,y:node.scroll.axis==="x"?0:element.scrollTop}:{x:0,y:0}},[node.scroll.axis]);if(React8.useEffect(()=>{if(!policyState.mounted||!restoresHostScroll||!scrollAdapter)return;let key3=node.scroll.restoreKey,element=hostRef.current,position=scrollAdapter.read(key3),frame;if(element&&position){let restore=()=>element.scrollTo({left:node.scroll.axis==="y"?element.scrollLeft:position.x,top:node.scroll.axis==="x"?element.scrollTop:position.y,behavior:"auto"});typeof window<"u"&&typeof window.requestAnimationFrame=="function"?frame=window.requestAnimationFrame(restore):restore();}return ()=>{frame!==void 0&&typeof window<"u"&&window.cancelAnimationFrame(frame),scrollAdapter.write(key3,readPosition());}},[node.scroll.axis,node.scroll.restoreKey,policyState.mounted,readPosition,restoresHostScroll,scrollAdapter]),!policyState.mounted)return null;let elementProps={...props,...getRenderNodeDataAttributes(node),ref:setHostRef,className:cn((!unframed||resolvedLayout.mode!=="contents")&&getRenderLayoutClassName(resolvedLayout),className),style:{...resolvedLayout.mode==="grid"&&resolvedLayout.columns?{gridTemplateColumns:`repeat(${resolvedLayout.columns}, minmax(0, 1fr))`}:{},...bentoDepth>0&&["flex","grid"].includes(resolvedLayout.mode)?{gap:"var(--monkeys-bento-gap, var(--global-spacing, 0.75rem))"}:{},...resolveRenderNodeGap(resolvedLayout),...resolveRenderNodeStyle(resolvedStyle),...props.style},hidden:hidden||!policyState.visible||void 0,role:role??(node.state==="error"?"alert":node.state==="loading"||node.state==="empty"?"status":void 0),tabIndex:props.tabIndex??(node.lifecycle.deepLink&&["page","record"].includes(node.kind)?-1:void 0),"data-monkeys-active":policyState.active,"data-monkeys-mounted":policyState.mounted,"data-monkeys-query-enabled":policyState.queryEnabled,"aria-busy":node.state==="loading"||void 0,"aria-disabled":node.state==="disabled"||void 0,"aria-hidden":!policyState.visible||void 0,"aria-live":ariaLive??(node.state==="error"?"assertive":node.state==="loading"||node.state==="empty"?"polite":void 0),"aria-atomic":ariaAtomic??(node.state==="loading"||node.state==="empty"||node.state==="error"?true:void 0),onScroll:event=>{restoresHostScroll&&scrollAdapter&&node.scroll.restoreKey&&scrollAdapter.write(node.scroll.restoreKey,readPosition()),onScroll?.(event);}},renderedChildren=typeof children=="function"?children(unframed?{...runtimeState,elementProps}:runtimeState):children;return unframed?jsxRuntime.jsx(jsxRuntime.Fragment,{children:resolveRenderNodeContent(node,renderedChildren,loading,empty,error)}):jsxRuntime.jsx(Component,{...elementProps,ref:setHostRef,children:resolveRenderNodeContent(node,renderedChildren,loading,empty,error)})});var defaultElementForNode=node=>node.kind==="shell"?"main":node.kind==="navigation"?"nav":node.kind==="detail"?"aside":node.kind==="record"?"article":"section";function RenderTreeHost({tree,maxMaterializedNodes=4096,resolveNodeInstances,wrapNode,activeNodeIds,visibleNodeIds,manualQueryNodeIds,loading,empty,error,elementForNode=defaultElementForNode,asChildForNode,unframedForNode,classNameForNode,elementRefForNode,scrollRestoration,renderNode,onActivate,onManualQueryEnabledChange,onRuntimeStateChange}){let compiled=React8.useMemo(()=>runtime.compileRenderTree(tree),[tree]);if(!Number.isSafeInteger(maxMaterializedNodes)||maxMaterializedNodes<1||maxMaterializedNodes>4096)throw new RangeError("RenderTree materialization budget must be an integer from 1 to 4096.");let materializedNodes=0,renderBranch=(node,parentScope,parentInstanceKey)=>{let instances=resolveNodeInstances?.(node,parentScope);if(instances===void 0)return renderInstance(node,parentScope,parentInstanceKey);let keys=new Set,rendered=instances.map(({key:key3,scope})=>{if(!key3||keys.has(key3))throw new TypeError(`RenderNode ${node.nodeId} requires unique non-empty instance keys.`);return keys.add(key3),renderInstance(node,scope,JSON.stringify([parentInstanceKey??null,node.nodeId,key3]))});return rendered.length===1?rendered[0]:rendered},renderInstance=(node,scope,instanceKey)=>{if(++materializedNodes>maxMaterializedNodes)throw new RangeError("RenderTree materialization budget exceeded.");let runtimeNode=instanceKey&&node.scroll.restoreKey?{...node,scroll:{...node.scroll,restoreKey:JSON.stringify([node.scroll.restoreKey,instanceKey])}}:node,childNodes=compiled.childrenOf(node.nodeId),descendants=childNodes.map(child=>renderBranch(child,scope,instanceKey)),descendantsBySlot=childNodes.reduce((slots,child,index)=>{let slot=child.slot??child.nodeId;return (slots[slot]??(slots[slot]=[])).push(descendants[index]),slots},{}),childrenBySlot=Object.freeze(Object.fromEntries(Object.entries(descendantsBySlot).map(([slot,slotDescendants])=>[slot,slotDescendants.length===1?slotDescendants[0]:jsxRuntime.jsx(jsxRuntime.Fragment,{children:slotDescendants})]))),rendered=jsxRuntime.jsx(RenderNodeHost,{node:runtimeNode,"data-monkeys-instance-key":instanceKey,as:elementForNode(node),asChild:asChildForNode?.(node),unframed:unframedForNode?.(node),active:activeNodeIds?.has(node.nodeId)??true,visible:visibleNodeIds?.has(node.nodeId)??true,manualQueryEnabled:manualQueryNodeIds?.has(node.nodeId)??false,loading,empty,error,className:classNameForNode?.(node),elementRef:elementRefForNode?.(node),scrollRestoration,onActivate,onManualQueryEnabledChange,onRuntimeStateChange,children:runtime=>{let content=renderNode?.({...runtime,node:runtimeNode,scope,instanceKey,children:descendants,childNodes,childrenBySlot})??descendants;return wrapNode?wrapNode({node:runtimeNode,scope,instanceKey,content}):content}},JSON.stringify([node.nodeId,instanceKey??null]));return node.kind==="page"||node.kind==="overlay"?jsxRuntime.jsx(BentoScope,{children:rendered},JSON.stringify([node.nodeId,instanceKey??null])):rendered};return jsxRuntime.jsx(jsxRuntime.Fragment,{children:renderBranch(compiled.root)})}var STATE_KEY="__monkeysRenderTree",readBrowserSnapshot=()=>{if(typeof window>"u")return;let value=window.history.state?.[STATE_KEY];return value?.contract==="RenderTreeRuntimeSnapshot"?value:void 0},withSnapshot=snapshot=>({...typeof window>"u"||!window.history.state||typeof window.history.state!="object"?{}:window.history.state,[STATE_KEY]:snapshot}),notifyBrowserHistory=()=>{typeof window>"u"||window.dispatchEvent(new PopStateEvent("popstate",{state:window.history.state}));},browserRenderTreeHistoryAdapter={read:readBrowserSnapshot,replace(snapshot){typeof window<"u"&&window.history.replaceState(withSnapshot(snapshot),"",window.location.href);},push(snapshot){typeof window<"u"&&window.history.pushState(withSnapshot(snapshot),"",window.location.href);},navigate(path,mode,snapshot){typeof window>"u"||(window.history[mode==="replace"?"replaceState":"pushState"](withSnapshot(snapshot),"",path),notifyBrowserHistory());},subscribe(listener){if(typeof window>"u")return ()=>{};let onPopState=()=>listener(readBrowserSnapshot());return window.addEventListener("popstate",onPopState),()=>window.removeEventListener("popstate",onPopState)}},scheduleFocus=target=>{target?.isConnected&&(typeof window<"u"&&typeof window.requestAnimationFrame=="function"?window.requestAnimationFrame(()=>target.focus({preventScroll:true})):target.focus({preventScroll:true}));};function RenderTreeRuntimeHost({tree,historyAdapter=browserRenderTreeHistoryAdapter,onActivate,onRuntimeStateChange,...props}){let compiled=React8.useMemo(()=>runtime.compileRenderTree(tree),[tree]),allNodeIds=React8.useMemo(()=>new Set(compiled.traversal.map(node=>node.nodeId)),[compiled]),[activeNodeIds,setActiveNodeIds]=React8.useState(()=>new Set(allNodeIds)),[manualQueryNodeIds,setManualQueryNodeIds]=React8.useState(()=>new Set),selectedActivationIdRef=React8.useRef(),activeNodeIdsRef=React8.useRef(activeNodeIds),manualQueryNodeIdsRef=React8.useRef(manualQueryNodeIds),focusReturnTargets=React8.useRef(new Map),snapshot=React8.useCallback((nextActive=activeNodeIdsRef.current,nextManual=manualQueryNodeIdsRef.current,selectedActivationId=selectedActivationIdRef.current)=>({contract:"RenderTreeRuntimeSnapshot",treeId:tree.treeId,activeNodeIds:[...nextActive],manualQueryNodeIds:[...nextManual],selectedActivationId}),[tree.treeId]),applySnapshot=React8.useCallback(value=>{if(!value||value.treeId!==tree.treeId||value.activeNodeIds.some(nodeId=>!allNodeIds.has(nodeId))||value.manualQueryNodeIds.some(nodeId=>!allNodeIds.has(nodeId)))return false;let active=new Set(value.activeNodeIds);if(!active.has(tree.rootNodeId))return false;let manual=new Set(value.manualQueryNodeIds);return selectedActivationIdRef.current=value.selectedActivationId,activeNodeIdsRef.current=active,manualQueryNodeIdsRef.current=manual,setActiveNodeIds(active),setManualQueryNodeIds(manual),true},[allNodeIds,tree.rootNodeId,tree.treeId]);React8.useEffect(()=>{let initial=historyAdapter===false?void 0:historyAdapter.read();if(!applySnapshot(initial)){let active=new Set(allNodeIds),manual=new Set;activeNodeIdsRef.current=active,manualQueryNodeIdsRef.current=manual,selectedActivationIdRef.current=void 0,setActiveNodeIds(active),setManualQueryNodeIds(manual),historyAdapter!==false&&historyAdapter.replace(snapshot(active,manual));}return historyAdapter===false?void 0:historyAdapter.subscribe(applySnapshot)},[allNodeIds,applySnapshot,historyAdapter,snapshot]);let selectNode=React8.useCallback(node=>{let next=new Set(compiled.ancestorsOf(node.nodeId).map(ancestor=>ancestor.nodeId)),addDescendants=current=>{next.add(current.nodeId),compiled.childrenOf(current.nodeId).forEach(addDescendants);};return addDescendants(node),next},[compiled]),handleActivate=React8.useCallback((activation,node)=>{node.lifecycle.focusReturn&&typeof document<"u"&&document.activeElement instanceof HTMLElement&&focusReturnTargets.current.set(node.nodeId,document.activeElement),selectedActivationIdRef.current=activation.activationId;let nextActive=activation.mode==="select"||activation.mode==="inline"?selectNode(node):activeNodeIdsRef.current;activeNodeIdsRef.current=nextActive,setActiveNodeIds(nextActive);let nextSnapshot=snapshot(nextActive);if(activation.mode==="navigate"){if(!activation.targetPath)throw new TypeError(`Navigate activation ${activation.activationId} has no targetPath.`);historyAdapter!==false&&historyAdapter.navigate(activation.targetPath,activation.history??"push",nextSnapshot);}else historyAdapter!==false&&node.lifecycle.deepLink&&(activation.history==="push"?historyAdapter.push(nextSnapshot):historyAdapter.replace(nextSnapshot));onActivate?.(activation,node);},[historyAdapter,onActivate,selectNode,snapshot]),handleManualQueryEnabledChange=React8.useCallback((enabled,node)=>{let next=new Set(manualQueryNodeIdsRef.current);enabled?next.add(node.nodeId):next.delete(node.nodeId),manualQueryNodeIdsRef.current=next,setManualQueryNodeIds(next),historyAdapter!==false&&historyAdapter.replace(snapshot(activeNodeIdsRef.current,next));},[historyAdapter,snapshot]),previousActive=React8.useRef(activeNodeIds);return React8.useEffect(()=>{for(let nodeId of previousActive.current){if(activeNodeIds.has(nodeId))continue;compiled.nodesById.get(nodeId)?.lifecycle.focusReturn&&scheduleFocus(focusReturnTargets.current.get(nodeId));}previousActive.current=activeNodeIds;},[activeNodeIds,compiled.nodesById]),jsxRuntime.jsx(RenderTreeHost,{...props,tree,activeNodeIds,visibleNodeIds:activeNodeIds,manualQueryNodeIds,onActivate:handleActivate,onManualQueryEnabledChange:handleManualQueryEnabledChange,onRuntimeStateChange})}function validateBaseAccordionProps({items,value,defaultValue,allowCollapse,keyboardNavigation}){if(!Array.isArray(items))throw new TypeError("BaseAccordion items must be an array.");if(value!==void 0&&(typeof value!="string"||!value.trim()))throw new TypeError("BaseAccordion value must be a non-empty string when provided.");if(defaultValue!==void 0&&(typeof defaultValue!="string"||!defaultValue.trim()))throw new TypeError("BaseAccordion defaultValue must be a non-empty string when provided.");if(typeof allowCollapse!="boolean")throw new TypeError("BaseAccordion allowCollapse must be a boolean.");if(typeof keyboardNavigation!="boolean")throw new TypeError("BaseAccordion keyboardNavigation must be a boolean.");let values=new Set;items.forEach((item,index)=>{if(!item||typeof item!="object")throw new TypeError(`BaseAccordion item at index ${index} must be an object.`);if(typeof item.value!="string"||!item.value.trim())throw new TypeError(`BaseAccordion item value at index ${index} must be a non-empty string.`);if(values.has(item.value))throw new TypeError(`BaseAccordion items must use unique values; duplicate value ${JSON.stringify(item.value)} at index ${index}.`);if(item.disabled!==void 0&&typeof item.disabled!="boolean")throw new TypeError(`BaseAccordion item disabled at index ${index} must be a boolean.`);values.add(item.value);});}function toDomId(value){return value.replace(/[^a-zA-Z0-9_-]/g,"-")}function getDomIdFragments(items){let usedFragments=new Set;return items.map((item,index)=>{let baseFragment=toDomId(item.value)||`item-${index}`,fragment=baseFragment;if(usedFragments.has(fragment))for(fragment=`${baseFragment}-${index}`;usedFragments.has(fragment);)fragment=`${fragment}-${index}`;return usedFragments.add(fragment),fragment})}var BaseAccordion=React8.forwardRef(function({items=[],value,defaultValue,allowCollapse=true,keyboardNavigation=true,appearance:appearance2,className,classNames,style,onValueChange,id:id9,onFocusCapture,onBlurCapture,...accordionProps},ref){validateBaseAccordionProps({items,value,defaultValue,allowCollapse,keyboardNavigation});let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),generatedId=React8.useId(),rootId=id9??generatedId,[uncontrolledValue,setUncontrolledValue]=React8.useState(defaultValue),[focusedValue,setFocusedValue]=React8.useState(),triggerRefs=React8.useRef(new Map),ownsTriggerFocusRef=React8.useRef(false),isControlled=value!==void 0,openValue=isControlled?value:uncontrolledValue,idFragments=getDomIdFragments(items),enabledItems=items.filter(item=>!item.disabled),openItem=items.find(item=>item.value===openValue),layerDirection=typeof accordionProps.dir=="string"?accordionProps.dir:componentAttributes.dir;React8.useEffect(()=>{if(!ownsTriggerFocusRef.current||focusedValue===void 0)return;let focusedItem=items.find(item=>item.value===focusedValue);if(focusedItem&&!focusedItem.disabled)return;let fallbackItem=enabledItems.find(item=>item.value===openValue)??enabledItems[0];if(!fallbackItem){ownsTriggerFocusRef.current=false;return}setFocusedValue(fallbackItem.value),triggerRefs.current.get(fallbackItem.value)?.focus();},[enabledItems,focusedValue,items,openValue]);let handleToggle=item=>{if(item.disabled)return;let isOpen=openValue===item.value;if(isOpen&&!allowCollapse){onValueChange?.(item.value);return}let nextOpenValue=isOpen?void 0:item.value;isControlled||setUncontrolledValue(nextOpenValue),onValueChange?.(nextOpenValue);},moveFocus=(event,item,step)=>{if(!keyboardNavigation||enabledItems.length===0)return;let targetItem;if(step==="first")targetItem=enabledItems[0];else if(step==="last")targetItem=enabledItems[enabledItems.length-1];else {let nextIndex=(enabledItems.findIndex(enabledItem=>enabledItem.value===item.value)+step+enabledItems.length)%enabledItems.length;targetItem=enabledItems[nextIndex];}targetItem&&(event.preventDefault(),setFocusedValue(targetItem.value),triggerRefs.current.get(targetItem.value)?.focus());},handleKeyDown=(event,item)=>{item.disabled||(event.key==="ArrowDown"?moveFocus(event,item,1):event.key==="ArrowUp"?moveFocus(event,item,-1):event.key==="Home"?moveFocus(event,item,"first"):event.key==="End"&&moveFocus(event,item,"last"));},isOwnedTrigger=target=>target instanceof HTMLElement&&target.dataset.accordionOwner===rootId,handleFocusCapture=event=>{isOwnedTrigger(event.target)&&(ownsTriggerFocusRef.current=true),onFocusCapture?.(event);},handleBlurCapture=event=>{isOwnedTrigger(event.target)&&!isOwnedTrigger(event.relatedTarget)&&(ownsTriggerFocusRef.current=false),onBlurCapture?.(event);};return jsxRuntime.jsx("div",{...componentAttributes,...accordionProps,ref,id:id9,dir:layerDirection,"data-monkeys-component":"accordion","data-slot":"root","data-state":openItem?"open":"closed","data-collapsible":allowCollapse,"data-keyboard-navigation":keyboardNavigation,className:cn(theme.slots.accordionRoot,classNames?.root,className),style:{...theme.styles.accordion,...style},onFocusCapture:handleFocusCapture,onBlurCapture:handleBlurCapture,children:items.map((item,index)=>{let itemId=idFragments[index],triggerId=`${rootId}-${itemId}-trigger`,panelId=`${rootId}-${itemId}-panel`,open=item.value===openValue,state=open?"open":"closed";return React8.createElement("div",{...componentAttributes,key:item.value,dir:layerDirection,"data-monkeys-component":"accordion","data-slot":"item","data-state":state,"data-disabled":item.disabled||void 0,className:cn(theme.slots.accordionItem,classNames?.item)},jsxRuntime.jsxs("button",{...componentAttributes,ref:node=>{node?triggerRefs.current.set(item.value,node):triggerRefs.current.delete(item.value);},id:triggerId,type:"button","aria-expanded":open,"aria-controls":panelId,"aria-disabled":item.disabled||void 0,disabled:item.disabled,dir:layerDirection,"data-accordion-owner":rootId,"data-monkeys-component":"accordion","data-slot":"trigger","data-state":state,"data-disabled":item.disabled||void 0,className:cn(theme.slots.accordionTrigger,classNames?.trigger),onFocus:()=>setFocusedValue(item.value),onKeyDown:event=>handleKeyDown(event,item),onClick:()=>handleToggle(item),children:[jsxRuntime.jsx("span",{className:"min-w-0 truncate",children:item.title}),jsxRuntime.jsx("span",{"aria-hidden":"true","data-monkeys-component":"accordion","data-slot":"trigger-icon","data-state":state,className:cn(theme.slots.accordionTriggerIcon,open&&"rotate-[225deg]",classNames?.triggerIcon)})]}),open?jsxRuntime.jsx("div",{...componentAttributes,id:panelId,role:"region","aria-labelledby":triggerId,dir:layerDirection,"data-monkeys-component":"accordion","data-slot":"panel","data-state":"open",className:cn(theme.slots.accordionPanel,classNames?.panel),children:hasRenderableNode(item.content)?item.content:null}):null)})})});var BaseBadge=React8.forwardRef(function({children,label,icon,tone,appearance:appearance2,variant,density,state,className,classNames,style,...badgeProps},ref){if(tone!==void 0&&tone!=="default"&&tone!=="primary"&&tone!=="success"&&tone!=="warning"&&tone!=="danger"&&tone!=="muted")throw new TypeError('BaseBadge tone must be "default", "primary", "success", "warning", "danger", or "muted".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance({...resolvedAppearance,variant,density,state}),resolvedLabel=children??label,resolvedTone=tone??"default";return jsxRuntime.jsxs("span",{...componentAttributes,...badgeProps,ref,"data-monkeys-component":"badge","data-slot":"root","data-tone":resolvedTone,"data-variant":theme.variant,"data-density":theme.density,"data-state":theme.state,className:cn(theme.slots.badgeBase,getBaseBadgeToneClassName(theme,tone),classNames?.root,className),style:{...theme.styles.badge,...style},children:[icon?jsxRuntime.jsx("span",{"data-slot":"icon","data-tone":resolvedTone,className:cn(theme.slots.badgeIcon,classNames?.icon),children:icon}):null,resolvedLabel!=null?jsxRuntime.jsx("span",{"data-slot":"label","data-tone":resolvedTone,className:cn(theme.slots.badgeLabel,classNames?.label),children:resolvedLabel}):null]})});var buttonSizeClassNames={sm:"h-8 px-2.5 text-xs",md:"h-9 px-3 text-sm",lg:"h-10 px-3.5 text-base"},iconOnlySizeClassNames={sm:"h-8 w-8 px-0",md:"h-9 w-9 px-0",lg:"h-10 w-10 px-0"},iconSizeClassNames={sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"};function nonEmptyText(value){return typeof value=="string"&&value.trim()?value:void 0}function LoadingIcon(){return jsxRuntime.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"h-full w-full motion-safe:animate-spin motion-reduce:animate-none",fill:"none",children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9",className:"opacity-25",stroke:"currentColor",strokeWidth:"3"}),jsxRuntime.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M12 3a9 9 0 0 1 9 9h-3a6 6 0 0 0-6-6V3Z"})]})}var BaseButton=React8.forwardRef(function({children,label,icon,endIcon,type="button",title,ariaLabel,tone,size:size2,active=false,iconOnly=false,disabled=false,loading=false,stopPropagation=false,appearance:appearance2,variant,density,state,className,classNames,style,onClick,"aria-label":nativeAriaLabel,"aria-pressed":nativeAriaPressed,...buttonProps},ref){for(let[name,value]of [["active",active],["iconOnly",iconOnly],["disabled",disabled],["loading",loading],["stopPropagation",stopPropagation]])if(typeof value!="boolean")throw new TypeError(`BaseButton ${name} must be a boolean.`);if(size2!==void 0&&size2!=="sm"&&size2!=="md"&&size2!=="lg")throw new TypeError('BaseButton size must be "sm", "md", or "lg".');if(tone!==void 0&&tone!=="default"&&tone!=="primary"&&tone!=="success"&&tone!=="warning"&&tone!=="danger"&&tone!=="muted")throw new TypeError('BaseButton tone must be "default", "primary", "success", "warning", "danger", or "muted".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance({...resolvedAppearance,variant,density,state}),resolvedLabel=children??label,hasLabel=hasRenderableNode(resolvedLabel)&&(typeof resolvedLabel!="string"||!!resolvedLabel.trim()),explicitAriaLabel=nonEmptyText(ariaLabel)??nonEmptyText(nativeAriaLabel),labelText=typeof resolvedLabel=="string"?nonEmptyText(resolvedLabel):void 0,resolvedTitle=nonEmptyText(title);if(iconOnly&&!hasLabel&&!explicitAriaLabel&&!resolvedTitle)throw new TypeError("BaseButton iconOnly requires ariaLabel, aria-label, title, or a renderable label.");let resolvedAriaLabel=explicitAriaLabel??labelText??resolvedTitle,resolvedDisabled=disabled||loading,resolvedTone=tone??"default",resolvedState=state??(loading?"loading":disabled?"disabled":active?"active":"idle"),handleClick=event=>{stopPropagation&&event.stopPropagation(),!resolvedDisabled&&onClick?.(event);};return jsxRuntime.jsxs("button",{...componentAttributes,...buttonProps,ref,type,title,"aria-label":resolvedAriaLabel,"aria-pressed":nativeAriaPressed??(active||void 0),"aria-busy":loading||void 0,"data-variant":theme.variant,"data-density":theme.density,disabled:resolvedDisabled,"data-monkeys-component":"button","data-slot":"root","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,"data-active":active||void 0,"data-loading":loading||void 0,"data-disabled":resolvedDisabled||void 0,"data-icon-only":iconOnly||void 0,className:cn(theme.slots.buttonBase,iconOnly&&theme.slots.buttonIconOnly,size2&&buttonSizeClassNames[size2],iconOnly&&size2&&iconOnlySizeClassNames[size2],getBaseButtonToneClassName(theme,tone,active),resolvedDisabled&&theme.slots.buttonDisabled,classNames?.root,className),style:{...theme.styles.button,...active?theme.styles.buttonActive:void 0,...resolvedDisabled?theme.styles.buttonDisabled:void 0,...style},onClick:handleClick,children:[loading?jsxRuntime.jsx("span",{"data-slot":"icon","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:cn(theme.slots.buttonIcon,size2&&iconSizeClassNames[size2],classNames?.icon),children:jsxRuntime.jsx(LoadingIcon,{})}):icon?jsxRuntime.jsx("span",{"data-slot":"icon","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:cn(theme.slots.buttonIcon,size2&&iconSizeClassNames[size2],classNames?.icon),children:icon}):null,iconOnly?hasRenderableNode(resolvedLabel)?jsxRuntime.jsx("span",{"data-slot":"label","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:"sr-only",children:resolvedLabel}):null:hasRenderableNode(resolvedLabel)?jsxRuntime.jsx("span",{"data-slot":"label","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:cn(theme.slots.buttonLabel,classNames?.label),children:resolvedLabel}):null,!loading&&endIcon?jsxRuntime.jsx("span",{"data-slot":"end-icon","data-state":resolvedState,"data-tone":resolvedTone,"data-size":size2,className:cn(theme.slots.buttonIcon,size2&&iconSizeClassNames[size2],classNames?.icon,classNames?.endIcon),children:endIcon}):null]})});function resolveBaseFieldValidationResult(result){if(result===null)return null;if(typeof result=="string"&&result.trim().length>0)return result;throw new TypeError("BaseField validate must return a non-empty error string or null.")}var BaseFieldContext=React8.createContext(null);function useBaseFieldControl(){let context=React8.useContext(BaseFieldContext),controlKeyRef=React8.useRef(null);controlKeyRef.current===null&&(controlKeyRef.current=Symbol("BaseFieldControl"));let registerControl=context?.registerControl;React8.useEffect(()=>{if(!(!registerControl||controlKeyRef.current===null))return registerControl(controlKeyRef.current)},[registerControl]);let notifyBlur=context?.notifyBlur,notifyChange=context?.notifyChange;return {invalid:context?.invalid??false,notifyBlur:React8.useCallback(value=>notifyBlur?.(value),[notifyBlur]),notifyChange:React8.useCallback(value=>notifyChange?.(value),[notifyChange])}}var boxSizeClassNames={sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"},indicatorSizeClassNames={sm:"text-[10px]",md:"text-[11px]",lg:"text-xs"};function setRefs(element,...refs){for(let ref of refs)if(ref){if(typeof ref=="function"){ref(element);continue}ref.current=element;}}var BaseCheckbox=React8.forwardRef(function({label,description,indeterminate=false,invalid:invalid2=false,disabled=false,controlSize,appearance:appearance2,className,classNames,style,checked,defaultChecked,onBlur,onChange,"aria-invalid":nativeAriaInvalid,...checkboxProps},forwardedRef){for(let[name,value]of [["indeterminate",indeterminate],["invalid",invalid2],["disabled",disabled]])if(typeof value!="boolean")throw new TypeError(`BaseCheckbox ${name} must be a boolean.`);if(controlSize!==void 0&&controlSize!=="sm"&&controlSize!=="md"&&controlSize!=="lg")throw new TypeError('BaseCheckbox controlSize must be "sm", "md", or "lg".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),fieldControl=useBaseFieldControl(),resolvedInvalid=invalid2||fieldControl.invalid,hasLabel=hasRenderableNode(label),hasDescription=hasNonEmptyRenderableNode(description),inputRef=React8.useRef(null),indeterminateRef=React8.useRef(indeterminate);indeterminateRef.current=indeterminate;let[uncontrolledChecked,setUncontrolledChecked]=React8.useState(defaultChecked??false),isControlled=checked!==void 0,resolvedChecked=!!(isControlled?checked:uncontrolledChecked),active=indeterminate||resolvedChecked,state=indeterminate?"mixed":resolvedChecked?"checked":"unchecked",setInputRef=React8.useCallback(element=>{inputRef.current=element,element&&(element.indeterminate=indeterminateRef.current),setRefs(element,forwardedRef);},[forwardedRef]);React8.useEffect(()=>{inputRef.current&&(inputRef.current.indeterminate=indeterminate);},[indeterminate]);let handleChange=event=>{disabled||(isControlled||setUncontrolledChecked(event.currentTarget.checked),onChange?.(event),fieldControl.notifyChange(event.currentTarget.checked),inputRef.current&&(inputRef.current.indeterminate=indeterminate));};return jsxRuntime.jsxs("label",{...componentAttributes,"data-monkeys-component":"checkbox","data-slot":"root","data-state":state,"data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,className:cn(theme.slots.checkboxRoot,!hasDescription&&"items-center",disabled&&theme.slots.checkboxDisabled,classNames?.root,className),style:{...theme.styles.checkboxRoot,...style},children:[jsxRuntime.jsxs("span",{"data-slot":"box","data-state":state,"data-size":controlSize,className:cn(theme.slots.checkboxBox,!hasDescription&&"mt-0",active&&theme.slots.checkboxBoxChecked,resolvedInvalid&&theme.slots.checkboxBoxInvalid,controlSize&&boxSizeClassNames[controlSize],classNames?.box),style:{...theme.styles.checkboxBox},children:[jsxRuntime.jsx("input",{...checkboxProps,ref:setInputRef,type:"checkbox",disabled,checked,defaultChecked,"aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"aria-checked":indeterminate?"mixed":resolvedChecked,"data-slot":"input","data-state":state,"data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,className:cn(theme.slots.checkboxInput,classNames?.input),onBlur:event=>{onBlur?.(event),fieldControl.notifyBlur(event.currentTarget.checked);},onChange:handleChange}),active?jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"indicator","data-state":state,"data-size":controlSize,className:cn(theme.slots.checkboxIndicator,controlSize&&indicatorSizeClassNames[controlSize],classNames?.indicator),children:indeterminate?"\u2013":"\u2713"}):null]}),hasLabel||hasDescription?jsxRuntime.jsxs("span",{"data-slot":"content",className:cn(theme.slots.checkboxContent,classNames?.content),children:[hasLabel?jsxRuntime.jsx("span",{"data-slot":"label",className:cn(theme.slots.checkboxLabel,classNames?.label),children:label}):null,hasDescription?jsxRuntime.jsx("span",{"data-slot":"description",className:cn(theme.slots.checkboxDescription,classNames?.description),children:description}):null]}):null]})});var BaseCode=React8.forwardRef(function({children,display="inline",appearance:appearance2,className,classNames,style,...codeProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);return display==="block"?jsxRuntime.jsx("pre",{...componentAttributes,...codeProps,ref,"data-monkeys-component":"code","data-slot":"root","data-display":"block",className:cn(theme.slots.codeBlock,classNames?.root,className),style:{...theme.styles.code,...style},children:jsxRuntime.jsx("code",{"data-slot":"code",className:cn(theme.slots.codeContent,classNames?.code),style:theme.styles.codeContent,children})}):jsxRuntime.jsx("code",{...componentAttributes,...codeProps,ref,"data-monkeys-component":"code","data-slot":"root","data-display":"inline",className:cn(theme.slots.codeInline,theme.slots.codeContent,classNames?.root,classNames?.code,className),style:{...theme.styles.code,...theme.styles.codeContent,...style},children})});var columnClassNames={1:"grid-cols-1",2:"md:grid-cols-2",3:"md:grid-cols-2 xl:grid-cols-3"};function BaseDescriptionList({items,columns=1,appearance:appearance2,className,classNames,style,children,...listProps}){let theme=resolveBaseAppearance(appearance2);return jsxRuntime.jsxs("dl",{...listProps,className:cn(theme.slots.descriptionListRoot,columnClassNames[columns],classNames?.root,className),style:{...theme.styles.descriptionList,...style},children:[items?.map((item,index)=>jsxRuntime.jsxs("div",{className:cn(theme.slots.descriptionListItem,classNames?.item),children:[jsxRuntime.jsx("dt",{className:cn(theme.slots.descriptionListTerm,classNames?.term),children:item.term}),jsxRuntime.jsx("dd",{className:cn(theme.slots.descriptionListValue,classNames?.value),children:item.value})]},index)),children]})}function DefaultEmptyIcon(){return jsxRuntime.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"h-6 w-6",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.8",children:[jsxRuntime.jsx("rect",{width:"16",height:"12",x:"4",y:"6",rx:"2"}),jsxRuntime.jsx("path",{d:"M8 10h8"}),jsxRuntime.jsx("path",{d:"M8 14h5"})]})}var BaseEmptyState=React8.forwardRef(function({icon=jsxRuntime.jsx(DefaultEmptyIcon,{}),title,description,actions,variant,appearance:appearance2,className,classNames,style,...stateProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),statusStates=useMonkeysStatusStates(),resolvedVariant=variant??statusStates.empty?.variant??"default",densityClassName=statusStates.density==="compact"?"min-h-0 px-3 py-3":statusStates.density==="comfortable"?"min-h-56 px-8 py-12":void 0,theme=resolveBaseAppearance(resolvedAppearance);return jsxRuntime.jsxs("div",{...componentAttributes,...stateProps,ref,"data-monkeys-component":"empty-state","data-slot":"root","data-state":"empty","data-variant":resolvedVariant,"data-density":statusStates.density,className:cn(theme.slots.stateRoot,densityClassName,resolvedVariant==="compact"&&"min-h-0 gap-1 py-3",classNames?.root,className),style:{...theme.styles.stateRoot,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("div",{"data-slot":"icon","data-state":"empty",className:cn(theme.slots.stateIcon,classNames?.icon),style:theme.styles.stateIcon,children:icon}):null,hasRenderableNode(title)?jsxRuntime.jsx("div",{"data-slot":"title","data-state":"empty",className:cn(theme.slots.stateTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{"data-slot":"description","data-state":"empty",className:cn(theme.slots.stateDescription,classNames?.description),children:description}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{"data-slot":"actions","data-state":"empty",className:cn(theme.slots.stateActions,classNames?.actions),children:actions}):null]})});function validateBoolean2(value,name){if(typeof value!="boolean")throw new TypeError(`BaseTooltip ${name} must be a boolean.`)}function validatePlacement(value){if(value!=="top"&&value!=="bottom"&&value!=="left"&&value!=="right")throw new TypeError('BaseTooltip placement must be "top", "bottom", "left", or "right".')}function normalizeTrigger(children,disabled){return React8.isValidElement(children)&&children.type!==React8.Fragment?children:jsxRuntime.jsx("span",{tabIndex:!disabled&&hasRenderableNode(children)?0:void 0,children})}var BaseTooltip=React8.forwardRef(function({content,children,open,defaultOpen=false,placement="top",disabled=false,portal=false,appearance:appearance2,className,classNames,style,onOpenChange,...tooltipProps},ref){open!==void 0&&validateBoolean2(open,"open"),validateBoolean2(defaultOpen,"defaultOpen"),validateBoolean2(disabled,"disabled"),validateBoolean2(portal,"portal"),validatePlacement(placement);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),overlayPortal=useBaseOverlayPortal({disabled:!portal}),[uncontrolledOpen,setUncontrolledOpen]=React8.useState(defaultOpen),isControlled=open!==void 0,canShow=!disabled&&hasRenderableNode(content),isOpen=canShow&&(isControlled?open:uncontrolledOpen),portalState=portal&&overlayPortal.shouldPortal?"portaled":"inline",handleOpenChange=nextOpen=>{nextOpen&&!canShow||(isControlled||setUncontrolledOpen(nextOpen),onOpenChange?.(nextOpen));},trigger=normalizeTrigger(children,disabled),tooltipContent=canShow?jsxRuntime.jsx(Tooltip__namespace.Content,{...componentAttributes,side:placement,sideOffset:8,collisionPadding:8,"data-monkeys-component":"tooltip","data-slot":"content","data-placement":placement,"data-portal":portalState,"data-disabled":disabled||void 0,className:cn(theme.slots.tooltipContent,classNames?.content),style:theme.styles.tooltip,children:content}):null;return jsxRuntime.jsx("span",{...componentAttributes,...tooltipProps,ref,"data-monkeys-component":"tooltip","data-slot":"root","data-state":isOpen?"open":"closed","data-placement":placement,"data-portal":portalState,"data-disabled":disabled||void 0,className:cn(theme.slots.tooltipRoot,classNames?.root,className),style,children:jsxRuntime.jsx(Tooltip__namespace.Provider,{delayDuration:0,skipDelayDuration:0,disableHoverableContent:true,children:jsxRuntime.jsxs(Tooltip__namespace.Root,{open:isOpen,onOpenChange:handleOpenChange,delayDuration:0,disableHoverableContent:true,children:[jsxRuntime.jsx("span",{...componentAttributes,"data-monkeys-component":"tooltip","data-slot":"trigger-wrapper","data-state":isOpen?"open":"closed","data-placement":placement,"data-portal":portalState,"data-disabled":disabled||void 0,className:cn(theme.slots.tooltipTrigger,classNames?.trigger),children:jsxRuntime.jsx(Tooltip__namespace.Trigger,{asChild:true,...componentAttributes,"data-monkeys-component":"tooltip","data-slot":"trigger","data-placement":placement,"data-portal":portalState,"data-disabled":disabled||void 0,children:trigger})}),portal&&overlayPortal.shouldPortal?jsxRuntime.jsx(Tooltip__namespace.Portal,{...overlayPortal.radixPortalProps,children:tooltipContent}):tooltipContent]})})})});var FormHelpPresentationContext=React8.createContext(false);function BaseFormHelp({children}){let{locale}=useMonkeysLocale();return children==null||children===""?null:jsxRuntime.jsx(BaseTooltip,{content:children,portal:true,children:jsxRuntime.jsx("button",{type:"button","aria-label":typeof children=="string"?children:locale.startsWith("zh")?"\u8BF4\u660E":"Help","data-form-help":true,className:"inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:jsxRuntime.jsx(lucideReact.HelpCircle,{className:"h-4 w-4","aria-hidden":"true"})})})}function mergeAriaIds(...values){let ids2=values.flatMap(value=>value?.split(/\s+/).filter(Boolean)??[]);return ids2.length?Array.from(new Set(ids2)).join(" "):void 0}function resolveOptionalId(value,fallback2,name){if(value===void 0)return fallback2;if(!value.trim()||/\s/.test(value))throw new TypeError(`BaseField ${name} must be a non-empty ID without whitespace.`);return value}var BaseField=React8.forwardRef(function({label,description,message,error,required=false,disabled=false,htmlFor,descriptionId,messageId,errorId,validate,validationMode="onBlur",children,appearance:appearance2,className,classNames,style,...fieldProps},ref){for(let[name,value]of [["required",required],["disabled",disabled]])if(typeof value!="boolean")throw new TypeError(`BaseField ${name} must be a boolean.`);if(validate!==void 0&&typeof validate!="function")throw new TypeError("BaseField validate must be a function.");if(validationMode!=="onBlur"&&validationMode!=="onChange")throw new TypeError('BaseField validationMode must be "onBlur" or "onChange".');let descriptionPresentation=React8.useContext(FormHelpPresentationContext)?"tooltip":"inline",generatedId=React8.useId(),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),hasDescription=hasRenderableNode(description),[internalError,setInternalError]=React8.useState(null),registeredControlsRef=React8.useRef(new Set),validateRef=React8.useRef(validate),validationModeRef=React8.useRef(validationMode),disabledRef=React8.useRef(disabled);validateRef.current=validate,validationModeRef.current=validationMode,disabledRef.current=disabled;let hasValidator=validate!==void 0;React8.useEffect(()=>{(!hasValidator||disabled)&&setInternalError(null);},[disabled,hasValidator]),React8.useEffect(()=>{if(hasValidator&®isteredControlsRef.current.size!==1)throw new TypeError("BaseField with validate must contain exactly one compatible Base control.")},[hasValidator]);let registerControl=React8.useCallback(controlKey=>{let registeredControls=registeredControlsRef.current;if(validateRef.current!==void 0&&!registeredControls.has(controlKey)&®isteredControls.size>0)throw new TypeError("BaseField with validate supports exactly one compatible Base control. Use BaseFieldset for control groups.");return registeredControls.add(controlKey),()=>{registeredControls.delete(controlKey);}},[]),runValidation=React8.useCallback((mode,value)=>{let currentValidate=validateRef.current;if(disabledRef.current||currentValidate===void 0||validationModeRef.current!==mode)return;let result=resolveBaseFieldValidationResult(currentValidate(value));if(result===null){setInternalError(null);return}setInternalError(result);},[]),notifyBlur=React8.useCallback(value=>runValidation("onBlur",value),[runValidation]),notifyChange=React8.useCallback(value=>runValidation("onChange",value),[runValidation]),resolvedError=hasRenderableNode(error)?error:internalError,hasError=hasRenderableNode(resolvedError),hasMessage=!hasError&&hasRenderableNode(message),resolvedMessage=hasError?resolvedError:message,resolvedControlId=htmlFor??`${generatedId}-control`,resolvedDescriptionId=hasDescription?resolveOptionalId(descriptionId,`${generatedId}-description`,"descriptionId"):void 0,resolvedMessageId=hasMessage?resolveOptionalId(messageId,`${generatedId}-message`,"messageId"):void 0,resolvedErrorId=hasError?resolveOptionalId(errorId,`${generatedId}-error`,"errorId"):void 0,controlProps={id:resolvedControlId,"aria-describedby":mergeAriaIds(resolvedDescriptionId,resolvedMessageId),"aria-errormessage":resolvedErrorId,"aria-invalid":hasError?true:void 0,"aria-required":required?true:void 0,required:required||void 0,disabled:disabled||void 0},renderedChildren=typeof children=="function"?children(controlProps):children,fieldContextValue=React8.useMemo(()=>({invalid:hasError,registerControl,notifyBlur,notifyChange}),[hasError,notifyBlur,notifyChange,registerControl]);return jsxRuntime.jsxs("div",{...componentAttributes,...fieldProps,ref,"aria-disabled":disabled||void 0,"data-monkeys-component":"field","data-slot":"root","data-required":required||void 0,"data-disabled":disabled||void 0,"data-invalid":hasError||void 0,className:cn(theme.slots.fieldRoot,disabled&&theme.slots.controlDisabled,classNames?.root,className),style:{...theme.styles.field,...style},children:[hasRenderableNode(label)?jsxRuntime.jsxs("div",{"data-slot":"label-row",className:cn(theme.slots.fieldLabelRow,classNames?.labelRow),children:[jsxRuntime.jsxs("label",{htmlFor:typeof children=="function"?resolvedControlId:htmlFor,"data-slot":"label",className:cn(theme.slots.fieldLabel,classNames?.label),children:[label,required?jsxRuntime.jsxs("span",{"aria-hidden":"true","data-slot":"required-indicator",className:cn(theme.slots.fieldRequired,classNames?.required),children:[" ","*"]}):null]}),descriptionPresentation==="tooltip"&&hasDescription?jsxRuntime.jsx(BaseFormHelp,{children:description}):null]}):null,hasDescription?jsxRuntime.jsx("div",{id:resolvedDescriptionId,"data-slot":"description",className:cn(theme.slots.fieldDescription,classNames?.description,descriptionPresentation==="tooltip"&&"sr-only"),children:description}):null,hasRenderableNode(renderedChildren)?jsxRuntime.jsx("div",{"data-slot":"control",className:cn(theme.slots.fieldControl,classNames?.control),style:theme.styles.fieldControl,children:jsxRuntime.jsx(BaseFieldContext.Provider,{value:fieldContextValue,children:renderedChildren})}):null,hasRenderableNode(resolvedMessage)?jsxRuntime.jsx("div",{id:hasError?resolvedErrorId:resolvedMessageId,role:hasError?"alert":void 0,"data-slot":hasError?"error":"message",className:cn(theme.slots.fieldMessage,hasError&&"text-destructive-text",classNames?.message),children:resolvedMessage}):null]})});function mergeAriaIds2(...values){let ids2=values.flatMap(value=>value?.split(/\s+/).filter(Boolean)??[]);return ids2.length?Array.from(new Set(ids2)).join(" "):void 0}function resolveOptionalId2(value,fallback2,name){if(value===void 0)return fallback2;if(!value.trim()||/\s/.test(value))throw new TypeError(`BaseFieldset ${name} must be a non-empty ID without whitespace.`);return value}var BaseFieldset=React8.forwardRef(function({children,legend,description,descriptionId,error,errorId,disabled,appearance:appearance2,className,classNames,style,"aria-describedby":ariaDescribedBy,"aria-errormessage":ariaErrorMessage,...fieldsetProps},ref){let generatedId=React8.useId(),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);if(!hasRenderableNode(legend)||typeof legend=="string"&&!legend.trim())throw new TypeError("BaseFieldset legend must contain an accessible name.");if(disabled!==void 0&&typeof disabled!="boolean")throw new TypeError("BaseFieldset disabled must be a boolean.");let hasDescription=hasRenderableNode(description),hasError=hasRenderableNode(error),resolvedDescriptionId=hasDescription?resolveOptionalId2(descriptionId,`${generatedId}-description`,"descriptionId"):void 0,resolvedErrorId=hasError?resolveOptionalId2(errorId,`${generatedId}-error`,"errorId"):void 0;return jsxRuntime.jsxs("fieldset",{...componentAttributes,...fieldsetProps,ref,disabled,"aria-describedby":mergeAriaIds2(ariaDescribedBy,resolvedDescriptionId),"aria-errormessage":mergeAriaIds2(ariaErrorMessage,resolvedErrorId),"data-monkeys-component":"fieldset","data-slot":"root",className:cn(theme.slots.fieldsetRoot,classNames?.root,className),style:{...theme.styles.fieldset,...style},children:[jsxRuntime.jsx("legend",{"data-slot":"legend",className:cn(theme.slots.fieldsetLegend,classNames?.legend),style:theme.styles.fieldsetLegend,children:legend}),hasDescription?jsxRuntime.jsx("div",{id:resolvedDescriptionId,"data-slot":"description",className:cn(theme.slots.fieldsetDescription,classNames?.description),style:theme.styles.fieldsetDescription,children:description}):null,hasError?jsxRuntime.jsx("div",{id:resolvedErrorId,"data-slot":"error",className:cn(theme.slots.fieldsetError,classNames?.error),style:theme.styles.fieldsetError,children:error}):null,jsxRuntime.jsx("div",{"data-slot":"content",className:cn(theme.slots.fieldsetContent,classNames?.content),style:theme.styles.fieldsetContent,children})]})});function isHeadingLevel(value){return typeof value=="number"&&Number.isInteger(value)&&value>=1&&value<=6}var BaseHeading=React8.forwardRef(function({level=2,children,size:size2="lg",tone="default",appearance:appearance2,className,classNames,style,...headingProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);if(!isHeadingLevel(level))throw new RangeError("BaseHeading level must be an integer from 1 to 6.");return React8.createElement(`h${level}`,{...componentAttributes,...headingProps,ref,"data-monkeys-component":"heading","data-slot":"root","data-level":level,"data-size":size2,"data-tone":tone,className:cn(theme.slots.headingRoot,getBaseHeadingSizeClassName(theme,size2),getBaseTypographyToneClassName(theme,tone),classNames?.root,className),style:{...theme.styles.heading,...style}},children)});var controlSizeClassNames={sm:"h-8 px-2.5 text-xs",md:"h-9 px-3 text-sm",lg:"h-10 px-3.5 text-base"},BaseInput=React8.forwardRef(function({icon,trailing,invalid:invalid2=false,disabled=false,readOnly=false,controlSize,appearance:appearance2,className,classNames,style,"aria-invalid":nativeAriaInvalid,onBlur,onChange,...inputProps},ref){for(let[name,value]of [["invalid",invalid2],["disabled",disabled],["readOnly",readOnly]])if(typeof value!="boolean")throw new TypeError(`BaseInput ${name} must be a boolean.`);if(controlSize!==void 0&&controlSize!=="sm"&&controlSize!=="md"&&controlSize!=="lg")throw new TypeError('BaseInput controlSize must be "sm", "md", or "lg".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),fieldControl=useBaseFieldControl(),resolvedInvalid=invalid2||fieldControl.invalid;return jsxRuntime.jsxs("div",{...componentAttributes,"data-monkeys-component":"input","data-slot":"root","data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,"data-readonly":readOnly||void 0,className:cn(theme.slots.controlWrapper,resolvedInvalid&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,readOnly&&theme.slots.controlReadOnly,classNames?.root,className),style:{...theme.styles.control,...resolvedInvalid?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("span",{"data-slot":"icon",className:cn(theme.slots.controlIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsx("input",{...inputProps,ref,disabled,readOnly,"aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"data-slot":"control","data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,"data-readonly":readOnly||void 0,className:cn(theme.slots.controlBase,theme.slots.controlInput,controlSize&&controlSizeClassNames[controlSize],classNames?.control),onBlur:event=>{onBlur?.(event),fieldControl.notifyBlur(event.currentTarget.value);},onChange:event=>{onChange?.(event),fieldControl.notifyChange(event.currentTarget.value);}}),hasRenderableNode(trailing)?jsxRuntime.jsx("span",{"data-slot":"trailing",className:cn(theme.slots.controlTrailing,classNames?.trailing),children:trailing}):null]})});var BaseInline=React8.forwardRef(function({children,gap,align="center",justify="start",wrap=true,appearance:appearance2,className,classNames,style,...inlineProps},ref){let bentoDepth=useBentoDepth(),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);if(typeof wrap!="boolean")throw new TypeError("BaseInline wrap must be a boolean.");let resolvedGap=gap===void 0?void 0:resolveBaseLayoutLength("BaseInline","gap",gap);return jsxRuntime.jsx("div",{...componentAttributes,...inlineProps,ref,"data-monkeys-component":"inline","data-slot":"root","data-align":align,"data-justify":justify,"data-wrap":wrap?"wrap":"nowrap",className:cn(theme.slots.inlineRoot,bentoDepth>0&&gap===void 0&&"gap-[var(--monkeys-bento-gap)]",resolvedAppearance?.slots?.inlineRoot,classNames?.root,className),style:{...theme.styles.inline,gap:resolvedGap??theme.styles.inline?.gap,alignItems:resolveBaseLayoutAlign("BaseInline",align),justifyContent:resolveBaseLayoutJustify("BaseInline",justify),flexWrap:wrap?"wrap":"nowrap",...style},children})});var DEFAULT_SPLIT_SIZE=50,DEFAULT_MIN_SIZE=20,DEFAULT_MAX_SIZE=80,DEFAULT_KEYBOARD_STEP=2.5;function assignRef2(ref,value){typeof ref=="function"?ref(value):ref&&(ref.current=value);}function assertBoolean(name,value){if(typeof value!="boolean")throw new TypeError(`BaseLayout ${name} must be a boolean.`)}function assertOrientation(orientation){if(orientation!=="horizontal"&&orientation!=="vertical")throw new TypeError('BaseLayout orientation must be "horizontal" or "vertical".')}function toCssSize(value,fallback2){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new Error("BaseLayout size and gap props must be finite, non-negative numbers.");return `${value}px`}if(typeof value=="string"){if(value.trim().length===0)throw new TypeError("BaseLayout size and gap string props must not be empty.");return value}return fallback2}function assertPercent(name,value){if(!Number.isFinite(value))throw new Error(`BaseLayoutSplit ${name} must be a finite number.`);if(value<0||value>100)throw new Error(`BaseLayoutSplit ${name} must be between 0 and 100.`);return value}function clamp(value,min,max){return Math.min(Math.max(value,min),max)}function resolveSplitBounds({minSize=DEFAULT_MIN_SIZE,maxSize=DEFAULT_MAX_SIZE,keyboardStep=DEFAULT_KEYBOARD_STEP}){let min=assertPercent("minSize",minSize),max=assertPercent("maxSize",maxSize);if(min>max)throw new Error("BaseLayoutSplit minSize cannot be greater than maxSize.");if(!Number.isFinite(keyboardStep)||keyboardStep<=0)throw new Error("BaseLayoutSplit keyboardStep must be a finite positive number.");return {min,max,keyboardStep}}function resolveSplitSize(name,value,fallback2,min,max){return clamp(assertPercent(name,value??fallback2),min,max)}function getSeparatorOrientation(orientation){return orientation==="horizontal"?"vertical":"horizontal"}function isRtl(element){let ownerWindow=element.ownerDocument.defaultView;return ownerWindow?ownerWindow.getComputedStyle(element).direction==="rtl":element.closest('[dir="rtl"]')!==null}function setPointerCaptureIfAvailable(target,pointerId){if(target.setPointerCapture)try{target.setPointerCapture(pointerId);}catch(error){let OwnerDOMException=target.ownerDocument.defaultView?.DOMException;if(OwnerDOMException&&error instanceof OwnerDOMException&&error.name==="NotFoundError")return;throw error}}var BaseLayout=React8.forwardRef(function({header,sidebar,aside,sidebarLabel,asideLabel,footer,children,sidebarSize,asideSize,gap,fullHeight=false,appearance:appearance2,className,classNames,style,...layoutProps},ref){assertBoolean("fullHeight",fullHeight);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),hasHeader=hasRenderableNode(header),hasSidebar=hasRenderableNode(sidebar),hasAside=hasRenderableNode(aside),hasFooter=hasRenderableNode(footer),bodyColumns=[hasSidebar?"var(--base-layout-sidebar-size)":void 0,"minmax(0, 1fr)",hasAside?"var(--base-layout-aside-size)":void 0].filter(Boolean).join(" "),layoutRows=[hasHeader?"auto":void 0,"minmax(0, 1fr)",hasFooter?"auto":void 0].filter(Boolean).join(" "),resolvedGap=gap!==void 0?toCssSize(gap,"0px"):void 0,layoutStyle={...theme.styles.layout,"--base-layout-sidebar-size":toCssSize(sidebarSize,"16rem"),"--base-layout-aside-size":toCssSize(asideSize,"20rem"),gridTemplateRows:layoutRows,...resolvedGap!==void 0?{gap:resolvedGap}:{},...style},bodyStyle={...theme.styles.layoutBody,gridTemplateColumns:bodyColumns,...resolvedGap!==void 0?{gap:resolvedGap}:{}};return jsxRuntime.jsxs("div",{...componentAttributes,...layoutProps,ref,"data-monkeys-component":"layout","data-slot":"root","data-full-height":fullHeight?"true":"false",className:cn(theme.slots.layoutRoot,fullHeight&&theme.slots.layoutRootFull,classNames?.root,className),style:layoutStyle,children:[hasHeader?jsxRuntime.jsx("div",{"data-slot":"header",className:cn(theme.slots.layoutHeader,classNames?.header),style:theme.styles.layoutHeader,children:header}):null,jsxRuntime.jsxs("div",{"data-slot":"body",className:cn(theme.slots.layoutBody,classNames?.body),style:bodyStyle,children:[hasSidebar?jsxRuntime.jsx("aside",{"aria-label":sidebarLabel,"data-slot":"sidebar",className:cn(theme.slots.layoutSidebar,classNames?.sidebar),style:theme.styles.layoutSidebar,children:sidebar}):null,jsxRuntime.jsx("main",{"data-slot":"main",className:cn(theme.slots.layoutMain,classNames?.main),style:theme.styles.layoutMain,children}),hasAside?jsxRuntime.jsx("aside",{"aria-label":asideLabel,"data-slot":"aside",className:cn(theme.slots.layoutAside,classNames?.aside),style:theme.styles.layoutAside,children:aside}):null]}),hasFooter?jsxRuntime.jsx("div",{"data-slot":"footer",className:cn(theme.slots.layoutFooter,classNames?.footer),style:theme.styles.layoutFooter,children:footer}):null]})}),BaseLayoutPane=React8.forwardRef(function({as="div",scrollable=false,bordered=true,surface="default",children,appearance:appearance2,className,classNames,style,...paneProps},ref){assertBoolean("scrollable",scrollable),assertBoolean("bordered",bordered);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance);return jsxRuntime.jsx(as,{...componentAttributes,...paneProps,ref,"data-monkeys-component":"layout-pane","data-slot":"root","data-scrollable":scrollable?"true":"false","data-surface":surface,className:cn(theme.slots.layoutPane,scrollable&&theme.slots.layoutPaneScrollable,bordered&&theme.slots.layoutPaneBordered,surface==="muted"&&theme.slots.layoutPaneMuted,surface==="soft"&&theme.slots.layoutPaneSoft,surface==="transparent"&&theme.slots.layoutPaneTransparent,classNames?.root,className),style:{...theme.styles.layoutPane,...style},children})}),BaseLayoutResizeHandle=React8.forwardRef(function({orientation="horizontal",resizable=false,disabled=false,size:size2,minSize,maxSize,label,appearance:appearance2,className,classNames,style,tabIndex,...handleProps},ref){assertOrientation(orientation),assertBoolean("resizable",resizable),assertBoolean("disabled",disabled);let resolvedMin=minSize===void 0?void 0:assertPercent("minSize",minSize),resolvedMax=maxSize===void 0?void 0:assertPercent("maxSize",maxSize);if(resolvedMin!==void 0&&resolvedMax!==void 0&&resolvedMin>resolvedMax)throw new Error("BaseLayoutSplit minSize cannot be greater than maxSize.");let resolvedSize=size2===void 0?void 0:clamp(assertPercent("size",size2),resolvedMin??0,resolvedMax??100),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),messages=useMonkeysLocaleMessages().layout,theme=resolveBaseAppearance(resolvedAppearance),resolvedLabel=label??messages.resizePanels;if(resizable&&(typeof resolvedLabel!="string"||resolvedLabel.trim().length===0))throw new TypeError("BaseLayoutResizeHandle label must be a non-empty string.");let interactive=resizable&&!disabled,separatorOrientation=getSeparatorOrientation(orientation);return jsxRuntime.jsx("div",{...componentAttributes,...handleProps,ref,"data-monkeys-component":"layout-resize-handle","data-slot":"handle","data-orientation":orientation,"data-state":interactive?"enabled":disabled?"disabled":"static",role:resizable?"separator":void 0,"aria-label":resizable?resolvedLabel:void 0,"aria-orientation":resizable?separatorOrientation:void 0,"aria-valuemin":resizable?resolvedMin:void 0,"aria-valuemax":resizable?resolvedMax:void 0,"aria-valuenow":resizable?resolvedSize:void 0,"aria-disabled":resizable&&disabled?true:void 0,tabIndex:interactive?tabIndex??0:void 0,className:cn(theme.slots.layoutResizeHandle,orientation==="horizontal"?theme.slots.layoutResizeHandleHorizontal:theme.slots.layoutResizeHandleVertical,!interactive&&theme.slots.layoutResizeHandleDisabled,classNames?.root,className),style:{...theme.styles.layoutResizeHandle,...style},children:jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"indicator",className:cn(theme.slots.layoutResizeHandleIndicator,orientation==="horizontal"?"h-8 w-px":"h-px w-8",classNames?.indicator)})})});React8.forwardRef(function({orientation="horizontal",primary,secondary,children,resizable=false,disabled=false,size:size2,defaultSize,minSize,maxSize,gap,keyboardStep,resizeLabel,appearance:appearance2,className,classNames,style,onSizeChange,...splitProps},ref){assertOrientation(orientation),assertBoolean("resizable",resizable),assertBoolean("disabled",disabled);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),bounds=resolveSplitBounds({minSize,maxSize,keyboardStep}),initialSize=resolveSplitSize("defaultSize",defaultSize,DEFAULT_SPLIT_SIZE,bounds.min,bounds.max),[uncontrolledSize,setUncontrolledSize]=React8.useState(initialSize),rootRef=React8.useRef(null),cleanupRef=React8.useRef(null),controlled=size2!==void 0,interactive=resizable&&!disabled,renderedSize=resolveSplitSize("size",controlled?size2:uncontrolledSize,initialSize,bounds.min,bounds.max),resolvedDirection=splitProps.dir??componentAttributes.dir,setRootRef=React8.useCallback(node=>{rootRef.current=node,assignRef2(ref,node);},[ref]),commitSize=React8.useCallback(nextSize=>{let clampedSize=clamp(nextSize,bounds.min,bounds.max);controlled||setUncontrolledSize(clampedSize),onSizeChange?.(clampedSize);},[bounds.max,bounds.min,controlled,onSizeChange]),updateFromPointer=React8.useCallback(event=>{let root=rootRef.current;if(!root)return;let rect=root.getBoundingClientRect(),total=orientation==="horizontal"?rect.width:rect.height;if(!Number.isFinite(total)||total<=0)return;let offset2=orientation==="horizontal"?isRtl(root)?rect.right-event.clientX:event.clientX-rect.left:event.clientY-rect.top;commitSize(offset2/total*100);},[commitSize,orientation]),stopResize=React8.useCallback(()=>{let cleanup=cleanupRef.current;cleanupRef.current=null,cleanup?.();},[]);React8.useEffect(()=>(interactive||stopResize(),stopResize),[interactive,stopResize]);let handlePointerDown=event=>{if(!interactive||event.button!==0&&event.pointerType!=="touch")return;event.preventDefault(),stopResize(),updateFromPointer(event);let pointerId=event.pointerId,target=event.currentTarget,ownerDocument=target.ownerDocument,handleMove=nextEvent=>{nextEvent.pointerId===pointerId&&updateFromPointer(nextEvent);},handleStop=nextEvent=>{nextEvent.pointerId===pointerId&&stopResize();},handleLostCapture=nextEvent=>{nextEvent.pointerId===pointerId&&stopResize();};ownerDocument.addEventListener("pointermove",handleMove),ownerDocument.addEventListener("pointerup",handleStop),ownerDocument.addEventListener("pointercancel",handleStop),target.addEventListener("lostpointercapture",handleLostCapture),cleanupRef.current=()=>{ownerDocument.removeEventListener("pointermove",handleMove),ownerDocument.removeEventListener("pointerup",handleStop),ownerDocument.removeEventListener("pointercancel",handleStop),target.removeEventListener("lostpointercapture",handleLostCapture),target.hasPointerCapture?.(pointerId)&&target.releasePointerCapture?.(pointerId);},setPointerCaptureIfAvailable(target,pointerId);},handleKeyDown=event=>{if(!interactive)return;let step=event.shiftKey?bounds.keyboardStep*4:bounds.keyboardStep,rtl=orientation==="horizontal"&&isRtl(event.currentTarget),nextSize;event.key==="Home"&&(nextSize=bounds.min),event.key==="End"&&(nextSize=bounds.max),orientation==="horizontal"&&event.key==="ArrowLeft"&&(nextSize=renderedSize+(rtl?step:-step)),orientation==="horizontal"&&event.key==="ArrowRight"&&(nextSize=renderedSize+(rtl?-step:step)),orientation==="vertical"&&event.key==="ArrowUp"&&(nextSize=renderedSize-step),orientation==="vertical"&&event.key==="ArrowDown"&&(nextSize=renderedSize+step),nextSize!==void 0&&(event.preventDefault(),commitSize(nextSize));},resolvedGap=gap!==void 0?toCssSize(gap,"0px"):void 0,resizeTrack=resolvedGap!==void 0?"var(--base-layout-split-gap)":"auto",resizeHandleStyle=resolvedGap!==void 0?orientation==="horizontal"?{width:"var(--base-layout-split-gap)"}:{height:"var(--base-layout-split-gap)"}:void 0,splitStyle={...theme.styles.layoutSplit,[orientation==="horizontal"?"gridTemplateColumns":"gridTemplateRows"]:resizable?`${renderedSize}% ${resizeTrack} minmax(0, 1fr)`:`${renderedSize}% minmax(0, 1fr)`,...resizable?{gap:0}:{},...resolvedGap!==void 0?{"--base-layout-split-gap":resolvedGap,...resizable?{}:{gap:resolvedGap}}:{},...style};return jsxRuntime.jsxs("div",{...componentAttributes,...splitProps,ref:setRootRef,"data-monkeys-component":"layout-split","data-slot":"root","data-orientation":orientation,"data-state":interactive?"enabled":disabled?"disabled":"static","data-controlled":controlled?"true":"false",className:cn(theme.slots.layoutSplitRoot,orientation==="horizontal"?theme.slots.layoutSplitHorizontal:theme.slots.layoutSplitVertical,classNames?.root,className),style:splitStyle,children:[jsxRuntime.jsx("div",{"data-slot":"primary",className:cn(theme.slots.layoutSplitPane,theme.slots.layoutSplitPrimary,classNames?.primary),style:theme.styles.layoutSplitPane,children:hasRenderableNode(primary)?primary:children}),resizable?jsxRuntime.jsx(BaseLayoutResizeHandle,{orientation,resizable:true,disabled,size:renderedSize,minSize:bounds.min,maxSize:bounds.max,label:resizeLabel,appearance:appearance2,dir:resolvedDirection,className:classNames?.handle,style:resizeHandleStyle,onPointerDown:handlePointerDown,onKeyDown:handleKeyDown}):null,jsxRuntime.jsx("div",{"data-slot":"secondary",className:cn(theme.slots.layoutSplitPane,theme.slots.layoutSplitSecondary,classNames?.secondary),style:theme.styles.layoutSplitPane,children:secondary})]})});var skeletonAnimations=["pulse","shimmer","shimmer-soft","shimmer-diagonal","shimmer-vertical","drift","outline","none"];function validateSkeletonAnimation(value,grouped=false){if(!(value===void 0||skeletonAnimations.includes(value))&&!(grouped&&(value==="shimmer-shared"||value==="shimmer-stagger")))throw new TypeError(`Skeleton animation must be ${skeletonAnimations.join(", ")}${grouped?", shimmer-shared, or shimmer-stagger":""}.`)}var MotionContext=React8.createContext(null),ItemContext=React8.createContext(void 0);function clearGeometry(node){delete node.dataset.skeletonReady;for(let name of ["width","offset","delay"])node.style.removeProperty(`--monkeys-skeleton-${name}`);}function useGroupRegistry(animation,disabled,enabled,containerRef){let registry=React8.useMemo(()=>({nodes:new Map,update:()=>{}}),[]);return React8.useEffect(()=>{if(!enabled||disabled||animation!=="shimmer-shared"&&animation!=="shimmer-stagger")return;let query=window.matchMedia("(prefers-reduced-motion: reduce)"),observer,frame,active=false,observed=new Set,measure=()=>{if(frame=void 0,!active)return;let nodes=[...registry.nodes.keys()].filter(node=>node.isConnected);if(nodes.sort((a,b)=>a.compareDocumentPosition(b)&2?1:-1),animation==="shimmer-stagger"){nodes.forEach((node,index)=>{let item=registry.nodes.get(node)?.item??index;node.style.setProperty("--monkeys-skeleton-delay",`${Math.min(item*80,400)}ms`);});return}let container=containerRef?.current??nodes[0]?.parentElement;for(let node of nodes)for(;container&&!container.contains(node);)container=container.parentElement;let targets=new Set(nodes);for(let node of nodes)for(let ancestor=node.parentElement;ancestor&&(targets.add(ancestor),ancestor!==container);ancestor=ancestor.parentElement);container&&targets.add(container);for(let node of observed)targets.has(node)||(observer?.unobserve(node),observed.delete(node));for(let node of targets)observed.has(node)||(observer?.observe(node),observed.add(node));let boxes=nodes.map(node=>node.getBoundingClientRect()),scales=nodes.map((node,index)=>{let style=getComputedStyle(node),extras=style.boxSizing==="border-box"?0:parseFloat(style.paddingLeft)+parseFloat(style.paddingRight)+parseFloat(style.borderLeftWidth)+parseFloat(style.borderRightWidth),width=parseFloat(style.width)+extras,scale=width?boxes[index].width/width:1;return Math.abs(scale-1)<1e-4?1:scale}),left=Math.min(...boxes.map(box=>box.left)),right=Math.max(...boxes.map(box=>box.right));nodes.forEach((node,index)=>{let box=boxes[index];if(!box.width||!box.height){clearGeometry(node);return}let scale=scales[index];node.style.setProperty("--monkeys-skeleton-width",`${(right-left)/scale}px`),node.style.setProperty("--monkeys-skeleton-offset",`${(left-box.left)/scale}px`),node.dataset.skeletonReady||(node.style.setProperty("--monkeys-skeleton-delay",`${-(performance.now()%2600)}ms`),node.dataset.skeletonReady="true");});},schedule=()=>{active&&frame===void 0&&(frame=window.requestAnimationFrame(measure));},stop=()=>{active=false,observer?.disconnect(),observer=void 0,observed.clear(),frame!==void 0&&window.cancelAnimationFrame(frame),frame=void 0,window.removeEventListener("resize",schedule),window.removeEventListener("scroll",schedule,true),registry.nodes.forEach((_,node)=>clearGeometry(node));},start=()=>{stop(),!(query.matches||animation==="shimmer-shared"&&typeof ResizeObserver>"u")&&(active=true,animation==="shimmer-shared"&&(observer=new ResizeObserver(schedule),window.addEventListener("resize",schedule),window.addEventListener("scroll",schedule,{capture:true,passive:true})),schedule());};return registry.update=schedule,start(),query.addEventListener("change",start),()=>{stop(),query.removeEventListener("change",start),registry.update=()=>{};}},[animation,disabled,enabled,registry,containerRef]),React8.useEffect(()=>{registry.update();}),registry}function SkeletonScope({animation,animated,children,independent=false,containerRef}){if(validateSkeletonAnimation(animation,true),animated!==void 0&&typeof animated!="boolean")throw new TypeError("SkeletonGroup animated must be a boolean.");let parent=React8.useContext(MotionContext),inheritedItem=React8.useContext(ItemContext),ownsGroup=independent||animation!==void 0||!parent,mode=animation??parent?.animation??"pulse",disabled=!!parent?.disabled||animated===false||mode==="none",registry=useGroupRegistry(mode,disabled,ownsGroup,containerRef),value=React8.useMemo(()=>({animation:mode,disabled,registry:ownsGroup?registry:parent.registry}),[mode,disabled,ownsGroup,registry,parent]),content=jsxRuntime.jsx(MotionContext.Provider,{value,children});return jsxRuntime.jsx(ItemContext.Provider,{value:ownsGroup?void 0:inheritedItem,children:content})}function SkeletonItem({index,children}){let parent=React8.useContext(ItemContext);return jsxRuntime.jsx(ItemContext.Provider,{value:parent??index,children})}function useSkeletonRef(receive,forwardedRef){return React8.useMemo(()=>{let cleanup;return element=>{if(receive(element),typeof forwardedRef=="function"){if(cleanup)cleanup(),cleanup=void 0;else if(element===null){forwardedRef(null);return}if(element!==null){let result=forwardedRef(element);typeof result=="function"&&(cleanup=result);}}else forwardedRef&&(forwardedRef.current=element);}},[receive,forwardedRef])}function useSkeletonMotion(animation,animated=true,forwardedRef){validateSkeletonAnimation(animation);let group=React8.useContext(MotionContext),item=React8.useContext(ItemContext),mode=!animated||group?.disabled?"none":animation??group?.animation??"pulse",[node,setNode]=React8.useState(null),ref=useSkeletonRef(setNode,forwardedRef),registry=animation===void 0&&(mode==="shimmer-shared"||mode==="shimmer-stagger")?group?.registry:void 0;return React8.useEffect(()=>{if(!(!node||!registry))return registry.nodes.set(node,{item}),registry.update(),()=>{registry.nodes.delete(node),clearGeometry(node),registry.update();}},[node,registry,item,mode]),{ref,mode,style:mode==="shimmer-stagger"&&item!==void 0?{"--monkeys-skeleton-delay":`${Math.min(item*80,400)}ms`}:void 0}}var variantClassNames={line:"h-4 w-full",block:"h-24 w-full",circle:"aspect-square h-10 rounded-full"},BaseSkeleton=React8.forwardRef(function({variant="line",animated=true,animation,appearance:appearance2,className,classNames,style,...skeletonProps},ref){if(variant!=="line"&&variant!=="block"&&variant!=="circle")throw new TypeError('BaseSkeleton variant must be "line", "block", or "circle".');if(typeof animated!="boolean")throw new TypeError("BaseSkeleton animated must be a boolean.");let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),motion=useSkeletonMotion(animation,animated,ref);return jsxRuntime.jsx("div",{...componentAttributes,...skeletonProps,ref:motion.ref,"aria-hidden":"true","data-monkeys-component":"skeleton","data-slot":"root","data-variant":variant,"data-animated":motion.mode!=="none","data-state":motion.mode!=="none"?"animated":"static","data-skeleton-animation":motion.mode,className:cn(theme.slots.skeletonRoot,variantClassNames[variant],motion.mode==="pulse"&&"motion-safe:animate-pulse motion-reduce:animate-none",classNames?.root,className),style:{...theme.styles.skeleton,...motion.style,...style}})});function DefaultLoadingIcon({className}){return jsxRuntime.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className,fill:"none",children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9",className:"opacity-25",stroke:"currentColor",strokeWidth:"3"}),jsxRuntime.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M12 3a9 9 0 0 1 9 9h-3a6 6 0 0 0-6-6V3Z"})]})}var BaseLoadingState=React8.forwardRef(function({icon,title,description,actions,variant,animation,appearance:appearance2,className,classNames,style,role="status","aria-live":ariaLive="polite","aria-busy":ariaBusy=true,"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,...stateProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),{loading}=useMonkeysLocaleMessages(),statusStates=useMonkeysStatusStates(),resolvedVariant=variant??statusStates.loading?.variant??"spinner",densityClassName=statusStates.density==="compact"?"min-h-0 px-3 py-3":statusStates.density==="comfortable"?"min-h-56 px-8 py-12":void 0,theme=resolveBaseAppearance(resolvedAppearance),resolvedIcon=resolvedVariant==="skeleton"&&icon===void 0?void 0:icon===void 0?jsxRuntime.jsx(DefaultLoadingIcon,{className:theme.slots.loadingSpinner}):icon,resolvedAriaLabel=nativeAriaLabel??(nativeAriaLabelledBy===void 0?typeof title=="string"?title:loading.spinner:void 0);return jsxRuntime.jsxs("div",{...componentAttributes,...stateProps,ref,role,"aria-live":ariaLive,"aria-busy":ariaBusy,"aria-label":resolvedAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"data-monkeys-component":"loading-state","data-slot":"root","data-state":"loading","data-variant":resolvedVariant,"data-density":statusStates.density,className:cn(theme.slots.stateRoot,densityClassName,classNames?.root,className),style:{...theme.styles.stateRoot,...style},children:[resolvedVariant==="skeleton"?jsxRuntime.jsx(SkeletonScope,{animation,children:jsxRuntime.jsxs("div",{className:"flex w-full max-w-sm flex-col gap-3","data-slot":"skeleton",children:[jsxRuntime.jsx(BaseSkeleton,{variant:"block",className:"h-20"}),jsxRuntime.jsx(BaseSkeleton,{variant:"line",className:"w-4/5"}),jsxRuntime.jsx(BaseSkeleton,{variant:"line",className:"w-3/5"})]})}):hasRenderableNode(resolvedIcon)?jsxRuntime.jsx("div",{"data-slot":"icon","data-state":"loading",className:cn(theme.slots.stateIcon,classNames?.icon),style:theme.styles.stateIcon,children:resolvedIcon}):null,resolvedVariant!=="skeleton"&&hasRenderableNode(title)?jsxRuntime.jsx("div",{"data-slot":"title","data-state":"loading",className:cn(theme.slots.stateTitle,classNames?.title),children:title}):null,resolvedVariant!=="skeleton"&&hasRenderableNode(description)?jsxRuntime.jsx("div",{"data-slot":"description","data-state":"loading",className:cn(theme.slots.stateDescription,classNames?.description),children:description}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{"data-slot":"actions","data-state":"loading",className:cn(theme.slots.stateActions,classNames?.actions),children:actions}):null]})});function safeDisplayUrl(value,kind){if(typeof value!="string")return;let text10=value.trim();if(!text10||/[\u0000-\u001f\u007f\\]/.test(text10)||/^https?:/i.test(text10)&&!/^https?:\/\//i.test(text10))return;let url;try{url=new URL(text10,"https://monkeys.invalid/");}catch{return}if(!(url.username||url.password)){if(url.protocol==="http:"||url.protocol==="https:"||kind==="link"&&(url.protocol==="mailto:"||url.protocol==="tel:"))return text10;if(url.protocol==="blob:"){if(url.pathname.startsWith("null/"))return text10;try{let origin=new URL(url.pathname);if(["https:","http:"].includes(origin.protocol)&&!origin.username&&!origin.password)return text10}catch{}}}}function safeDisplaySrcSet(value){if(typeof value!="string"||!value.trim())return;let candidates=value.split(",");for(let candidate of candidates){let parts2=candidate.trim().split(/\s+/);if(!safeDisplayUrl(parts2[0],"media")||parts2.length>2||parts2.length===2&&!/^(?:[1-9]\d*w|(?:\d+(?:\.\d+)?|\.\d+)x)$/.test(parts2[1]))return}return value}var typeaheadResetDelay=500;function validateMultiSelectProps({options:options2,value,defaultValue,invalid:invalid2,disabled,required,openForPreview,maxTagCount}){for(let[name,state]of [["invalid",invalid2],["disabled",disabled],["required",required],["openForPreview",openForPreview]])if(typeof state!="boolean")throw new TypeError(`BaseMultiSelect ${name} must be a boolean.`);if(maxTagCount!==void 0&&typeof maxTagCount!="number")throw new TypeError("BaseMultiSelect maxTagCount must be a number.");if(options2!==void 0&&!Array.isArray(options2))throw new TypeError("BaseMultiSelect options must be an array.");options2?.forEach((option,index)=>{if(!option||typeof option!="object")throw new TypeError(`BaseMultiSelect option at index ${index} must be an object.`);if(typeof option.value!="string")throw new TypeError(`BaseMultiSelect option value at index ${index} must be a string.`);if(option.disabled!==void 0&&typeof option.disabled!="boolean")throw new TypeError(`BaseMultiSelect option disabled at index ${index} must be a boolean.`);if(option.textValue!==void 0&&typeof option.textValue!="string")throw new TypeError(`BaseMultiSelect option textValue at index ${index} must be a string.`)});for(let[name,values]of [["value",value],["defaultValue",defaultValue]]){if(values!==void 0&&!Array.isArray(values))throw new TypeError(`BaseMultiSelect ${name} must be an array.`);values?.forEach((item,index)=>{if(typeof item!="string")throw new TypeError(`BaseMultiSelect ${name} item at index ${index} must be a string.`)});}}function normalizeValues(values){let nextValues=[],seen=new Set;return values?.forEach(value=>{seen.has(value)||(seen.add(value),nextValues.push(value));}),nextValues}function getNextEnabledIndex(options2,currentIndex,direction){if(!options2.length)return -1;let startIndex=currentIndex>=0?currentIndex:direction===1?-1:0;for(let offset2=1;offset2<=options2.length;offset2+=1){let nextIndex=(startIndex+offset2*direction+options2.length)%options2.length;if(!options2[nextIndex]?.disabled)return nextIndex}return -1}function getBoundaryEnabledIndex(options2,boundary){if(boundary==="first")return options2.findIndex(option=>!option.disabled);for(let index=options2.length-1;index>=0;index-=1)if(!options2[index]?.disabled)return index;return -1}function getSafeTagCount(maxTagCount,total){return maxTagCount===void 0||!Number.isFinite(maxTagCount)?total:Math.max(0,Math.min(total,Math.floor(maxTagCount)))}function getOptionText(option){return option.textValue!==void 0?option.textValue:typeof option.label=="string"?option.label:option.value}function toDomId2(value){return value.replace(/[^a-zA-Z0-9_-]/g,"-")}var BaseMultiSelect=React8.forwardRef(function({options:options2,value,defaultValue,name,placeholder,icon,invalid:invalid2=false,disabled=false,required=false,openForPreview=false,maxTagCount,removeLabel,emptyLabel,appearance:appearance2,className,classNames,style,id:id9,"aria-invalid":nativeAriaInvalid,"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,onValueChange,...rootProps},ref){validateMultiSelectProps({options:options2,value,defaultValue,invalid:invalid2,disabled,required,openForPreview,maxTagCount});let messages=useMonkeysLocaleMessages().multiSelect,resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),generatedId=React8.useId(),multiSelectId=id9??generatedId,controlId=`${multiSelectId}-control`,listboxId=`${multiSelectId}-listbox`,rootRef=React8.useRef(null),controlRef=React8.useRef(null),composingRef=React8.useRef(false),typeaheadBufferRef=React8.useRef(""),typeaheadTimerRef=React8.useRef(null),optionList=options2??[],optionIds=optionList.map((option,index)=>`${multiSelectId}-option-${index}-${toDomId2(option.value)}`),forceOpen=openForPreview,[uncontrolledOpen,setUncontrolledOpen]=React8.useState(false),open=forceOpen||uncontrolledOpen,initialDefaultValueRef=React8.useRef(normalizeValues(defaultValue)),[uncontrolledValue,setUncontrolledValue]=React8.useState(()=>[...initialDefaultValueRef.current]),[activeIndex,setActiveIndex]=React8.useState(()=>getBoundaryEnabledIndex(optionList,"first")),isControlled=value!==void 0,selectedValues=React8.useMemo(()=>normalizeValues(isControlled?value:uncontrolledValue),[isControlled,uncontrolledValue,value]),selectedValueSet=React8.useMemo(()=>new Set(selectedValues),[selectedValues]),optionByValue=React8.useMemo(()=>{let map=new Map;return optionList.forEach(option=>{map.has(option.value)||map.set(option.value,option);}),map},[optionList]),selectedOptions=React8.useMemo(()=>selectedValues.map(selectedValue=>optionByValue.get(selectedValue)).filter(option=>option!==void 0),[optionByValue,selectedValues]),firstEnabledIndex=getBoundaryEnabledIndex(optionList,"first"),resolvedActiveIndex=activeIndex>=0&&!optionList[activeIndex]?.disabled?activeIndex:firstEnabledIndex,visibleTagCount=getSafeTagCount(maxTagCount,selectedOptions.length),visibleOptions=selectedOptions.slice(0,visibleTagCount),overflowCount=selectedOptions.length-visibleOptions.length,isPlaceholder=selectedOptions.length===0,layerDirection=rootProps.dir??componentAttributes.dir,rootState=disabled?"disabled":invalid2?"invalid":open?"open":"closed",setRootRef=node=>{rootRef.current=node,typeof ref=="function"?ref(node):ref&&(ref.current=node);},setOpen=nextOpen=>{disabled||forceOpen||(setUncontrolledOpen(nextOpen),nextOpen&&resolvedActiveIndex<0&&setActiveIndex(firstEnabledIndex));},commitValues=nextValues=>{let normalizedValues=normalizeValues(nextValues);isControlled||setUncontrolledValue(normalizedValues),onValueChange?.(normalizedValues);},toggleOption=option=>{if(!option||option.disabled||disabled)return;let nextValues=selectedValueSet.has(option.value)?selectedValues.filter(selectedValue=>selectedValue!==option.value):[...selectedValues,option.value];commitValues(nextValues);},removeOption=option=>{disabled||commitValues(selectedValues.filter(selectedValue=>selectedValue!==option.value));},moveActive=nextIndex=>{nextIndex<0||optionList[nextIndex]?.disabled||(setActiveIndex(nextIndex),open||setOpen(true));},handleTypeahead=(event,character)=>{let ownerWindow=event.currentTarget.ownerDocument.defaultView;if(!ownerWindow)return;let nextBuffer=`${typeaheadBufferRef.current}${character}`.toLocaleLowerCase();typeaheadBufferRef.current=nextBuffer,typeaheadTimerRef.current&&typeaheadTimerRef.current.ownerWindow.clearTimeout(typeaheadTimerRef.current.timerId),typeaheadTimerRef.current={ownerWindow,timerId:ownerWindow.setTimeout(()=>{typeaheadBufferRef.current="",typeaheadTimerRef.current=null;},typeaheadResetDelay)};let query=Array.from(nextBuffer).every(bufferCharacter=>bufferCharacter===nextBuffer[0])?character.toLocaleLowerCase():nextBuffer;for(let offset2=1;offset2<=optionList.length;offset2+=1){let index=(resolvedActiveIndex+offset2+optionList.length)%optionList.length,option=optionList[index];if(!option?.disabled&&getOptionText(option).trim().toLocaleLowerCase().startsWith(query)){event.preventDefault(),moveActive(index);return}}},handleKeyDown=event=>{if(!(disabled||composingRef.current||event.nativeEvent.isComposing)){if(event.key==="ArrowDown"||event.key==="ArrowUp"){event.preventDefault(),open?moveActive(getNextEnabledIndex(optionList,resolvedActiveIndex,event.key==="ArrowDown"?1:-1)):(setActiveIndex(firstEnabledIndex),setOpen(true));return}if(event.key==="Home"||event.key==="End"){event.preventDefault(),moveActive(getBoundaryEnabledIndex(optionList,event.key==="Home"?"first":"last"));return}if(event.key==="Enter"||event.key===" "){event.preventDefault(),open?toggleOption(optionList[resolvedActiveIndex]):setOpen(true);return}if(event.key==="Escape"&&open){event.preventDefault(),setOpen(false);return}if(event.key==="Tab"&&open){setOpen(false);return}event.key.length===1&&!event.ctrlKey&&!event.metaKey&&!event.altKey&&!/\s/.test(event.key)&&handleTypeahead(event,event.key);}};return React8.useEffect(()=>{if(!open||forceOpen)return;let ownerDocument=rootRef.current?.ownerDocument;if(!ownerDocument)return;let handlePointerDown=event=>{rootRef.current?.contains(event.target)||setUncontrolledOpen(false);};return ownerDocument.addEventListener("pointerdown",handlePointerDown),()=>ownerDocument.removeEventListener("pointerdown",handlePointerDown)},[forceOpen,open]),React8.useEffect(()=>{if(isControlled)return;let form=rootRef.current?.closest("form");if(!form)return;let handleReset=()=>{setUncontrolledValue([...initialDefaultValueRef.current]),setActiveIndex(getBoundaryEnabledIndex(optionList,"first")),forceOpen||setUncontrolledOpen(false);};return form.addEventListener("reset",handleReset),()=>form.removeEventListener("reset",handleReset)},[forceOpen,isControlled,optionList]),React8.useEffect(()=>()=>{typeaheadTimerRef.current&&typeaheadTimerRef.current.ownerWindow.clearTimeout(typeaheadTimerRef.current.timerId);},[]),jsxRuntime.jsxs("div",{...componentAttributes,...rootProps,id:id9,ref:setRootRef,dir:layerDirection,"data-monkeys-component":"multi-select","data-slot":"root","data-state":rootState,"data-disabled":disabled||void 0,"data-invalid":invalid2||void 0,className:cn(theme.slots.controlWrapper,"overflow-visible",open&&"z-50",invalid2&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,classNames?.root,className),style:{...theme.styles.control,...invalid2?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("span",{className:cn(theme.slots.controlIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsx("div",{...componentAttributes,ref:controlRef,id:controlId,role:"combobox",tabIndex:disabled?-1:0,dir:layerDirection,"aria-haspopup":"listbox","aria-expanded":open,"aria-controls":listboxId,"aria-activedescendant":open&&resolvedActiveIndex>=0?optionIds[resolvedActiveIndex]:void 0,"aria-autocomplete":"none","aria-disabled":disabled||void 0,"aria-required":required||void 0,"aria-invalid":nativeAriaInvalid??(invalid2||void 0),"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,"data-monkeys-component":"multi-select","data-slot":"control","data-state":rootState,className:cn(theme.slots.controlBase,"flex min-h-9 cursor-pointer flex-wrap items-center gap-1.5 py-1.5 pr-9 text-left",disabled&&"!cursor-not-allowed",classNames?.control),onMouseDown:event=>{disabled||event.button!==0||(event.preventDefault(),controlRef.current?.focus());},onClick:()=>{controlRef.current?.focus(),setOpen(!open);},onBlur:event=>{rootRef.current?.contains(event.relatedTarget)||setOpen(false);},onCompositionStart:()=>{composingRef.current=true;},onCompositionEnd:()=>{composingRef.current=false;},onKeyDown:handleKeyDown,children:jsxRuntime.jsxs("span",{"data-monkeys-component":"multi-select","data-slot":"tag-list","data-state":isPlaceholder?"empty":"filled",className:cn("flex min-w-0 flex-1 flex-wrap items-center gap-1.5",classNames?.tagList),children:[visibleOptions.map((option,index)=>jsxRuntime.jsxs("span",{"data-monkeys-component":"multi-select","data-slot":"tag","data-state":"selected",className:cn("inline-flex max-w-full items-center gap-1 rounded-full border border-border/70 bg-muted/65 px-2 py-0.5 text-xs font-medium text-foreground",classNames?.tag),children:[jsxRuntime.jsx("span",{"data-slot":"tag-label",className:cn("max-w-40 truncate",classNames?.tagLabel),children:option.label}),jsxRuntime.jsx("button",{...componentAttributes,type:"button",tabIndex:-1,dir:layerDirection,"aria-label":removeLabel?.(option)??messages.removeOption({value:option.value}),disabled,"data-monkeys-component":"multi-select","data-slot":"tag-remove","data-state":"selected",className:cn("inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-background/80 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed",classNames?.tagRemove),onClick:event=>{event.preventDefault(),event.stopPropagation(),removeOption(option),controlRef.current?.focus();},onMouseDown:event=>{event.preventDefault(),event.stopPropagation();},onKeyDown:event=>event.stopPropagation(),children:jsxRuntime.jsx("span",{"aria-hidden":"true",children:"x"})})]},`${option.value}-${index}`)),overflowCount>0?jsxRuntime.jsxs("span",{"data-monkeys-component":"multi-select","data-slot":"tag-overflow","data-state":"selected",className:cn("inline-flex max-w-full items-center rounded-full border border-border/70 bg-muted/45 px-2 py-0.5 text-xs font-medium text-muted-foreground",classNames?.tag),children:["+",overflowCount]}):null,isPlaceholder?jsxRuntime.jsx("span",{"data-monkeys-component":"multi-select","data-slot":"placeholder","data-state":"empty",className:cn("min-w-0 truncate",theme.slots.selectPlaceholder,classNames?.placeholder),children:placeholder===void 0?messages.placeholder:placeholder}):null]})}),jsxRuntime.jsx("span",{"data-monkeys-component":"multi-select","data-slot":"chevron","data-state":open?"open":"closed",className:cn(theme.slots.selectChevron,open&&"rotate-[225deg]",classNames?.chevron)}),name?selectedValues.map(selectedValue=>React8.createElement("input",{...componentAttributes,key:selectedValue,type:"hidden",name,value:selectedValue,disabled,dir:layerDirection,"data-monkeys-component":"multi-select","data-slot":"hidden-input","data-state":"selected",className:classNames?.hiddenInput})):null,open?jsxRuntime.jsx("div",{...componentAttributes,id:listboxId,role:"listbox",dir:layerDirection,"aria-multiselectable":"true","aria-labelledby":controlId,"data-monkeys-component":"multi-select","data-slot":"menu","data-state":"open",className:cn(theme.slots.selectMenu,classNames?.menu),style:theme.styles.selectMenu,children:optionList.length>0?optionList.map((option,index)=>{let selected2=selectedValueSet.has(option.value),active=index===resolvedActiveIndex,optionState=option.disabled?"disabled":active?"active":selected2?"selected":"idle";return React8.createElement("button",{...componentAttributes,key:`${option.value}-${index}`,id:optionIds[index],type:"button",role:"option",tabIndex:-1,dir:layerDirection,"aria-selected":selected2,disabled:option.disabled,"data-monkeys-component":"multi-select","data-slot":"option","data-state":optionState,"data-active":active||void 0,"data-selected":selected2||void 0,"data-disabled":option.disabled||void 0,className:cn(theme.slots.selectOption,"gap-2",active&&theme.slots.selectOptionActive,selected2&&theme.slots.selectOptionSelected,option.disabled&&theme.slots.selectOptionDisabled,classNames?.option),style:{...theme.styles.selectOption,...active?theme.styles.selectOptionActive:void 0,...selected2?theme.styles.selectOptionSelected:void 0},onMouseEnter:()=>{option.disabled||setActiveIndex(index);},onMouseDown:event=>event.preventDefault(),onClick:()=>{toggleOption(option),controlRef.current?.focus();}},jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"option-indicator",className:cn("inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-sm border border-border/70 text-[10px]",selected2&&"border-primary/40 bg-primary text-primary-foreground",classNames?.optionIndicator),children:selected2?"\u2713":null}),jsxRuntime.jsx("span",{"data-slot":"option-label",className:cn("min-w-0 flex-1 truncate",classNames?.optionLabel),children:option.label}))}):jsxRuntime.jsx("div",{...componentAttributes,dir:layerDirection,role:"option",tabIndex:-1,"aria-disabled":"true","aria-selected":"false","data-monkeys-component":"multi-select","data-slot":"empty","data-state":"empty",className:cn("px-2.5 py-2 text-sm text-muted-foreground",classNames?.empty),children:emptyLabel===void 0?messages.empty:emptyLabel})}):null]})});function BaseNotice({tone,icon,title,description,actions,children,appearance:appearance2,className,classNames,style,...noticeProps}){let theme=resolveBaseAppearance(appearance2),resolvedDescription=children??description;return jsxRuntime.jsxs("div",{...noticeProps,className:cn(theme.slots.noticeBase,getBaseNoticeToneClassName(theme,tone),classNames?.root,className),style:{...theme.styles.notice,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("div",{className:cn(theme.slots.noticeIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsxs("div",{className:"min-w-0 flex-1",children:[hasRenderableNode(title)?jsxRuntime.jsx("div",{className:cn(theme.slots.noticeTitle,classNames?.title),children:title}):null,hasRenderableNode(resolvedDescription)?jsxRuntime.jsx("div",{className:cn(theme.slots.noticeDescription,classNames?.description),children:resolvedDescription}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{className:cn(theme.slots.noticeActions,classNames?.actions),children:actions}):null]})]})}function BasePanel({as="article",title,description,media,header,footer,children,interactive,selected:selected2,disabled,appearance:appearance2,variant,density,state,className,classNames,style,...panelProps}){let theme=resolveBaseAppearance({...appearance2,variant,density,state}),Component=as,hasHeader=header!==void 0?hasRenderableNode(header):hasRenderableNode(title)||hasRenderableNode(description),hasMedia=media!=null,bodyIsStandalone=!hasHeader&&!hasMedia;return jsxRuntime.jsxs(Component,{...panelProps,"aria-disabled":disabled||void 0,"data-variant":theme.variant,"data-density":theme.density,"data-state":state??(disabled?"disabled":selected2?"selected":"idle"),"data-monkeys-component":"panel","data-slot":"root","data-interactive":interactive||void 0,"data-selected":selected2||void 0,"data-disabled":disabled||void 0,className:cn(theme.slots.panelRoot,interactive&&!disabled&&theme.slots.panelInteractive,selected2&&theme.slots.panelSelected,disabled&&theme.slots.panelDisabled,classNames?.root,className),style:{...theme.styles.panel,...style},children:[hasMedia?jsxRuntime.jsx("div",{"data-slot":"media",className:cn(theme.slots.panelMedia,classNames?.media),children:media}):null,hasHeader?jsxRuntime.jsx("div",{"data-slot":"header",className:cn(theme.slots.panelHeader,classNames?.header),style:theme.styles.panelHeader,children:header!==void 0?header:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[hasRenderableNode(title)?jsxRuntime.jsx("div",{"data-slot":"title",className:cn(theme.slots.panelTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{"data-slot":"description",className:cn(theme.slots.panelDescription,classNames?.description),children:description}):null]})}):null,children!=null?jsxRuntime.jsx("div",{"data-slot":"body",className:cn(theme.slots.panelBody,bodyIsStandalone&&theme.slots.panelBodyStandalone,classNames?.body),style:theme.styles.panelBody,children}):null,footer!=null?jsxRuntime.jsx("div",{"data-slot":"footer",className:cn(theme.slots.panelFooter,classNames?.footer),style:theme.styles.panelFooter,children:footer}):null]})}var paginationModes=new Set(["compact","pages"]);function clampPage(page,pageCount){return Math.min(Math.max(page,1),Math.max(pageCount,1))}function assertPositiveInteger(value,name){if(!Number.isSafeInteger(value)||value<1)throw new RangeError(`BasePagination ${name} must be a positive safe integer.`)}function assertNonNegativeInteger(value,name){if(!Number.isSafeInteger(value)||value<0)throw new RangeError(`BasePagination ${name} must be a non-negative safe integer.`)}function assertOptionalControlLabel(value,name){if(typeof value=="string"&&!value.trim())throw new TypeError(`BasePagination ${name} must be a non-empty string when provided.`)}function assertAccessibleName(ariaLabel,ariaLabelledBy){if(ariaLabel!==void 0&&(typeof ariaLabel!="string"||!ariaLabel.trim()))throw new TypeError("BasePagination aria-label must be a non-empty string when provided.");if(ariaLabelledBy!==void 0&&(typeof ariaLabelledBy!="string"||!ariaLabelledBy.trim()))throw new TypeError("BasePagination aria-labelledby must contain at least one valid ID token.");if(typeof ariaLabelledBy=="string"&&ariaLabelledBy.trim().split(/\s+/).some(token=>/[\u0000-\u001f\u007f]/u.test(token)))throw new TypeError("BasePagination aria-labelledby must contain only valid ID tokens.")}function assertLocaleString(value,name){if(typeof value!="string"||!value.trim())throw new TypeError(`BasePagination locale ${name} must resolve to a non-empty string.`);return value}function getControlContent(value,fallback2){return hasRenderableNode(value)?value:fallback2}function getControlAriaLabel(value,fallback2){return typeof value=="string"&&value.trim()?value:fallback2}function getPageItems(currentPage,pageCount,boundaryCount,siblingCount){let pages=new Set,addPage=page=>{page>=1&&page<=pageCount&&pages.add(page);};for(let offset2=0;offset2<boundaryCount;offset2+=1)addPage(1+offset2),addPage(pageCount-offset2);for(let offset2=-siblingCount;offset2<=siblingCount;offset2+=1)addPage(currentPage+offset2);let sortedPages=[...pages].sort((left,right)=>left-right),items=[];return sortedPages.forEach((page,index)=>{let previousPage=sortedPages[index-1];if(previousPage!==void 0){let gap=page-previousPage;gap===2&&items.push(previousPage+1),gap>2&&items.push("ellipsis");}items.push(page);}),items}var BasePagination=React8.forwardRef(function({page,defaultPage,pageSize=20,total=0,pageCount:pageCountProp,hasNext,hasPrevious,mode="compact",siblingCount=1,boundaryCount=1,label,firstLabel,previousLabel,nextLabel,lastLabel,appearance:appearance2,className,classNames,style,onPageChange,role="navigation","aria-label":ariaLabel,"aria-labelledby":ariaLabelledBy,...paginationProps},ref){let messages=useMonkeysLocaleMessages().pagination,resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),[uncontrolledPage,setUncontrolledPage]=React8.useState(()=>defaultPage??1);if(page!==void 0&&assertPositiveInteger(page,"page"),defaultPage!==void 0&&assertPositiveInteger(defaultPage,"defaultPage"),assertPositiveInteger(pageSize,"pageSize"),assertNonNegativeInteger(total,"total"),pageCountProp!==void 0&&assertPositiveInteger(pageCountProp,"pageCount"),assertNonNegativeInteger(siblingCount,"siblingCount"),assertNonNegativeInteger(boundaryCount,"boundaryCount"),!paginationModes.has(mode))throw new TypeError('BasePagination mode must be "compact" or "pages".');if(onPageChange!==void 0&&typeof onPageChange!="function")throw new TypeError("BasePagination onPageChange must be a function.");assertOptionalControlLabel(firstLabel,"firstLabel"),assertOptionalControlLabel(previousLabel,"previousLabel"),assertOptionalControlLabel(nextLabel,"nextLabel"),assertOptionalControlLabel(lastLabel,"lastLabel"),assertAccessibleName(ariaLabel,ariaLabelledBy);let navigationLabel=assertLocaleString(messages.navigation,"navigation"),firstMessage=assertLocaleString(messages.first,"first"),previousMessage=assertLocaleString(messages.previous,"previous"),nextMessage=assertLocaleString(messages.next,"next"),lastMessage=assertLocaleString(messages.last,"last"),pageCount=pageCountProp??Math.max(Math.ceil(total/pageSize),1),isControlled=page!==void 0,isUncontrolled=!isControlled&&defaultPage!==void 0,currentPage=clampPage(isControlled?page:isUncontrolled?uncontrolledPage:1,pageCount),start=total>0?(currentPage-1)*pageSize+1:0,end=Math.min(currentPage*pageSize,total),canPrevious=hasPrevious??currentPage>1,canNext=hasNext??currentPage<pageCount,pageItems=mode==="pages"?getPageItems(currentPage,pageCount,boundaryCount,siblingCount):[],requestPage=requestedPage=>{let nextPage=clampPage(requestedPage,pageCount);nextPage!==currentPage&&(isUncontrolled&&setUncontrolledPage(nextPage),onPageChange?.(nextPage));},renderControl=(slot,targetPage,enabled,content,accessibleLabel)=>jsxRuntime.jsx("button",{type:"button",disabled:!enabled,"aria-label":accessibleLabel,"data-slot":slot,className:cn(theme.slots.paginationButton,!enabled&&theme.slots.paginationButtonDisabled,classNames?.button),onClick:()=>requestPage(targetPage),children:content});return jsxRuntime.jsxs("div",{...componentAttributes,...paginationProps,ref,role,"aria-label":ariaLabel??(ariaLabelledBy===void 0?navigationLabel:void 0),"aria-labelledby":ariaLabelledBy,"data-monkeys-component":"pagination","data-slot":"root","data-mode":mode,"data-controlled":isControlled||void 0,"data-uncontrolled":isUncontrolled||void 0,className:cn(theme.slots.paginationRoot,classNames?.root,className),style:{...theme.styles.pagination,...style},children:[jsxRuntime.jsx("div",{"aria-live":"polite","data-slot":"info",className:cn(theme.slots.paginationInfo,classNames?.info),children:hasRenderableNode(label)?label:total>0?messages.range({start,end,total}):messages.emptyResults}),jsxRuntime.jsxs("div",{"data-slot":"controls",className:cn(theme.slots.paginationControls,classNames?.controls),children:[mode==="pages"?renderControl("first",1,canPrevious,getControlContent(firstLabel,firstMessage),getControlAriaLabel(firstLabel,firstMessage)):null,renderControl("previous",currentPage-1,canPrevious,getControlContent(previousLabel,previousMessage),getControlAriaLabel(previousLabel,previousMessage)),mode==="compact"?jsxRuntime.jsxs("span",{"aria-current":"page","aria-label":assertLocaleString(messages.currentPage({page:currentPage,pageCount}),"currentPage"),"data-slot":"page","data-page":currentPage,className:cn(theme.slots.paginationPage,classNames?.page),children:[currentPage," / ",pageCount]}):pageItems.map((item,index)=>{if(item==="ellipsis")return jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"ellipsis",className:cn(theme.slots.paginationEllipsis,classNames?.ellipsis),children:"\u2026"},`ellipsis-${index}`);let isCurrent=item===currentPage;return jsxRuntime.jsx("button",{type:"button","aria-current":isCurrent?"page":void 0,"aria-label":assertLocaleString(isCurrent?messages.currentPage({page:item,pageCount}):messages.page({page:item,pageCount}),isCurrent?"currentPage":"page"),"data-slot":"page","data-page":item,"data-current":isCurrent||void 0,className:cn(theme.slots.paginationButton,isCurrent&&theme.slots.paginationPage,classNames?.button,isCurrent&&classNames?.page),onClick:()=>requestPage(item),children:item},item)}),renderControl("next",currentPage+1,canNext,getControlContent(nextLabel,nextMessage),getControlAriaLabel(nextLabel,nextMessage)),mode==="pages"?renderControl("last",pageCount,canNext,getControlContent(lastLabel,lastMessage),getControlAriaLabel(lastLabel,lastMessage)):null]})]})});function LoadingIcon2(){return jsxRuntime.jsxs("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"ml-1 inline-block h-3 w-3 animate-spin",fill:"none",children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9",className:"opacity-25",stroke:"currentColor",strokeWidth:"3"}),jsxRuntime.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M12 3a9 9 0 0 1 9 9h-3a6 6 0 0 0-6-6V3Z"})]})}function BaseListFooter({total=0,loadedStart,loadedEnd,selectedCount,page=1,pageCount,pageSize=20,pageSizeOptions,showTotal,showPageSize,paginationMode,hasNext,hasPrevious,loading=false,totalLabel,selectedLabel,pageSizeLabel,appearance:appearance2,className,classNames,onPageChange,onPageSizeChange,onSummaryClick,...props}){let config=useMonkeysListFooter(),messages=useMonkeysLocaleMessages().pagination,options2=[...new Set(pageSizeOptions??config.pageSizeOptions??[10,20,50,100])].filter(value=>Number.isSafeInteger(value)&&value>0),showTotalValue=showTotal??config.showTotal??true,showPageSizeValue=showPageSize??config.showPageSize??true,requestedMode=paginationMode??config.paginationMode??"auto",mode=requestedMode==="auto"?total>0?"pages":"compact":requestedMode,hasRange=loadedStart!==void 0&&loadedStart>0&&loadedEnd!==void 0&&loadedEnd>=loadedStart,summary=showTotalValue?totalLabel??(hasRange?messages.range({start:loadedStart,end:loadedEnd,total}):messages.range({start:total>0?(page-1)*pageSize+1:0,end:loadedEnd??0,total})):void 0,showPagination=!!onPageChange&&(hasNext!==void 0||hasPrevious!==void 0?!!(hasNext||hasPrevious||total>pageSize):total>pageSize),align=config.alignment==="end"?"justify-end":config.alignment==="start"?"justify-start":"justify-between";return jsxRuntime.jsx("div",{...props,className:cn("flex min-w-0 flex-wrap items-center gap-3 py-2 text-sm",align,classNames?.root,className),"data-monkeys-component":"list-footer","data-density":config.density,children:jsxRuntime.jsxs("div",{className:"monkeys-list-footer-groups contents",children:[jsxRuntime.jsx("div",{className:cn("min-w-0 text-muted-foreground",classNames?.summary),children:(()=>{let content=jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[selectedLabel??(selectedCount!==void 0?messages.selected({count:selectedCount}):null),selectedCount!==void 0&&summary?jsxRuntime.jsx("span",{className:"mx-2",children:"\xB7"}):null,summary,loading?jsxRuntime.jsx(LoadingIcon2,{}):null]});return onSummaryClick?jsxRuntime.jsx("button",{type:"button",className:"inline-flex items-center",onClick:onSummaryClick,children:content}):content})()}),showPagination?jsxRuntime.jsx(BasePagination,{page,pageCount,pageSize,total,mode,hasNext,hasPrevious,onPageChange,appearance:appearance2,className:classNames?.pagination,classNames:{info:"sr-only"}}):null,showPageSizeValue&&onPageSizeChange&&options2.length>0?jsxRuntime.jsxs("label",{className:cn("inline-flex items-center gap-2 whitespace-nowrap text-muted-foreground",classNames?.pageSize),children:[jsxRuntime.jsx("span",{className:"sr-only",children:pageSizeLabel??messages.pageSize}),jsxRuntime.jsx("select",{"aria-label":typeof pageSizeLabel=="string"?pageSizeLabel:messages.pageSize,value:String(pageSize),className:"h-8 rounded-md border border-border bg-background px-2 text-sm text-foreground",onChange:event=>onPageSizeChange(Number(event.currentTarget.value)),children:options2.map(size2=>jsxRuntime.jsx("option",{value:size2,children:size2},size2))})]}):null]})})}var typeaheadResetDelay2=500;function validateSelectProps({options:options2,value,defaultValue,invalid:invalid2,disabled,openForPreview,portal,required}){for(let[name,state]of [["invalid",invalid2],["disabled",disabled],["openForPreview",openForPreview],["portal",portal]])if(typeof state!="boolean")throw new TypeError(`BaseSelect ${name} must be a boolean.`);if(required!==void 0&&typeof required!="boolean")throw new TypeError("BaseSelect required must be a boolean.");if(options2!==void 0&&!Array.isArray(options2))throw new TypeError("BaseSelect options must be an array.");if(options2?.forEach((option,index)=>{if(!option||typeof option!="object")throw new TypeError(`BaseSelect option at index ${index} must be an object.`);if(typeof option.value!="string")throw new TypeError(`BaseSelect option value at index ${index} must be a string.`);if(option.disabled!==void 0&&typeof option.disabled!="boolean")throw new TypeError(`BaseSelect option disabled at index ${index} must be a boolean.`);if(option.textValue!==void 0&&typeof option.textValue!="string")throw new TypeError(`BaseSelect option textValue at index ${index} must be a string.`)}),options2?.length){if(value!==void 0&&typeof value!="string"&&typeof value!="number")throw new TypeError("BaseSelect value must be a string or number when options are used.");if(defaultValue!==void 0&&typeof defaultValue!="string"&&typeof defaultValue!="number")throw new TypeError("BaseSelect defaultValue must be a string or number when options are used.")}}function normalizeValue(value){return typeof value=="string"||typeof value=="number"?String(value):""}function findOption(options2,value){if(value!==void 0)return options2.find(option=>option.value===value)}function getInitialActiveIndex(options2,value){let selectedIndex=options2.findIndex(option=>option.value===value&&!option.disabled);return selectedIndex>=0?selectedIndex:options2.findIndex(option=>!option.disabled)}function getNextEnabledIndex2(options2,currentIndex,direction){if(!options2.length)return -1;let startIndex=currentIndex>=0?currentIndex:direction===1?-1:0;for(let offset2=1;offset2<=options2.length;offset2+=1){let nextIndex=(startIndex+offset2*direction+options2.length)%options2.length;if(!options2[nextIndex]?.disabled)return nextIndex}return -1}function getBoundaryEnabledIndex2(options2,boundary){if(boundary==="first")return options2.findIndex(option=>!option.disabled);for(let index=options2.length-1;index>=0;index-=1)if(!options2[index]?.disabled)return index;return -1}function getOptionText2(option){return option.textValue!==void 0?option.textValue:typeof option.label=="string"?option.label:option.value}function toDomId3(value){return value.replace(/[^a-zA-Z0-9_-]/g,"-")}var BaseSelect=React8.forwardRef(function({options:options2,placeholder,icon,invalid:invalid2=false,disabled=false,openForPreview=false,portal=false,appearance:appearance2,className,classNames,style,children,value,defaultValue,onBlur,onChange,onFocus,onInvalid,name,id:id9,required,"aria-invalid":nativeAriaInvalid,"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,"aria-required":nativeAriaRequired,...selectProps},ref){validateSelectProps({options:options2,value,defaultValue,invalid:invalid2,disabled,openForPreview,portal,required});let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),fieldControl=useBaseFieldControl(),resolvedInvalid=invalid2||fieldControl.invalid,generatedId=React8.useId(),selectId=id9??generatedId,triggerId=`${selectId}-button`,listboxId=`${selectId}-listbox`,rootRef=React8.useRef(null),triggerRef=React8.useRef(null),selectRef=React8.useRef(null),optionRefs=React8.useRef([]),composingRef=React8.useRef(false),typeaheadBufferRef=React8.useRef(""),typeaheadTimerRef=React8.useRef(null),optionList=options2??[],isCustomSelect=optionList.length>0,forceOpen=openForPreview,[uncontrolledOpen,setUncontrolledOpen]=React8.useState(false),[pointerOpened,setPointerOpened]=React8.useState(false),open=forceOpen||uncontrolledOpen,overlayPortal=useBaseOverlayPortal({disabled:forceOpen||!portal?true:void 0}),{refs,floatingStyles,isPositioned,placement}=react.useFloating({transform:false,open:isCustomSelect&&open&&overlayPortal.shouldPortal,placement:"bottom-start",strategy:"fixed",whileElementsMounted:overlayPortal.shouldPortal?react.autoUpdate:void 0,middleware:[react.offset(6),react.flip({padding:8}),react.shift({padding:8}),react.size({padding:8,apply({rects,availableHeight,elements}){Object.assign(elements.floating.style,{width:`${rects.reference.width}px`,maxHeight:`min(15rem, ${Math.max(0,availableHeight)}px)`});}})]}),setTriggerRef=React8.useCallback(node=>{triggerRef.current=node,refs.setReference(node);},[refs.setReference]),[uncontrolledValue,setUncontrolledValue]=React8.useState(()=>normalizeValue(defaultValue)),isControlled=value!==void 0,selectedValue=isControlled?normalizeValue(value):uncontrolledValue,selectedOption=findOption(optionList,selectedValue),[activeIndex,setActiveIndex]=React8.useState(()=>getInitialActiveIndex(optionList,selectedValue)),resolvedActiveIndex=activeIndex>=0&&!optionList[activeIndex]?.disabled?activeIndex:getInitialActiveIndex(optionList,selectedValue),optionIds=optionList.map((option,index)=>`${selectId}-option-${index}-${toDomId3(option.value)}`),visibleLabel=selectedOption?.label??placeholder,isPlaceholder=!selectedOption,layerDirection=selectProps.dir??componentAttributes.dir,rootState=disabled?"disabled":resolvedInvalid?"invalid":open?"open":"closed",setSelectRef=node=>{selectRef.current=node,typeof ref=="function"?ref(node):ref&&(ref.current=node);},handleNativeBlur=event=>{onBlur?.(event),fieldControl.notifyBlur(event.currentTarget.value);},handleNativeChange=event=>{onChange?.(event),fieldControl.notifyChange(event.currentTarget.value);},resetActiveIndex=()=>{setActiveIndex(getInitialActiveIndex(optionList,selectedValue));},cancelAndClose=()=>{resetActiveIndex(),forceOpen||setUncontrolledOpen(false);},openMenu=(nextActiveIndex,fromPointer=false)=>{setPointerOpened(fromPointer),setActiveIndex(nextActiveIndex??getInitialActiveIndex(optionList,selectedValue)),forceOpen||setUncontrolledOpen(true);},notifyChange=nextValue=>{let selectElement=selectRef.current;if(!selectElement)return;let ownerWindow=selectElement.ownerDocument.defaultView;if(!ownerWindow)throw new Error("BaseSelect cannot dispatch change without an owning window.");let valueSetter=Object.getOwnPropertyDescriptor(ownerWindow.HTMLSelectElement.prototype,"value")?.set;if(!valueSetter)throw new Error("BaseSelect could not resolve the native select value setter.");valueSetter.call(selectElement,nextValue),selectElement.dispatchEvent(new ownerWindow.Event("change",{bubbles:true}));},commitIndex=nextIndex=>{let option=optionList[nextIndex];!option||option.disabled||disabled||(setActiveIndex(nextIndex),option.value!==selectedValue&&(isControlled||setUncontrolledValue(option.value),notifyChange(option.value)),forceOpen||setUncontrolledOpen(false));},moveActive=nextIndex=>{nextIndex<0||optionList[nextIndex]?.disabled||(setActiveIndex(nextIndex),open||openMenu(nextIndex));},handleTypeahead=(event,character)=>{let ownerWindow=event.currentTarget.ownerDocument.defaultView;if(!ownerWindow)return;let nextBuffer=`${typeaheadBufferRef.current}${character}`.toLocaleLowerCase();typeaheadBufferRef.current=nextBuffer,typeaheadTimerRef.current&&typeaheadTimerRef.current.ownerWindow.clearTimeout(typeaheadTimerRef.current.timerId),typeaheadTimerRef.current={ownerWindow,timerId:ownerWindow.setTimeout(()=>{typeaheadBufferRef.current="",typeaheadTimerRef.current=null;},typeaheadResetDelay2)};let query=Array.from(nextBuffer).every(bufferCharacter=>bufferCharacter===nextBuffer[0])?character.toLocaleLowerCase():nextBuffer,startIndex=open?resolvedActiveIndex:optionList.findIndex(option=>option.value===selectedValue&&!option.disabled);for(let offset2=1;offset2<=optionList.length;offset2+=1){let index=(startIndex+offset2+optionList.length)%optionList.length,option=optionList[index];if(!option?.disabled&&getOptionText2(option).trim().toLocaleLowerCase().startsWith(query)){event.preventDefault(),moveActive(index);return}}},handleKeyDown=event=>{if(!(disabled||composingRef.current||event.nativeEvent.isComposing)){if(event.key==="ArrowDown"||event.key==="ArrowUp"){event.preventDefault();let selectedIndex=optionList.findIndex(option=>option.value===selectedValue&&!option.disabled);moveActive(getNextEnabledIndex2(optionList,open?resolvedActiveIndex:selectedIndex,event.key==="ArrowDown"?1:-1));return}if(event.key==="Home"||event.key==="End"){event.preventDefault(),moveActive(getBoundaryEnabledIndex2(optionList,event.key==="Home"?"first":"last"));return}if(event.key==="Enter"||event.key===" "){event.preventDefault(),open?commitIndex(resolvedActiveIndex):openMenu();return}if(event.key==="Escape"&&open){event.preventDefault(),cancelAndClose();return}if(event.key==="Tab"&&open){commitIndex(resolvedActiveIndex);return}event.key.length===1&&!event.ctrlKey&&!event.metaKey&&!event.altKey&&!/\s/.test(event.key)&&handleTypeahead(event,event.key);}},handleCustomFocus=event=>{onFocus?.(event),event.defaultPrevented||triggerRef.current?.focus();},handleCustomInvalid=event=>{onInvalid?.(event),event.preventDefault(),triggerRef.current?.focus();};return React8.useEffect(()=>{if(!isCustomSelect||!open||forceOpen)return;let ownerDocument=rootRef.current?.ownerDocument;if(!ownerDocument)return;let handlePointerDown=event=>{!rootRef.current?.contains(event.target)&&!refs.floating.current?.contains(event.target)&&cancelAndClose();};return ownerDocument.addEventListener("pointerdown",handlePointerDown),()=>{ownerDocument.removeEventListener("pointerdown",handlePointerDown);}},[forceOpen,isCustomSelect,open,optionList,selectedValue]),React8.useEffect(()=>{!isCustomSelect||!open||resolvedActiveIndex<0||optionRefs.current[resolvedActiveIndex]?.scrollIntoView?.({block:"nearest"});},[isCustomSelect,open,resolvedActiveIndex]),React8.useEffect(()=>{if(!isCustomSelect||isControlled)return;let selectElement=selectRef.current,form=selectElement?.form,ownerWindow=selectElement?.ownerDocument.defaultView;if(!form||!ownerWindow)return;let handleReset=()=>{ownerWindow.setTimeout(()=>{let resetValue=normalizeValue(defaultValue);setUncontrolledValue(resetValue),setActiveIndex(getInitialActiveIndex(optionList,resetValue)),forceOpen||setUncontrolledOpen(false);},0);};return form.addEventListener("reset",handleReset),()=>form.removeEventListener("reset",handleReset)},[defaultValue,forceOpen,isControlled,isCustomSelect,optionList]),React8.useEffect(()=>()=>{typeaheadTimerRef.current&&typeaheadTimerRef.current.ownerWindow.clearTimeout(typeaheadTimerRef.current.timerId);},[]),isCustomSelect?jsxRuntime.jsxs("div",{...componentAttributes,ref:rootRef,dir:layerDirection,"data-monkeys-component":"select","data-slot":"root","data-state":rootState,"data-native":"false",className:cn(theme.slots.controlWrapper,"overflow-visible",open&&"z-50",resolvedInvalid&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,classNames?.root,className),style:{...theme.styles.control,...resolvedInvalid?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("span",{className:cn(theme.slots.controlIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsx("button",{...componentAttributes,ref:setTriggerRef,type:"button",id:triggerId,role:"combobox",disabled,dir:layerDirection,"aria-haspopup":"listbox","aria-expanded":open,"aria-controls":listboxId,"aria-activedescendant":open&&resolvedActiveIndex>=0?optionIds[resolvedActiveIndex]:void 0,"aria-autocomplete":"none","aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,"aria-required":nativeAriaRequired??(required||void 0),"data-monkeys-component":"select","data-slot":"trigger","data-state":rootState,className:cn(theme.slots.controlBase,theme.slots.controlSelect,"flex items-center text-left",classNames?.control),onClick:event=>{open?cancelAndClose():openMenu(void 0,event.detail>0);},onBlur:event=>{!rootRef.current?.contains(event.relatedTarget)&&!refs.floating.current?.contains(event.relatedTarget)&&(cancelAndClose(),fieldControl.notifyBlur(selectedValue));},onCompositionStart:()=>{composingRef.current=true;},onCompositionEnd:()=>{composingRef.current=false;},onKeyDown:handleKeyDown,children:jsxRuntime.jsx("span",{className:cn("min-w-0 flex-1 truncate",isPlaceholder&&theme.slots.selectPlaceholder,isPlaceholder&&classNames?.placeholder),children:visibleLabel})}),jsxRuntime.jsx("span",{className:cn(theme.slots.selectChevron,open&&"rotate-[225deg]")}),jsxRuntime.jsxs("select",{...componentAttributes,...selectProps,ref:setSelectRef,id:id9,name,value:selectedValue,required,disabled,dir:layerDirection,"aria-hidden":"true",tabIndex:-1,"data-monkeys-component":"select","data-slot":"native","data-state":rootState,"data-native":"false",className:theme.slots.selectNative,onBlur,onFocus:handleCustomFocus,onInvalid:handleCustomInvalid,onChange:handleNativeChange,children:[hasRenderableNode(placeholder)?jsxRuntime.jsx("option",{value:"",disabled:true,children:placeholder}):null,optionList.map(option=>jsxRuntime.jsx("option",{value:option.value,disabled:option.disabled,children:getOptionText2(option)},option.value))]}),open?renderBaseOverlayPortalContent(jsxRuntime.jsx("div",{...componentAttributes,ref:overlayPortal.shouldPortal?refs.setFloating:void 0,id:listboxId,role:"listbox",dir:layerDirection,"aria-labelledby":triggerId,"data-monkeys-component":"select","data-slot":"menu","data-portal":overlayPortal.shouldPortal?"portaled":"inline","data-state":"open","data-side":overlayPortal.shouldPortal?placement.split("-")[0]:"bottom",className:cn(theme.slots.selectMenu,overlayPortal.shouldPortal&&placement.startsWith("top")?"origin-bottom":"origin-top",pointerOpened&&!forceOpen&&(!overlayPortal.shouldPortal||isPositioned)&&"motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-150 motion-safe:ease-out",classNames?.menu),style:{...theme.styles.selectMenu,...overlayPortal.shouldPortal?{...floatingStyles,right:"auto",visibility:isPositioned?"visible":"hidden"}:void 0},children:optionList.map((option,index)=>{let selected2=option.value===selectedValue,active=index===resolvedActiveIndex,optionState=option.disabled?"disabled":active?"active":selected2?"selected":"idle";return React8.createElement("button",{...componentAttributes,ref:node=>{optionRefs.current[index]=node;},key:option.value,id:optionIds[index],type:"button",role:"option",tabIndex:-1,disabled:option.disabled,dir:layerDirection,"aria-selected":selected2,"data-monkeys-component":"select","data-slot":"option","data-state":optionState,"data-active":active||void 0,"data-selected":selected2||void 0,"data-disabled":option.disabled||void 0,className:cn(theme.slots.selectOption,active&&theme.slots.selectOptionActive,selected2&&theme.slots.selectOptionSelected,option.disabled&&theme.slots.selectOptionDisabled,classNames?.option),style:{...theme.styles.selectOption,...active?theme.styles.selectOptionActive:void 0,...selected2?theme.styles.selectOptionSelected:void 0},onMouseDown:event=>event.preventDefault(),onClick:()=>commitIndex(index)},jsxRuntime.jsx("span",{className:"min-w-0 flex-1 truncate",children:option.label}))})}),overlayPortal):null]}):jsxRuntime.jsxs("div",{...componentAttributes,"data-monkeys-component":"select","data-slot":"root","data-state":rootState,"data-native":"true",className:cn(theme.slots.controlWrapper,resolvedInvalid&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,classNames?.root,className),style:{...theme.styles.control,...resolvedInvalid?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},children:[hasRenderableNode(icon)?jsxRuntime.jsx("span",{className:cn(theme.slots.controlIcon,classNames?.icon),children:icon}):null,jsxRuntime.jsxs("select",{...componentAttributes,...selectProps,id:id9,ref,name,value,defaultValue,required,disabled,"aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"aria-label":nativeAriaLabel,"aria-labelledby":nativeAriaLabelledBy,"aria-describedby":nativeAriaDescribedBy,"aria-errormessage":nativeAriaErrorMessage,"aria-required":nativeAriaRequired,"data-monkeys-component":"select","data-slot":"native","data-state":rootState,"data-native":"true",onBlur:handleNativeBlur,onFocus,onInvalid,onChange:handleNativeChange,className:cn(theme.slots.controlBase,theme.slots.controlSelect,classNames?.control),children:[hasRenderableNode(placeholder)?jsxRuntime.jsx("option",{value:"",disabled:true,children:placeholder}):null,children]}),jsxRuntime.jsx("span",{className:theme.slots.selectChevron})]})});function BaseSectionHeader({eyebrow,title,description,actions,children,appearance:appearance2,className,classNames,style,...headerProps}){let theme=resolveBaseAppearance(appearance2),resolvedDescription=children??description;return jsxRuntime.jsxs("div",{...headerProps,className:cn(theme.slots.sectionHeaderRoot,classNames?.root,className),style:{...theme.styles.sectionHeader,...style},children:[jsxRuntime.jsxs("div",{className:cn(theme.slots.sectionHeaderContent,classNames?.content),children:[hasRenderableNode(eyebrow)?jsxRuntime.jsx("div",{className:cn(theme.slots.sectionHeaderEyebrow,classNames?.eyebrow),children:eyebrow}):null,hasRenderableNode(title)?jsxRuntime.jsx("div",{className:cn(theme.slots.sectionHeaderTitle,classNames?.title),children:title}):null,hasRenderableNode(resolvedDescription)?jsxRuntime.jsx("div",{className:cn(theme.slots.sectionHeaderDescription,classNames?.description),children:resolvedDescription}):null]}),hasRenderableNode(actions)?jsxRuntime.jsx("div",{className:cn(theme.slots.sectionHeaderActions,classNames?.actions),children:actions}):null]})}function getInitialSegmentValue(options2,defaultValue){return defaultValue&&options2?.some(option=>option.value===defaultValue)&&!options2.find(option=>option.value===defaultValue)?.disabled?defaultValue:options2?.find(option=>!option.disabled)?.value??options2?.[0]?.value}function BaseSegmentedControl({options:options2=[],value,defaultValue,appearance:appearance2,className,classNames,style,onValueChange,...controlProps}){let theme=resolveBaseAppearance(appearance2),[uncontrolledValue,setUncontrolledValue]=React8.useState(()=>getInitialSegmentValue(options2,defaultValue)),isControlled=value!==void 0,selectedValue=isControlled?value:uncontrolledValue,handleSelect=(nextValue,disabled)=>{disabled||(isControlled||setUncontrolledValue(nextValue),onValueChange?.(nextValue));},handleKeyDown=event=>{if(!["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(event.key))return;let enabledOptions=options2.filter(option=>!option.disabled);if(enabledOptions.length===0)return;event.preventDefault();let currentIndex=Math.max(0,enabledOptions.findIndex(option=>option.value===selectedValue)),nextIndex=event.key==="Home"?0:event.key==="End"?enabledOptions.length-1:event.key==="ArrowLeft"||event.key==="ArrowUp"?(currentIndex-1+enabledOptions.length)%enabledOptions.length:(currentIndex+1)%enabledOptions.length,nextOption=enabledOptions[nextIndex],buttons=event.currentTarget.querySelectorAll('[role="radio"]'),target=Array.from(buttons).find(button=>button.dataset.value===nextOption.value);handleSelect(nextOption.value),target?.focus();};return jsxRuntime.jsx("div",{...controlProps,role:"radiogroup","aria-orientation":"horizontal",className:cn(theme.slots.segmentedRoot,classNames?.root,className),style:{...theme.styles.segmentedRoot,...style},onKeyDown:handleKeyDown,children:options2.map(option=>{let selected2=option.value===selectedValue;return jsxRuntime.jsxs("button",{type:"button",role:"radio","data-value":option.value,"aria-checked":selected2,tabIndex:selected2?0:-1,disabled:option.disabled,className:cn(theme.slots.segmentedItem,selected2&&theme.slots.segmentedItemActive,option.disabled&&theme.slots.segmentedItemDisabled,classNames?.item),style:theme.styles.segmentedItem,onClick:()=>handleSelect(option.value,option.disabled),children:[hasRenderableNode(option.icon)?jsxRuntime.jsx("span",{className:cn("inline-flex h-4 w-4 shrink-0",classNames?.icon),children:option.icon}):null,jsxRuntime.jsx("span",{className:cn("min-w-0 truncate",classNames?.label),children:option.label})]},option.value)})})}var BaseStack=React8.forwardRef(function({children,gap,align="stretch",justify="start",appearance:appearance2,className,classNames,style,...stackProps},ref){let bentoDepth=useBentoDepth(),resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),resolvedGap=gap===void 0?void 0:resolveBaseLayoutLength("BaseStack","gap",gap);return jsxRuntime.jsx("div",{...componentAttributes,...stackProps,ref,"data-monkeys-component":"stack","data-slot":"root","data-align":align,"data-justify":justify,className:cn(theme.slots.stackRoot,bentoDepth>0&&gap===void 0&&"gap-[var(--monkeys-bento-gap)]",resolvedAppearance?.slots?.stackRoot,classNames?.root,className),style:{...theme.styles.stack,gap:resolvedGap??theme.styles.stack?.gap,alignItems:resolveBaseLayoutAlign("BaseStack",align),justifyContent:resolveBaseLayoutJustify("BaseStack",justify),...style},children})});var trackSizeClassNames={sm:"h-5 w-9",md:"h-6 w-10",lg:"h-7 w-12"},thumbSizeClassNames={sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"},checkedThumbClassNames={sm:"translate-x-[18px]",md:"translate-x-5",lg:"translate-x-6"},densitySize={compact:"sm",default:"md",comfortable:"lg"},BaseSwitch=React8.forwardRef(function({label,description,disabled=false,controlSize,appearance:appearance2,className,classNames,style,checked,defaultChecked,onChange,...switchProps},ref){if(typeof disabled!="boolean")throw new TypeError("BaseSwitch disabled must be a boolean.");if(controlSize!==void 0&&controlSize!=="sm"&&controlSize!=="md"&&controlSize!=="lg")throw new TypeError('BaseSwitch controlSize must be "sm", "md", or "lg".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),hasLabel=hasRenderableNode(label),hasDescription=hasNonEmptyRenderableNode(description),[uncontrolledChecked,setUncontrolledChecked]=React8.useState(defaultChecked??false),isControlled=checked!==void 0,resolvedChecked=isControlled?checked:uncontrolledChecked,state=resolvedChecked?"checked":"unchecked",resolvedVisualSize=controlSize??densitySize[theme.density],handleChange=event=>{disabled||(isControlled||setUncontrolledChecked(event.currentTarget.checked),onChange?.(event));};return jsxRuntime.jsxs("label",{...componentAttributes,"data-monkeys-component":"switch","data-slot":"root","data-state":state,"data-size":controlSize,"data-disabled":disabled||void 0,className:cn(theme.slots.switchRoot,!hasDescription&&"items-center",disabled&&theme.slots.switchDisabled,classNames?.root,className),style:{...theme.styles.switchRoot,...style},children:[jsxRuntime.jsxs("span",{"data-slot":"track","data-state":state,"data-size":controlSize,className:cn(theme.slots.switchTrack,!hasDescription&&"mt-0",resolvedChecked&&theme.slots.switchChecked,controlSize&&trackSizeClassNames[controlSize],classNames?.track),style:theme.styles.switchTrack,children:[jsxRuntime.jsx("input",{...switchProps,ref,type:"checkbox",role:"switch",disabled,checked,defaultChecked,"aria-checked":resolvedChecked,"data-slot":"input","data-state":state,"data-size":controlSize,"data-disabled":disabled||void 0,onChange:handleChange,className:cn(theme.slots.switchInput,classNames?.input)}),jsxRuntime.jsx("span",{"aria-hidden":"true","data-slot":"thumb","data-state":state,"data-size":controlSize,className:cn(theme.slots.switchThumb,controlSize&&thumbSizeClassNames[controlSize],resolvedChecked&&checkedThumbClassNames[resolvedVisualSize],classNames?.thumb),style:theme.styles.switchThumb})]}),hasLabel||hasDescription?jsxRuntime.jsxs("span",{"data-slot":"content",className:cn(theme.slots.switchContent,classNames?.content),children:[hasLabel?jsxRuntime.jsx("span",{"data-slot":"label",className:cn(theme.slots.switchLabel,classNames?.label),children:label}):null,hasDescription?jsxRuntime.jsx("span",{"data-slot":"description",className:cn(theme.slots.switchDescription,classNames?.description),children:description}):null]}):null]})});function SystemStateIcon({kind}){return jsxRuntime.jsx("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"h-7 w-7",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.8",children:{error:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9"}),jsxRuntime.jsx("path",{d:"M12 7v6"}),jsxRuntime.jsx("path",{d:"M12 17h.01"})]}),permission:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("rect",{x:"5",y:"10",width:"14",height:"10",rx:"2"}),jsxRuntime.jsx("path",{d:"M8 10V7a4 4 0 0 1 8 0v3"})]}),offline:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("path",{d:"M5 12.5a10 10 0 0 1 14 0"}),jsxRuntime.jsx("path",{d:"M8.5 16a5 5 0 0 1 7 0"}),jsxRuntime.jsx("path",{d:"M12 20h.01"}),jsxRuntime.jsx("path",{d:"m4 4 16 16"})]}),fallback:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("circle",{cx:"12",cy:"12",r:"9"}),jsxRuntime.jsx("path",{d:"M9.5 9a2.5 2.5 0 1 1 4.2 1.8c-1 .8-1.7 1.2-1.7 2.7"}),jsxRuntime.jsx("path",{d:"M12 17h.01"})]})}[kind]})}var BaseSystemState=React8.forwardRef(function({kind="fallback",icon,title,description,actions,appearance:appearance2,className,classNames,style,role,"aria-live":ariaLive,...stateProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),statusStates=useMonkeysStatusStates(),densityClassName=statusStates.density==="compact"?"min-h-0 px-3 py-3":statusStates.density==="comfortable"?"min-h-56 px-8 py-12":void 0,theme=resolveBaseAppearance(resolvedAppearance),resolvedIcon=icon===void 0?jsxRuntime.jsx(SystemStateIcon,{kind}):icon,resolvedRole=role??(kind==="error"||kind==="offline"?"alert":"status");return jsxRuntime.jsxs("div",{...componentAttributes,...stateProps,ref,role:resolvedRole,"aria-live":ariaLive??(resolvedRole==="alert"?"assertive":"polite"),"data-monkeys-component":"system-state","data-slot":"root","data-state":kind,"data-density":statusStates.density,className:cn(theme.slots.stateRoot,densityClassName,classNames?.root,className),style:{...theme.styles.stateRoot,...style},children:[hasRenderableNode(resolvedIcon)?jsxRuntime.jsx("div",{"data-slot":"icon","data-state":kind,className:cn(theme.slots.stateIcon,classNames?.icon),style:theme.styles.stateIcon,children:resolvedIcon}):null,hasRenderableNode(title)?jsxRuntime.jsx("div",{"data-slot":"title","data-state":kind,className:cn(theme.slots.stateTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{"data-slot":"description","data-state":kind,className:cn(theme.slots.stateDescription,classNames?.description),children:description}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{"data-slot":"actions","data-state":kind,className:cn(theme.slots.stateActions,classNames?.actions),children:actions}):null]})});var DATA_TRANSFER_COLUMN_TYPE="application/x-monkeys-base-table-column",COLUMN_RESIZE_KEYBOARD_STEP=8;function assignRef3(ref,value){typeof ref=="function"?ref(value):ref&&(ref.current=value);}function assertBoolean2(name,value){if(value!==void 0&&typeof value!="boolean")throw new Error(`BaseTable ${name} must be a boolean.`)}function assertEnum(name,value,values){if(value!==void 0&&!values.includes(value))throw new Error(`BaseTable ${name} must be one of ${values.map(item=>`"${item}"`).join(", ")}.`)}function assertOptionalLabel(name,value){if(value!==void 0&&(typeof value!="string"||value.trim().length===0))throw new Error(`BaseTable ${name} must be a non-empty string when provided.`)}function assertOptionalFunction(name,value){if(value!==void 0&&typeof value!="function")throw new Error(`BaseTable ${name} must be a function when provided.`)}function validateCssSizeValue(value,name,options2={}){if(value!==void 0){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new Error(`BaseTable ${name} must be a finite non-negative number${options2.stringAllowed?" or a non-empty CSS size string":""}.`);return}if(!(options2.stringAllowed&&typeof value=="string"&&value.trim().length>0))throw new Error(`BaseTable ${name} must be ${options2.stringAllowed?"a finite non-negative number or a non-empty CSS size string":"a finite non-negative number"}.`)}}function validateColumns(columns){if(columns===void 0)return;if(!Array.isArray(columns))throw new Error("BaseTable columns must be an array when provided.");let ids2=new Set;return columns.forEach((column,index)=>{if(!column||typeof column!="object"||Array.isArray(column))throw new Error(`BaseTable column at index ${index} must be an object.`);let definition=column;if(typeof definition.id!="string"||definition.id.trim().length===0)throw new Error(`BaseTable column id at index ${index} must be a non-empty string.`);let columnId=definition.id.trim();if(definition.id!==columnId)throw new Error(`BaseTable column id "${definition.id}" must not contain surrounding whitespace.`);if(ids2.has(columnId))throw new Error(`BaseTable columns contain duplicate id "${columnId}".`);if(ids2.add(columnId),validateCssSizeValue(definition.width,`column "${columnId}" width`,{stringAllowed:true}),validateCssSizeValue(definition.minWidth,`column "${columnId}" minWidth`,{stringAllowed:true}),validateCssSizeValue(definition.maxWidth,`column "${columnId}" maxWidth`,{stringAllowed:true}),typeof definition.minWidth=="number"&&typeof definition.maxWidth=="number"&&definition.minWidth>definition.maxWidth)throw new Error(`BaseTable column "${columnId}" minWidth cannot be greater than maxWidth.`)}),ids2}function validateColumnOrder(columnOrder,knownColumnIds){if(columnOrder===void 0)return;if(!Array.isArray(columnOrder))throw new Error("BaseTable columnOrder must be an array when provided.");let ids2=new Set;if(columnOrder.forEach((value,index)=>{if(typeof value!="string"||value.trim().length===0)throw new Error(`BaseTable columnOrder entry at index ${index} must be a non-empty string.`);let columnId=value.trim();if(value!==columnId)throw new Error(`BaseTable columnOrder entry "${value}" must not contain surrounding whitespace.`);if(ids2.has(columnId))throw new Error(`BaseTable columnOrder contains duplicate id "${columnId}".`);if(knownColumnIds&&!knownColumnIds.has(columnId))throw new Error(`BaseTable columnOrder contains unknown column id "${columnId}".`);ids2.add(columnId);}),knownColumnIds&&ids2.size!==knownColumnIds.size){let missing=[...knownColumnIds].filter(columnId=>!ids2.has(columnId));throw new Error(`BaseTable columnOrder must contain every configured column id; missing ${missing.map(columnId=>`"${columnId}"`).join(", ")}.`)}}function validateColumnSizes(columnSizes,knownColumnIds){if(columnSizes!==void 0){if(!columnSizes||typeof columnSizes!="object"||Array.isArray(columnSizes)||![Object.prototype,null].includes(Object.getPrototypeOf(columnSizes)))throw new Error("BaseTable columnSizes must be a plain record when provided.");Object.entries(columnSizes).forEach(([columnId,value])=>{let normalizedColumnId=columnId.trim();if(normalizedColumnId.length===0)throw new Error("BaseTable columnSizes keys must be non-empty strings.");if(columnId!==normalizedColumnId)throw new Error(`BaseTable columnSizes key "${columnId}" must not contain surrounding whitespace.`);if(knownColumnIds&&!knownColumnIds.has(normalizedColumnId))throw new Error(`BaseTable columnSizes contains unknown column id "${columnId}".`);validateCssSizeValue(value,`columnSizes["${columnId}"]`);});}}function isRtl2(element){let ownerWindow=element.ownerDocument.defaultView;return ownerWindow?ownerWindow.getComputedStyle(element).direction==="rtl":element.closest('[dir="rtl"]')!==null}function setPointerCaptureIfAvailable2(target,pointerId){if(target.setPointerCapture)try{target.setPointerCapture(pointerId);}catch(error){let OwnerDOMException=target.ownerDocument.defaultView?.DOMException;if(OwnerDOMException&&error instanceof OwnerDOMException&&error.name==="NotFoundError")return;throw error}}var BaseTableContext=React8.createContext(null);function useBaseTableContext(appearance2){let context=React8.useContext(BaseTableContext),providerAppearance=useMonkeysBaseAppearance(appearance2);if(context){let resolvedAppearance=appearance2===void 0?context.appearance:providerAppearance;return {...context,theme:appearance2===void 0?context.theme:resolveBaseAppearance(resolvedAppearance),appearance:resolvedAppearance}}let theme=resolveBaseAppearance(providerAppearance);return {appearance:providerAppearance,theme,layout:"native",setDraggingColumnId:()=>{}}}function hasSplitScrollTable(children){let found=false;return React8.Children.forEach(children,child=>{if(found||!React8.isValidElement(child))return;let childProps=child.props;if(childProps.layout==="split-scroll"){found=true;return}childProps.children&&(found=hasSplitScrollTable(childProps.children));}),found}function toCssSize2(value){if(value!==void 0)return typeof value=="number"?`${value}px`:value}function validateTableCssSize(value,property){if(value!==void 0){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new Error(`BaseTable ${property} must be a finite non-negative number when numeric.`);return `${value}px`}if(value.trim().length===0)throw new Error(`BaseTable ${property} must not be an empty CSS size.`);return value}}function validateCssSize(value,columnId,property){if(value!==void 0){if(typeof value=="number"){if(!Number.isFinite(value)||value<0)throw new Error(`BaseTable split-scroll column "${columnId}" has invalid ${property}. Expected a finite non-negative number.`);return `${value}px`}if(value.trim().length===0)throw new Error(`BaseTable split-scroll column "${columnId}" has an empty ${property} value.`);return value}}function validateNumericSize(value,columnId,property){if(!(value===void 0||typeof value!="number")){if(!Number.isFinite(value)||value<0)throw new Error(`BaseTable split-scroll column "${columnId}" has invalid ${property}. Expected a finite non-negative number.`);return value}}function buildSplitColumnTemplate(columns,columnSizes){if(!columns?.length)throw new Error('BaseTable layout="split-scroll" requires at least one column definition.');let seenColumnIds=new Set;return `${columns.map((column,index)=>{let columnId=column.id.trim();if(!columnId)throw new Error(`BaseTable split-scroll column at index ${index} requires a non-empty id.`);if(seenColumnIds.has(columnId))throw new Error(`BaseTable layout="split-scroll" received duplicate column id "${columnId}".`);seenColumnIds.add(columnId);let columnSize=columnSizes?.[columnId],numericMinWidth=validateNumericSize(column.minWidth,columnId,"minWidth"),numericMaxWidth=validateNumericSize(column.maxWidth,columnId,"maxWidth");if(numericMinWidth!==void 0&&numericMaxWidth!==void 0&&numericMaxWidth<numericMinWidth)throw new Error(`BaseTable split-scroll column "${columnId}" has maxWidth smaller than minWidth.`);let minWidth=validateCssSize(column.minWidth,columnId,"minWidth"),maxWidth=validateCssSize(column.maxWidth,columnId,"maxWidth"),baseWidth=columnSize!==void 0?clampWidth(columnSize,numericMinWidth,numericMaxWidth):column.width,width=validateCssSize(baseWidth,columnId,"width");return width||`minmax(${minWidth??"0px"}, ${maxWidth??"1fr"})`}).join(" ")} var(--base-table-split-scrollbar-gutter)`}function clampWidth(value,minWidth,maxWidth){let min=minWidth??48,max=maxWidth??Number.POSITIVE_INFINITY;return Math.min(Math.max(value,min),max)}function getNextColumnOrder(order,columnId,targetColumnId){if(!order||columnId===targetColumnId)return;let fromIndex=order.indexOf(columnId),toIndex=order.indexOf(targetColumnId);if(fromIndex<0||toIndex<0)return;let next=[...order],[moved]=next.splice(fromIndex,1);return next.splice(toIndex,0,moved),next}function sortAriaValue(direction){switch(direction){case "asc":return "ascending";case "desc":return "descending";default:return}}function getSplitHeadJustifyContent(align){switch(align){case "center":return "center";case "right":return "flex-end";default:return "flex-start"}}function getSplitHeadAlignItems(verticalAlign){switch(verticalAlign){case "top":return "flex-start";case "bottom":return "flex-end";default:return "center"}}function SortIndicator({direction,className}){return jsxRuntime.jsx("span",{"aria-hidden":"true",className:cn(className,direction==="desc"&&"rotate-180",(!direction||direction==="none")&&"opacity-45"),children:"\u25B2"})}function DragHandleIcon(){return jsxRuntime.jsxs("span",{"aria-hidden":"true",className:"grid gap-0.5",children:[jsxRuntime.jsx("span",{className:"h-0.5 w-0.5 rounded-full bg-current"}),jsxRuntime.jsx("span",{className:"h-0.5 w-0.5 rounded-full bg-current"}),jsxRuntime.jsx("span",{className:"h-0.5 w-0.5 rounded-full bg-current"})]})}var BaseTableContainer=React8.forwardRef(function({appearance:appearance2,attachedFooter=false,children,className,classNames,style,...containerProps},ref){assertBoolean2("attachedFooter",attachedFooter);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),splitScrollContainerStyle=hasSplitScrollTable(children)?{overflow:"hidden",scrollbarGutter:"auto"}:void 0;return jsxRuntime.jsx("div",{...componentAttributes,...containerProps,ref,"data-monkeys-component":"table-container","data-slot":"container","data-base-table-container":"","data-attached-footer":attachedFooter?"":void 0,className:cn(theme.slots.tableContainer,attachedFooter&&theme.slots.tableContainerFooterAttached,classNames?.root,className),style:{...theme.styles.tableContainer,...attachedFooter?theme.styles.tableContainerFooterAttached:void 0,...splitScrollContainerStyle,...style},children})}),BaseTable=React8.forwardRef(function({appearance:appearance2,className,classNames,style,layout="native",columns,bodyMaxHeight,bodyClassName,columnOrder,columnSizes,columnDragEnabled=false,columnResizeEnabled=false,onColumnOrderChange,onColumnSizeChange,...tableProps},ref){assertEnum("layout",layout,["native","split-scroll"]),assertBoolean2("columnDragEnabled",columnDragEnabled),assertBoolean2("columnResizeEnabled",columnResizeEnabled),assertOptionalFunction("onColumnOrderChange",onColumnOrderChange),assertOptionalFunction("onColumnSizeChange",onColumnSizeChange),validateCssSizeValue(bodyMaxHeight,"bodyMaxHeight",{stringAllowed:true});let knownColumnIds=validateColumns(columns);validateColumnOrder(columnOrder,knownColumnIds),validateColumnSizes(columnSizes,knownColumnIds);let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),[draggingColumnId,setDraggingColumnId]=React8.useState(),splitHeaderRef=React8.useRef(null),splitFooterRef=React8.useRef(null),isSplitScroll=layout==="split-scroll",columnTemplate=isSplitScroll?buildSplitColumnTemplate(columns,columnSizes):void 0,contextValue={appearance:resolvedAppearance,theme,layout,columnTemplate,bodyMaxHeight,bodyClassName,splitHeaderRef,splitFooterRef,columnOrder,columnSizes,columnDragEnabled,columnResizeEnabled,onColumnOrderChange,onColumnSizeChange,draggingColumnId,setDraggingColumnId};return jsxRuntime.jsx(BaseTableContext.Provider,{value:contextValue,children:jsxRuntime.jsx("table",{...componentAttributes,...tableProps,ref,"data-monkeys-component":"table","data-slot":"root","data-base-table-layout":layout,className:cn(theme.slots.tableRoot,isSplitScroll&&theme.slots.tableSplitRoot,classNames?.root,className),style:{...theme.styles.table,...isSplitScroll?theme.styles.tableSplitRoot:void 0,...columnTemplate?{"--base-table-column-template":columnTemplate}:void 0,...style}})})}),BaseTableHeader=React8.forwardRef(function({appearance:appearance2,className,classNames,style,...headerProps},ref){let{layout,splitHeaderRef,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("thead",{...headerProps,ref:node=>{splitHeaderRef&&(splitHeaderRef.current=isSplitScroll?node:null),assignRef3(ref,node);},"data-slot":"header",className:cn(theme.slots.tableHeader,isSplitScroll&&theme.slots.tableSplitHeader,classNames?.root,className),style:{...theme.styles.tableHeader,...isSplitScroll?theme.styles.tableSplitHeader:void 0,...style}})}),BaseTableBody=React8.forwardRef(function({appearance:appearance2,className,classNames,onScroll,style,...bodyProps},ref){let{bodyClassName,bodyMaxHeight,layout,splitFooterRef,splitHeaderRef,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("tbody",{...bodyProps,ref,"data-slot":"body",onScroll:isSplitScroll?event=>{let scrollLeft=event.currentTarget.scrollLeft;splitHeaderRef?.current&&(splitHeaderRef.current.scrollLeft=scrollLeft),splitFooterRef?.current&&(splitFooterRef.current.scrollLeft=scrollLeft),onScroll?.(event);}:onScroll,className:cn(theme.slots.tableBody,isSplitScroll&&theme.slots.tableSplitBody,isSplitScroll&&bodyClassName,classNames?.root,className),style:{...theme.styles.tableBody,...isSplitScroll?theme.styles.tableSplitBody:void 0,...isSplitScroll&&bodyMaxHeight!==void 0?{maxHeight:validateTableCssSize(bodyMaxHeight,"bodyMaxHeight")}:void 0,...style}})});React8.forwardRef(function({appearance:appearance2,className,classNames,style,...footerProps},ref){let{layout,splitFooterRef,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("tfoot",{...footerProps,ref:node=>{splitFooterRef&&(splitFooterRef.current=isSplitScroll?node:null),assignRef3(ref,node);},"data-slot":"footer",className:cn(theme.slots.tableFooter,isSplitScroll&&theme.slots.tableSplitFooter,classNames?.root,className),style:{...theme.styles.tableFooter,...isSplitScroll?theme.styles.tableSplitFooter:void 0,...style}})});var BaseTableRow=React8.forwardRef(function({interactive,selected:selected2,disabled,appearance:appearance2,className,classNames,style,...rowProps},ref){assertBoolean2("interactive",interactive),assertBoolean2("selected",selected2),assertBoolean2("disabled",disabled);let{layout,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("tr",{...rowProps,ref,"data-slot":"row","aria-disabled":disabled||void 0,"data-state":selected2?"selected":void 0,className:cn(theme.slots.tableRow,isSplitScroll&&theme.slots.tableSplitRow,interactive&&!disabled&&theme.slots.tableRowInteractive,selected2&&theme.slots.tableRowSelected,disabled&&theme.slots.tableRowDisabled,classNames?.root,className),style:{...theme.styles.tableRow,...isSplitScroll?theme.styles.tableSplitRow:void 0,...style}})}),BaseTableHead=React8.forwardRef(function({presentation,columnId,align,verticalAlign,icon,label,description,meta,actions,trailing,sortable,sortDirection="none",sortLabel,onSort,draggable,dragLabel,resizable,resizeLabel,width,minWidth,maxWidth,appearance:appearance2,className,classNames,style,children,onDragOver,onDrop,...headProps},forwardedRef){if(assertEnum("head presentation",presentation,["classic-data-grid"]),assertEnum("head align",align,["left","center","right"]),assertEnum("head verticalAlign",verticalAlign,["top","middle","bottom"]),assertEnum("head sortDirection",sortDirection,["asc","desc","none"]),assertBoolean2("head sortable",sortable),assertBoolean2("head draggable",draggable),assertBoolean2("head resizable",resizable),assertOptionalFunction("head onSort",onSort),assertOptionalLabel("head sortLabel",sortLabel),assertOptionalLabel("head dragLabel",dragLabel),assertOptionalLabel("head resizeLabel",resizeLabel),columnId!==void 0&&(typeof columnId!="string"||columnId.trim().length===0))throw new Error("BaseTable head columnId must be a non-empty string when provided.");if(validateCssSizeValue(width,"head width",{stringAllowed:true}),validateCssSizeValue(minWidth,"head minWidth"),validateCssSizeValue(maxWidth,"head maxWidth"),minWidth!==void 0&&maxWidth!==void 0&&minWidth>maxWidth)throw new Error("BaseTable head minWidth cannot be greater than maxWidth.");let tableContext=useBaseTableContext(appearance2),{theme}=tableContext,messages=useMonkeysLocaleMessages().table,isSplitScroll=tableContext.layout==="split-scroll",classicDataGrid=presentation==="classic-data-grid",resolvedAlign=align??(isSplitScroll?"center":"left"),resolvedVerticalAlign=verticalAlign??"middle",headRef=React8.useRef(null),resizeCleanupRef=React8.useRef(()=>{}),[measuredWidth,setMeasuredWidth]=React8.useState(),setHeadRef=node=>{headRef.current=node,assignRef3(forwardedRef,node);},controlledWidth=columnId&&tableContext.columnSizes?.[columnId]!==void 0?tableContext.columnSizes[columnId]:width,canDrag=!!(columnId&&draggable!==false&&(draggable||tableContext.columnDragEnabled)&&tableContext.columnOrder&&tableContext.onColumnOrderChange),canResize=!!(columnId&&resizable!==false&&(resizable||tableContext.columnResizeEnabled)&&tableContext.onColumnSizeChange);if(canResize&&maxWidth!==void 0&&maxWidth<(minWidth??48))throw new Error("BaseTable resizable head maxWidth cannot be smaller than its effective minWidth.");let interactiveSort=!!(sortable||onSort),ariaSort=sortAriaValue(sortDirection),content=hasRenderableNode(label)?label:children,hasVisibleSortName=hasRenderableNode(content)||hasRenderableNode(description),sortAccessibleName=sortLabel??(hasVisibleSortName?void 0:messages.sortColumn({columnId:columnId?.trim()||void 0})),usesRichHeader=canDrag||hasRenderableNode(icon)||hasRenderableNode(label)||hasRenderableNode(description)||hasRenderableNode(meta)||hasRenderableNode(actions)||hasRenderableNode(trailing)||interactiveSort,renderedContent=classicDataGrid?jsxRuntime.jsx("div",{className:cn("flex h-full min-w-0 select-none items-center",resolvedAlign==="center"?"justify-center":resolvedAlign==="right"?"justify-end":"justify-start",canDrag&&"cursor-grab active:cursor-grabbing"),...canDrag?{draggable:true,role:"button",tabIndex:0,"aria-disabled":false,"aria-roledescription":"sortable",onKeyDown:event=>{if(!columnId||!tableContext.columnOrder||event.key!=="ArrowLeft"&&event.key!=="ArrowRight")return;let currentIndex=tableContext.columnOrder.indexOf(columnId);if(currentIndex<0)return;let rtl=isRtl2(event.currentTarget),physicalDelta=event.key==="ArrowLeft"?-1:1,nextIndex=currentIndex+(rtl?-physicalDelta:physicalDelta),targetColumnId=tableContext.columnOrder[nextIndex];if(!targetColumnId)return;let nextOrder=getNextColumnOrder(tableContext.columnOrder,columnId,targetColumnId);nextOrder&&(event.preventDefault(),tableContext.onColumnOrderChange?.(nextOrder,{columnId,targetColumnId}));},onDragStart:event=>{event.stopPropagation(),tableContext.setDraggingColumnId(columnId),event.dataTransfer.effectAllowed="move",event.dataTransfer.setData(DATA_TRANSFER_COLUMN_TYPE,columnId);},onDragEnd:event=>{event.stopPropagation(),tableContext.setDraggingColumnId(void 0);}}:{},children:content}):usesRichHeader?jsxRuntime.jsxs("div",{className:cn(theme.slots.tableHeadContent,classNames?.content),children:[jsxRuntime.jsxs("div",{className:cn(theme.slots.tableHeadMain,classNames?.main),children:[canDrag?jsxRuntime.jsx("button",{type:"button",draggable:true,title:dragLabel,"aria-label":dragLabel??messages.dragColumn({columnId}),className:cn(theme.slots.tableHeadDragHandle,classNames?.dragHandle),onClick:event=>event.stopPropagation(),onKeyDown:event=>{if(!columnId||!tableContext.columnOrder||event.key!=="ArrowLeft"&&event.key!=="ArrowRight")return;let currentIndex=tableContext.columnOrder.indexOf(columnId);if(currentIndex<0)return;let rtl=isRtl2(event.currentTarget),physicalDelta=event.key==="ArrowLeft"?-1:1,nextIndex=currentIndex+(rtl?-physicalDelta:physicalDelta),targetColumnId=tableContext.columnOrder[nextIndex];if(!targetColumnId)return;let nextOrder=getNextColumnOrder(tableContext.columnOrder,columnId,targetColumnId);nextOrder&&(event.preventDefault(),tableContext.onColumnOrderChange?.(nextOrder,{columnId,targetColumnId}));},onDragStart:event=>{event.stopPropagation(),tableContext.setDraggingColumnId(columnId),event.dataTransfer.effectAllowed="move",event.dataTransfer.setData(DATA_TRANSFER_COLUMN_TYPE,columnId);},onDragEnd:event=>{event.stopPropagation(),tableContext.setDraggingColumnId(void 0);},children:jsxRuntime.jsx(DragHandleIcon,{})}):null,icon?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadIcon,classNames?.icon),children:icon}):null,interactiveSort?jsxRuntime.jsxs("button",{type:"button",disabled:!onSort,title:sortLabel,"aria-label":sortAccessibleName,className:cn(theme.slots.tableHeadSortButton,classNames?.sortButton),onClick:event=>{event.stopPropagation(),onSort?.(columnId);},children:[jsxRuntime.jsxs("span",{className:cn(theme.slots.tableHeadText,classNames?.text),children:[hasRenderableNode(content)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadLabel,classNames?.label),children:content}):null,hasRenderableNode(description)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadDescription,classNames?.description),children:description}):null]}),jsxRuntime.jsx(SortIndicator,{direction:sortDirection,className:cn(theme.slots.tableHeadSortIcon,classNames?.sortIcon)})]}):jsxRuntime.jsxs("span",{className:cn(theme.slots.tableHeadText,classNames?.text),children:[hasRenderableNode(content)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadLabel,classNames?.label),children:content}):null,hasRenderableNode(description)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadDescription,classNames?.description),children:description}):null]})]}),hasRenderableNode(meta)||hasRenderableNode(actions)||hasRenderableNode(trailing)?jsxRuntime.jsxs("div",{className:cn(theme.slots.tableHeadActions,classNames?.actions),children:[hasRenderableNode(meta)?jsxRuntime.jsx("span",{className:cn(theme.slots.tableHeadMeta,classNames?.meta),children:meta}):null,actions,trailing]}):null]}):children,handleDragOver=event=>{onDragOver?.(event),!(!canDrag||!tableContext.draggingColumnId||tableContext.draggingColumnId===columnId)&&(event.preventDefault(),event.dataTransfer.dropEffect="move");},handleDrop=event=>{if(onDrop?.(event),!canDrag||!columnId)return;let sourceColumnId=tableContext.draggingColumnId||event.dataTransfer.getData(DATA_TRANSFER_COLUMN_TYPE);if(!sourceColumnId||sourceColumnId===columnId)return;let nextOrder=getNextColumnOrder(tableContext.columnOrder,sourceColumnId,columnId);nextOrder&&(event.preventDefault(),tableContext.onColumnOrderChange?.(nextOrder,{columnId:sourceColumnId,targetColumnId:columnId})),tableContext.setDraggingColumnId(void 0);},handleResizePointerDown=event=>{if(!canResize||!columnId||!tableContext.onColumnSizeChange||event.button!==0&&event.pointerType!=="touch")return;event.preventDefault(),event.stopPropagation(),resizeCleanupRef.current();let startX=event.clientX,currentWidth=currentResizeWidth??headRef.current?.offsetWidth??minWidth??48,previousWidth=clampWidth(currentWidth,minWidth,maxWidth),pointerId=event.pointerId,target=event.currentTarget,ownerDocument=target.ownerDocument,rtl=isRtl2(target),handlePointerMove=moveEvent=>{if(moveEvent.pointerId!==pointerId)return;let nextWidth=clampWidth(previousWidth+(rtl?startX-moveEvent.clientX:moveEvent.clientX-startX),minWidth,maxWidth);tableContext.onColumnSizeChange?.(columnId,nextWidth,{columnId,previousWidth,minWidth,maxWidth});},handleStop=nextEvent=>{nextEvent.pointerId===pointerId&&resizeCleanupRef.current();},handleLostCapture=nextEvent=>{nextEvent.pointerId===pointerId&&resizeCleanupRef.current();};resizeCleanupRef.current=()=>{ownerDocument.removeEventListener("pointermove",handlePointerMove),ownerDocument.removeEventListener("pointerup",handleStop),ownerDocument.removeEventListener("pointercancel",handleStop),target.removeEventListener("lostpointercapture",handleLostCapture),target.hasPointerCapture?.(pointerId)&&target.releasePointerCapture?.(pointerId),resizeCleanupRef.current=()=>{};},setPointerCaptureIfAvailable2(target,pointerId),ownerDocument.addEventListener("pointermove",handlePointerMove),ownerDocument.addEventListener("pointerup",handleStop),ownerDocument.addEventListener("pointercancel",handleStop),target.addEventListener("lostpointercapture",handleLostCapture);},currentResizeWidth=typeof controlledWidth=="number"?clampWidth(controlledWidth,minWidth,maxWidth):measuredWidth,announcedResizeWidth=currentResizeWidth??clampWidth(minWidth??48,minWidth,maxWidth),handleResizeKeyDown=event=>{if(!canResize||!columnId||!tableContext.onColumnSizeChange)return;let rtl=isRtl2(event.currentTarget),previousWidth=currentResizeWidth??clampWidth(headRef.current?.offsetWidth||minWidth||48,minWidth,maxWidth),nextWidth;event.key==="ArrowLeft"&&(nextWidth=previousWidth+(rtl?COLUMN_RESIZE_KEYBOARD_STEP:-COLUMN_RESIZE_KEYBOARD_STEP)),event.key==="ArrowRight"&&(nextWidth=previousWidth+(rtl?-COLUMN_RESIZE_KEYBOARD_STEP:COLUMN_RESIZE_KEYBOARD_STEP)),event.key==="Home"&&minWidth!==void 0&&(nextWidth=minWidth),event.key==="End"&&maxWidth!==void 0&&(nextWidth=maxWidth),nextWidth!==void 0&&(event.preventDefault(),event.stopPropagation(),tableContext.onColumnSizeChange(columnId,clampWidth(nextWidth,minWidth,maxWidth),{columnId,previousWidth,minWidth,maxWidth}));};return React8.useEffect(()=>{if(typeof controlledWidth=="number"){setMeasuredWidth(void 0);return}let measured=headRef.current?.getBoundingClientRect().width;if(measured&&Number.isFinite(measured)){let nextWidth=clampWidth(measured,minWidth,maxWidth);setMeasuredWidth(current=>current===nextWidth?current:nextWidth);}},[controlledWidth,minWidth,maxWidth,canResize]),React8.useEffect(()=>(canResize||resizeCleanupRef.current(),()=>resizeCleanupRef.current()),[canResize,columnId,tableContext.onColumnSizeChange]),jsxRuntime.jsxs("th",{...headProps,ref:setHeadRef,"data-slot":"head","data-v2-header-drag-id":classicDataGrid&&canDrag?columnId:void 0,scope:headProps.scope??"col","aria-sort":ariaSort,className:cn(theme.slots.tableHead,isSplitScroll&&theme.slots.tableSplitHead,resolvedAlign==="center"&&theme.slots.tableCellAlignCenter,resolvedAlign==="right"&&theme.slots.tableCellAlignRight,classicDataGrid&&"!relative !h-9 !px-3 !align-middle !text-sm !font-medium !text-muted-foreground after:pointer-events-none after:absolute after:bottom-2 after:right-0 after:top-2 after:w-px after:bg-border/50 after:content-['']",classNames?.root,className),style:{...theme.styles.tableHead,...isSplitScroll?theme.styles.tableSplitHead:void 0,width:isSplitScroll?void 0:toCssSize2(controlledWidth),minWidth:isSplitScroll?void 0:toCssSize2(minWidth),maxWidth:isSplitScroll?void 0:toCssSize2(maxWidth),...isSplitScroll?{alignItems:getSplitHeadAlignItems(resolvedVerticalAlign),justifyContent:getSplitHeadJustifyContent(resolvedAlign),textAlign:resolvedAlign}:verticalAlign?{verticalAlign}:void 0,...style},onDragOver:handleDragOver,onDrop:handleDrop,children:[renderedContent,canResize&&classicDataGrid?jsxRuntime.jsx("div",{"data-column-resize-handle":"true",className:"absolute right-0 top-0 z-20 h-full w-2 cursor-col-resize touch-none select-none hover:bg-muted",onPointerDown:handleResizePointerDown}):canResize?jsxRuntime.jsx("button",{type:"button",role:"separator","aria-orientation":"vertical","aria-valuenow":announcedResizeWidth,"aria-valuemin":minWidth??48,"aria-valuemax":maxWidth,"aria-valuetext":`${announcedResizeWidth}px`,title:resizeLabel,"aria-label":resizeLabel??messages.resizeColumn({columnId}),className:cn(theme.slots.tableHeadResizeHandle,classNames?.resizeHandle),onClick:event=>event.stopPropagation(),onKeyDown:handleResizeKeyDown,onPointerDown:handleResizePointerDown}):null]})}),BaseTableCell=React8.forwardRef(function({align="left",appearance:appearance2,className,classNames,style,...cellProps},ref){assertEnum("cell align",align,["left","center","right"]);let{layout,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll";return jsxRuntime.jsx("td",{...cellProps,ref,"data-slot":"cell",className:cn(theme.slots.tableCell,isSplitScroll&&theme.slots.tableSplitCell,align==="center"&&theme.slots.tableCellAlignCenter,align==="right"&&theme.slots.tableCellAlignRight,classNames?.root,className),style:{...theme.styles.tableCell,...isSplitScroll?theme.styles.tableSplitCell:void 0,...style}})});React8.forwardRef(function({appearance:appearance2,className,classNames,style,...captionProps},ref){let{theme}=useBaseTableContext(appearance2);return jsxRuntime.jsx("caption",{...captionProps,ref,"data-slot":"caption",className:cn(theme.slots.tableCaption,classNames?.root,className),style:{...theme.styles.tableCaption,...style}})});var BaseTableEmpty=React8.forwardRef(function({colSpan,icon,title,description,actions,children,appearance:appearance2,className,classNames,style,...emptyProps},ref){if(!Number.isSafeInteger(colSpan)||colSpan<1)throw new Error("BaseTable empty colSpan must be a positive safe integer.");let{layout,theme}=useBaseTableContext(appearance2),isSplitScroll=layout==="split-scroll",hasStructuredContent=hasRenderableNode(icon)||hasRenderableNode(title)||hasRenderableNode(description)||hasRenderableNode(actions);return jsxRuntime.jsx("tr",{...emptyProps,ref,"data-slot":"empty-row",className:cn(theme.slots.tableEmptyRow,isSplitScroll&&theme.slots.tableSplitRow,classNames?.row,className),style:{...theme.styles.tableEmpty,...isSplitScroll?theme.styles.tableSplitRow:void 0,...style},children:jsxRuntime.jsx("td",{colSpan,"data-slot":"empty-cell",className:cn(theme.slots.tableEmptyCell,isSplitScroll&&theme.slots.tableSplitCell,classNames?.cell),style:isSplitScroll?{gridColumn:"1 / -1"}:void 0,children:hasStructuredContent?jsxRuntime.jsxs("div",{className:cn(theme.slots.tableEmptyContent,classNames?.content),children:[hasRenderableNode(icon)?jsxRuntime.jsx("div",{className:cn(theme.slots.tableEmptyIcon,classNames?.icon),children:icon}):null,hasRenderableNode(title)?jsxRuntime.jsx("div",{className:cn(theme.slots.tableEmptyTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{className:cn(theme.slots.tableEmptyDescription,classNames?.description),children:description}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{className:cn(theme.slots.tableEmptyActions,classNames?.actions),children:actions}):null]}):children})})});function validateTabsProps({items,value,defaultValue,orientation,activationMode}){if(!Array.isArray(items))throw new TypeError("BaseTabs items must be an array.");if(value!==void 0&&typeof value!="string")throw new TypeError("BaseTabs value must be a string.");if(defaultValue!==void 0&&typeof defaultValue!="string")throw new TypeError("BaseTabs defaultValue must be a string.");if(orientation!=="horizontal"&&orientation!=="vertical")throw new TypeError('BaseTabs orientation must be "horizontal" or "vertical".');if(activationMode!=="automatic"&&activationMode!=="manual")throw new TypeError('BaseTabs activationMode must be "automatic" or "manual".');let values=new Set;items.forEach((item,index)=>{if(!item||typeof item!="object")throw new TypeError(`BaseTabs item at index ${index} must be an object.`);if(typeof item.value!="string")throw new TypeError(`BaseTabs item value at index ${index} must be a string.`);if(values.has(item.value))throw new TypeError(`BaseTabs items must use unique values; duplicate value ${JSON.stringify(item.value)} at index ${index}.`);if(item.disabled!==void 0&&typeof item.disabled!="boolean")throw new TypeError(`BaseTabs item disabled at index ${index} must be a boolean.`);values.add(item.value);});}function getResolvedValue(items,candidate){return candidate!==void 0&&items.some(item=>item.value===candidate&&!item.disabled)?candidate:items.find(item=>!item.disabled)?.value}function toDomId4(value){return value.replace(/[^a-zA-Z0-9_-]/g,"-")}function getDomIdFragments2(items){let usedFragments=new Set;return items.map((item,index)=>{let baseFragment=toDomId4(item.value),fragment=baseFragment;if(usedFragments.has(fragment))for(fragment=`${baseFragment}-${index}`;usedFragments.has(fragment);)fragment=`${fragment}-${index}`;return usedFragments.add(fragment),fragment})}function getHorizontalStep(event,key3){let rtl=event.currentTarget.ownerDocument.defaultView?.getComputedStyle(event.currentTarget).direction==="rtl";return key3==="ArrowRight"?rtl?-1:1:rtl?1:-1}var BaseTabs=React8.forwardRef(function({items=[],value,defaultValue,orientation="horizontal",activationMode="automatic",appearance:appearance2,className,classNames,style,onValueChange,id:id9,"aria-label":tablistAriaLabel,"aria-labelledby":tablistAriaLabelledBy,...tabsProps},ref){validateTabsProps({items,value,defaultValue,orientation,activationMode});let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),generatedId=React8.useId(),rootId=id9??generatedId,initialCandidate=value!==void 0?value:defaultValue,[uncontrolledValue,setUncontrolledValue]=React8.useState(()=>getResolvedValue(items,defaultValue)),[focusedValue,setFocusedValue]=React8.useState(()=>getResolvedValue(items,initialCandidate)),triggerRefs=React8.useRef([]),isControlled=value!==void 0,selectedValue=getResolvedValue(items,isControlled?value:uncontrolledValue),selectedIndex=items.findIndex(item=>item.value===selectedValue&&!item.disabled),selectedItem=selectedIndex>=0?items[selectedIndex]:void 0,enabledIndices=items.reduce((indices,item,index)=>(item.disabled||indices.push(index),indices),[]),storedFocusIndex=items.findIndex(item=>item.value===focusedValue&&!item.disabled),rovingIndex=storedFocusIndex>=0?storedFocusIndex:selectedIndex,idFragments=getDomIdFragments2(items),groupState=selectedItem?"active":"disabled",layerDirection=typeof tabsProps.dir=="string"?tabsProps.dir:componentAttributes.dir,activateItem=item=>{item.disabled||(isControlled||setUncontrolledValue(item.value),onValueChange?.(item.value));},moveFocus=(event,targetIndex)=>{let targetItem=items[targetIndex];!targetItem||targetItem.disabled||(event.preventDefault(),setFocusedValue(targetItem.value),triggerRefs.current[targetIndex]?.focus(),activationMode==="automatic"&&activateItem(targetItem));},handleKeyDown=(event,item,index)=>{if(item.disabled)return;if(activationMode==="manual"&&(event.key==="Enter"||event.key===" ")){event.preventDefault(),activateItem(item);return}if(enabledIndices.length===0)return;if(event.key==="Home"){moveFocus(event,enabledIndices[0]);return}if(event.key==="End"){moveFocus(event,enabledIndices[enabledIndices.length-1]);return}let step;if(orientation==="horizontal"&&(event.key==="ArrowLeft"||event.key==="ArrowRight")?step=getHorizontalStep(event,event.key):orientation==="vertical"&&event.key==="ArrowUp"?step=-1:orientation==="vertical"&&event.key==="ArrowDown"&&(step=1),step===void 0)return;let nextPosition=(enabledIndices.indexOf(index)+step+enabledIndices.length)%enabledIndices.length;moveFocus(event,enabledIndices[nextPosition]);};return jsxRuntime.jsxs("div",{...componentAttributes,...tabsProps,ref,id:id9,"data-monkeys-component":"tabs","data-slot":"root","data-state":groupState,"data-orientation":orientation,"data-activation-mode":activationMode,className:cn(theme.slots.tabsRoot,classNames?.root,className),style,children:[jsxRuntime.jsx("div",{...componentAttributes,dir:layerDirection,role:"tablist","aria-label":tablistAriaLabel,"aria-labelledby":tablistAriaLabelledBy,"aria-orientation":orientation,"data-monkeys-component":"tabs","data-slot":"list","data-state":groupState,"data-orientation":orientation,"data-activation-mode":activationMode,className:cn(theme.slots.tabsList,orientation==="vertical"&&"flex-col items-stretch",classNames?.list),style:theme.styles.tabsList,children:items.map((item,index)=>{let itemId=idFragments[index],selected2=index===selectedIndex,state=item.disabled?"disabled":selected2?"active":"inactive";return React8.createElement("button",{...componentAttributes,ref:node=>{triggerRefs.current[index]=node;},key:item.value,id:`${rootId}-${itemId}-tab`,type:"button",role:"tab",tabIndex:!item.disabled&&index===rovingIndex?0:-1,"aria-selected":selected2,"aria-controls":`${rootId}-${itemId}-panel`,disabled:item.disabled,dir:layerDirection,"data-monkeys-component":"tabs","data-slot":"trigger","data-state":state,"data-orientation":orientation,"data-activation-mode":activationMode,"data-disabled":item.disabled||void 0,className:cn(theme.slots.tabsTrigger,selected2&&theme.slots.tabsTriggerActive,item.disabled&&theme.slots.tabsTriggerDisabled,classNames?.trigger),style:theme.styles.tabsTrigger,onFocus:()=>setFocusedValue(item.value),onKeyDown:event=>handleKeyDown(event,item,index),onClick:()=>{setFocusedValue(item.value),activateItem(item);}},jsxRuntime.jsx("span",{className:"min-w-0 truncate",children:item.label}))})}),selectedItem?jsxRuntime.jsx("div",{...componentAttributes,id:`${rootId}-${idFragments[selectedIndex]}-panel`,role:"tabpanel",tabIndex:0,"aria-labelledby":`${rootId}-${idFragments[selectedIndex]}-tab`,dir:layerDirection,"data-monkeys-component":"tabs","data-slot":"panel","data-state":"active","data-orientation":orientation,"data-activation-mode":activationMode,className:cn(theme.slots.tabsPanel,classNames?.panel),style:theme.styles.tabsPanel,children:hasRenderableNode(selectedItem.content)?selectedItem.content:hasRenderableNode(selectedItem.description)?jsxRuntime.jsx("p",{className:"m-0 text-muted-foreground",children:selectedItem.description}):null}):null]})});var controlSizeClassNames2={sm:"min-h-20 px-2.5 py-1.5 text-xs leading-5",md:"min-h-24 px-3 py-2 text-sm leading-6",lg:"min-h-28 px-3.5 py-2.5 text-base leading-7"},BaseTextarea=React8.forwardRef(function({invalid:invalid2=false,disabled=false,readOnly=false,controlSize,appearance:appearance2,className,classNames,style,"aria-invalid":nativeAriaInvalid,onBlur,onChange,...textareaProps},ref){for(let[name,value]of [["invalid",invalid2],["disabled",disabled],["readOnly",readOnly]])if(typeof value!="boolean")throw new TypeError(`BaseTextarea ${name} must be a boolean.`);if(controlSize!==void 0&&controlSize!=="sm"&&controlSize!=="md"&&controlSize!=="lg")throw new TypeError('BaseTextarea controlSize must be "sm", "md", or "lg".');let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),fieldControl=useBaseFieldControl(),resolvedInvalid=invalid2||fieldControl.invalid;return jsxRuntime.jsx("textarea",{...componentAttributes,...textareaProps,ref,disabled,readOnly,"aria-invalid":nativeAriaInvalid??(resolvedInvalid||void 0),"data-monkeys-component":"textarea","data-slot":"control","data-size":controlSize,"data-invalid":resolvedInvalid||void 0,"data-disabled":disabled||void 0,"data-readonly":readOnly||void 0,className:cn(theme.slots.controlWrapper,theme.slots.controlBase,theme.slots.controlTextarea,resolvedInvalid&&theme.slots.controlInvalid,disabled&&theme.slots.controlDisabled,readOnly&&theme.slots.controlReadOnly,controlSize&&controlSizeClassNames2[controlSize],classNames?.control,className),style:{...theme.styles.control,...resolvedInvalid?theme.styles.controlInvalid:void 0,...disabled?theme.styles.controlDisabled:void 0,...style},onBlur:event=>{onBlur?.(event),fieldControl.notifyBlur(event.currentTarget.value);},onChange:event=>{onChange?.(event),fieldControl.notifyChange(event.currentTarget.value);}})});function useOverflowMotion(viewportRef,contentRef,enabled,content,allowHoverWithReducedMotion=false){React8.useEffect(()=>{let viewport=viewportRef.current,text10=contentRef.current,view=viewport?.ownerDocument.defaultView;if(!enabled||!viewport||!text10||!view?.matchMedia||!text10.animate)return;let trigger=viewport.closest("button, a, [tabindex]")??viewport,preference=view.matchMedia("(prefers-reduced-motion: reduce)"),hovered=trigger.matches(":hover"),focused=trigger.contains(viewport.ownerDocument.activeElement),animation,stop=()=>{animation?.cancel(),animation=void 0,delete viewport.dataset.scrolling;},update=()=>{stop();let distance=text10.scrollWidth-viewport.clientWidth;if(preference.matches&&!(allowHoverWithReducedMotion&&hovered)||!hovered&&!focused||distance<=1)return;let travel=distance/64*1e3,pause=160,duration=travel+pause*2;animation=text10.animate([{transform:"translateX(0)",offset:0},{transform:"translateX(0)",offset:pause/duration},{transform:`translateX(-${distance}px)`,offset:1-pause/duration},{transform:`translateX(-${distance}px)`,offset:1}],{duration,iterations:1/0,direction:"alternate",easing:"linear"}),viewport.dataset.scrolling="true";},enter=()=>{hovered=true,update();},leave=()=>{hovered=false,update();},focus=()=>{focused=true,update();},blur=event=>{focused=event.relatedTarget instanceof view.Node&&trigger.contains(event.relatedTarget),update();},resize=view.ResizeObserver?new view.ResizeObserver(update):void 0;return resize?.observe(viewport),resize?.observe(text10),trigger.addEventListener("pointerenter",enter),trigger.addEventListener("pointerleave",leave),trigger.addEventListener("focusin",focus),trigger.addEventListener("focusout",blur),preference.addEventListener("change",update),update(),()=>{stop(),resize?.disconnect(),trigger.removeEventListener("pointerenter",enter),trigger.removeEventListener("pointerleave",leave),trigger.removeEventListener("focusin",focus),trigger.removeEventListener("focusout",blur),preference.removeEventListener("change",update);}},[viewportRef,contentRef,enabled,content,allowHoverWithReducedMotion]);}var BaseText=React8.forwardRef(function({as="p",children,size:size2="md",tone="default",overflowMotion,appearance:appearance2,className,classNames,style,...textProps},ref){let resolvedAppearance=useMonkeysBaseAppearance(appearance2),componentAttributes=useMonkeysComponentAttributes(),theme=resolveBaseAppearance(resolvedAppearance),viewportRef=React8.useRef(null),contentRef=React8.useRef(null),scrolling=overflowMotion==="hover-scroll"||overflowMotion==="hover-scroll-always",setRef=React8.useCallback(node=>{viewportRef.current=node,typeof ref=="function"?ref(node):ref&&(ref.current=node);},[ref]);return useOverflowMotion(viewportRef,contentRef,scrolling,children,overflowMotion==="hover-scroll-always"),React8.createElement(as,{...componentAttributes,...textProps,ref:setRef,"data-monkeys-component":"text","data-slot":"root","data-size":size2,"data-tone":tone,className:cn(theme.slots.textRoot,getBaseTextSizeClassName(theme,size2),getBaseTypographyToneClassName(theme,tone),classNames?.root,className),style:{...theme.styles.text,...scrolling?{display:"block",minWidth:0,overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}:{},...style}},scrolling?React8.createElement("span",{ref:contentRef,style:{display:"inline-block",whiteSpace:"nowrap"}},children):children)});function BaseToolbar({leading,title,description,actions,children,appearance:appearance2,className,classNames,style,...toolbarProps}){let theme=resolveBaseAppearance(appearance2),hasTitleBlock=hasRenderableNode(title)||hasRenderableNode(description);return jsxRuntime.jsxs("div",{...toolbarProps,className:cn(theme.slots.toolbarRoot,classNames?.root,className),style:{...theme.styles.toolbar,...style},children:[jsxRuntime.jsxs("div",{className:cn(theme.slots.toolbarLeading,classNames?.leading),children:[hasRenderableNode(leading)?leading:null,hasTitleBlock?jsxRuntime.jsxs("div",{className:cn(theme.slots.toolbarContent,classNames?.content),children:[hasRenderableNode(title)?jsxRuntime.jsx("div",{className:cn(theme.slots.toolbarTitle,classNames?.title),children:title}):null,hasRenderableNode(description)?jsxRuntime.jsx("div",{className:cn(theme.slots.toolbarDescription,classNames?.description),children:description}):null]}):null]}),hasRenderableNode(children)?jsxRuntime.jsx("div",{className:cn(theme.slots.toolbarContent,classNames?.content),children}):null,hasRenderableNode(actions)?jsxRuntime.jsx("div",{className:cn(theme.slots.toolbarActions,classNames?.actions),children:actions}):null]})}var catalogPromise;function loadCatalog(){return catalogPromise??(catalogPromise=import('@inf-monkeys-tech/monkeys-design/icons/catalog').catch(error=>{throw catalogPromise=void 0,error}))}async function loadIconRecords(){return (await loadCatalog()).records}async function resolveAssetIconNodes(name){let normalized=name.trim().replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/_/g,"-").replace(/\s+/g,"-").toLowerCase();return (await loadIconRecords())[normalized]?.svg}var defaultIconPickerCatalogSource={async load(signal){signal.throwIfAborted();let{records,labels}=await loadCatalog();signal.throwIfAborted();let ids2=["all","custom-upload",...new Set(Object.values(records).flatMap(record=>record.metadata?.categories??[]))];return {icons:Object.entries(records).map(([id9,record])=>({id:id9,icon:{kind:"lucide",name:id9},categoryIds:record.metadata?.categories??[],tags:record.metadata?.tags??[]})),categories:ids2.map(id9=>({id:id9,labelI18n:{defaultLocale:"en-US",values:{"en-US":labels.en[id9]??id9,"zh-CN":labels.zh[id9]??id9}}}))}}};var BASE_ASSET_ICON_DESCRIPTOR_SCHEMA={oneOf:[{type:"object",additionalProperties:false,required:["kind","src"],properties:{kind:{const:"image"},src:{type:"string",minLength:1,maxLength:4096}}},{type:"object",additionalProperties:false,required:["kind","value"],properties:{kind:{const:"emoji"},value:{type:"string",minLength:1,maxLength:64},backgroundColor:{type:"string",maxLength:128}}},{type:"object",additionalProperties:false,required:["kind","name"],properties:{kind:{const:"lucide"},name:{type:"string",minLength:1,maxLength:128}}}]},attributesByTag={path:["d"],circle:["cx","cy","r"],rect:["x","y","width","height","rx","ry"],polyline:["points"],line:["x1","x2","y1","y2"],ellipse:["cx","cy","rx","ry"],polygon:["points"]};function parseAssetIconNodes(value){if(!Array.isArray(value)||!value.length||value.length>256)return;let result=[];for(let node of value){if(!Array.isArray(node)||node.length!==2||typeof node[0]!="string"||!Object.prototype.hasOwnProperty.call(attributesByTag,node[0]))return;let tag=node[0],raw=node[1];if(!raw||typeof raw!="object"||Array.isArray(raw)||Object.getPrototypeOf(raw)!==Object.prototype)return;let attributes={};for(let[key3,descriptor]of Object.entries(Object.getOwnPropertyDescriptors(raw))){if(!("value"in descriptor)||typeof descriptor.value!="string")return;let text10=descriptor.value;if(key3==="key"){if(text10.length>256)return}else if(key3==="fill"){if(text10!=="currentColor"&&text10!=="none")return}else if(attributesByTag[tag].includes(key3)){if(key3==="d"){if(!text10.length||text10.length>8192||!/^[MmZzLlHhVvCcSsQqTtAa0-9eE+.,\s-]+$/.test(text10))return}else if(key3==="points"){if(!text10.length||text10.length>8192||!/^[0-9eE+.,\s-]+$/.test(text10))return}else if(!text10.trim()||text10.length>128||!Number.isFinite(Number(text10)))return}else return;attributes[key3]=text10;}result.push([tag,attributes]);}return result}var BaseAssetIcon=React8.forwardRef(function({icon,alt,normalizeImageIcon=false,className,style,...props},ref){let attributes=useMonkeysComponentAttributes(),resolver=useMonkeysAssetIconResolver()??resolveAssetIconNodes,imageResolver=useMonkeysAssetImageResolver(),imageReference=icon.kind==="image"?icon.src:void 0,[image,setImage]=React8.useState();React8.useEffect(()=>{if(!imageReference||!imageResolver)return;let controller=new AbortController;return Promise.resolve().then(()=>imageResolver(imageReference,controller.signal)).then(src=>{controller.signal.aborted||setImage({reference:imageReference,resolver:imageResolver,src:safeDisplayUrl(src,"media")});}).catch(()=>{controller.signal.aborted||setImage({reference:imageReference,resolver:imageResolver});}),()=>controller.abort()},[imageReference,imageResolver]);let imageSource=imageResolver?image&&image.reference===imageReference&&image.resolver===imageResolver?image.src:void 0:safeDisplayUrl(imageReference,"media"),name=icon.kind==="lucide"?icon.name:void 0,[loaded,setLoaded]=React8.useState();React8.useEffect(()=>{let active=true;return name&&resolver&&Promise.resolve().then(()=>resolver(name)).then(value=>{active&&setLoaded({name,resolver,nodes:parseAssetIconNodes(value)});}).catch(()=>{active&&setLoaded({name,resolver,nodes:void 0});}),()=>{active=false;}},[name,resolver]);let nodes=loaded?.name===name&&loaded?.resolver===resolver?loaded?.nodes:void 0;return jsxRuntime.jsx("div",{...attributes,...props,ref,role:"img","aria-label":alt,className:cn("monkeys-asset-icon flex h-11 w-11 shrink-0 items-center justify-center rounded-xl text-muted-foreground",icon.kind==="emoji"?"text-2xl":icon.kind==="image"&&!normalizeImageIcon?"overflow-hidden border":"bg-muted",className),style:{...icon.kind==="emoji"&&icon.backgroundColor?{backgroundColor:icon.backgroundColor}:{},...style},children:icon.kind==="image"?imageSource?jsxRuntime.jsx("img",{src:imageSource,alt:"","aria-hidden":"true",loading:"lazy",className:normalizeImageIcon?"h-5 w-5 object-contain":"h-full w-full object-cover"}):jsxRuntime.jsx(lucideReact.Wrench,{"aria-hidden":"true",className:"h-5 w-5 max-h-full max-w-full"}):icon.kind==="emoji"?jsxRuntime.jsx("span",{"aria-hidden":"true",children:icon.value}):nodes?jsxRuntime.jsx("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",className:"h-5 w-5 max-h-full max-w-full",children:nodes.map(([tag,attributes2],index)=>{let{key:key3,...props2}=attributes2;return React8.createElement(tag,{...props2,key:key3??index})})}):jsxRuntime.jsx(lucideReact.Wrench,{"aria-hidden":"true",className:"h-5 w-5 max-h-full max-w-full"})})});var DESIGN_CAPABILITY_I18N_KEYS=Object.freeze({numericSeries:Object.freeze({inspect:"monkeys.design.capability.numericSeries.inspect",noPoints:"monkeys.design.capability.numericSeries.noPoints",point:"monkeys.design.capability.numericSeries.point",label:"monkeys.design.capability.numericSeries.label",description:"monkeys.design.capability.numericSeries.description",start:"monkeys.design.capability.numericSeries.start",end:"monkeys.design.capability.numericSeries.end",reset:"monkeys.design.capability.numericSeries.reset",expand:"monkeys.design.capability.numericSeries.expand",close:"monkeys.design.capability.numericSeries.close"}),catalog:Object.freeze({shellLayout:Object.freeze({label:"monkeys.design.catalog.shellLayout.label",description:"monkeys.design.catalog.shellLayout.description"}),sidebarFilter:Object.freeze({label:"monkeys.design.catalog.sidebarFilter.label",description:"monkeys.design.catalog.sidebarFilter.description"}),ontologyNavigator:Object.freeze({label:"monkeys.design.catalog.ontologyNavigator.label",description:"monkeys.design.catalog.ontologyNavigator.description"}),dataToolbar:Object.freeze({label:"monkeys.design.catalog.dataToolbar.label",description:"monkeys.design.catalog.dataToolbar.description"}),ontologyTable:Object.freeze({label:"monkeys.design.catalog.ontologyTable.label",description:"monkeys.design.catalog.ontologyTable.description"}),cardGrid:Object.freeze({label:"monkeys.design.catalog.cardGrid.label",description:"monkeys.design.catalog.cardGrid.description"}),pagination:Object.freeze({label:"monkeys.design.catalog.pagination.label",description:"monkeys.design.catalog.pagination.description"}),recordDetail:Object.freeze({label:"monkeys.design.catalog.recordDetail.label",description:"monkeys.design.catalog.recordDetail.description"}),recordEditor:Object.freeze({label:"monkeys.design.catalog.recordEditor.label",description:"monkeys.design.catalog.recordEditor.description"}),recordHistory:Object.freeze({label:"monkeys.design.catalog.recordHistory.label",description:"monkeys.design.catalog.recordHistory.description"}),ontologyManagement:Object.freeze({label:"monkeys.design.catalog.ontologyManagement.label",description:"monkeys.design.catalog.ontologyManagement.description"}),featureColumnManager:Object.freeze({label:"monkeys.design.catalog.featureColumnManager.label",description:"monkeys.design.catalog.featureColumnManager.description"}),ontologyTrendMatrix:Object.freeze({label:"monkeys.design.catalog.ontologyTrendMatrix.label",description:"monkeys.design.catalog.ontologyTrendMatrix.description"}),dataContextBar:Object.freeze({label:"monkeys.design.catalog.dataContextBar.label",description:"monkeys.design.catalog.dataContextBar.description"}),gallery:Object.freeze({label:"monkeys.design.catalog.gallery.label",description:"monkeys.design.catalog.gallery.description"}),sectionHeader:Object.freeze({label:"monkeys.design.catalog.sectionHeader.label",description:"monkeys.design.catalog.sectionHeader.description"}),notice:Object.freeze({label:"monkeys.design.catalog.notice.label",description:"monkeys.design.catalog.notice.description"}),descriptionList:Object.freeze({label:"monkeys.design.catalog.descriptionList.label",description:"monkeys.design.catalog.descriptionList.description"}),contentPanel:Object.freeze({label:"monkeys.design.catalog.contentPanel.label",description:"monkeys.design.catalog.contentPanel.description"}),toolbar:Object.freeze({label:"monkeys.design.catalog.toolbar.label",description:"monkeys.design.catalog.toolbar.description"}),status:Object.freeze({label:"monkeys.design.catalog.status.label",description:"monkeys.design.catalog.status.description"}),viewLeaf:Object.freeze({label:"monkeys.design.catalog.viewLeaf.label",description:"monkeys.design.catalog.viewLeaf.description"})}),status:Object.freeze({loading:Object.freeze({title:"monkeys.design.capability.status.loading.title",description:"monkeys.design.capability.status.loading.description"}),empty:Object.freeze({title:"monkeys.design.capability.status.empty.title",description:"monkeys.design.capability.status.empty.description"}),error:Object.freeze({title:"monkeys.design.capability.status.error.title",description:"monkeys.design.capability.status.error.description"}),forbidden:Object.freeze({title:"monkeys.design.capability.status.forbidden.title",description:"monkeys.design.capability.status.forbidden.description"}),retry:"monkeys.design.capability.status.retry.label"}),shellLayout:Object.freeze({resizeSidebar:"monkeys.design.capability.shellLayout.resizeSidebar",collapseSidebar:"monkeys.design.capability.shellLayout.collapseSidebar",expandSidebar:"monkeys.design.capability.shellLayout.expandSidebar",resizeAside:"monkeys.design.capability.shellLayout.resizeAside"}),sidebarFilter:Object.freeze({title:"monkeys.design.capability.sidebarFilter.title",searchLabel:"monkeys.design.capability.sidebarFilter.search.label",searchPlaceholder:"monkeys.design.capability.sidebarFilter.search.placeholder",groupLabel:"monkeys.design.capability.sidebarFilter.group.label",optionLabel:"monkeys.design.capability.sidebarFilter.option.label"}),gallery:Object.freeze({itemTitle:"monkeys.design.capability.gallery.item.title",itemActivate:"monkeys.design.capability.gallery.item.activate",loadMore:"monkeys.design.capability.gallery.pagination.loadMore",loadingMore:"monkeys.design.capability.gallery.pagination.loadingMore"}),ontologyNavigator:Object.freeze({empty:"monkeys.design.capability.ontologyNavigator.empty",moreActions:"monkeys.design.capability.ontologyNavigator.moreActions",searchLabel:"monkeys.design.capability.ontologyNavigator.search.label",searchPlaceholder:"monkeys.design.capability.ontologyNavigator.search.placeholder",loadMore:"monkeys.design.capability.ontologyNavigator.loadMore",loadingMore:"monkeys.design.capability.ontologyNavigator.loadingMore"}),dataToolbar:Object.freeze({addRow:"monkeys.design.capability.dataToolbar.addRow",blankRowName:"monkeys.design.capability.dataToolbar.blankRowName",searchPlaceholder:"monkeys.design.capability.dataToolbar.search.placeholder",selection:"monkeys.design.capability.dataToolbar.selection",gallerySettings:"monkeys.design.capability.dataToolbar.gallerySettings",galleryPresentation:{visibleColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.visibleColumns",coverField:"monkeys.design.capability.dataToolbar.galleryPresentation.coverField",autoDetect:"monkeys.design.capability.dataToolbar.galleryPresentation.autoDetect",cardDensity:"monkeys.design.capability.dataToolbar.galleryPresentation.cardDensity",cardColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.cardColumns",detailColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.detailColumns",fieldVisibility:"monkeys.design.capability.dataToolbar.galleryPresentation.fieldVisibility",fieldLimit:"monkeys.design.capability.dataToolbar.galleryPresentation.fieldLimit",fieldLimitHint:"monkeys.design.capability.dataToolbar.galleryPresentation.fieldLimitHint",layout:"monkeys.design.capability.dataToolbar.galleryPresentation.layout",compact:"monkeys.design.capability.dataToolbar.galleryPresentation.compact",comfortable:"monkeys.design.capability.dataToolbar.galleryPresentation.comfortable",detailed:"monkeys.design.capability.dataToolbar.galleryPresentation.detailed",autoColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.autoColumns",columns:"monkeys.design.capability.dataToolbar.galleryPresentation.columns",bentoColumns:"monkeys.design.capability.dataToolbar.galleryPresentation.bentoColumns",topLimit:"monkeys.design.capability.dataToolbar.galleryPresentation.topLimit",allFields:"monkeys.design.capability.dataToolbar.galleryPresentation.allFields",adaptiveGrid:"monkeys.design.capability.dataToolbar.galleryPresentation.adaptiveGrid",masonry:"monkeys.design.capability.dataToolbar.galleryPresentation.masonry",rail:"monkeys.design.capability.dataToolbar.galleryPresentation.rail"}}),ontologyTable:Object.freeze({label:"monkeys.design.capability.ontologyTable.label",empty:"monkeys.design.capability.ontologyTable.empty",activate:"monkeys.design.capability.ontologyTable.activate",select:"monkeys.design.capability.ontologyTable.select",sort:"monkeys.design.capability.ontologyTable.sort",loadMore:"monkeys.design.capability.ontologyTable.loadMore",loadingMore:"monkeys.design.capability.ontologyTable.loadingMore"}),cardGrid:Object.freeze({empty:"monkeys.design.capability.cardGrid.empty",activate:"monkeys.design.capability.cardGrid.activate",select:"monkeys.design.capability.cardGrid.select",loadMore:"monkeys.design.capability.cardGrid.loadMore",loadingMore:"monkeys.design.capability.cardGrid.loadingMore"}),pagination:Object.freeze({label:"monkeys.design.capability.pagination.label",loadMore:"monkeys.design.capability.pagination.loadMore",loadingMore:"monkeys.design.capability.pagination.loadingMore"}),recordDetail:Object.freeze({edit:"monkeys.design.capability.recordDetail.edit",close:"monkeys.design.capability.recordDetail.close",attachments:"monkeys.design.capability.recordDetail.attachments",previous:"monkeys.design.capability.recordDetail.previous",next:"monkeys.design.capability.recordDetail.next"}),recordEditor:Object.freeze({submit:"monkeys.design.capability.recordEditor.submit",cancel:"monkeys.design.capability.recordEditor.cancel",mapping:Object.freeze({targets:"monkeys.design.capability.recordEditor.mapping.targets",sources:"monkeys.design.capability.recordEditor.mapping.sources",actions:"monkeys.design.capability.recordEditor.mapping.actions",addTarget:"monkeys.design.capability.recordEditor.mapping.addTarget",removeTarget:"monkeys.design.capability.recordEditor.mapping.removeTarget",addSource:"monkeys.design.capability.recordEditor.mapping.addSource",removeSource:"monkeys.design.capability.recordEditor.mapping.removeSource",search:"monkeys.design.capability.recordEditor.mapping.search",emptyTargets:"monkeys.design.capability.recordEditor.mapping.emptyTargets",emptySources:"monkeys.design.capability.recordEditor.mapping.emptySources"}),optionsEmpty:"monkeys.design.capability.recordEditor.options.empty",optionsLoadMore:"monkeys.design.capability.recordEditor.options.loadMore",optionsLoadingMore:"monkeys.design.capability.recordEditor.options.loadingMore",jsonInvalid:"monkeys.design.capability.recordEditor.json.invalid"}),recordHistory:Object.freeze({title:"monkeys.design.capability.recordHistory.title",close:"monkeys.design.capability.recordHistory.close",commits:"monkeys.design.capability.recordHistory.commits",loadMore:"monkeys.design.capability.recordHistory.loadMore",loadingMore:"monkeys.design.capability.recordHistory.loadingMore",selected:"monkeys.design.capability.recordHistory.selected",diff:"monkeys.design.capability.recordHistory.diff",field:"monkeys.design.capability.recordHistory.diff.field",before:"monkeys.design.capability.recordHistory.diff.before",after:"monkeys.design.capability.recordHistory.diff.after",noDiff:"monkeys.design.capability.recordHistory.diff.empty",reason:"monkeys.design.capability.recordHistory.reason",reasonDescription:"monkeys.design.capability.recordHistory.reason.description",rollback:"monkeys.design.capability.recordHistory.rollback",delete:"monkeys.design.capability.recordHistory.delete"}),ontologyManagement:Object.freeze({title:"monkeys.design.capability.ontologyManagement.title",markerDescription:"monkeys.design.capability.ontologyManagement.markerDescription",create:"monkeys.design.capability.ontologyManagement.create",edit:"monkeys.design.capability.ontologyManagement.edit",delete:"monkeys.design.capability.ontologyManagement.delete",import:"monkeys.design.capability.ontologyManagement.import",description:"monkeys.design.capability.ontologyManagement.description",submit:"monkeys.design.capability.ontologyManagement.submit",cancel:"monkeys.design.capability.ontologyManagement.cancel",displayName:"monkeys.design.capability.ontologyManagement.field.displayName",label:"monkeys.design.capability.ontologyManagement.field.label",templateKey:"monkeys.design.capability.ontologyManagement.field.templateKey",templateName:"monkeys.design.capability.ontologyManagement.field.templateName",templateDescription:"monkeys.design.capability.ontologyManagement.field.templateDescription",templateTags:"monkeys.design.capability.ontologyManagement.field.templateTags",templateTagsDescription:"monkeys.design.capability.ontologyManagement.field.templateTagsDescription",creatorCurrentUser:"monkeys.design.capability.ontologyManagement.field.creatorCurrentUser",creatorCurrentUserShort:"monkeys.design.capability.ontologyManagement.field.creatorCurrentUserShort",defaultViewTemplatesDescription:"monkeys.design.capability.ontologyManagement.field.defaultViewTemplatesDescription",defaultViewTemplate:"monkeys.design.capability.ontologyManagement.field.defaultViewTemplate",defaultSelectedView:"monkeys.design.capability.ontologyManagement.field.defaultSelectedView",tagFilterEnabled:"monkeys.design.capability.ontologyManagement.field.tagFilterEnabled",tagFilterEmpty:"monkeys.design.capability.ontologyManagement.field.tagFilterEmpty",tableColumnsSummary:"monkeys.design.capability.ontologyManagement.field.tableColumnsSummary",editTemplateDetails:"monkeys.design.capability.ontologyManagement.field.editTemplateDetails",editTemplateDetailsDescription:"monkeys.design.capability.ontologyManagement.field.editTemplateDetailsDescription",filterInclude:"monkeys.design.capability.ontologyManagement.filter.include",filterAny:"monkeys.design.capability.ontologyManagement.filter.any",filterExclude:"monkeys.design.capability.ontologyManagement.filter.exclude",filterNoTags:"monkeys.design.capability.ontologyManagement.filter.noTags",filterSearch:"monkeys.design.capability.ontologyManagement.filter.search",filterTagGroup:"monkeys.design.capability.ontologyManagement.filter.tagGroup",filterAllGroups:"monkeys.design.capability.ontologyManagement.filter.allGroups",filterAddOrGroup:"monkeys.design.capability.ontologyManagement.filter.addOrGroup",filterNoOrGroups:"monkeys.design.capability.ontologyManagement.filter.noOrGroups",filterOrGroup:"monkeys.design.capability.ontologyManagement.filter.orGroup",filterDeleteGroup:"monkeys.design.capability.ontologyManagement.filter.deleteGroup",filterSupplement:"monkeys.design.capability.ontologyManagement.filter.supplement",filterConfigureSupplement:"monkeys.design.capability.ontologyManagement.filter.configureSupplement",filterClearSupplement:"monkeys.design.capability.ontologyManagement.filter.clearSupplement",filterSupplementMode:"monkeys.design.capability.ontologyManagement.filter.supplementMode",filterModeOr:"monkeys.design.capability.ontologyManagement.filter.modeOr",filterModeAnd:"monkeys.design.capability.ontologyManagement.filter.modeAnd",filterModeCombination:"monkeys.design.capability.ontologyManagement.filter.modeCombination",filterRequiredAll:"monkeys.design.capability.ontologyManagement.filter.requiredAll",filterRequiredAny:"monkeys.design.capability.ontologyManagement.filter.requiredAny",filterAdvancedRules:"monkeys.design.capability.ontologyManagement.filter.advancedRules",filterAdvancedRulesDescription:"monkeys.design.capability.ontologyManagement.filter.advancedRulesDescription",filterRemoveAdvancedRules:"monkeys.design.capability.ontologyManagement.filter.removeAdvancedRules",defaultViewTemplates:"monkeys.design.capability.ontologyManagement.field.defaultViewTemplates",markerExists:"monkeys.design.capability.ontologyManagement.field.markerExists",targetOntology:"monkeys.design.capability.ontologyManagement.field.targetOntology",deleteTemplate:"monkeys.design.capability.ontologyManagement.action.deleteTemplate",deleteMarker:"monkeys.design.capability.ontologyManagement.action.deleteMarker",createDefaultViews:"monkeys.design.capability.ontologyManagement.action.createDefaultViews",techpackPreset:"monkeys.design.capability.ontologyManagement.action.techpackPreset",trendPreset:"monkeys.design.capability.ontologyManagement.action.trendPreset",addTemplate:"monkeys.design.capability.ontologyManagement.action.addTemplate",noTemplates:"monkeys.design.capability.ontologyManagement.empty.noTemplates",descriptionField:"monkeys.design.capability.ontologyManagement.field.description",bodyKind:"monkeys.design.capability.ontologyManagement.field.bodyKind",visible:"monkeys.design.capability.ontologyManagement.field.visible",kernelReadAllTeams:"monkeys.design.capability.ontologyManagement.field.kernelReadAllTeams",publicRead:"monkeys.design.capability.ontologyManagement.field.publicRead",publicWrite:"monkeys.design.capability.ontologyManagement.field.publicWrite",customizeViewModes:"monkeys.design.capability.ontologyManagement.field.customizeViewModes",availableViewModes:"monkeys.design.capability.ontologyManagement.field.availableViewModes",defaultViewMode:"monkeys.design.capability.ontologyManagement.field.defaultViewMode",viewModeTable:"monkeys.design.capability.ontologyManagement.field.viewMode.table",viewModeCard:"monkeys.design.capability.ontologyManagement.field.viewMode.card",viewModeGallery:"monkeys.design.capability.ontologyManagement.field.viewMode.gallery",viewModeTrendMatrix:"monkeys.design.capability.ontologyManagement.field.viewMode.trendMatrix",selectAtLeastOneViewMode:"monkeys.design.capability.ontologyManagement.field.validation.selectAtLeastOneViewMode",profile:"monkeys.design.capability.ontologyManagement.field.profile",sourceOntologyId:"monkeys.design.capability.ontologyManagement.field.sourceOntologyId",viewId:"monkeys.design.capability.ontologyManagement.field.viewId",name:"monkeys.design.capability.ontologyManagement.field.name",targetTeamId:"monkeys.design.capability.ontologyManagement.field.targetTeamId",currentTeamId:"monkeys.design.capability.ontologyManagement.field.currentTeamId",count:"monkeys.design.capability.ontologyManagement.field.count",blankRowLabel:"monkeys.design.capability.ontologyManagement.field.blankRowLabel",indexMode:"monkeys.design.capability.ontologyManagement.field.indexMode",parentId:"monkeys.design.capability.ontologyManagement.field.parentId",viewType:"monkeys.design.capability.ontologyManagement.field.viewType.label",viewTypeFilter:"monkeys.design.capability.ontologyManagement.field.viewType.filter",viewTypeContainer:"monkeys.design.capability.ontologyManagement.field.viewType.container",sourceContainerViewId:"monkeys.design.capability.ontologyManagement.field.sourceContainerViewId",displayConfig:"monkeys.design.capability.ontologyManagement.field.displayConfig",sort:"monkeys.design.capability.ontologyManagement.field.sort",managedFileId:"monkeys.design.capability.ontologyManagement.field.managedFileId",mode:"monkeys.design.capability.ontologyManagement.field.mode",columnId:"monkeys.design.capability.ontologyManagement.field.columnId",containerViewId:"monkeys.design.capability.ontologyManagement.field.containerViewId",type:"monkeys.design.capability.ontologyManagement.field.type",config:"monkeys.design.capability.ontologyManagement.field.config",scopeContainerViewId:"monkeys.design.capability.ontologyManagement.field.scopeContainerViewId",attached:"monkeys.design.capability.ontologyManagement.field.attached.label",attachedTrue:"monkeys.design.capability.ontologyManagement.field.attached.true",attachedFalse:"monkeys.design.capability.ontologyManagement.field.attached.false",pageSize:"monkeys.design.capability.ontologyManagement.field.pageSize",tagGroupIds:"monkeys.design.capability.ontologyManagement.field.tagGroupIds",featureColumnIds:"monkeys.design.capability.ontologyManagement.field.featureColumnIds",basicFieldIds:"monkeys.design.capability.ontologyManagement.field.basicFieldIds",columnType:"monkeys.design.capability.ontologyManagement.field.columnType.label",columnTypeFeature:"monkeys.design.capability.ontologyManagement.field.columnType.feature",columnTypePreview:"monkeys.design.capability.ontologyManagement.field.columnType.preview",featureColumnId:"monkeys.design.capability.ontologyManagement.field.featureColumnId",itemLimit:"monkeys.design.capability.ontologyManagement.field.itemLimit",shareOperation:"monkeys.design.capability.ontologyManagement.field.shareOperation.label",shareOperationUpsert:"monkeys.design.capability.ontologyManagement.field.shareOperation.upsert",shareOperationRevoke:"monkeys.design.capability.ontologyManagement.field.shareOperation.revoke",targetType:"monkeys.design.capability.ontologyManagement.field.targetType.label",targetTypeUser:"monkeys.design.capability.ontologyManagement.field.targetType.user",targetTypeTeam:"monkeys.design.capability.ontologyManagement.field.targetType.team",targetId:"monkeys.design.capability.ontologyManagement.field.targetId",permissions:"monkeys.design.capability.ontologyManagement.field.permissions",expiresAt:"monkeys.design.capability.ontologyManagement.field.expiresAt",actions:Object.freeze({"ontology-create":"monkeys.design.capability.ontologyManagement.action.ontologyCreate","ontology-update":"monkeys.design.capability.ontologyManagement.action.ontologyUpdate","ontology-delete":"monkeys.design.capability.ontologyManagement.action.ontologyDelete","ontology-marker":"monkeys.design.capability.ontologyManagement.action.ontologyMarker","ontology-default-views":"monkeys.design.capability.ontologyManagement.action.ontologyDefaultViews","ontology-snapshot":"monkeys.design.capability.ontologyManagement.action.ontologySnapshot","ontology-import-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportJsonl","ontology-import-records-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportRecordsJsonl","ontology-import-tag-relations-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportTagRelationsJsonl","ontology-import-text-column-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportTextColumnJsonl","ontology-import-json-column-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportJsonColumnJsonl","ontology-import-relation-column-jsonl":"monkeys.design.capability.ontologyManagement.action.ontologyImportRelationColumnJsonl","feature-column-create":"monkeys.design.capability.ontologyManagement.action.featureColumnCreate","feature-column-update":"monkeys.design.capability.ontologyManagement.action.featureColumnUpdate","feature-column-attachment-set":"monkeys.design.capability.ontologyManagement.action.featureColumnAttachmentSet","view-export-jsonl":"monkeys.design.capability.ontologyManagement.action.viewExportJsonl","feature-column-images-export":"monkeys.design.capability.ontologyManagement.action.featureColumnImagesExport","view-create":"monkeys.design.capability.ontologyManagement.action.viewCreate","view-detail":"monkeys.design.capability.ontologyManagement.action.viewDetail","view-convert-to-container":"monkeys.design.capability.ontologyManagement.action.viewConvertToContainer","view-edit-team":"monkeys.design.capability.ontologyManagement.action.viewEditTeam","view-insert-blank-rows":"monkeys.design.capability.ontologyManagement.action.viewInsertBlankRows","view-snapshot":"monkeys.design.capability.ontologyManagement.action.viewSnapshot","view-update":"monkeys.design.capability.ontologyManagement.action.viewUpdate","view-delete":"monkeys.design.capability.ontologyManagement.action.viewDelete","view-share":"monkeys.design.capability.ontologyManagement.action.viewShare"})}),ontologyTrendMatrix:Object.freeze({label:"monkeys.design.capability.ontologyTrendMatrix.label",row:"monkeys.design.capability.ontologyTrendMatrix.row",window:"monkeys.design.capability.ontologyTrendMatrix.window",select:"monkeys.design.capability.ontologyTrendMatrix.select"}),dataContextBar:Object.freeze({label:"monkeys.design.capability.dataContextBar.label",filter:"monkeys.design.capability.dataContextBar.filter",searchLabel:"monkeys.design.capability.dataContextBar.search.label",searchPlaceholder:"monkeys.design.capability.dataContextBar.search.placeholder",clear:"monkeys.design.capability.dataContextBar.clear",clearAll:"monkeys.design.capability.dataContextBar.clearAll",tagFilterClear:"monkeys.design.capability.dataContextBar.tagFilterClear",filterDescription:"monkeys.design.capability.dataContextBar.filterDescription",tagScope:"monkeys.design.capability.dataContextBar.tagScope",currentViewTags:"monkeys.design.capability.dataContextBar.currentViewTags",allTags:"monkeys.design.capability.dataContextBar.allTags",panelFilter:"monkeys.design.capability.dataContextBar.panelFilter",searchTags:"monkeys.design.capability.dataContextBar.searchTags",noAvailableTags:"monkeys.design.capability.dataContextBar.noAvailableTags",loadedAll:"monkeys.design.capability.dataContextBar.loadedAll",refreshTags:"monkeys.design.capability.dataContextBar.refreshTags",confirm:"monkeys.design.capability.dataContextBar.confirm",tagPanel:"monkeys.design.capability.dataContextBar.tagPanel",selectPanel:"monkeys.design.capability.dataContextBar.selectPanel",noPanels:"monkeys.design.capability.dataContextBar.noPanels",noPanelGroups:"monkeys.design.capability.dataContextBar.noPanelGroups",singleSelect:"monkeys.design.capability.dataContextBar.singleSelect",multiSelect:"monkeys.design.capability.dataContextBar.multiSelect",defaultGroup:"monkeys.design.capability.dataContextBar.defaultGroup",more:"monkeys.design.capability.dataContextBar.more",dashboardContext:"monkeys.design.capability.dataContextBar.dashboardContext",contextCount:"monkeys.design.capability.dataContextBar.contextCount",fields:Object.freeze({search:"monkeys.design.capability.dataContextBar.field.search",tagIds:"monkeys.design.capability.dataContextBar.field.tagIds",tagGroupIds:"monkeys.design.capability.dataContextBar.field.tagGroupIds",timeFrom:"monkeys.design.capability.dataContextBar.field.timeFrom",timeTo:"monkeys.design.capability.dataContextBar.field.timeTo",clickedField:"monkeys.design.capability.dataContextBar.field.clickedField",clickedValue:"monkeys.design.capability.dataContextBar.field.clickedValue",dashboardDrilldown:"monkeys.design.capability.dataContextBar.field.dashboardDrilldown"})})}),DESIGN_CAPABILITY_NATIVE_ANALYTICS_MESSAGES=Object.freeze({"en-US":Object.freeze({"monkeys.design.capability.agentConversation.label":"Agent conversation","monkeys.design.capability.agentConversation.description":"Persistent conversation through an authenticated Agent runtime.","monkeys.design.capability.reportDocument.label":"Report document","monkeys.design.capability.reportDocument.description":"Read a projected report with managed media.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.markerDescription]:"Configure the ontology marker and default views.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.label]:"Marker name",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.targetOntology]:"Target ontology",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateKey]:"Template key",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateName]:"View name",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateDescription]:"View description",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateTags]:"Tag filters",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateTagsDescription]:"Choose the tags included, matched, or excluded by this view.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.creatorCurrentUser]:"Only show records created by the current user",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.creatorCurrentUserShort]:"Current user",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplatesDescription]:"Configure default views and their filters for this ontology.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplate]:"Default view template",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultSelectedView]:"Open by default",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tagFilterEnabled]:"Tag filters configured",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tagFilterEmpty]:"No tag filters",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tableColumnsSummary]:"{count} table columns configured",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.editTemplateDetails]:"Edit view template",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.editTemplateDetailsDescription]:"Configure the name, order, and filters.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplates]:"Default view templates",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.markerExists]:"Ontology marker exists",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterInclude]:"Include all",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAny]:"Match any",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterExclude]:"Exclude",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterNoTags]:"No matching tags",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSearch]:"Search tags",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterTagGroup]:"Tag group",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAllGroups]:"All tag groups",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAddOrGroup]:"Add OR group",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterNoOrGroups]:"No OR groups",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterOrGroup]:"OR group {n}",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterDeleteGroup]:"Delete group",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSupplement]:"Supplement rules for {name}",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterConfigureSupplement]:"Configure supplement rules",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterClearSupplement]:"Clear supplement rules",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSupplementMode]:"Match mode",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeOr]:"Any condition (OR)",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeAnd]:"All conditions (AND)",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeCombination]:"Combined conditions",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRequiredAll]:"Require all tags",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRequiredAny]:"Require at least one tag",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAdvancedRules]:"{count} advanced rules",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAdvancedRulesDescription]:"Existing rules are preserved unless explicitly removed.",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRemoveAdvancedRules]:"Remove advanced rules",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.deleteTemplate]:"Delete template",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.deleteMarker]:"Delete marker",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.createDefaultViews]:"Create default views",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.addTemplate]:"Add view template",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.noTemplates]:"No default view templates",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["ontology-marker"]]:"Set ontology marker",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-detail"]]:"View details",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-convert-to-container"]]:"Convert to enhanced view",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-edit-team"]]:"Edit view team",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-insert-blank-rows"]]:"Insert blank rows",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-snapshot"]]:"Import to new Ontology",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.targetTeamId]:"Target team ID",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.currentTeamId]:"Current team ID",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.count]:"Row count",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.blankRowLabel]:"Blank row label","monkeys.design.capability.pagination.previous":"Previous page","monkeys.design.capability.pagination.next":"Next page","monkeys.design.iconPicker.confirm":"Confirm","monkeys.design.iconPicker.categories":"Categories","monkeys.design.iconPicker.icon":"Icon","monkeys.design.iconPicker.choose":"Choose an icon","monkeys.design.iconPicker.current":"Current icon","monkeys.design.iconPicker.reset":"Reset","monkeys.design.iconPicker.search":"Search icons","monkeys.design.iconPicker.category":"Category","monkeys.design.iconPicker.background":"Background color","monkeys.design.iconPicker.upload":"Upload icon","monkeys.design.iconPicker.uploadFailed":"Icon upload failed","monkeys.design.iconPicker.loading":"Loading icons","monkeys.design.iconPicker.retry":"Retry","monkeys.design.iconPicker.empty":"No matching icons","monkeys.design.iconPicker.close":"Close","monkeys.design.iconPicker.emoji":"Emoji","monkeys.design.iconPicker.catalogFailed":"Unable to load icons","monkeys.design.emojiPanel.loading":"Loading emoji","monkeys.design.emojiPanel.unavailable":"Unable to load emoji","monkeys.design.capability.choicePicker.label":"Choice picker","monkeys.design.capability.choicePicker.description":"Search and select a paginated collection.","monkeys.design.capability.runtimeTerminal.status":"Terminal","monkeys.design.capability.runtimeTerminal.waiting":"Connecting to terminal\u2026","monkeys.design.capability.recordEditor.add":"Add item","monkeys.design.capability.recordEditor.remove":"Remove item","monkeys.design.capability.recordEditor.moveUp":"Move up","monkeys.design.capability.recordEditor.moveDown":"Move down","monkeys.design.capability.recordEditor.reset":"Reset","monkeys.design.capability.imageUpload.sizeHint":"One image, up to {{size}} MB","monkeys.design.capability.imageUpload.title":"Click or drag an image here","monkeys.design.capability.imageUpload.hint":"Paste an image or image link","monkeys.design.capability.imageUpload.paste":"Paste from clipboard","monkeys.design.capability.imageUpload.replace":"Replace image","monkeys.design.capability.imageUpload.clipboardUnavailable":"Clipboard access is unavailable. Paste with your keyboard or choose a file.","monkeys.design.capability.imageUpload.clipboardEmpty":"No image or image link was found in the clipboard.","monkeys.design.capability.filePicker.label":"Choose file","monkeys.design.capability.mediaDraft.choose":"Add images","monkeys.design.capability.mediaDraft.hint":"Up to {count} images, {size} MB each. Uploaded when you save.","monkeys.design.capability.mediaDraft.replace":"Replace","monkeys.design.capability.mediaDraft.preview":"Preview image","monkeys.design.capability.mediaDraft.previewPrevious":"Previous image","monkeys.design.capability.mediaDraft.previewNext":"Next image","monkeys.design.capability.mediaDraft.count":"Too many images. Remove an image before adding more.","monkeys.design.capability.mediaDraft.type":"Choose image files.","monkeys.design.capability.mediaDraft.size":"An image is empty or exceeds the allowed size.","monkeys.design.capability.mediaDraft.failed":"Images could not be selected. Try again.","monkeys.design.capability.mediaDraft.unavailable":"Preview unavailable","monkeys.design.capability.mediaDraft.previous":"Move image earlier","monkeys.design.capability.mediaDraft.next":"Move image later","monkeys.design.capability.mediaDraft.remove":"Remove","monkeys.design.capability.filePicker.description":"Select a local file for a governed action.","monkeys.design.capability.filePicker.cancel":"Clear file","monkeys.design.capability.filePicker.tooLarge":"The file exceeds the allowed size.","monkeys.design.capability.filePicker.invalidType":"Choose a supported file type.","monkeys.design.capability.filePicker.registrationFailed":"The file could not be selected. Try again.","monkeys.design.capability.recordEditor.date.invalid":"Enter a valid date and time within the allowed range.","monkeys.design.capability.recordEditor.month.choose":"Choose year and month","monkeys.design.capability.recordEditor.month.previous":"Previous year or group of years","monkeys.design.capability.recordEditor.month.next":"Next year or group of years","monkeys.design.capability.recordEditor.month.clear":"Clear","monkeys.design.capability.recordEditor.clear":"Clear","monkeys.design.capability.recordEditor.notSet":"Not set","monkeys.design.capability.recordEditor.noOptions":"No matching options","monkeys.design.capability.recordEditor.pick":"Choose","monkeys.design.capability.recordEditor.selectionSummary":"Selected: {{count}}","monkeys.design.capability.recordEditor.sections":"Form sections","monkeys.design.capability.recordEditor.secretKeep":"Keep existing","monkeys.design.capability.recordEditor.treeReorderFailed":"Could not save the order. Reload the list and try again.","monkeys.design.capability.recordEditor.secretMode":"{field} update mode","monkeys.design.capability.recordEditor.secretReplace":"Replace","monkeys.design.capability.recordEditor.secretClear":"Clear","monkeys.design.capability.recordEditor.mapping.targets":"Targets","monkeys.design.capability.recordEditor.mapping.sources":"Sources","monkeys.design.capability.recordEditor.mapping.actions":"Mapping actions","monkeys.design.capability.recordEditor.mapping.addTarget":"Add target","monkeys.design.capability.recordEditor.mapping.removeTarget":"Remove target","monkeys.design.capability.recordEditor.mapping.addSource":"Add source","monkeys.design.capability.recordEditor.mapping.removeSource":"Remove source","monkeys.design.capability.recordEditor.mapping.search":"Search sources","monkeys.design.capability.recordEditor.mapping.emptyTargets":"No targets","monkeys.design.capability.recordEditor.mapping.emptySources":"No sources assigned","monkeys.design.capability.recordEditor.mapping.groupCount":"{count} grouped targets","monkeys.design.capability.recordEditor.mapping.memberCount":"({count})","monkeys.design.capability.recordEditor.mapping.newTarget":"Enter target name","monkeys.design.capability.recordEditor.mapping.rename":"Target name","monkeys.design.capability.recordEditor.mapping.unnamed":"Unnamed target","monkeys.design.capability.recordEditor.mapping.incomplete":"Enter a name and assign at least one source before saving.","monkeys.design.capability.recordEditor.mapping.deleteConfirmation":"Delete \u201C{name}\u201D?","monkeys.design.capability.recordEditor.mapping.confirmDelete":"Delete","monkeys.design.capability.recordEditor.mapping.cancel":"Cancel","monkeys.design.capability.recordEditor.mapping.selectTarget":"Select a target on the left first","monkeys.design.capability.recordEditor.mapping.sourceTabs":"Source list","monkeys.design.capability.recordEditor.mapping.assigned":"Included ({count})","monkeys.design.capability.recordEditor.mapping.available":"Available ({count})","monkeys.design.capability.recordEditor.mapping.selectVisible":"Select current list","monkeys.design.capability.recordEditor.mapping.selected":"{count} selected","monkeys.design.capability.recordEditor.mapping.noMatches":"No matches","monkeys.design.capability.recordEditor.mapping.noAvailable":"No available sources","monkeys.design.capability.recordEditor.mapping.customSource":"Add custom source","monkeys.design.capability.recordEditor.mapping.addCustom":"Add custom source","monkeys.design.capability.recordEditor.mapping.add":"Add","monkeys.design.capability.recordEditor.mapping.addHint":"Add selected sources to this target","monkeys.design.capability.recordEditor.mapping.removeHint":"Remove selected sources from this target","monkeys.design.capability.recordEditor.mapping.currentTarget":"Current target: {name}","monkeys.design.capability.recordEditor.mapping.invalid":"The mapping is invalid.","monkeys.design.capability.recordEditor.mapping.invalidName":"Enter a valid name.","monkeys.design.capability.recordEditor.mapping.alreadyAssigned":"This source belongs to another target.","monkeys.design.capability.recordEditor.mapping.unavailable":"This source is unavailable.","monkeys.design.capability.recordEditor.mapping.added":"Added {count} sources to \u201C{name}\u201D","monkeys.design.capability.recordEditor.mapping.removed":"Removed {count} sources from \u201C{name}\u201D","monkeys.design.capability.recordEditor.mapping.deleted":"Deleted \u201C{name}\u201D",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.inspect]:"Inspect observation","monkeys.design.capability.summaryChart.label":"Summary chart","monkeys.design.capability.dataToolbar.moreActions":"More actions","monkeys.design.capability.summaryChart.description":"Compare numeric series and category totals.",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.noPoints]:"No observations in this range",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.point]:"{xLabel} {x}, {yLabel} {y}",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.label]:"Numeric series",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.description]:"Inspect numeric observations with range zoom and expansion.",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.start]:"Range start",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.end]:"Range end",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.reset]:"Reset range",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.expand]:"Expand chart",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.close]:"Close chart",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.resizeSidebar]:"Resize sidebar",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.collapseSidebar]:"Collapse sidebar",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.expandSidebar]:"Expand sidebar",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.resizeAside]:"Resize detail panel",[DESIGN_CAPABILITY_I18N_KEYS.ontologyNavigator.moreActions]:"More actions",[DESIGN_CAPABILITY_I18N_KEYS.dataToolbar.addRow]:"Add row",[DESIGN_CAPABILITY_I18N_KEYS.dataToolbar.blankRowName]:"Blank Row",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.label]:"Ontology trend matrix",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.row]:"Row",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.window]:"Visible rows {start}-{end} of {total}",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.select]:"Select {row}, {column}, {value}",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.label]:"Data filters and drilldown context",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.filter]:"Filters",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchLabel]:"Search data",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchPlaceholder]:"Search",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.clear]:"Clear",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.clearAll]:"Clear all",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagFilterClear]:"Clear",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.filterDescription]:"Filter assets by selecting tags via tag panel or manual search.",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagScope]:"Tag scope",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.currentViewTags]:"Current view",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.allTags]:"All tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.panelFilter]:"Panel filter",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchTags]:"Search tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noAvailableTags]:"No available tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.loadedAll]:"All loaded",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.refreshTags]:"Refresh tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.confirm]:"Confirm",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagPanel]:"Tag panel",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.selectPanel]:"Select a panel",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noPanels]:"No available panels",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noPanelGroups]:"No tag groups in this panel",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.singleSelect]:"Single select",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.multiSelect]:"Multi select",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.defaultGroup]:"Default group",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.more]:"+{count} more",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.dashboardContext]:"Dashboard context",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.contextCount]:"{count} context values",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.search]:"Search",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.tagIds]:"Tags",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.tagGroupIds]:"Tag groups",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.timeFrom]:"From",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.timeTo]:"To",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.clickedField]:"Drilldown field",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.clickedValue]:"Drilldown value",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.dashboardDrilldown]:"Dashboard drilldown"}),"zh-CN":Object.freeze({"monkeys.design.capability.agentConversation.label":"\u667A\u80FD\u4F53\u5BF9\u8BDD","monkeys.design.capability.agentConversation.description":"\u901A\u8FC7\u5DF2\u8BA4\u8BC1\u667A\u80FD\u4F53\u8FD0\u884C\u65F6\u8FDB\u884C\u6301\u4E45\u5316\u5BF9\u8BDD\u3002","monkeys.design.capability.reportDocument.label":"\u62A5\u544A\u6587\u6863","monkeys.design.capability.reportDocument.description":"\u9605\u8BFB\u5305\u542B\u6258\u7BA1\u5A92\u4F53\u7684\u62A5\u544A\u6295\u5F71\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.markerDescription]:"\u914D\u7F6E\u4ED3\u5E93\u6807\u8BB0\u548C\u9ED8\u8BA4\u89C6\u56FE\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.label]:"\u6807\u8BB0\u540D\u79F0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.targetOntology]:"\u76EE\u6807\u4ED3\u5E93",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateKey]:"\u6A21\u677F\u6807\u8BC6",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateName]:"\u89C6\u56FE\u540D\u79F0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateDescription]:"\u89C6\u56FE\u63CF\u8FF0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateTags]:"\u6807\u7B7E\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.templateTagsDescription]:"\u8BBE\u7F6E\u8BE5\u89C6\u56FE\u5305\u542B\u3001\u5339\u914D\u6216\u6392\u9664\u7684\u6807\u7B7E\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.creatorCurrentUser]:"\u4EC5\u663E\u793A\u5F53\u524D\u7528\u6237\u521B\u5EFA\u7684\u6570\u636E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.creatorCurrentUserShort]:"\u5F53\u524D\u7528\u6237",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplatesDescription]:"\u4E3A\u4ED3\u5E93\u914D\u7F6E\u9ED8\u8BA4\u89C6\u56FE\u53CA\u5176\u7B5B\u9009\u6761\u4EF6\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplate]:"\u9ED8\u8BA4\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultSelectedView]:"\u9ED8\u8BA4\u6253\u5F00",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tagFilterEnabled]:"\u5DF2\u914D\u7F6E\u6807\u7B7E\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tagFilterEmpty]:"\u672A\u914D\u7F6E\u6807\u7B7E\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.tableColumnsSummary]:"\u5DF2\u914D\u7F6E {count} \u4E2A\u8868\u683C\u5217",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.editTemplateDetails]:"\u7F16\u8F91\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.editTemplateDetailsDescription]:"\u914D\u7F6E\u540D\u79F0\u3001\u6392\u5E8F\u548C\u7B5B\u9009\u6761\u4EF6\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.defaultViewTemplates]:"\u9ED8\u8BA4\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.markerExists]:"\u5DF2\u6709\u4ED3\u5E93\u6807\u8BB0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterInclude]:"\u5168\u90E8\u5305\u542B",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAny]:"\u5339\u914D\u4EFB\u610F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterExclude]:"\u6392\u9664",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterNoTags]:"\u6CA1\u6709\u5339\u914D\u7684\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSearch]:"\u641C\u7D22\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterTagGroup]:"\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAllGroups]:"\u5168\u90E8\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAddOrGroup]:"\u6DFB\u52A0\u6216\u6761\u4EF6\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterNoOrGroups]:"\u6682\u65E0\u6216\u6761\u4EF6\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterOrGroup]:"\u6216\u6761\u4EF6\u7EC4 {n}",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterDeleteGroup]:"\u5220\u9664\u6761\u4EF6\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSupplement]:"{name} \u7684\u8865\u5145\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterConfigureSupplement]:"\u914D\u7F6E\u8865\u5145\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterClearSupplement]:"\u6E05\u9664\u8865\u5145\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterSupplementMode]:"\u5339\u914D\u65B9\u5F0F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeOr]:"\u4EFB\u610F\u6761\u4EF6\uFF08OR\uFF09",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeAnd]:"\u5168\u90E8\u6761\u4EF6\uFF08AND\uFF09",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterModeCombination]:"\u7EC4\u5408\u6761\u4EF6",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRequiredAll]:"\u5FC5\u987B\u5305\u542B\u5168\u90E8\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRequiredAny]:"\u81F3\u5C11\u5305\u542B\u4E00\u4E2A\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAdvancedRules]:"{count} \u9879\u9AD8\u7EA7\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterAdvancedRulesDescription]:"\u5DF2\u6709\u89C4\u5219\u5C06\u4FDD\u7559\uFF0C\u9664\u975E\u660E\u786E\u79FB\u9664\u3002",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.filterRemoveAdvancedRules]:"\u79FB\u9664\u9AD8\u7EA7\u89C4\u5219",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.deleteTemplate]:"\u5220\u9664\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.deleteMarker]:"\u5220\u9664\u4ED3\u5E93\u6807\u8BB0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.createDefaultViews]:"\u521B\u5EFA\u9ED8\u8BA4\u89C6\u56FE",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.addTemplate]:"\u6DFB\u52A0\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.noTemplates]:"\u6682\u65E0\u9ED8\u8BA4\u89C6\u56FE\u6A21\u677F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["ontology-marker"]]:"\u8BBE\u7F6E\u4ED3\u5E93\u6807\u8BB0",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-detail"]]:"\u67E5\u770B\u8BE6\u60C5",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-convert-to-container"]]:"\u8F6C\u5316\u4E3A\u589E\u5F3A\u89C6\u56FE",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-edit-team"]]:"\u4FEE\u6539\u89C6\u56FE\u56E2\u961F",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-insert-blank-rows"]]:"\u63D2\u5165\u7A7A\u767D\u884C",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.actions["view-snapshot"]]:"\u5BFC\u5165\u5230\u65B0 Ontology",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.targetTeamId]:"\u76EE\u6807\u56E2\u961F ID",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.currentTeamId]:"\u5F53\u524D\u56E2\u961F ID",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.count]:"\u884C\u6570",[DESIGN_CAPABILITY_I18N_KEYS.ontologyManagement.blankRowLabel]:"\u7A7A\u767D\u884C\u540D\u79F0","monkeys.design.capability.pagination.previous":"\u4E0A\u4E00\u9875","monkeys.design.capability.pagination.next":"\u4E0B\u4E00\u9875","monkeys.design.iconPicker.confirm":"\u786E\u8BA4","monkeys.design.iconPicker.categories":"\u5206\u7C7B","monkeys.design.iconPicker.icon":"\u56FE\u6807","monkeys.design.iconPicker.choose":"\u9009\u62E9\u56FE\u6807","monkeys.design.iconPicker.current":"\u5F53\u524D\u56FE\u6807","monkeys.design.iconPicker.reset":"\u91CD\u7F6E","monkeys.design.iconPicker.search":"\u641C\u7D22\u56FE\u6807","monkeys.design.iconPicker.category":"\u5206\u7C7B","monkeys.design.iconPicker.background":"\u80CC\u666F\u989C\u8272","monkeys.design.iconPicker.upload":"\u4E0A\u4F20\u56FE\u6807","monkeys.design.iconPicker.uploadFailed":"\u56FE\u6807\u4E0A\u4F20\u5931\u8D25","monkeys.design.iconPicker.loading":"\u6B63\u5728\u52A0\u8F7D\u56FE\u6807","monkeys.design.iconPicker.retry":"\u91CD\u8BD5","monkeys.design.iconPicker.empty":"\u6CA1\u6709\u5339\u914D\u7684\u56FE\u6807","monkeys.design.iconPicker.close":"\u5173\u95ED","monkeys.design.iconPicker.emoji":"\u8868\u60C5","monkeys.design.iconPicker.catalogFailed":"\u65E0\u6CD5\u52A0\u8F7D\u56FE\u6807","monkeys.design.emojiPanel.loading":"\u6B63\u5728\u52A0\u8F7D\u8868\u60C5","monkeys.design.emojiPanel.unavailable":"\u65E0\u6CD5\u52A0\u8F7D\u8868\u60C5","monkeys.design.capability.choicePicker.label":"\u9009\u9879\u9009\u62E9\u5668","monkeys.design.capability.choicePicker.description":"\u641C\u7D22\u5E76\u9009\u62E9\u5206\u9875\u96C6\u5408\u4E2D\u7684\u9009\u9879\u3002","monkeys.design.capability.summaryChart.label":"\u6C47\u603B\u56FE\u8868","monkeys.design.capability.dataToolbar.moreActions":"\u66F4\u591A\u64CD\u4F5C","monkeys.design.capability.summaryChart.description":"\u6BD4\u8F83\u6570\u503C\u5E8F\u5217\u4E0E\u5206\u7C7B\u6C47\u603B\u3002","monkeys.design.capability.runtimeTerminal.status":"\u7EC8\u7AEF","monkeys.design.capability.runtimeTerminal.waiting":"\u6B63\u5728\u8FDE\u63A5\u7EC8\u7AEF\u2026","monkeys.design.capability.recordEditor.add":"\u6DFB\u52A0\u6761\u76EE","monkeys.design.capability.recordEditor.remove":"\u5220\u9664\u6761\u76EE","monkeys.design.capability.recordEditor.moveUp":"\u4E0A\u79FB","monkeys.design.capability.recordEditor.moveDown":"\u4E0B\u79FB","monkeys.design.capability.recordEditor.reset":"\u91CD\u7F6E","monkeys.design.capability.imageUpload.sizeHint":"\u5355\u5F20\u56FE\u7247\uFF0C\u6700\u5927 {{size}} MB","monkeys.design.capability.imageUpload.title":"\u70B9\u51FB\u6216\u62D6\u62FD\u4E0A\u4F20\u56FE\u7247","monkeys.design.capability.imageUpload.hint":"\u652F\u6301\u7C98\u8D34\u56FE\u7247\u6216\u56FE\u7247\u94FE\u63A5","monkeys.design.capability.imageUpload.paste":"\u4ECE\u526A\u8D34\u677F\u7C98\u8D34","monkeys.design.capability.imageUpload.replace":"\u66FF\u6362\u56FE\u7247","monkeys.design.capability.imageUpload.clipboardUnavailable":"\u65E0\u6CD5\u8BFB\u53D6\u526A\u8D34\u677F\uFF0C\u8BF7\u4F7F\u7528\u952E\u76D8\u7C98\u8D34\u6216\u9009\u62E9\u6587\u4EF6\u3002","monkeys.design.capability.imageUpload.clipboardEmpty":"\u526A\u8D34\u677F\u4E2D\u6CA1\u6709\u56FE\u7247\u6216\u56FE\u7247\u94FE\u63A5\u3002","monkeys.design.capability.filePicker.label":"\u9009\u62E9\u6587\u4EF6","monkeys.design.capability.mediaDraft.choose":"\u6DFB\u52A0\u56FE\u7247","monkeys.design.capability.mediaDraft.hint":"\u6BCF\u5F20\u4E0D\u8D85\u8FC7 {size} MB\uFF0C\u6700\u591A {count} \u5F20\u3002\u70B9\u51FB\u300C\u4FDD\u5B58\u300D\u540E\u4E0A\u4F20\u3002","monkeys.design.capability.mediaDraft.replace":"\u66FF\u6362","monkeys.design.capability.mediaDraft.preview":"\u9884\u89C8\u56FE\u7247","monkeys.design.capability.mediaDraft.previewPrevious":"\u4E0A\u4E00\u5F20","monkeys.design.capability.mediaDraft.previewNext":"\u4E0B\u4E00\u5F20","monkeys.design.capability.mediaDraft.count":"\u56FE\u7247\u6570\u91CF\u8D85\u8FC7\u9650\u5236\uFF0C\u8BF7\u79FB\u9664\u540E\u518D\u6DFB\u52A0\u3002","monkeys.design.capability.mediaDraft.type":"\u8BF7\u9009\u62E9\u56FE\u7247\u6587\u4EF6\u3002","monkeys.design.capability.mediaDraft.size":"\u56FE\u7247\u4E3A\u7A7A\u6216\u5927\u5C0F\u8D85\u8FC7\u5141\u8BB8\u8303\u56F4\u3002","monkeys.design.capability.mediaDraft.failed":"\u65E0\u6CD5\u9009\u62E9\u56FE\u7247\uFF0C\u8BF7\u91CD\u8BD5\u3002","monkeys.design.capability.mediaDraft.unavailable":"\u6682\u65E0\u9884\u89C8","monkeys.design.capability.mediaDraft.previous":"\u524D\u79FB\u56FE\u7247","monkeys.design.capability.mediaDraft.next":"\u540E\u79FB\u56FE\u7247","monkeys.design.capability.mediaDraft.remove":"\u79FB\u9664","monkeys.design.capability.filePicker.description":"\u9009\u62E9\u672C\u5730\u6587\u4EF6\u4EE5\u6267\u884C\u53D7\u6CBB\u7406\u64CD\u4F5C\u3002","monkeys.design.capability.filePicker.cancel":"\u6E05\u9664\u6587\u4EF6","monkeys.design.capability.filePicker.tooLarge":"\u6587\u4EF6\u5927\u5C0F\u8D85\u8FC7\u5141\u8BB8\u8303\u56F4\u3002","monkeys.design.capability.filePicker.invalidType":"\u8BF7\u9009\u62E9\u652F\u6301\u7684\u6587\u4EF6\u7C7B\u578B\u3002","monkeys.design.capability.filePicker.registrationFailed":"\u65E0\u6CD5\u9009\u62E9\u8BE5\u6587\u4EF6\uFF0C\u8BF7\u91CD\u8BD5\u3002","monkeys.design.capability.recordEditor.date.invalid":"\u8BF7\u8F93\u5165\u5141\u8BB8\u8303\u56F4\u5185\u7684\u6709\u6548\u65E5\u671F\u548C\u65F6\u95F4\u3002","monkeys.design.capability.recordEditor.month.choose":"\u9009\u62E9\u5E74\u6708","monkeys.design.capability.recordEditor.month.previous":"\u4E0A\u4E00\u5E74\u6216\u4E0A\u4E00\u7EC4\u5E74\u4EFD","monkeys.design.capability.recordEditor.month.next":"\u4E0B\u4E00\u5E74\u6216\u4E0B\u4E00\u7EC4\u5E74\u4EFD","monkeys.design.capability.recordEditor.month.clear":"\u6E05\u9664","monkeys.design.capability.recordEditor.clear":"\u6E05\u9664","monkeys.design.capability.recordEditor.notSet":"\u672A\u8BBE\u7F6E","monkeys.design.capability.recordEditor.noOptions":"\u6682\u65E0\u5339\u914D\u9009\u9879","monkeys.design.capability.recordEditor.pick":"\u9009\u62E9","monkeys.design.capability.recordEditor.selectionSummary":"\u5DF2\u9009 {{count}} \u9879","monkeys.design.capability.recordEditor.sections":"\u8868\u5355\u5206\u7C7B","monkeys.design.capability.recordEditor.secretKeep":"\u4FDD\u7559\u73B0\u6709\u503C","monkeys.design.capability.recordEditor.treeReorderFailed":"\u987A\u5E8F\u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u91CD\u65B0\u52A0\u8F7D\u5217\u8868\u540E\u91CD\u8BD5\u3002","monkeys.design.capability.recordEditor.secretMode":"{field} \u66F4\u65B0\u65B9\u5F0F","monkeys.design.capability.recordEditor.secretReplace":"\u66FF\u6362","monkeys.design.capability.recordEditor.secretClear":"\u6E05\u9664","monkeys.design.capability.recordEditor.mapping.targets":"\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.sources":"\u539F\u59CB\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.actions":"\u5F52\u5E76\u64CD\u4F5C","monkeys.design.capability.recordEditor.mapping.addTarget":"\u65B0\u589E\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.removeTarget":"\u5220\u9664\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.addSource":"\u52A0\u5165\u5F53\u524D\u5F52\u5E76","monkeys.design.capability.recordEditor.mapping.removeSource":"\u79FB\u51FA\u5F53\u524D\u5F52\u5E76","monkeys.design.capability.recordEditor.mapping.search":"\u641C\u7D22\u539F\u59CB\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.emptyTargets":"\u6682\u65E0\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.emptySources":"\u5F53\u524D\u5F52\u5E76\u90E8\u95E8\u6682\u65E0\u539F\u59CB\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.groupCount":"\u5171 {count} \u4E2A\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.memberCount":"\uFF08{count} \u4E2A\uFF09","monkeys.design.capability.recordEditor.mapping.newTarget":"\u8F93\u5165\u5F52\u5E76\u90E8\u95E8\u540D\u79F0","monkeys.design.capability.recordEditor.mapping.rename":"\u5F52\u5E76\u90E8\u95E8\u540D\u79F0","monkeys.design.capability.recordEditor.mapping.unnamed":"\u672A\u547D\u540D\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.incomplete":"\u8BF7\u586B\u5199\u540D\u79F0\u5E76\u81F3\u5C11\u52A0\u5165\u4E00\u4E2A\u539F\u59CB\u90E8\u95E8\u540E\u4FDD\u5B58\u3002","monkeys.design.capability.recordEditor.mapping.deleteConfirmation":"\u786E\u5B9A\u5220\u9664\u201C{name}\u201D\u5417\uFF1F","monkeys.design.capability.recordEditor.mapping.confirmDelete":"\u786E\u8BA4\u5220\u9664","monkeys.design.capability.recordEditor.mapping.cancel":"\u53D6\u6D88","monkeys.design.capability.recordEditor.mapping.selectTarget":"\u8BF7\u5148\u9009\u62E9\u5DE6\u4FA7\u5F52\u5E76\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.sourceTabs":"\u539F\u59CB\u90E8\u95E8\u5217\u8868","monkeys.design.capability.recordEditor.mapping.assigned":"\u5DF2\u5305\u542B\uFF08{count}\uFF09","monkeys.design.capability.recordEditor.mapping.available":"\u53EF\u6DFB\u52A0\uFF08{count}\uFF09","monkeys.design.capability.recordEditor.mapping.selectVisible":"\u5168\u9009\u5F53\u524D\u5217\u8868","monkeys.design.capability.recordEditor.mapping.selected":"\u5DF2\u9009 {count} \u4E2A","monkeys.design.capability.recordEditor.mapping.noMatches":"\u6CA1\u6709\u5339\u914D\u7684\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.noAvailable":"\u6CA1\u6709\u53EF\u6DFB\u52A0\u7684\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.customSource":"\u6DFB\u52A0\u81EA\u5B9A\u4E49\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.addCustom":"\u6DFB\u52A0\u81EA\u5B9A\u4E49\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.add":"\u6DFB\u52A0","monkeys.design.capability.recordEditor.mapping.addHint":"\u5C06\u9009\u4E2D\u7684\u90E8\u95E8\u52A0\u5165\u5F53\u524D\u5F52\u5E76","monkeys.design.capability.recordEditor.mapping.removeHint":"\u5C06\u9009\u4E2D\u7684\u90E8\u95E8\u79FB\u51FA\u5F53\u524D\u5F52\u5E76","monkeys.design.capability.recordEditor.mapping.currentTarget":"\u5F53\u524D\u5F52\u5E76\uFF1A{name}","monkeys.design.capability.recordEditor.mapping.invalid":"\u5F52\u5E76\u914D\u7F6E\u65E0\u6548\uFF0C\u8BF7\u68C0\u67E5\u540D\u79F0\u548C\u90E8\u95E8\u5F52\u5C5E\u3002","monkeys.design.capability.recordEditor.mapping.invalidName":"\u8BF7\u8F93\u5165\u6709\u6548\u540D\u79F0\u3002","monkeys.design.capability.recordEditor.mapping.alreadyAssigned":"\u8BE5\u90E8\u95E8\u5DF2\u7ECF\u5F52\u5165\u5176\u4ED6\u5F52\u5E76\u90E8\u95E8\u3002","monkeys.design.capability.recordEditor.mapping.unavailable":"\u8BE5\u90E8\u95E8\u5F53\u524D\u4E0D\u53EF\u6DFB\u52A0\u3002","monkeys.design.capability.recordEditor.mapping.added":"\u5DF2\u5411\u201C{name}\u201D\u52A0\u5165 {count} \u4E2A\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.removed":"\u5DF2\u4ECE\u201C{name}\u201D\u79FB\u51FA {count} \u4E2A\u90E8\u95E8","monkeys.design.capability.recordEditor.mapping.deleted":"\u5DF2\u5220\u9664\u201C{name}\u201D",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.inspect]:"\u67E5\u770B\u89C2\u6D4B\u70B9",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.noPoints]:"\u6B64\u8303\u56F4\u5185\u6CA1\u6709\u89C2\u6D4B\u70B9",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.point]:"{xLabel} {x}, {yLabel} {y}",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.label]:"\u6570\u503C\u5E8F\u5217",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.description]:"\u67E5\u770B\u6570\u503C\u89C2\u6D4B\uFF0C\u7F29\u653E\u8303\u56F4\u5E76\u653E\u5927\u56FE\u8868\u3002",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.start]:"\u8303\u56F4\u8D77\u70B9",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.end]:"\u8303\u56F4\u7EC8\u70B9",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.reset]:"\u91CD\u7F6E\u8303\u56F4",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.expand]:"\u653E\u5927\u56FE\u8868",[DESIGN_CAPABILITY_I18N_KEYS.numericSeries.close]:"\u5173\u95ED\u56FE\u8868",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.resizeSidebar]:"\u8C03\u6574\u4FA7\u8FB9\u680F\u5BBD\u5EA6",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.collapseSidebar]:"\u6536\u8D77\u4FA7\u8FB9\u680F",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.expandSidebar]:"\u5C55\u5F00\u4FA7\u8FB9\u680F",[DESIGN_CAPABILITY_I18N_KEYS.shellLayout.resizeAside]:"\u8C03\u6574\u8BE6\u60C5\u4FA7\u8FB9\u680F\u5BBD\u5EA6",[DESIGN_CAPABILITY_I18N_KEYS.ontologyNavigator.moreActions]:"\u66F4\u591A\u64CD\u4F5C",[DESIGN_CAPABILITY_I18N_KEYS.dataToolbar.addRow]:"\u6DFB\u52A0\u4E00\u884C",[DESIGN_CAPABILITY_I18N_KEYS.dataToolbar.blankRowName]:"\u7A7A\u767D\u884C",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.label]:"\u672C\u4F53\u8D8B\u52BF\u77E9\u9635",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.row]:"\u884C",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.window]:"\u5F53\u524D\u663E\u793A\u7B2C {start}-{end} \u884C\uFF0C\u5171 {total} \u884C",[DESIGN_CAPABILITY_I18N_KEYS.ontologyTrendMatrix.select]:"\u9009\u62E9 {row}\u3001{column}\u3001{value}",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.label]:"\u6570\u636E\u7B5B\u9009\u4E0E\u94BB\u53D6\u4E0A\u4E0B\u6587",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.filter]:"\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchLabel]:"\u641C\u7D22\u6570\u636E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchPlaceholder]:"\u641C\u7D22",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.clear]:"\u6E05\u9664",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.clearAll]:"\u5168\u90E8\u6E05\u9664",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagFilterClear]:"\u6E05\u7A7A",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.filterDescription]:"\u901A\u8FC7\u6807\u7B7E\u9762\u677F\u6216\u624B\u52A8\u641C\u7D22\uFF0C\u9009\u62E9\u7528\u4E8E\u8FC7\u6EE4\u8D44\u4EA7\u7684 Tag\u3002",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagScope]:"\u6807\u7B7E\u8303\u56F4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.currentViewTags]:"\u5F53\u524D\u89C6\u56FE",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.allTags]:"\u5168\u90E8\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.panelFilter]:"\u9762\u677F\u7B5B\u9009",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.searchTags]:"\u641C\u7D22\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noAvailableTags]:"\u6682\u65E0\u53EF\u7528\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.loadedAll]:"\u5DF2\u52A0\u8F7D\u5168\u90E8",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.refreshTags]:"\u5237\u65B0\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.confirm]:"\u786E\u5B9A",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.tagPanel]:"\u6807\u7B7E\u9762\u677F",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.selectPanel]:"\u9009\u62E9\u6807\u7B7E\u9762\u677F",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noPanels]:"\u6682\u65E0\u53EF\u7528\u6807\u7B7E\u9762\u677F",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.noPanelGroups]:"\u5F53\u524D\u9762\u677F\u6CA1\u6709\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.singleSelect]:"\u5355\u9009",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.multiSelect]:"\u591A\u9009",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.defaultGroup]:"\u9ED8\u8BA4\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.more]:"\u53E6\u6709 {count} \u9879",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.dashboardContext]:"\u4EEA\u8868\u76D8\u4E0A\u4E0B\u6587",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.contextCount]:"{count} \u9879\u4E0A\u4E0B\u6587",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.search]:"\u641C\u7D22",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.tagIds]:"\u6807\u7B7E",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.tagGroupIds]:"\u6807\u7B7E\u7EC4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.timeFrom]:"\u5F00\u59CB\u65F6\u95F4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.timeTo]:"\u7ED3\u675F\u65F6\u95F4",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.clickedField]:"\u94BB\u53D6\u5B57\u6BB5",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.clickedValue]:"\u94BB\u53D6\u503C",[DESIGN_CAPABILITY_I18N_KEYS.dataContextBar.fields.dashboardDrilldown]:"\u4EEA\u8868\u76D8\u94BB\u53D6"})});var DEFAULT_TOAST_DURATION=5200;function isToastInput(input){return !input||typeof input!="object"||React8.isValidElement(input)?false:"title"in input||"description"in input||"variant"in input}function isEmptyToastContent(value){return value==null||typeof value=="string"&&!value.trim()}function normalizeToastInput(input,variant,options2){let{description:_description,...baseOptions}=options2??{};return isToastInput(input)?{...baseOptions,...input,variant:input.variant??variant}:{...baseOptions,title:input,variant}}function emitToast(input){let{title,description,duration,variant="info",...options2}=input,message=isEmptyToastContent(title)?description:title;if(isEmptyToastContent(message))return;let descriptionValue=!isEmptyToastContent(description)&&description!==message?description:void 0,sonnerOptions={...options2,description:descriptionValue,duration:duration??DEFAULT_TOAST_DURATION};switch(variant){case "error":return sonner.toast.error(message,sonnerOptions);case "warning":return sonner.toast.warning(message,sonnerOptions);case "success":return sonner.toast.success(message,sonnerOptions);default:return sonner.toast(message,sonnerOptions)}}var toast=Object.assign((message,options2)=>sonner.toast(message,options2),{show:emitToast,error:(input,options2)=>emitToast(normalizeToastInput(input,"error",options2)),warning:(input,options2)=>emitToast(normalizeToastInput(input,"warning",options2)),success:(input,options2)=>emitToast(normalizeToastInput(input,"success",options2)),info:(input,options2)=>emitToast(normalizeToastInput(input,"info",options2)),message:sonner.toast.message,promise:sonner.toast.promise,dismiss:sonner.toast.dismiss,loading:sonner.toast.loading,custom:sonner.toast.custom,getHistory:sonner.toast.getHistory,getToasts:sonner.toast.getToasts});var STATUS_KEYS=DESIGN_CAPABILITY_I18N_KEYS.status,CapabilityStatus=({kind,translate,code,titleKey,descriptionKey,actions,onRetry,presentation,loadingLabelKey,emptyLabelKey,errorLabelKey})=>{let keys=STATUS_KEYS[kind],values=code?{code}:void 0,title=translate(titleKey??keys.title,values),description=translate(descriptionKey??keys.description,values),resolvedActions=actions??(kind==="error"&&onRetry?jsxRuntime.jsx(BaseButton,{label:translate(STATUS_KEYS.retry),onClick:onRetry}):void 0),legacyErrorToastMessage=presentation==="legacy-data-explorer"&&kind==="error"&&errorLabelKey?translate(errorLabelKey):void 0;return React8.useEffect(()=>{legacyErrorToastMessage&&toast.error(legacyErrorToastMessage);},[legacyErrorToastMessage]),presentation==="legacy-data-explorer"?jsxRuntime.jsx("div",{className:"col-span-full flex h-full min-h-0 flex-1 flex-col overflow-hidden","data-presentation":"legacy-data-explorer-status",children:kind==="loading"?jsxRuntime.jsx(BaseLoadingState,{variant:"skeleton",className:"min-h-64",title:loadingLabelKey?translate(loadingLabelKey):title}):jsxRuntime.jsx("div",{className:"flex h-64 items-center justify-center",children:jsxRuntime.jsx("p",{className:"text-muted-foreground",children:translate(emptyLabelKey??DESIGN_CAPABILITY_I18N_KEYS.status.empty.title)})})}):kind==="loading"?jsxRuntime.jsx(BaseLoadingState,{variant:"skeleton",title}):kind==="empty"?jsxRuntime.jsx(BaseEmptyState,{title:emptyLabelKey?translate(emptyLabelKey):title,description:emptyLabelKey?void 0:description,actions:resolvedActions}):jsxRuntime.jsx(BaseSystemState,{kind:kind==="forbidden"?"permission":"error",title,description,actions:resolvedActions})};var isJsonObject=value=>typeof value=="object"&&value!==null&&!Array.isArray(value);var providerStateFromNode=node=>node.state==="loading"?{kind:"loading",model:node.renderModel}:node.state==="empty"?{kind:"empty",model:node.renderModel}:node.state==="error"?{kind:"error",model:node.renderModel,code:"capability.render.error"}:{kind:"ready",model:node.renderModel},errorCode=error=>typeof error=="object"&&error!==null&&"code"in error&&typeof error.code=="string"&&error.code.length<=128&&/^[a-z0-9]+(?:[._-][a-z0-9]+)*$/i.test(error.code)?error.code:"capability.provider.failed",CapabilityNodeBoundary=({context,entry,provider,renderer,binding,access,translate,onIntent,onPerformanceEvidence,now})=>{let{node}=context,[attempt,setAttempt]=React8.useState(0),[providerState,setProviderState]=React8.useState(()=>providerStateFromNode(node)),generationRef=React8.useRef(0),performanceEvidenceRef=React8.useRef(onPerformanceEvidence);React8.useEffect(()=>{performanceEvidenceRef.current=onPerformanceEvidence;},[onPerformanceEvidence]),React8.useEffect(()=>{let generation=generationRef.current+1;if(generationRef.current=generation,!access.allowed||!context.queryEnabled||!provider.load){setProviderState(providerStateFromNode(node));return}let controller=new AbortController,startedAt=now(),settled=false;setProviderState({kind:"loading",model:node.renderModel});let report=(outcome,durationMs)=>performanceEvidenceRef.current?.({capabilityId:entry.manifest.id,providerId:provider.providerId,nodeId:node.nodeId,durationMs,budgetMs:entry.provider.performance.budgetMs,outcome}),fail=(error,durationMs)=>{controller.signal.aborted||generationRef.current!==generation||(settled=true,setProviderState({kind:"error",model:node.renderModel,code:errorCode(error)}),report("error",durationMs));},finish=(result,durationMs)=>{if(controller.signal.aborted||generationRef.current!==generation)return;if(!isJsonObject(result?.model)||result.empty!==void 0&&typeof result.empty!="boolean"){fail({code:"capability.provider.invalid-result"},durationMs);return}settled=true;let budgetMs=entry.provider.performance.budgetMs,outcome=budgetMs!==void 0&&durationMs>budgetMs?"budget-exceeded":result.empty?"empty":"success";setProviderState(result.empty?{kind:"empty",model:result.model}:{kind:"ready",model:result.model}),report(outcome,durationMs);},pending;try{pending=Promise.resolve(provider.load({node,manifest:entry.manifest,descriptor:entry.provider,binding,signal:controller.signal}));}catch(error){pending=Promise.reject(error);}return pending.then(result=>finish(result,Math.max(0,now()-startedAt)),error=>fail(error,Math.max(0,now()-startedAt))),()=>{controller.abort(),settled||report("cancelled",Math.max(0,now()-startedAt));}},[access.allowed,attempt,binding,context.queryEnabled,entry,node,now,provider]);let retry=React8.useCallback(()=>setAttempt(value=>value+1),[]),emitIntent=React8.useCallback((type,payload={})=>{onIntent?.({type,payload},node);},[node,onIntent]);return access.allowed?providerState.kind==="loading"?jsxRuntime.jsx(CapabilityStatus,{kind:"loading",translate}):providerState.kind==="empty"?jsxRuntime.jsx(CapabilityStatus,{kind:"empty",translate}):providerState.kind==="error"?jsxRuntime.jsx(CapabilityStatus,{kind:"error",code:providerState.code,translate,onRetry:provider.load?retry:void 0}):renderer({...context,entry,binding,model:providerState.model,translate,access,loading:false,empty:false,retry,emitIntent}):jsxRuntime.jsx(CapabilityStatus,{kind:"forbidden",code:access.reasonCode??"capability.access.forbidden",translate})},defaultResolveBinding=(node,bindings)=>node.dataContextRef?bindings[node.dataContextRef.id]:void 0,defaultResolveAccess=(node,access)=>node.accessRef?access[node.accessRef.id]??{allowed:false,reasonCode:"capability.access.unresolved"}:{allowed:true},defaultNow=()=>typeof performance>"u"?Date.now():performance.now(),CapabilityRuntimeHost=({tree,runtime,translate,bindings={},access={},resolveBinding=defaultResolveBinding,resolveAccess=defaultResolveAccess,onIntent,onPerformanceEvidence,now=defaultNow,renderMissingCapability,elementForNode,...props})=>{let renderNode=React8.useMemo(()=>context=>{try{let registration=runtime.resolve(context.node,tree.product);return jsxRuntime.jsx(CapabilityNodeBoundary,{context,...registration,binding:resolveBinding(context.node,bindings),access:resolveAccess(context.node,access),translate,onIntent,onPerformanceEvidence,now})}catch(error){return renderMissingCapability?.(context,error)??jsxRuntime.jsx(CapabilityStatus,{kind:"error",code:"capability.registration.missing",translate})}},[access,bindings,now,onIntent,onPerformanceEvidence,renderMissingCapability,resolveAccess,resolveBinding,runtime,translate,tree]),resolvedElementForNode=React8.useCallback(node=>elementForNode?elementForNode(node):node.kind==="shell"?"div":node.kind==="navigation"?"nav":node.kind==="detail"?"aside":node.kind==="record"?"article":"section",[elementForNode]);return jsxRuntime.jsx(RenderTreeRuntimeHost,{...props,tree,renderNode,elementForNode:resolvedElementForNode})};var AgentConversationModelSchema=zod.z.object({agentId:zod.z.string().min(1).max(256),sessionId:zod.z.string().min(1).max(256).optional(),title:zod.z.string(),modelId:zod.z.string(),mode:zod.z.enum(["chat","work"]),knowledgeGroundingEnabled:zod.z.boolean(),welcomeVariant:zod.z.enum(["default","trend"]).optional(),recommendationsEnabled:zod.z.boolean().optional(),recommendationModelId:zod.z.string().max(256).optional(),sessionSnapshot:monkeys.AgentSessionSnapshotSchema.optional()}).strict(),AGENT_CONVERSATION_MODEL_SCHEMA=zod.z.toJSONSchema(AgentConversationModelSchema,{io:"input"});function AgentConversationSkeleton({label}){return jsxRuntime.jsxs("div",{role:"status","aria-label":label,"aria-busy":"true","data-conversation-loading":"true",className:"monkeys-conversation-skeleton flex h-full min-h-0 w-full flex-col overflow-hidden",style:{boxSizing:"border-box",padding:"var(--monkeys-conversation-padding, var(--global-spacing))",gap:"var(--monkeys-conversation-gap, var(--global-spacing))"},children:[jsxRuntime.jsxs("div",{"aria-hidden":"true",className:"mx-auto flex w-full min-h-0 flex-1 flex-col",style:{boxSizing:"border-box",maxWidth:"var(--monkeys-conversation-max-width, 64rem)",gap:"var(--monkeys-conversation-gap, var(--global-spacing))",paddingInline:"var(--monkeys-conversation-content-px, var(--global-spacing-sm))",paddingBlock:"var(--monkeys-conversation-content-py, var(--global-spacing))"},children:[jsxRuntime.jsx(BaseSkeleton,{variant:"block",className:"h-12 w-1/3 shrink-0 self-end"}),jsxRuntime.jsxs("div",{className:"flex w-2/3 flex-col gap-3",children:[jsxRuntime.jsx(BaseSkeleton,{variant:"circle",className:"size-8"}),jsxRuntime.jsx(BaseSkeleton,{className:"w-full"}),jsxRuntime.jsx(BaseSkeleton,{className:"w-4/5"}),jsxRuntime.jsx(BaseSkeleton,{className:"w-3/5"})]})]}),jsxRuntime.jsx("div",{"aria-hidden":"true","data-slot":"composer",className:"mx-auto w-full shrink-0",style:{boxSizing:"border-box",maxWidth:"var(--monkeys-conversation-max-width, 64rem)",padding:"var(--monkeys-conversation-composer-padding, 0px)"},children:jsxRuntime.jsx(BaseSkeleton,{variant:"block",className:"h-32 w-full",style:{borderRadius:"var(--radius)"}})})]})}var AgentConversationRuntimeContext=React8.createContext(null);function AgentConversationCapabilityRenderer(context){let Runtime=React8.useContext(AgentConversationRuntimeContext);if(!context.access.allowed)return jsxRuntime.jsx(CapabilityStatus,{kind:"forbidden",translate:context.translate});let parsed=AgentConversationModelSchema.safeParse(context.model);if(context.loading&&!parsed.success)return jsxRuntime.jsx(AgentConversationSkeleton,{label:context.translate(DESIGN_CAPABILITY_I18N_KEYS.status.loading.title)});if(!parsed.success||!Runtime)return jsxRuntime.jsx(CapabilityStatus,{kind:"error",code:"AGENT_CONVERSATION_RUNTIME_UNAVAILABLE",translate:context.translate});let model=parsed.data;return jsxRuntime.jsx("div",{className:"contents","aria-busy":context.loading===true,...context.loading?{inert:""}:{},children:jsxRuntime.jsx(Runtime,{...model,sessionId:model.sessionId??"",readOnly:context.readOnly===true,onSessionStarted:context.readOnly?void 0:sessionId=>context.emitIntent("sessionStarted",{sessionId}),onContinue:context.readOnly||context.loading?void 0:(messageId,runId)=>context.emitIntent("continue",{messageId,runId},{awaitCompletion:true})},model.agentId)})}var VERSION="1",OWNER="monkeys-design",PRODUCT_CONTEXTS=monkeys.ProductContextSchema.options,TOKEN_REFS=["semantic.color.background","semantic.color.foreground","semantic.color.border","semantic.spacing.global","semantic.radius.base"],GLOBAL_VISIBILITY="global",SCHEMA_VERSION=1,REVISION=1,i18n=(english,chinese)=>({defaultLocale:"en-US",values:{"en-US":english,"zh-CN":chinese}}),stableRef=(kind,id9)=>({kind,id:id9,ownerRepo:OWNER,visibility:GLOBAL_VISIBILITY}),revisionRef=(kind,id9,content,revision=REVISION)=>({...stableRef(kind,id9),revision,schemaVersion:SCHEMA_VERSION,contentHash:monkeys.canonicalContentHash(content)}),JSON_SCHEMA_DIALECT="https://json-schema.org/draft/2020-12/schema",jsonSchema=(id9,definition)=>({$schema:JSON_SCHEMA_DIALECT,$id:id9,...definition}),schemaDocumentEntry=(id9,document2,revision=REVISION)=>({schemaRevisionRef:revisionRef("schema",id9,document2,revision),document:document2}),schemaDocumentKey=({schemaRevisionRef})=>`${schemaRevisionRef.ownerRepo}:${schemaRevisionRef.id}@${schemaRevisionRef.revision}:${schemaRevisionRef.contentHash}`,createDesignCapabilityEntry=({id:id9,version=VERSION,runtimeContractVersion="1",providerVersion=version,revision=REVISION,authoringRevision=revision,schemaRevision=REVISION,rendererKey,kind,category,labelKey,descriptionKey,authoringLabel,authoringDescription,inputPort,schemaRef,schemaDocument,compatibility=[],slots,loading="eager",sideEffects=[],supportedPageTypes,supportedSurfaces,authoringSurfaces=monkeys.ProductSurfaceSchema.options,propertySchema={type:"object",additionalProperties:false,properties:{}},uiSchema={order:[]},propertyFields=[],outputPorts=[],frameOwner="host",virtualized=false,budgetMs,editorEligible=true})=>{let providerId=`${id9}.provider`,providerRef={kind:"view-provider",id:providerId,version:providerVersion,ownerRepo:OWNER},manifest={contract:"CapabilityManifest",id:id9,capabilityVersion:version,ownerRepo:OWNER,kind,displayName:labelKey,description:descriptionKey,ports:{inputs:[{name:inputPort,schemaRef,required:true,multiple:false}],outputs:outputPorts.map(({name,schemaRef:schemaRef2})=>({name,schemaRef:schemaRef2,required:false,multiple:false}))},runtime:{providerBindings:[{providerRef,productContexts:[...PRODUCT_CONTEXTS],priority:100}],loading,stateOwner:"host",sideEffects:[...sideEffects]},placement:{surfaces:[...supportedSurfaces],slots:[...slots],variants:[],tokenRefs:[...TOKEN_REFS]},accessibility:{keyboardModel:`${id9}.keyboard`,focusModel:`${id9}.focus`,labelContract:`${id9}.labels`},observability:{eventNamespace:id9,metrics:["load.duration","load.outcome"],evidenceRefs:["render-node.evidenceRef"],...budgetMs===void 0?{}:{performanceBudgetMs:budgetMs}}},provider={contract:"ViewProviderDescriptor",runtimeContractVersion,providerId,providerVersion,ownerRepo:OWNER,capabilityRef:{kind:"capability",id:id9,version,ownerRepo:OWNER},rendererKey,renderModelSchemaRef:schemaRef,loading,stateOwner:"host",supportedPageTypes:[...supportedPageTypes],supportedSurfaces,frameOwner,sideEffects:[...sideEffects],...sideEffects.length>0?{sideEffectAdapterRef:{kind:"side-effect-adapter",id:`${id9}.side-effects`,version,ownerRepo:OWNER}}:{},lifecycle:{preserveMount:frameOwner==="provider",preserveScroll:frameOwner==="provider",focusModel:`${id9}.focus`},performance:{lazy:loading!=="eager",virtualized,...budgetMs===void 0?{}:{budgetMs}}},editor={eligible:editorEligible,category,labelKey,descriptionKey,slots,ontologyCompatibility:compatibility},propertySchemaDocument=jsonSchema(`${id9}.properties`,propertySchema),uiSchemaDocument=jsonSchema(`${id9}.properties.ui`,{type:"object",additionalProperties:false,properties:{order:{type:"array",items:{type:"string"}}},required:["order"],default:uiSchema}),propertySchemaEntry=schemaDocumentEntry(`${id9}.properties`,propertySchemaDocument,schemaRevision),uiSchemaEntry=schemaDocumentEntry(`${id9}.properties.ui`,uiSchemaDocument,schemaRevision),inputSchemaEntry=schemaDocumentEntry(schemaRef,schemaDocument,schemaRevision),outputSchemaEntries=outputPorts.map(port2=>schemaDocumentEntry(port2.schemaRef,port2.schemaDocument,schemaRevision)),schemaDocuments=[propertySchemaEntry,uiSchemaEntry,inputSchemaEntry,...outputSchemaEntries].filter((entry,index,entries)=>entries.findIndex(candidate=>schemaDocumentKey(candidate)===schemaDocumentKey(entry))===index),unsignedRegistration={runtimeContractVersion,capabilityRevisionRef:revisionRef("capability",id9,manifest,revision),providerRevisionRef:revisionRef("view-provider",providerId,provider,Number(providerVersion)),propertySchemaRevisionRef:propertySchemaEntry.schemaRevisionRef,uiSchemaRevisionRef:uiSchemaEntry.schemaRevisionRef,editorEligible,category,label:authoringLabel,description:authoringDescription,supportedSurfaces:[...authoringSurfaces],allowedSlots:[...slots],allowedParentCapabilityRefs:[],allowedChildCapabilityRefs:[],inputPorts:manifest.ports.inputs.map(port2=>({name:port2.name,schemaRevisionRef:inputSchemaEntry.schemaRevisionRef,required:port2.required,multiple:port2.multiple})),outputPorts:manifest.ports.outputs.map(port2=>{let schema2=outputSchemaEntries.find(entry=>entry.schemaRevisionRef.id===port2.schemaRef);if(!schema2)throw new TypeError(`Missing output schema document for ${port2.schemaRef}.`);return {name:port2.name,schemaRevisionRef:schema2.schemaRevisionRef,required:port2.required,multiple:port2.multiple}}),allowedSideEffects:[...sideEffects],ontologyRequirements:compatibility.map(requirement=>({inputPort:requirement.inputPort,renderModelSchemaRevisionRef:inputSchemaEntry.schemaRevisionRef,modes:[requirement.mode],requiredPermissionCodes:[]})),actionRequirements:outputPorts.map(port2=>({outputPort:port2.name,allowedCommandKinds:[...port2.allowedCommandKinds??[]],requiredPermissionCodes:[...port2.requiredPermissionCodes??[]]})),propertyFields:propertyFields.map(field=>({...field})),schemaDocuments},sourceContentHash=monkeys.canonicalContentHash(unsignedRegistration),declarativeRegistration=monkeys.DeclarativeCapabilityAuthoringRegistrationSchema.parse({...unsignedRegistration,registrationRevisionRef:{...stableRef("design-capability-registration",`${id9}.authoring`),revision:authoringRevision,schemaVersion:SCHEMA_VERSION,contentHash:sourceContentHash},sourceContentHash});return {manifest,provider,editor,declarativeRegistration}};var AGENT_CONVERSATION_ENTRY=createDesignCapabilityEntry({id:"monkeys.design.agent-conversation",version:"2",revision:2,schemaRevision:2,rendererKey:"monkeys.design.renderer.agent-conversation",kind:"view",category:"content",labelKey:"monkeys.design.capability.agentConversation.label",descriptionKey:"monkeys.design.capability.agentConversation.description",authoringLabel:i18n("Agent conversation","\u667A\u80FD\u4F53\u5BF9\u8BDD"),authoringDescription:i18n("Persistent conversation through an authenticated Agent runtime.","\u901A\u8FC7\u5DF2\u8BA4\u8BC1\u667A\u80FD\u4F53\u8FD0\u884C\u65F6\u8FDB\u884C\u6301\u4E45\u5316\u5BF9\u8BDD\u3002"),inputPort:"model",schemaRef:"monkeys-design://agent-conversation/model/v1",schemaDocument:jsonSchema("monkeys-design://agent-conversation/model/v1",AGENT_CONVERSATION_MODEL_SCHEMA),slots:[],outputPorts:[{name:"sessionStarted",schemaRef:"monkeys-design://agent-conversation/session-started/v1",schemaDocument:jsonSchema("monkeys-design://agent-conversation/session-started/v1",{type:"object",additionalProperties:false,required:["sessionId"],properties:{sessionId:{type:"string",minLength:1,maxLength:256}}}),allowedCommandKinds:[]},{name:"continue",schemaRef:"monkeys-design://agent-conversation/continue/v1",schemaDocument:jsonSchema("monkeys-design://agent-conversation/continue/v1",{type:"object",additionalProperties:false,required:["messageId","runId"],properties:{messageId:{type:"string",minLength:1,maxLength:256},runId:{type:"string",minLength:1,maxLength:256}}}),allowedCommandKinds:["domain-command"]}],sideEffects:["network"],supportedPageTypes:["page","workspace"],supportedSurfaces:["page","workspace"]});var oneTimeValueAppearance={preset:"soft",density:"default",radius:"lg",border:"subtle",background:"soft"},maskOneTimeValue=value=>`${value.slice(0,3)}${"*".repeat(32)}${value.slice(-4)}`;function OneTimeValueDialog({open,title,description,valueLabel,readValue,clearValue,labels,onCopy,onClose}){let[visible,setVisible]=React8.useState(false);React8.useEffect(()=>(setVisible(false),clearValue),[clearValue]);let close=()=>{clearValue(),setVisible(false),onClose();},copy2=()=>{let current=readValue();current&&onCopy(current);};return jsxRuntime.jsx(BaseDialog,{appearance:oneTimeValueAppearance,open,onOpenChange:next=>{next||close();},title,description,closeLabel:labels.close,classNames:{panel:"sm:max-w-xl"},footer:jsxRuntime.jsx(BaseButton,{appearance:oneTimeValueAppearance,tone:"primary",label:labels.close,onClick:close}),children:jsxRuntime.jsx("div",{className:"grid gap-4 py-2",children:jsxRuntime.jsxs("div",{className:"rounded-md border border-border/70 bg-muted/40 p-3",children:[jsxRuntime.jsxs("div",{className:"mb-2 flex items-center justify-between gap-2",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium",children:valueLabel}),jsxRuntime.jsxs("div",{className:"flex gap-2",children:[jsxRuntime.jsx(BaseButton,{appearance:oneTimeValueAppearance,tone:"muted",iconOnly:true,icon:visible?jsxRuntime.jsx(lucideReact.EyeOff,{className:"h-4 w-4"}):jsxRuntime.jsx(lucideReact.Eye,{className:"h-4 w-4"}),ariaLabel:visible?labels.hide:labels.show,title:visible?labels.hide:labels.show,onClick:()=>setVisible(current=>!current)}),jsxRuntime.jsx(BaseButton,{appearance:oneTimeValueAppearance,tone:"muted",iconOnly:true,icon:jsxRuntime.jsx(lucideReact.Copy,{className:"h-4 w-4"}),ariaLabel:labels.copy,title:labels.copy,onClick:copy2})]})]}),jsxRuntime.jsx("code",{className:"block break-all rounded bg-background p-2 font-mono text-sm",children:visible?readValue():maskOneTimeValue(readValue())})]})})})}var GALLERY_CARD_POSITIONS=["top-left","top-center","top-right","middle-left","middle-right","bottom-left","bottom-center","bottom-right"];function resolveGalleryScrollDirection(layout,direction){let expected=layout==="rail"?"horizontal":"vertical";if(direction&&direction!=="auto"&&direction!==expected)throw new TypeError(`Gallery layout ${layout} requires ${expected} scrolling.`);return expected}var ids=zod.z.array(zod.z.string().min(1).max(256)).max(32).refine(values=>new Set(values).size===values.length),spacing=zod.z.number().min(0).max(48),GalleryCardSchema=zod.z.object({slots:zod.z.array(zod.z.object({position:zod.z.enum(GALLERY_CARD_POSITIONS),fieldIds:ids.optional(),actionIds:ids.optional(),visibility:zod.z.enum(["always","hover"]).optional(),direction:zod.z.enum(["horizontal","vertical"]).optional(),gap:spacing.optional(),inset:spacing.optional()}).strict()).max(8).refine(slots=>new Set(slots.map(slot=>slot.position)).size===slots.length).optional(),title:zod.z.object({fieldId:zod.z.string().min(1).max(256).optional(),placement:zod.z.enum(["none","overlay-top","overlay-bottom","above","below"]).optional(),align:zod.z.enum(["left","center","right"]).optional(),size:zod.z.enum(["sm","md","lg"]).optional(),weight:zod.z.enum(["normal","medium","semibold"]).optional(),maxLines:zod.z.number().int().min(1).max(6).optional(),background:zod.z.enum(["none","solid","gradient","panel"]).optional(),padding:spacing.optional()}).strict().optional(),hover:zod.z.object({effect:zod.z.enum(["none","zoom","outline","lift"]).optional(),scale:zod.z.number().min(1).max(1.15).optional()}).strict().optional()}).strict(),idList={type:"array",maxItems:32,uniqueItems:true,items:{type:"string",minLength:1,maxLength:256}},space={type:"number",minimum:0,maximum:48},GALLERY_CARD_SCHEMA={type:"object",additionalProperties:false,properties:{slots:{type:"array",maxItems:8,items:{type:"object",additionalProperties:false,required:["position"],properties:{position:{enum:[...GALLERY_CARD_POSITIONS]},fieldIds:idList,actionIds:idList,visibility:{enum:["always","hover"]},direction:{enum:["horizontal","vertical"]},gap:space,inset:space}}},title:{type:"object",additionalProperties:false,properties:{fieldId:{type:"string",minLength:1,maxLength:256},placement:{enum:["none","overlay-top","overlay-bottom","above","below"]},align:{enum:["left","center","right"]},size:{enum:["sm","md","lg"]},weight:{enum:["normal","medium","semibold"]},maxLines:{type:"integer",minimum:1,maximum:6},background:{enum:["none","solid","gradient","panel"]},padding:space}},hover:{type:"object",additionalProperties:false,properties:{effect:{enum:["none","zoom","outline","lift"]},scale:{type:"number",minimum:1,maximum:1.15}}}}};function validateGalleryCard(value,fieldIds,actionIds){let config=GalleryCardSchema.parse(value);if(config.title?.fieldId&&!fieldIds.includes(config.title.fieldId))throw new TypeError("Unknown gallery title field.");for(let slot of config.slots??[]){if(slot.fieldIds?.some(id9=>!fieldIds.includes(id9)))throw new TypeError("Unknown gallery slot field.");if(slot.actionIds?.some(id9=>!actionIds.includes(id9)))throw new TypeError("Unknown gallery slot action.")}return config}var REGION_CONTENT_SLOTS=["sidebar","main","aside",...Array.from({length:8},(_,i)=>`panel${i+1}`)],REGION_LAYOUT_SLOTS=REGION_CONTENT_SLOTS.flatMap(slot=>[slot,`${slot}-header`,`${slot}-toolbar`,`${slot}-footer`]),integer=(minimum,maximum)=>({type:"integer",minimum,maximum}),id={type:"string",minLength:1,maxLength:64,pattern:"^[a-zA-Z][a-zA-Z0-9_-]*$"},REGION_STATE_SCHEMA={type:"object",additionalProperties:false,required:["regions"],properties:{regions:{type:"array",maxItems:11,items:{type:"object",additionalProperties:false,required:["id"],properties:{id,size:integer(40,2400),collapsed:{type:"boolean"},columnSpan:integer(1,12),rowSpan:integer(1,12)}}}}},REGION_LAYOUT_SCHEMA={type:"object",additionalProperties:false,required:["mode","regions"],properties:{mode:{enum:["split","grid"]},chrome:{enum:["panel","plain"]},direction:{enum:["horizontal","vertical"]},columns:integer(1,12),rowHeight:integer(80,800),gap:integer(0,48),padding:integer(0,48),border:{enum:["none","outer","panels"]},radius:integer(0,32),breakpoint:integer(320,1200),headerHeight:integer(32,120),disabled:{type:"boolean"},reorderable:{type:"boolean"},regions:{type:"array",minItems:1,maxItems:11,items:{type:"object",additionalProperties:false,required:["id","slot"],properties:{id,slot:{enum:REGION_CONTENT_SLOTS},title:{type:"string",maxLength:120},titleKey:{type:"string",minLength:1},size:integer(40,2400),minSize:integer(40,2400),maxSize:integer(40,2400),columnSpan:integer(1,12),rowSpan:integer(1,12),padding:integer(0,48),border:{type:"boolean"},radius:integer(0,32),surface:{enum:["default","muted","transparent"]},chrome:{enum:["panel","plain"]},scroll:{enum:["content","none"]},mobile:{enum:["stack","drawer"]},resizable:{type:"boolean"},collapsible:{type:"boolean"},collapsed:{type:"boolean"},disabled:{type:"boolean"},collapsePlacement:{enum:["start","end"]},collapseControlRegion:id}}}}};function resolveRegionState(config,state){let ids2=new Set,slots=new Set;for(let region of config.regions){if(ids2.has(region.id)||slots.has(region.slot))throw new Error("Layout region IDs and content slots must be unique.");if(ids2.add(region.id),slots.add(region.slot),(region.minSize??40)>(region.maxSize??2400))throw new Error("Layout minimum size exceeds maximum.");if(region.collapsed&&!region.collapsible)throw new Error("A non-collapsible region cannot start collapsed.")}for(let region of config.regions){if(!region.collapseControlRegion)continue;let target=config.regions.find(item=>item.id===region.collapseControlRegion);if(!region.collapsible||!target||target.id===region.id||target.collapsible||target.mobile==="drawer")throw new Error("Collapse controls require a distinct, non-collapsible target outside a drawer.")}let incoming=state?.regions??[];if(new Set(incoming.map(item=>item.id)).size!==incoming.length||incoming.some(item=>!ids2.has(item.id)))throw new Error("Layout state contains duplicate or unknown region IDs.");return {regions:[...incoming.map(item=>item.id),...config.regions.filter(item=>!incoming.some(value=>value.id===item.id)).map(item=>item.id)].map(key3=>{let region=config.regions.find(item=>item.id===key3),value={id:key3,size:region.size,collapsed:region.collapsed??false,columnSpan:region.columnSpan??1,rowSpan:region.rowSpan??1,...incoming.find(item=>item.id===key3)};if(value.size!==void 0&&(value.size<(region.minSize??40)||value.size>(region.maxSize??2400)))throw new Error("Layout size is outside configured bounds.");if(value.collapsed&&!region.collapsible)throw new Error("Layout state cannot collapse a non-collapsible region.");if(value.columnSpan>(config.columns??12))throw new Error("Layout column span exceeds the grid column count.");return Object.fromEntries(Object.entries(value).filter(([,item])=>item!==void 0))})}}var id2={type:"string",minLength:1,maxLength:256},COLLECTION_STEPPER_ENTRY=createDesignCapabilityEntry({providerVersion:"6",authoringRevision:9,id:"monkeys.design.collection-stepper",rendererKey:"monkeys.design.renderer.collection-stepper",version:"9",revision:9,schemaRevision:6,kind:"view",category:"navigation",labelKey:"monkeys.design.collectionStepper.label",descriptionKey:"monkeys.design.collectionStepper.description",authoringLabel:i18n("Collection stepper","\u96C6\u5408\u524D\u540E\u6D4F\u89C8"),authoringDescription:i18n("Navigate the retained source window without querying a duplicate collection.","\u5728\u4FDD\u7559\u7684\u6765\u6E90\u7A97\u53E3\u4E2D\u524D\u540E\u6D4F\u89C8\uFF0C\u4E0D\u91CD\u590D\u67E5\u8BE2\u96C6\u5408\u3002"),inputPort:"model",schemaRef:"monkeys-design://collection-stepper/model/v2",schemaDocument:jsonSchema("monkeys-design://collection-stepper/model/v2",{type:"object",additionalProperties:false,required:["collectionId","activeId","labels"],properties:{collectionId:id2,activeId:id2,appearance:{enum:["text","icons"],default:"text"},placement:{enum:["inline","overlay","sidebar"],default:"inline"},showPosition:{type:"boolean",default:false},allowLoadMore:{type:"boolean",default:true},labels:{type:"object",additionalProperties:false,required:["previous","next","loading","missing","retry"],properties:Object.fromEntries(["previous","next","loading","missing","retry"].map(key3=>[key3,{type:"string",minLength:1}]))}}}),slots:[],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace","overlay"],outputPorts:[{name:"capability.collection-stepper.activate",schemaRef:"monkeys-design://collection-stepper/activate/v1",schemaDocument:jsonSchema("monkeys-design://collection-stepper/activate/v1",{type:"object",additionalProperties:false,required:["itemId"],properties:{itemId:id2}}),allowedCommandKinds:["query-intent"]}]});var id3={type:"string",minLength:1,maxLength:256},text={type:"string",maxLength:2048},bounded={type:"integer",minimum:1,maximum:1e3},GROUPED_FILTER_SELECTION_SCHEMA={type:"object",additionalProperties:false,required:["scopeKey","values"],properties:{scopeKey:{type:"string",maxLength:256},values:{type:"object",maxProperties:1e3,propertyNames:id3,additionalProperties:{type:"array",maxItems:1e3,uniqueItems:true,items:id3}}}},GROUPED_FILTER_MODEL_SCHEMA={type:"object",additionalProperties:false,required:["scopeKey","selection","groups","limits","labels"],properties:{scopeKey:id3,selection:GROUPED_FILTER_SELECTION_SCHEMA,disabled:{type:"boolean"},triggerAppearance:{enum:["button","plain"]},groups:{type:"array",maxItems:1e3,items:{type:"object",additionalProperties:false,required:["id","label","status","options"],properties:{id:id3,label:text,status:{enum:["ready","loading","error"]},options:{type:"array",maxItems:1e4,items:{type:"object",additionalProperties:false,required:["id","label"],properties:{id:id3,label:text,searchTokens:{type:"array",maxItems:16,items:text},disabled:{type:"boolean"},dormant:{type:"boolean"},count:{type:"integer",minimum:0}}}}}}},limits:{type:"object",additionalProperties:false,required:["groups","perGroup","total"],properties:{groups:bounded,perGroup:bounded,total:bounded}},labels:{type:"object",additionalProperties:false,required:["search","clear","empty","loading","error","dormant","groups","perGroup","total","retry"],properties:Object.fromEntries(["search","clear","empty","loading","error","dormant","groups","perGroup","total","retry"].map(key3=>[key3,text]))}}},GROUPED_FILTER_ENTRY=createDesignCapabilityEntry({providerVersion:"8",authoringRevision:8,id:"monkeys.design.grouped-filter",rendererKey:"monkeys.design.renderer.grouped-filter",version:"8",revision:8,schemaRevision:2,kind:"view",category:"navigation",labelKey:"monkeys.design.capability.groupedFilter.label",descriptionKey:"monkeys.design.capability.groupedFilter.description",authoringLabel:i18n("Grouped filters","\u5206\u7EC4\u7B5B\u9009"),authoringDescription:i18n("Search and edit bounded scope-owned choices locally.","\u672C\u5730\u641C\u7D22\u5E76\u7F16\u8F91\u6709\u4F5C\u7528\u57DF\u548C\u6570\u91CF\u8FB9\u754C\u7684\u5206\u7EC4\u9009\u9879\u3002"),inputPort:"model",schemaRef:"monkeys-design://grouped-filter/model/v2",schemaDocument:jsonSchema("monkeys-design://grouped-filter/model/v2",GROUPED_FILTER_MODEL_SCHEMA),slots:[],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace","overlay"],outputPorts:[{name:"capability.grouped-filter.retry",schemaRef:"monkeys-design://grouped-filter/retry/v1",schemaDocument:jsonSchema("monkeys-design://grouped-filter/retry/v1",{type:"object",additionalProperties:false,required:["groupId"],properties:{groupId:id3}}),allowedCommandKinds:["query-intent"]},{name:"capability.grouped-filter.change",schemaRef:"monkeys-design://grouped-filter/change/v1",schemaDocument:jsonSchema("monkeys-design://grouped-filter/change/v1",{type:"object",additionalProperties:false,required:["selection"],properties:{selection:GROUPED_FILTER_SELECTION_SCHEMA}}),allowedCommandKinds:["query-intent"]}]});var mediaViewerToolbarSchema=zod.z.object({controlsGrouping:zod.z.enum(["grouped","separate"]).default("grouped"),actionsGrouping:zod.z.enum(["grouped","separate"]).default("grouped"),actionsPlacement:zod.z.enum(["overlay","footer"]).default("overlay"),downloadPosition:zod.z.enum(["first","last"]).default("last"),controls:zod.z.array(zod.z.enum(["reset","fitPage","fitWidth","originalSize","zoomIn","zoomOut"])).max(6).default(["fitPage","originalSize","zoomIn","zoomOut"])}).strict(),MEDIA_VIEWER_TOOLBAR_SCHEMA=zod.z.toJSONSchema(mediaViewerToolbarSchema,{io:"input"});var IMAGE_PREVIEW_POSITIONS=["topLeft","top","topRight","left","right","bottomLeft","bottom","bottomRight"],options=zod.z.object({minScale:zod.z.number().min(1e-6).max(64).default(.01),maxScale:zod.z.number().min(1e-6).max(64).default(16),zoomStep:zod.z.number().gt(1).max(4).default(1.18),stagePadding:zod.z.number().min(0).max(128).default(16),wheelZoom:zod.z.enum(["plain","modifier","disabled"]).default("plain"),doubleClickAction:zod.z.enum(["reset","original-size","disabled"]).default("reset"),panEnabled:zod.z.boolean().default(true),keyboardEnabled:zod.z.boolean().default(true),controlsVisible:zod.z.boolean().default(true),zoomLabelVisible:zod.z.boolean().default(true),controlsPosition:zod.z.enum(IMAGE_PREVIEW_POSITIONS).default("bottomRight")}).strict(),IMAGE_PREVIEW_OPTIONS_SCHEMA=zod.z.toJSONSchema(options,{io:"input"}),imagePreviewOptionsSchema=options.refine(value=>value.minScale<=value.maxScale,{message:"minScale must not exceed maxScale",path:["minScale"]});function previewFailureKind(error){let name=error&&typeof error=="object"&&"name"in error?error.name:"";return name==="PasswordException"?"passwordRequired":name==="InvalidPDFException"?"invalidDocument":name==="MissingPDFException"||name==="UnexpectedResponseException"||name==="TypeError"?"networkFailed":"unavailable"}function safePreviewUrl(value){if(typeof value=="string"&&!(/^[\s]*$/.test(value)||/[\\\u0000-\u0020]/.test(value)))try{let relative=/^(?:\/(?!\/)|\.\.?\/)/.test(value),url=new URL(value,relative&&typeof window<"u"?window.location.href:void 0);if(["https:","http:"].includes(url.protocol)&&!url.username&&!url.password)return url.href}catch{}}var clampDocumentZoom=zoom=>Math.min(3,Math.max(.5,Number.isFinite(zoom)?zoom:1)),clampDocumentPage=(page,count)=>Math.min(count,Math.max(1,Math.trunc(page)||1)),clampPreviewSidebar=width=>Math.min(420,Math.max(120,Number.isFinite(width)?width:200)),MEDIA_VIEWER_LABELS=["back","previous","next","loading","unavailable","retry","download","downloadFailed","fullscreen","fullscreenFailed","fitPage","fitWidth","zoomIn","zoomOut","thumbnails","page","resizeSidebar","openExternal"];var id4={type:"string",minLength:1,maxLength:256},text2={type:"string",minLength:1,maxLength:2048},MEDIA_VIEWER_MODEL_SCHEMA={type:"object",additionalProperties:false,required:["id","title","kind","source","labels"],properties:{id:id4,title:text2,kind:{enum:["image","pdf","video","audio","text","file"]},downloadEnabled:{type:"boolean",default:true},openExternalEnabled:{type:"boolean",default:true},closeVisible:{type:"boolean",default:true},toolbarAppearance:{enum:["text","icons"],default:"text"},actionChrome:{enum:["framed","plain"],default:"framed"},layout:{enum:["toolbar","canvas"],default:"toolbar"},canvasToolbar:MEDIA_VIEWER_TOOLBAR_SCHEMA,imagePreview:IMAGE_PREVIEW_OPTIONS_SCHEMA,detailsPanel:{type:"object",additionalProperties:false,required:["label"],properties:{collapsible:{type:"boolean",default:false},defaultOpen:{type:"boolean",default:true},label:{type:"string",minLength:1,maxLength:256},width:{type:"integer",minimum:180,maximum:480,default:320}}},secondaryPanel:{type:"object",additionalProperties:false,required:["label"],properties:{defaultOpen:{type:"boolean",default:false},label:{type:"string",minLength:1,maxLength:256},width:{type:"integer",minimum:180,maximum:480,default:280}}},sidePanelsMaxWidthPercent:{type:"number",minimum:25,maximum:60,default:44},source:{type:"object",additionalProperties:false,required:["url","fileName"],properties:{url:{type:"string",maxLength:8192},fileName:text2,text:{type:"string",maxLength:262144},posterUrl:{type:"string",maxLength:8192}}},labels:{type:"object",additionalProperties:false,required:[...MEDIA_VIEWER_LABELS],properties:Object.fromEntries([...MEDIA_VIEWER_LABELS,"passwordRequired","invalidDocument","networkFailed","metricsFailed","originalSize","reset"].map(key3=>[key3,text2]))},navigation:{type:"object",additionalProperties:false,required:["previous","next"],properties:{previous:{type:"boolean"},next:{type:"boolean"},loading:{type:"boolean"}}}}},port=(name,properties2,required)=>{let schemaRef=`monkeys-design://media-viewer/${name}/v1`;return {name:`capability.media-viewer.${name}`,schemaRef,schemaDocument:jsonSchema(schemaRef,{type:"object",additionalProperties:false,properties:properties2,required}),allowedCommandKinds:["query-intent"]}},MEDIA_VIEWER_ENTRY=createDesignCapabilityEntry({providerVersion:"7",authoringRevision:16,id:"monkeys.design.media-viewer",rendererKey:"monkeys.design.renderer.media-viewer",version:"16",revision:16,schemaRevision:13,kind:"view",category:"content",labelKey:"monkeys.design.capability.mediaViewer.label",descriptionKey:"monkeys.design.capability.mediaViewer.description",authoringLabel:i18n("Media viewer","\u5A92\u4F53\u9605\u8BFB\u5668"),authoringDescription:i18n("Read one image or document with bounded page rendering.","\u9605\u8BFB\u5355\u5F20\u56FE\u7247\u6216\u6309\u9700\u6E32\u67D3\u7684\u6587\u6863\u3002"),inputPort:"model",schemaRef:"monkeys-design://media-viewer/model/v1",schemaDocument:jsonSchema("monkeys-design://media-viewer/model/v1",MEDIA_VIEWER_MODEL_SCHEMA),slots:["details","actions","navigation","secondary","toolbar","imageOverlay",...IMAGE_PREVIEW_POSITIONS],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace","overlay"],outputPorts:[port("close",{},[]),port("navigate",{direction:{enum:["previous","next"]},itemId:id4},["direction","itemId"]),port("page-change",{page:{type:"integer",minimum:1},itemId:id4},["page","itemId"]),port("zoom-change",{zoom:{type:"number",minimum:1e-6,maximum:64},itemId:id4},["zoom","itemId"]),{...port("download",{itemId:id4},["itemId"]),allowedCommandKinds:["domain-command"]}]});var RETAINED_DETAIL_ENTRY=createDesignCapabilityEntry({providerVersion:"5",authoringRevision:5,id:"monkeys.design.retained-detail",rendererKey:"monkeys.design.renderer.retained-detail",version:"5",revision:5,schemaRevision:1,kind:"view",category:"layout",labelKey:"monkeys.design.capability.retainedDetail.label",descriptionKey:"monkeys.design.capability.retainedDetail.description",authoringLabel:i18n("Retained detail","\u4FDD\u7559\u5217\u8868\u7684\u8BE6\u60C5\u5BB9\u5668"),authoringDescription:i18n("Display a detail slot while retaining the source viewport and focus.","\u5C55\u793A\u8BE6\u60C5\u65F6\u4FDD\u7559\u6765\u6E90\u5217\u8868\u7684\u7A97\u53E3\u548C\u7126\u70B9\u3002"),inputPort:"model",schemaRef:"monkeys-design://retained-detail/model/v1",schemaDocument:jsonSchema("monkeys-design://retained-detail/model/v1",{type:"object",additionalProperties:false,required:["active"],properties:{active:{type:"boolean"}}}),slots:["main","detail","overlay"],outputPorts:[],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace"]});var text3={type:"string"},id5={type:"string",minLength:1,maxLength:256},object=(properties2,required=Object.keys(properties2))=>({type:"object",additionalProperties:false,properties:properties2,required}),COMMENT_THREAD_MODEL=object({scopeKey:{type:"string",minLength:1,maxLength:1024},canWrite:{type:"boolean"},items:{type:"array",maxItems:1e4,items:object({id:id5,author:text3,text:{type:"string",maxLength:1e4},createdAt:{type:"integer",minimum:0,maximum:864e13}})},pagination:object({hasMore:{type:"boolean"},nextCursor:{type:["string","null"]},loadingMore:{type:"boolean"},errorCode:text3},["hasMore","nextCursor"]),labels:object(Object.fromEntries(["title","empty","draft","send","sending","failed","more","loading","limit"].map(key3=>[key3,{type:"string",minLength:1}])))});COMMENT_THREAD_MODEL.properties={...COMMENT_THREAD_MODEL.properties,appearance:{enum:["default","panel"],default:"default"},showCharacterCount:{type:"boolean",default:true}};var COMMENT_THREAD_ENTRY=createDesignCapabilityEntry({providerVersion:"5",authoringRevision:6,id:"monkeys.design.comment-thread",rendererKey:"monkeys.design.renderer.comment-thread",version:"6",revision:6,schemaRevision:3,kind:"view",category:"content",labelKey:"monkeys.design.capability.commentThread.label",descriptionKey:"monkeys.design.capability.commentThread.description",authoringLabel:i18n("Comment thread","\u8BC4\u8BBA"),authoringDescription:i18n("Read paged comments and submit a bounded draft through governed commands.","\u5206\u9875\u8BFB\u53D6\u8BC4\u8BBA\uFF0C\u5E76\u901A\u8FC7\u53D7\u6CBB\u7406\u547D\u4EE4\u63D0\u4EA4\u6709\u957F\u5EA6\u9650\u5236\u7684\u8349\u7A3F\u3002"),inputPort:"ontologyView",schemaRef:"monkeys-design://comment-thread/model/v1",schemaDocument:jsonSchema("monkeys-design://comment-thread/model/v1",COMMENT_THREAD_MODEL),slots:[],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace"],outputPorts:[{name:"capability.comment-thread.submit",schemaRef:"monkeys-design://comment-thread/submit/v1",schemaDocument:jsonSchema("monkeys-design://comment-thread/submit/v1",object({text:{type:"string",minLength:1,maxLength:1e4},clientRequestId:{type:"string",minLength:1,maxLength:128}})),allowedCommandKinds:["domain-command"]},{name:"capability.comment-thread.load-more",schemaRef:"monkeys-design://comment-thread/load-more/v1",schemaDocument:jsonSchema("monkeys-design://comment-thread/load-more/v1",object({cursor:{type:"string",minLength:1,maxLength:8192}})),allowedCommandKinds:["query-intent"]}]});var ReportDocumentModelSchema=zod.z.object({id:zod.z.string().min(1),title:zod.z.string(),markdown:zod.z.string(),html:zod.z.string(),reference:zod.z.string(),period:zod.z.string(),focus:zod.z.string(),brandName:zod.z.string(),sceneName:zod.z.string(),imageUrls:zod.z.array(zod.z.string())}).strict(),REPORT_DOCUMENT_MODEL_SCHEMA=zod.z.toJSONSchema(ReportDocumentModelSchema,{io:"input"});var REPORT_DOCUMENT_ENTRY=createDesignCapabilityEntry({id:"monkeys.design.report-document",rendererKey:"monkeys.design.renderer.report-document",kind:"view",category:"content",labelKey:"monkeys.design.capability.reportDocument.label",descriptionKey:"monkeys.design.capability.reportDocument.description",authoringLabel:i18n("Report document","\u62A5\u544A\u6587\u6863"),authoringDescription:i18n("Read a projected report with managed media.","\u9605\u8BFB\u5305\u542B\u6258\u7BA1\u5A92\u4F53\u7684\u62A5\u544A\u6295\u5F71\u3002"),inputPort:"model",schemaRef:"monkeys-design://report-document/model/v1",schemaDocument:jsonSchema("monkeys-design://report-document/model/v1",REPORT_DOCUMENT_MODEL_SCHEMA),slots:[],sideEffects:["network"],supportedPageTypes:["page","workspace"],supportedSurfaces:["page","workspace"]});var badgeVariants=({variant="default",shape="pill",className}={})=>cn("inline-flex items-center border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2",shape==="pill"?"rounded-full":"rounded-md",variant==="secondary"&&"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",variant==="destructive"&&"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",variant==="outline"&&"text-foreground",variant==="success"&&"border-transparent bg-success/15 text-success",variant==="warning"&&"border-transparent bg-warning/15 text-warning-foreground",(!variant||variant==="default")&&"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",className),Badge=React8__namespace.forwardRef(({className,variant,shape,...props},ref)=>jsxRuntime.jsx("div",{ref,className:badgeVariants({variant,shape,className}),...props}));Badge.displayName="Badge";var RoundedBadge=React8__namespace.forwardRef((props,ref)=>jsxRuntime.jsx(Badge,{ref,shape:"rounded",...props}));RoundedBadge.displayName="RoundedBadge";function useBentoSurface(){let parentDepth=useBentoDepth(),level=parentDepth+1,recipe=resolveBentoTokens(useMonkeysResolvedTheme(),level),variables=Object.fromEntries(BENTO_STYLE_FIELDS.map(field=>[`--monkeys-bento-${field.replace(/[A-Z]/g,letter=>`-${letter.toLowerCase()}`)}`,recipe.values[field]]));return {parentDepth,level,variables}}var ownsPadding=(styles,classes)=>Object.keys(styles??{}).some(key3=>key3.startsWith("padding")&&styles?.[key3]!==void 0)||/(?:^|[\s:])!?p[xytrblse]?-(?:\[|[a-z0-9])/.test(classes??"");function BentoPanel({children,className,contentClassName,chrome="panel",headerWrap=false,title,titleIcon:TitleIcon,action,appearance:explicitAppearance,classNames,...props}){let{parentDepth,level,variables}=useBentoSurface(),appearance2=useMonkeysBaseAppearance(explicitAppearance),framed=chrome==="panel",bodyOwnsPadding=ownsPadding(appearance2?.styles?.panelBody,[classNames?.body,contentClassName,appearance2?.slots?.panelBody].join(" "));return jsxRuntime.jsx(BentoDepthProvider,{depth:framed?level:parentDepth,children:jsxRuntime.jsx(BasePanel,{as:"section",appearance:{...appearance2,slots:{...appearance2?.slots,panelRoot:appearance2?.slots?.panelRoot},styles:{...appearance2?.styles,panelHeader:{...chrome==="plain"?{padding:0,paddingBlockEnd:"var(--global-spacing-lg, 1rem)"}:{},...appearance2?.styles?.panelHeader},panelBody:{...!bodyOwnsPadding||chrome==="plain"?{padding:0}:{},...appearance2?.styles?.panelBody}}},classNames:{...classNames,root:cn("min-h-0",framed&&"gap-[var(--monkeys-bento-gap)]",framed&&appearance2?.radius===void 0&&!appearance2?.preset&&"rounded-[var(--monkeys-bento-radius)]",framed&&appearance2?.border===void 0&&!appearance2?.preset&&"border-[length:var(--monkeys-bento-border-width)] border-[color:var(--monkeys-bento-border-color)] [border-style:var(--monkeys-bento-border-style)]",framed&&appearance2?.background===void 0&&!appearance2?.preset&&"bg-[var(--monkeys-bento-background)]",framed&&!appearance2?.preset&&appearance2?.background===void 0&&"shadow-[shadow:var(--monkeys-bento-shadow)]",framed&&!bodyOwnsPadding&&"p-[var(--monkeys-bento-padding)]",!framed&&"border-0 bg-transparent shadow-none",appearance2?.slots?.panelRoot,classNames?.root,className),header:cn("flex min-w-0 items-center gap-[var(--monkeys-bento-gap,var(--global-spacing,0.75rem))] border-b border-border p-0 pb-[var(--monkeys-bento-gap)]",chrome==="plain"&&"border-0 px-0 pt-0 pb-token-lg",classNames?.header),body:cn("flex min-h-0 flex-col gap-[var(--monkeys-bento-gap,var(--global-spacing,0.75rem))] p-0",appearance2?.slots?.panelBody,classNames?.body,contentClassName),footer:cn("px-0 pb-0 pt-[var(--monkeys-bento-gap)]",classNames?.footer)},header:title?jsxRuntime.jsxs("div",{className:cn("flex min-w-0 flex-1 items-center justify-between gap-token-md",headerWrap&&"flex-wrap"),children:[jsxRuntime.jsxs("div",{className:cn("flex min-w-0 flex-1 items-center gap-token-sm",headerWrap&&"basis-auto"),children:[TitleIcon?jsxRuntime.jsx("span",{className:"inline-flex size-8 shrink-0 items-center justify-center rounded-md border border-primary/30 bg-primary/10 text-primary",children:jsxRuntime.jsx(TitleIcon,{className:"size-4 text-primary",color:"currentColor",stroke:"currentColor"})}):null,jsxRuntime.jsxs("div",{className:"min-w-0",children:[jsxRuntime.jsx("h2",{className:"truncate text-base font-semibold text-foreground",children:title}),props.description?jsxRuntime.jsx("div",{className:"mt-1 text-sm text-muted-foreground",children:props.description}):null]})]}),action?jsxRuntime.jsx("div",{className:cn("shrink-0",headerWrap&&"max-w-full"),children:action}):null]}):void 0,...props,"data-monkeys-bento-level":framed?level:void 0,style:{...framed?variables:{},...props.style},children})})}function Calendar({className,classNames,components,showOutsideDays=true,...props}){return jsxRuntime.jsx(reactDayPicker.DayPicker,{showOutsideDays,className:cn("p-3",className),classNames:{months:"flex flex-col space-y-4 sm:flex-row sm:space-x-4 sm:space-y-0",month:"space-y-4",caption:"relative flex items-center justify-center pt-1",caption_label:"text-sm font-medium",nav:"flex items-center space-x-1",nav_button:"inline-flex h-7 w-7 items-center justify-center rounded-md border border-input bg-transparent p-0 text-foreground opacity-100 shadow-sm transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",nav_icon:"size-4 stroke-current",nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-y-1",head_row:"flex",head_cell:"w-9 rounded-md text-[0.8rem] font-normal text-muted-foreground",row:"mt-2 flex w-full",cell:"relative h-9 w-9 p-0 text-center text-sm [&:has([aria-selected].day-range-end)]:rounded-r-md [&:has([aria-selected].day-outside)]:bg-accent/50 [&:has([aria-selected])]:bg-accent first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md focus-within:relative focus-within:z-20",day:"inline-flex h-9 w-9 items-center justify-center rounded-md p-0 font-normal transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring aria-selected:opacity-100 disabled:pointer-events-none disabled:opacity-50",day_range_end:"day-range-end",day_selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground",day_today:"bg-accent text-accent-foreground",day_outside:"day-outside text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30",day_disabled:"text-muted-foreground opacity-50",day_range_middle:"aria-selected:bg-accent aria-selected:text-accent-foreground",day_hidden:"invisible",...classNames},components:{IconLeft:({className:iconClassName,...iconProps})=>jsxRuntime.jsx(lucideReact.ChevronLeft,{"aria-hidden":"true",className:cn("size-4 stroke-current",iconClassName),...iconProps}),IconRight:({className:iconClassName,...iconProps})=>jsxRuntime.jsx(lucideReact.ChevronRight,{"aria-hidden":"true",className:cn("size-4 stroke-current",iconClassName),...iconProps}),...components},...props})}Calendar.displayName="Calendar";var overlaySurfaceRoleClassNames={menu:"monkeys-overlay-surface--menu bg-menu-surface text-popover-foreground",dialog:"monkeys-overlay-surface--dialog bg-dialog-surface text-foreground"};function getOverlaySurfaceClassName(role,options2={}){return ["monkeys-overlay-surface",overlaySurfaceRoleClassNames[role],options2.rounded===false?void 0:"monkeys-overlay-surface--rounded"].filter(Boolean).join(" ")}var AccordionItem=React8__namespace.forwardRef(({className,style,...props},ref)=>jsxRuntime.jsx(AccordionPrimitive__namespace.Item,{ref,className:cn("border-b",className),style:{borderColor:"var(--monkeys-component-accordion-item-border-color, hsl(var(--border)))",...style},...props}));AccordionItem.displayName="AccordionItem";var AccordionTrigger=React8__namespace.forwardRef(({className,children,...props},ref)=>jsxRuntime.jsx(AccordionPrimitive__namespace.Header,{className:"flex",children:jsxRuntime.jsxs(AccordionPrimitive__namespace.Trigger,{ref,className:cn("flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",className),...props,children:[children,jsxRuntime.jsx(lucideReact.ChevronDown,{"aria-hidden":"true",className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));AccordionTrigger.displayName="AccordionTrigger";var AccordionContent=React8__namespace.forwardRef(({className,children,...props},ref)=>jsxRuntime.jsx(AccordionPrimitive__namespace.Content,{ref,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...props,children:jsxRuntime.jsx("div",{className:cn("pb-4 pt-0",className),children})}));AccordionContent.displayName="AccordionContent";var Checkbox=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(CheckboxPrimitive__namespace.Root,{ref,className:cn("peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",className),...props,children:jsxRuntime.jsx(CheckboxPrimitive__namespace.Indicator,{className:"flex items-center justify-center text-current",children:jsxRuntime.jsx(lucideReact.Check,{"aria-hidden":"true",className:"h-4 w-4"})})}));Checkbox.displayName="Checkbox";var buttonVariants=classVarianceAuthority.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_[data-slot=icon]]:text-[inherit] [&_[data-slot=icon]_*]:!text-[inherit] [&_[data-slot=icon]_svg]:!stroke-current [&_[data-slot=icon]_svg_*]:!stroke-current [&_[data-slot=end-icon]]:text-[inherit] [&_[data-slot=end-icon]_*]:!text-[inherit] [&_[data-slot=end-icon]_svg]:!stroke-current [&_[data-slot=end-icon]_svg_*]:!stroke-current [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-sm hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-control-surface shadow-sm ring-offset-control-surface hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-sm px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),Button=React8__namespace.forwardRef(({className,variant,size:size2,asChild=false,...props},ref)=>jsxRuntime.jsx(asChild?reactSlot.Slot:"button",{ref,className:buttonVariants({variant,size:size2,className}),...props}));Button.displayName="Button";var ScrollArea=React8__namespace.forwardRef(({className,children,viewportClassName,viewportRef,onViewportScroll,scrollbar=true,scrollbarOrientation="vertical",scrollBarDisabled=false,type,...props},ref)=>{let bentoDepth=useBentoDepth();return jsxRuntime.jsxs(ScrollArea2__namespace.Root,{ref,type:type??(bentoDepth>0?"auto":void 0),className:cn("group relative overflow-hidden",scrollBarDisabled&&"no-scrollbar",className),...props,children:[jsxRuntime.jsx(ScrollArea2__namespace.Viewport,{ref:viewportRef,onScroll:onViewportScroll,className:cn("h-full w-full rounded-[inherit]",viewportClassName),children}),scrollbar?jsxRuntime.jsx(ScrollBar,{orientation:scrollbarOrientation,className:cn(scrollBarDisabled&&"size-0 p-0")}):null,jsxRuntime.jsx(ScrollArea2__namespace.Corner,{})]})});ScrollArea.displayName="ScrollArea";var ScrollBar=React8__namespace.forwardRef(({className,orientation="vertical",...props},ref)=>jsxRuntime.jsx(ScrollArea2__namespace.ScrollAreaScrollbar,{ref,"data-monkeys-scrollbar":"",orientation,className:cn("flex touch-none select-none opacity-0 transition-opacity group-hover:opacity-100 group-focus-within:opacity-100 data-[state=visible]:opacity-100",orientation==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",orientation==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",className),...props,children:jsxRuntime.jsx(ScrollArea2__namespace.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));ScrollBar.displayName="ScrollBar";var Switch=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SwitchPrimitive__namespace.Root,{ref,className:cn("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",className),...props,children:jsxRuntime.jsx(SwitchPrimitive__namespace.Thumb,{className:"pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0"})}));Switch.displayName="Switch";var Tabs=React8__namespace.forwardRef(({variant="default",...props},ref)=>jsxRuntime.jsx(TabsPrimitive__namespace.Root,{ref,"data-variant":variant,...props}));Tabs.displayName="Tabs";var TabsList=React8__namespace.forwardRef(({className,gap,style,...props},ref)=>jsxRuntime.jsx(TabsPrimitive__namespace.List,{ref,className:cn("inline-flex h-10 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",className),style:{gap,...style},...props}));TabsList.displayName="TabsList";var TabsTrigger=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(TabsPrimitive__namespace.Trigger,{ref,className:cn("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",className),...props}));TabsTrigger.displayName="TabsTrigger";var TabsContent=React8__namespace.forwardRef(({className,...props},ref)=>{let depth=useBentoDepth();return jsxRuntime.jsx(TabsPrimitive__namespace.Content,{ref,className:cn("mt-2 ring-offset-background focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",depth>0&&"gap-[var(--monkeys-bento-gap)]",className),...props})});TabsContent.displayName="TabsContent";var TooltipContent=React8__namespace.forwardRef(({className,sideOffset=4,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(Tooltip__namespace.Portal,{children:jsxRuntime.jsx(Tooltip__namespace.Content,{...componentAttributes,...props,ref,sideOffset,"data-monkeys-component":"tooltip","data-slot":"content","data-surface":"menu",className:cn("z-50 overflow-hidden border px-3 py-1.5 text-xs animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",getOverlaySurfaceClassName("menu"),className)})})});TooltipContent.displayName="TooltipContent";var Input=React8__namespace.forwardRef(({className,appearance:appearance2="standard",type,...props},ref)=>jsxRuntime.jsx("input",{ref,type,className:cn("flex w-full border border-input bg-control-surface px-3 text-foreground ring-offset-control-surface transition-[border-color,background-color,color,box-shadow] file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",appearance2==="compact"?"h-9 rounded-md py-1 text-sm shadow-sm":"h-10 rounded-md py-2 text-sm shadow-sm",appearance2==="shadow"&&"rounded-lg shadow-sm shadow-black/[0.02] dark:border-white/10 dark:bg-white/[0.04] dark:shadow-none",className),...props}));Input.displayName="Input";var Textarea=React8__namespace.forwardRef(({className,appearance:appearance2="standard",...props},ref)=>jsxRuntime.jsx("textarea",{ref,className:cn("flex w-full border border-input bg-control-surface px-3 py-2 text-foreground ring-offset-control-surface placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",appearance2==="compact"?"min-h-[60px] rounded-md text-sm shadow-sm":"min-h-[80px] rounded-md text-sm",appearance2==="shadow"&&"rounded-lg shadow-sm shadow-black/[0.02] dark:border-white/10 dark:bg-white/[0.04] dark:shadow-none",className),...props}));Textarea.displayName="Textarea";var FloatingPopoverContext=React8__namespace.createContext(null);function FloatingPopover({open:controlledOpen,defaultOpen=false,onOpenChange,placement="bottom-start",offset:offset2=8,children}){let[uncontrolledOpen,setUncontrolledOpen]=React8__namespace.useState(defaultOpen),open=controlledOpen??uncontrolledOpen,setOpen=React8__namespace.useCallback(next=>{onOpenChange?.(next),controlledOpen===void 0&&setUncontrolledOpen(next);},[controlledOpen,onOpenChange]),{refs,floatingStyles,context}=react.useFloating({placement,open,onOpenChange:setOpen,middleware:[react.offset(offset2),react.flip({padding:8}),react.shift({padding:8})],whileElementsMounted:react.autoUpdate}),click=react.useClick(context),dismiss=react.useDismiss(context,{outsidePressEvent:"pointerdown"}),role=react.useRole(context,{role:"dialog"}),{getReferenceProps,getFloatingProps}=react.useInteractions([click,dismiss,role]),value=React8__namespace.useMemo(()=>({open,floatingStyles,getReferenceProps,getFloatingProps,context,refs}),[context,floatingStyles,getFloatingProps,getReferenceProps,open,refs]);return jsxRuntime.jsx(FloatingPopoverContext.Provider,{value,children})}function useFloatingPopoverContext(){let context=React8__namespace.useContext(FloatingPopoverContext);if(!context)throw new Error("FloatingPopover components must be used within <FloatingPopover>");return context}var FloatingPopoverTrigger=React8__namespace.forwardRef(({asChild,...props},forwardedRef)=>{let context=useFloatingPopoverContext();return jsxRuntime.jsx(asChild?reactSlot.Slot:"button",{...context.getReferenceProps({ref:node=>{context.refs.setReference(node),typeof forwardedRef=="function"?forwardedRef(node):forwardedRef&&(forwardedRef.current=node);},type:asChild?void 0:"button",...props})})});FloatingPopoverTrigger.displayName="FloatingPopoverTrigger";var FloatingPopoverContent=React8__namespace.forwardRef(({className,style,portal=true,...props},forwardedRef)=>{let context=useFloatingPopoverContext(),componentAttributes=useMonkeysComponentAttributes();if(!context.open)return null;let floatingProps=context.getFloatingProps({ref:node=>{context.refs.setFloating(node),typeof forwardedRef=="function"?forwardedRef(node):forwardedRef&&(forwardedRef.current=node);},className:cn("z-50 w-72 border p-4 outline-hidden",getOverlaySurfaceClassName("menu"),className),style:{...context.floatingStyles,...style},tabIndex:-1,...props}),content=jsxRuntime.jsx(react.FloatingFocusManager,{context:context.context,modal:false,returnFocus:false,children:jsxRuntime.jsx("div",{...floatingProps,...componentAttributes,"data-monkeys-component":"floating-popover","data-slot":"content","data-surface":"menu"})});return portal?jsxRuntime.jsx(react.FloatingPortal,{children:content}):content});FloatingPopoverContent.displayName="FloatingPopoverContent";var menuItemClassName="relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",menuContentClassName=`z-50 min-w-[8rem] overflow-hidden border p-1 ${getOverlaySurfaceClassName("menu")} data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,DropdownMenu=DropdownMenuPrimitive__namespace.Root,DropdownMenuTrigger=DropdownMenuPrimitive__namespace.Trigger;var DropdownMenuRadioGroup=DropdownMenuPrimitive__namespace.RadioGroup,DropdownMenuSubTrigger=React8__namespace.forwardRef(({className,inset,children,...props},ref)=>jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.SubTrigger,{ref,className:cn(menuItemClassName,"data-[state=open]:bg-accent",inset&&"pl-8",className),...props,children:[children,jsxRuntime.jsx(lucideReact.ChevronRight,{"aria-hidden":"true",className:"ml-auto"})]}));DropdownMenuSubTrigger.displayName="DropdownMenuSubTrigger";var DropdownMenuSubContent=React8__namespace.forwardRef(({className,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DropdownMenuPrimitive__namespace.SubContent,{...componentAttributes,...props,ref,"data-monkeys-component":"dropdown-menu","data-slot":"content","data-surface":"menu",className:cn(menuContentClassName,className)})});DropdownMenuSubContent.displayName="DropdownMenuSubContent";var DropdownMenuContent=React8__namespace.forwardRef(({className,sideOffset=4,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal,{children:jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Content,{...componentAttributes,...props,ref,sideOffset,"data-monkeys-component":"dropdown-menu","data-slot":"content","data-surface":"menu",className:cn(menuContentClassName,className)})})});DropdownMenuContent.displayName="DropdownMenuContent";var DropdownMenuItem=React8__namespace.forwardRef(({className,inset,...props},ref)=>jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Item,{ref,className:cn(menuItemClassName,inset&&"pl-8",className),...props}));DropdownMenuItem.displayName="DropdownMenuItem";var DropdownMenuCheckboxItem=React8__namespace.forwardRef(({className,children,checked,...props},ref)=>jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.CheckboxItem,{ref,className:cn(menuItemClassName,"pl-8",className),checked,...props,children:[jsxRuntime.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator,{children:jsxRuntime.jsx(lucideReact.Check,{"aria-hidden":"true",className:"h-4 w-4"})})}),children]}));DropdownMenuCheckboxItem.displayName="DropdownMenuCheckboxItem";var DropdownMenuRadioItem=React8__namespace.forwardRef(({className,children,...props},ref)=>jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.RadioItem,{ref,className:cn(menuItemClassName,"pl-8",className),...props,children:[jsxRuntime.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator,{children:jsxRuntime.jsx(lucideReact.Circle,{"aria-hidden":"true",className:"h-2 w-2 fill-current"})})}),children]}));DropdownMenuRadioItem.displayName="DropdownMenuRadioItem";var DropdownMenuLabel=React8__namespace.forwardRef(({className,inset,...props},ref)=>jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Label,{ref,className:cn("px-2 py-1.5 text-sm font-semibold",inset&&"pl-8",className),...props}));DropdownMenuLabel.displayName="DropdownMenuLabel";var DropdownMenuSeparator=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Separator,{ref,className:cn("-mx-1 my-1 h-px bg-muted",className),...props}));DropdownMenuSeparator.displayName="DropdownMenuSeparator";var Select=SelectPrimitive__namespace.Root,SelectGroup=SelectPrimitive__namespace.Group,SelectValue=SelectPrimitive__namespace.Value,SelectTrigger=React8__namespace.forwardRef(({className,children,iconClassName,size:size2="default",...props},ref)=>jsxRuntime.jsxs(SelectPrimitive__namespace.Trigger,{ref,className:cn("flex h-10 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-control-surface px-3 py-2 text-left text-sm text-foreground shadow-sm ring-offset-control-surface data-[placeholder]:text-muted-foreground focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1 [&>span]:min-w-0 [&>span]:flex-1 [&>span]:text-left",size2==="sm"&&"h-8 px-2 py-1 text-xs",className),...props,children:[children,jsxRuntime.jsx(SelectPrimitive__namespace.Icon,{asChild:true,children:jsxRuntime.jsx(lucideReact.ChevronDown,{"aria-hidden":"true",className:cn("h-4 w-4 opacity-50",iconClassName)})})]}));SelectTrigger.displayName="SelectTrigger";var SelectScrollUpButton=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SelectPrimitive__namespace.ScrollUpButton,{ref,className:cn("flex cursor-default items-center justify-center py-1",className),...props,children:jsxRuntime.jsx(lucideReact.ChevronUp,{"aria-hidden":"true",className:"h-4 w-4"})}));SelectScrollUpButton.displayName="SelectScrollUpButton";var SelectScrollDownButton=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SelectPrimitive__namespace.ScrollDownButton,{ref,className:cn("flex cursor-default items-center justify-center py-1",className),...props,children:jsxRuntime.jsx(lucideReact.ChevronDown,{"aria-hidden":"true",className:"h-4 w-4"})}));SelectScrollDownButton.displayName="SelectScrollDownButton";var SelectContent=React8__namespace.forwardRef(({className,children,position="popper",viewportClassName,disableTriggerViewportSizing=false,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(SelectPrimitive__namespace.Portal,{children:jsxRuntime.jsxs(SelectPrimitive__namespace.Content,{...componentAttributes,...props,ref,position,"data-monkeys-component":"select","data-slot":"content","data-surface":"menu",className:cn(menuContentClassName,"relative max-h-[var(--radix-select-content-available-height)] overflow-y-auto overflow-x-hidden",position==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",className),children:[jsxRuntime.jsx(SelectScrollUpButton,{}),jsxRuntime.jsx(SelectPrimitive__namespace.Viewport,{className:cn("p-1",position==="popper"&&"w-full min-w-[var(--radix-select-trigger-width)]",position==="popper"&&!disableTriggerViewportSizing&&"h-[var(--radix-select-trigger-height)]",viewportClassName),children}),jsxRuntime.jsx(SelectScrollDownButton,{})]})})});SelectContent.displayName="SelectContent";var SelectLabel=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SelectPrimitive__namespace.Label,{ref,className:cn("px-2 py-1.5 text-sm font-semibold",className),...props}));SelectLabel.displayName="SelectLabel";var SelectItem=React8__namespace.forwardRef(({className,children,indicatorClassName,itemText,hideIndicator=false,...props},ref)=>jsxRuntime.jsxs(SelectPrimitive__namespace.Item,{ref,className:cn(menuItemClassName,"w-full",hideIndicator?"px-2":"pl-8 pr-2",className),...props,children:[hideIndicator?null:jsxRuntime.jsx("span",{className:cn("absolute left-2 flex h-3.5 w-3.5 items-center justify-center",indicatorClassName),children:jsxRuntime.jsx(SelectPrimitive__namespace.ItemIndicator,{children:jsxRuntime.jsx(lucideReact.Check,{"aria-hidden":"true",className:"h-4 w-4"})})}),itemText?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(SelectPrimitive__namespace.ItemText,{asChild:true,children:jsxRuntime.jsx("span",{className:"sr-only",children:itemText})}),children]}):jsxRuntime.jsx(SelectPrimitive__namespace.ItemText,{children})]}));SelectItem.displayName="SelectItem";var SelectSeparator=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(SelectPrimitive__namespace.Separator,{ref,className:cn("-mx-1 my-1 h-px bg-muted",className),...props}));SelectSeparator.displayName="SelectSeparator";function svgPreviewSurface(src){if(!src)return;let svg=/^data:image\/svg\+xml(?:[;,]|$)/i.test(src.trim());if(!svg)try{svg=/\.svgz?$/i.test(decodeURIComponent(new URL(src,"https://preview.invalid").pathname));}catch{return}return svg?{backgroundColor:"var(--monkeys-media-svg-background)",objectFit:"contain"}:void 0}var mediaPreviewFrameClassName=({aspectRatio="square",maxSquareHeight=true,className}={})=>cn("w-full overflow-hidden bg-muted",(aspectRatio==="square"||aspectRatio==="1:1")&&"aspect-square",(aspectRatio==="square"||aspectRatio==="1:1")&&maxSquareHeight&&"max-h-[300px]",aspectRatio==="4:3"&&"aspect-[4/3]",aspectRatio==="3:4"&&"aspect-[3/4]",(aspectRatio==="video"||aspectRatio==="16:9")&&"aspect-video",aspectRatio==="9:16"&&"aspect-[9/16]",className),MediaPreviewFrame=React8__namespace.forwardRef(({aspectRatio="square",maxSquareHeight=true,className,...props},ref)=>jsxRuntime.jsx("div",{ref,className:mediaPreviewFrameClassName({aspectRatio,maxSquareHeight,className}),...props}));MediaPreviewFrame.displayName="MediaPreviewFrame";var MediaPreviewImage=React8__namespace.forwardRef(({fit="contain",className,style,...props},ref)=>{let surface=svgPreviewSurface(props.src);return jsxRuntime.jsx("img",{ref,className:cn("block size-full",fit==="contain"?"object-contain":"object-cover",className),style:{...surface,...surface?{objectFit:fit}:{},...style},...props})});MediaPreviewImage.displayName="MediaPreviewImage";var key2=Symbol.for("@inf-monkeys-tech/monkeys-design/dialog-dock@1"),host2=globalThis,DockContext=host2[key2]??(host2[key2]=React8__namespace.createContext(null)),useDialogDock=()=>React8__namespace.useContext(DockContext);var DockedDialogContent=React8__namespace.forwardRef(({children,className,style,closeLabel="Close",showCloseButton=true,onInteractOutside,...props},ref)=>{let dock=useDialogDock(),id9=React8__namespace.useId(),collapseRef=React8__namespace.useRef(null),wasCollapsed=React8__namespace.useRef(false);return React8__namespace.useEffect(()=>{wasCollapsed.current&&!dock?.collapsed&&dock?.activeId===id9&&collapseRef.current?.focus(),wasCollapsed.current=!!dock?.collapsed;},[dock?.collapsed,dock?.activeId,id9]),React8__namespace.useEffect(()=>dock?.register(id9),[dock?.register,id9]),dock?.container?jsxRuntime.jsx(DialogPrimitive2__namespace.Portal,{container:dock.container,children:jsxRuntime.jsx("div",{style:{display:"contents"},children:jsxRuntime.jsx(BentoScope,{children:jsxRuntime.jsx(BentoPanel,{className:"monkeys-dialog-dock-panel overflow-auto",contentClassName:"shrink-0",style:{display:dock.activeId===id9?void 0:"none"},children:jsxRuntime.jsxs(DialogPrimitive2__namespace.Content,{...props,ref,"data-monkeys-dialog-content":true,"data-presentation":"docked","data-title-visible":dock.showTitle,"data-collapsible":dock.collapsible,className:cn("monkeys-dialog-dock-content",className),style,onInteractOutside:event=>{onInteractOutside?.(event),event.preventDefault();},children:[children,dock.collapsible&&jsxRuntime.jsx("button",{ref:collapseRef,type:"button",className:"monkeys-dialog-dock-collapse","aria-label":dock.collapseLabel,title:dock.collapseLabel,"aria-expanded":!dock.collapsed,onClick:()=>dock.setCollapsed(true),children:jsxRuntime.jsx(lucideReact.PanelRightClose,{"aria-hidden":"true",className:"size-4"})}),showCloseButton&&jsxRuntime.jsxs(DialogPrimitive2__namespace.Close,{className:"monkeys-dialog-dock-close","aria-label":typeof closeLabel=="string"?closeLabel:void 0,children:[jsxRuntime.jsx(lucideReact.X,{"aria-hidden":"true",className:"size-4"}),jsxRuntime.jsx("span",{className:"sr-only",children:closeLabel})]})]})})})})}):null});DockedDialogContent.displayName="DockedDialogContent";var dialogOpenKey=Symbol.for("@inf-monkeys-tech/monkeys-design/dialog-open@1"),dialogOpenHost=globalThis,DialogOpenContext=dialogOpenHost[dialogOpenKey]??(dialogOpenHost[dialogOpenKey]=React8__namespace.createContext(false));function Dialog2({open,defaultOpen,onOpenChange,modal,...props}){let dock=useDialogDock(),[internalOpen,setInternalOpen]=React8__namespace.useState(defaultOpen??false),isOpen=open??internalOpen;return jsxRuntime.jsx(DialogOpenContext.Provider,{value:isOpen,children:jsxRuntime.jsx(DialogPrimitive2__namespace.Root,{...props,open:isOpen,modal:dock?false:modal,onOpenChange:next=>{setInternalOpen(next),onOpenChange?.(next);}})})}var DialogTrigger=DialogPrimitive2__namespace.Trigger,DialogPortal=DialogPrimitive2__namespace.Portal;var DialogOverlay=React8__namespace.forwardRef(({className,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DialogPrimitive2__namespace.Overlay,{...componentAttributes,...props,ref,className:cn("theme-overlay-backdrop fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",className),"data-monkeys-component":"dialog","data-slot":"overlay","data-monkeys-overlay":true})});DialogOverlay.displayName="DialogOverlay";var DialogSurfaceContent=React8__namespace.forwardRef(({className,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DialogPrimitive2__namespace.Content,{...componentAttributes,...props,ref,className,"data-monkeys-component":"dialog","data-slot":"content","data-surface":"dialog","data-monkeys-dialog-content":true})});DialogSurfaceContent.displayName="DialogSurfaceContent";var DialogContent=React8__namespace.forwardRef(({className,children,showCloseButton=true,closeLabel="Close",overlayClassName,overlayStyle,...props},ref)=>{let dock=useDialogDock(),open=React8__namespace.useContext(DialogOpenContext);return dock?open?jsxRuntime.jsx(DockedDialogContent,{...props,ref,className,showCloseButton,closeLabel,children}):null:jsxRuntime.jsxs(DialogPortal,{children:[jsxRuntime.jsx(DialogOverlay,{className:overlayClassName,style:overlayStyle}),jsxRuntime.jsxs(DialogSurfaceContent,{...props,ref,className:cn("fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border p-6 duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",getOverlaySurfaceClassName("dialog"),className),children:[jsxRuntime.jsx(BentoScope,{children}),showCloseButton?jsxRuntime.jsxs(DialogPrimitive2__namespace.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-dialog-surface transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[jsxRuntime.jsx(lucideReact.X,{"aria-hidden":"true",className:"h-4 w-4"}),jsxRuntime.jsx("span",{className:"sr-only",children:closeLabel})]}):null]})]})});DialogContent.displayName="DialogContent";var DialogContentNoAnimation=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogContent,{ref,className:cn("duration-0 data-[state=open]:animate-none data-[state=closed]:animate-none",className),...props}));DialogContentNoAnimation.displayName="DialogContentNoAnimation";var DialogHeader=({className,...props})=>jsxRuntime.jsx("div",{className:cn(useDialogDock()?.showTitle===false?"contents":"flex flex-col space-y-1.5 text-center sm:text-left",className),...props});DialogHeader.displayName="DialogHeader";var DialogFooter=({className,...props})=>jsxRuntime.jsx("div",{className:cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",className),...props});DialogFooter.displayName="DialogFooter";var DialogTitle=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogPrimitive2__namespace.Title,{ref,className:cn("text-lg font-semibold leading-none tracking-tight",className,useDialogDock()?.showTitle===false&&"sr-only"),...props}));DialogTitle.displayName="DialogTitle";var DialogDescription=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogPrimitive2__namespace.Description,{ref,className:cn("text-sm text-muted-foreground",className),...props}));DialogDescription.displayName="DialogDescription";var AlertDialog=({onOpenChange,open,...props})=>{let dock=useDialogDock();React8__namespace.useEffect(()=>{if(open!==false||typeof document>"u")return;let cleanup=()=>{document.querySelector('[data-state="open"][role="dialog"], [data-state="open"][role="alertdialog"]')||(document.body.style.pointerEvents="");};requestAnimationFrame(cleanup);let timer=window.setTimeout(cleanup,300);return ()=>window.clearTimeout(timer)},[open]);let handleOpenChange=React8__namespace.useCallback(next=>{onOpenChange?.(next),!next&&typeof document<"u"&&requestAnimationFrame(()=>{document.querySelector('[data-state="open"][role="dialog"], [data-state="open"][role="alertdialog"]')||(document.body.style.pointerEvents="");});},[onOpenChange]);return dock?jsxRuntime.jsx(Dialog2,{open,onOpenChange:handleOpenChange,...props}):jsxRuntime.jsx(AlertDialogPrimitive__namespace.Root,{open,onOpenChange:handleOpenChange,...props})};React8__namespace.forwardRef((props,ref)=>{let Trigger21=useDialogDock()?DialogPrimitive2__namespace.Trigger:AlertDialogPrimitive__namespace.Trigger;return jsxRuntime.jsx(Trigger21,{...props,ref})});var AlertDialogPortal=AlertDialogPrimitive__namespace.Portal,AlertDialogOverlay=React8__namespace.forwardRef(({className,style,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(AlertDialogPrimitive__namespace.Overlay,{...componentAttributes,...props,ref,className:cn("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",className),"data-monkeys-component":"alert-dialog","data-slot":"overlay","data-monkeys-overlay":true,style:{pointerEvents:"auto",...style}})});AlertDialogOverlay.displayName="AlertDialogOverlay";var AlertDialogContent=React8__namespace.forwardRef(({className,style,children,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return useDialogDock()?jsxRuntime.jsx(DialogContent,{...props,...componentAttributes,ref,role:"alertdialog",showCloseButton:false,className,style,children}):jsxRuntime.jsxs(AlertDialogPortal,{children:[jsxRuntime.jsx(AlertDialogOverlay,{}),jsxRuntime.jsx(AlertDialogPrimitive__namespace.Content,{...componentAttributes,...props,ref,className:cn("fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border p-6 duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",getOverlaySurfaceClassName("dialog"),className),"data-monkeys-component":"alert-dialog","data-slot":"content","data-surface":"dialog","data-monkeys-dialog-content":true,style:{pointerEvents:"auto",...style},children:jsxRuntime.jsx(BentoScope,{children})})]})});AlertDialogContent.displayName="AlertDialogContent";var AlertDialogHeader=({className,...props})=>jsxRuntime.jsx("div",{className:cn("flex flex-col space-y-2 text-center sm:text-left",className),...props}),AlertDialogFooter=({className,...props})=>jsxRuntime.jsx("div",{className:cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",className),...props}),AlertDialogTitle=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Title:AlertDialogPrimitive__namespace.Title;return jsxRuntime.jsx(Part,{ref,className:cn("text-lg font-semibold",className,useDialogDock()?.showTitle===false&&"sr-only"),...props})}),AlertDialogDescription=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Description:AlertDialogPrimitive__namespace.Description;return jsxRuntime.jsx(Part,{ref,className:cn("text-sm text-muted-foreground",className),...props})}),AlertDialogAction=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Close:AlertDialogPrimitive__namespace.Action;return jsxRuntime.jsx(Part,{ref,className:cn(buttonVariants(),className),...props})}),AlertDialogDangerAction=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Close:AlertDialogPrimitive__namespace.Action;return jsxRuntime.jsx(Part,{ref,className:cn(buttonVariants({variant:"destructive"}),className),...props})}),AlertDialogCancel=React8__namespace.forwardRef(({className,...props},ref)=>{let Part=useDialogDock()?DialogPrimitive2__namespace.Close:AlertDialogPrimitive__namespace.Cancel;return jsxRuntime.jsx(Part,{ref,className:cn(buttonVariants({variant:"outline"}),"mt-2 sm:mt-0",className),...props})});AlertDialogHeader.displayName="AlertDialogHeader";AlertDialogFooter.displayName="AlertDialogFooter";AlertDialogTitle.displayName="AlertDialogTitle";AlertDialogDescription.displayName="AlertDialogDescription";AlertDialogAction.displayName="AlertDialogAction";AlertDialogDangerAction.displayName="AlertDialogDangerAction";AlertDialogCancel.displayName="AlertDialogCancel";var Popover=PopoverPrimitive__namespace.Root,PopoverTrigger=PopoverPrimitive__namespace.Trigger;var PopoverContent=React8__namespace.forwardRef(function({align="center",sideOffset=4,container,className,style,...props},ref){let componentAttributes=useMonkeysComponentAttributes(),fallbackContainer=typeof document<"u"?(()=>{let activeDialog=document.activeElement?.closest("[data-monkeys-dialog-content]");return activeDialog||Array.from(document.querySelectorAll('[data-monkeys-dialog-content][data-state="open"]')).at(-1)})():void 0;return jsxRuntime.jsx(PopoverPrimitive__namespace.Portal,{container:container??fallbackContainer,children:jsxRuntime.jsx(PopoverPrimitive__namespace.Content,{...componentAttributes,...props,ref,align,sideOffset,"data-monkeys-component":"popover","data-slot":"content","data-surface":"menu",className:cn("z-50 w-72 border p-4 outline-hidden",getOverlaySurfaceClassName("menu"),"data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2","data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",className),style:{pointerEvents:"auto",...style}})})});PopoverContent.displayName=PopoverPrimitive__namespace.Content.displayName;var Label3=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(LabelPrimitive__namespace.Root,{ref,className:cn("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",className),...props}));Label3.displayName=LabelPrimitive__namespace.Root.displayName;var Sheet=DialogPrimitive2__namespace.Root,SheetTrigger=DialogPrimitive2__namespace.Trigger;var SheetPortal=DialogPrimitive2__namespace.Portal,SheetOverlay=React8__namespace.forwardRef(({className,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsx(DialogPrimitive2__namespace.Overlay,{...componentAttributes,...props,ref,"data-monkeys-component":"sheet","data-slot":"overlay","data-monkeys-overlay":true,className:cn("theme-overlay-backdrop fixed inset-0 z-50 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",className)})});SheetOverlay.displayName="SheetOverlay";var sideClassNames={top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm"},SheetContent=React8__namespace.forwardRef(({side="right",className,children,...props},ref)=>{let componentAttributes=useMonkeysComponentAttributes();return jsxRuntime.jsxs(SheetPortal,{children:[jsxRuntime.jsx(SheetOverlay,{}),jsxRuntime.jsxs(DialogPrimitive2__namespace.Content,{...componentAttributes,...props,ref,"data-monkeys-component":"sheet","data-slot":"content","data-surface":"dialog","data-monkeys-dialog-content":true,className:cn("fixed z-50 gap-4 p-6 transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",getOverlaySurfaceClassName("dialog",{rounded:false}),sideClassNames[side],className),children:[jsxRuntime.jsxs(DialogPrimitive2__namespace.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-dialog-surface transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[jsxRuntime.jsx("svg",{"aria-hidden":"true",className:"h-4 w-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:jsxRuntime.jsx("path",{d:"M18 6 6 18M6 6l12 12"})}),jsxRuntime.jsx("span",{className:"sr-only",children:"Close"})]}),jsxRuntime.jsx(BentoScope,{children})]})]})});SheetContent.displayName="SheetContent";var SheetTitle=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogPrimitive2__namespace.Title,{ref,className:cn("text-lg font-semibold text-foreground",className),...props}));SheetTitle.displayName="SheetTitle";var SheetDescription=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx(DialogPrimitive2__namespace.Description,{ref,className:cn("text-sm text-muted-foreground",className),...props}));SheetDescription.displayName="SheetDescription";var Table=React8__namespace.forwardRef(({className,container=true,containerClassName,containerProps,density="compact",...props},ref)=>{let table=jsxRuntime.jsx("table",{ref,"data-density":density,className:cn("w-full caption-bottom text-sm",className),...props});if(!container)return table;let{className:nestedClassName,...rest}=containerProps??{};return jsxRuntime.jsx("div",{className:cn("relative w-full overflow-auto",containerClassName,nestedClassName),...rest,children:table})});Table.displayName="Table";var TableHeader=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("thead",{ref,className:cn("[&_tr]:border-b",className),...props}));TableHeader.displayName="TableHeader";var TableBody=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("tbody",{ref,className:cn("[&_tr:last-child]:border-0",className),...props}));TableBody.displayName="TableBody";var TableFooter=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("tfoot",{ref,className:cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",className),...props}));TableFooter.displayName="TableFooter";var TableRow=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("tr",{ref,className:cn("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",className),...props}));TableRow.displayName="TableRow";var TableHead=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("th",{ref,className:cn("h-10 px-2 text-left align-middle font-medium text-muted-foreground [[data-density=comfortable]_&]:h-12 [[data-density=comfortable]_&]:px-4 [&:has([role=checkbox])]:pr-0",className),...props}));TableHead.displayName="TableHead";var TableCell=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("td",{ref,className:cn("p-2 align-middle [[data-density=comfortable]_&]:p-4 [&:has([role=checkbox])]:pr-0",className),...props}));TableCell.displayName="TableCell";var TableCaption=React8__namespace.forwardRef(({className,...props},ref)=>jsxRuntime.jsx("caption",{ref,className:cn("mt-4 text-sm text-muted-foreground",className),...props}));TableCaption.displayName="TableCaption";function WorkbenchGalleryCardSurface({children,title,presentation,renderSlot}){let config=presentation.title,placement=config?.placement??"none",TitleContent=config?.background==="panel"?"div":"span",slots=(presentation.slots??[]).map(slot=>({slot,content:renderSlot?.(slot)})).filter(entry=>entry.content!=null),titleNode=placement==="none"?null:jsxRuntime.jsx("div",{className:"monkeys-gallery-cover-title",title:typeof title=="string"||typeof title=="number"?String(title):void 0,"data-placement":placement,"data-background":config?.background??(placement.startsWith("overlay")?"gradient":"none"),style:{...config?.background==="panel"?{margin:12,borderRadius:"var(--radius)",border:"1px solid hsl(var(--border) / .8)",background:"hsl(var(--card) / .9)",backdropFilter:"blur(12px)",boxShadow:"var(--monkeys-component-overlay-dialog-shadow)"}:{},textAlign:config?.align??"left",padding:config?.padding??12,fontSize:`var(--monkeys-gallery-title-${config?.size??"md"})`,fontWeight:config?.weight==="normal"?400:config?.weight==="medium"?500:600},children:jsxRuntime.jsx(TitleContent,{style:{display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:config?.background==="panel"?void 0:config?.maxLines??2,overflow:"hidden"},children:title})}),band=row2=>jsxRuntime.jsx("div",{className:"monkeys-gallery-slot-row","data-row":row2,children:slots.filter(({slot})=>slot.position.startsWith(row2)).map(({slot,content})=>jsxRuntime.jsx("div",{"data-card-slot":slot.position,"data-visibility":slot.visibility??"always",className:slot.visibility==="hover"?"monkeys-gallery-hover-actions":void 0,style:{gridColumn:slot.position.endsWith("left")?1:slot.position.endsWith("center")?2:3,justifySelf:slot.position.endsWith("left")?"start":slot.position.endsWith("center")?"center":"end",padding:slot.inset??12,gap:slot.gap??8,flexDirection:slot.direction==="vertical"?"column":"row"},children:content},slot.position))});return jsxRuntime.jsxs("div",{className:"monkeys-gallery-card-surface","data-hover-effect":presentation.hover?.effect??"none",style:{"--monkeys-gallery-hover-scale":presentation.hover?.scale??1.02},children:[placement==="above"&&titleNode,jsxRuntime.jsxs("div",{className:"monkeys-gallery-media-card",children:[jsxRuntime.jsx("div",{className:"monkeys-gallery-card-media",children}),jsxRuntime.jsxs("div",{className:"monkeys-gallery-card-overlay",children:[jsxRuntime.jsxs("div",{children:[placement==="overlay-top"&&titleNode,band("top")]}),band("middle"),jsxRuntime.jsxs("div",{children:[band("bottom"),placement==="overlay-bottom"&&titleNode]})]})]}),placement==="below"&&titleNode]})}var imageExtPattern=/\.(png|jpe?g|webp|gif|svg|bmp|avif)$/i,audioExtPattern=/\.(wav|mp3|ogg|m4a|flac|aac)$/i,isLikelyUrl=value=>/^https?:\/\//i.test(String(value||"")),getColumnRenderKind=column=>String(column?.renderType||column?.type||"").toLowerCase(),isImageLikeValue=value=>String(value||"").startsWith("data:image/")||imageExtPattern.test(String(value||"")),isAudioLikeValue=value=>String(value||"").startsWith("data:audio/")||audioExtPattern.test(String(value||"")),escapeSvgText=value=>String(value||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"),getDefaultGalleryFieldValue=(column,row2)=>column?row2?.[column.key]??null:null,getDefaultGalleryDisplayText=value=>{if(value==null||value==="")return "\u2014";if(Array.isArray(value))return value.map(item=>{if(typeof item=="string")return item;if(!item||typeof item!="object")return "";let objectItem=item;return objectItem.text||objectItem.label||objectItem.title||objectItem.display||objectItem.value||objectItem.recordId||""}).filter(Boolean).join(" \xB7 ")||"\u2014";if(typeof value=="object"){let objectValue=value;return String(objectValue.text||objectValue.label||objectValue.title||objectValue.display||objectValue.value||"\u2014")}return String(value)},isDefaultGalleryImageField=(column={key:""},value)=>getColumnRenderKind(column)==="image"||isImageLikeValue(value),isDefaultGalleryAudioField=(column={key:""},value)=>getColumnRenderKind(column)==="audio"||isAudioLikeValue(value),getDefaultGalleryImagePreviewSrc=(value,rowId,columnLabel)=>{if(isLikelyUrl(value)||String(value||"").startsWith("data:image/"))return String(value);let title=escapeSvgText(value||columnLabel||rowId||""),svg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 960 540'><defs><linearGradient id='g' x1='0' y1='0' x2='1' y2='1'><stop offset='0%' stop-color='#0f172a'/><stop offset='55%' stop-color='#1d4ed8'/><stop offset='100%' stop-color='#14b8a6'/></linearGradient></defs><rect width='960' height='540' fill='url(#g)'/><g opacity='0.28'><circle cx='780' cy='130' r='150' fill='#67e8f9'/><circle cx='180' cy='430' r='170' fill='#a78bfa'/></g>${title?`<text x='68' y='450' fill='white' font-family='Inter, Arial' font-size='52' font-weight='700'>${title}</text>`:""}</svg>`;return `data:image/svg+xml;utf8,${encodeURIComponent(svg)}`},isDefaultGalleryMediaColumn=(column,row2,{getFieldValue=getDefaultGalleryFieldValue,shouldEnhanceMultimodal=true,isImageField=isDefaultGalleryImageField,isAudioField=isDefaultGalleryAudioField}={})=>{if(!column||!shouldEnhanceMultimodal)return false;let value=getFieldValue(column,row2);return isImageField(column,value)||isAudioField(column,value)},isDefaultGalleryTitleCandidate=(column,row2,{isMediaColumn=()=>false}={})=>!column||column.renderType==="icon"?false:!isMediaColumn(column,row2),isDefaultGallerySummaryCandidate=(column,row2,{isMediaColumn=()=>false}={})=>!column||column.renderType==="icon"?false:!isMediaColumn(column,row2),renderDefaultGalleryFieldValue=(column,row2,{compact=false,getFieldValue=getDefaultGalleryFieldValue,getDisplayText=getDefaultGalleryDisplayText}={})=>{let value=getFieldValue(column,row2);return jsxRuntime.jsx("span",{className:cn("leading-relaxed",compact&&column?.wrap===true&&"line-clamp-2 block"),children:getDisplayText(value)})};function isWorkbenchIconComponent(icon){return typeof icon=="function"?true:typeof icon=="object"&&icon!==null&&!React8.isValidElement(icon)&&"$$typeof"in icon}function renderWorkbenchIcon(icon,className){return icon?React8.isValidElement(icon)?icon:isWorkbenchIconComponent(icon)?jsxRuntime.jsx(icon,{className}):icon:null}function getWorkbenchIconComponent(icon){return !icon||!isWorkbenchIconComponent(icon)?null:icon}var getDefaultGalleryDetailLimit=density=>density==="compact"?2:density==="detailed"?6:4,getNormalizedGalleryBentoColumns=(columns,density)=>columns===1||columns===2||columns===3?Number(columns):density==="detailed"?1:2,getNormalizedGalleryDetailLimit=({density,visibility,limit})=>{if(visibility==="all")return Number.POSITIVE_INFINITY;let parsedLimit=Number.parseInt(String(limit),10);return Number.isFinite(parsedLimit)&&parsedLimit>0?parsedLimit:getDefaultGalleryDetailLimit(density)},getGalleryCardPaddingClassName=density=>density==="compact"?"p-3":density==="detailed"?"p-4":"p-3.5",getGalleryPreviewClassName=(density,isMasonry)=>isMasonry?"h-auto w-full object-cover":density==="compact"?"h-32 w-full object-cover":density==="detailed"?"h-48 w-full object-cover":"h-40 w-full object-cover",getGalleryDetailGridClassName=columns=>columns===1?"grid-cols-1":columns===3?"grid-cols-1 sm:grid-cols-2 2xl:grid-cols-3":"grid-cols-1 sm:grid-cols-2";function getIconComponent(icon){return getWorkbenchIconComponent(icon)}function defaultFormatLabel(value){return value}function getLabelText(value){return typeof value=="string"||typeof value=="number"?String(value):""}function WorkbenchGalleryCard({row:row2,columns,onClick,cardInteraction="button",cardPresentation,renderCardSlot,renderCoverTitle,isSelected=false,isMasonry=false,galleryFieldKey="auto",galleryDensity="comfortable",galleryBentoColumns,galleryDetailVisibility="limit",galleryDetailLimit,galleryDetailPresentation="tiles",shouldEnhanceMultimodal=true,getFieldValue,isMediaColumn,isTitleCandidate,isSummaryCandidate,getDisplayText,renderFieldValue,getImagePreviewSrc,isImageField,isAudioField,AudioPlayerComponent,cardVariant="default",renderPreview,renderMeta,renderLeadingVisual,resolveRecordVisual,hiddenDetailFieldKeys=[],labels,formatLabel=defaultFormatLabel,className}){let resolvedGetFieldValue=getFieldValue||getDefaultGalleryFieldValue,resolvedGetDisplayText=getDisplayText||getDefaultGalleryDisplayText,resolvedIsImageField=isImageField||isDefaultGalleryImageField,resolvedIsAudioField=isAudioField||isDefaultGalleryAudioField,resolvedGetImagePreviewSrc=getImagePreviewSrc||getDefaultGalleryImagePreviewSrc,resolvedIsMediaColumn=isMediaColumn||((column,candidateRow)=>isDefaultGalleryMediaColumn(column,candidateRow,{getFieldValue:resolvedGetFieldValue,shouldEnhanceMultimodal,isImageField:resolvedIsImageField,isAudioField:resolvedIsAudioField})),resolvedIsTitleCandidate=isTitleCandidate||((column,candidateRow)=>isDefaultGalleryTitleCandidate(column,candidateRow,{isMediaColumn:resolvedIsMediaColumn})),resolvedIsSummaryCandidate=isSummaryCandidate||((column,candidateRow)=>isDefaultGallerySummaryCandidate(column,candidateRow,{isMediaColumn:resolvedIsMediaColumn})),resolvedRenderFieldValue=renderFieldValue||((column,candidateRow,{compact}={})=>renderDefaultGalleryFieldValue(column,candidateRow,{compact,getFieldValue:resolvedGetFieldValue,getDisplayText:resolvedGetDisplayText})),isPreviewOnly=cardVariant==="preview-only",isImageOnly=cardVariant==="image-only",isChromaticBento=cardVariant==="chromatic-bento",mediaColumn=(galleryFieldKey!=="auto"?columns.find(column=>column.key===galleryFieldKey&&resolvedIsMediaColumn(column,row2)):null)||(shouldEnhanceMultimodal?columns.find(column=>resolvedIsMediaColumn(column,row2)):null),iconColumn=columns.find(column=>column.renderType==="icon"),iconVisual=iconColumn&&resolveRecordVisual?resolveRecordVisual(row2[iconColumn.key],row2,iconColumn):null,IconComponent=getIconComponent(iconVisual?.Icon||iconVisual?.icon),mediaValue=mediaColumn?resolvedGetFieldValue(mediaColumn,row2):null,isImageMedia=mediaColumn?resolvedIsImageField(mediaColumn,mediaValue):false,isAudioMedia=mediaColumn?resolvedIsAudioField(mediaColumn,mediaValue):false,contentColumns=columns.filter(column=>column.key!==mediaColumn?.key&&column.renderType!=="icon"),titleColumn=contentColumns.filter(column=>{if(!column||resolvedIsMediaColumn(column,row2)||!resolvedIsTitleCandidate(column,row2))return false;let value=resolvedGetFieldValue(column,row2);return !(value==null||value==="")})[0]||null,titleText=resolvedGetDisplayText(titleColumn?resolvedGetFieldValue(titleColumn,row2):row2.linkKey||row2.id),summaries=contentColumns.filter(column=>column&&column.key!==titleColumn?.key&&!resolvedIsMediaColumn(column,row2)&&resolvedIsSummaryCandidate(column,row2)).map(column=>({column,text:String(resolvedGetDisplayText(resolvedGetFieldValue(column,row2)))})),summaryColumn=(summaries.find(({text:text10})=>text10!=="\u2014"&&text10.length>12)||summaries.find(({text:text10})=>text10!=="\u2014"))?.column||null,summaryText=summaryColumn?resolvedGetDisplayText(resolvedGetFieldValue(summaryColumn,row2)):"",hiddenDetailKeySet=new Set(hiddenDetailFieldKeys),detailColumns=contentColumns.filter(column=>column.key!==titleColumn?.key&&column.key!==summaryColumn?.key&&!hiddenDetailKeySet.has(column.key)),resolvedDetailLimit=getNormalizedGalleryDetailLimit({density:galleryDensity,visibility:galleryDetailVisibility,limit:galleryDetailLimit}),visibleDetailColumns=Number.isFinite(resolvedDetailLimit)?detailColumns.slice(0,resolvedDetailLimit):detailColumns,isDetailedCard=galleryDensity==="detailed",resolvedBentoColumns=getNormalizedGalleryBentoColumns(galleryBentoColumns,galleryDensity),cardPaddingClassName=getGalleryCardPaddingClassName(galleryDensity),detailGridClassName=getGalleryDetailGridClassName(resolvedBentoColumns),lineDetails=galleryDetailPresentation==="lines",previewClassName=isImageOnly?cardPresentation?"block h-auto w-full":"block h-auto w-full transition-transform duration-500 group-hover:scale-[1.02]":getGalleryPreviewClassName(galleryDensity,isMasonry),customPreview=typeof renderPreview=="function"?renderPreview({row:row2,mediaColumn,mediaValue,isImageMedia,isAudioMedia,iconVisual,IconComponent,previewClassName}):null,metaContext={row:row2,contentColumns,detailColumns,titleColumn,summaryColumn,getDisplayText:resolvedGetDisplayText,getFieldValue:resolvedGetFieldValue},metaContent=renderMeta?.(metaContext)??null,customLeadingVisual=renderLeadingVisual?.({...metaContext,iconVisual})??null,defaultLeadingVisual=!customLeadingVisual&&iconVisual?jsxRuntime.jsx("div",{className:cn("flex h-9 w-9 items-center justify-center rounded-lg border",iconVisual.chipClassName||"border-primary/20 bg-primary/10 text-primary"),children:renderWorkbenchIcon(iconVisual.Icon||iconVisual.icon,cn("h-4 w-4",iconVisual.iconClassName||"text-primary"))}):null,leadingVisual=customLeadingVisual||defaultLeadingVisual,defaultMetaClassName=isChromaticBento?"shrink-0 rounded-full border border-border/40 bg-muted/25 px-2.5 py-1 text-[10px] text-muted-foreground transition-all duration-300 group-hover:border-primary/30 group-hover:bg-primary/10 group-hover:text-primary dark:border-border/35 dark:bg-muted/15":"shrink-0 rounded-md border border-border/40 bg-muted/25 px-2 py-1 text-[10px] text-muted-foreground dark:border-border/35 dark:bg-muted/15",detailCellClassName=isChromaticBento?"rounded-xl border border-border/35 bg-muted/20 px-3 py-2.5 transition-all duration-300 group-hover:border-primary/25 group-hover:bg-primary/5 dark:border-border/30 dark:bg-muted/10":"rounded-lg border border-border/35 bg-muted/20 px-2.5 py-2 dark:border-border/30 dark:bg-muted/10",detailLabelClassName=isChromaticBento?"text-[10px] uppercase tracking-[0.14em] text-muted-foreground transition-colors duration-300 group-hover:text-foreground":"text-[10px] uppercase tracking-[0.12em] text-muted-foreground",detailValueClassName=isChromaticBento?"mt-1.5 text-[11px] text-muted-foreground transition-colors duration-300 group-hover:text-foreground [&_*]:max-w-full [&_pre]:text-[11px] [&_pre]:leading-relaxed":"mt-1.5 text-[11px] text-foreground [&_*]:max-w-full [&_pre]:text-[11px] [&_pre]:leading-relaxed",fieldCountLabel=labels?.fieldCount?.(contentColumns.length),coverOnlyHint=labels?.coverOnlyHint,previewImageSrc=customPreview==null&&isImageMedia&&mediaColumn?resolvedGetImagePreviewSrc(mediaValue,row2.id,mediaColumn.label):void 0,preview=customPreview??jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[isImageMedia&&mediaColumn?jsxRuntime.jsx("div",{className:cn("overflow-hidden bg-card/50",isImageOnly?"rounded-[inherit] bg-transparent":isPreviewOnly?"rounded-[inherit]":"mb-3 rounded-lg border border-border/70"),children:jsxRuntime.jsx("img",{src:previewImageSrc,style:svgPreviewSurface(previewImageSrc),alt:typeof mediaValue?.alt=="string"?mediaValue.alt:typeof mediaValue=="string"?mediaValue:String(mediaColumn.label||""),className:previewClassName,loading:"lazy",referrerPolicy:"no-referrer",onError:event=>{event.currentTarget.onerror=null,event.currentTarget.src=resolvedGetImagePreviewSrc("",row2.id,mediaColumn.label);}})}):null,!isImageMedia&&iconVisual&&isPreviewOnly?jsxRuntime.jsx("div",{className:cn("flex items-center justify-center","rounded-[inherit] border py-10",iconVisual.chipClassName||"border-primary/20 bg-primary/5"),children:renderWorkbenchIcon(iconVisual.Icon||iconVisual.icon,cn("h-10 w-10",iconVisual.iconClassName||"text-primary"))}):null,isAudioMedia&&AudioPlayerComponent?jsxRuntime.jsx("div",{className:cn(!isPreviewOnly&&"mb-3"),children:jsxRuntime.jsx(AudioPlayerComponent,{filename:String(mediaValue)})}):null]}),Surface=cardPresentation?WorkbenchGalleryCardSurface:null,surfaceTitleColumn=cardPresentation?.title?.fieldId?columns.find(column=>column.key===cardPresentation.title?.fieldId):titleColumn,surfaceTitle=renderCoverTitle?renderCoverTitle(row2):surfaceTitleColumn?resolvedGetDisplayText(resolvedGetFieldValue(surfaceTitleColumn,row2)):titleText,hasSlots=!!cardPresentation?.slots?.length,Root29=hasSlots||cardInteraction==="container"?"div":"button";return jsxRuntime.jsxs(Root29,{"data-gallery-card":true,"data-card-hover-effect":cardPresentation?.hover?.effect,type:Root29==="button"?"button":void 0,role:hasSlots&&cardInteraction==="button"&&onClick?"group":void 0,tabIndex:hasSlots&&cardInteraction==="button"&&onClick?0:void 0,onKeyDown:hasSlots&&cardInteraction==="button"&&onClick?event=>{event.target===event.currentTarget&&(event.key==="Enter"||event.key===" ")&&(event.preventDefault(),onClick());}:void 0,onClick:cardInteraction==="button"?event=>{(!hasSlots||!event.target.closest("button,a,input,select,textarea,[role=button],[role=menuitem]"))&&onClick?.();}:void 0,"aria-label":getLabelText(titleText),className:cn("group relative w-full rounded-lg text-left transition-all duration-300",isImageOnly?"overflow-hidden bg-transparent p-0 shadow-none":isPreviewOnly?"overflow-hidden bg-transparent p-0":cn("overflow-hidden border",isChromaticBento&&"shadow-none"),!isPreviewOnly&&!isImageOnly&&cardPaddingClassName,!isPreviewOnly&&!isImageOnly&&(isSelected?isChromaticBento?"border-primary/35 bg-background/85 ring-1 ring-primary/20":"border-primary/40 bg-primary/10 ring-1 ring-primary/30":isChromaticBento?cardPresentation?"workbench-surface-card":"workbench-surface-card hover:-translate-y-1 hover:border-primary/20":cardPresentation?"workbench-surface-card":"workbench-surface-card hover:border-primary/30"),isPreviewOnly&&isSelected&&"ring-1 ring-primary/30",isImageOnly&&(isSelected?"ring-1 ring-primary/30":!cardPresentation&&"hover:-translate-y-0.5"),isMasonry?"block h-full w-full min-w-0":"h-full min-w-0",className),children:[isChromaticBento?jsxRuntime.jsx("div",{"aria-hidden":"true",className:cn("pointer-events-none absolute inset-0 bg-[radial-gradient(circle_at_top_right,hsl(var(--primary)/0.18),transparent_40%),radial-gradient(circle_at_bottom_left,hsl(var(--accent)/0.18),transparent_45%)] opacity-0 transition-opacity duration-300",isSelected?"opacity-100":"group-hover:opacity-100")}):null,jsxRuntime.jsxs("div",{className:cn("relative z-[1]",(isImageOnly||isPreviewOnly)&&"rounded-[inherit]"),children:[Surface&&cardPresentation?jsxRuntime.jsx(Surface,{presentation:cardPresentation,title:surfaceTitle,renderSlot:slot=>renderCardSlot?.(slot,metaContext),children:preview}):preview,!isPreviewOnly&&!isImageOnly?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-3",children:[leadingVisual?jsxRuntime.jsx("div",{className:"shrink-0",children:leadingVisual}):null,jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-1 items-start justify-between gap-3",children:[jsxRuntime.jsxs("div",{className:"min-w-0 flex-1",children:[!cardPresentation?.title&&jsxRuntime.jsx("div",{className:cn("flex items-center gap-2 text-sm font-semibold",isChromaticBento?"text-muted-foreground transition-colors duration-300 group-hover:text-foreground":"text-foreground"),children:jsxRuntime.jsx("span",{className:"truncate",children:cardInteraction==="container"&&onClick?jsxRuntime.jsx("button",{type:"button",onClick,className:"border-0 bg-transparent p-0 text-left hover:underline",style:{font:"inherit",color:"inherit"},children:titleText}):titleText})}),summaryText&&summaryText!==titleText?jsxRuntime.jsx("div",{className:cn("mt-1 text-[11px] leading-5 text-muted-foreground",isDetailedCard?"line-clamp-4":"line-clamp-2",isChromaticBento&&"transition-colors duration-300 group-hover:text-foreground"),children:summaryText}):null]}),metaContent??(hasRenderableNode(fieldCountLabel)?jsxRuntime.jsx("span",{className:defaultMetaClassName,children:fieldCountLabel}):null)]})]}),visibleDetailColumns.length>0?jsxRuntime.jsx("div",{"data-gallery-detail-presentation":galleryDetailPresentation,className:cn("mt-3 grid grid-flow-row gap-2",lineDetails?"grid-cols-1":detailGridClassName),children:visibleDetailColumns.map(column=>jsxRuntime.jsxs("div",{className:lineDetails?"flex min-w-0 items-start gap-2 text-xs":detailCellClassName,children:[column.label?jsxRuntime.jsx("div",{className:lineDetails?"shrink-0 text-muted-foreground":detailLabelClassName,children:formatLabel(column.label,{column})}):null,jsxRuntime.jsx("div",{className:lineDetails?"min-w-0 text-foreground":cn(detailValueClassName,!column.label&&"mt-0"),children:resolvedRenderFieldValue(column,row2,{compact:galleryDensity!=="detailed",surface:"gallery"})})]},`${row2.id||row2.linkKey}-${column.key}`))}):null,!titleColumn&&!summaryText&&visibleDetailColumns.length===0&&hasRenderableNode(coverOnlyHint)?jsxRuntime.jsx("div",{className:cn("mt-3 text-[11px] text-muted-foreground",isChromaticBento&&"transition-colors duration-300 group-hover:text-foreground"),children:coverOnlyHint}):null]}):null]})]})}function placeWindowedItems(heights,columns,width,gap,mode){let bottoms=Array.from({length:columns},()=>0),rowTop=0,rowHeight=0,placements=heights.map((height,index)=>{if(mode==="rail")return {index,left:index*(width+gap),top:0,width,height};if(mode==="grid")return index>0&&index%columns===0&&(rowTop+=rowHeight+gap,rowHeight=0),rowHeight=Math.max(rowHeight,height),{index,left:index%columns*(width+gap),top:rowTop,width,height};let column=bottoms.indexOf(Math.min(...bottoms)),top=bottoms[column];return bottoms[column]=top+height+gap,{index,left:column*(width+gap),top,width,height}});return {placements,height:Math.max(0,...placements.map(item=>item.top+item.height)),width:mode==="rail"?Math.max(0,heights.length*(width+gap)-gap):columns*(width+gap)-gap}}function visibleWindow(placements,start,length,horizontal,overscan){let low=start-overscan,high=start+length+overscan;return placements.filter(item=>{let offset2=horizontal?item.left:item.top;return offset2<=high&&offset2+(horizontal?item.width:item.height)>=low})}function WorkbenchWindowedLayout({items,getKey,layout,cardWidth,estimateHeight,getScrollOwner,railRef,tailRef,containerProps,getItemProps,renderItem}){let horizontal=layout.mode==="rail",columns=horizontal?1:layout.columnCount,width=Math.max(1,horizontal?cardWidth??280:layout.columnWidth),rootRef=React8.useRef(null),nodes=React8.useRef(new Map),observer=React8.useRef(),[measurements,setMeasurements]=React8.useState({width,heights:{}}),[viewport,setViewport]=React8.useState({start:0,length:horizontal?1280:720}),[focused,setFocused]=React8.useState(),[requestedFocus,setRequestedFocus]=React8.useState(),keys=items.map(getKey),signature=JSON.stringify(keys),heights=keys.map((key3,index)=>measurements.heights[key3]??Math.max(1,estimateHeight(items[index],width))),geometry=React8.useMemo(()=>placeWindowedItems(heights,columns,width,layout.gap,horizontal?"rail":layout.mode==="grid"?"grid":"masonry"),[JSON.stringify(heights),columns,width,layout.gap,horizontal,layout.mode]),updateViewport=React8.useCallback(()=>{let node=rootRef.current,owner=getScrollOwner();if(!node||!owner)return;let rootBounds=node.getBoundingClientRect(),ownerBounds=owner.getBoundingClientRect(),start=horizontal?owner.scrollLeft:ownerBounds.top+owner.clientTop-rootBounds.top,length=horizontal?owner.clientWidth:owner.clientHeight;length<=0||setViewport(previous=>previous.start===start&&previous.length===length?previous:{start,length});},[getScrollOwner,horizontal]);React8.useLayoutEffect(()=>{updateViewport();},[updateViewport,geometry.height,geometry.width]),React8.useEffect(()=>{let owner=getScrollOwner();if(!owner)return;let frame=0,update=()=>{frame||(frame=requestAnimationFrame(()=>{frame=0,updateViewport();}));};owner.addEventListener("scroll",update,{passive:true}),window.addEventListener("resize",update);let resize=typeof ResizeObserver=="function"?new ResizeObserver(update):void 0;return resize?.observe(owner),rootRef.current&&resize?.observe(rootRef.current),()=>{owner.removeEventListener("scroll",update),window.removeEventListener("resize",update),resize?.disconnect(),cancelAnimationFrame(frame);}},[getScrollOwner,updateViewport]),React8.useEffect(()=>{if(typeof ResizeObserver!="function")return;let resize=new ResizeObserver(entries=>{setMeasurements(previous=>{let next={...previous.heights},changed=previous.width!==width;for(let entry of entries){let key3=entry.target.dataset.windowKey,height=entry.target.getBoundingClientRect().height;key3!==void 0&&height>0&&next[key3]!==height&&(next[key3]=height,changed=true);}return changed?{width,heights:next}:previous});});return observer.current=resize,nodes.current.forEach(node=>resize.observe(node)),()=>{resize.disconnect(),observer.current=void 0;}},[width]),React8.useEffect(()=>{let liveKeys=new Set(keys);setMeasurements(previous=>({width:previous.width,heights:Object.fromEntries(Object.entries(previous.heights).filter(([key3])=>liveKeys.has(key3)))}));},[signature]);let register=(key3,node)=>{let previous=nodes.current.get(key3);if(previous&&observer.current?.unobserve(previous),!node){nodes.current.delete(key3);return}node.dataset.windowKey=key3,nodes.current.set(key3,node),observer.current?.observe(node);},overscan=viewport.length,visible=visibleWindow(geometry.placements,viewport.start,viewport.length,horizontal,overscan),mounted=new Set(visible.map(item=>item.index));for(let key3 of [focused,requestedFocus]){let index=key3===void 0?-1:keys.indexOf(key3);index>=0&&mounted.add(index);}React8.useLayoutEffect(()=>{if(!requestedFocus)return;let node=nodes.current.get(requestedFocus)?.parentElement;node&&(node.focus(),node.scrollIntoView({block:"nearest",inline:"nearest"}),setRequestedFocus(void 0));},[requestedFocus]);let itemContext={...layout,columnWidth:width,itemWidth:width};return jsxRuntime.jsxs("div",{...containerProps,ref:node=>{rootRef.current=node,railRef&&(railRef.current=node);},"data-collection-windowed":"","data-collection-total":items.length,style:{...containerProps.style,position:"relative",...horizontal?{overflowX:"auto",height:geometry.height+12}:{height:geometry.height},overflowAnchor:"none"},children:[horizontal?jsxRuntime.jsx("div",{"aria-hidden":"true",style:{width:geometry.width,height:1,pointerEvents:"none"}}):null,Array.from(mounted).sort((a,b)=>a-b).map(index=>{let item=items[index],key3=keys[index],position=geometry.placements[index],props=getItemProps(item,itemContext);return jsxRuntime.jsx("div",{...props,"aria-posinset":index+1,"aria-setsize":items.length,onFocus:event=>{setFocused(key3),props.onFocus?.(event);},onBlur:event=>{event.currentTarget.contains(event.relatedTarget)||setFocused(void 0),props.onBlur?.(event);},onKeyDown:event=>{if(event.target===event.currentTarget){let step=horizontal?1:columns,next=event.key==="Home"?0:event.key==="End"?items.length-1:event.key==="ArrowRight"?index+1:event.key==="ArrowLeft"?index-1:event.key==="ArrowDown"?index+step:event.key==="ArrowUp"?index-step:void 0;if(next!==void 0){event.preventDefault(),setRequestedFocus(keys[Math.min(items.length-1,Math.max(0,next))]);return}}props.onKeyDown?.(event);},style:{...props.style,position:"absolute",left:position.left,top:position.top,width:position.width},children:jsxRuntime.jsx("div",{ref:node=>register(key3,node),children:renderItem(item,itemContext)})},key3)}),tailRef?jsxRuntime.jsx("div",{ref:tailRef,"aria-hidden":"true",style:{position:"absolute",left:Math.max(0,geometry.width-1),top:0,width:1,height:1}}):null]})}var DEFAULT_MASONRY_GAP_PX=12,DEFAULT_MASONRY_ROW_HEIGHT_PX=8,DEFAULT_MASONRY_COLUMN_WIDTH_PX=280,DEFAULT_MASONRY_ITEM_HEIGHT_PX=240,useIsomorphicLayoutEffect=typeof window>"u"?React8.useEffect:React8.useLayoutEffect;function clamp2(value,min,max){return Math.min(Math.max(value,min),max)}function getRootFontSize(node){if(typeof window>"u")return 16;let target=node||document.documentElement,parsed=Number.parseFloat(window.getComputedStyle(target).fontSize);return Number.isFinite(parsed)&&parsed>0?parsed:16}function resolveLengthToPixels(value,fallback2,node){if(typeof value=="number"&&Number.isFinite(value)&&value>0)return value;if(typeof value!="string")return fallback2;let normalized=value.trim().toLowerCase();if(!normalized)return fallback2;if(/^\d+(\.\d+)?$/.test(normalized)){let parsed=Number.parseFloat(normalized);return Number.isFinite(parsed)&&parsed>0?parsed:fallback2}if(normalized.endsWith("px")){let parsed=Number.parseFloat(normalized);return Number.isFinite(parsed)&&parsed>0?parsed:fallback2}if(normalized.endsWith("rem")){let parsed=Number.parseFloat(normalized);return !Number.isFinite(parsed)||parsed<=0?fallback2:parsed*getRootFontSize(node)}return fallback2}function areMeasurementMapsEqual(prev,next){let prevKeys=Object.keys(prev),nextKeys=Object.keys(next);if(prevKeys.length!==nextKeys.length)return false;for(let key3 of nextKeys)if(prev[key3]!==next[key3])return false;return true}function getMasonryColumnCount({containerWidth,itemCount,targetColumnWidth,gap}){if(!containerWidth)return 1;let safeItemCount=Math.max(itemCount,1),maxCandidate=Math.max(1,Math.min(safeItemCount,Math.ceil((containerWidth+gap)/(Math.max(targetColumnWidth*.58,1)+gap)))),bestCount=1,bestScore=Number.POSITIVE_INFINITY;for(let candidateCount=1;candidateCount<=maxCandidate;candidateCount+=1){let actualColumnWidth=(containerWidth-gap*Math.max(candidateCount-1,0))/candidateCount;if(!Number.isFinite(actualColumnWidth)||actualColumnWidth<=0)continue;let underflowPenalty=Math.max(0,targetColumnWidth*.78-actualColumnWidth),overflowPenalty=Math.max(0,actualColumnWidth-targetColumnWidth*1.35),candidateScore=Math.abs(actualColumnWidth-targetColumnWidth)+underflowPenalty*3+overflowPenalty*2;candidateScore<bestScore&&(bestScore=candidateScore,bestCount=candidateCount);}return bestCount}function getItemColumnSpan({size:size2,columnWidth,columnCount,gap}){if(Number.isFinite(size2?.columnSpan)&&Number(size2?.columnSpan)>0)return clamp2(Math.round(Number(size2?.columnSpan)),1,columnCount);let itemWidth=resolveLengthToPixels(size2?.width,columnWidth,null);return clamp2(Math.ceil((itemWidth+gap)/(columnWidth+gap)),1,columnCount)}function getItemRowSpan({size:size2,measuredHeight,rowHeight,gap}){if(Number.isFinite(size2?.rowSpan)&&Number(size2?.rowSpan)>0)return Math.max(1,Math.round(Number(size2?.rowSpan)));let itemHeight=Number.isFinite(measuredHeight)&&Number(measuredHeight)>0?Number(measuredHeight):resolveLengthToPixels(size2?.height,DEFAULT_MASONRY_ITEM_HEIGHT_PX,null);return Math.max(1,Math.ceil((itemHeight+gap)/(rowHeight+gap)))}function getResolvedItemHeight({size:size2,measuredHeight}){return Number.isFinite(measuredHeight)&&Number(measuredHeight)>0?Number(measuredHeight):resolveLengthToPixels(size2?.height,DEFAULT_MASONRY_ITEM_HEIGHT_PX,null)}function WorkbenchMasonryLayout({items=[],renderItem,getItemKey=(item,index)=>item?.id??item?.key??index,getItemSize,columnWidth=DEFAULT_MASONRY_COLUMN_WIDTH_PX,columnCount:requestedColumnCount,gap=DEFAULT_MASONRY_GAP_PX,rowHeight=DEFAULT_MASONRY_ROW_HEIGHT_PX,placementStrategy="shelf",containerProps,getItemProps,className}){let containerRef=React8.useRef(null),itemNodesRef=React8.useRef(new Map),itemObserverRef=React8.useRef(null),[containerWidth,setContainerWidth]=React8.useState(0),[measuredHeights,setMeasuredHeights]=React8.useState({}),itemKeys=React8.useMemo(()=>items.map((item,index)=>String(getItemKey(item,index))),[getItemKey,items]),itemKeysSignature=itemKeys.join("|");React8.useEffect(()=>{let node=containerRef.current;if(!node)return;let updateWidth=()=>{let nextWidth=Math.round(node.getBoundingClientRect().width);setContainerWidth(prevWidth=>prevWidth===nextWidth?prevWidth:nextWidth);};if(updateWidth(),typeof ResizeObserver=="function"){let observer=new ResizeObserver(()=>updateWidth());return observer.observe(node),()=>observer.disconnect()}return window.addEventListener("resize",updateWidth),()=>window.removeEventListener("resize",updateWidth)},[]),React8.useEffect(()=>{setMeasuredHeights(prev=>{let currentItemKeys=new Set(itemKeys),next=Object.fromEntries(Object.entries(prev).filter(([key3])=>currentItemKeys.has(key3)));return areMeasurementMapsEqual(prev,next)?prev:next});},[itemKeys,itemKeysSignature]);let resolvedTargetColumnWidth=resolveLengthToPixels(columnWidth,DEFAULT_MASONRY_COLUMN_WIDTH_PX,containerRef.current),isDensePlacement=placementStrategy==="dense",columnCount=(Number.isFinite(requestedColumnCount)&&Number(requestedColumnCount)>0?clamp2(Math.round(Number(requestedColumnCount)),1,24):void 0)||getMasonryColumnCount({containerWidth,itemCount:items.length,targetColumnWidth:resolvedTargetColumnWidth,gap}),resolvedColumnWidth=containerWidth>0?(containerWidth-gap*Math.max(columnCount-1,0))/columnCount:resolvedTargetColumnWidth,layoutItems=React8.useMemo(()=>items.map((item,index)=>{let key3=itemKeys[index],size2=typeof getItemSize=="function"?getItemSize(item,{columnCount,columnWidth:resolvedColumnWidth,containerWidth,gap,placementStrategy,rowHeight})||{}:{};return {key:key3,item,size:size2,columnSpan:getItemColumnSpan({size:size2,columnWidth:resolvedColumnWidth,columnCount,gap}),rowSpan:getItemRowSpan({size:size2,measuredHeight:measuredHeights[key3],rowHeight,gap})}}),[columnCount,containerWidth,gap,getItemSize,itemKeys,items,measuredHeights,placementStrategy,resolvedColumnWidth,rowHeight]);useIsomorphicLayoutEffect(()=>{let nextMeasurements={};itemNodesRef.current.forEach((node,key3)=>{let nextHeight=Math.ceil(node.getBoundingClientRect().height);Number.isFinite(nextHeight)&&nextHeight>0&&(nextMeasurements[key3]=nextHeight);}),setMeasuredHeights(prev=>{if(!Object.keys(nextMeasurements).length)return prev;let merged={...prev,...nextMeasurements};return areMeasurementMapsEqual(prev,merged)?prev:merged});},[columnCount,isDensePlacement,itemKeysSignature,resolvedColumnWidth]),React8.useEffect(()=>{if(typeof ResizeObserver!="function")return;let observer=new ResizeObserver(entries=>{setMeasuredHeights(prev=>{let next={...prev},didChange=false;for(let entry of entries){let key3=entry.target.dataset.masonryKey;if(!key3)continue;let nextHeight=Math.ceil(entry.contentRect.height);!Number.isFinite(nextHeight)||nextHeight<=0||next[key3]===nextHeight||(next[key3]=nextHeight,didChange=true);}return didChange?next:prev});});return itemObserverRef.current=observer,itemNodesRef.current.forEach(node=>observer.observe(node)),()=>{observer.disconnect(),itemObserverRef.current=null;}},[isDensePlacement,itemKeysSignature]);let registerItemNode=(key3,node)=>{let currentNodes=itemNodesRef.current,previousNode=currentNodes.get(key3);if(previousNode&&previousNode!==node&&itemObserverRef.current&&itemObserverRef.current.unobserve(previousNode),!node){currentNodes.delete(key3);return}node.dataset.masonryKey=key3,currentNodes.set(key3,node),itemObserverRef.current&&itemObserverRef.current.observe(node);};if(!isDensePlacement){let orderedLayout=(()=>{let columnBottoms=Array.from({length:columnCount},()=>0),nextColumnIndex=0,maxBottom=0,positionedItems=layoutItems.map(({key:key3,item,columnSpan,rowSpan,size:size2})=>{let resolvedSpan=clamp2(columnSpan,1,columnCount),startColumn=nextColumnIndex;if(placementStrategy==="shortest"){let shortestBottom=Number.POSITIVE_INFINITY;for(let candidate=0;candidate<=columnCount-resolvedSpan;candidate+=1){let candidateBottom=Math.max(...columnBottoms.slice(candidate,candidate+resolvedSpan));candidateBottom<shortestBottom&&(shortestBottom=candidateBottom,startColumn=candidate);}}else startColumn+resolvedSpan>columnCount&&(startColumn=0),startColumn=Math.min(startColumn,columnCount-resolvedSpan);let itemWidth=resolvedColumnWidth*resolvedSpan+gap*Math.max(resolvedSpan-1,0),itemHeight=getResolvedItemHeight({size:size2,measuredHeight:measuredHeights[key3]}),top=Math.max(...columnBottoms.slice(startColumn,startColumn+resolvedSpan)),left=startColumn*(resolvedColumnWidth+gap),bottom=top+itemHeight;for(let columnIndex=startColumn;columnIndex<startColumn+resolvedSpan;columnIndex+=1)columnBottoms[columnIndex]=bottom+gap;return maxBottom=Math.max(maxBottom,bottom),placementStrategy!=="shortest"&&(nextColumnIndex=startColumn+resolvedSpan,nextColumnIndex>=columnCount&&(nextColumnIndex=0)),{key:key3,item,columnSpan:resolvedSpan,itemHeight,itemWidth,left,rowSpan,size:size2,top}});return {containerHeight:Math.max(0,maxBottom),positionedItems}})();return jsxRuntime.jsx("div",{ref:containerRef,...containerProps,className:cn("relative w-full",className,containerProps?.className),style:{...containerProps?.style,height:`${orderedLayout.containerHeight}px`},children:orderedLayout.positionedItems.map(({key:key3,item,columnSpan,rowSpan,size:size2,itemWidth,left,top})=>{let unresolvedSingleColumnWidth=containerWidth<=0&&columnCount===1,itemWidthValue=unresolvedSingleColumnWidth?"100%":`${itemWidth}px`,layoutContext={columnCount,columnSpan,columnWidth:resolvedColumnWidth,containerWidth,gap,itemWidth,placementStrategy,rowSpan,rowHeight,size:size2},itemProps=getItemProps?.(item,layoutContext);return jsxRuntime.jsx("div",{...itemProps,className:cn("absolute min-w-0",itemProps?.className),style:{...itemProps?.style,left:unresolvedSingleColumnWidth?0:`${left}px`,top:`${top}px`,width:itemWidthValue,maxWidth:itemWidthValue},children:jsxRuntime.jsx("div",{ref:node=>registerItemNode(key3,node),role:"presentation",className:"min-w-0",children:renderItem(item,layoutContext)})},key3)})})}return jsxRuntime.jsx("div",{ref:containerRef,...containerProps,className:cn("grid w-full items-start",className,containerProps?.className),style:{...containerProps?.style,gap:`${gap}px`,gridAutoFlow:"row dense",gridAutoRows:`${rowHeight}px`,gridTemplateColumns:`repeat(${columnCount}, minmax(0, 1fr))`},children:layoutItems.map(({key:key3,item,columnSpan,rowSpan,size:size2})=>{let layoutContext={columnCount,columnSpan,columnWidth:resolvedColumnWidth,containerWidth,gap,placementStrategy,rowSpan,rowHeight,size:size2},itemProps=getItemProps?.(item,layoutContext);return jsxRuntime.jsx("div",{...itemProps,className:cn("min-w-0",itemProps?.className),style:{...itemProps?.style,gridColumn:`span ${columnSpan}`,gridRow:`span ${rowSpan}`},children:jsxRuntime.jsx("div",{ref:node=>registerItemNode(key3,node),role:"presentation",className:"min-w-0",children:renderItem(item,layoutContext)})},key3)})})}var DEFAULT_PROVISIONAL_CAPACITY=12,DEFAULT_GRID_ASPECT_RATIOS=[1],DEFAULT_RAIL_ASPECT_RATIOS=[4/3],DEFAULT_MASONRY_ASPECT_RATIOS=[1,4/5,3/2,3/4,5/4],MIN_SKELETON_ASPECT_RATIO=.5,MAX_SKELETON_ASPECT_RATIO=2,SKELETON_BACKGROUND_COLOR="hsl(var(--monkeys-color-muted, var(--muted)))";function clamp3(value,min,max){return Math.min(Math.max(value,min),max)}function normalizeCount(value,fallback2,max){return typeof value!="number"||!Number.isFinite(value)||value<=0?fallback2:clamp3(Math.round(value),1,max)}function getDefaultAspectRatios(mode){return mode==="masonry"||mode==="dense"?DEFAULT_MASONRY_ASPECT_RATIOS:mode==="rail"?DEFAULT_RAIL_ASPECT_RATIOS:DEFAULT_GRID_ASPECT_RATIOS}function resolveAspectRatios(mode,values){let normalized=values?.filter(value=>typeof value=="number"&&Number.isFinite(value)&&value>0).map(value=>clamp3(value,MIN_SKELETON_ASPECT_RATIO,MAX_SKELETON_ASPECT_RATIO));return normalized?.length?normalized:getDefaultAspectRatios(mode)}function resolveWorkbenchCollectionSkeletonCapacity(config){return normalizeCount(config?.count,DEFAULT_PROVISIONAL_CAPACITY,48)}function resolveWorkbenchCollectionLoadingVariant(value){if(value===void 0)return "skeleton";if(value==="skeleton"||value==="spinner")return value;throw new TypeError('WorkbenchCollection loading.variant must be "skeleton" or "spinner".')}function resolveSkeletonCount({columnCount,config,phase}){if(phase==="initial"){let fallback3=clamp3(columnCount*2,6,24);return normalizeCount(config?.count,fallback3,48)}let fallback2=clamp3(columnCount,1,12);return normalizeCount(config?.loadMoreCount,fallback2,24)}function getSkeletonHeight(columnWidth,aspectRatio){return Math.max(1,columnWidth/aspectRatio)}function WorkbenchCollectionSkeleton({mode,phase,columnCount,columnWidth,cardWidth,gap,rowHeight,config,ariaLabel,className}){let count=resolveSkeletonCount({columnCount,config,phase}),aspectRatios=resolveAspectRatios(mode,config?.aspectRatios),animated=config?.animated??true,items=React8.useMemo(()=>Array.from({length:count},(_,index)=>({aspectRatio:aspectRatios[index%aspectRatios.length],key:`${phase}-${index}`,index})),[aspectRatios,count,phase]),renderSkeleton=(item,style)=>jsxRuntime.jsx(SkeletonItem,{index:item.index,children:jsxRuntime.jsx(BaseSkeleton,{variant:"block",animated,className:"h-auto w-full rounded-lg",style:{backgroundColor:SKELETON_BACKGROUND_COLOR,...style??{aspectRatio:String(item.aspectRatio)}},"data-collection-skeleton-item":"","data-skeleton-aspect-ratio":item.aspectRatio})});return jsxRuntime.jsx(SkeletonScope,{animation:config?.animation,animated,children:jsxRuntime.jsx("div",{role:"status","aria-label":ariaLabel,"aria-atomic":"true","data-collection-loading":phase,"data-layout-mode":mode,className:"min-w-0",children:mode==="masonry"||mode==="dense"?jsxRuntime.jsx(WorkbenchMasonryLayout,{items,columnCount,columnWidth,gap,rowHeight,placementStrategy:mode==="dense"?"dense":"shortest",className,containerProps:{"aria-hidden":true},getItemKey:item=>item.key,getItemSize:(item,layout)=>({height:getSkeletonHeight(layout.columnWidth,item.aspectRatio)}),renderItem:(item,layout)=>renderSkeleton(item,{height:`${getSkeletonHeight(layout.columnWidth,item.aspectRatio)}px`})}):mode==="rail"?jsxRuntime.jsx("div",{"aria-hidden":"true",className:cn("grid min-w-0 grid-flow-col items-start overflow-x-auto",className),style:{gap,gridAutoColumns:typeof cardWidth=="number"?`${cardWidth}px`:cardWidth??`${columnWidth}px`},children:items.map(item=>jsxRuntime.jsx("div",{children:renderSkeleton(item)},item.key))}):jsxRuntime.jsx("div",{"aria-hidden":"true",className:cn("grid min-w-0 items-start",className),style:{gap,gridTemplateColumns:`repeat(${columnCount}, minmax(0, 1fr))`},children:items.map(item=>jsxRuntime.jsx("div",{children:renderSkeleton(item)},item.key))})})})}function setsEqual(left,right){if(left.size!==right.size)return false;for(let value of left)if(!right.has(value))return false;return true}function getComparableKey(key3){return String(key3)}function getDefaultBehavior(mode){return mode==="multiple"?"toggle":"replace"}function useWorkbenchCollectionSelection({items,getItemKey,mode="none",behavior,selectedKeys:controlledSelectedKeys,defaultSelectedKeys,isItemDisabled,onSelectionChange}){let controlled=controlledSelectedKeys!==void 0,[internalSelectedKeys,setInternalSelectedKeys]=React8.useState(()=>new Set(defaultSelectedKeys??[])),anchorKeyRef=React8.useRef(null),onSelectionChangeRef=React8.useRef(onSelectionChange);onSelectionChangeRef.current=onSelectionChange;let normalizedItems=React8.useMemo(()=>{let seenKeys=new Map;return items.map((item,index)=>{let key3=getItemKey(item,index),comparableKey=getComparableKey(key3),duplicateIndex=seenKeys.get(comparableKey);if(duplicateIndex!==void 0)throw new TypeError(`useWorkbenchCollectionSelection received duplicate item key "${comparableKey}" at indices ${duplicateIndex} and ${index}.`);return seenKeys.set(comparableKey,index),{item,index,key:key3}})},[getItemKey,items]),itemByKey=React8.useMemo(()=>{let entries=new Map;return normalizedItems.forEach(entry=>entries.set(entry.key,entry)),entries},[normalizedItems]),selectedKeys=React8.useMemo(()=>mode==="none"?new Set:controlled?new Set(controlledSelectedKeys??[]):internalSelectedKeys,[controlled,controlledSelectedKeys,internalSelectedKeys,mode]),selectedKeysRef=React8.useRef(selectedKeys);selectedKeysRef.current=selectedKeys;let resetAnchor=React8.useCallback(()=>{anchorKeyRef.current=null;},[]);React8.useEffect(()=>{if(controlled)return;let availableKeys=new Set(normalizedItems.map(({key:key3})=>key3));setInternalSelectedKeys(previous=>{let next=new Set(Array.from(previous).filter(key3=>availableKeys.has(key3)));return setsEqual(previous,next)?previous:(selectedKeysRef.current=next,next)});},[controlled,normalizedItems]),React8.useEffect(()=>{let anchorKey=anchorKeyRef.current;if(mode!=="multiple"||selectedKeys.size===0||anchorKey===null){resetAnchor();return}let anchor=itemByKey.get(anchorKey);(!anchor||isItemDisabled?.(anchor.item,anchor.index))&&resetAnchor();},[isItemDisabled,itemByKey,mode,resetAnchor,selectedKeys.size]);let selectKey=React8.useCallback((key3,intent={})=>{if(mode==="none")return;let entry=itemByKey.get(key3);if(!entry||isItemDisabled?.(entry.item,entry.index))return;let current=new Set(selectedKeysRef.current),configuredBehavior=behavior??getDefaultBehavior(mode),effectiveBehavior=intent.shiftKey&&mode==="multiple"?"range":intent.behavior??configuredBehavior;mode==="single"&&(effectiveBehavior=effectiveBehavior==="toggle"?"toggle":"replace");let anchor=anchorKeyRef.current===null?void 0:itemByKey.get(anchorKeyRef.current),hasValidAnchor=!!(anchor&&!isItemDisabled?.(anchor.item,anchor.index));mode==="multiple"&&effectiveBehavior==="range"&&!hasValidAnchor&&(effectiveBehavior=configuredBehavior==="range"?"toggle":configuredBehavior);let next=new Set;if(mode==="single")effectiveBehavior==="toggle"&¤t.has(entry.key)||next.add(entry.key);else if(effectiveBehavior==="range"&&anchor){current.forEach(selectedKey=>next.add(selectedKey));let start=Math.min(anchor.index,entry.index),end=Math.max(anchor.index,entry.index);normalizedItems.slice(start,end+1).forEach(candidate=>{isItemDisabled?.(candidate.item,candidate.index)||next.add(candidate.key);});}else effectiveBehavior==="replace"?next.add(entry.key):(current.forEach(selectedKey=>next.add(selectedKey)),next.has(entry.key)?next.delete(entry.key):next.add(entry.key));anchorKeyRef.current=mode==="multiple"?entry.key:null,controlled||(selectedKeysRef.current=next,setInternalSelectedKeys(next)),onSelectionChangeRef.current?.(next,{item:entry.item,index:entry.index,key:entry.key,behavior:effectiveBehavior});},[behavior,controlled,isItemDisabled,itemByKey,mode,normalizedItems]),isSelected=React8.useCallback(key3=>selectedKeys.has(key3),[selectedKeys]);return {mode,selectedKeys,isSelected,selectKey,resetAnchor}}var DEFAULT_GAP_PX=12,DEFAULT_ROW_HEIGHT_PX=8,DEFAULT_CARD_WIDTH_PX=280,BREAKPOINT_TABLET_PX=640,BREAKPOINT_DESKTOP_PX=1024,MAX_COLUMN_COUNT=24;function clamp4(value,min,max){return Math.min(Math.max(value,min),max)}function resolveRenderableSlot(slot,context){return typeof slot=="function"?slot(context):slot}function resolveLengthToPixels2(value,fallback2,node){if(typeof value=="number"&&Number.isFinite(value)&&value>0)return value;if(typeof value!="string")return fallback2;let normalized=value.trim().toLowerCase();if(!normalized)return fallback2;if(/^\d+(\.\d+)?(px)?$/.test(normalized)){let parsed=Number.parseFloat(normalized);return Number.isFinite(parsed)&&parsed>0?parsed:fallback2}if(normalized.endsWith("rem")){let parsed=Number.parseFloat(normalized),rootFontSize=typeof window>"u"?16:Number.parseFloat(window.getComputedStyle(node||document.documentElement).fontSize)||16;return Number.isFinite(parsed)&&parsed>0?parsed*rootFontSize:fallback2}return fallback2}function normalizeColumns(value){if(!(typeof value!="number"||!Number.isFinite(value)||value<=0))return clamp4(Math.round(value),1,MAX_COLUMN_COUNT)}function resolveResponsiveColumns(columns,containerWidth){if(columns==="auto"||columns===void 0)return;if(typeof columns=="number")return normalizeColumns(columns);let mobile=normalizeColumns(columns.mobile),tablet=normalizeColumns(columns.tablet),desktop=normalizeColumns(columns.desktop);return containerWidth>=BREAKPOINT_DESKTOP_PX?desktop??tablet??mobile:containerWidth>=BREAKPOINT_TABLET_PX?tablet??mobile??desktop:mobile??tablet??desktop}function resolveColumnCount({containerWidth,itemCount,gap,columns,underfilledBehavior,maxColumns,minCardWidth,idealCardWidth,maxCardWidth,node}){let fixedColumns=resolveResponsiveColumns(columns,containerWidth),resolvedMaxColumns=resolveResponsiveColumns(maxColumns,containerWidth);if(fixedColumns)return resolvedMaxColumns?Math.min(fixedColumns,resolvedMaxColumns):fixedColumns;if(!containerWidth)return 1;let idealWidth=resolveLengthToPixels2(idealCardWidth,DEFAULT_CARD_WIDTH_PX,node),minWidth=resolveLengthToPixels2(minCardWidth,idealWidth*.78,node),maxWidth=Math.max(minWidth,resolveLengthToPixels2(maxCardWidth,idealWidth*1.35,node)),safeItemCount=Math.max(itemCount,1),maxCandidate=Math.max(1,Math.min(underfilledBehavior==="preserve-columns"?MAX_COLUMN_COUNT:safeItemCount,Math.ceil((containerWidth+gap)/(Math.max(minWidth*.75,1)+gap)))),bestCount=1,bestScore=Number.POSITIVE_INFINITY;for(let candidate=1;candidate<=maxCandidate;candidate+=1){let width=(containerWidth-gap*Math.max(candidate-1,0))/candidate;if(!Number.isFinite(width)||width<=0)continue;let score=Math.abs(width-idealWidth)+Math.max(0,minWidth-width)*3+Math.max(0,width-maxWidth)*2;score<bestScore&&(bestScore=score,bestCount=candidate);}return resolvedMaxColumns?Math.min(bestCount,resolvedMaxColumns):bestCount}function normalizeGap(value){return typeof value=="number"&&Number.isFinite(value)&&value>=0?value:DEFAULT_GAP_PX}function normalizeRowHeight(value){return typeof value=="number"&&Number.isFinite(value)&&value>0?value:DEFAULT_ROW_HEIGHT_PX}function normalizeThreshold(value){return typeof value=="number"&&Number.isFinite(value)?clamp4(value,0,1):0}function normalizeItemSize(size2,aspectRatio,columnWidth){let normalizedAspectRatio=Number.isFinite(aspectRatio)&&Number(aspectRatio)>0?Number(aspectRatio):void 0,normalizedHeight=size2?.height??(normalizedAspectRatio?Math.max(1,columnWidth/normalizedAspectRatio):void 0);return {...size2,height:normalizedHeight}}function getDefaultItemKey(item,index){if(item&&typeof item=="object"){let candidate=item;if(typeof candidate.id=="string"||typeof candidate.id=="number")return candidate.id;if(typeof candidate.key=="string"||typeof candidate.key=="number")return candidate.key}return index}function getScrollStorageKey(key3){return `@inf-monkeys-tech/monkeys-design:workbench-collection:${key3}`}function getParentScrollOwner(node){let current=node?.parentElement??null;for(;current;){if(typeof window>"u")return current;let overflowY=window.getComputedStyle(current).overflowY;if(overflowY==="auto"||overflowY==="scroll")return current;current=current.parentElement;}return null}function isInteractiveEventTarget(target,currentTarget){if(typeof Element>"u"||!(target instanceof Element)||target===currentTarget)return false;let control=target.closest('a, button, input, select, textarea, summary, [contenteditable="true"], [data-collection-action]');return !!(control&¤tTarget.contains(control))}function normalizeTitleMaxLines(value){if(!(!Number.isFinite(value)||Number(value)<=0))return clamp4(Math.round(Number(value)),1,12)}function WorkbenchCollection({items,config,renderItem,slots,callbacks,className,classNames,style,ariaLabel}){let componentAttributes=useMonkeysComponentAttributes(),localeMessages=useMonkeysLocaleMessages().workbench.collection,statusStates=useMonkeysStatusStates(),resolvedTheme=useMonkeysResolvedTheme(),componentId=React8.useId().replace(/:/g,""),rootRef=React8.useRef(null),railRef=React8.useRef(null),itemsRef=React8.useRef(null),loadMoreRef=React8.useRef(null),loadMoreRequestPendingRef=React8.useRef(false),loadMoreIntersectionActiveRef=React8.useRef(false),loadMoreIntersectionConsumedRef=React8.useRef(false),loadMoreScrollValidationPendingRef=React8.useRef(false),observedLoadMoreTargetRef=React8.useRef(null),observedLoadMoreKeysRef=React8.useRef(null),observedLoadMorePageRef=React8.useRef(void 0),layoutReadyRef=React8.useRef(false),[containerWidth,setContainerWidth]=React8.useState(0),[themeGap,setThemeGap]=React8.useState(DEFAULT_GAP_PX),[itemsNode,setItemsNode]=React8.useState(null),callbacksRef=React8.useRef(callbacks);callbacksRef.current=callbacks;let registerItemsNode=React8.useCallback(node=>{itemsRef.current=node,setItemsNode(node);},[]),mode=config.layout.mode;if(mode!=="grid"&&mode!=="masonry"&&mode!=="dense"&&mode!=="rail")throw new TypeError(`WorkbenchCollection layout.mode "${String(mode)}" is not supported.`);let gap=config.layout.gap===void 0?themeGap:normalizeGap(config.layout.gap),rowHeight=normalizeRowHeight(config.layout.rowHeight),getItemKey=config.getItemKey??getDefaultItemKey,normalizedItems=React8.useMemo(()=>items.map((item,index)=>{let key3=getItemKey(item,index);return {item,index,key:key3,stringKey:String(key3)}}),[getItemKey,items]),keysSignature=normalizedItems.map(({stringKey})=>stringKey).join(""),state=config.state,loading=state?.loading===true,loadingMore=state?.loadingMore===true,hasMore=state?.hasMore===true,loadingVariant=resolveWorkbenchCollectionLoadingVariant(config.loading?.variant),layoutItemCount=loading&&normalizedItems.length===0&&loadingVariant==="skeleton"?resolveWorkbenchCollectionSkeletonCapacity(config.loading?.skeleton):normalizedItems.length,selectionMode=config.selection?.mode??"none",isSelectionItemDisabled=React8.useCallback(entry=>config.selection?.isItemDisabled?.(entry.item,entry.index)??false,[config.selection?.isItemDisabled]),getSelectionItemKey=React8.useCallback(entry=>entry.key,[]),handleSelectionChange=React8.useCallback((next,details)=>{callbacksRef.current?.onSelectionChange?.(next,{item:details.item.item,key:details.key,behavior:details.behavior});},[]),{selectedKeys,selectKey}=useWorkbenchCollectionSelection({items:normalizedItems,getItemKey:getSelectionItemKey,mode:selectionMode,behavior:config.selection?.behavior,selectedKeys:config.selection?.selectedKeys,defaultSelectedKeys:config.selection?.defaultSelectedKeys,isItemDisabled:isSelectionItemDisabled,onSelectionChange:handleSelectionChange});React8.useEffect(()=>{let node=itemsNode;if(!node)return;let updateWidth=()=>{if(config.layout.gap===void 0&&rootRef.current){let nextGap=Number.parseFloat(window.getComputedStyle(rootRef.current).columnGap);setThemeGap(Number.isFinite(nextGap)&&nextGap>=0?nextGap:DEFAULT_GAP_PX);}let nextWidth=Math.round(node.getBoundingClientRect().width);setContainerWidth(previous=>previous===nextWidth?previous:nextWidth);};if(updateWidth(),typeof ResizeObserver=="function"){let observer=new ResizeObserver(updateWidth);return observer.observe(node),()=>observer.disconnect()}if(!(typeof window>"u"))return window.addEventListener("resize",updateWidth),()=>window.removeEventListener("resize",updateWidth)},[itemsNode,config.layout.gap,style?.gap,resolvedTheme]);let columnCount=resolveColumnCount({containerWidth,itemCount:layoutItemCount,gap,columns:config.layout.columns,underfilledBehavior:config.layout.underfilledBehavior,maxColumns:config.layout.maxColumns,minCardWidth:config.layout.minCardWidth,idealCardWidth:config.layout.idealCardWidth??config.layout.columnWidth,maxCardWidth:config.layout.maxCardWidth,node:itemsRef.current}),columnWidth=containerWidth>0?Math.max(0,(containerWidth-gap*Math.max(columnCount-1,0))/columnCount):resolveLengthToPixels2(config.layout.cardWidth??config.layout.columnWidth??config.layout.idealCardWidth,DEFAULT_CARD_WIDTH_PX,itemsRef.current),placementStrategy=config.layout.placementStrategy??(mode==="dense"?"dense":mode==="masonry"?"shortest":"shelf"),labels=React8.useMemo(()=>({collection:config.labels?.collection??localeMessages.label,loading:config.labels?.loading??localeMessages.loading,empty:config.labels?.empty??localeMessages.empty,loadError:config.labels?.loadError??localeMessages.loadError,refreshError:config.labels?.refreshError??localeMessages.refreshError,retry:config.labels?.retry??localeMessages.retry,loadingMore:config.labels?.loadingMore??localeMessages.loadingMore,permission:config.labels?.permission??localeMessages.permission,offline:config.labels?.offline??localeMessages.offline,requestAccess:config.labels?.requestAccess??localeMessages.requestAccess}),[config.labels,localeMessages]),virtualizationError=React8.useMemo(()=>{let virtualization=config.virtualization;return virtualization?.enabled!==true||virtualization.fallback!=="error"?null:virtualization.adapter?virtualization.adapter.supports?.(mode)===false?new Error(`WorkbenchCollection virtualization adapter does not support mode "${mode}".`):null:new Error("WorkbenchCollection virtualization requires an adapter.")},[config.virtualization,mode]),layoutSnapshot=React8.useMemo(()=>({mode,columnCount,columnWidth,containerWidth,gap,itemCount:normalizedItems.length}),[columnCount,columnWidth,containerWidth,gap,mode,normalizedItems.length]);React8.useEffect(()=>{callbacksRef.current?.onLayoutChange?.(layoutSnapshot),containerWidth>0&&!layoutReadyRef.current&&(layoutReadyRef.current=true,callbacksRef.current?.onLayoutReady?.(layoutSnapshot));},[layoutSnapshot,containerWidth]),React8.useEffect(()=>{layoutReadyRef.current=false;},[mode]);let resolveScrollOwner=React8.useCallback(()=>{let requestedOwner=config.layout.scrollOwner;return requestedOwner&&requestedOwner!=="self"&&requestedOwner!=="parent"?requestedOwner:mode==="rail"?railRef.current:requestedOwner==="parent"?getParentScrollOwner(rootRef.current):rootRef.current},[config.layout.scrollOwner,mode]);React8.useEffect(()=>{let restorationKey=config.scrollRestorationKey?.trim();if(!restorationKey||typeof window>"u")return;let owner=resolveScrollOwner();if(!owner)return;let storageKey=getScrollStorageKey(restorationKey);try{let stored=Number.parseFloat(window.sessionStorage.getItem(storageKey)??"");Number.isFinite(stored)&&stored>=0&&(owner.scrollTop=stored);}catch{}let saveScrollPosition=()=>{try{window.sessionStorage.setItem(storageKey,String(owner.scrollTop));}catch{}};return owner.addEventListener("scroll",saveScrollPosition,{passive:true}),()=>{saveScrollPosition(),owner.removeEventListener("scroll",saveScrollPosition);}},[config.scrollRestorationKey,resolveScrollOwner]);let canLoadMore=typeof callbacks?.onLoadMore=="function",effectiveError=state?.error??virtualizationError;React8.useEffect(()=>{(!canLoadMore||!hasMore)&&(loadMoreIntersectionActiveRef.current=false,loadMoreIntersectionConsumedRef.current=false,loadMoreScrollValidationPendingRef.current=false);},[canLoadMore,hasMore]);let requestLoadMore=React8.useCallback(()=>{if(!canLoadMore||!hasMore||loadingMore||loadMoreRequestPendingRef.current)return;loadMoreRequestPendingRef.current=true;let releaseRequest=()=>{loadMoreRequestPendingRef.current=false;};try{let result=callbacksRef.current?.onLoadMore?.();result&&typeof result.then=="function"?result.then(releaseRequest,releaseRequest):releaseRequest();}catch(error){throw releaseRequest(),error}},[canLoadMore,hasMore,loadingMore]);React8.useEffect(()=>{let sentinel=loadMoreRef.current;if((observedLoadMoreTargetRef.current!==sentinel||observedLoadMoreKeysRef.current!==keysSignature||observedLoadMorePageRef.current!==config.loading?.pageKey)&&(observedLoadMoreTargetRef.current=sentinel,observedLoadMoreKeysRef.current=keysSignature,observedLoadMorePageRef.current=config.loading?.pageKey,loadMoreIntersectionActiveRef.current=false,loadMoreIntersectionConsumedRef.current=false,loadMoreScrollValidationPendingRef.current=false),!sentinel||!canLoadMore||!hasMore||typeof IntersectionObserver!="function")return;let owner=resolveScrollOwner(),observerHasDelivered=false,active=true,observer=new IntersectionObserver(entries=>{if(!active)return;let isIntersecting=entries.some(entry=>entry.isIntersecting);if(!(isIntersecting&&(loadingMore||loadMoreRequestPendingRef.current))){if(loadMoreScrollValidationPendingRef.current){if(observerHasDelivered=true,loadMoreScrollValidationPendingRef.current=false,loadMoreIntersectionActiveRef.current=isIntersecting,!isIntersecting){loadMoreIntersectionConsumedRef.current=false;return}if(loadMoreIntersectionConsumedRef.current)return;loadMoreIntersectionConsumedRef.current=true,requestLoadMore();return}if(!observerHasDelivered){observerHasDelivered=true,loadMoreIntersectionActiveRef.current=isIntersecting,isIntersecting||(loadMoreIntersectionConsumedRef.current=false),isIntersecting&&config.loading?.autoFill&&!loadMoreIntersectionConsumedRef.current&&(loadMoreIntersectionConsumedRef.current=true,requestLoadMore());return}if(!isIntersecting){loadMoreIntersectionActiveRef.current=false,loadMoreIntersectionConsumedRef.current=false;return}loadMoreIntersectionActiveRef.current||(loadMoreIntersectionActiveRef.current=true,loadMoreIntersectionConsumedRef.current=true,requestLoadMore());}},{root:owner===rootRef.current?owner:owner||null,rootMargin:config.loading?.rootMargin??"240px",threshold:normalizeThreshold(config.loading?.threshold)}),scrollTarget=owner??(typeof window>"u"?null:window),validateActiveIntersection=()=>{!loadMoreIntersectionActiveRef.current||loadMoreIntersectionConsumedRef.current||loadMoreScrollValidationPendingRef.current||(loadMoreScrollValidationPendingRef.current=true,observer.unobserve(sentinel),observer.takeRecords(),observer.observe(sentinel));};return observer.observe(sentinel),scrollTarget?.addEventListener("scroll",validateActiveIntersection,{passive:true}),()=>{active=false,observer.disconnect(),scrollTarget?.removeEventListener("scroll",validateActiveIntersection);}},[canLoadMore,config.loading?.autoFill,config.loading?.pageKey,config.loading?.rootMargin,config.loading?.threshold,hasMore,keysSignature,loadingMore,normalizedItems.length,requestLoadMore,resolveScrollOwner]),React8.useEffect(()=>{if(!config.loading?.autoFill||!canLoadMore||!hasMore||loadingMore||loadMoreIntersectionConsumedRef.current||loadMoreRequestPendingRef.current||!loadMoreRef.current)return;let owner=resolveScrollOwner()??(config.layout.scrollOwner==="parent"?rootRef.current?.parentElement??null:null)??rootRef.current;if(!owner)return;let viewportSize=mode==="rail"?owner.clientWidth:owner.clientHeight,contentSize=mode==="rail"?owner.scrollWidth:owner.scrollHeight;viewportSize<=0||contentSize<=viewportSize+1&&(loadMoreIntersectionConsumedRef.current=true,requestLoadMore());},[canLoadMore,config.layout.scrollOwner,config.loading?.autoFill,config.loading?.pageKey,hasMore,keysSignature,loadingMore,normalizedItems.length,requestLoadMore,resolveScrollOwner,mode]);let groups=React8.useMemo(()=>{if(!config.grouping)return [{key:"__all__",stringKey:"__all__",items:normalizedItems}];let grouped=new Map;return normalizedItems.forEach(entry=>{let groupKey=config.grouping?.getGroupKey(entry.item,entry.index)??"__all__",stringKey=String(groupKey),existing=grouped.get(stringKey);if(existing){existing.items.push(entry);return}grouped.set(stringKey,{key:groupKey,stringKey,label:config.grouping?.getGroupLabel?.(groupKey,entry.item),items:[entry]});}),Array.from(grouped.values())},[config.grouping,normalizedItems]),createItemContext=React8.useCallback((entry,layout)=>{let disabled=config.selection?.isItemDisabled?.(entry.item,entry.index)??false,context={item:entry.item,index:entry.index,key:entry.key,status:config.getItemStatus?.(entry.item,entry.index)??"idle",disabled,selected:selectedKeys.has(entry.key),selectionMode,layout,select:behavior=>selectKey(entry.key,{behavior}),selectFromEvent:(event,behavior)=>selectKey(entry.key,{behavior,shiftKey:event.shiftKey}),preview:()=>callbacks?.onItemPreview?.(entry.item,context),detail:()=>callbacks?.onItemDetail?.(entry.item,context),renderSlot:name=>slots?.item?.[name]?.(entry.item,context),notifyMediaLoad:()=>callbacks?.onMediaLoad?.(entry.item,context),notifyMediaError:error=>callbacks?.onMediaError?.(entry.item,context,error)};return context},[callbacks,config.getItemStatus,config.selection,selectedKeys,selectKey,selectionMode,slots?.item]),getItemInteractionProps=React8.useCallback((entry,context)=>{let handleKeyboard=event=>{event.target!==event.currentTarget||event.key!=="Enter"&&event.key!==" "||(event.preventDefault(),selectionMode!=="none"?context.selectFromEvent(event):callbacks?.onItemClick?.(entry.item,context,event));};return {id:`${componentId}-item-${entry.index}`,"data-monkeys-collection-item":"","data-item-key":entry.stringKey,"data-selected":context.selected||void 0,"data-disabled":context.disabled||void 0,"data-status":context.status,role:selectionMode==="none"?"listitem":"option","aria-selected":selectionMode==="none"?void 0:context.selected,"aria-disabled":context.disabled||void 0,tabIndex:callbacks?.onItemClick||selectionMode!=="none"||config.item?.title?.visibility==="hover"?0:void 0,draggable:callbacks?.onItemDragStart?true:void 0,className:cn("min-w-0 group/workbench-collection-item outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",config.appearance?.hover&&config.appearance.hover!=="none"&&"transition-[transform,box-shadow,background-color] duration-200",config.appearance?.hover==="highlight"&&"hover:bg-muted/30",config.appearance?.hover==="lift"&&"hover:-translate-y-0.5 motion-reduce:transform-none",config.appearance?.hover==="scale"&&"hover:scale-[1.01] motion-reduce:transform-none",config.appearance?.hover==="shadow"&&"hover:shadow-md",config.appearance?.hover==="lift-shadow"&&"hover:-translate-y-0.5 hover:shadow-md motion-reduce:transform-none",config.appearance?.selection==="ring"&&context.selected&&"ring-2 ring-primary",config.appearance?.selection==="outline"&&context.selected&&"outline outline-2 outline-primary",classNames?.item),onClick:event=>{isInteractiveEventTarget(event.target,event.currentTarget)||(selectionMode!=="none"&&context.selectFromEvent(event),callbacks?.onItemClick?.(entry.item,context,event));},onDoubleClick:event=>{isInteractiveEventTarget(event.target,event.currentTarget)||callbacks?.onItemDoubleClick?.(entry.item,context,event);},onMouseEnter:event=>callbacks?.onItemHoverChange?.(entry.item,context,true,event),onMouseLeave:event=>callbacks?.onItemHoverChange?.(entry.item,context,false,event),onKeyDown:handleKeyboard,onDragStart:event=>callbacks?.onItemDragStart?.(entry.item,context,event),onDragOver:callbacks?.onItemDrop?event=>event.preventDefault():void 0,onDrop:event=>callbacks?.onItemDrop?.(entry.item,context,event)}},[callbacks,classNames?.item,componentId,config.appearance,config.item?.title?.visibility,selectionMode]),renderItemContent=React8.useCallback((entry,context)=>{let content=renderItem(entry.item,context),titleConfig=config.item?.title,visibility=titleConfig?.visibility??"always",title=titleConfig&&visibility!=="never"?titleConfig.getContent?.(entry.item,context)??context.renderSlot("title"):null,hasTitle=!!(titleConfig&&hasRenderableNode(title)),placement=titleConfig?.placement??"below",titleOverlay=hasTitle&&placement.startsWith("overlay-"),maxLines=normalizeTitleMaxLines(titleConfig?.maxLines),surface=titleConfig?.surface??(titleOverlay?"scrim":"none"),titleNode=hasTitle?jsxRuntime.jsx("div",{"data-collection-item-title":"","data-title-placement":placement,"data-title-visibility":visibility,className:cn("min-w-0 px-1 py-2 text-sm font-medium text-foreground",titleConfig?.align==="center"&&"text-center",titleConfig?.align==="end"&&"text-right",visibility==="hover"&&"!opacity-0 transition-opacity group-hover/workbench-collection-item:!opacity-100 group-focus-within/workbench-collection-item:!opacity-100",titleOverlay&&"pointer-events-none absolute inset-x-0 z-10 px-3 py-2",placement==="overlay-top"&&"top-0",placement==="overlay-center"&&"top-1/2 -translate-y-1/2 motion-reduce:transform-none",placement==="overlay-bottom"&&"bottom-0",surface==="surface"&&"bg-background/90 backdrop-blur-sm",surface==="scrim"&&placement==="overlay-top"&&"bg-gradient-to-b from-background/90 to-transparent pb-8",surface==="scrim"&&placement==="overlay-bottom"&&"bg-gradient-to-t from-background/90 to-transparent pt-8",surface==="scrim"&&placement==="overlay-center"&&"bg-background/75 backdrop-blur-sm",!!maxLines&&"overflow-hidden [display:-webkit-box] [-webkit-box-orient:vertical]",classNames?.itemTitle),style:maxLines?{WebkitLineClamp:maxLines}:void 0,children:title}):null,actionsConfig=config.item?.actions,actionsVisibility=actionsConfig?.visibility??"always",actions=actionsConfig&&actionsVisibility!=="never"?context.renderSlot("actions"):null,hasActions=!!(actionsConfig&&hasRenderableNode(actions)),actionsPlacement=actionsConfig?.placement??"overlay-bottom",actionsOverlay=hasActions&&actionsPlacement.startsWith("overlay-"),actionsNode=hasActions?jsxRuntime.jsx("div",{"data-collection-item-actions":"","data-actions-placement":actionsPlacement,"data-actions-align":actionsConfig?.align??"center","data-actions-visibility":actionsVisibility,className:cn("flex min-w-0 items-center gap-2 px-2 py-2",actionsConfig?.align==="start"&&"justify-start",(actionsConfig?.align===void 0||actionsConfig.align==="center")&&"justify-center",actionsConfig?.align==="end"&&"justify-end",actionsConfig?.wrap!==false&&"flex-wrap",actionsVisibility==="hover"&&"!opacity-0 transition-opacity group-hover/workbench-collection-item:!opacity-100 group-focus-within/workbench-collection-item:!opacity-100 [@media(hover:none)]:!opacity-100",actionsOverlay&&"pointer-events-none absolute inset-x-0 z-20",actionsPlacement==="overlay-top"&&"top-1",actionsPlacement==="overlay-bottom"&&"bottom-1",classNames?.itemActions),children:jsxRuntime.jsx("div",{className:cn("pointer-events-auto flex items-center gap-2",actionsConfig?.wrap!==false&&"flex-wrap"),children:actions})}):null;return !hasTitle&&!hasActions?content:jsxRuntime.jsxs("div",{className:cn("min-w-0",(titleOverlay||actionsOverlay)&&"relative",classNames?.itemContent),"data-collection-item-content":"",children:[placement==="above"?titleNode:null,actionsPlacement==="above"?actionsNode:null,content,placement==="below"||titleOverlay?titleNode:null,actionsPlacement==="below"||actionsOverlay?actionsNode:null]})},[classNames?.itemActions,classNames?.itemContent,classNames?.itemTitle,config.item,renderItem]),renderEntry=React8.useCallback((entry,layout,includeShell=true)=>{let context=createItemContext(entry,layout),content=renderItemContent(entry,context);return includeShell?jsxRuntime.jsx("div",{...getItemInteractionProps(entry,context),children:content}):content},[createItemContext,getItemInteractionProps,renderItemContent]),baseLayoutContext=React8.useMemo(()=>({mode,columnCount,columnWidth,containerWidth,gap,placementStrategy,rowHeight}),[columnCount,columnWidth,containerWidth,gap,mode,placementStrategy,rowHeight]),renderGroupItems=group=>{if(config.windowed&&mode!=="dense"){let isLastGroup=group===groups[groups.length-1];return jsxRuntime.jsx(WorkbenchWindowedLayout,{items:group.items,getKey:entry=>entry.stringKey,layout:baseLayoutContext,cardWidth:resolveLengthToPixels2(config.layout.cardWidth,DEFAULT_CARD_WIDTH_PX,rootRef.current),getScrollOwner:resolveScrollOwner,railRef:mode==="rail"&&isLastGroup?railRef:void 0,tailRef:mode==="rail"&&isLastGroup?loadMoreRef:void 0,estimateHeight:(entry,width)=>{let size2=config.layout.getItemSize?.(entry.item,{...baseLayoutContext,columnWidth:width}),ratio=config.layout.getItemAspectRatio?.(entry.item,entry.index);return resolveLengthToPixels2(size2?.height,ratio&&ratio>0?width/ratio:300,rootRef.current)},containerProps:{role:selectionMode==="none"?"list":"listbox","aria-label":ariaLabel??labels.collection,"aria-multiselectable":selectionMode==="multiple"||void 0,className:classNames?.layout},getItemProps:(entry,layout)=>getItemInteractionProps(entry,createItemContext(entry,layout)),renderItem:(entry,layout)=>renderEntry(entry,layout,false)})}let virtualization=config.virtualization,adapter=virtualization?.adapter,virtualizationRequested=virtualization?.enabled===true;if(virtualizationRequested&&(!adapter||adapter.supports?.(mode)===false)&&virtualization?.fallback==="error")return null;if(virtualizationRequested&&adapter&&adapter.supports?.(mode)!==false)return adapter.render({items:group.items.map(({item})=>item),keys:group.items.map(({key:key3})=>key3),layout:config.layout,scrollOwner:resolveScrollOwner(),renderItem:(item,localIndex,layout)=>{let entry=group.items[localIndex];return entry?jsxRuntime.jsx(React8.Fragment,{children:renderEntry(entry,layout)},entry.stringKey):null}});if(mode==="masonry"||mode==="dense")return jsxRuntime.jsx(WorkbenchMasonryLayout,{items:group.items,columnCount,columnWidth:config.layout.cardWidth??config.layout.columnWidth??config.layout.idealCardWidth,gap,rowHeight,placementStrategy:mode==="dense"?"dense":placementStrategy,className:classNames?.layout,containerProps:{role:selectionMode==="none"?"list":"listbox","aria-label":ariaLabel??labels.collection,"aria-multiselectable":selectionMode==="multiple"||void 0},getItemProps:(entry,masonryLayout)=>{let context=createItemContext(entry,{...masonryLayout,mode});return getItemInteractionProps(entry,context)},getItemKey:entry=>entry.key,getItemSize:(entry,masonryLayout)=>{let layout={...masonryLayout,mode},customSize=config.layout.getItemSize?.(entry.item,layout),aspectRatio=config.layout.getItemAspectRatio?.(entry.item,entry.index);return normalizeItemSize(customSize,aspectRatio,masonryLayout.columnWidth)},renderItem:(entry,masonryLayout)=>renderEntry(entry,{...masonryLayout,mode},false)});if(mode==="rail"){let cardWidth=config.layout.cardWidth??config.layout.idealCardWidth??DEFAULT_CARD_WIDTH_PX,isLastGroup=group===groups[groups.length-1];return jsxRuntime.jsx("div",{ref:isLastGroup?railRef:void 0,role:selectionMode==="none"?"list":"listbox","aria-label":ariaLabel??labels.collection,"aria-multiselectable":selectionMode==="multiple"||void 0,className:cn("grid min-w-0 grid-flow-col items-start overflow-x-auto",classNames?.layout),style:{gap,gridAutoColumns:typeof cardWidth=="number"?`${cardWidth}px`:cardWidth},children:group.items.map((entry,index)=>jsxRuntime.jsx("div",{ref:isLastGroup&&index===group.items.length-1?loadMoreRef:void 0,className:"min-w-0",children:renderEntry(entry,baseLayoutContext)},entry.stringKey))})}return jsxRuntime.jsx("div",{role:selectionMode==="none"?"list":"listbox","aria-label":ariaLabel??labels.collection,"aria-multiselectable":selectionMode==="multiple"||void 0,className:cn("grid min-w-0 items-start",classNames?.layout),style:{gap,gridTemplateColumns:`repeat(${columnCount}, minmax(0, 1fr))`},children:group.items.map(entry=>{let customSize=config.layout.getItemSize?.(entry.item,baseLayoutContext),span=clamp4(Math.round(Number(customSize?.columnSpan)||1),1,columnCount),aspectRatio=config.layout.getItemAspectRatio?.(entry.item,entry.index);return jsxRuntime.jsx("div",{...getItemInteractionProps(entry,createItemContext(entry,{...baseLayoutContext,columnSpan:span,size:customSize})),style:{gridColumn:span>1?`span ${span}`:void 0,aspectRatio:Number.isFinite(aspectRatio)&&Number(aspectRatio)>0?String(aspectRatio):void 0},children:renderEntry(entry,{...baseLayoutContext,columnSpan:span,size:customSize},false)},entry.stringKey)})})},slotContext={items,error:effectiveError,loading,loadingMore,selectedKeys,retry:()=>callbacks?.onRetry?.()},header=resolveRenderableSlot(slots?.header,slotContext),toolbar=resolveRenderableSlot(slots?.toolbar,slotContext),selectionToolbar=selectedKeys.size>0?resolveRenderableSlot(slots?.selectionToolbar,slotContext):null,beforeItems=resolveRenderableSlot(slots?.beforeItems,slotContext),footer=resolveRenderableSlot(slots?.footer,slotContext),showPermission=state?.permission===true,showOffline=state?.offline===true&&!showPermission,showInitialLoading=loading&&items.length===0&&!showPermission&&!showOffline,showInitialError=!!effectiveError&&items.length===0&&!showPermission&&!showOffline&&!showInitialLoading,showEmpty=!showPermission&&!showOffline&&!showInitialLoading&&!showInitialError&&(state?.empty===true||items.length===0),loadingSlot=resolveRenderableSlot(slots?.loading,slotContext),errorSlot=resolveRenderableSlot(slots?.error,slotContext),permissionSlot=resolveRenderableSlot(slots?.permission,slotContext),offlineSlot=resolveRenderableSlot(slots?.offline,slotContext),emptySlot=resolveRenderableSlot(slots?.empty,slotContext),loadMoreSlot=resolveRenderableSlot(slots?.loadMore,slotContext),selfScrollable=config.layout.scrollOwner==="self"||config.layout.scrollOwner===void 0&&(config.layout.fillHeight||config.layout.maxHeight),rootStyle={...style,gap:config.layout.gap===void 0?style?.gap??"var(--monkeys-bento-gap, var(--global-spacing, 0.75rem))":normalizeGap(config.layout.gap),padding:config.layout.padding??style?.padding,height:config.layout.fillHeight?"100%":style?.height,maxHeight:config.layout.maxHeight??style?.maxHeight,overflow:selfScrollable?"auto":style?.overflow};return jsxRuntime.jsxs("section",{ref:rootRef,...componentAttributes,"data-monkeys-component":"workbench-collection","data-layout-mode":mode,"data-density":config.appearance?.density,"data-radius":config.appearance?.radius,"data-media-fit":config.appearance?.mediaFit,"data-hover-effect":config.appearance?.hover,"aria-label":ariaLabel??labels.collection,"aria-busy":loading||loadingMore||void 0,className:cn("min-h-0 min-w-0",config.layout.fillHeight&&"h-full",classNames?.root,className),style:rootStyle,children:[hasRenderableNode(header)?jsxRuntime.jsx("div",{className:classNames?.header,children:header}):null,hasRenderableNode(toolbar)?jsxRuntime.jsx("div",{className:classNames?.toolbar,children:toolbar}):null,hasRenderableNode(selectionToolbar)?jsxRuntime.jsx("div",{className:classNames?.selectionToolbar,children:selectionToolbar}):null,hasRenderableNode(beforeItems)?jsxRuntime.jsx("div",{className:classNames?.beforeItems,children:beforeItems}):null,showPermission?hasRenderableNode(permissionSlot)?permissionSlot:jsxRuntime.jsx(BaseSystemState,{kind:"permission",title:labels.permission,actions:statusStates.permission?.showRequestAccess!==false&&callbacks?.onRequestAccess?jsxRuntime.jsx(BaseButton,{size:"sm",label:labels.requestAccess,onClick:callbacks.onRequestAccess}):void 0}):showOffline?hasRenderableNode(offlineSlot)?offlineSlot:jsxRuntime.jsx(BaseSystemState,{kind:"offline",title:labels.offline,actions:statusStates.error?.showRetry!==false&&callbacks?.onRetry?jsxRuntime.jsx(BaseButton,{size:"sm",label:labels.retry,onClick:callbacks.onRetry}):void 0}):showInitialLoading?hasRenderableNode(loadingSlot)?loadingSlot:loadingVariant==="spinner"?jsxRuntime.jsx(BaseLoadingState,{title:labels.loading,variant:"spinner"}):jsxRuntime.jsx("div",{ref:registerItemsNode,className:cn("min-w-0",classNames?.items),children:jsxRuntime.jsx(WorkbenchCollectionSkeleton,{mode,phase:"initial",columnCount,columnWidth,cardWidth:config.layout.cardWidth??config.layout.idealCardWidth,gap,rowHeight,config:config.loading?.skeleton,ariaLabel:labels.loading,className:classNames?.layout})}):showInitialError?hasRenderableNode(errorSlot)?errorSlot:jsxRuntime.jsx(BaseSystemState,{kind:"error",title:labels.loadError,actions:statusStates.error?.showRetry!==false&&callbacks?.onRetry?jsxRuntime.jsx(BaseButton,{size:"sm",label:labels.retry,onClick:callbacks.onRetry}):void 0}):showEmpty?hasRenderableNode(emptySlot)?emptySlot:jsxRuntime.jsx(BaseEmptyState,{title:labels.empty}):jsxRuntime.jsx("div",{ref:registerItemsNode,className:cn("min-w-0",classNames?.items),children:groups.map((group,groupIndex)=>{let groupContext={key:group.key,label:group.label,items:group.items.map(({item})=>item),groupIndex},heading=config.grouping?slots?.groupHeading?.(groupContext,slotContext)??group.label:null,headingId=`${componentId}-group-${groupIndex}`;return jsxRuntime.jsxs("div",{"data-collection-group":group.stringKey,className:classNames?.group,children:[hasRenderableNode(heading)?jsxRuntime.jsx("div",{id:headingId,role:"heading","aria-level":2,className:classNames?.groupHeading,children:heading}):null,renderGroupItems(group)]},group.stringKey)})}),items.length>0&&effectiveError?jsxRuntime.jsx("div",{className:classNames?.status,children:hasRenderableNode(errorSlot)?errorSlot:jsxRuntime.jsx(BaseSystemState,{kind:"error",title:labels.refreshError,actions:statusStates.error?.showRetry!==false&&callbacks?.onRetry?jsxRuntime.jsx(BaseButton,{size:"sm",label:labels.retry,onClick:callbacks.onRetry}):void 0})}):null,items.length>0&&(hasMore||loadingMore)?jsxRuntime.jsx("div",{ref:mode==="rail"?void 0:loadMoreRef,className:classNames?.loadMore,"data-collection-load-more":"",children:hasRenderableNode(loadMoreSlot)?loadMoreSlot:loadingMore?loadingVariant==="spinner"?jsxRuntime.jsx(BaseLoadingState,{title:labels.loadingMore,variant:"spinner"}):jsxRuntime.jsx(WorkbenchCollectionSkeleton,{mode,phase:"load-more",columnCount,columnWidth,cardWidth:config.layout.cardWidth??config.layout.idealCardWidth,gap,rowHeight,config:config.loading?.skeleton,ariaLabel:labels.loadingMore,className:classNames?.layout}):null}):null,hasRenderableNode(footer)?jsxRuntime.jsx("div",{className:classNames?.footer,children:footer}):null]})}function getNormalizedGalleryGridCardWidth(cardWidth){if(typeof cardWidth=="number"&&Number.isFinite(cardWidth)&&cardWidth>0)return `${cardWidth}px`;if(typeof cardWidth=="string"&&cardWidth.trim())return cardWidth.trim()}function getDefaultGalleryDetailLimit2(density){return density==="compact"?2:density==="detailed"?6:4}function getNormalizedGalleryBentoColumns2(columns,density){return columns===1||columns===2||columns===3?Number(columns):density==="detailed"?1:2}function getNormalizedGalleryDetailLimit2({density,visibility,limit}){if(visibility==="all")return Number.POSITIVE_INFINITY;let parsedLimit=Number.parseInt(String(limit),10);return Number.isFinite(parsedLimit)&&parsedLimit>0?parsedLimit:getDefaultGalleryDetailLimit2(density)}function getGalleryCardWidthMetrics(density){return density==="compact"?{min:220,ideal:244,max:268}:density==="detailed"?{min:320,ideal:372,max:420}:{min:260,ideal:304,max:348}}function getNormalizedGalleryGridColumns(columns){if(columns==null||columns===""||columns==="auto")return;let parsedColumns=Number.parseInt(String(columns),10);if(!(!Number.isFinite(parsedColumns)||parsedColumns<=0))return Math.max(1,Math.min(parsedColumns,8))}function getGalleryTextLength(value){if(value==null)return 0;let text10=String(value).trim();return text10&&text10!=="\u2014"?text10.length:0}function getGalleryFieldText({column,row:row2,getFieldValue,getDisplayText}){if(!column)return "";let rawValue=getFieldValue(column,row2);if(rawValue==null||rawValue==="")return "";let textValue=getDisplayText(rawValue);return textValue==="\u2014"?"":String(textValue)}function estimateLineCount({text:text10,charsPerLine,maxLines}){let textLength=getGalleryTextLength(text10);return textLength?Math.max(1,Math.min(maxLines,Math.ceil(textLength/charsPerLine))):0}function estimateGalleryDetailCellHeight({text:text10,density,bentoColumns}){let baseHeight=density==="detailed"?54:density==="compact"?44:48,lineCount=estimateLineCount({text:text10,charsPerLine:bentoColumns===1?density==="detailed"?32:26:density==="detailed"?18:15,maxLines:density==="detailed"?3:2});return lineCount?baseHeight+Math.max(0,lineCount-1)*16:baseHeight}function estimateGalleryDetailGridHeight({columns,density,bentoColumns}){if(!columns.length)return 0;let cellHeights=columns.map(column=>estimateGalleryDetailCellHeight({text:column.text,density,bentoColumns}));if(bentoColumns===1)return 12+cellHeights.reduce((sum,height)=>sum+height,0)+Math.max(0,columns.length-1)*8;let totalHeight=12;for(let index=0;index<cellHeights.length;index+=bentoColumns){let rowHeights=cellHeights.slice(index,index+bentoColumns);totalHeight+=Math.max(...rowHeights),index+bentoColumns<cellHeights.length&&(totalHeight+=8);}return totalHeight}function getDefaultGalleryMasonryItemSize({row:row2,columns,galleryFieldKey,galleryDensity,galleryBentoColumns,galleryDetailVisibility,galleryDetailLimit,getFieldValue,isMediaColumn,isTitleCandidate,isSummaryCandidate,getDisplayText,isImageField,isAudioField,cardVariant,renderPreview,renderLeadingVisual,hiddenDetailFieldKeys,layout,resolveRecordVisual}){let iconColumn=columns.find(column=>column.renderType==="icon"),iconVisual=iconColumn&&resolveRecordVisual?resolveRecordVisual(row2?.[iconColumn.key],row2,iconColumn):null,mediaColumn=(galleryFieldKey!=="auto"?columns.find(column=>column.key===galleryFieldKey&&isMediaColumn(column,row2)):null)||columns.find(column=>isMediaColumn(column,row2))||null,mediaValue=mediaColumn?getFieldValue(mediaColumn,row2):null,isImageMedia=mediaColumn?isImageField(mediaColumn,mediaValue):false,isAudioMedia=mediaColumn?isAudioField(mediaColumn,mediaValue):false,hasLeadingVisual=!!renderLeadingVisual||!!iconVisual,contentColumns=columns.filter(column=>column.key!==mediaColumn?.key&&column.renderType!=="icon"),titleColumn=contentColumns.filter(column=>{if(!column||isMediaColumn(column,row2)||!isTitleCandidate(column,row2))return false;let value=getFieldValue(column,row2);return !(value==null||value==="")})[0]||null,titleText=titleColumn?getGalleryFieldText({column:titleColumn,row:row2,getFieldValue,getDisplayText}):String(getDisplayText(row2?.linkKey||row2?.id||"")),summaryColumn=contentColumns.find(column=>!column||column.key===titleColumn?.key||isMediaColumn(column,row2)||!isSummaryCandidate(column,row2)?false:getGalleryFieldText({column,row:row2,getFieldValue,getDisplayText}).length>12)||contentColumns.find(column=>!column||column.key===titleColumn?.key||isMediaColumn(column,row2)||!isSummaryCandidate(column,row2)?false:getGalleryTextLength(getGalleryFieldText({column,row:row2,getFieldValue,getDisplayText}))>0)||null,summaryText=summaryColumn?getGalleryFieldText({column:summaryColumn,row:row2,getFieldValue,getDisplayText}):"",hiddenDetailKeySet=new Set(hiddenDetailFieldKeys),detailColumns=contentColumns.filter(column=>column.key!==titleColumn?.key&&column.key!==summaryColumn?.key&&!hiddenDetailKeySet.has(column.key)).map(column=>({column,text:getGalleryFieldText({column,row:row2,getFieldValue,getDisplayText})})),resolvedDetailLimit=getNormalizedGalleryDetailLimit2({density:galleryDensity,visibility:galleryDetailVisibility,limit:galleryDetailLimit}),visibleDetailColumns=Number.isFinite(resolvedDetailLimit)?detailColumns.slice(0,resolvedDetailLimit):detailColumns,hiddenDetailCount=Math.max(detailColumns.length-visibleDetailColumns.length,0),resolvedBentoColumns=getNormalizedGalleryBentoColumns2(galleryBentoColumns,galleryDensity),resolvedColumnWidth=layout?.columnWidth||getGalleryCardWidthMetrics(galleryDensity).ideal;if(cardVariant==="image-only")return {width:resolvedColumnWidth,height:Math.round(resolvedColumnWidth*1.25)};if(cardVariant==="preview-only")return {width:resolvedColumnWidth,height:Math.round(resolvedColumnWidth*.82)};let estimatedHeight=galleryDensity==="detailed"?84:galleryDensity==="compact"?64:72;typeof renderPreview=="function"?estimatedHeight+=galleryDensity==="detailed"?188:galleryDensity==="compact"?140:164:isImageMedia?estimatedHeight+=Math.round(resolvedColumnWidth*(galleryDensity==="detailed"?.72:.62))+12:isAudioMedia&&(estimatedHeight+=92);let titleLines=estimateLineCount({text:titleText,charsPerLine:galleryDensity==="detailed"?26:24,maxLines:2})||1,summaryLines=estimateLineCount({text:summaryText,charsPerLine:hasLeadingVisual?22:galleryDensity==="detailed"?30:26,maxLines:galleryDensity==="detailed"?4:2}),textHeaderHeight=26+titleLines*18+(summaryLines>0?summaryLines*16+4:0);return estimatedHeight+=Math.max(hasLeadingVisual?56:0,textHeaderHeight),estimatedHeight+=estimateGalleryDetailGridHeight({columns:visibleDetailColumns,density:galleryDensity,bentoColumns:resolvedBentoColumns}),hiddenDetailCount>0&&(estimatedHeight+=18),!summaryText&&visibleDetailColumns.length===0&&(estimatedHeight+=24),{width:resolvedColumnWidth,height:estimatedHeight}}function WorkbenchGalleryView({rows=[],children,columns=[],onRowClick,cardInteraction="button",selectedLinkKey,selectedRowKey,selectedRowKeys,className,isMasonry=false,galleryLayoutMode="auto",galleryRailCardWidth,galleryGap,galleryScrollDirection,galleryGridColumns,galleryGridColumnsResponsive,galleryCardWidthMetrics,galleryCardAspectRatio,galleryCardMinHeight,galleryGridCardWidth,galleryUnderfilledBehavior,galleryMasonryColumnWidth,masonryPlacementStrategy,pagination,onLoadMore,scrollOwner,windowed,galleryFieldKey="auto",galleryDensity="comfortable",galleryBentoColumns=2,galleryDetailVisibility="limit",galleryDetailLimit,shouldEnhanceMultimodal=true,getFieldValue,isMediaColumn,isTitleCandidate,isSummaryCandidate,getDisplayText,renderFieldValue,getImagePreviewSrc,isImageField,isAudioField,AudioPlayerComponent,cardVariant="default",cardPresentation,renderCardSlot,renderCoverTitle,galleryDetailPresentation,renderPreview,renderMeta,renderLeadingVisual,resolveRecordVisual,hiddenDetailFieldKeys=[],labels,formatLabel,getMasonryItemSize}){let{min:resolvedMinCardWidth,ideal:resolvedIdealCardWidth,max:resolvedMaxCardWidth}=galleryCardWidthMetrics??getGalleryCardWidthMetrics(galleryDensity),resolvedRailCardWidth=galleryRailCardWidth||resolvedMinCardWidth,resolvedGridColumnCount=getNormalizedGalleryGridColumns(galleryGridColumns),resolvedGridCardWidth=getNormalizedGalleryGridCardWidth(galleryGridCardWidth),resolvedMasonryColumnWidth=galleryMasonryColumnWidth||resolvedMinCardWidth,isRailLayout=galleryLayoutMode==="rail",resolvedGetFieldValue=getFieldValue||getDefaultGalleryFieldValue,resolvedGetDisplayText=getDisplayText||getDefaultGalleryDisplayText,resolvedIsImageField=isImageField||isDefaultGalleryImageField,resolvedIsAudioField=isAudioField||isDefaultGalleryAudioField,resolvedIsMediaColumn=isMediaColumn||((column,row2)=>isDefaultGalleryMediaColumn(column,row2,{getFieldValue:resolvedGetFieldValue,shouldEnhanceMultimodal,isImageField:resolvedIsImageField,isAudioField:resolvedIsAudioField})),resolvedIsTitleCandidate=isTitleCandidate||((column,row2)=>isDefaultGalleryTitleCandidate(column,row2,{isMediaColumn:resolvedIsMediaColumn})),resolvedIsSummaryCandidate=isSummaryCandidate||((column,row2)=>isDefaultGallerySummaryCandidate(column,row2,{isMediaColumn:resolvedIsMediaColumn})),resolvedRenderFieldValue=renderFieldValue||((column,row2,{compact}={})=>jsxRuntime.jsx("span",{children:resolvedGetDisplayText(resolvedGetFieldValue(column,row2))})),renderGalleryCard=(row2,rowIndex)=>jsxRuntime.jsx(WorkbenchGalleryCard,{row:row2,columns,cardInteraction,onClick:onRowClick?()=>onRowClick(row2,rowIndex):void 0,isSelected:selectedRowKeys?selectedRowKeys.has(String(row2?.linkKey||row2?.id||"")):String(row2?.linkKey||row2?.id||"")===String(selectedRowKey||selectedLinkKey||""),isMasonry,galleryFieldKey,galleryDensity,galleryBentoColumns,galleryDetailVisibility,galleryDetailLimit,galleryDetailPresentation,shouldEnhanceMultimodal,getFieldValue:resolvedGetFieldValue,isMediaColumn:resolvedIsMediaColumn,isTitleCandidate:resolvedIsTitleCandidate,isSummaryCandidate:resolvedIsSummaryCandidate,getDisplayText:resolvedGetDisplayText,renderFieldValue:resolvedRenderFieldValue,getImagePreviewSrc,isImageField:resolvedIsImageField,isAudioField:resolvedIsAudioField,AudioPlayerComponent,cardVariant,cardPresentation,renderCardSlot,renderCoverTitle,renderPreview,renderMeta,renderLeadingVisual,resolveRecordVisual,hiddenDetailFieldKeys,labels,formatLabel},row2?.id||row2?.linkKey||rowIndex),collectionMode=isMasonry?masonryPlacementStrategy==="dense"?"dense":"masonry":isRailLayout?"rail":"grid";if(resolveGalleryScrollDirection(collectionMode,galleryScrollDirection),children!==void 0){let entries=React8.Children.toArray(children);return jsxRuntime.jsx(WorkbenchCollection,{items:entries,callbacks:{onLoadMore},slots:{loadMore:pagination?.loadingMore?jsxRuntime.jsx(BaseLoadingState,{variant:"spinner",className:"py-global",style:{minHeight:0}}):void 0},classNames:{layout:className},config:{windowed,state:pagination,loading:{autoFill:true},getItemKey:(entry,index)=>React8.isValidElement(entry)&&entry.key!=null?entry.key:index,layout:{mode:collectionMode,scrollOwner:scrollOwner??"parent",gap:galleryGap,columns:galleryGridColumnsResponsive??(resolvedGridColumnCount?{mobile:1,tablet:Math.min(2,resolvedGridColumnCount),desktop:resolvedGridColumnCount}:"auto"),underfilledBehavior:galleryUnderfilledBehavior,cardWidth:isRailLayout?resolvedRailCardWidth:void 0,minCardWidth:resolvedGridCardWidth??resolvedMinCardWidth,idealCardWidth:resolvedGridCardWidth??resolvedIdealCardWidth,maxCardWidth:resolvedGridCardWidth??resolvedMaxCardWidth}},renderItem:entry=>entry})}return jsxRuntime.jsx(WorkbenchCollection,{items:rows,slots:{loadMore:pagination?.loadingMore?jsxRuntime.jsx(BaseLoadingState,{variant:"spinner",className:"py-global",style:{minHeight:0}}):void 0},callbacks:{onLoadMore,onItemClick:cardInteraction==="container"&&onRowClick?(row2,context)=>onRowClick(row2,context.index):void 0},classNames:{layout:className},config:{windowed,state:pagination,loading:{autoFill:true},getItemKey:(row2,rowIndex)=>row2?.id||row2?.linkKey||rowIndex,layout:{mode:collectionMode,underfilledBehavior:galleryUnderfilledBehavior,scrollOwner,gap:galleryGap,columns:galleryGridColumnsResponsive??(resolvedGridColumnCount?{mobile:1,tablet:Math.min(2,resolvedGridColumnCount),desktop:resolvedGridColumnCount}:"auto"),cardWidth:isRailLayout?resolvedRailCardWidth:void 0,minCardWidth:resolvedGridCardWidth??resolvedMinCardWidth,idealCardWidth:isMasonry?resolvedMasonryColumnWidth:resolvedGridCardWidth??resolvedIdealCardWidth,maxCardWidth:resolvedGridCardWidth??resolvedMaxCardWidth,placementStrategy:masonryPlacementStrategy??(cardVariant==="image-only"?"shortest":"shelf"),getItemAspectRatio:cardVariant==="image-only"?row2=>{let mediaColumn=columns.find(column=>column.key===galleryFieldKey)??columns.find(column=>resolvedIsMediaColumn(column,row2)),value=mediaColumn?resolvedGetFieldValue(mediaColumn,row2):void 0,ratio=value&&typeof value=="object"&&"aspectRatio"in value?value.aspectRatio:void 0;if(typeof ratio!="string"||!/^\d+(?:\.\d+)?:\d+(?:\.\d+)?$/.test(ratio))return;let[width,height]=ratio.split(":").map(Number);return width>0&&height>0?width/height:void 0}:void 0,getItemSize:cardVariant==="image-only"&&galleryCardAspectRatio&&galleryCardAspectRatio>0?(_row,layout)=>({height:Math.max(galleryCardMinHeight??0,layout.columnWidth/galleryCardAspectRatio)}):isMasonry?(row2,layout)=>{let defaultSize=getDefaultGalleryMasonryItemSize({row:row2,columns,galleryFieldKey,galleryDensity,galleryBentoColumns,galleryDetailVisibility,galleryDetailLimit,getFieldValue:resolvedGetFieldValue,isMediaColumn:resolvedIsMediaColumn,isTitleCandidate:resolvedIsTitleCandidate,isSummaryCandidate:resolvedIsSummaryCandidate,getDisplayText:resolvedGetDisplayText,isImageField:resolvedIsImageField,isAudioField:resolvedIsAudioField,cardVariant,renderPreview,renderLeadingVisual,hiddenDetailFieldKeys,layout,resolveRecordVisual});if(typeof getMasonryItemSize!="function")return defaultSize;let customSize=getMasonryItemSize(row2,{...layout,placementStrategy:layout.placementStrategy==="dense"?"dense":"shelf",defaultSize})||{};return {...defaultSize,...customSize}}:void 0}},renderItem:(row2,context)=>renderGalleryCard(row2,context.index)})}function toCssSize3(value){if(value!==void 0)return typeof value=="number"?`${value}px`:value}var DEFAULT_WORKBENCH_COLUMN_WIDTH=160,DEFAULT_WORKBENCH_ICON_COLUMN_WIDTH=56,DEFAULT_WORKBENCH_ACTION_COLUMN_WIDTH=128;function numericCssSize(value){if(typeof value=="number"&&Number.isFinite(value)&&value>0)return value;if(typeof value!="string")return;let match=value.trim().match(/^(\d+(?:\.\d+)?)px$/i);return match?Number(match[1]):void 0}function defaultWorkbenchColumnWidth(column,action){return column.renderType==="icon"?DEFAULT_WORKBENCH_ICON_COLUMN_WIDTH:action?DEFAULT_WORKBENCH_ACTION_COLUMN_WIDTH:DEFAULT_WORKBENCH_COLUMN_WIDTH}function resolvedWorkbenchColumnWidth(column,controlledWidth,action){return controlledWidth??numericCssSize(column.width)??numericCssSize(column.minWidth)??defaultWorkbenchColumnWidth(column,action)}function defaultFormatLabel2(value){return value==null||value===false?null:value}function toTitle(value){if(typeof value=="string"||typeof value=="number")return String(value)}function defaultGetRowKey(row2,rowIndex){return row2?.id??row2?.key??row2?.linkKey??rowIndex}function defaultGetRowSelectionKey(row2){return row2?.linkKey??row2?.id??row2?.key}function getOrderedColumns(columns,columnOrder){if(!columnOrder?.length)return columns;let columnMap=new Map(columns.map(column=>[column.key,column])),orderedColumns=columnOrder.map(columnKey=>columnMap.get(columnKey)).filter(Boolean),orderedKeySet=new Set(orderedColumns.map(column=>column.key)),remainingColumns=columns.filter(column=>!orderedKeySet.has(column.key));return [...orderedColumns,...remainingColumns]}function normalizeColumnOrder(columnKeys,columnOrder){let validColumnKeys=new Set(columnKeys),orderedKeys=(columnOrder||[]).filter(columnKey=>validColumnKeys.has(columnKey)),orderedKeySet=new Set(orderedKeys),remainingKeys=columnKeys.filter(columnKey=>!orderedKeySet.has(columnKey));return [...orderedKeys,...remainingKeys]}function WorkbenchTableHeaderHelper({helperText,className}){return hasRenderableNode(helperText)?jsxRuntime.jsxs("span",{className:cn("group relative inline-flex items-center",className),children:[jsxRuntime.jsx("button",{type:"button",title:toTitle(helperText),"aria-label":toTitle(helperText)||"Field help",className:"inline-flex h-4 w-4 items-center justify-center rounded-md border border-border/60 bg-background text-xs font-semibold normal-case tracking-normal text-muted-foreground shadow-sm transition-colors hover:border-primary/40 hover:text-primary focus-visible:border-primary/40 focus-visible:text-primary focus-visible:outline-hidden",onClick:event=>event.stopPropagation(),children:"?"}),jsxRuntime.jsx("span",{role:"tooltip",className:"pointer-events-none absolute left-1/2 top-full z-40 mt-2 hidden w-72 -translate-x-1/2 whitespace-pre-line rounded-lg border border-border/60 bg-card px-3 py-2 text-xs font-normal normal-case leading-5 tracking-normal text-foreground shadow-sm backdrop-blur-sm group-hover:block group-focus-within:block",children:helperText})]}):null}function WorkbenchTableView({rows=[],columns=[],onRowClick,selectedRowKey,selectedLinkKey,activePrimaryColumn,activeTablePrimaryColumn,renderedRowCount,totalRowCount,tableMinWidth,minWidth,bodyMaxHeight="min(58vh, 38rem)",stickyFirstColumn=true,appearance:appearance2,headerPresentation,fillRemainingWidthColumnKey,columnOrder,columnSizes,columnDragEnabled,columnResizeEnabled,className,tableClassName,rowClassName,classNames,style,renderCell,renderFieldValue,renderColumnHeader,onColumnOrderChange,onColumnSizeChange,onSort,formatLabel=defaultFormatLabel2,getColumnDataType,getColumnIcon,getColumnTypeIcon,getRowKey=defaultGetRowKey,getRowSelectionKey=defaultGetRowSelectionKey,isActionColumn,isActionField,isRowDisabled,isWorkbenchPlaceholderRow,emptyState="-",hiddenRowsMessage,scrollFooter,scrollRestoration}){let columnKeySignature=columns.map(column=>column.key).join(""),defaultColumnOrder=React8.useMemo(()=>columnKeySignature?columnKeySignature.split(""):[],[columnKeySignature]),[internalColumnOrder,setInternalColumnOrder]=React8.useState(defaultColumnOrder),[internalColumnSizes,setInternalColumnSizes]=React8.useState({}),scrollAreaRef=React8.useRef(null),rowElements=React8.useRef(new Map),scrollAdapter=React8.useRef(scrollRestoration);scrollAdapter.current=scrollRestoration;let restoredScrollKey=React8.useRef(void 0),saveScroll=React8.useCallback(()=>{let viewport=scrollAreaRef.current,adapter=scrollAdapter.current;if(!viewport||!adapter||restoredScrollKey.current!==adapter.key)return;let top=viewport.getBoundingClientRect().top,anchor=Array.from(rowElements.current.entries()).find(([,element])=>element.getBoundingClientRect().bottom>top);adapter.write({x:viewport.scrollLeft,y:viewport.scrollTop,...anchor?{rowKey:anchor[0],rowOffset:anchor[1].getBoundingClientRect().top-top}:{}});},[]);React8.useEffect(()=>{let viewport=scrollAreaRef.current,adapter=scrollAdapter.current;if(!viewport||!adapter||restoredScrollKey.current===adapter.key||rows.length===0)return;let position=adapter.read(),restore=()=>{let anchor=position?.rowKey?rowElements.current.get(position.rowKey):void 0,y=anchor&&typeof position?.rowOffset=="number"?viewport.scrollTop+anchor.getBoundingClientRect().top-viewport.getBoundingClientRect().top-position.rowOffset:position?.y??0;viewport.scrollTo({left:position?.x??0,top:Math.max(0,y),behavior:"auto"}),restoredScrollKey.current=adapter.key;},ownerWindow=viewport.ownerDocument.defaultView;if(!ownerWindow){restore();return}let frame=ownerWindow.requestAnimationFrame(restore);return ()=>ownerWindow.cancelAnimationFrame(frame)},[rows,scrollRestoration?.key]),React8.useEffect(()=>{let ownerWindow=scrollAreaRef.current?.ownerDocument.defaultView;return ownerWindow?.addEventListener("pagehide",saveScroll),()=>{ownerWindow?.removeEventListener("pagehide",saveScroll),saveScroll();}},[saveScroll]);let[tableViewportWidth,setTableViewportWidth]=React8.useState();React8.useEffect(()=>{setInternalColumnOrder(current=>normalizeColumnOrder(defaultColumnOrder,current));},[defaultColumnOrder]);let resolvedColumnOrder=columnOrder?normalizeColumnOrder(defaultColumnOrder,columnOrder):internalColumnOrder,resolvedColumnSizes=columnSizes??internalColumnSizes,handleColumnOrderChange=React8.useCallback((nextOrder,detail)=>{let normalizedOrder=normalizeColumnOrder(defaultColumnOrder,nextOrder);columnOrder||setInternalColumnOrder(normalizedOrder),onColumnOrderChange?.(normalizedOrder,detail);},[columnOrder,defaultColumnOrder,onColumnOrderChange]),handleColumnSizeChange=React8.useCallback((columnId,width,detail)=>{columnSizes||setInternalColumnSizes(current=>({...current,[columnId]:width})),onColumnSizeChange?.(columnId,width,detail);},[columnSizes,onColumnSizeChange]),resolvedSelectedKey=selectedRowKey??selectedLinkKey,resolvedActivePrimaryColumn=activePrimaryColumn??activeTablePrimaryColumn,sourceOrderedColumns=getOrderedColumns(columns,resolvedColumnOrder),fixedTableWidth=fillRemainingWidthColumnKey?sourceOrderedColumns.reduce((total,column)=>column.key===fillRemainingWidthColumnKey?total:total+resolvedWorkbenchColumnWidth(column,resolvedColumnSizes[column.key],isActionColumn?.(column)??isActionField?.(column)??false),0):void 0,remainingTableWidth=fillRemainingWidthColumnKey&&fixedTableWidth!==void 0&&tableViewportWidth!==void 0?Math.max(0,Math.round(tableViewportWidth-fixedTableWidth)):void 0,orderedColumns=sourceOrderedColumns.flatMap(column=>column.key!==fillRemainingWidthColumnKey?[column]:remainingTableWidth===0?[]:remainingTableWidth===void 0?[column]:[{...column,width:remainingTableWidth,minWidth:remainingTableWidth,maxWidth:remainingTableWidth}]),hiddenRowCount=Math.max(0,Number(totalRowCount||rows.length)-Number(renderedRowCount||rows.length)),renderValue=renderCell??renderFieldValue??((column,row2)=>row2?.[column.key]),isAction=isActionColumn??isActionField??(()=>false),isDisabled=isRowDisabled??isWorkbenchPlaceholderRow??(()=>false),resolveColumnIcon=getColumnIcon??getColumnTypeIcon,resolvedTableWidth=fixedTableWidth!==void 0&&remainingTableWidth!==void 0?fixedTableWidth+remainingTableWidth:void 0,resolvedMinWidth=resolvedTableWidth??tableMinWidth??minWidth??Math.max(760,orderedColumns.reduce((total,column)=>total+resolvedWorkbenchColumnWidth(column,resolvedColumnSizes[column.key],isAction(column)),0));React8.useEffect(()=>{if(!fillRemainingWidthColumnKey){setTableViewportWidth(void 0);return}let scrollArea=scrollAreaRef.current;if(!scrollArea)return;let ownerWindow=scrollArea.ownerDocument.defaultView,updateWidth=()=>{let nextWidth=Math.round(scrollArea.getBoundingClientRect().width);!Number.isFinite(nextWidth)||nextWidth<=0||setTableViewportWidth(current=>current===nextWidth?current:nextWidth);};updateWidth();let Observer=ownerWindow?.ResizeObserver,observer=Observer?new Observer(updateWidth):void 0;return observer?.observe(scrollArea),ownerWindow?.addEventListener("resize",updateWidth),()=>{observer?.disconnect(),ownerWindow?.removeEventListener("resize",updateWidth);}},[fillRemainingWidthColumnKey]);let footer=hiddenRowCount>0&&hiddenRowsMessage?typeof hiddenRowsMessage=="function"?hiddenRowsMessage(hiddenRowCount,renderedRowCount||rows.length,totalRowCount||rows.length):hiddenRowsMessage:null;return jsxRuntime.jsxs(BaseTableContainer,{appearance:appearance2,className:cn("w-full overflow-hidden rounded-lg border border-border/40 bg-muted/15 dark:border-border/35 dark:bg-muted/10",classNames?.root,className),style:bodyMaxHeight==="100%"?{display:"flex",minHeight:0,flex:1,flexDirection:"column",...style}:style,children:[jsxRuntime.jsxs("div",{ref:scrollAreaRef,onScroll:saveScroll,className:cn("w-full overflow-auto",classNames?.scrollArea),style:{maxHeight:toCssSize3(bodyMaxHeight),...bodyMaxHeight==="100%"?{minHeight:0,flex:1}:{}},children:[jsxRuntime.jsxs(BaseTable,{appearance:appearance2,columnOrder:resolvedColumnOrder,columnSizes:resolvedColumnSizes,columnDragEnabled,columnResizeEnabled,onColumnOrderChange:handleColumnOrderChange,onColumnSizeChange:handleColumnSizeChange,className:cn("w-full table-auto text-left text-xs",classNames?.table,tableClassName),style:{width:resolvedTableWidth,minWidth:resolvedMinWidth},children:[jsxRuntime.jsx(BaseTableHeader,{appearance:appearance2,className:cn("z-20 text-xs font-sans text-muted-foreground",classNames?.header),children:jsxRuntime.jsx(BaseTableRow,{className:cn("hover:bg-transparent",classNames?.headerRow),children:orderedColumns.map((column,columnIndex)=>{let defaultColumnWidth=defaultWorkbenchColumnWidth(column,isAction(column)),columnType=column.renderType||column.type||getColumnDataType?.(column.key,rows,column),columnIcon=renderWorkbenchIcon(resolveColumnIcon?.(columnType,column),"h-3.5 w-3.5 shrink-0 text-primary"),followsRecordIcon=orderedColumns[columnIndex-1]?.renderType==="icon"&&column.key===resolvedActivePrimaryColumn?.key,headerContent=renderColumnHeader?renderColumnHeader(column,{column,columnIndex,columns:orderedColumns,rows,columnType}):formatLabel(column.label,{column}),headerTrailing=!renderColumnHeader&&(hasRenderableNode(column.trailing)||hasRenderableNode(column.helperText))?jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[hasRenderableNode(column.trailing)?formatLabel(column.trailing,{column}):null,jsxRuntime.jsx(WorkbenchTableHeaderHelper,{helperText:formatLabel(column.helperText,{column}),className:classNames?.helper})]}):void 0,sortable=!!column.sortable,handleSort=sortable&&onSort?()=>onSort(column.key,column):void 0;return jsxRuntime.jsx(BaseTableHead,{appearance:appearance2,presentation:headerPresentation,columnId:column.key,align:column.align,icon:renderColumnHeader?void 0:columnIcon,label:headerContent,description:renderColumnHeader?void 0:formatLabel(column.description,{column}),meta:renderColumnHeader?void 0:formatLabel(column.meta,{column}),actions:column.actions,trailing:headerTrailing,sortable,sortDirection:column.sortDirection,sortLabel:column.sortLabel,onSort:handleSort,draggable:column.draggable,dragLabel:column.dragLabel,resizable:column.resizable,resizeLabel:column.resizeLabel,width:column.width??defaultColumnWidth,minWidth:typeof column.minWidth=="number"?column.minWidth:void 0,maxWidth:typeof column.maxWidth=="number"?column.maxWidth:void 0,className:cn("sticky top-0 z-20 h-auto whitespace-nowrap bg-card/95 px-4 py-3 font-medium backdrop-blur-sm supports-[backdrop-filter]:bg-card/90",stickyFirstColumn&&columnIndex===0&&"md:left-0 md:z-30 md:shadow-[1px_0_0_0_hsl(var(--border)/0.35)]",column.compactHeaderClassName,column.renderType==="icon"&&"pl-3 pr-1",followsRecordIcon&&"pl-2",classNames?.headerCell,column.headerClassName),style:{minWidth:typeof column.minWidth=="string"?column.minWidth:void 0,maxWidth:typeof column.maxWidth=="string"?column.maxWidth:void 0,...column.headerStyle}},column.key)})})}),jsxRuntime.jsx(BaseTableBody,{appearance:appearance2,className:cn("divide-y divide-border/35 dark:divide-border/30",classNames?.body),children:rows.length?rows.map((row2,rowIndex)=>{let key3=getRowKey(row2,rowIndex),disabled=isDisabled(row2,rowIndex),selectionKey=getRowSelectionKey(row2,rowIndex),selected2=!!(resolvedSelectedKey&&String(selectionKey)===String(resolvedSelectedKey)),resolvedRowClassName=typeof rowClassName=="function"?rowClassName(row2,rowIndex):rowClassName;return jsxRuntime.jsx(BaseTableRow,{appearance:appearance2,ref:element=>{element?rowElements.current.set(String(key3),element):rowElements.current.delete(String(key3));},interactive:!!onRowClick&&!disabled,"data-item-key":String(key3),tabIndex:onRowClick&&!disabled?0:void 0,selected:selected2,disabled,onClick:event=>{disabled||(onRowClick&&event.currentTarget.focus({preventScroll:true}),onRowClick?.(row2,rowIndex));},onKeyDown:event=>{event.target!==event.currentTarget||disabled||!onRowClick||!["Enter"," "].includes(event.key)||(event.preventDefault(),onRowClick(row2,rowIndex));},className:cn(onRowClick&&!disabled?"cursor-pointer":"cursor-default",selected2?"bg-primary/10 hover:bg-primary/15":disabled?"":"hover:bg-muted/25 dark:hover:bg-muted/15",classNames?.row,resolvedRowClassName),children:orderedColumns.map((column,columnIndex)=>{let shouldWrap=isAction(column)||column.wrap===true,followsRecordIcon=orderedColumns[columnIndex-1]?.renderType==="icon"&&column.key===resolvedActivePrimaryColumn?.key;return jsxRuntime.jsx(BaseTableCell,{appearance:appearance2,align:column.align,className:cn(shouldWrap?"align-top whitespace-normal":"whitespace-nowrap","px-4 py-3 text-muted-foreground",!shouldWrap&&"overflow-hidden text-ellipsis",stickyFirstColumn&&columnIndex===0&&"md:sticky md:left-0 md:z-10 md:bg-card/95 md:text-foreground md:shadow-[1px_0_0_0_hsl(var(--border)/0.3)]",column.compactCellClassName,column.renderType==="icon"&&"pl-3 pr-1",followsRecordIcon&&"pl-2",classNames?.cell,column.cellClassName),style:column.cellStyle,children:renderValue(column,row2,{row:row2,rowIndex,column,columnIndex,compact:true,surface:"list"})},`${key3}-${column.key}`)})},key3)}):jsxRuntime.jsx(BaseTableEmpty,{appearance:appearance2,colSpan:Math.max(orderedColumns.length,1),classNames:{cell:"px-4 py-10 text-center text-sm text-muted-foreground"},children:emptyState})})]}),hasRenderableNode(scrollFooter)?jsxRuntime.jsx("div",{style:{minWidth:resolvedMinWidth},children:scrollFooter}):null]}),footer?jsxRuntime.jsx("div",{className:cn("border-t border-border/40 px-4 py-2 text-xs text-muted-foreground dark:border-border/30",classNames?.footer),children:footer}):null]})}function toCssSize4(value){if(value!==void 0)return typeof value=="number"?`${value}px`:value}function defaultGetRowId(row2,rowIndex){return String(row2?.id??row2?.key??rowIndex)}function defaultGetColumnId(row2){return String(row2?.columnId??row2?.status??"")}function defaultRenderCard(row2){let value=row2?.title??row2?.name??row2?.id??"Untitled";return jsxRuntime.jsx("div",{className:"rounded-lg border border-border/70 bg-card px-3 py-2 text-sm text-foreground shadow-sm",children:String(value)})}function WorkbenchLaneDraggableCard({row:row2,rowId,rowIndex,column,classNames,renderCard}){let{attributes,listeners,setNodeRef,isDragging}=core.useDraggable({id:rowId});return jsxRuntime.jsx("div",{ref:setNodeRef,...listeners,...attributes,className:cn("touch-none",classNames?.cardWrapper),children:renderCard(row2,{row:row2,rowIndex,column,isDragging,isOverlay:false})})}function WorkbenchLaneColumnView({column,columnRows,columnWidth,columnMinHeight,emptyColumn,classNames,renderCard}){let{setNodeRef,isOver}=core.useDroppable({id:column.id});return jsxRuntime.jsxs("section",{className:cn("flex shrink-0 flex-col rounded-xl border border-border/60 bg-card p-2 shadow-sm",classNames?.column,column.className),style:{width:toCssSize4(columnWidth)??"280px"},children:[jsxRuntime.jsxs("div",{className:cn("flex h-10 items-center gap-2 px-1",classNames?.columnHeader,column.headerClassName),children:[column.icon?jsxRuntime.jsx("span",{className:cn("inline-flex h-4 w-4 items-center justify-center text-muted-foreground",classNames?.columnIcon,column.iconClassName),children:column.icon}):null,jsxRuntime.jsx("span",{className:cn("inline-flex items-center rounded px-2 py-0.5 text-xs font-semibold bg-muted text-muted-foreground",classNames?.columnBadge,column.badgeClassName),children:column.label??column.id}),jsxRuntime.jsx("span",{className:cn("text-xs text-muted-foreground",classNames?.columnCount),children:columnRows.length})]}),jsxRuntime.jsx("div",{ref:setNodeRef,className:cn("mt-1 flex min-h-[200px] flex-1 flex-col gap-2 overflow-y-auto rounded-lg p-1 transition-colors [scrollbar-width:thin]",isOver&&"bg-accent/60",classNames?.columnBody,column.bodyClassName),style:{minHeight:toCssSize4(columnMinHeight)},children:columnRows.length?columnRows.map(({row:row2,rowIndex,rowId})=>jsxRuntime.jsx(WorkbenchLaneDraggableCard,{row:row2,rowId,rowIndex,column,classNames,renderCard},rowId)):emptyColumn?jsxRuntime.jsx("div",{className:cn("flex min-h-24 items-center justify-center rounded-lg border border-dashed border-border/60 px-3 py-4 text-xs text-muted-foreground",classNames?.emptyColumn),children:emptyColumn}):null})]})}function WorkbenchLaneView({rows=[],columns=[],getRowId=defaultGetRowId,getColumnId=defaultGetColumnId,renderCard,renderOverlayCard,onMoveRow,onSelectRow,emptyColumn,activationDistance=5,columnWidth=280,columnMinHeight,className,classNames,style}){let cardRenderer=renderCard??((row2,context)=>onSelectRow?jsxRuntime.jsx(BaseButton,{className:"w-full justify-start whitespace-normal text-left",onClick:()=>onSelectRow({rowId:getRowId(row2,context.rowIndex)}),children:String(row2?.title??row2?.name??getRowId(row2,context.rowIndex))}):defaultRenderCard(row2)),[activeRowId,setActiveRowId]=React8.useState(null),sensors=core.useSensors(core.useSensor(core.PointerSensor,{activationConstraint:{distance:activationDistance}})),columnMap=React8.useMemo(()=>new Map(columns.map(column=>[column.id,column])),[columns]),rowEntries=React8.useMemo(()=>rows.map((row2,rowIndex)=>({row:row2,rowIndex,rowId:getRowId(row2,rowIndex),columnId:getColumnId(row2,rowIndex)})),[getColumnId,getRowId,rows]),activeEntry=activeRowId?rowEntries.find(entry=>entry.rowId===activeRowId):void 0,rowsByColumn=React8.useMemo(()=>{let next=new Map;return columns.forEach(column=>next.set(column.id,[])),rowEntries.forEach(({row:row2,rowIndex,rowId,columnId})=>{next.get(columnId)?.push({row:row2,rowIndex,rowId});}),next},[columns,rowEntries]),activeColumn=activeEntry?columnMap.get(activeEntry.columnId):void 0,handleDragStart=React8.useCallback(event=>{setActiveRowId(String(event.active.id));},[]),handleDragEnd=React8.useCallback(event=>{setActiveRowId(null);let rowId=String(event.active.id),nextColumnId=String(event.over?.id??""),activeRow=rowEntries.find(entry=>entry.rowId===rowId);!activeRow||!columnMap.has(nextColumnId)||activeRow.columnId===nextColumnId||onMoveRow?.(rowId,nextColumnId,activeRow.row);},[columnMap,onMoveRow,rowEntries]),handleDragCancel=React8.useCallback(()=>{setActiveRowId(null);},[]);return jsxRuntime.jsxs(core.DndContext,{sensors,onDragStart:handleDragStart,onDragEnd:handleDragEnd,onDragCancel:handleDragCancel,children:[jsxRuntime.jsx("div",{className:cn("flex min-h-0 flex-1 gap-4 overflow-x-auto p-4 [scrollbar-width:thin]",classNames?.root,className),style,children:columns.map(column=>jsxRuntime.jsx(WorkbenchLaneColumnView,{column,columnRows:rowsByColumn.get(column.id)||[],columnWidth,columnMinHeight,emptyColumn,classNames,renderCard:cardRenderer},column.id))}),jsxRuntime.jsx(core.DragOverlay,{children:activeEntry&&activeColumn?jsxRuntime.jsx("div",{className:cn(classNames?.overlayWrapper),children:(renderOverlayCard||cardRenderer)(activeEntry.row,{row:activeEntry.row,rowIndex:activeEntry.rowIndex,column:activeColumn,isDragging:false,isOverlay:true})}):null})]})}var identifier={type:"string",minLength:1,maxLength:512};function DirectoryPreview({title,cover,icon,onOpen}){let[failed,setFailed]=React8.useState(false);return React8.useEffect(()=>setFailed(false),[cover]),jsxRuntime.jsx(BaseButton,{variant:"ghost",className:"mb-global flex aspect-[4/3] h-auto w-full items-center justify-center overflow-hidden rounded-base p-0","aria-label":title,onPointerDown:event=>event.stopPropagation(),onClick:onOpen,children:cover&&!failed?cover.startsWith("file://")?jsxRuntime.jsx(BaseAssetIcon,{icon:{kind:"image",src:cover},alt:title,className:"h-full w-full rounded-none border-0"}):jsxRuntime.jsx("img",{src:cover,alt:title,className:"h-full w-full object-cover",loading:"lazy",onError:()=>setFailed(true)}):jsxRuntime.jsx(BaseAssetIcon,{alt:title,icon:icon?.startsWith("lucide:")?{kind:"lucide",name:icon.slice(7)}:/^https?:\/\//.test(icon||"")?{kind:"image",src:icon}:icon?{kind:"emoji",value:icon.replace(/^emoji:/,"").slice(0,64)}:{kind:"lucide",name:"image"}})})}var DIRECTORY_VIEW_SCHEMA="monkeys-design://ontology-view/directory/v1",DIRECTORY_VIEW_MODEL_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:DIRECTORY_VIEW_SCHEMA,type:"object",additionalProperties:false,required:["viewMode","columns","rows","pagination","rowActions"],properties:{viewMode:{enum:["table","gallery","kanban"]},emptyLabelKey:identifier,actionLabelKey:identifier,loadingLabelKey:identifier,columns:{type:"array",minItems:1,items:{type:"object",additionalProperties:false,required:["key","labelKey"],properties:{key:identifier,labelKey:identifier,hidden:{type:"boolean"}}}},rows:{type:"array",items:{type:"object",additionalProperties:false,required:["id","title","summary","columnId","columnLabel","href","browsingContext"],properties:{id:identifier,title:{type:"string"},summary:{type:"string"},cover:{type:"string"},icon:{type:"string"},columnId:identifier,columnLabel:{type:"string"},href:{type:"string",pattern:"^/(?!/)[^\\\\]*$"},browsingContext:{enum:["same","new"]},actionIds:{type:"array",uniqueItems:true,items:identifier}}}},rowActions:{type:"array",items:{type:"object",additionalProperties:false,required:["id","labelKey"],properties:{id:identifier,labelKey:identifier,destructive:{type:"boolean"},disabled:{type:"boolean"}}}},settings:{type:"object",additionalProperties:false,properties:{galleryColumns:{type:"integer",minimum:1,maximum:8},density:{enum:["compact","comfortable","detailed"]},layout:{enum:["fixed","masonry"]},tableDensity:{enum:["compact","comfortable","tall"]},detailVisibility:{enum:["all","limit"]},detailLimit:{type:"integer",minimum:1,maximum:100},coverField:{enum:["auto","board","icon"]},tableGroup:{enum:["none","tag","owner"]},kanbanPrimary:{enum:["title","summary"]}}},pagination:{type:"object",additionalProperties:false,required:["hasMore","nextCursor","loadingMore"],properties:{hasMore:{type:"boolean"},nextCursor:{type:["string","null"]},loadingMore:{type:"boolean"},errorCode:{type:"string"}}}}},DIRECTORY_ROW_ACTION_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"monkeys-design://intent/directory-row-action/v1",type:"object",additionalProperties:false,required:["rowId","actionId"],properties:{rowId:identifier,actionId:identifier}},DIRECTORY_LOAD_MORE_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"monkeys-design://intent/directory-load-more/v1",type:"object",additionalProperties:false,required:["cursor"],properties:{cursor:{type:"string",minLength:1,maxLength:2048}}},DirectoryViewCapabilityRenderer=({model,translate,emitIntent,loading,errorCode:errorCode2,pendingActionInvocations})=>{let rows=model.rows??[],actions=model.rowActions??[],settings=model.settings??{},pagination=model.pagination,viewport=React8.useRef(null),requested=React8.useRef(),next=React8.useCallback(()=>{!pagination?.hasMore||!pagination.nextCursor||pagination.loadingMore||loading||requested.current===pagination.nextCursor||(requested.current=pagination.nextCursor,Promise.resolve(emitIntent("capability.directory-view.load-more",{cursor:pagination.nextCursor})).catch(()=>{requested.current=void 0;}));},[emitIntent,pagination?.hasMore,pagination?.nextCursor,pagination?.loadingMore,loading]);React8.useEffect(()=>{requested.current=void 0;},[pagination?.nextCursor,pagination?.loadingMore]),React8.useEffect(()=>{let root=viewport.current;if(!root||loading)return;let check=target=>{target.scrollHeight-target.clientHeight-target.scrollTop<target.clientHeight/2&&next();},tableViewport=root.querySelector(".directory-table-scroll"),lanes=[...root.querySelectorAll(".directory-lane-scroll")],targets=model.viewMode==="kanban"&&lanes.length?lanes:[settings.tableGroup&&settings.tableGroup!=="none"?root:tableViewport||root],onScroll=event=>check(event.target);root.addEventListener("scroll",onScroll,true);let observer=new ResizeObserver(()=>targets.forEach(check));return targets.forEach(element=>observer.observe(element)),targets.forEach(check),()=>{root.removeEventListener("scroll",onScroll,true),observer.disconnect();}},[next,loading,rows.length,model.viewMode]);let columns=React8.useMemo(()=>(model.columns??[]).filter(x=>!x.hidden).map(x=>({key:x.key,label:translate(x.labelKey)})),[model.columns,translate]),open=row2=>{/^\/(?!\/)[^\\]*$/.test(row2.href)&&(row2.browsingContext==="new"?window.open(row2.href,"_blank","noopener,noreferrer"):window.location.assign(row2.href));},menu=row2=>{let allowed=actions.filter(action=>!row2.actionIds||row2.actionIds.includes(action.id));return allowed.length?jsxRuntime.jsxs(DropdownMenu,{children:[jsxRuntime.jsx(DropdownMenuTrigger,{asChild:true,children:jsxRuntime.jsx(BaseButton,{variant:"ghost",loading:!!pendingActionInvocations?.length,disabled:!!pendingActionInvocations?.length,label:"\u22EF","aria-label":translate(String(model.actionLabelKey||"common.utils.operate")),onClick:event=>event.stopPropagation(),onPointerDown:event=>event.stopPropagation(),onKeyDown:event=>event.stopPropagation()})}),jsxRuntime.jsx(DropdownMenuContent,{onClick:event=>event.stopPropagation(),children:allowed.map(action=>jsxRuntime.jsx(DropdownMenuItem,{disabled:action.disabled,"data-destructive":action.destructive||void 0,onSelect:event=>{event.stopPropagation(),emitIntent("capability.directory-view.row-action",{rowId:row2.id,actionId:action.id});},children:translate(action.labelKey)},action.id))})]}):null},galleryProps={cardInteraction:"container",columns:[{key:"cover",label:""},...columns],galleryGridColumns:settings.galleryColumns??"auto",galleryDensity:settings.density,galleryDetailPresentation:"lines",galleryDetailVisibility:settings.detailVisibility,galleryDetailLimit:settings.detailLimit,isMasonry:settings.layout==="masonry",getFieldValue:(column,row2)=>model.viewMode==="kanban"&&settings.kanbanPrimary==="summary"&&column.key==="title"?row2.summary||row2.title:row2[column.key],isTitleCandidate:column=>column.key==="title",isSummaryCandidate:column=>column.key==="summary",isMediaColumn:column=>column.key==="cover",isImageField:column=>column.key==="cover",getImagePreviewSrc:value=>String(value||""),hiddenDetailFieldKeys:["summary"],renderPreview:({row:row2})=>jsxRuntime.jsx(DirectoryPreview,{title:row2.title,cover:settings.coverField==="icon"?void 0:row2.cover,icon:row2.icon,onOpen:()=>open(row2)}),renderMeta:({row:row2})=>menu(row2)};if(!rows.length)return loading?jsxRuntime.jsx(BaseLoadingState,{title:translate(String(model.loadingLabelKey||"common.load.loading")),variant:"skeleton"}):jsxRuntime.jsx(BaseEmptyState,{title:translate(String(model.emptyLabelKey||"common.load.empty"))});let laneColumns=Array.from(new Map(rows.map(row2=>[row2.columnId,{id:row2.columnId,label:row2.columnLabel}])).values());return jsxRuntime.jsxs("div",{ref:viewport,className:"flex h-full min-h-0 min-w-0 flex-col overflow-auto","data-directory-view":String(model.viewMode),children:[errorCode2?jsxRuntime.jsx("div",{"data-action-error-code":errorCode2,children:jsxRuntime.jsx(CapabilityStatus,{kind:"error",code:errorCode2,translate})}):null,model.viewMode==="table"&&settings.tableGroup&&settings.tableGroup!=="none"?jsxRuntime.jsx("div",{className:"space-y-global",children:laneColumns.map(group=>jsxRuntime.jsxs("section",{children:[jsxRuntime.jsx(BaseText,{as:"div",size:"sm",tone:"muted",className:"mb-global font-medium",children:group.label||translate("common.utils.all")}),jsxRuntime.jsx(WorkbenchTableView,{rows:rows.filter(row2=>row2.columnId===group.id),columns:[...columns,...actions.length?[{key:"_actions",label:"",width:64}]:[]],onRowClick:open,renderCell:(column,row2)=>column.key==="_actions"?menu(row2):String(row2[column.key]||"")})]},group.id))}):model.viewMode==="table"?jsxRuntime.jsx(WorkbenchTableView,{rows,columns:[...columns,...actions.length?[{key:"_actions",label:"",width:64}]:[]],appearance:{density:settings.tableDensity==="compact"?"compact":"default"},onRowClick:open,bodyMaxHeight:"100%",classNames:{scrollArea:"directory-table-scroll"},renderCell:(column,row2)=>column.key==="_actions"?menu(row2):String(row2[column.key]||"")}):model.viewMode==="kanban"?jsxRuntime.jsx(WorkbenchLaneView,{rows,columns:laneColumns,classNames:{columnBody:"directory-lane-scroll"},onSelectRow:({rowId})=>{let row2=rows.find(x=>x.id===rowId);row2&&open(row2);},renderCard:row2=>jsxRuntime.jsx(WorkbenchGalleryCard,{...galleryProps,row:row2,onClick:()=>open(row2)})}):jsxRuntime.jsx(WorkbenchGalleryView,{...galleryProps,rows,onRowClick:open}),pagination?.loadingMore?jsxRuntime.jsx(BaseText,{role:"status",size:"sm",tone:"muted",className:"shrink-0 p-global text-center",children:translate(String(model.loadingLabelKey||"common.load.loading"))}):null]})},LOCATION_NAVIGATION_SCHEMA="monkeys-design://navigation/location/v1",LOCATION_NAVIGATION_MODEL_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:LOCATION_NAVIGATION_SCHEMA,type:"object",additionalProperties:false,required:["href","browsingContext"],properties:{href:{type:"string",pattern:"^/(?!/)[^\\\\]*$"},browsingContext:{enum:["same","new"]}}},LocationNavigationCapabilityRenderer=({model,emitIntent})=>{let last=React8.useRef();return React8.useEffect(()=>{let href=String(model.href||"");!/^\/(?!\/)[^\\]*$/.test(href)||last.current===href||(last.current=href,model.browsingContext==="new"?window.open(href,"_blank","noopener,noreferrer"):window.location.assign(href),emitIntent("capability.location-navigation.complete",{}));},[model.href,model.browsingContext,emitIntent]),null};var PAGINATION_PROPERTIES={hasMore:{type:"boolean"},nextCursor:{oneOf:[{type:"string",minLength:1,maxLength:2048},{type:"null"}]},loadingMore:{type:"boolean"},errorCode:{type:"string",minLength:1,maxLength:128}},cursorPaginationSchema=()=>({oneOf:[{type:"object",additionalProperties:false,required:["hasMore","nextCursor","loadingMore"],properties:{mode:{const:"append"},...PAGINATION_PROPERTIES,pageSize:{type:"integer",minimum:1,maximum:1e3},returned:{type:"integer",minimum:0},total:{type:"integer",minimum:0},loadedCount:{type:"integer",minimum:0},loadedStart:{type:"integer",minimum:0},loadedEnd:{type:"integer",minimum:0}}},{type:"object",additionalProperties:false,required:["mode","currentPage","totalPages","hasPrevious","hasNext","loading","pageSize","returned","total","loadedCount","loadedStart","loadedEnd"],properties:{mode:{const:"window"},currentPage:{type:"integer",minimum:1},totalPages:{type:"integer",minimum:1},hasPrevious:{type:"boolean"},hasNext:{type:"boolean"},loading:{type:"boolean"},errorCode:{type:"string",minLength:1,maxLength:128},pageSize:{type:"integer",minimum:1,maximum:1e3},returned:{type:"integer",minimum:0},total:{type:"integer",minimum:0},loadedCount:{type:"integer",minimum:0},loadedStart:{type:"integer",minimum:0},loadedEnd:{type:"integer",minimum:0}}}]});var text4={type:"string"},CHOICE_PICKER_MODEL_SCHEMA={type:"object",additionalProperties:false,properties:{nodes:{type:"array",items:{type:"object",additionalProperties:false,properties:{id:text4,label:text4,labelKey:text4,labelI18n:{type:"object",additionalProperties:text4},count:{type:"integer",minimum:0},defaultSelected:{type:"boolean"}},required:["id","label"]}},total:{type:"integer",minimum:0},selectedNodeId:text4,initialSelectionId:text4,showSelectedId:{type:"boolean"},search:{type:"object",additionalProperties:false,properties:{value:text4},required:["value"]},placeholderKey:text4,searchPlaceholderKey:text4,countLabelKey:text4,statLabelKey:text4,emptyLabelKey:text4,loadingLabelKey:text4,searchMode:{enum:["remote","local"]},searchDebounceMs:{type:"integer",minimum:0},contextHint:{type:"object",additionalProperties:false,properties:{selectedLabelKey:text4,emptyLabelKey:text4,icon:{enum:["layers","building"]}},required:["selectedLabelKey","emptyLabelKey","icon"]},pagination:{type:"object",additionalProperties:false,properties:{hasMore:{type:"boolean"},nextCursor:{type:["string","null"]},loadingMore:{type:"boolean"}},required:["hasMore","nextCursor","loadingMore"]},declarativeModelProjection:{type:"object",additionalProperties:false,properties:{kind:{const:"navigator"},selectedStateId:text4,initialSelection:{type:"object",additionalProperties:false,properties:{strategy:{enum:["default-or-first","selected-only","result-only"]},intentPort:{const:"capability.choice-picker.select"},payloadField:{const:"itemId"}},required:["strategy","intentPort","payloadField"]}},required:["kind","selectedStateId"]}},required:["nodes","pagination"]},CHOICE_PICKER_ENTRY=createDesignCapabilityEntry({providerVersion:"6",authoringRevision:6,version:"6",revision:6,schemaRevision:3,id:"monkeys.design.choice-picker",rendererKey:"monkeys.design.renderer.choice-picker",kind:"view",category:"navigation",labelKey:"monkeys.design.capability.choicePicker.label",descriptionKey:"monkeys.design.capability.choicePicker.description",authoringLabel:i18n("Choice picker","\u9009\u9879\u9009\u62E9\u5668"),authoringDescription:i18n("Search and select a host-owned paginated collection.","\u641C\u7D22\u5E76\u9009\u62E9\u5BBF\u4E3B\u63D0\u4F9B\u7684\u5206\u9875\u96C6\u5408\u3002"),inputPort:"content",schemaRef:"monkeys-design://choice-picker/model/v1",schemaDocument:jsonSchema("monkeys-design://choice-picker/model/v1",CHOICE_PICKER_MODEL_SCHEMA),slots:["controls"],supportedPageTypes:["page","view","workspace"],supportedSurfaces:["page","view","workspace","overlay"],outputPorts:[...["search","select","load-more"].map(action=>{let field=action==="search"?"value":action==="select"?"itemId":"cursor";return {name:`capability.choice-picker.${action}`,schemaRef:`monkeys-design://choice-picker/${action}/v1`,schemaDocument:jsonSchema(`monkeys-design://choice-picker/${action}/v1`,{type:"object",additionalProperties:false,required:[field],properties:{[field]:text4}}),allowedCommandKinds:["query-intent"]}})]});var localePattern="^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-[A-Z]{2}|-\\d{3})?$",I18N_DISPLAY_TEXT_SCHEMA={type:"object",additionalProperties:false,required:["defaultLocale","values"],properties:{defaultLocale:{type:"string",pattern:localePattern},values:{type:"object",minProperties:1,propertyNames:{pattern:localePattern},additionalProperties:{type:"string",minLength:1,pattern:"\\S"}}}},LOCALIZED_DISPLAY_PARAMETERS_SCHEMA={type:"object",additionalProperties:{oneOf:[{type:["string","number","boolean"]},I18N_DISPLAY_TEXT_SCHEMA]}};function resolveI18nDisplayText(value,locale){let parsed=monkeys.I18nTextSchema.safeParse(value);if(!parsed.success)throw new TypeError("Invalid I18n display text");let canonical;try{canonical=Intl.getCanonicalLocales(locale)[0]??"";}catch{canonical="";}let language=canonical.split("-")[0]??"";return parsed.data.values[canonical]??parsed.data.values[language]??parsed.data.values[parsed.data.defaultLocale]}function LocalizedDisplayText({value}){let{locale}=useMonkeysLocale();return jsxRuntime.jsx(jsxRuntime.Fragment,{children:resolveI18nDisplayText(value,locale)})}function resolveLocalizedDisplayParameters(value,locale){if(value!==void 0){if(typeof value!="object"||value===null||Array.isArray(value)||![Object.prototype,null].includes(Object.getPrototypeOf(value)))throw new TypeError("Invalid localized interpolation parameters");return Object.fromEntries(Object.entries(value).map(([key3,item])=>typeof item=="string"||typeof item=="boolean"||typeof item=="number"&&Number.isFinite(item)?[key3,item]:[key3,resolveI18nDisplayText(item,locale)]))}}function LocalizedMessageText({messageKey,values,translate}){let{locale}=useMonkeysLocale();return jsxRuntime.jsx(jsxRuntime.Fragment,{children:translate(messageKey,resolveLocalizedDisplayParameters(values,locale))})}var localizedLabelProperties={label:{type:"string"},labelKey:{type:"string",minLength:1}},RECORD_EDITOR_OPTION_GROUP_SCHEMA={type:"object",additionalProperties:false,required:["id"],anyOf:[{required:["label"]},{required:["labelKey"]},{required:["labelI18n"]}],properties:{id:{type:"string",minLength:1},...localizedLabelProperties,label:{type:"string",minLength:1},labelI18n:I18N_DISPLAY_TEXT_SCHEMA,labelParameters:LOCALIZED_DISPLAY_PARAMETERS_SCHEMA}},RECORD_EDITOR_OPTION_SCHEMA={type:"object",additionalProperties:false,required:["id"],properties:{id:{type:"string",minLength:1},...localizedLabelProperties,labelI18n:I18N_DISPLAY_TEXT_SCHEMA,labelParameters:LOCALIZED_DISPLAY_PARAMETERS_SCHEMA,group:RECORD_EDITOR_OPTION_GROUP_SCHEMA,color:{type:"string",minLength:1},mediaType:{type:"string",minLength:1},ontologyId:{type:"string",minLength:1},disabled:{type:"boolean"},disabledWhen:{type:"object"}}},RECORD_EDITOR_STRING_OPTION_SCHEMA={...RECORD_EDITOR_OPTION_SCHEMA,properties:{...RECORD_EDITOR_OPTION_SCHEMA.properties,id:{type:"string"}}},optionPathSchema={type:"array",minItems:1,maxItems:16,items:{type:"string",minLength:1,maxLength:256,pattern:"^[^\\u0000-\\u001f\\u007f-\\u009f]+$",not:{enum:["__proto__","prototype","constructor"]}}},RECORD_EDITOR_OPTIONS_SOURCE_SCHEMA={type:"object",additionalProperties:false,required:["modelPath","parentKeyPath"],properties:{modelPath:{...optionPathSchema,minItems:2,maxItems:2,prefixItems:[{const:"optionTables"}]},parentKeyPath:optionPathSchema}},validateOptions=runtime.compileTargetRenderModelValidator({type:"object",additionalProperties:false,required:["options"],properties:{options:{type:"array",maxItems:1e4,items:RECORD_EDITOR_STRING_OPTION_SCHEMA}}});function validateRecordEditorOptions(input){if(!Array.isArray(input)||input.length>1e4)throw new TypeError("Editor options exceed the candidate limit.");let json=JSON.stringify(input);if(new TextEncoder().encode(json).byteLength>1024*1024)throw new TypeError("Editor options exceed the byte limit.");let result=validateOptions({options:input}).options;if(!Array.isArray(result))throw new TypeError("Editor options must be an array.");return result}var tableKeySchema={type:"string",minLength:1,maxLength:256,pattern:"^[^\\u0000-\\u001f\\u007f-\\u009f]+$",not:{enum:["__proto__","prototype","constructor"]}},RECORD_EDITOR_OPTION_TABLES_SCHEMA={type:"object",propertyNames:tableKeySchema,additionalProperties:{type:"object",propertyNames:tableKeySchema,additionalProperties:{type:"array",maxItems:1e4,items:RECORD_EDITOR_STRING_OPTION_SCHEMA}}},validateTables=runtime.compileTargetRenderModelValidator({type:"object",additionalProperties:false,required:["tables"],properties:{tables:RECORD_EDITOR_OPTION_TABLES_SCHEMA}});function validateRecordEditorOptionTables(input){if(new TextEncoder().encode(JSON.stringify(input)).byteLength>1024*1024)throw new TypeError("Editor option tables exceed the byte limit.");let tables=validateTables({tables:input}).tables;if(!tables||typeof tables!="object"||Array.isArray(tables))throw new TypeError("Invalid editor option tables.");let count=0;for(let table of Object.values(tables)){if(!table||typeof table!="object"||Array.isArray(table))throw new TypeError("Invalid editor option table.");for(let options2 of Object.values(table)){if(!Array.isArray(options2))throw new TypeError("Invalid editor option list.");if(count+=options2.length,count>1e4)throw new TypeError("Editor option tables exceed the candidate limit.")}}}var ORDERED_SELECTION_MAX_ITEMS=1e4,ORDERED_SELECTION_MAX_GROUPS=ORDERED_SELECTION_MAX_ITEMS+2,ORDERED_SELECTION_MAX_BYTES=1024*1024,validId=id9=>typeof id9=="string"&&id9.trim().length>0&&id9.length<=256&&!/[\u0000-\u001f\u007f-\u009f]/.test(id9);function validateOrderedSelection(ids2){if(ids2.length>ORDERED_SELECTION_MAX_ITEMS)return "ORDERED_SELECTION_LIMIT_EXCEEDED";if(ids2.some(id9=>!validId(id9))||new Set(ids2).size!==ids2.length)return "ORDERED_SELECTION_INVALID_MODEL";if(new TextEncoder().encode(JSON.stringify(ids2)).byteLength>ORDERED_SELECTION_MAX_BYTES)return "ORDERED_SELECTION_BYTES_EXCEEDED"}function OrderedSelection(props){return jsxRuntime.jsx(SelectionDraft,{...props},JSON.stringify([props.model.scopeId,props.model.revision]))}function SelectionDraft({model,onIntent,translate:t}){let{locale}=useMonkeysLocale(),[ids2,setIds]=React8.useState(()=>[...model.selectedIds]),[search,setSearch]=React8.useState(model.search??""),[input,setInput]=React8.useState(""),[error,setError]=React8.useState(()=>validateOrderedSelection(model.selectedIds)),[start,setStart]=React8.useState(0),committedIds=React8.useRef(ids2),consumed=React8.useRef(new Set),cache2=React8.useRef(new Map),active=React8.useRef(true),drag=React8.useRef();React8.useEffect(()=>(active.current=true,()=>{active.current=false;}),[]);let blocked=!!(model.pending||model.readOnly||model.loading),latest=React8.useRef({blocked,model});latest.current={blocked,model};let emit=intent=>{active.current&&!latest.current.blocked&&onIntent(intent);},appendRows=model.append&&!consumed.current.has(model.append.revision)?model.append.rows:[],currentRows=[...model.candidates??[],...appendRows],selectedSet=new Set(committedIds.current),selectedAppendRows=(model.append?.rows??[]).filter(row2=>selectedSet.has(row2.id));for(let row2 of [...(model.selectedRows??[]).filter(row3=>selectedSet.has(row3.id)),...selectedAppendRows,...currentRows])validId(row2.id)&&cache2.current.set(row2.id,row2);let retained=new Set([...committedIds.current,...currentRows.map(row2=>row2.id)]);for(let id9 of cache2.current.keys())retained.has(id9)||cache2.current.delete(id9);let displayIssue=next=>{let groups=model.groups??[];if(groups.length>ORDERED_SELECTION_MAX_GROUPS||groups.some(row2=>!validId(row2.id))||new Set(groups.map(row2=>row2.id)).size!==groups.length)return "ORDERED_SELECTION_INVALID_MODEL";let displayed=new Map;for(let id9 of next)displayed.set(id9,cache2.current.get(id9)??{id:id9});for(let row2 of currentRows)displayed.set(row2.id,row2);return new TextEncoder().encode(JSON.stringify({selectedIds:next,rows:[...displayed.values()],groups})).byteLength>ORDERED_SELECTION_MAX_BYTES?"ORDERED_SELECTION_BYTES_EXCEEDED":void 0},label=id9=>{let row2=cache2.current.get(id9);return row2?.labelI18n?resolveI18nDisplayText(row2.labelI18n,locale):row2?.labelKey?t(row2.labelKey):row2?.label||id9},rowText=(id9,selected2=false)=>{let row2=cache2.current.get(id9),detail=[row2?.descriptionI18n?resolveI18nDisplayText(row2.descriptionI18n,locale):row2?.descriptionKey?t(row2.descriptionKey):row2?.description,row2?.showId?id9:void 0].filter(value=>value!==void 0&&value!=="").join(" \xB7 ");return jsxRuntime.jsxs("span",{className:"min-w-0 flex-1 overflow-hidden",children:[jsxRuntime.jsxs("span",{className:"block truncate",children:[label(id9),selected2&&row2?.missing?` (${t("Unavailable")})`:""]}),detail?jsxRuntime.jsx("span",{className:"block truncate text-xs text-muted-foreground",title:detail,children:detail}):null]})},max=model.selectionMode==="single"?1:Math.min(1e4,model.maxSelected??1e4),min=model.minSelected??0,commit=next=>{if(latest.current.blocked||!active.current)return false;let code=(next.length>max?"ORDERED_SELECTION_LIMIT_EXCEEDED":validateOrderedSelection(next))??displayIssue(next);return code?(setError(code),emit({type:"error",scopeId:model.scopeId,code}),false):(committedIds.current=next,setError(void 0),setIds(next),emit({type:"change",scopeId:model.scopeId,expectedRevision:model.revision,selectedIds:[...next],selectedCount:next.length}),true)};React8.useEffect(()=>{!model.append||model.append.rows.length===0||blocked||consumed.current.has(model.append.revision)||commit([...new Set([...ids2,...model.append.rows.map(row2=>row2.id)])])&&consumed.current.add(model.append.revision);},[model.append,blocked,ids2]);let move=(id9,target)=>{let from=ids2.indexOf(id9);if(from<0||target<0||target>=ids2.length||from===target)return;let next=[...ids2];next.splice(from,1),next.splice(target,0,id9),commit(next);},searchNow=()=>emit({type:"search",scopeId:model.scopeId,value:search.trim()}),modelIssue=!Number.isSafeInteger(min)||!Number.isSafeInteger(max)||min<0||max<0||min>max?"ORDERED_SELECTION_INVALID_MODEL":displayIssue(ids2),safeCode2=modelIssue??error??(model.errorCode&&/^[A-Z][A-Z0-9_]{0,127}$/.test(model.errorCode)?model.errorCode:model.errorCode?"ORDERED_SELECTION_INVALID_MODEL":void 0),windowStart=Math.min(start,Math.max(0,ids2.length-1));return jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-col gap-3","data-ordered-selection":model.scopeId,children:[safeCode2?jsxRuntime.jsx("p",{role:"alert",children:t(safeCode2)}):null,model.loading?jsxRuntime.jsx("p",{role:"status",children:t("Loading")}):null,model.mode==="ids"?jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(BaseTextarea,{"aria-label":t("IDs"),disabled:blocked,value:input,onChange:event=>setInput(event.target.value)}),jsxRuntime.jsx(BaseButton,{disabled:blocked,onClick:()=>{commit([...new Set([...ids2,...input.split(/[\s,;]+/).filter(Boolean)])]);},children:t("Add")})]}):jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[model.groupId!==void 0?jsxRuntime.jsx(BaseSelect,{"aria-label":t("Group"),value:model.groupId,disabled:blocked||model.canBrowse===false,onChange:event=>emit({type:"group-change",scopeId:model.scopeId,value:event.currentTarget.value}),children:(model.groups??[]).map(row2=>jsxRuntime.jsx("option",{value:row2.id,children:row2.labelI18n?resolveI18nDisplayText(row2.labelI18n,locale):row2.labelKey?t(row2.labelKey):row2.label||row2.id},row2.id))}):null,jsxRuntime.jsx(BaseInput,{"aria-label":t("Search"),value:search,disabled:blocked||model.canBrowse===false,onChange:event=>setSearch(event.target.value),onKeyDown:event=>{event.key==="Enter"&&(event.preventDefault(),searchNow());}}),jsxRuntime.jsx(BaseButton,{disabled:blocked||model.canBrowse===false,onClick:searchNow,children:t("Search")}),model.allowCreate?jsxRuntime.jsx(BaseButton,{disabled:blocked,onClick:()=>emit({type:"create",scopeId:model.scopeId}),children:t("Create")}):null,jsxRuntime.jsx("div",{className:"w-full space-y-2","data-ordered-candidates":true,style:{maxHeight:384,overflowY:"auto"},children:(model.candidates??[]).map(row2=>jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsxs("label",{className:"flex min-w-0 flex-1 items-center gap-2",children:[jsxRuntime.jsx(BaseCheckbox,{disabled:blocked||row2.disabled,checked:ids2.includes(row2.id),onChange:event=>commit(event.currentTarget.checked?model.selectionMode==="single"?[row2.id]:[...new Set([...ids2,row2.id])]:ids2.filter(id9=>id9!==row2.id))}),rowText(row2.id)]}),model.allowCopy?jsxRuntime.jsx(BaseButton,{disabled:blocked||row2.disabled,onClick:()=>emit({type:"copy",scopeId:model.scopeId,id:row2.id}),children:t("Copy")}):null]},row2.id))}),model.pagination?.hasMore&&model.pagination.nextCursor?jsxRuntime.jsx(BaseButton,{disabled:blocked||model.canBrowse===false||model.pagination.loadingMore,onClick:()=>emit({type:"load-more",scopeId:model.scopeId,cursor:model.pagination.nextCursor}),children:t("Load more")}):null]}),jsxRuntime.jsx(BaseButton,{className:"self-start",disabled:blocked||ids2.length===0,onClick:()=>commit([]),children:t("Clear")}),jsxRuntime.jsxs("div",{role:"status","aria-live":"polite",children:[ids2.length," / ",ORDERED_SELECTION_MAX_ITEMS]}),jsxRuntime.jsx("div",{"data-ordered-viewport":true,style:{height:Math.min(384,ids2.length*48),overflowY:"auto"},onScroll:event=>setStart(Math.max(0,Math.floor(event.currentTarget.scrollTop/48)-2)),children:jsxRuntime.jsx("ol",{"aria-label":t("Selected"),style:{height:ids2.length*48,position:"relative",margin:0},children:ids2.slice(windowStart,windowStart+14).map((id9,offset2)=>{let index=windowStart+offset2;return jsxRuntime.jsxs("li",{"data-ordered-id":id9,"aria-posinset":index+1,"aria-setsize":ids2.length,style:{position:"absolute",top:index*48,height:48,left:0,right:0,display:"flex",gap:8},onDragOver:event=>{!blocked&&drag.current&&event.preventDefault();},onDrop:event=>{event.preventDefault(),drag.current&&event.dataTransfer.getData("application/x-monkeys-ordered-selection")===drag.current&&move(drag.current,index),drag.current=void 0;},children:[jsxRuntime.jsx(BaseButton,{"data-ordered-drag":id9,"aria-label":t("Move"),disabled:blocked,draggable:!blocked,onDragStart:event=>{if(blocked)return event.preventDefault();drag.current=id9,event.dataTransfer.setData("application/x-monkeys-ordered-selection",id9);},onDragEnd:()=>{drag.current=void 0;},onKeyDown:event=>{(event.key==="ArrowUp"||event.key==="ArrowDown")&&(event.preventDefault(),move(id9,index+(event.key==="ArrowUp"?-1:1)));},children:"\u2195"}),rowText(id9,true),jsxRuntime.jsx(BaseButton,{disabled:blocked||index===0,"aria-label":t("Move up"),onClick:()=>move(id9,index-1),children:"\u2191"}),jsxRuntime.jsx(BaseButton,{disabled:blocked||index===ids2.length-1,"aria-label":t("Move down"),onClick:()=>move(id9,index+1),children:"\u2193"}),jsxRuntime.jsx(BaseButton,{disabled:blocked,"aria-label":t("Remove"),onClick:()=>commit(ids2.filter(value=>value!==id9)),children:"\xD7"})]},id9)})})}),jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[model.showSubmit!==false?jsxRuntime.jsx(BaseButton,{disabled:blocked||!!(error||modelIssue)||ids2.length<min||ids2.length>max,onClick:()=>emit({type:"submit",scopeId:model.scopeId,expectedRevision:model.revision,selectedIds:[...ids2],selectedCount:ids2.length}),children:t("Save")}):null,model.showCancel!==false?jsxRuntime.jsx(BaseButton,{disabled:blocked,onClick:()=>emit({type:"cancel",scopeId:model.scopeId}),children:t("Cancel")}):null,model.errorCode?jsxRuntime.jsx(BaseButton,{disabled:blocked,onClick:()=>emit({type:"retry",scopeId:model.scopeId}),children:t("Retry")}):null]})]})}var id6=zod.z.string().min(1).max(256),row=zod.z.object({id:id6,label:zod.z.string().optional(),labelKey:zod.z.string().min(1).optional(),labelI18n:monkeys.I18nTextSchema.optional(),description:zod.z.string().optional(),descriptionKey:zod.z.string().min(1).optional(),descriptionI18n:monkeys.I18nTextSchema.optional(),showId:zod.z.boolean().optional(),missing:zod.z.boolean().optional(),disabled:zod.z.boolean().optional()}).strict(),modelSchema=zod.z.object({scopeId:id6,revision:id6,titleKey:zod.z.string().min(1).optional(),descriptionKey:zod.z.string().min(1).optional(),selectedIds:zod.z.array(id6).max(1e4),selectedRows:zod.z.array(row).max(1e4).optional(),candidates:zod.z.array(row).max(1e4).optional(),mode:zod.z.enum(["options","ids"]).optional(),selectionMode:zod.z.enum(["single","multiple"]).optional(),minSelected:zod.z.number().int().min(0).max(1e4).optional(),maxSelected:zod.z.number().int().min(0).max(1e4).optional(),showSubmit:zod.z.boolean().optional(),showCancel:zod.z.boolean().optional(),loading:zod.z.boolean().optional(),pending:zod.z.boolean().optional(),readOnly:zod.z.boolean().optional(),search:zod.z.string().optional(),groupId:id6.optional(),groups:zod.z.array(row).max(10002).optional(),pagination:zod.z.object({hasMore:zod.z.boolean(),nextCursor:zod.z.string().optional(),loadingMore:zod.z.boolean().optional()}).strict().optional(),append:zod.z.object({revision:id6,rows:zod.z.array(row).max(1e4)}).strict().optional(),allowCreate:zod.z.boolean().optional(),allowCopy:zod.z.boolean().optional(),canBrowse:zod.z.boolean().optional(),errorCode:zod.z.string().optional()}).strict(),ID={type:"string",minLength:1,maxLength:256},ROW={type:"object",additionalProperties:false,required:["id"],properties:{id:ID,label:{type:"string"},labelKey:{type:"string",minLength:1},labelI18n:I18N_DISPLAY_TEXT_SCHEMA,description:{type:"string"},descriptionKey:{type:"string",minLength:1},descriptionI18n:I18N_DISPLAY_TEXT_SCHEMA,showId:{type:"boolean"},missing:{type:"boolean"},disabled:{type:"boolean"}}},ROWS={type:"array",maxItems:1e4,items:ROW},IDS={type:"array",maxItems:1e4,uniqueItems:true,items:ID},BOUND={type:"integer",minimum:0,maximum:1e4},ORDERED_SELECTION_MODEL_SCHEMA={type:"object",additionalProperties:false,required:["scopeId","revision","selectedIds"],properties:{scopeId:ID,revision:ID,titleKey:{type:"string",minLength:1},descriptionKey:{type:"string",minLength:1},selectedIds:IDS,selectedRows:ROWS,candidates:ROWS,mode:{enum:["options","ids"]},selectionMode:{enum:["single","multiple"]},minSelected:BOUND,maxSelected:BOUND,showSubmit:{type:"boolean"},showCancel:{type:"boolean"},loading:{type:"boolean"},pending:{type:"boolean"},readOnly:{type:"boolean"},search:{type:"string"},groupId:ID,groups:{...ROWS,maxItems:10002},pagination:{type:"object",additionalProperties:false,required:["hasMore"],properties:{hasMore:{type:"boolean"},nextCursor:{type:"string"},loadingMore:{type:"boolean"}}},append:{type:"object",additionalProperties:false,required:["revision","rows"],properties:{revision:ID,rows:ROWS}},allowCreate:{type:"boolean"},allowCopy:{type:"boolean"},canBrowse:{type:"boolean"},errorCode:{type:"string",maxLength:128}}},selected={selectedIds:IDS,selectedCount:BOUND,expectedRevision:ID},INTENT_PROPERTIES={change:selected,submit:selected,search:{value:{type:"string"}},"group-change":{value:ID},"load-more":{cursor:{type:"string",minLength:1}},copy:{id:ID},create:{},retry:{},cancel:{},error:{code:{enum:["ORDERED_SELECTION_LIMIT_EXCEEDED","ORDERED_SELECTION_BYTES_EXCEEDED","ORDERED_SELECTION_INVALID_MODEL"]}}},ORDERED_SELECTION_INTENT_SCHEMAS=Object.fromEntries(Object.entries(INTENT_PROPERTIES).map(([name,properties2])=>[name,{type:"object",additionalProperties:false,required:["scopeId",...Object.keys(properties2)],properties:{scopeId:ID,...properties2}}])),LABELS={Loading:"loading",IDs:"ids",Add:"add",Group:"group",Search:"search",Create:"create",Copy:"copy","Load more":"loadMore",Clear:"clear",Selected:"selected",Move:"move",Unavailable:"unavailable","Move up":"moveUp","Move down":"moveDown",Remove:"remove",Save:"save",Cancel:"cancel",Retry:"retry",ORDERED_SELECTION_LIMIT_EXCEEDED:"errors.limit",ORDERED_SELECTION_BYTES_EXCEEDED:"errors.bytes",ORDERED_SELECTION_INVALID_MODEL:"errors.invalid"},runtimePaginationSchema=zod.z.object({hasMore:zod.z.boolean(),nextCursor:zod.z.string().nullable().optional(),loadingMore:zod.z.boolean().optional(),pageSize:zod.z.number().int().positive().optional(),returned:zod.z.number().int().nonnegative().optional(),total:zod.z.number().int().nonnegative().optional(),loadedCount:zod.z.number().int().nonnegative().optional(),loadedStart:zod.z.number().int().nonnegative().optional(),loadedEnd:zod.z.number().int().nonnegative().optional(),errorCode:zod.z.string().max(128).optional()}).strict();function normalizeOrderedSelectionRuntimeModel(input){let{submitting,pagination:rawPagination,...publicModel}=input;if(submitting!==void 0&&typeof submitting!="boolean")throw new TypeError("Invalid runtime submitting state.");let pagination=rawPagination===void 0?void 0:runtimePaginationSchema.parse(rawPagination),model=modelSchema.parse({...publicModel,...pagination?{pagination:{hasMore:pagination.hasMore,...pagination.nextCursor===null||pagination.nextCursor===void 0?{}:{nextCursor:pagination.nextCursor},...pagination.loadingMore===void 0?{}:{loadingMore:pagination.loadingMore}}}:{},...publicModel.errorCode===void 0&&pagination?.errorCode?{errorCode:pagination.errorCode}:{}});return {...model,pending:model.pending===true||submitting===true}}function OrderedSelectionCapabilityRenderer(context){let model=normalizeOrderedSelectionRuntimeModel(context.model);return jsxRuntime.jsx(OrderedSelection,{model,translate:key3=>context.translate(LABELS[key3]?`monkeys.design.capability.orderedSelection.${LABELS[key3]}`:key3),onIntent:intent=>{let{type,...payload}=intent;context.emitIntent(`capability.ordered-selection.${type}`,payload);}})}var id7=zod.z.string().min(1).max(256).refine(value=>value.trim().length>0&&!/[\u0000-\u001f\u007f]/.test(value)&&!["__proto__","constructor","prototype"].includes(value)),GalleryPresentationSettingsSchema=zod.z.object({visibleColumnKeys:zod.z.array(id7).min(1).refine(value=>new Set(value).size===value.length),galleryFieldKey:id7,galleryLayout:zod.z.enum(["fixed","masonry","rail"]),galleryDensity:zod.z.enum(["compact","comfortable","detailed"]),galleryGridColumns:zod.z.union([zod.z.literal("auto"),zod.z.number().int().min(1).max(5)]),galleryBentoColumns:zod.z.number().int().min(1).max(3),galleryDetailVisibility:zod.z.enum(["all","limit"]),galleryDetailLimit:zod.z.number().int().min(1).max(Number.MAX_SAFE_INTEGER)}).strict(),GalleryPresentationFieldsSchema=zod.z.array(zod.z.object({id:id7,label:zod.z.string().optional(),labelKey:zod.z.string().min(1).optional(),labelI18n:monkeys.I18nTextSchema.optional(),role:zod.z.enum(["title","summary","media","detail","actions"]).optional()}).strict()).min(1).refine(fields=>new Set(fields.map(field=>field.id)).size===fields.length),idSchema={type:"string",minLength:1,maxLength:256,pattern:"^(?!__proto__$|constructor$|prototype$)(?=.*\\S)[^\\u0000-\\u001f\\u007f]+$"},properties={visibleColumnKeys:{type:"array",minItems:1,uniqueItems:true,items:idSchema},galleryFieldKey:idSchema,galleryLayout:{enum:["fixed","masonry","rail"]},galleryDensity:{enum:["compact","comfortable","detailed"]},galleryGridColumns:{oneOf:[{const:"auto"},{type:"integer",minimum:1,maximum:5}]},galleryBentoColumns:{type:"integer",minimum:1,maximum:3},galleryDetailVisibility:{enum:["all","limit"]},galleryDetailLimit:{type:"integer",minimum:1,maximum:Number.MAX_SAFE_INTEGER}},GALLERY_PRESENTATION_SETTINGS_SCHEMA={type:"object",additionalProperties:false,required:Object.keys(properties),properties},GALLERY_PRESENTATION_FIELDS_SCHEMA={type:"array",minItems:1,items:{type:"object",additionalProperties:false,required:["id"],properties:{id:idSchema,label:{type:"string"},labelKey:{type:"string",minLength:1},labelI18n:I18N_DISPLAY_TEXT_SCHEMA,role:{enum:["title","summary","media","detail","actions"]}}}},GALLERY_PRESENTATION_SETTING_CHANGE_SCHEMA={oneOf:Object.entries(properties).map(([settingId,value])=>({type:"object",additionalProperties:false,required:["settingId","value"],properties:{settingId:{const:settingId},value}}))};function normalizeGalleryPresentationSettings(value,fieldIds){if(!value||typeof value!="object"||Array.isArray(value))throw new TypeError("Invalid gallery settings.");let input={...value};for(let key3 of ["galleryGridColumns","galleryBentoColumns","galleryDetailLimit"])typeof input[key3]=="string"&&/^[1-9][0-9]*$/.test(input[key3])&&(input[key3]=Number(input[key3]));return validateGalleryPresentationSettings(input,fieldIds)}function validateGalleryPresentationSettings(value,fieldIds){let settings=GalleryPresentationSettingsSchema.parse(value),allowed=new Set(fieldIds);if(settings.visibleColumnKeys.some(key3=>!allowed.has(key3))||settings.galleryFieldKey!=="auto"&&!allowed.has(settings.galleryFieldKey))throw new TypeError("Unknown gallery field.");return settings}var RUNTIME_TERMINAL_MAX_RETAINED_FRAMES=2048,RUNTIME_TERMINAL_MAX_RETAINED_BYTES=2*1024*1024,RuntimeTerminalOutputError=class extends Error{constructor(code,expectedSequence,receivedSequence){super(code);this.code=code;this.expectedSequence=expectedSequence;this.receivedSequence=receivedSequence;this.name="RuntimeTerminalOutputError";}};function prepareRuntimeTerminalOutput(history,output){let fail=(code,received)=>{throw new RuntimeTerminalOutputError(code,history.highWater+1,received)};if(!Array.isArray(output))return fail("invalid-frame");if(output.length>RUNTIME_TERMINAL_MAX_RETAINED_FRAMES)return fail("output-budget-exceeded");let known=new Map(history.frames.map(frame=>[frame.sequence,frame])),append=[],highWater=history.highWater,previous,batchBytes=0;for(let frame of output){if(!frame||!Number.isSafeInteger(frame.sequence)||frame.sequence<1||typeof frame.data!="string")return fail("invalid-frame");if(previous!==void 0&&frame.sequence===previous)return fail("duplicate-sequence",frame.sequence);if(previous!==void 0&&frame.sequence!==previous+1)return fail("sequence-gap",frame.sequence);if(previous=frame.sequence,frame.data.length>RUNTIME_TERMINAL_MAX_RETAINED_BYTES)return fail("output-budget-exceeded",frame.sequence);let bytes2=new TextEncoder().encode(frame.data).byteLength;if(batchBytes+=bytes2,batchBytes>RUNTIME_TERMINAL_MAX_RETAINED_BYTES)return fail("output-budget-exceeded",frame.sequence);if(frame.sequence<=highWater){let seen=known.get(frame.sequence);if(!seen)return fail("history-expired",frame.sequence);if(seen.data!==frame.data)return fail("sequence-conflict",frame.sequence)}else {if(frame.sequence!==highWater+1)return fail("sequence-gap",frame.sequence);highWater=frame.sequence,append.push({sequence:frame.sequence,data:frame.data,bytes:bytes2});}}let frames=[...history.frames,...append],bytes=history.bytes+append.reduce((sum,frame)=>sum+frame.bytes,0),remove=0;for(;frames.length-remove>RUNTIME_TERMINAL_MAX_RETAINED_FRAMES||bytes>RUNTIME_TERMINAL_MAX_RETAINED_BYTES;)bytes-=frames[remove++].bytes;return {history:{highWater,bytes,frames:frames.slice(remove)},append:append.map(({sequence,data})=>({sequence,data}))}}function RuntimeTerminalView(props){let element=React8.useRef(null),latest=React8.useRef(props);latest.current=props;let running=React8.useRef();return React8.useEffect(()=>{let sessionKey=props.sessionKey,container=element.current;if(!container||!sessionKey)return;let active=true,terminal,observer,subscriptions=[],cleaned=false,cleanup=()=>{cleaned||(cleaned=true,observer?.disconnect(),subscriptions.forEach(subscription=>subscription.dispose()),terminal?.dispose());},history={highWater:0,bytes:0,frames:[]},current=()=>active&&latest.current.sessionKey===sessionKey,report=error=>{if(!current())return;let fault=error instanceof RuntimeTerminalOutputError?error:new RuntimeTerminalOutputError("load-failed",history.highWater+1);latest.current.onOutputError?.({sessionKey,code:fault.code,expectedSequence:fault.expectedSequence,...fault.receivedSequence===void 0?{}:{receivedSequence:fault.receivedSequence}});};return Promise.all([import('@xterm/xterm'),import('@xterm/addon-fit'),import('@xterm/addon-web-links')]).then(([{Terminal},{FitAddon},{WebLinksAddon}])=>{if(!current())return;let openLink=(_event,uri)=>{let safe=safeDisplayUrl(uri,"link");current()&&safe&&/^https?:\/\//i.test(safe)&&window.open(safe,"_blank","noopener,noreferrer");},term=new Terminal({linkHandler:{activate:openLink},cursorBlink:true,disableStdin:latest.current.disabled===true,fontSize:13,fontFamily:'"JetBrains Mono", Menlo, Monaco, "Courier New", monospace'});terminal=term;let fit=new FitAddon;term.loadAddon(fit),term.loadAddon(new WebLinksAddon(openLink)),term.open(container);let resize=()=>{if(!current())return;fit.fit();let dimensions=fit.proposeDimensions();dimensions&&Number.isInteger(dimensions.cols)&&Number.isInteger(dimensions.rows)&&dimensions.cols>0&&dimensions.rows>0&&latest.current.onResize?.({sessionKey,columns:dimensions.cols,rows:dimensions.rows});};subscriptions.push(term.onData(data=>{current()&&!latest.current.disabled&&latest.current.onInput?.({sessionKey,data});}));let write=output=>{if(current())try{let prepared=prepareRuntimeTerminalOutput(history,output);prepared.append.length&&term.write(prepared.append.map(frame=>frame.data).join("")),history=prepared.history;}catch(error){report(error);}};running.current={sessionKey,terminal:term,write},resize(),typeof ResizeObserver<"u"&&(observer=new ResizeObserver(resize),observer.observe(container)),write(latest.current.output);}).catch(error=>{cleanup(),terminal&&running.current?.terminal===terminal&&(running.current=void 0),report(error);}),()=>{active=false,cleanup(),terminal&&running.current?.terminal===terminal&&(running.current=void 0);}},[props.sessionKey]),React8.useEffect(()=>{let state=running.current;state?.sessionKey===props.sessionKey&&(state.terminal.options.disableStdin=props.disabled===true,state.write(props.output));},[props.sessionKey,props.output,props.disabled]),jsxRuntime.jsxs("div",{className:props.className,style:props.style,children:[jsxRuntime.jsx("div",{role:"status",children:props.statusLabel}),jsxRuntime.jsx("div",{ref:element,className:"h-full min-h-48 w-full rounded-2xl"})]})}var RUNTIME_TERMINAL_MODEL_SCHEMA={type:"object",additionalProperties:false,properties:{statusLabelKey:{type:"string",minLength:1,maxLength:256},disabled:{type:"boolean"}}},safeCode=code=>typeof code=="string"&&/^[A-Za-z][A-Za-z0-9_.-]{0,127}$/.test(code)?code:"PAGE_STREAM_UNAVAILABLE";function TerminalSession({context}){let{stream,model,translate}=context,latest=React8.useRef(context);latest.current=context;let active=React8.useRef(true);React8.useEffect(()=>(active.current=true,()=>{active.current=false;}),[]);let[outputError,setOutputError]=React8.useState(),dimensions=React8.useRef(),sentDimensions=React8.useRef(),sessionKey=stream.sessionKey,disabled=model.disabled===true||stream.status!=="open"||!!outputError,output=[],invalid2=false,initial=stream.model?.output;try{if(initial!==void 0&&!Array.isArray(initial))throw new TypeError("Invalid output");output=[...Array.isArray(initial)?initial:[],...stream.events].map(value=>{if(!value||typeof value!="object"||Array.isArray(value)||!Number.isSafeInteger(value.sequence)||Number(value.sequence)<1||typeof value.data!="string")throw new TypeError("Invalid output");return {sequence:Number(value.sequence),data:value.data}}),prepareRuntimeTerminalOutput({highWater:0,bytes:0,frames:[]},output);}catch{invalid2=true,output=[];}let send=(key3,port2,payload)=>{let current=latest.current;if(!(!active.current||key3!==current.stream?.sessionKey||current.stream.status!=="open"||current.model.disabled===true||outputError||invalid2||!current.sendStreamControl))try{Promise.resolve(current.sendStreamControl(port2,payload)).catch(()=>{active.current&&latest.current.stream?.sessionKey===key3&&setOutputError("PAGE_STREAM_CONTROL_FAILED");});}catch{setOutputError("PAGE_STREAM_CONTROL_FAILED");}},error=invalid2?"PAGE_STREAM_OUTPUT_INVALID":outputError??stream.errorCode,flushResize=()=>{let value=dimensions.current;if(!value||disabled||invalid2||!latest.current.sendStreamControl)return;let identity2=`${value.columns}:${value.rows}`;sentDimensions.current!==identity2&&(sentDimensions.current=identity2,send(sessionKey,"terminal.resize",value));};return React8.useEffect(()=>{if(disabled||invalid2){sentDimensions.current=void 0;return}flushResize();},[stream.status,model.disabled,outputError,invalid2,context.sendStreamControl]),jsxRuntime.jsxs("div",{"data-monkeys-component":"runtime-terminal-capability",children:[error?jsxRuntime.jsx("div",{role:"alert",children:safeCode(error)}):null,jsxRuntime.jsx(RuntimeTerminalView,{sessionKey,output,disabled:disabled||invalid2,statusLabel:translate(typeof model.statusLabelKey=="string"?model.statusLabelKey:"monkeys.design.capability.runtimeTerminal.status"),onInput:event=>send(event.sessionKey,"terminal.input",{data:event.data}),onResize:event=>{!active.current||event.sessionKey!==latest.current.stream?.sessionKey||!Number.isInteger(event.columns)||!Number.isInteger(event.rows)||event.columns<1||event.rows<1||(dimensions.current={columns:event.columns,rows:event.rows},flushResize());},onOutputError:event=>{active.current&&latest.current.stream?.sessionKey===event.sessionKey&&setOutputError(safeCode(event.code));}})]})}function RuntimeTerminalCapabilityRenderer(context){return context.stream?.sessionKey?jsxRuntime.jsx(TerminalSession,{context},context.stream.sessionKey):jsxRuntime.jsx("div",{role:"status",children:context.translate("monkeys.design.capability.runtimeTerminal.waiting")})}var TABLE_MESSAGE_VALUE_SCHEMA={type:"object",additionalProperties:false,required:["key"],properties:{key:{type:"string",minLength:1},values:{type:"object",additionalProperties:{type:["string","number","boolean"]}}}},isRecord=value=>typeof value=="object"&&value!==null&&!Array.isArray(value)&&(Object.getPrototypeOf(value)===Object.prototype||Object.getPrototypeOf(value)===null);function renderTableMessageValue(value,translate){if(!isRecord(value)||typeof value.key!="string"||value.key.length===0||Object.keys(value).some(key3=>key3!=="key"&&key3!=="values"))throw new TypeError("Invalid table message value");if(value.values!==void 0&&(!isRecord(value.values)||Object.values(value.values).some(item=>typeof item!="string"&&typeof item!="boolean"&&!(typeof item=="number"&&Number.isFinite(item)))))throw new TypeError("Invalid table message interpolation values");return translate(value.key,value.values)}function RecordDetailCopyValue({value,copy:copy2,translate,valueFormat="text"}){let[feedback,setFeedback]=React8.useState(null),mounted=React8.useRef(true),pending=React8.useRef(false);return React8.useEffect(()=>(mounted.current=true,()=>{mounted.current=false;}),[]),jsxRuntime.jsxs("span",{className:"flex min-w-0 flex-col items-start gap-2",children:[jsxRuntime.jsx("span",{className:"whitespace-pre-wrap break-all",children:value}),jsxRuntime.jsx("button",{type:"button",className:"rounded border border-border px-2 py-1 text-sm text-foreground hover:bg-accent focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring",onClick:async()=>{if(!pending.current){pending.current=true,setFeedback(null);try{if(!navigator.clipboard?.writeText)throw new Error("Clipboard unavailable.");let copied=value;if(valueFormat==="absolute-url"){let safe=safeDisplayUrl(value,"link");if(!safe)throw new Error("Unsafe copy URL.");let absolute=new URL(safe,window.location.origin);if(!["http:","https:"].includes(absolute.protocol)||!safeDisplayUrl(absolute.href,"link"))throw new Error("Unsafe copy URL.");copied=absolute.href;}else if(valueFormat!=="text")throw new Error("Unknown copy format.");await navigator.clipboard.writeText(copied),mounted.current&&setFeedback("success");}catch{mounted.current&&setFeedback("failure");}finally{pending.current=false;}}},children:translate(String(copy2.labelKey))}),feedback?jsxRuntime.jsx("span",{role:feedback==="failure"?"alert":"status",children:translate(String(feedback==="success"?copy2.successLabelKey:copy2.failureLabelKey))}):null]})}var tones=["default","primary","success","warning","danger","muted"],TABLE_COPY_PARAMETERS_SCHEMA={type:"object",additionalProperties:false,required:["labelKey","successLabelKey","failureLabelKey"],properties:{labelKey:{type:"string",minLength:1},successLabelKey:{type:"string",minLength:1},failureLabelKey:{type:"string",minLength:1}}},TABLE_DISPLAY_CELL_SCHEMAS=[{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"stack"},value:{type:"object",additionalProperties:false,required:["lines"],properties:{lines:{type:"array",items:{oneOf:[{type:"string"},I18N_DISPLAY_TEXT_SCHEMA,TABLE_MESSAGE_VALUE_SCHEMA]}},icon:BASE_ASSET_ICON_DESCRIPTOR_SCHEMA}}}},{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"metrics"},value:{type:"object",additionalProperties:false,required:["items"],properties:{items:{type:"array",items:{type:"object",additionalProperties:false,required:["labelKey","value"],properties:{labelKey:{type:"string",minLength:1},value:{type:"number"}}}}}}}},{type:"object",additionalProperties:false,required:["valueType","value","copy"],properties:{valueType:{const:"copy"},value:{type:"string"},copy:TABLE_COPY_PARAMETERS_SCHEMA,valueFormat:{enum:["text","absolute-url"]}}},{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"localized-text"},value:I18N_DISPLAY_TEXT_SCHEMA}},{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"identity"},value:{type:"object",additionalProperties:false,anyOf:[{required:["text"]},{required:["textI18n"]}],properties:{text:{type:"string"},textI18n:I18N_DISPLAY_TEXT_SCHEMA,imageUrl:{type:"string",minLength:1,maxLength:4096},icon:BASE_ASSET_ICON_DESCRIPTOR_SCHEMA}}}},{type:"object",additionalProperties:false,required:["valueType","value"],properties:{valueType:{const:"badge"},value:{type:"object",additionalProperties:false,oneOf:[{required:["textKey"],not:{required:["textI18n"]}},{required:["textI18n"],not:{anyOf:[{required:["textKey"]},{required:["textParameters"]}]}}],properties:{textKey:{type:"string",minLength:1},textParameters:{type:"object",additionalProperties:{type:["string","number","boolean","null"]}},textI18n:I18N_DISPLAY_TEXT_SCHEMA,tone:{enum:[...tones]},icon:BASE_ASSET_ICON_DESCRIPTOR_SCHEMA}}}}],object2=value=>!!value&&typeof value=="object"&&!Array.isArray(value);function iconDescriptor(value){if(value===void 0)return;if(!object2(value))throw new TypeError("Invalid display icon descriptor.");let keys=Object.keys(value);if(value.kind==="image"&&typeof value.src=="string"&&value.src.length>0&&value.src.length<=4096&&keys.every(key3=>["kind","src"].includes(key3)))return {kind:"image",src:value.src};if(value.kind==="lucide"&&typeof value.name=="string"&&value.name.length>0&&value.name.length<=128&&keys.every(key3=>["kind","name"].includes(key3)))return {kind:"lucide",name:value.name};if(value.kind==="emoji"&&typeof value.value=="string"&&value.value.length>0&&value.value.length<=64&&(value.backgroundColor===void 0||typeof value.backgroundColor=="string"&&value.backgroundColor.length<=128)&&keys.every(key3=>["kind","value","backgroundColor"].includes(key3)))return {kind:"emoji",value:value.value,...typeof value.backgroundColor=="string"?{backgroundColor:value.backgroundColor}:{}};throw new TypeError("Invalid display icon descriptor.")}function TypedDisplayCell({valueType,value,copy:copy2,valueFormat,translate}){let{locale}=useMonkeysLocale();if(valueType==="copy"){if(valueFormat!==void 0&&valueFormat!=="text"&&valueFormat!=="absolute-url")throw new TypeError("Invalid copy value format.");if(typeof value!="string"||!object2(copy2)||Object.keys(copy2).length!==3||!["labelKey","successLabelKey","failureLabelKey"].every(key3=>typeof copy2[key3]=="string"&©2[key3].length>0))throw new TypeError("Invalid table copy value.");return jsxRuntime.jsx(RecordDetailCopyValue,{value,valueFormat,copy:{labelKey:String(copy2.labelKey),successLabelKey:String(copy2.successLabelKey),failureLabelKey:String(copy2.failureLabelKey)},translate},JSON.stringify([value,valueFormat]))}if(valueFormat!==void 0)throw new TypeError("Value format requires a copy cell.");if(copy2!==void 0)throw new TypeError("Copy configuration requires a copy cell.");if(valueType==="localized-text")return jsxRuntime.jsx(jsxRuntime.Fragment,{children:resolveI18nDisplayText(value,locale)});if(!object2(value))throw new TypeError("Invalid typed display cell.");if(valueType==="stack"){if(Object.keys(value).some(key3=>!["lines","icon"].includes(key3))||!Array.isArray(value.lines))throw new TypeError("Invalid stack display value.");let icon2=iconDescriptor(value.icon),lines=value.lines.map(line=>{if(typeof line=="string")return line;if(!object2(line))throw new TypeError("Invalid stack display line.");return "defaultLocale"in line?resolveI18nDisplayText(line,locale):renderTableMessageValue(line,translate)});return jsxRuntime.jsxs("span",{className:"inline-flex min-w-0 items-start gap-2",children:[icon2?jsxRuntime.jsx(BaseAssetIcon,{icon:icon2,alt:"",normalizeImageIcon:true,className:"h-5 w-5 shrink-0 rounded"}):null,jsxRuntime.jsx("span",{className:"flex min-w-0 flex-col",children:lines.map((line,index)=>jsxRuntime.jsx("span",{className:"whitespace-pre-wrap break-words",children:line},index))})]})}if(valueType==="metrics"){if(Object.keys(value).some(key3=>key3!=="items")||!Array.isArray(value.items))throw new TypeError("Invalid metrics display value.");let numberFormat=new Intl.NumberFormat(locale),items=value.items.map(item=>{if(!object2(item)||Object.keys(item).some(key3=>!["labelKey","value"].includes(key3))||typeof item.labelKey!="string"||!item.labelKey||typeof item.value!="number"||!Number.isFinite(item.value))throw new TypeError("Invalid metrics display item.");return {label:translate(item.labelKey),value:numberFormat.format(item.value)}});return jsxRuntime.jsx("dl",{className:"flex flex-wrap gap-x-3 gap-y-1",children:items.map((item,index)=>jsxRuntime.jsxs("div",{className:"inline-flex gap-1",children:[jsxRuntime.jsx("dt",{children:item.label}),jsxRuntime.jsx("dd",{children:item.value})]},index))})}let allowed=valueType==="identity"?["text","textI18n","imageUrl","icon"]:["textKey","textParameters","textI18n","tone","icon"];if(Object.keys(value).some(key3=>!allowed.includes(key3)))throw new TypeError("Invalid typed display cell fields.");let icon=iconDescriptor(value.icon),image=descriptor=>jsxRuntime.jsx(BaseAssetIcon,{icon:descriptor,alt:"",normalizeImageIcon:true,className:"h-5 w-5 rounded"});if(valueType==="identity"){if(value.text!==void 0&&typeof value.text!="string"||value.imageUrl!==void 0&&(typeof value.imageUrl!="string"||!value.imageUrl||value.imageUrl.length>4096))throw new TypeError("Invalid identity display value.");let text11=value.textI18n!==void 0?resolveI18nDisplayText(value.textI18n,locale):value.text;if(typeof text11!="string")throw new TypeError("Identity requires text or localized text.");return jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-2",children:[typeof value.imageUrl=="string"?image({kind:"image",src:value.imageUrl}):icon?image(icon):null,jsxRuntime.jsx("span",{children:text11})]})}if(valueType!=="badge"||value.textKey!==void 0==(value.textI18n!==void 0)||value.textKey!==void 0&&(typeof value.textKey!="string"||!value.textKey)||value.tone!==void 0&&!tones.some(tone=>tone===value.tone))throw new TypeError("Invalid badge display value.");let textParameters;if(value.textParameters!==void 0){if(value.textI18n!==void 0||!object2(value.textParameters)||![Object.prototype,null].includes(Object.getPrototypeOf(value.textParameters)))throw new TypeError("Invalid badge text parameters.");textParameters=Object.fromEntries(Object.entries(value.textParameters).map(([key3,item])=>{if(item===null)return [key3,""];if(typeof item=="string"||typeof item=="boolean"||typeof item=="number"&&Number.isFinite(item))return [key3,item];throw new TypeError("Invalid badge text parameters.")}));}let text10=value.textI18n!==void 0?resolveI18nDisplayText(value.textI18n,locale):translate(String(value.textKey),textParameters);return jsxRuntime.jsx(BaseBadge,{label:text10,tone:value.tone,icon:icon?image(icon):void 0})}var FILE_PICKER_MAX_BYTES=5*1024*1024*1024,FILE_PICKER_SCHEMA="monkeys-design://render-model/file-picker/v1",metadataProperties={handleId:{type:"string",minLength:1,maxLength:256},fileName:{type:"string",minLength:1,maxLength:1024},size:{type:"integer",minimum:0,maximum:FILE_PICKER_MAX_BYTES},mimeType:{type:"string",maxLength:256}},metadataSchema={type:"object",additionalProperties:false,required:["handleId","fileName","size","mimeType"],properties:metadataProperties},FILE_PICKER_RENDER_MODEL_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:FILE_PICKER_SCHEMA,type:"object",additionalProperties:false,required:["labelKey","maxBytes"],properties:{labelKey:{type:"string",minLength:1,maxLength:256},accept:{type:"string",maxLength:1024},maxBytes:{type:"integer",minimum:1,maximum:FILE_PICKER_MAX_BYTES},disabled:{type:"boolean"},submitting:{type:"boolean"},selected:{anyOf:[{type:"null"},metadataSchema]}}},FILE_PICKER_SELECT_INTENT_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"monkeys-design://intent/file-picker-select/v1",...metadataSchema},FILE_PICKER_CANCEL_INTENT_SCHEMA={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"monkeys-design://intent/file-picker-cancel/v1",type:"object",additionalProperties:false,maxProperties:0};function filePickerAccepts(file,accept){if(!accept?.trim())return true;let name=file.name.toLowerCase(),type=file.type.toLowerCase();return accept.split(",").some(raw=>{let rule=raw.trim().toLowerCase();return /^\.[a-z0-9][a-z0-9._-]*$/.test(rule)?name.endsWith(rule):/^[a-z0-9!#$&^_.+-]+\/\*$/.test(rule)?type.startsWith(rule.slice(0,-1)):/^[a-z0-9!#$&^_.+-]+\/[a-z0-9!#$&^_.+-]+$/.test(rule)&&type===rule})}function readTransientFileMetadata(value){if(!value||typeof value!="object"||Array.isArray(value))return;let object6=value;if(!(Object.keys(object6).length!==4||typeof object6.handleId!="string"||object6.handleId.length<1||object6.handleId.length>256||typeof object6.fileName!="string"||object6.fileName.length<1||object6.fileName.length>1024||typeof object6.mimeType!="string"||object6.mimeType.length>256||typeof object6.size!="number"||!Number.isInteger(object6.size)||object6.size<0||object6.size>FILE_PICKER_MAX_BYTES))return {handleId:object6.handleId,fileName:object6.fileName,size:object6.size,mimeType:object6.mimeType}}function FilePickerView({model,translate,emitIntent,transientFiles}){let id9=React8.useId(),input=React8.useRef(null),current=React8.useRef(),[selected2,setSelected]=React8.useState(),[error,setError]=React8.useState(),disabled=!(typeof model.labelKey=="string"&&typeof model.maxBytes=="number"&&Number.isInteger(model.maxBytes)&&model.maxBytes>=1&&model.maxBytes<=FILE_PICKER_MAX_BYTES)||!transientFiles||model.disabled===true||model.submitting===true,authoritative=readTransientFileMetadata(model.selected),authoritativeKey=authoritative?JSON.stringify(authoritative):"";React8.useEffect(()=>()=>{current.current&&transientFiles?.discard(current.current.handleId),current.current=void 0;},[transientFiles]),React8.useEffect(()=>{let next=transientFiles?authoritative:void 0;current.current&¤t.current.handleId!==next?.handleId&&transientFiles?.discard(current.current.handleId),current.current=next,setSelected(next),setError(void 0),input.current&&(input.current.value="");},[transientFiles,authoritativeKey]);let clear=()=>{disabled||(current.current&&transientFiles?.discard(current.current.handleId),current.current=void 0,setSelected(void 0),setError(void 0),input.current&&(input.current.value=""),emitIntent("capability.file-picker.cancel",{}));},label=typeof model.labelKey=="string"?model.labelKey:"monkeys.design.capability.filePicker.label";return jsxRuntime.jsxs("div",{className:"grid gap-2",children:[jsxRuntime.jsx("label",{htmlFor:id9,children:translate(label)}),jsxRuntime.jsx("input",{ref:input,id:id9,type:"file",hidden:true,accept:typeof model.accept=="string"?model.accept:void 0,disabled,"aria-invalid":!!error,onChange:event=>{if(disabled||!transientFiles)return;let file=event.currentTarget.files?.[0];if(event.currentTarget.value="",!file)return;if(file.size>Number(model.maxBytes)){setError("monkeys.design.capability.filePicker.tooLarge");return}if(!filePickerAccepts(file,typeof model.accept=="string"?model.accept:void 0)){setError("monkeys.design.capability.filePicker.invalidType");return}let registered;try{registered=transientFiles.register(file,{maxBytes:Number(model.maxBytes)});}catch{setError("monkeys.design.capability.filePicker.registrationFailed");return}let metadata={handleId:registered.handleId,fileName:registered.fileName,size:registered.size,mimeType:registered.mimeType},previous=current.current;current.current=metadata,setSelected(metadata),setError(void 0),previous&&previous.handleId!==metadata.handleId&&transientFiles.discard(previous.handleId),emitIntent("capability.file-picker.select",metadata);}}),jsxRuntime.jsxs("div",{className:"flex items-center gap-token-md",children:[jsxRuntime.jsx(BaseTooltip,{content:translate(label),portal:true,children:jsxRuntime.jsx(BaseButton,{label:translate(label),iconOnly:true,size:"md",icon:jsxRuntime.jsx(lucideReact.Upload,{className:"h-4 w-4"}),disabled,onClick:()=>input.current?.click()})}),jsxRuntime.jsx(BaseTooltip,{content:translate("monkeys.design.capability.filePicker.cancel"),portal:true,children:jsxRuntime.jsx(BaseButton,{label:translate("monkeys.design.capability.filePicker.cancel"),iconOnly:true,size:"md",icon:jsxRuntime.jsx(lucideReact.X,{className:"h-4 w-4"}),disabled,onClick:clear})}),selected2?jsxRuntime.jsx("span",{children:selected2.fileName}):null]}),error?jsxRuntime.jsx("span",{role:"alert",children:translate(error)}):null]})}var FilePickerCapabilityRenderer=context=>jsxRuntime.jsx(FilePickerView,{...context});var cx=(...values)=>values.filter(Boolean).join(" ");function useControllable(value,defaultValue,fallback2,onChange){let controlled=value!==void 0,initial=React8.useRef(controlled),warned=React8.useRef(false);process.env.NODE_ENV!=="production"&&!warned.current&&(value!==void 0&&defaultValue!==void 0||initial.current!==controlled)&&(console.error("monkeys-design UI: choose controlled or uncontrolled state; do not supply both value and defaultValue or switch modes."),warned.current=true);let[local,setLocal]=React8.useState(defaultValue??fallback2),current=controlled?value:local;return [current,next=>{controlled||setLocal(next),next!==current&&onChange?.(next);}]}var tokens_default={seed:{ui:{color:{lightEdgeBlue:{$value:{hex:"#4285FF"}},blueGlow:{$value:{hex:"#2357EA"}},violetGlow:{$value:{hex:"#7631FF"}}}}}};var UIThemeContext=React8.createContext(null),PortalDepthContext=React8.createContext(0);function useUIDirection(explicit){let theme=React8.useContext(UIThemeContext),inherited=useMonkeysDirection(),environment=useMonkeysEnvironment(),[documentDirection,setDocumentDirection]=React8.useState();return React8.useEffect(()=>{if(explicit||theme?.dir||inherited)return;let root=(environment.getDocument?.()??globalThis.document)?.documentElement;if(!root)return;let update=()=>setDocumentDirection(root.dir==="rtl"?"rtl":"ltr");update();let observer=new MutationObserver(update);return observer.observe(root,{attributes:true,attributeFilter:["dir"]}),()=>observer.disconnect()},[explicit,theme?.dir,inherited,environment]),explicit??theme?.dir??inherited??documentDirection}function useUILocale(){let locale=useMonkeysLocale();return locale.provided?locale:{...zhCN,provided:false}}function useTooltipScope(){return React8.useContext(UIThemeContext)!==null}var inputDocuments=new WeakMap;function observeInput(document2){let existing=inputDocuments.get(document2);if(existing)return existing.count++,()=>releaseInput(document2);let root=document2.documentElement,previous=root.getAttribute("data-monkeys-ui-input"),pointer=()=>root.setAttribute("data-monkeys-ui-input","pointer"),keyboard=()=>root.setAttribute("data-monkeys-ui-input","keyboard");return document2.addEventListener("pointerdown",pointer,true),document2.addEventListener("keydown",keyboard,true),inputDocuments.set(document2,{count:1,dispose:()=>{document2.removeEventListener("pointerdown",pointer,true),document2.removeEventListener("keydown",keyboard,true),previous===null?root.removeAttribute("data-monkeys-ui-input"):root.setAttribute("data-monkeys-ui-input",previous);}}),()=>releaseInput(document2)}function releaseInput(document2){let entry=inputDocuments.get(document2);entry&&--entry.count===0&&(entry.dispose(),inputDocuments.delete(document2));}function Portal11({children}){let theme=React8.useContext(UIThemeContext),environment=useMonkeysEnvironment(),options2=useMonkeysPortalOptions(),direction=useUIDirection(),depth=React8.useContext(PortalDepthContext)+1,[host3,setHost]=React8.useState(null);React8.useEffect(()=>{let document2=environment.getDocument?.()??globalThis.document;return setHost(typeof options2.container=="function"?options2.container():options2.container??document2?.body??null),document2?observeInput(document2):void 0},[environment,options2.container]);let content=jsxRuntime.jsx(PortalDepthContext.Provider,{value:depth,children:jsxRuntime.jsx("div",{className:"monkeys-ui-scope monkeys-ui-portal",dir:direction,"data-monkeys-ui-theme":"dark",style:{...theme?.variables,"--monkeys-ui-overlay-layer":1200+depth*10},children})});return options2.disabled?content:host3?reactDom.createPortal(content,host3):null}function sampleInk(color){if(!color||!/^#([\da-f]{3}|[\da-f]{6})$/i.test(color))return "light";let hex=color.slice(1).length===3?[...color.slice(1)].map(value=>value+value).join(""):color.slice(1),channels=[0,2,4].map(index=>{let value=parseInt(hex.slice(index,index+2),16)/255;return value<=.04045?value/12.92:((value+.055)/1.055)**2.4}),luminance=channels[0]*.2126+channels[1]*.7152+channels[2]*.0722;return (luminance+.05)/.05>=1.05/(luminance+.05)?"dark":"light"}function ButtonLightEdge(options2){let filterId=`button-light-edge-${React8.useId().replace(/:/g,"")}`,hostRef=React8.useRef(null),[module,setModule]=React8.useState(null),[enabled,setEnabled]=React8.useState(false),[ready,setReady]=React8.useState(false),[shape,setShape]=React8.useState(null);return React8.useEffect(()=>{let motion=window.matchMedia("(prefers-reduced-motion: reduce)"),colors2=window.matchMedia("(forced-colors: active)"),update=()=>setEnabled(!motion.matches&&!colors2.matches);return update(),motion.addEventListener("change",update),colors2.addEventListener("change",update),()=>{motion.removeEventListener("change",update),colors2.removeEventListener("change",update);}},[]),React8.useEffect(()=>{if(!enabled)return;let active=true;return import('shaders/react').then(loaded=>{active&&setModule(loaded);}).catch(()=>{}),()=>{active=false;}},[enabled]),React8.useEffect(()=>{let host3=hostRef.current,button=host3?.closest("button");if(!button||!host3)return;let update=()=>{let width=host3.clientWidth,height=host3.clientHeight;if(!width||!height)return;let radiusValue=getComputedStyle(button).borderTopLeftRadius,radius=radiusValue.endsWith("%")?Math.min(width,height)*parseFloat(radiusValue)/100:parseFloat(radiusValue)||0,inset=1.5;setShape({type:"roundedRectSDF",radius:Math.max(.01,width/(2*height)-inset/height),height:Math.max(.01,.5-inset/height),rounding:Math.max(0,Math.min(radius-inset,height/2-inset))/height});};update();let observer=new ResizeObserver(update);return observer.observe(button),()=>observer.disconnect()},[]),jsxRuntime.jsxs("span",{ref:hostRef,className:"monkeys-ui-button-light-edge-mask","data-ready":ready||void 0,children:[jsxRuntime.jsx("svg",{width:"0",height:"0","aria-hidden":"true",className:"monkeys-ui-button-light-edge-defs",children:jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("filter",{id:filterId,x:"-30%",y:"-100%",width:"160%",height:"300%",colorInterpolationFilters:"sRGB",children:[jsxRuntime.jsx("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"4.5",result:"glow"}),jsxRuntime.jsx("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"1",result:"flow"}),jsxRuntime.jsxs("feMerge",{children:[jsxRuntime.jsx("feMergeNode",{in:"glow"}),jsxRuntime.jsx("feMergeNode",{in:"flow"})]})]})})}),jsxRuntime.jsxs("span",{className:"monkeys-ui-button-light-edge-flow",style:{filter:`url(#${filterId})`},children:[jsxRuntime.jsx("span",{className:"monkeys-ui-button-light-edge-ambient"}),enabled&&module&&shape?jsxRuntime.jsx(module.Shader,{disableTelemetry:true,style:{width:"100%",height:"100%"},onReady:()=>setReady(true),children:jsxRuntime.jsx(module.LightEdge,{colorA:tokens_default.seed.ui.color.lightEdgeBlue.$value.hex,colorB:tokens_default.seed.ui.color.violetGlow.$value.hex,thickness:.48,softness:1,intensity:.9,bloom:.2,spots:1,spotSize:.6,smoke:.12,smokeSize:.65,speed:.45,...options2,stops:null,shape})}):null]})]})}var Button2=React8.forwardRef(function({variant,shape="default",icon,tone="neutral",size:size2="md",loading=false,lightEdge=false,type="button",className,children,onClick,onPointerDown,onKeyDown,...props},ref){let direction=useUIDirection();return jsxRuntime.jsxs("button",{...props,dir:props.dir??direction,ref,type,className:cx("monkeys-ui-button",className),"data-light-edge":lightEdge?true:void 0,"data-shape":shape,"data-variant":variant??(shape==="icon"?"ghost":shape==="tile"?"outline":"solid"),"data-tone":tone,"data-size":size2,onPointerDown:event=>{event.currentTarget.dataset.input="pointer",onPointerDown?.(event);},onKeyDown:event=>{event.currentTarget.dataset.input="keyboard",onKeyDown?.(event);},"aria-busy":loading||void 0,"aria-disabled":loading||props["aria-disabled"],onClick:event=>{if(loading||props["aria-disabled"]===true||props["aria-disabled"]==="true"){event.preventDefault();return}onClick?.(event);},children:[lightEdge?jsxRuntime.jsx("span",{className:"monkeys-ui-button-light-edge","aria-hidden":"true",children:jsxRuntime.jsx(ButtonLightEdge,{...lightEdge===true?{}:lightEdge})}):null,jsxRuntime.jsxs("span",{className:"monkeys-ui-button-label","data-loading":loading||void 0,children:[icon?jsxRuntime.jsx("span",{className:"monkeys-ui-button-icon","aria-hidden":"true",children:icon}):null,children]}),loading?jsxRuntime.jsx("span",{className:"monkeys-ui-button-spinner","aria-hidden":"true"}):null]})});React8.forwardRef(function({checked,defaultChecked,onCheckedChange,onClick,...props},ref){let[value,setValue]=useControllable(checked,defaultChecked,false,onCheckedChange);return jsxRuntime.jsx(Button2,{...props,ref,"aria-pressed":value,onClick:event=>{onClick?.(event),event.defaultPrevented||setValue(!value);}})});React8.forwardRef(function({options:options2,value,defaultValue,onValueChange,onValueCommit,disabled,readOnly,className,style,onPointerDown,onKeyDown,onPointerUp,onKeyUp,dir,...props},ref){let field=useField(props),direction=useUIDirection(dir==="rtl"||dir==="ltr"?dir:void 0),[selected2,setSelected]=useControllable(value,defaultValue,options2[0]?.id??"",onValueChange),index=Math.max(0,options2.findIndex(option2=>option2.id===selected2)),option=options2[index],position=options2.length>1?index/(options2.length-1):.5,location=fraction=>`calc(${fraction*100}% + ${.5-fraction} * var(--monkeys-ui-color-slider-thumb-width))`,gradient=options2.map((item,index2)=>{let t=options2.length>1?index2/(options2.length-1):0;return `${item.color} ${location(t)}`}),background=options2.length>1?`linear-gradient(to ${direction==="rtl"?"left":"right"}, ${gradient.join(", ")})`:option?.color,locked=disabled||readOnly||options2.length<2,commit=input=>{let next=options2[Number(input.value)];!locked&&next&&onValueCommit?.(next.id);};return jsxRuntime.jsxs("div",{className:cx("monkeys-ui-color-slider",className),"data-disabled":disabled||options2.length===0||void 0,dir:direction,style,children:[jsxRuntime.jsx("span",{className:"monkeys-ui-color-slider-track",style:{background},"aria-hidden":"true"}),jsxRuntime.jsx("span",{className:"monkeys-ui-color-slider-thumb","data-ink":sampleInk(option?.color),style:{insetInlineStart:location(position),"--monkeys-ui-color-slider-selected":option?.color},"aria-hidden":"true",children:jsxRuntime.jsx("span",{className:"monkeys-ui-color-slider-label",children:option?.label})}),jsxRuntime.jsx("input",{...props,...field,ref,type:"range",dir:direction,min:0,max:Math.max(0,options2.length-1),step:1,value:index,disabled:disabled||options2.length===0,"aria-readonly":readOnly||void 0,"aria-valuetext":option?.label??"",className:"monkeys-ui-color-slider-input",onPointerDown:event=>{onPointerDown?.(event),readOnly&&event.preventDefault();},onKeyDown:event=>{onKeyDown?.(event),readOnly&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown"].includes(event.key)&&event.preventDefault();},onChange:event=>{if(!locked){let next=options2[Number(event.target.value)];next&&setSelected(next.id);}},onPointerUp:event=>{onPointerUp?.(event),event.defaultPrevented||commit(event.currentTarget);},onKeyUp:event=>{onKeyUp?.(event),!event.defaultPrevented&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown"].includes(event.key)&&commit(event.currentTarget);}})]})});var FieldContext=React8.createContext(null);function useField(props){let field=React8.useContext(FieldContext),direction=useUIDirection(props.dir==="rtl"||props.dir==="ltr"?props.dir:void 0);return {id:field?.id??props.id,dir:props.dir??direction,"aria-describedby":[field?.describedBy,props["aria-describedby"]].filter(Boolean).join(" ")||void 0,"aria-invalid":props["aria-invalid"]??field?.invalid,required:props.required??field?.required}}function Field({id:explicitId,label,description,error,invalid:invalid2,required,className,children,...props}){let generated=React8.useId(),helpInTooltip=React8.useContext(FormHelpPresentationContext),id9=explicitId??(React8.isValidElement(children)?children.props.id:void 0)??generated,describedBy=[description?id9+"-description":"",error?id9+"-error":""].filter(Boolean).join(" ")||void 0,fieldLabel=jsxRuntime.jsxs("label",{className:"monkeys-ui-label",htmlFor:id9,children:[label,required?jsxRuntime.jsx("span",{className:"monkeys-ui-required","aria-hidden":"true",children:" *"}):null]});return jsxRuntime.jsxs("div",{...props,className:cx("monkeys-ui-field",className),children:[helpInTooltip&&description?jsxRuntime.jsxs("div",{className:"flex items-center gap-1","data-slot":"label-row",children:[fieldLabel,jsxRuntime.jsx(BaseFormHelp,{children:description})]}):fieldLabel,jsxRuntime.jsx(FieldContext.Provider,{value:{id:id9,describedBy,invalid:invalid2??!!error,required},children:React8.Children.only(children)}),description?jsxRuntime.jsx("div",{id:id9+"-description",className:helpInTooltip?"monkeys-ui-visually-hidden":"monkeys-ui-description",children:description}):null,error?jsxRuntime.jsx("div",{id:id9+"-error",className:"monkeys-ui-error",role:"alert",children:error}):null]})}function Fieldset({legend,children,className,...props}){return jsxRuntime.jsxs("fieldset",{...props,className:cx("monkeys-ui-fieldset",className),children:[legend!=null?jsxRuntime.jsx("legend",{children:legend}):null,children]})}var Input2=React8.forwardRef(function({className,...props},ref){let field=useField(props);return jsxRuntime.jsx("input",{...props,...field,className:cx("monkeys-ui-input",className),ref})}),Textarea2=React8.forwardRef(function({className,...props},ref){let field=useField(props);return jsxRuntime.jsx("textarea",{...props,...field,ref,className:cx("monkeys-ui-textarea",className)})});function parseNumberValue(text10){return /^-?(?:\d+|\d*\.\d+)$/.test(text10.trim())&&Number.isFinite(Number(text10))?Number(text10):null}React8.forwardRef(function({value,defaultValue,onValueChange,...props},ref){let[text10,setText]=useControllable(value,defaultValue,"",next=>onValueChange?.(next,{numberValue:parseNumberValue(next)}));return jsxRuntime.jsx(Input2,{...props,type:"text",inputMode:"decimal",value:text10,onChange:event=>setText(event.target.value),ref})});React8.forwardRef(function({value,defaultValue,onValueChange,onSearch,clearLabel="\u6E05\u7A7A\u641C\u7D22",className,onKeyDown,disabled,readOnly,...props},ref){let[text10,setText]=useControllable(value,defaultValue,"",onValueChange),composing=React8.useRef(false),input=React8.useRef(null);return React8.useImperativeHandle(ref,()=>input.current,[]),jsxRuntime.jsxs("div",{className:cx("monkeys-ui-search",className),children:[jsxRuntime.jsx(lucideReact.Search,{size:17,"aria-hidden":"true"}),jsxRuntime.jsx(Input2,{...props,ref:input,type:"search",disabled,readOnly,value:text10,onChange:event=>setText(event.target.value),onCompositionStart:()=>{composing.current=true;},onCompositionEnd:()=>{composing.current=false;},onKeyDown:event=>{onKeyDown?.(event),!event.defaultPrevented&&event.key==="Enter"&&!composing.current&&!event.nativeEvent.isComposing&&(event.preventDefault(),onSearch?.(text10));}}),text10?jsxRuntime.jsx(Button2,{shape:"icon","aria-label":clearLabel,size:"sm",disabled:disabled||readOnly,onClick:()=>{!disabled&&!readOnly&&(setText(""),input.current?.focus());},children:jsxRuntime.jsx(lucideReact.X,{size:14,"aria-hidden":"true"})}):null]})});var Switch2=React8.forwardRef(function({checked,defaultChecked,onCheckedChange,className,onPointerDown,onKeyDown,...props},ref){let field=useField(props),[value,setValue]=useControllable(checked,defaultChecked,false,onCheckedChange);return jsxRuntime.jsx(SwitchPrimitive__namespace.Root,{...props,...field,ref,checked:value,onCheckedChange:setValue,onPointerDown:event=>{event.currentTarget.dataset.input="pointer",onPointerDown?.(event);},onKeyDown:event=>{event.currentTarget.dataset.input="keyboard",onKeyDown?.(event);},className:cx("monkeys-ui-switch",className),children:jsxRuntime.jsx(SwitchPrimitive__namespace.Thumb,{className:"monkeys-ui-switch-thumb"})})}),PickerTrigger=React8.forwardRef(function({indicator=jsxRuntime.jsx(lucideReact.ChevronDown,{size:12}),className,children,type="button",...props},ref){return jsxRuntime.jsxs("button",{...props,ref,type,className:cx("monkeys-ui-select",className),children:[jsxRuntime.jsx("span",{className:"min-w-0 truncate",children}),jsxRuntime.jsx("span",{className:"shrink-0","aria-hidden":"true",children:indicator})]})}),Select2=React8.forwardRef(function({options:options2,placeholder,className,style,id:id9,"aria-label":label,"aria-describedby":describedBy,"aria-invalid":invalid2,value,defaultValue,onValueChange,...props},ref){let field=useField({id:id9,dir:props.dir,"aria-describedby":describedBy,"aria-invalid":invalid2,required:props.required}),[selected2,setSelected]=useControllable(value,defaultValue,"",onValueChange),direction=useUIDirection(props.dir),locale=useUILocale(),{required,...fieldAttributes}=field;return jsxRuntime.jsxs(SelectPrimitive__namespace.Root,{...props,dir:direction,required,value:selected2,onValueChange:setSelected,children:[jsxRuntime.jsxs(SelectPrimitive__namespace.Trigger,{ref,...fieldAttributes,"aria-required":required||void 0,"aria-label":label,className:cx("monkeys-ui-select",className),style,children:[jsxRuntime.jsx(SelectPrimitive__namespace.Value,{placeholder:placeholder??locale.messages.multiSelect.placeholder}),jsxRuntime.jsx(SelectPrimitive__namespace.Icon,{"aria-hidden":"true",children:jsxRuntime.jsx(lucideReact.ChevronDown,{size:12})})]}),jsxRuntime.jsx(Portal11,{children:jsxRuntime.jsxs(SelectPrimitive__namespace.Content,{className:"monkeys-ui-select-content",position:"popper",sideOffset:6,children:[jsxRuntime.jsx(SelectPrimitive__namespace.ScrollUpButton,{children:jsxRuntime.jsx(lucideReact.ChevronUp,{size:12,"aria-hidden":"true"})}),jsxRuntime.jsx(SelectPrimitive__namespace.Viewport,{children:options2.map(option=>jsxRuntime.jsxs(SelectPrimitive__namespace.Item,{value:option.value,disabled:option.disabled,className:"monkeys-ui-select-item",children:[jsxRuntime.jsx(SelectPrimitive__namespace.ItemText,{children:option.label}),jsxRuntime.jsx(SelectPrimitive__namespace.ItemIndicator,{children:jsxRuntime.jsx(lucideReact.Check,{size:12,"aria-hidden":"true"})})]},option.value))}),jsxRuntime.jsx(SelectPrimitive__namespace.ScrollDownButton,{children:jsxRuntime.jsx(lucideReact.ChevronDown,{size:12,"aria-hidden":"true"})})]})})]})});function SectionTitle({as:Element2="h2",indicator=true,className,...props}){return jsxRuntime.jsx(Element2,{...props,className:cx("monkeys-ui-section-title",className),"data-indicator":indicator})}var ScrollSurface=React8.forwardRef(function({as:Element2="section",children,className,onScroll,dir,...props},ref){let direction=useUIDirection(dir==="rtl"||dir==="ltr"?dir:void 0);return jsxRuntime.jsx(ScrollArea2__namespace.Root,{asChild:true,type:"scroll",scrollHideDelay:700,dir:direction,children:jsxRuntime.jsxs(Element2,{...props,ref,className:cx("monkeys-ui-scroll-surface",className),children:[jsxRuntime.jsx(ScrollArea2__namespace.Viewport,{className:"monkeys-ui-scroll-viewport",tabIndex:0,role:"group","aria-labelledby":props["aria-labelledby"],"aria-label":props["aria-labelledby"]?void 0:props["aria-label"]??"\u6EDA\u52A8\u5185\u5BB9",onScroll,children}),jsxRuntime.jsx(ScrollArea2__namespace.Scrollbar,{orientation:"vertical",className:"monkeys-ui-scrollbar","aria-hidden":"true",children:jsxRuntime.jsx(ScrollArea2__namespace.Thumb,{className:"monkeys-ui-scroll-thumb"})}),jsxRuntime.jsx(ScrollArea2__namespace.Scrollbar,{orientation:"horizontal",className:"monkeys-ui-scrollbar","aria-hidden":"true",children:jsxRuntime.jsx(ScrollArea2__namespace.Thumb,{className:"monkeys-ui-scroll-thumb"})})]})})});function Tooltip2({content,children,delayDuration,side="top"}){let scoped=useTooltipScope(),tooltip=jsxRuntime.jsxs(Tooltip__namespace.Root,{delayDuration,children:[jsxRuntime.jsx(Tooltip__namespace.Trigger,{asChild:true,children}),jsxRuntime.jsx(Portal11,{children:jsxRuntime.jsx(Tooltip__namespace.Content,{side,sideOffset:7,className:"monkeys-ui-tooltip",children:content})})]});return scoped?tooltip:jsxRuntime.jsx(Tooltip__namespace.Provider,{delayDuration:delayDuration??500,skipDelayDuration:300,children:tooltip})}function Badge2({tone="neutral",className,...props}){return jsxRuntime.jsx("span",{...props,"data-tone":tone,className:cx("monkeys-ui-badge",className)})}function Notice({tone="neutral",action,children,className,...props}){return jsxRuntime.jsxs("div",{role:tone==="danger"?"alert":"status",...props,"data-tone":tone,className:cx("monkeys-ui-notice",className),children:[jsxRuntime.jsx("div",{children}),action]})}React8.forwardRef(function({src,alt,fallback:fallback2,className,...props},ref){return jsxRuntime.jsxs(AvatarPrimitive__namespace.Root,{...props,ref,className:cx("monkeys-ui-avatar",className),children:[jsxRuntime.jsx(AvatarPrimitive__namespace.Image,{src,alt}),jsxRuntime.jsx(AvatarPrimitive__namespace.Fallback,{children:fallback2??alt.slice(0,1)})]})});var defaultAccept=["image/jpeg","image/png"],identity=file=>`${file.name}:${file.size}:${file.lastModified}`;function validateImageFiles(files,{accept=defaultAccept,maxFileBytes=1/0,existingFiles=[]}={}){let seen=new Set(existingFiles.map(identity)),accepted=[],rejected=[];for(let file of files){let key3=identity(file),reason=accept.some(type=>type.endsWith("/*")?file.type.startsWith(type.slice(0,-1)):type===file.type)?file.size>maxFileBytes?"size":seen.has(key3)?"duplicate":void 0:"type";reason?rejected.push({file,reason}):(seen.add(key3),accepted.push(file));}return {accepted,rejected}}var UploadedImageItem=React8.forwardRef(function({item,onRemove,onRetry,onSelectCover,cover,disabled,className,...props},ref){return jsxRuntime.jsxs("div",{...props,ref,className:cx("monkeys-ui-uploaded-image",className),"data-state":item.status,"aria-label":item.name,"aria-busy":item.status==="pending",children:[item.src?jsxRuntime.jsx("img",{src:item.src,alt:item.name}):jsxRuntime.jsx(lucideReact.ImageOff,{size:24,"aria-hidden":"true"}),jsxRuntime.jsxs("div",{className:"monkeys-ui-uploaded-info",children:[jsxRuntime.jsx("span",{title:item.name,children:item.name}),item.status==="pending"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{role:"status",children:"\u4E0A\u4F20\u4E2D"}),item.progress!=null?jsxRuntime.jsx("progress",{"aria-label":item.name+" \u4E0A\u4F20\u8FDB\u5EA6",value:item.progress,max:100}):null]}):null,item.status==="error"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{role:"alert",children:item.error??"\u4E0A\u4F20\u5931\u8D25"}),onRetry?jsxRuntime.jsx(Button2,{size:"sm",disabled,onClick:onRetry,children:"\u91CD\u8BD5"}):null]}):null,onSelectCover&&item.status!=="error"?jsxRuntime.jsx(Button2,{size:"sm",disabled,"aria-pressed":cover,onClick:onSelectCover,children:cover?"\u5C01\u9762":"\u8BBE\u4E3A\u5C01\u9762"}):null]}),onRemove?jsxRuntime.jsx(Button2,{shape:"icon","aria-label":"\u79FB\u9664 "+item.name,className:"monkeys-ui-upload-remove",size:"sm",disabled,onClick:onRemove,children:jsxRuntime.jsx(lucideReact.X,{size:14,"aria-hidden":"true"})}):null]})}),ImageUploadField=React8.forwardRef(function({id:explicitId,label="\u4E0A\u4F20\u56FE\u7247",description,items,disabled,accept=defaultAccept,maxFileBytes,existingFiles,onFilesSelected,onRejected,onRemove,onRetry,onSelectCover,coverId,error,className,onDrop,onPaste,onDragOver,...props},ref){let generated=React8.useId(),id9=explicitId??generated,input=React8.useRef(null);function receive(files){if(disabled)return;let result=validateImageFiles(files,{accept,maxFileBytes,existingFiles});result.rejected.length&&onRejected?.(result.rejected),result.accepted.length&&onFilesSelected(result.accepted);}return jsxRuntime.jsxs("div",{...props,ref,id:id9,role:"group","aria-label":label,"aria-describedby":description?id9+"-description":void 0,className:cx("monkeys-ui-upload",className),onDragOver:event=>{onDragOver?.(event),!disabled&&event.dataTransfer.types.includes("Files")&&event.preventDefault();},onDrop:event=>{onDrop?.(event),!event.defaultPrevented&&event.dataTransfer.files.length&&(event.preventDefault(),receive(Array.from(event.dataTransfer.files)));},onPaste:event=>{onPaste?.(event),!event.defaultPrevented&&event.clipboardData.files.length&&(event.preventDefault(),receive(Array.from(event.clipboardData.files)));},children:[jsxRuntime.jsx("div",{className:"monkeys-ui-label",children:label}),jsxRuntime.jsxs("div",{className:"monkeys-ui-upload-items",children:[jsxRuntime.jsxs(Button2,{className:"monkeys-ui-upload-target",variant:"outline",disabled,onClick:()=>input.current?.click(),"aria-describedby":description?id9+"-description":void 0,children:[jsxRuntime.jsx(lucideReact.Plus,{size:28,"aria-hidden":"true"}),jsxRuntime.jsx("span",{children:"\u9009\u62E9\u3001\u62D6\u5165\u6216\u7C98\u8D34\u56FE\u7247"})]}),jsxRuntime.jsx("input",{className:"monkeys-ui-visually-hidden",ref:input,type:"file",tabIndex:-1,accept:accept.join(","),multiple:true,disabled,"aria-label":label,onChange:event=>{receive(Array.from(event.currentTarget.files??[])),event.currentTarget.value="";}}),items.map(item=>jsxRuntime.jsx(UploadedImageItem,{item,disabled,cover:item.id===coverId,onRemove:onRemove?()=>onRemove(item.id):void 0,onRetry:onRetry?()=>onRetry(item.id):void 0,onSelectCover:onSelectCover?()=>onSelectCover(item.id):void 0},item.id))]}),description?jsxRuntime.jsx("div",{className:"monkeys-ui-description",id:id9+"-description",children:description}):null,error?jsxRuntime.jsx(Notice,{tone:"danger",children:error}):null]})});var MEDIA_DRAFT_MAX_BYTES=25*1024*1024,MEDIA_DRAFT_MAX_ITEMS=20;var MEDIA_DRAFT_FIELD_PROPERTIES={uploadBinding:{type:"string",minLength:1,maxLength:4096},media:{type:"object",additionalProperties:false,required:["maxItems","maxBytes"],properties:{presentation:{enum:["compact","cards"]},maxItems:{type:"integer",minimum:1,maximum:MEDIA_DRAFT_MAX_ITEMS},maxBytes:{type:"integer",minimum:1,maximum:MEDIA_DRAFT_MAX_BYTES}}}};function readMediaDraft(value){if(!value||typeof value!="object"||Array.isArray(value)||Object.keys(value).some(key3=>key3!=="items"))return;let items=value.items;if(!Array.isArray(items)||items.length>MEDIA_DRAFT_MAX_ITEMS)return;let ids2=new Set;for(let raw of items){if(!raw||typeof raw!="object"||Array.isArray(raw))return;let{source,...rest}=raw,id9;if(source==="local"){let metadata=readTransientFileMetadata(rest);if(!metadata||metadata.size<1||metadata.size>MEDIA_DRAFT_MAX_BYTES||!metadata.mimeType.startsWith("image/"))return;id9="local:"+metadata.handleId;}else if(source==="existing"){if(Object.keys(rest).some(key3=>!["id","original","previewUrl"].includes(key3))||typeof rest.id!="string"||!rest.id||rest.id.length>256||!rest.original||typeof rest.original!="object"||Array.isArray(rest.original)||Object.keys(rest.original).length>32||rest.previewUrl!==void 0&&(typeof rest.previewUrl!="string"||!/^https?:\/\//.test(rest.previewUrl)||rest.previewUrl.length>8192))return;id9="existing:"+rest.id;}else return;if(ids2.has(id9))return;ids2.add(id9);}return items}function mediaDraftInvalid(field){if(field.kind!=="media-draft"||field.hidden===true||field.disabled===true)return false;let items=readMediaDraft(field.value),config=field.media,count=Number(config?.maxItems),bytes=Number(config?.maxBytes);return !items||!Number.isInteger(count)||count<1||count>MEDIA_DRAFT_MAX_ITEMS||!Number.isInteger(bytes)||bytes<1||bytes>MEDIA_DRAFT_MAX_BYTES||items.length>count||field.required===true&&items.length===0||items.some(item=>item.source==="local"&&Number(item.size)>bytes)}function withMediaDraftFields(fields,configurations){if(configurations===void 0)return fields;if(!Array.isArray(configurations)||configurations.length>64)throw new TypeError("Invalid media draft configuration");let pending=new Map;for(let raw of configurations){if(!raw||typeof raw!="object"||Array.isArray(raw)||typeof raw.fieldId!="string"||!raw.fieldId||pending.has(raw.fieldId))throw new TypeError("Invalid media draft field");pending.set(raw.fieldId,raw);}let configured=new Set(pending.keys()),seen=new Set,walk=rows=>rows.map(field=>{if(configured.has(String(field.id))){if(seen.has(String(field.id)))throw new TypeError("Duplicate media draft field");seen.add(String(field.id));}let config=pending.get(String(field.id));if(config){if(field.kind!=="json")throw new TypeError("Media draft requires a JSON field");return pending.delete(String(field.id)),{...field,kind:"media-draft",uploadBinding:config.uploadBinding,media:config.media}}return field.kind==="object"&&Array.isArray(field.children)?{...field,children:walk(field.children)}:field}),result=walk(fields);if(pending.size)throw new TypeError("Unknown media draft field");return result}function RecordEditorMediaDraft({value,field,disabled,label,registry,translate,onChange,onPreviewChange,showHint=true,catalog=false}){let input=React8.useRef(null),owned=React8.useRef(new Map),dragging=React8.useRef(),area=React8.useRef(null),dragDepth=React8.useRef(0),[hovered,setHovered]=React8.useState(false),[fileDrag,setFileDrag]=React8.useState(false),cards=field.media&&typeof field.media=="object"&&!Array.isArray(field.media)&&field.media.presentation==="cards",replacementInput=React8.useRef(null),replacing=React8.useRef(),[preview,setPreview]=React8.useState(),[error,setError]=React8.useState(),items=readMediaDraft(value),config=field.media,compact=config?.presentation==="compact",maxItems=Number(config?.maxItems),maxBytes=Number(config?.maxBytes),valid=!!(items&&Number.isInteger(maxItems)&&maxItems>0&&maxItems<=MEDIA_DRAFT_MAX_ITEMS&&Number.isInteger(maxBytes)&&maxBytes>0&&maxBytes<=MEDIA_DRAFT_MAX_BYTES),locked=disabled||!registry||!valid,release=handle=>{let url=owned.current.get(handle);url&&(URL.revokeObjectURL(url),registry?.discard(handle),owned.current.delete(handle));};React8.useEffect(()=>()=>{for(let handle of owned.current.keys())release(handle);},[registry]),React8.useEffect(()=>{let retained=new Set((items??[]).filter(item=>item.source==="local").map(item=>item.handleId));for(let handle of owned.current.keys())retained.has(handle)||release(handle);},[value]);let commit=next=>{setError(void 0),onChange({items:next});},add=files=>{if(locked||!registry||!items||!files.length)return;if(items.length+files.length>maxItems){setError("count");return}if(files.some(file=>!file.type.startsWith("image/"))){setError("type");return}if(files.some(file=>file.size<1||file.size>maxBytes)){setError("size");return}let added=[];try{for(let file of files){let metadata=registry.register(file,{maxBytes,maxTotalBytes:maxBytes*maxItems});try{owned.current.set(metadata.handleId,URL.createObjectURL(file));}catch(error2){throw registry.discard(metadata.handleId),error2}added.push({source:"local",handleId:metadata.handleId,fileName:metadata.fileName,size:metadata.size,mimeType:metadata.mimeType});}}catch{for(let item of added)release(String(item.handleId));setError("failed");return}commit([...items,...added]);};React8.useEffect(()=>{if(!hovered||locked)return;let paste=event=>{let target=event.target instanceof Element?event.target:null;if(event.defaultPrevented||target?.closest('[role="dialog"]')!==area.current?.closest('[role="dialog"]'))return;let files=Array.from(event.clipboardData?.files??[]).filter(file=>file.type.startsWith("image/"));files.length&&(event.preventDefault(),event.stopPropagation(),add(files));};return document.addEventListener("paste",paste,true),()=>document.removeEventListener("paste",paste,true)},[hovered,locked,value,registry,maxItems,maxBytes]);let move=(from,to)=>{if(locked||!items||from===to||from<0||to<0||from>=items.length||to>=items.length)return;let next=[...items],[item]=next.splice(from,1);next.splice(to,0,item),commit(next);},identity2=item=>String(item.source==="local"?item.handleId:item.id),previewSrc=item=>item.source==="local"?owned.current.get(identity2(item)):typeof item.previewUrl=="string"?item.previewUrl:void 0,coverSource=items?.[0]?previewSrc(items[0]):void 0;React8.useEffect(()=>{onPreviewChange?.(coverSource);},[coverSource,onPreviewChange]);let replace=files=>{let selected2=replacing.current;if(replacing.current=void 0,locked||!registry||!items||files.length!==1||!selected2)return;let index=items.findIndex(item=>item.source+":"+identity2(item)===selected2);if(index<0)return;let file=files[0];if(!file.type.startsWith("image/")){setError("type");return}if(!file.size||file.size>maxBytes){setError("size");return}let url;try{url=URL.createObjectURL(file);let old=items[index],handle=identity2(old),metadata=registry.register(file,{maxBytes,maxTotalBytes:maxBytes*maxItems,...old.source==="local"&&owned.current.has(handle)?{replaces:handle}:{}});owned.current.set(metadata.handleId,url);let next=[...items];next[index]={source:"local",handleId:metadata.handleId,fileName:metadata.fileName,size:metadata.size,mimeType:metadata.mimeType},commit(next);}catch{url&&URL.revokeObjectURL(url),setError("failed");}},message=key3=>translate("monkeys.design.capability.mediaDraft."+key3),previewIndex=(items??[]).findIndex(item=>item.source+":"+identity2(item)===preview),previewItem=items?.[previewIndex];return catalog&&compact?jsxRuntime.jsx(ImageUploadField,{ref:area,label,className:"[&>.monkeys-ui-label]:hidden",disabled:locked,accept:["image/*"],maxFileBytes:maxBytes,items:(items??[]).map(item=>({id:item.source+":"+identity2(item),name:typeof item.fileName=="string"?item.fileName:label,src:previewSrc(item),status:"ready"})),coverId:items?.[0]?items[0].source+":"+identity2(items[0]):void 0,onFilesSelected:add,onRejected:rejections=>setError(rejections.some(item=>item.reason==="size")?"size":"type"),onRemove:id9=>{items&&commit(items.filter(item=>item.source+":"+identity2(item)!==id9));},onSelectCover:id9=>{items&&move(items.findIndex(item=>item.source+":"+identity2(item)===id9),0);},description:showHint?translate("monkeys.design.capability.mediaDraft.hint",{count:maxItems,size:Math.floor(maxBytes/1024/1024)}):void 0,error:error||!valid?message(error??"failed"):void 0}):jsxRuntime.jsxs("div",{ref:area,className:"relative grid gap-3 min-w-0",tabIndex:locked?-1:0,"aria-label":label,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),onDragEnter:event=>{!locked&&event.dataTransfer.types.includes("Files")&&(event.preventDefault(),dragDepth.current++,setFileDrag(true));},onDragOver:event=>{!locked&&event.dataTransfer.types.includes("Files")&&event.preventDefault();},onDragLeave:event=>{event.dataTransfer.types.includes("Files")&&(dragDepth.current=Math.max(0,dragDepth.current-1),dragDepth.current||setFileDrag(false));},onDrop:event=>{locked||!event.dataTransfer.types.includes("Files")||(event.preventDefault(),dragDepth.current=0,setFileDrag(false),add(Array.from(event.dataTransfer.files)));},onPaste:event=>{if(locked||event.defaultPrevented)return;let files=Array.from(event.clipboardData.files).filter(file=>file.type.startsWith("image/"));files.length&&(event.preventDefault(),add(files));},children:[jsxRuntime.jsx("input",{ref:input,type:"file",multiple:true,accept:"image/*",hidden:true,disabled:locked,"aria-label":message("choose"),onChange:event=>{let files=Array.from(event.currentTarget.files??[]);event.currentTarget.value="",add(files);}}),jsxRuntime.jsx("input",{ref:replacementInput,type:"file",accept:"image/*",hidden:true,disabled:locked,"aria-label":message("replace"),onChange:event=>{let files=Array.from(event.currentTarget.files??[]);event.currentTarget.value="",replace(files);}}),jsxRuntime.jsxs("div",{className:catalog?"monkeys-ui-upload-items":"grid grid-cols-2 sm:grid-cols-3 gap-3",children:[catalog&&(!compact||(items?.length??0)<maxItems)?jsxRuntime.jsxs(Button2,{className:"monkeys-ui-upload-target",variant:"outline",disabled:locked||(items?.length??0)>=maxItems,"aria-label":message("choose"),onClick:()=>input.current?.click(),children:[jsxRuntime.jsx(lucideReact.Plus,{size:28,"aria-hidden":"true"}),jsxRuntime.jsx("span",{children:message("choose")})]}):null,(items??[]).map((item,index)=>{let id9=String(item.source==="local"?item.handleId:item.id),src=item.source==="local"?owned.current.get(id9):typeof item.previewUrl=="string"?item.previewUrl:void 0;return jsxRuntime.jsx("div",{className:compact?"relative h-[121px] w-[121px] overflow-hidden rounded-xl border border-border bg-card":catalog?"grid min-w-0 gap-2":cards?"relative flex min-w-0 flex-col overflow-hidden rounded-xl border border-border bg-card":"relative min-w-0 overflow-hidden rounded-3xl border bg-card",draggable:!locked,onDragStart:()=>{dragging.current=index;},onDragEnd:()=>{dragging.current=void 0;},onDragOver:event=>{!locked&&dragging.current!==void 0&&event.preventDefault();},onDrop:event=>{event.preventDefault(),dragging.current!==void 0&&move(dragging.current,index),dragging.current=void 0;},children:compact?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[src?jsxRuntime.jsx("img",{src,alt:typeof item.fileName=="string"?item.fileName:`${label} ${index+1}`,className:"h-full w-full object-contain"}):jsxRuntime.jsx("span",{role:"img","aria-label":message("unavailable")}),jsxRuntime.jsx(Button2,{shape:"icon",className:"monkeys-ui-upload-remove",size:"sm",disabled:locked,"aria-label":`${message("remove")} ${index+1}`,onClick:()=>{items&&commit(items.filter((_,position)=>position!==index));},children:"\xD7"})]}):catalog?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(UploadedImageItem,{item:{id:id9,name:typeof item.fileName=="string"?item.fileName:`${label} ${index+1}`,src,status:"ready"},disabled:locked,cover:index===0,onSelectCover:()=>move(index,0),onRemove:()=>{items&&commit(items.filter((_,position)=>position!==index));}}),jsxRuntime.jsxs("div",{className:"flex flex-wrap gap-1",children:[jsxRuntime.jsx(Button2,{size:"sm",disabled:!src,"aria-label":`${message("preview")} ${index+1}`,onClick:()=>setPreview(item.source+":"+id9),children:message("preview")}),jsxRuntime.jsx(Button2,{size:"sm",disabled:locked,"aria-label":`${message("replace")} ${index+1}`,onClick:()=>{replacing.current=item.source+":"+id9,replacementInput.current?.click();},children:message("replace")}),jsxRuntime.jsx("button",{type:"button",className:"sr-only focus:not-sr-only",disabled:locked||index===0,"aria-label":`${message("previous")} ${index+1}`,onClick:()=>move(index,index-1),children:"\u2190"}),jsxRuntime.jsx("button",{type:"button",className:"sr-only focus:not-sr-only",disabled:locked||index===(items?.length??0)-1,"aria-label":`${message("next")} ${index+1}`,onClick:()=>move(index,index+1),children:"\u2192"})]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[src?jsxRuntime.jsx("button",{type:"button",className:cards?"relative block aspect-[2/1] w-full bg-muted p-3":"block w-full p-3","aria-label":`${message("preview")} ${index+1}`,onClick:()=>setPreview(item.source+":"+id9),children:jsxRuntime.jsx("img",{src,alt:typeof item.fileName=="string"?item.fileName:`${label} ${index+1}`,className:cards?"absolute inset-0 h-full w-full object-contain p-3":"h-20 w-full object-contain"})}):jsxRuntime.jsx("span",{children:message("unavailable")}),jsxRuntime.jsxs("div",{className:cards?"mt-auto flex flex-wrap items-center":"flex flex-wrap items-center",children:[jsxRuntime.jsx("button",{type:"button",className:"sr-only focus:not-sr-only",disabled:locked||index===0,"aria-label":`${message("previous")} ${index+1}`,onClick:()=>move(index,index-1),children:"\u2190"}),jsxRuntime.jsx("button",{type:"button",className:"sr-only focus:not-sr-only",disabled:locked||index===(items?.length??0)-1,"aria-label":`${message("next")} ${index+1}`,onClick:()=>move(index,index+1),children:"\u2192"}),jsxRuntime.jsx("button",{type:"button",className:cards?"w-full px-3 py-3 text-left text-sm font-medium disabled:opacity-50":"w-full bg-muted px-3 py-3 text-left text-sm disabled:opacity-50","aria-label":`${message("replace")} ${index+1}`,disabled:locked,onClick:()=>{replacing.current=item.source+":"+id9,replacementInput.current?.click();},children:message("replace")}),jsxRuntime.jsx("button",{type:"button",className:"absolute right-2 top-2 grid size-6 place-items-center rounded-md bg-primary text-primary-foreground disabled:opacity-50","aria-label":`${message("remove")} ${index+1}`,disabled:locked,onClick:()=>{items&&commit(items.filter((_,position)=>position!==index));},children:"\xD7"})]})]})},item.source+":"+id9)}),!catalog&&(!compact||(items?.length??0)<maxItems)?jsxRuntime.jsxs("button",{type:"button",disabled:locked||(items?.length??0)>=maxItems,onClick:()=>input.current?.click(),"aria-label":message("choose"),className:cards?"relative grid min-w-0 content-center justify-items-center gap-2 overflow-hidden rounded-xl border border-dashed border-border bg-muted/20 text-center text-sm hover:border-primary/60 hover:bg-muted/40 disabled:opacity-50":"grid min-h-36 content-center justify-items-center gap-2 rounded-3xl border border-dashed p-3 text-center text-sm disabled:opacity-50",children:[cards?jsxRuntime.jsxs("span",{"aria-hidden":"true",className:"col-start-1 row-start-1 w-full",children:[jsxRuntime.jsx("span",{className:"block aspect-[2/1] w-full"}),jsxRuntime.jsx("span",{className:"block h-11"})]}):null,jsxRuntime.jsxs("span",{className:cards?"col-start-1 row-start-1 flex flex-col items-center justify-center gap-2 p-3":"contents",children:[jsxRuntime.jsx("span",{"aria-hidden":"true",className:"text-3xl",children:"\uFF0B"}),jsxRuntime.jsx("span",{children:message("choose")})]}),showHint?jsxRuntime.jsx("span",{className:"text-xs text-muted-foreground",children:translate("monkeys.design.capability.mediaDraft.hint",{count:maxItems,size:Math.floor(maxBytes/1024/1024)})}):null]}):null]}),catalog&&showHint?jsxRuntime.jsx("div",{className:"monkeys-ui-description",children:translate("monkeys.design.capability.mediaDraft.hint",{count:maxItems,size:Math.floor(maxBytes/1024/1024)})}):null,fileDrag&&!locked?jsxRuntime.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-1 z-10 rounded-xl border-2 border-primary bg-primary/10"}):null,error||!valid?jsxRuntime.jsx("span",{role:"alert",children:message(error??"failed")}):null,jsxRuntime.jsx(BaseDialog,{open:!!previewItem,onOpenChange:open=>{open||setPreview(void 0);},title:message("preview"),size:"viewport",children:previewItem?jsxRuntime.jsxs("div",{className:"grid gap-3 min-w-0",children:[jsxRuntime.jsx("img",{src:previewSrc(previewItem),alt:typeof previewItem.fileName=="string"?previewItem.fileName:label,className:"w-full max-h-[70dvh] object-contain"}),jsxRuntime.jsxs("div",{className:"flex items-center justify-between gap-3",children:[jsxRuntime.jsx("button",{type:"button",disabled:previewIndex<=0,onClick:()=>{let item=items[previewIndex-1];setPreview(item.source+":"+identity2(item));},children:message("previewPrevious")}),jsxRuntime.jsxs("span",{children:[previewIndex+1," / ",items?.length]}),jsxRuntime.jsx("button",{type:"button",disabled:previewIndex>=(items?.length??0)-1,onClick:()=>{let item=items[previewIndex+1];setPreview(item.source+":"+identity2(item));},children:message("previewNext")})]})]}):null})]})}var PanelSurfaceContext=React8.createContext("catalog");var chromaFlow={baseColor:tokens_default.seed.ui.color.blueGlow.$value.hex,intensity:.7,momentum:23,radius:6,upColor:tokens_default.seed.ui.color.violetGlow.$value.hex};function SurfaceEffect({variant}){let[enabled,setEnabled]=React8.useState(false),[shaders,setShaders]=React8.useState(null),[rendererState,setRendererState]=React8.useState("loading"),surface=React8.useRef(null);return React8.useEffect(()=>{let reducedMotion=window.matchMedia("(prefers-reduced-motion: reduce)"),forcedColors=window.matchMedia("(forced-colors: active)"),update=()=>setEnabled(!reducedMotion.matches&&!forcedColors.matches);return update(),reducedMotion.addEventListener("change",update),forcedColors.addEventListener("change",update),()=>{reducedMotion.removeEventListener("change",update),forcedColors.removeEventListener("change",update);}},[]),React8.useEffect(()=>{if(!enabled||shaders)return;let active=true;return import('shaders/react').then(module=>{active&&setShaders(module);}).catch(()=>{active&&setRendererState("unavailable");}),()=>{active=false;}},[enabled,shaders]),React8.useEffect(()=>{let element=surface.current,parent=element?.parentElement;if(!enabled||variant!=="chroma"||rendererState==="ready"||!element||!parent)return;let move=event=>{if(event.pointerType==="touch")return;let bounds=element.getBoundingClientRect();element.style.setProperty("--monkeys-ui-surface-x",`${event.clientX-bounds.left}px`),element.style.setProperty("--monkeys-ui-surface-y",`${event.clientY-bounds.top}px`),element.dataset.pointerActive="";},leave=()=>{delete element.dataset.pointerActive;};return parent.addEventListener("pointerenter",move),parent.addEventListener("pointermove",move),parent.addEventListener("pointerleave",leave),()=>{parent.removeEventListener("pointerenter",move),parent.removeEventListener("pointermove",move),parent.removeEventListener("pointerleave",leave),leave(),element.style.removeProperty("--monkeys-ui-surface-x"),element.style.removeProperty("--monkeys-ui-surface-y");}},[enabled,variant,rendererState]),jsxRuntime.jsxs("div",{ref:surface,className:variant==="banner"?"monkeys-ui-brand-banner-effect":"monkeys-ui-card-surface-effect","data-monkeys-ui-brand-effect":variant==="banner"?"":void 0,"data-monkeys-ui-card-effect":variant==="chroma"?"":void 0,"data-renderer-state":enabled?rendererState:"disabled","aria-hidden":"true",children:[enabled&&variant==="chroma"&&rendererState!=="ready"?jsxRuntime.jsx("div",{className:"monkeys-ui-shader-fallback","data-effect":"surface-chroma"}):null,enabled&&shaders?jsxRuntime.jsxs(shaders.Shader,{disableTelemetry:true,onReady:()=>setRendererState("ready"),onUnavailable:()=>setRendererState("unavailable"),style:{width:"100%",height:"100%"},children:[jsxRuntime.jsx(shaders.ChromaFlow,{...chromaFlow}),variant==="banner"?jsxRuntime.jsx(shaders.Aurora,{colorA:chromaFlow.baseColor,colorB:chromaFlow.upColor,colorSpace:"hsl",curtainCount:2,height:81,intensity:64,rayDensity:12,speed:10,waviness:39,transform:{rotation:180}}):null]}):null]})}var Panel=React8.forwardRef(function({title,actions,density="comfortable",classNames,className,children,...props},ref){let id9=React8.useId();return React8.useContext(PanelSurfaceContext)==="bento"?jsxRuntime.jsx(BentoPanel,{...props,className:cx("monkeys-ui-bento-panel",className),children:jsxRuntime.jsxs(ScrollSurface,{ref,"aria-labelledby":title?id9:props["aria-labelledby"],className:"monkeys-ui-bento-scroll",children:[title||actions?jsxRuntime.jsxs("div",{className:cx("monkeys-ui-panel-header",classNames?.header),children:[title?jsxRuntime.jsx("h2",{id:id9,children:title}):null,actions]}):null,jsxRuntime.jsx("div",{className:cx("monkeys-ui-panel-body",classNames?.body),children})]})}):jsxRuntime.jsxs(ScrollSurface,{...props,ref,"data-density":density,"aria-labelledby":title?id9:props["aria-labelledby"],className:cx("monkeys-ui-panel",className),children:[title||actions?jsxRuntime.jsxs("div",{className:cx("monkeys-ui-panel-header",classNames?.header),children:[title?jsxRuntime.jsx("h2",{id:id9,children:title}):null,actions]}):null,jsxRuntime.jsx("div",{className:cx("monkeys-ui-panel-body",classNames?.body),children})]})});function SplitLayout({sidebar,side="start",sidebarWidth="252px",children,className,style,...props}){return jsxRuntime.jsxs("div",{...props,"data-side":side,className:cx("monkeys-ui-split",className),style:{"--monkeys-ui-sidebar-width":sidebarWidth,...style},children:[jsxRuntime.jsx("div",{className:"monkeys-ui-split-sidebar",children:sidebar}),jsxRuntime.jsx("div",{className:"monkeys-ui-split-main",children})]})}var Card=React8.forwardRef(function({title,variant="card",chrome="card",selected:selected2,onSelectedChange,size:size2,headingLevel,image,imageAlt="",imagePosition,imageStyle,media,mediaOverlay,emptyMedia,href,onOpen,header,breadcrumbSurface="default",meta,description,content,children,stats=[],actions,navigation,navigationLabel,footer,className,classNames,...props},ref){let[failedSource,setFailedSource]=React8.useState(),id9=React8.useId(),detail=variant==="detail",hasDescription=description!=null&&description!==false&&description!=="",hasEntry=variant!=="preview"&&!!(onSelectedChange||href||onOpen),descriptionId=id9+"-description",describedBy=[props["aria-describedby"],hasDescription?descriptionId:void 0].filter(Boolean).join(" ")||void 0,Heading=`h${headingLevel??(detail?1:3)}`,tooltipTitle=detail&&typeof title=="string"&&title.length>0,headingContent=jsxRuntime.jsx(Heading,{id:id9,className:cx("monkeys-ui-record-heading",classNames?.heading),tabIndex:tooltipTitle?0:void 0,title:!detail&&typeof title=="string"?title:void 0,children:title}),heading=tooltipTitle?jsxRuntime.jsx(Tooltip2,{content:title,children:headingContent}):headingContent,mediaContent=media??(image&&failedSource!==image?jsxRuntime.jsx("img",{className:cx(detail?"monkeys-ui-sidebar-image":"monkeys-ui-record-card-image",classNames?.image),src:image,alt:imageAlt,style:{objectPosition:imagePosition,...imageStyle},onError:()=>setFailedSource(image),loading:"lazy"}):emptyMedia??(detail?null:jsxRuntime.jsx("div",{className:"monkeys-ui-media-placeholder","aria-label":"\u6682\u65E0\u56FE\u7247",children:jsxRuntime.jsx(lucideReact.ImageOff,{size:32,"aria-hidden":"true"})}))),statistics=stats.length?jsxRuntime.jsx(StatGroup,{items:stats}):null,body=content??children;return detail?jsxRuntime.jsxs(ScrollSurface,{as:"aside",...props,ref,"aria-labelledby":props["aria-label"]?void 0:id9,"data-variant":variant,"data-chrome":chrome==="plain"?chrome:void 0,className:cx("monkeys-ui-card","monkeys-ui-record-detail",className),children:[jsxRuntime.jsxs("div",{className:cx("monkeys-ui-sidebar-media",classNames?.media),children:[mediaContent,mediaOverlay]}),jsxRuntime.jsxs("div",{className:"monkeys-ui-sidebar-header",children:[jsxRuntime.jsx("div",{className:"monkeys-ui-breadcrumbs","data-surface":breadcrumbSurface==="transparent"?"transparent":void 0,children:header}),actions?jsxRuntime.jsx("div",{className:cx("monkeys-ui-sidebar-header-actions",classNames?.actions),children:actions}):null]}),jsxRuntime.jsxs("div",{className:cx("monkeys-ui-sidebar-details",classNames?.content),children:[jsxRuntime.jsx(SurfaceEffect,{variant:"chroma"}),heading,meta?jsxRuntime.jsx("div",{className:"monkeys-ui-sidebar-meta",children:meta}):null,description?jsxRuntime.jsx("div",{className:"monkeys-ui-description",children:description}):null,body,statistics,navigation?jsxRuntime.jsx("nav",{"aria-label":navigationLabel??"\u8BB0\u5F55\u5BFC\u822A",className:"monkeys-ui-sidebar-navigation",children:navigation}):null,footer?jsxRuntime.jsx("div",{className:"monkeys-ui-sidebar-actions",children:footer}):null]})]}):jsxRuntime.jsxs("article",{...props,ref,"aria-labelledby":props["aria-label"]?void 0:id9,"aria-describedby":hasEntry?props["aria-describedby"]:describedBy,tabIndex:props.tabIndex??(hasDescription&&!hasEntry?0:void 0),"data-variant":variant,"data-chrome":chrome==="plain"?chrome:void 0,"data-selected":selected2||void 0,"data-size":size2,"data-preview":variant==="preview"||void 0,className:cx("monkeys-ui-card","monkeys-ui-record-card",className),children:[variant==="content"&&!media&&!image?null:media!==void 0?jsxRuntime.jsx("div",{className:cx("monkeys-ui-record-media",classNames?.media),children:mediaContent}):mediaContent,mediaOverlay?jsxRuntime.jsx("div",{className:"monkeys-ui-media-overlay",children:mediaOverlay}):null,header,hasEntry&&(onSelectedChange?jsxRuntime.jsx("button",{type:"button","aria-pressed":selected2??false,onClick:()=>onSelectedChange(!selected2),"aria-labelledby":id9,"aria-describedby":describedBy,className:"monkeys-ui-card-entry"}):href?jsxRuntime.jsx("a",{href,"aria-labelledby":id9,"aria-describedby":describedBy,className:"monkeys-ui-card-entry"}):jsxRuntime.jsx("button",{type:"button",onClick:onOpen,"aria-labelledby":id9,"aria-describedby":describedBy,className:"monkeys-ui-card-entry"})),selected2?jsxRuntime.jsx("span",{className:"monkeys-ui-card-selection-mark","aria-hidden":"true",children:jsxRuntime.jsx(lucideReact.Check,{size:14})}):null,jsxRuntime.jsxs("div",{className:cx("monkeys-ui-card-info",classNames?.content),children:[heading,meta,body,statistics,hasDescription?jsxRuntime.jsx("div",{className:"monkeys-ui-card-description",children:jsxRuntime.jsx("div",{className:"monkeys-ui-card-description-clip",children:jsxRuntime.jsx("div",{id:descriptionId,className:"monkeys-ui-description",children:description})})}):null]}),actions?jsxRuntime.jsx("div",{className:cx("monkeys-ui-card-actions",classNames?.actions),children:actions}):null,footer]})});function StatGroup({items,className,...props}){return jsxRuntime.jsx("dl",{...props,className:cx("monkeys-ui-stats",className),children:items.map(item=>jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx("dt",{children:item.label}),jsxRuntime.jsx("dd",{children:item.value})]},item.label))})}React8.forwardRef(function({direction="vertical",gap=16,wrap,className,style,...props},ref){return jsxRuntime.jsx("div",{...props,ref,className:cx("monkeys-ui-stack",className),"data-direction":direction,style:{flexDirection:direction==="vertical"?"column":"row",gap,flexWrap:wrap?"wrap":void 0,...style}})});React8.forwardRef(function({className,...props},ref){return jsxRuntime.jsx("div",{...props,ref,role:"listitem",className:cx("monkeys-ui-card-grid-item",className)})});var FormPanel=React8.forwardRef(function({title,description,actions,children,className,...props},ref){return jsxRuntime.jsx(Panel,{className:"monkeys-ui-form-panel",children:jsxRuntime.jsxs("form",{...props,ref,className,children:[jsxRuntime.jsxs("div",{className:"monkeys-ui-form-header",children:[jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(SectionTitle,{as:"h1",children:title}),description?jsxRuntime.jsx("p",{children:description}):null]}),actions?jsxRuntime.jsx("div",{className:"monkeys-ui-form-actions",children:actions}):null]}),jsxRuntime.jsx("div",{className:"monkeys-ui-form-body",children})]})})});function FormGrid({variant="standard",className,children,...props}){return jsxRuntime.jsx("div",{...props,className:cx("monkeys-ui-form-grid",className),"data-variant":variant,children:jsxRuntime.jsx("div",{className:"monkeys-ui-form-grid-content",children})})}function PreviewPanel({children,state="ready",pendingLabel,emptyMessage,errorMessage,className,...props}){return jsxRuntime.jsx(Panel,{...props,className:cx("monkeys-ui-preview-panel",className),children:jsxRuntime.jsxs("div",{className:"monkeys-ui-preview-panel-card",children:[children,state==="pending"&&pendingLabel?jsxRuntime.jsx(Badge2,{children:pendingLabel}):null,state==="empty"&&emptyMessage?jsxRuntime.jsx("span",{className:"monkeys-ui-description",children:emptyMessage}):null,state==="error"&&errorMessage?jsxRuntime.jsx(Notice,{tone:"danger",children:errorMessage}):null]})})}var RECORD_EDITOR_PAGE_PREVIEW_SCHEMA={type:"object",additionalProperties:false,required:["titleFieldId","panelTitleKey","emptyTitleKey","emptyMessageKey"],properties:Object.fromEntries(["titleFieldId","descriptionFieldId","mediaFieldId","amountFieldId","amountPrefix","panelTitleKey","emptyTitleKey","emptyMessageKey"].map(key3=>[key3,{type:"string",minLength:1,maxLength:256}]))};function RecordEditorWorkspace({title,description,actions,children,preview,fields,mediaSource,translate,onSubmit}){let helpInTooltip=React8.useContext(FormHelpPresentationContext),value=key3=>fields.find(field=>field.id===preview?.[key3]&&field.hidden!==true)?.value,name=value("titleFieldId"),summary=value("descriptionFieldId"),amount=value("amountFieldId"),form=jsxRuntime.jsx(FormPanel,{title,description,actions,"aria-label":typeof title=="string"?title:void 0,"data-record-editor-page":true,"data-record-editor-workspace":true,onSubmit:event=>{event.preventDefault(),onSubmit();},children});return preview?jsxRuntime.jsx(BentoDepthProvider,{depth:0,children:jsxRuntime.jsx(PanelSurfaceContext.Provider,{value:"bento",children:jsxRuntime.jsx(SplitLayout,{"data-record-editor-workspace":true,side:"end",sidebarWidth:"323px",sidebar:jsxRuntime.jsx(PreviewPanel,{title:helpInTooltip?jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[translate(String(preview.panelTitleKey)),jsxRuntime.jsx(BaseFormHelp,{children:translate(String(preview.emptyMessageKey))})]}):translate(String(preview.panelTitleKey)),state:mediaSource?"ready":"empty",emptyMessage:helpInTooltip?void 0:translate(String(preview.emptyMessageKey)),children:jsxRuntime.jsx(Card,{variant:"preview",title:typeof name=="string"&&name.trim()?name:translate(String(preview.emptyTitleKey)),image:mediaSource,imageAlt:typeof name=="string"?name:"",imageStyle:{objectFit:"contain"},description:typeof summary=="string"?summary:void 0,content:typeof amount=="number"&&Number.isFinite(amount)?`${preview.amountPrefix??""}${amount}`:void 0})}),children:form})})}):jsxRuntime.jsx(BentoDepthProvider,{depth:0,children:jsxRuntime.jsx(PanelSurfaceContext.Provider,{value:"bento",children:form})})}var TEXT_TOKEN_PRESENTATION_SCHEMA={type:"array",maxItems:64,items:{type:"object",additionalProperties:false,required:["fieldId","removeLabelKey","limitLabelKey"],properties:{fieldId:{type:"string",minLength:1,maxLength:256},separator:{enum:["line","line-or-comma"]},maxItems:{type:"integer",minimum:1,maximum:1e3},maxItemLength:{type:"integer",minimum:1,maximum:1024},maxLength:{type:"integer",minimum:1,maximum:1e5},removeLabelKey:{type:"string",minLength:1,maxLength:256},limitLabelKey:{type:"string",minLength:1,maxLength:256}}}},validateTokens=runtime.compileTargetRenderModelValidator({type:"object",additionalProperties:false,required:["textTokens"],properties:{textTokens:TEXT_TOKEN_PRESENTATION_SCHEMA}});function withTextTokenFields(fields,input){if(input===void 0)return fields;if(!Array.isArray(input)||input.length>64)throw new TypeError("Invalid text token presentation");let used=new Set,options2=new Map;for(let item of validateTokens({textTokens:input}).textTokens){if(!item||typeof item!="object"||Array.isArray(item))throw new TypeError("Invalid text token presentation");let option=item,fieldId=option.fieldId;if(typeof fieldId!="string"||used.has(fieldId)||fields.filter(field=>field.id===fieldId).length!==1||fields.find(field=>field.id===fieldId)?.kind!=="text")throw new TypeError("Text tokens require one unique text field");used.add(fieldId),options2.set(fieldId,option);}return fields.map(field=>options2.has(String(field.id))?{...field,tokenOptions:options2.get(String(field.id))}:field)}function RecordEditorTextTokens({field,value,label,domId,disabled,translate,onChange,onValidityChange,fieldId,catalog=false}){let options2=field.tokenOptions,parse=text10=>[...new Set(text10.split(options2.separator==="line"||/[\r\n]/.test(text10)?/\r\n?|\n/:/[,,]/).map(part=>part.trim()).filter(Boolean))],source=typeof value=="string"?value:"",[state,setState]=React8.useState(()=>({source,tokens:parse(source),draft:""})),[error,setError]=React8.useState(false),composing=React8.useRef(false);React8.useEffect(()=>{onValidityChange(fieldId,!error);},[error,fieldId,onValidityChange]),React8.useEffect(()=>()=>onValidityChange(fieldId,true),[fieldId,onValidityChange]),state.source!==source&&(setState({source,tokens:parse(source),draft:""}),error&&setError(false));let change=(tokens,draft)=>{if(disabled)return;let all=parse([...tokens,draft].join(`
|
|
69
69
|
`)),next=all.join(`
|
|
70
70
|
`);if(all.length>Number(options2.maxItems??100)||all.some(item=>item.length>Number(options2.maxItemLength??256)||/[\u0000-\u0008\u000b\u000c\u000e-\u001f\u007f]/.test(item))||next.length>Number(options2.maxLength??1e4)){setError(true);return}setError(false),setState({source:next,tokens,draft}),onChange(next);},commit=()=>{state.draft&&change(parse([...state.tokens,state.draft].join(`
|
|
71
71
|
`)),"");},TokenInput=catalog?Input2:BaseInput;return jsxRuntime.jsxs("div",{className:"space-y-2","data-editor-text-tokens":String(field.id),children:[jsxRuntime.jsxs("div",{className:catalog?"flex min-w-0 flex-wrap items-center gap-2":"border-input bg-background flex min-h-10 min-w-0 flex-wrap items-center gap-2 rounded-md border p-2 focus-within:ring-2 focus-within:ring-ring",children:[state.tokens.map(token=>jsxRuntime.jsxs("span",{className:"border-border bg-muted flex max-w-full items-center gap-1 rounded-md border px-2 py-1 text-sm",children:[jsxRuntime.jsx("span",{className:"min-w-0 break-words [overflow-wrap:anywhere]",children:token}),jsxRuntime.jsx("button",{type:"button",disabled,"aria-label":`${translate(String(options2.removeLabelKey))} ${token}`,className:"text-muted-foreground shrink-0 rounded-sm px-1 hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring",onMouseDown:event=>event.preventDefault(),onClick:()=>change(state.tokens.filter(item=>item!==token),state.draft),children:"\xD7"})]},token)),jsxRuntime.jsx(TokenInput,{id:domId,"aria-label":label,value:state.draft,disabled,placeholder:typeof field.placeholder=="string"?field.placeholder:typeof field.placeholderKey=="string"?translate(field.placeholderKey):void 0,className:catalog?"min-w-0 basis-full":"h-8 min-w-0 flex-1 basis-40 rounded-none border-0 bg-transparent px-1 shadow-none focus-visible:ring-0",onChange:event=>change(state.tokens,event.currentTarget.value),onBlur:commit,onCompositionStart:()=>{composing.current=true;},onCompositionEnd:()=>{composing.current=false;},onKeyDown:event=>{event.key==="Enter"&&(event.preventDefault(),!composing.current&&!event.nativeEvent.isComposing&&event.keyCode!==229&&commit());},onPaste:event=>{let text10=event.clipboardData.getData("text");if(disabled||composing.current||!/[\r\n]/.test(text10))return;event.preventDefault();let input=event.currentTarget,draft=state.draft.slice(0,input.selectionStart??state.draft.length)+text10+state.draft.slice(input.selectionEnd??state.draft.length);change(parse([...state.tokens,draft].join(`
|