@tutti-os/agent-gui 0.0.14 → 0.0.16
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/AgentMentionSearchController-DqssJ2-b.d.ts +218 -0
- package/dist/agent-conversation/index.d.ts +4 -2
- package/dist/agent-conversation/index.js +5 -4
- package/dist/agent-conversation/index.js.map +1 -1
- package/dist/agent-message-center/index.d.ts +3 -2
- package/dist/agent-message-center/index.js +547 -287
- package/dist/agent-message-center/index.js.map +1 -1
- package/dist/app/renderer/agentactivity.css +177 -17
- package/dist/{chunk-GZHQPPK2.js → chunk-267VY3EJ.js} +130 -43
- package/dist/chunk-267VY3EJ.js.map +1 -0
- package/dist/{chunk-KEKPOVQD.js → chunk-CABHBFYH.js} +2 -2
- package/dist/{chunk-HSXDSFKB.js → chunk-EKATXC3W.js} +2 -2
- package/dist/{chunk-RLPVFX7V.js → chunk-FJYH2ZPX.js} +196 -322
- package/dist/chunk-FJYH2ZPX.js.map +1 -0
- package/dist/{chunk-ASAZDEQE.js → chunk-GWR6WGZY.js} +72 -22
- package/dist/chunk-GWR6WGZY.js.map +1 -0
- package/dist/{chunk-YXSO4ITT.js → chunk-HIREVEZM.js} +1 -1
- package/dist/chunk-HIREVEZM.js.map +1 -0
- package/dist/{chunk-VDNMTW2E.js → chunk-IXIGWLQY.js} +1 -1
- package/dist/chunk-IXIGWLQY.js.map +1 -0
- package/dist/{chunk-ZO3SZCIX.js → chunk-JNGYJ7GM.js} +6 -3
- package/dist/chunk-JNGYJ7GM.js.map +1 -0
- package/dist/{chunk-MU2LODEV.js → chunk-KWPL3JYS.js} +131 -13
- package/dist/chunk-KWPL3JYS.js.map +1 -0
- package/dist/{chunk-WME2V26J.js → chunk-LW2S255I.js} +21 -36
- package/dist/chunk-LW2S255I.js.map +1 -0
- package/dist/{chunk-3YZX5EUC.js → chunk-LWRYYGPZ.js} +610 -480
- package/dist/chunk-LWRYYGPZ.js.map +1 -0
- package/dist/{chunk-GEXHKJK5.js → chunk-MUZMBEFO.js} +35 -17
- package/dist/chunk-MUZMBEFO.js.map +1 -0
- package/dist/chunk-O5TUTXHT.js +196 -0
- package/dist/chunk-O5TUTXHT.js.map +1 -0
- package/dist/{chunk-FSTZDNRM.js → chunk-SIDWRR5I.js} +281 -183
- package/dist/chunk-SIDWRR5I.js.map +1 -0
- package/dist/context-mention-palette/index.d.ts +11 -170
- package/dist/context-mention-palette/index.js +7 -6
- package/dist/context-mention-provider.d.ts +6 -1
- package/dist/context-mention-provider.js +1 -1
- package/dist/i18n/index.d.ts +277 -179
- package/dist/i18n/index.js +1 -1
- package/dist/index.d.ts +56 -3
- package/dist/index.js +2706 -1700
- package/dist/index.js.map +1 -1
- package/dist/workbench/contribution.d.ts +7 -1
- package/dist/workbench/contribution.js +6 -4
- package/dist/workbench/index.d.ts +5 -2
- package/dist/workbench/index.js +6 -4
- package/dist/workbench/launch.d.ts +2 -0
- package/dist/workbench/launch.js +2 -2
- package/dist/workbench/state.d.ts +3 -2
- package/dist/workbench/state.js +1 -1
- package/dist/workbench/types.d.ts +3 -0
- package/dist/workbench/types.js +1 -1
- package/dist/workspace-agent-generated-files.js +2 -2
- package/dist/{workspaceLinkActions-BlLN8Pvz.d.ts → workspaceLinkActions-Mjktl_Be.d.ts} +3 -0
- package/package.json +15 -13
- package/dist/chunk-3YZX5EUC.js.map +0 -1
- package/dist/chunk-ASAZDEQE.js.map +0 -1
- package/dist/chunk-FSTZDNRM.js.map +0 -1
- package/dist/chunk-GEXHKJK5.js.map +0 -1
- package/dist/chunk-GZHQPPK2.js.map +0 -1
- package/dist/chunk-MU2LODEV.js.map +0 -1
- package/dist/chunk-RLPVFX7V.js.map +0 -1
- package/dist/chunk-VDNMTW2E.js.map +0 -1
- package/dist/chunk-WME2V26J.js.map +0 -1
- package/dist/chunk-YXSO4ITT.js.map +0 -1
- package/dist/chunk-ZO3SZCIX.js.map +0 -1
- /package/dist/{chunk-KEKPOVQD.js.map → chunk-CABHBFYH.js.map} +0 -0
- /package/dist/{chunk-HSXDSFKB.js.map → chunk-EKATXC3W.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../workbench/state.ts"],"sourcesContent":["import type {\n WorkbenchHostExternalStateLookupInput,\n WorkbenchHostExternalStateSource\n} from \"@tutti-os/workbench-surface\";\nimport {\n agentGuiWorkbenchProviders,\n normalizeAgentGuiWorkbenchProvider\n} from \"./providerCatalog.ts\";\nimport type {\n AgentGuiWorkbenchComposerOverrides,\n AgentGuiWorkbenchComposerOverridesByProvider,\n AgentGuiWorkbenchNodeState,\n AgentGuiWorkbenchProvider,\n AgentGuiWorkbenchState,\n AgentGuiWorkbenchWorkspaceState\n} from \"./types.ts\";\n\nexport function createDefaultAgentGuiWorkbenchNodeState(\n provider: AgentGuiWorkbenchProvider = \"codex\"\n): AgentGuiWorkbenchNodeState {\n return {\n composerOverrides: null,\n composerOverridesByProvider: null,\n conversationCount: null,\n conversationRailCollapsed: false,\n conversationRailWidthPx: null,\n lastActiveAgentSessionId: null,\n lastActiveConversationTitle: null,\n provider\n };\n}\n\nexport function normalizeAgentGuiWorkbenchState(\n state: unknown\n): AgentGuiWorkbenchState {\n if (!isRecord(state)) {\n return createDefaultAgentGuiWorkbenchState();\n }\n return {\n composerOverrides: normalizeAgentGuiWorkbenchComposerOverrides(\n state.composerOverrides\n ),\n composerOverridesByProvider:\n normalizeAgentGuiWorkbenchComposerOverridesByProvider(\n state.composerOverridesByProvider\n ),\n conversationRailCollapsed: state.conversationRailCollapsed === true,\n conversationRailWidthPx: normalizeOptionalPositiveNumber(\n state.conversationRailWidthPx\n ),\n lastActiveAgentSessionId:\n typeof state.lastActiveAgentSessionId === \"string\"\n ? state.lastActiveAgentSessionId\n : null,\n lastActiveConversationTitle:\n typeof state.lastActiveConversationTitle === \"string\"\n ? state.lastActiveConversationTitle\n : null\n };\n}\n\nexport function projectAgentGuiWorkbenchState(\n state: AgentGuiWorkbenchNodeState\n): AgentGuiWorkbenchState {\n return {\n composerOverrides: normalizeAgentGuiWorkbenchComposerOverrides(\n state.composerOverrides\n ),\n composerOverridesByProvider:\n normalizeAgentGuiWorkbenchComposerOverridesByProvider(\n state.composerOverridesByProvider\n ),\n conversationRailCollapsed: state.conversationRailCollapsed === true,\n conversationRailWidthPx: normalizeOptionalPositiveNumber(\n state.conversationRailWidthPx\n ),\n lastActiveAgentSessionId: state.lastActiveAgentSessionId ?? null,\n lastActiveConversationTitle: state.lastActiveConversationTitle ?? null\n };\n}\n\nexport function areAgentGuiWorkbenchStatesEqual(\n left: AgentGuiWorkbenchState,\n right: AgentGuiWorkbenchState\n): boolean {\n return (\n composerOverridesEqual(left.composerOverrides, right.composerOverrides) &&\n composerOverridesByProviderEqual(\n left.composerOverridesByProvider,\n right.composerOverridesByProvider\n ) &&\n left.conversationRailCollapsed === right.conversationRailCollapsed &&\n left.conversationRailWidthPx === right.conversationRailWidthPx &&\n left.lastActiveAgentSessionId === right.lastActiveAgentSessionId &&\n left.lastActiveConversationTitle === right.lastActiveConversationTitle\n );\n}\n\nexport function normalizeAgentGuiWorkbenchNodeState(\n state: Partial<AgentGuiWorkbenchNodeState> | null | undefined,\n fallbackProvider: AgentGuiWorkbenchProvider = \"codex\"\n): AgentGuiWorkbenchNodeState {\n const provider = normalizeAgentGuiWorkbenchProvider(\n state?.provider,\n fallbackProvider\n );\n return {\n ...createDefaultAgentGuiWorkbenchNodeState(provider),\n composerOverrides: normalizeAgentGuiWorkbenchComposerOverrides(\n state?.composerOverrides\n ),\n composerOverridesByProvider:\n normalizeAgentGuiWorkbenchComposerOverridesByProvider(\n state?.composerOverridesByProvider\n ),\n conversationCount: normalizeOptionalNonNegativeNumber(\n state?.conversationCount\n ),\n conversationRailCollapsed: state?.conversationRailCollapsed === true,\n conversationRailWidthPx: normalizeOptionalPositiveNumber(\n state?.conversationRailWidthPx\n ),\n lastActiveAgentSessionId:\n typeof state?.lastActiveAgentSessionId === \"string\"\n ? state.lastActiveAgentSessionId\n : null,\n lastActiveConversationTitle:\n typeof state?.lastActiveConversationTitle === \"string\"\n ? state.lastActiveConversationTitle\n : null,\n provider\n };\n}\n\nexport function areAgentGuiWorkbenchNodeStatesEqual(\n left: AgentGuiWorkbenchNodeState,\n right: AgentGuiWorkbenchNodeState\n): boolean {\n return (\n composerOverridesEqual(left.composerOverrides, right.composerOverrides) &&\n composerOverridesByProviderEqual(\n left.composerOverridesByProvider,\n right.composerOverridesByProvider\n ) &&\n left.conversationCount === right.conversationCount &&\n left.conversationRailCollapsed === right.conversationRailCollapsed &&\n left.conversationRailWidthPx === right.conversationRailWidthPx &&\n left.lastActiveAgentSessionId === right.lastActiveAgentSessionId &&\n left.lastActiveConversationTitle === right.lastActiveConversationTitle &&\n left.provider === right.provider\n );\n}\n\nexport function agentGuiWorkbenchProviderFromInstanceId(\n instanceId: string | null | undefined\n): AgentGuiWorkbenchProvider {\n const normalized = instanceId?.trim();\n if (!normalized || normalized === \"agent-gui\") {\n return \"codex\";\n }\n const [, provider] = normalized.split(\":\", 3);\n return normalizeAgentGuiWorkbenchProvider(provider);\n}\n\nexport function createAgentGuiWorkbenchNodeStateSource(input: {\n typeId?: string;\n workspaceId: string;\n}): {\n externalStateSource: WorkbenchHostExternalStateSource<\n AgentGuiWorkbenchState | null,\n AgentGuiWorkbenchWorkspaceState\n >;\n readNodeState: (\n request: Pick<\n WorkbenchHostExternalStateLookupInput,\n \"instanceId\" | \"typeId\"\n >\n ) => AgentGuiWorkbenchState | null;\n writeNodeState: (\n request: Pick<\n WorkbenchHostExternalStateLookupInput,\n \"instanceId\" | \"typeId\"\n > & { state: AgentGuiWorkbenchState }\n ) => void;\n} {\n const typeId = input.typeId ?? \"agent-gui\";\n const nodeStateByInstanceId = new Map<string, AgentGuiWorkbenchState>();\n const listeners = new Set<() => void>();\n\n const notify = () => {\n for (const listener of listeners) {\n listener();\n }\n };\n\n return {\n externalStateSource: {\n getNodeState(request) {\n if (request.typeId !== typeId) {\n return null;\n }\n const state = nodeStateByInstanceId.get(request.instanceId);\n return state ? { ...state } : null;\n },\n getSnapshotNodeState(request) {\n if (request.typeId !== typeId) {\n return null;\n }\n const state = nodeStateByInstanceId.get(request.instanceId);\n return state ? { ...state } : null;\n },\n getWorkspaceState() {\n return {\n workspaceId: input.workspaceId\n };\n },\n subscribe(listener) {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n };\n }\n },\n readNodeState(request) {\n if (request.typeId !== typeId) {\n return null;\n }\n const state = nodeStateByInstanceId.get(request.instanceId);\n return state ? { ...state } : null;\n },\n writeNodeState(request) {\n if (request.typeId !== typeId) {\n return;\n }\n nodeStateByInstanceId.set(request.instanceId, {\n ...normalizeAgentGuiWorkbenchState(request.state)\n });\n notify();\n }\n };\n}\n\nfunction createDefaultAgentGuiWorkbenchState(): AgentGuiWorkbenchState {\n return {\n composerOverrides: null,\n composerOverridesByProvider: null,\n conversationRailCollapsed: false,\n conversationRailWidthPx: null,\n lastActiveAgentSessionId: null,\n lastActiveConversationTitle: null\n };\n}\n\nfunction normalizeAgentGuiWorkbenchComposerOverrides(\n value: unknown\n): AgentGuiWorkbenchComposerOverrides | null {\n if (!isRecord(value)) {\n return null;\n }\n const composerOverrides: AgentGuiWorkbenchComposerOverrides = {};\n if (typeof value.model === \"string\" && value.model.trim()) {\n composerOverrides.model = value.model.trim();\n }\n if (\n typeof value.reasoningEffort === \"string\" &&\n value.reasoningEffort.trim()\n ) {\n composerOverrides.reasoningEffort = value.reasoningEffort.trim();\n }\n if (\n typeof value.permissionModeId === \"string\" &&\n value.permissionModeId.trim()\n ) {\n composerOverrides.permissionModeId = value.permissionModeId.trim();\n }\n if (typeof value.planMode === \"boolean\") {\n composerOverrides.planMode = value.planMode;\n }\n return Object.keys(composerOverrides).length > 0 ? composerOverrides : null;\n}\n\nfunction normalizeAgentGuiWorkbenchComposerOverridesByProvider(\n value: unknown\n): AgentGuiWorkbenchComposerOverridesByProvider | null {\n if (!isRecord(value)) {\n return null;\n }\n const result: AgentGuiWorkbenchComposerOverridesByProvider = {};\n for (const provider of agentGuiWorkbenchProviders) {\n const overrides = normalizeAgentGuiWorkbenchComposerOverrides(\n value[provider]\n );\n if (overrides) {\n result[provider] = overrides;\n }\n }\n return Object.keys(result).length > 0 ? result : null;\n}\n\nfunction normalizeOptionalPositiveNumber(value: unknown): number | null {\n return typeof value === \"number\" && Number.isFinite(value) && value > 0\n ? Math.round(value)\n : null;\n}\n\nfunction normalizeOptionalNonNegativeNumber(value: unknown): number | null {\n return typeof value === \"number\" && Number.isFinite(value) && value >= 0\n ? Math.round(value)\n : null;\n}\n\nfunction composerOverridesEqual(\n left: AgentGuiWorkbenchComposerOverrides | null | undefined,\n right: AgentGuiWorkbenchComposerOverrides | null | undefined\n): boolean {\n return (\n (left?.model ?? null) === (right?.model ?? null) &&\n (left?.permissionModeId ?? null) === (right?.permissionModeId ?? null) &&\n (left?.planMode ?? null) === (right?.planMode ?? null) &&\n (left?.reasoningEffort ?? null) === (right?.reasoningEffort ?? null)\n );\n}\n\nfunction composerOverridesByProviderEqual(\n left: AgentGuiWorkbenchComposerOverridesByProvider | null | undefined,\n right: AgentGuiWorkbenchComposerOverridesByProvider | null | undefined\n): boolean {\n for (const provider of agentGuiWorkbenchProviders) {\n if (!composerOverridesEqual(left?.[provider], right?.[provider])) {\n return false;\n }\n }\n return true;\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null;\n}\n"],"mappings":";;;;;;AAiBO,SAAS,wCACd,WAAsC,SACV;AAC5B,SAAO;AAAA,IACL,mBAAmB;AAAA,IACnB,6BAA6B;AAAA,IAC7B,mBAAmB;AAAA,IACnB,2BAA2B;AAAA,IAC3B,yBAAyB;AAAA,IACzB,0BAA0B;AAAA,IAC1B,6BAA6B;AAAA,IAC7B;AAAA,EACF;AACF;AAEO,SAAS,gCACd,OACwB;AACxB,MAAI,CAAC,SAAS,KAAK,GAAG;AACpB,WAAO,oCAAoC;AAAA,EAC7C;AACA,SAAO;AAAA,IACL,mBAAmB;AAAA,MACjB,MAAM;AAAA,IACR;AAAA,IACA,6BACE;AAAA,MACE,MAAM;AAAA,IACR;AAAA,IACF,2BAA2B,MAAM,8BAA8B;AAAA,IAC/D,yBAAyB;AAAA,MACvB,MAAM;AAAA,IACR;AAAA,IACA,0BACE,OAAO,MAAM,6BAA6B,WACtC,MAAM,2BACN;AAAA,IACN,6BACE,OAAO,MAAM,gCAAgC,WACzC,MAAM,8BACN;AAAA,EACR;AACF;AAEO,SAAS,8BACd,OACwB;AACxB,SAAO;AAAA,IACL,mBAAmB;AAAA,MACjB,MAAM;AAAA,IACR;AAAA,IACA,6BACE;AAAA,MACE,MAAM;AAAA,IACR;AAAA,IACF,2BAA2B,MAAM,8BAA8B;AAAA,IAC/D,yBAAyB;AAAA,MACvB,MAAM;AAAA,IACR;AAAA,IACA,0BAA0B,MAAM,4BAA4B;AAAA,IAC5D,6BAA6B,MAAM,+BAA+B;AAAA,EACpE;AACF;AAEO,SAAS,gCACd,MACA,OACS;AACT,SACE,uBAAuB,KAAK,mBAAmB,MAAM,iBAAiB,KACtE;AAAA,IACE,KAAK;AAAA,IACL,MAAM;AAAA,EACR,KACA,KAAK,8BAA8B,MAAM,6BACzC,KAAK,4BAA4B,MAAM,2BACvC,KAAK,6BAA6B,MAAM,4BACxC,KAAK,gCAAgC,MAAM;AAE/C;AAEO,SAAS,oCACd,OACA,mBAA8C,SAClB;AAC5B,QAAM,WAAW;AAAA,IACf,OAAO;AAAA,IACP;AAAA,EACF;AACA,SAAO;AAAA,IACL,GAAG,wCAAwC,QAAQ;AAAA,IACnD,mBAAmB;AAAA,MACjB,OAAO;AAAA,IACT;AAAA,IACA,6BACE;AAAA,MACE,OAAO;AAAA,IACT;AAAA,IACF,mBAAmB;AAAA,MACjB,OAAO;AAAA,IACT;AAAA,IACA,2BAA2B,OAAO,8BAA8B;AAAA,IAChE,yBAAyB;AAAA,MACvB,OAAO;AAAA,IACT;AAAA,IACA,0BACE,OAAO,OAAO,6BAA6B,WACvC,MAAM,2BACN;AAAA,IACN,6BACE,OAAO,OAAO,gCAAgC,WAC1C,MAAM,8BACN;AAAA,IACN;AAAA,EACF;AACF;AAEO,SAAS,oCACd,MACA,OACS;AACT,SACE,uBAAuB,KAAK,mBAAmB,MAAM,iBAAiB,KACtE;AAAA,IACE,KAAK;AAAA,IACL,MAAM;AAAA,EACR,KACA,KAAK,sBAAsB,MAAM,qBACjC,KAAK,8BAA8B,MAAM,6BACzC,KAAK,4BAA4B,MAAM,2BACvC,KAAK,6BAA6B,MAAM,4BACxC,KAAK,gCAAgC,MAAM,+BAC3C,KAAK,aAAa,MAAM;AAE5B;AAEO,SAAS,wCACd,YAC2B;AAC3B,QAAM,aAAa,YAAY,KAAK;AACpC,MAAI,CAAC,cAAc,eAAe,aAAa;AAC7C,WAAO;AAAA,EACT;AACA,QAAM,CAAC,EAAE,QAAQ,IAAI,WAAW,MAAM,KAAK,CAAC;AAC5C,SAAO,mCAAmC,QAAQ;AACpD;AAEO,SAAS,uCAAuC,OAoBrD;AACA,QAAM,SAAS,MAAM,UAAU;AAC/B,QAAM,wBAAwB,oBAAI,IAAoC;AACtE,QAAM,YAAY,oBAAI,IAAgB;AAEtC,QAAM,SAAS,MAAM;AACnB,eAAW,YAAY,WAAW;AAChC,eAAS;AAAA,IACX;AAAA,EACF;AAEA,SAAO;AAAA,IACL,qBAAqB;AAAA,MACnB,aAAa,SAAS;AACpB,YAAI,QAAQ,WAAW,QAAQ;AAC7B,iBAAO;AAAA,QACT;AACA,cAAM,QAAQ,sBAAsB,IAAI,QAAQ,UAAU;AAC1D,eAAO,QAAQ,EAAE,GAAG,MAAM,IAAI;AAAA,MAChC;AAAA,MACA,qBAAqB,SAAS;AAC5B,YAAI,QAAQ,WAAW,QAAQ;AAC7B,iBAAO;AAAA,QACT;AACA,cAAM,QAAQ,sBAAsB,IAAI,QAAQ,UAAU;AAC1D,eAAO,QAAQ,EAAE,GAAG,MAAM,IAAI;AAAA,MAChC;AAAA,MACA,oBAAoB;AAClB,eAAO;AAAA,UACL,aAAa,MAAM;AAAA,QACrB;AAAA,MACF;AAAA,MACA,UAAU,UAAU;AAClB,kBAAU,IAAI,QAAQ;AACtB,eAAO,MAAM;AACX,oBAAU,OAAO,QAAQ;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAAA,IACA,cAAc,SAAS;AACrB,UAAI,QAAQ,WAAW,QAAQ;AAC7B,eAAO;AAAA,MACT;AACA,YAAM,QAAQ,sBAAsB,IAAI,QAAQ,UAAU;AAC1D,aAAO,QAAQ,EAAE,GAAG,MAAM,IAAI;AAAA,IAChC;AAAA,IACA,eAAe,SAAS;AACtB,UAAI,QAAQ,WAAW,QAAQ;AAC7B;AAAA,MACF;AACA,4BAAsB,IAAI,QAAQ,YAAY;AAAA,QAC5C,GAAG,gCAAgC,QAAQ,KAAK;AAAA,MAClD,CAAC;AACD,aAAO;AAAA,IACT;AAAA,EACF;AACF;AAEA,SAAS,sCAA8D;AACrE,SAAO;AAAA,IACL,mBAAmB;AAAA,IACnB,6BAA6B;AAAA,IAC7B,2BAA2B;AAAA,IAC3B,yBAAyB;AAAA,IACzB,0BAA0B;AAAA,IAC1B,6BAA6B;AAAA,EAC/B;AACF;AAEA,SAAS,4CACP,OAC2C;AAC3C,MAAI,CAAC,SAAS,KAAK,GAAG;AACpB,WAAO;AAAA,EACT;AACA,QAAM,oBAAwD,CAAC;AAC/D,MAAI,OAAO,MAAM,UAAU,YAAY,MAAM,MAAM,KAAK,GAAG;AACzD,sBAAkB,QAAQ,MAAM,MAAM,KAAK;AAAA,EAC7C;AACA,MACE,OAAO,MAAM,oBAAoB,YACjC,MAAM,gBAAgB,KAAK,GAC3B;AACA,sBAAkB,kBAAkB,MAAM,gBAAgB,KAAK;AAAA,EACjE;AACA,MACE,OAAO,MAAM,qBAAqB,YAClC,MAAM,iBAAiB,KAAK,GAC5B;AACA,sBAAkB,mBAAmB,MAAM,iBAAiB,KAAK;AAAA,EACnE;AACA,MAAI,OAAO,MAAM,aAAa,WAAW;AACvC,sBAAkB,WAAW,MAAM;AAAA,EACrC;AACA,SAAO,OAAO,KAAK,iBAAiB,EAAE,SAAS,IAAI,oBAAoB;AACzE;AAEA,SAAS,sDACP,OACqD;AACrD,MAAI,CAAC,SAAS,KAAK,GAAG;AACpB,WAAO;AAAA,EACT;AACA,QAAM,SAAuD,CAAC;AAC9D,aAAW,YAAY,4BAA4B;AACjD,UAAM,YAAY;AAAA,MAChB,MAAM,QAAQ;AAAA,IAChB;AACA,QAAI,WAAW;AACb,aAAO,QAAQ,IAAI;AAAA,IACrB;AAAA,EACF;AACA,SAAO,OAAO,KAAK,MAAM,EAAE,SAAS,IAAI,SAAS;AACnD;AAEA,SAAS,gCAAgC,OAA+B;AACtE,SAAO,OAAO,UAAU,YAAY,OAAO,SAAS,KAAK,KAAK,QAAQ,IAClE,KAAK,MAAM,KAAK,IAChB;AACN;AAEA,SAAS,mCAAmC,OAA+B;AACzE,SAAO,OAAO,UAAU,YAAY,OAAO,SAAS,KAAK,KAAK,SAAS,IACnE,KAAK,MAAM,KAAK,IAChB;AACN;AAEA,SAAS,uBACP,MACA,OACS;AACT,UACG,MAAM,SAAS,WAAW,OAAO,SAAS,UAC1C,MAAM,oBAAoB,WAAW,OAAO,oBAAoB,UAChE,MAAM,YAAY,WAAW,OAAO,YAAY,UAChD,MAAM,mBAAmB,WAAW,OAAO,mBAAmB;AAEnE;AAEA,SAAS,iCACP,MACA,OACS;AACT,aAAW,YAAY,4BAA4B;AACjD,QAAI,CAAC,uBAAuB,OAAO,QAAQ,GAAG,QAAQ,QAAQ,CAAC,GAAG;AAChE,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAEA,SAAS,SAAS,OAAkD;AAClE,SAAO,OAAO,UAAU,YAAY,UAAU;AAChD;","names":[]}
|