@sqlrooms/room-store 0.29.0-rc.2 → 0.29.0-rc.3
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/CommandSlice.d.ts +1 -1
- package/dist/CommandSlice.d.ts.map +1 -1
- package/dist/CommandSlice.js +1 -0
- package/dist/CommandSlice.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/CommandSlice.d.ts
CHANGED
|
@@ -143,7 +143,7 @@ export type CommandSliceState<RS extends BaseRoomStoreState = BaseRoomStoreState
|
|
|
143
143
|
getCommand: (commandId: string) => RegisteredRoomCommand<RS> | undefined;
|
|
144
144
|
listCommands: (options?: RoomCommandListOptions) => RoomCommandDescriptor[];
|
|
145
145
|
invokeCommand: (commandId: string, input?: unknown, invocation?: RoomCommandInvocationOptions) => Promise<RoomCommandResult>;
|
|
146
|
-
executeCommand: (commandId: string, input?: unknown, invocation?: RoomCommandInvocationOptions) => Promise<
|
|
146
|
+
executeCommand: (commandId: string, input?: unknown, invocation?: RoomCommandInvocationOptions) => Promise<RoomCommandResult<unknown>>;
|
|
147
147
|
};
|
|
148
148
|
};
|
|
149
149
|
export declare function createCommandSlice<RS extends BaseRoomStoreState = BaseRoomStoreState>(props?: CreateCommandSliceProps<RS>): StateCreator<CommandSliceState<RS>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandSlice.d.ts","sourceRoot":"","sources":["../src/CommandSlice.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"CommandSlice.d.ts","sourceRoot":"","sources":["../src/CommandSlice.ts"],"names":[],"mappings":"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"}
|
package/dist/CommandSlice.js
CHANGED
package/dist/CommandSlice.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandSlice.js","sourceRoot":"","sources":["../src/CommandSlice.ts"],"names":[],"mappings":"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","sourcesContent":["import {produce} from 'immer';\nimport type {ComponentType} from 'react';\nimport {z, ZodType} from 'zod';\nimport {StoreApi} from 'zustand';\nimport {BaseRoomStoreState, createSlice, StateCreator} from './BaseRoomStore';\nimport type {RoomCommandPortableSchema} from './RoomCommandPortableSchema';\nimport {toPortableSchema} from './toPortableSchema';\n\nexport type {RoomCommandPortableSchema} from './RoomCommandPortableSchema';\n\nconst DEFAULT_COMMAND_OWNER = 'global';\nconst DEFAULT_COMMAND_SURFACE: RoomCommandSurface = 'unknown';\n\nexport type RoomCommandSurface =\n | 'palette'\n | 'ai'\n | 'cli'\n | 'mcp'\n | 'api'\n | 'unknown';\n\nexport type RoomCommandInvocation = {\n surface: RoomCommandSurface;\n actor?: string;\n traceId?: string;\n metadata?: Record<string, unknown>;\n};\n\nexport type RoomCommandInvocationOptions = Partial<RoomCommandInvocation>;\n\nexport type RoomCommandExecutionContext<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = {\n store: StoreApi<RS>;\n getState: () => RS;\n invocation: RoomCommandInvocation;\n};\n\nexport type RoomCommandPredicate<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = (context: RoomCommandExecutionContext<RS>) => boolean;\n\nexport type RoomCommandInputComponentProps = {\n commandId: string;\n commandName: string;\n isSubmitting: boolean;\n error?: string;\n onSubmit: (input: unknown) => void | Promise<void>;\n onCancel: () => void;\n};\n\nexport type RoomCommandInputComponent =\n ComponentType<RoomCommandInputComponentProps>;\n\nexport type RoomCommandRiskLevel = 'low' | 'medium' | 'high';\nexport type RoomCommandKeystrokes = string | string[];\n\nexport type RoomCommandPolicyMetadata = {\n readOnly?: boolean;\n idempotent?: boolean;\n riskLevel?: RoomCommandRiskLevel;\n requiresConfirmation?: boolean;\n};\n\nexport type RoomCommandUiMetadata = {\n shortcut?: string;\n keystrokes?: RoomCommandKeystrokes;\n inputComponent?: RoomCommandInputComponent;\n hidden?: boolean;\n};\n\nexport type RoomCommandResult<TData = unknown> = {\n success: boolean;\n commandId: string;\n message?: string;\n code?: string;\n data?: TData;\n error?: string;\n};\n\nexport type RoomCommandExecuteOutput<TData = unknown> =\n | RoomCommandResult<TData>\n | TData\n | void;\n\nexport type RoomCommandMiddlewareNext = () => Promise<RoomCommandExecuteOutput>;\nexport type RoomCommandMiddleware<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = (\n command: RegisteredRoomCommand<RS>,\n input: unknown,\n context: RoomCommandExecutionContext<RS>,\n next: RoomCommandMiddlewareNext,\n) => RoomCommandExecuteOutput | Promise<RoomCommandExecuteOutput>;\n\nexport type RoomCommandInvokeStartEvent<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = {\n command: RegisteredRoomCommand<RS>;\n input: unknown;\n context: RoomCommandExecutionContext<RS>;\n};\n\nexport type RoomCommandInvokeSuccessEvent<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = RoomCommandInvokeStartEvent<RS> & {\n result: RoomCommandResult;\n durationMs: number;\n};\n\nexport type RoomCommandInvokeFailureEvent<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = RoomCommandInvokeStartEvent<RS> & {\n result: RoomCommandResult;\n durationMs: number;\n};\n\nexport type RoomCommandInvokeErrorEvent<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = RoomCommandInvokeStartEvent<RS> & {\n error: unknown;\n durationMs: number;\n};\n\nexport type CreateCommandSliceProps<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = {\n middleware?: RoomCommandMiddleware<RS>[];\n onCommandInvokeStart?: (event: RoomCommandInvokeStartEvent<RS>) => void;\n onCommandInvokeSuccess?: (event: RoomCommandInvokeSuccessEvent<RS>) => void;\n onCommandInvokeFailure?: (event: RoomCommandInvokeFailureEvent<RS>) => void;\n onCommandInvokeError?: (event: RoomCommandInvokeErrorEvent<RS>) => void;\n};\n\nexport type RoomCommand<RS extends BaseRoomStoreState = BaseRoomStoreState> = {\n id: string;\n name: string;\n description?: string;\n group?: string;\n keywords?: string[];\n inputSchema?: ZodType<unknown>;\n inputDescription?: string;\n validateInput?: (\n input: unknown,\n context: RoomCommandExecutionContext<RS>,\n ) => void | Promise<void>;\n execute: (\n context: RoomCommandExecutionContext<RS>,\n input?: unknown,\n ) => RoomCommandExecuteOutput | Promise<RoomCommandExecuteOutput>;\n isVisible?: RoomCommandPredicate<RS>;\n isEnabled?: RoomCommandPredicate<RS>;\n metadata?: RoomCommandPolicyMetadata;\n ui?: RoomCommandUiMetadata;\n /** @deprecated Use ui?.keystrokes */\n keystrokes?: RoomCommandKeystrokes;\n /** @deprecated Use ui?.shortcut */\n shortcut?: string;\n /** @deprecated Use ui?.inputComponent */\n inputComponent?: RoomCommandInputComponent;\n /** @deprecated Use metadata?.readOnly */\n readOnly?: boolean;\n /** @deprecated Use metadata?.idempotent */\n idempotent?: boolean;\n /** @deprecated Use metadata?.riskLevel */\n riskLevel?: RoomCommandRiskLevel;\n /** @deprecated Use metadata?.requiresConfirmation */\n requiresConfirmation?: boolean;\n};\n\nexport type RegisteredRoomCommand<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = RoomCommand<RS> & {\n owner: string;\n};\n\nexport type RoomCommandDescriptor = {\n id: string;\n owner: string;\n name: string;\n description?: string;\n group?: string;\n keywords?: string[];\n enabled: boolean;\n visible: boolean;\n requiresInput: boolean;\n inputDescription?: string;\n inputSchema?: RoomCommandPortableSchema;\n keystrokes: string[];\n shortcut?: string;\n readOnly: boolean;\n idempotent: boolean;\n riskLevel: RoomCommandRiskLevel;\n requiresConfirmation: boolean;\n};\n\nexport type RoomCommandListOptions = RoomCommandInvocationOptions & {\n includeInvisible?: boolean;\n includeDisabled?: boolean;\n includeInputSchema?: boolean;\n};\n\nexport type CommandSliceState<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = {\n commands: {\n registry: Record<string, RegisteredRoomCommand<RS>>;\n ownerToCommandIds: Record<string, string[]>;\n registerCommand: (owner: string, command: RoomCommand<RS>) => void;\n registerCommands: (owner: string, commands: RoomCommand<RS>[]) => void;\n unregisterCommand: (commandId: string) => void;\n unregisterCommands: (owner: string) => void;\n getCommand: (commandId: string) => RegisteredRoomCommand<RS> | undefined;\n listCommands: (options?: RoomCommandListOptions) => RoomCommandDescriptor[];\n invokeCommand: (\n commandId: string,\n input?: unknown,\n invocation?: RoomCommandInvocationOptions,\n ) => Promise<RoomCommandResult>;\n executeCommand: (\n commandId: string,\n input?: unknown,\n invocation?: RoomCommandInvocationOptions,\n ) => Promise<void>;\n };\n};\n\nexport function createCommandSlice<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n>(props?: CreateCommandSliceProps<RS>): StateCreator<CommandSliceState<RS>> {\n const middleware = props?.middleware ?? [];\n return createSlice<CommandSliceState<RS>, RS & CommandSliceState<RS>>(\n (set, get, store) => ({\n commands: {\n registry: {},\n ownerToCommandIds: {},\n registerCommand: (owner, command) =>\n get().commands.registerCommands(owner, [command]),\n registerCommands: (owner, commands) => {\n const normalizedOwner = normalizeOwner(owner);\n set((state) =>\n produce(state, (draft) => {\n const previousIds =\n draft.commands.ownerToCommandIds[normalizedOwner] ?? [];\n for (const previousId of previousIds) {\n delete draft.commands.registry[previousId];\n }\n\n const nextIds = new Set<string>();\n for (const command of commands) {\n if (!command.id) {\n continue;\n }\n\n const existingCommand = draft.commands.registry[command.id];\n if (\n existingCommand &&\n existingCommand.owner !== normalizedOwner\n ) {\n removeCommandIdFromOwner(\n draft.commands.ownerToCommandIds,\n existingCommand.owner,\n command.id,\n );\n }\n\n draft.commands.registry[command.id] = {\n ...command,\n owner: normalizedOwner,\n };\n nextIds.add(command.id);\n }\n\n if (nextIds.size === 0) {\n delete draft.commands.ownerToCommandIds[normalizedOwner];\n return;\n }\n\n draft.commands.ownerToCommandIds[normalizedOwner] =\n Array.from(nextIds);\n }),\n );\n },\n unregisterCommand: (commandId) => {\n const existingCommand = get().commands.registry[commandId];\n if (!existingCommand) {\n return;\n }\n set((state) =>\n produce(state, (draft) => {\n delete draft.commands.registry[commandId];\n removeCommandIdFromOwner(\n draft.commands.ownerToCommandIds,\n existingCommand.owner,\n commandId,\n );\n }),\n );\n },\n unregisterCommands: (owner) => {\n const normalizedOwner = normalizeOwner(owner);\n set((state) =>\n produce(state, (draft) => {\n const commandIds =\n draft.commands.ownerToCommandIds[normalizedOwner] ?? [];\n for (const commandId of commandIds) {\n delete draft.commands.registry[commandId];\n }\n delete draft.commands.ownerToCommandIds[normalizedOwner];\n }),\n );\n },\n getCommand: (commandId) => get().commands.registry[commandId],\n listCommands: (options) => {\n const invocation = normalizeInvocation(options);\n const context = createRoomCommandExecutionContext(\n store as StoreApi<RS>,\n invocation,\n );\n const includeInvisible = options?.includeInvisible ?? false;\n const includeDisabled = options?.includeDisabled ?? true;\n const includeInputSchema = options?.includeInputSchema ?? true;\n\n const descriptors = Object.values(get().commands.registry)\n .map((command) =>\n createCommandDescriptor(command, context, includeInputSchema),\n )\n .filter((descriptor) =>\n includeInvisible ? true : descriptor.visible,\n )\n .filter((descriptor) =>\n includeDisabled ? true : descriptor.enabled,\n );\n\n descriptors.sort((first, second) => {\n const firstGroup = first.group ?? '';\n const secondGroup = second.group ?? '';\n if (firstGroup !== secondGroup) {\n return firstGroup.localeCompare(secondGroup);\n }\n return first.name.localeCompare(second.name);\n });\n return descriptors;\n },\n invokeCommand: async (commandId, input, invocationOptions) => {\n const command = get().commands.registry[commandId];\n if (!command) {\n return {\n success: false,\n commandId,\n code: 'command-not-found',\n error: `Unknown command \"${commandId}\".`,\n };\n }\n\n const invocation = normalizeInvocation(invocationOptions);\n const executionContext = createRoomCommandExecutionContext(\n store as StoreApi<RS>,\n invocation,\n );\n\n if (!resolveCommandEnabled(command, executionContext)) {\n return {\n success: false,\n commandId: command.id,\n code: 'command-disabled',\n error: `Command \"${command.name}\" is currently disabled.`,\n };\n }\n\n const invocationStartEvent: RoomCommandInvokeStartEvent<RS> = {\n command,\n input,\n context: executionContext,\n };\n const invocationStartedAt = Date.now();\n invokeCommandSliceCallback(\n props?.onCommandInvokeStart,\n invocationStartEvent,\n get().room.captureException,\n );\n\n try {\n const validatedInput = await validateCommandInput(\n command,\n input,\n executionContext,\n );\n const rawResult = await runCommandExecutionMiddleware(\n middleware,\n command,\n validatedInput,\n executionContext,\n );\n const normalizedResult = normalizeCommandExecuteResult(\n command.id,\n rawResult,\n );\n const invocationResultEvent = {\n command,\n input: validatedInput,\n context: executionContext,\n result: normalizedResult,\n durationMs: Date.now() - invocationStartedAt,\n };\n if (normalizedResult.success) {\n invokeCommandSliceCallback(\n props?.onCommandInvokeSuccess,\n invocationResultEvent,\n get().room.captureException,\n );\n } else {\n invokeCommandSliceCallback(\n props?.onCommandInvokeFailure,\n invocationResultEvent,\n get().room.captureException,\n );\n }\n return normalizedResult;\n } catch (error) {\n get().room.captureException(error);\n invokeCommandSliceCallback(\n props?.onCommandInvokeError,\n {\n ...invocationStartEvent,\n error,\n durationMs: Date.now() - invocationStartedAt,\n },\n get().room.captureException,\n );\n return {\n success: false,\n commandId: command.id,\n code: 'command-execution-error',\n error: toErrorMessage(error),\n };\n }\n },\n executeCommand: async (commandId, input, invocation) => {\n const result = await get().commands.invokeCommand(\n commandId,\n input,\n invocation,\n );\n if (!result.success) {\n throw new Error(\n result.error ??\n result.message ??\n `Failed to execute ${commandId}`,\n );\n }\n },\n },\n }),\n );\n}\n\nexport function createRoomCommandExecutionContext<\n RS extends BaseRoomStoreState,\n>(\n store: StoreApi<RS>,\n invocation?: RoomCommandInvocationOptions,\n): RoomCommandExecutionContext<RS> {\n return {\n store,\n getState: () => store.getState(),\n invocation: normalizeInvocation(invocation),\n };\n}\n\nexport function hasCommandSliceState(\n state: unknown,\n): state is BaseRoomStoreState & CommandSliceState {\n if (typeof state !== 'object' || state === null || !('commands' in state)) {\n return false;\n }\n\n const commands = state.commands;\n if (typeof commands !== 'object' || commands === null) {\n return false;\n }\n\n return (\n 'registerCommands' in commands &&\n typeof commands.registerCommands === 'function' &&\n 'unregisterCommands' in commands &&\n typeof commands.unregisterCommands === 'function' &&\n 'listCommands' in commands &&\n typeof commands.listCommands === 'function' &&\n 'invokeCommand' in commands &&\n typeof commands.invokeCommand === 'function' &&\n 'executeCommand' in commands &&\n typeof commands.executeCommand === 'function'\n );\n}\n\nexport function registerCommandsForOwner<RS extends BaseRoomStoreState>(\n store: StoreApi<RS>,\n owner: string,\n commands: RoomCommand<RS>[],\n): void {\n const state = store.getState();\n if (!hasCommandSliceState(state)) {\n return;\n }\n state.commands.registerCommands(\n owner,\n commands as unknown as RoomCommand<BaseRoomStoreState>[],\n );\n}\n\nexport function unregisterCommandsForOwner<RS extends BaseRoomStoreState>(\n store: StoreApi<RS>,\n owner: string,\n): void {\n const state = store.getState();\n if (!hasCommandSliceState(state)) {\n return;\n }\n state.commands.unregisterCommands(owner);\n}\n\nexport function listCommandsFromStore<RS extends BaseRoomStoreState>(\n store: StoreApi<RS>,\n options?: RoomCommandListOptions,\n): RoomCommandDescriptor[] {\n const state = store.getState();\n if (!hasCommandSliceState(state)) {\n return [];\n }\n return state.commands.listCommands(options);\n}\n\nexport async function invokeCommandFromStore<RS extends BaseRoomStoreState>(\n store: StoreApi<RS>,\n commandId: string,\n input?: unknown,\n invocation?: RoomCommandInvocationOptions,\n): Promise<RoomCommandResult> {\n const state = store.getState();\n if (!hasCommandSliceState(state)) {\n return {\n success: false,\n commandId,\n code: 'command-registry-unavailable',\n error: 'Command registry is not available.',\n };\n }\n return await state.commands.invokeCommand(commandId, input, invocation);\n}\n\nexport async function validateCommandInput<RS extends BaseRoomStoreState>(\n command: RoomCommand<RS>,\n input: unknown,\n context: RoomCommandExecutionContext<RS>,\n): Promise<unknown> {\n const parsedInput = command.inputSchema\n ? parseCommandInput(command.inputSchema, input)\n : input;\n\n if (command.validateInput) {\n await command.validateInput(parsedInput, context);\n }\n return parsedInput;\n}\n\nexport function doesCommandRequireInput(\n command: Pick<RoomCommand, 'inputSchema'>,\n): boolean {\n if (!command.inputSchema) {\n return false;\n }\n return !command.inputSchema.safeParse(undefined).success;\n}\n\nexport function getCommandShortcut(\n command: Pick<RoomCommand, 'ui' | 'shortcut' | 'keystrokes'>,\n): string | undefined {\n return getCommandKeystrokes(command)[0];\n}\n\nexport function getCommandKeystrokes(\n command: Pick<RoomCommand, 'ui' | 'shortcut' | 'keystrokes'>,\n): string[] {\n const keystrokes = [\n ...toCommandKeystrokeArray(command.ui?.keystrokes),\n ...toCommandKeystrokeArray(command.keystrokes),\n ...toCommandKeystrokeArray(command.ui?.shortcut),\n ...toCommandKeystrokeArray(command.shortcut),\n ];\n\n const deduplicated = new Set<string>();\n for (const keystroke of keystrokes) {\n if (typeof keystroke !== 'string') {\n continue;\n }\n const trimmed = keystroke.trim();\n if (!trimmed) {\n continue;\n }\n deduplicated.add(trimmed);\n }\n return Array.from(deduplicated);\n}\n\nexport function getCommandInputComponent(\n command: Pick<RoomCommand, 'ui' | 'inputComponent'>,\n): RoomCommandInputComponent | undefined {\n return command.ui?.inputComponent ?? command.inputComponent;\n}\n\nexport function resolveCommandPolicyMetadata(\n command: Pick<\n RoomCommand,\n | 'metadata'\n | 'readOnly'\n | 'idempotent'\n | 'riskLevel'\n | 'requiresConfirmation'\n >,\n): Required<RoomCommandPolicyMetadata> {\n return {\n readOnly: command.metadata?.readOnly ?? command.readOnly ?? false,\n idempotent: command.metadata?.idempotent ?? command.idempotent ?? false,\n riskLevel: command.metadata?.riskLevel ?? command.riskLevel ?? 'medium',\n requiresConfirmation:\n command.metadata?.requiresConfirmation ??\n command.requiresConfirmation ??\n false,\n };\n}\n\nexport function exportCommandInputSchema(\n schema: ZodType<unknown> | undefined,\n): RoomCommandPortableSchema | undefined {\n if (!schema) {\n return undefined;\n }\n return toPortableSchema(schema);\n}\n\nfunction createCommandDescriptor<RS extends BaseRoomStoreState>(\n command: RegisteredRoomCommand<RS>,\n context: RoomCommandExecutionContext<RS>,\n includeInputSchema: boolean,\n): RoomCommandDescriptor {\n const metadata = resolveCommandPolicyMetadata(command);\n const keystrokes = getCommandKeystrokes(command);\n return {\n id: command.id,\n owner: command.owner,\n name: command.name,\n description: command.description,\n group: command.group,\n keywords: command.keywords,\n visible: resolveCommandVisibility(command, context),\n enabled: resolveCommandEnabled(command, context),\n requiresInput: doesCommandRequireInput(command),\n inputDescription: command.inputDescription,\n inputSchema: includeInputSchema\n ? exportCommandInputSchema(command.inputSchema)\n : undefined,\n keystrokes,\n shortcut: keystrokes[0],\n ...metadata,\n };\n}\n\nfunction normalizeCommandExecuteResult(\n commandId: string,\n rawResult: RoomCommandExecuteOutput,\n): RoomCommandResult {\n if (isRoomCommandResult(rawResult)) {\n return {\n ...rawResult,\n commandId: rawResult.commandId || commandId,\n };\n }\n\n return {\n success: true,\n commandId,\n ...(rawResult !== undefined ? {data: rawResult} : {}),\n };\n}\n\nfunction isRoomCommandResult(value: unknown): value is RoomCommandResult {\n return (\n typeof value === 'object' &&\n value !== null &&\n 'success' in value &&\n typeof value.success === 'boolean' &&\n 'commandId' in value\n );\n}\n\nasync function runCommandExecutionMiddleware<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n>(\n middleware: RoomCommandMiddleware<RS>[],\n command: RegisteredRoomCommand<RS>,\n input: unknown,\n context: RoomCommandExecutionContext<RS>,\n): Promise<RoomCommandExecuteOutput> {\n const invokeMiddleware = async (\n index: number,\n ): Promise<RoomCommandExecuteOutput> => {\n const currentMiddleware = middleware[index];\n if (!currentMiddleware) {\n return await command.execute(context, input);\n }\n let called = false;\n return await currentMiddleware(command, input, context, async () => {\n if (called) {\n throw new Error('Command middleware next() called multiple times.');\n }\n called = true;\n return await invokeMiddleware(index + 1);\n });\n };\n\n return await invokeMiddleware(0);\n}\n\nfunction invokeCommandSliceCallback<TEvent>(\n callback: ((event: TEvent) => void) | undefined,\n event: TEvent,\n captureException: BaseRoomStoreState['room']['captureException'],\n): void {\n if (!callback) {\n return;\n }\n try {\n callback(event);\n } catch (error) {\n captureException(error);\n }\n}\n\nfunction toCommandKeystrokeArray(keystrokes?: RoomCommandKeystrokes): string[] {\n if (!keystrokes) {\n return [];\n }\n return Array.isArray(keystrokes) ? keystrokes : [keystrokes];\n}\n\nfunction removeCommandIdFromOwner(\n ownerToCommandIds: Record<string, string[]>,\n owner: string,\n commandId: string,\n): void {\n const ownerCommandIds = ownerToCommandIds[owner];\n if (!ownerCommandIds) {\n return;\n }\n\n const filteredIds = ownerCommandIds.filter((id) => id !== commandId);\n if (filteredIds.length === 0) {\n delete ownerToCommandIds[owner];\n return;\n }\n ownerToCommandIds[owner] = filteredIds;\n}\n\nfunction normalizeOwner(owner: string): string {\n const trimmed = owner.trim();\n if (trimmed.length > 0) {\n return trimmed;\n }\n return DEFAULT_COMMAND_OWNER;\n}\n\nfunction normalizeInvocation(\n invocation?: RoomCommandInvocationOptions,\n): RoomCommandInvocation {\n return {\n surface: invocation?.surface ?? DEFAULT_COMMAND_SURFACE,\n actor: invocation?.actor,\n traceId: invocation?.traceId,\n metadata: invocation?.metadata,\n };\n}\n\nfunction resolveCommandVisibility<RS extends BaseRoomStoreState>(\n command: RoomCommand<RS>,\n context: RoomCommandExecutionContext<RS>,\n): boolean {\n if (command.ui?.hidden) {\n return false;\n }\n if (!command.isVisible) {\n return true;\n }\n try {\n return command.isVisible(context);\n } catch (error) {\n context.getState().room.captureException(error);\n return false;\n }\n}\n\nfunction resolveCommandEnabled<RS extends BaseRoomStoreState>(\n command: RoomCommand<RS>,\n context: RoomCommandExecutionContext<RS>,\n): boolean {\n if (!command.isEnabled) {\n return true;\n }\n try {\n return command.isEnabled(context);\n } catch (error) {\n context.getState().room.captureException(error);\n return false;\n }\n}\n\nfunction parseCommandInput(schema: ZodType<unknown>, input: unknown): unknown {\n const parsedResult = schema.safeParse(input);\n if (parsedResult.success) {\n return parsedResult.data;\n }\n throw new Error(formatCommandInputValidationError(parsedResult.error));\n}\n\nfunction formatCommandInputValidationError(error: z.ZodError): string {\n const message = error.issues\n .map((issue) => {\n const path = issue.path.length > 0 ? issue.path.join('.') : 'input';\n return `${path}: ${issue.message}`;\n })\n .join('; ');\n return message.length > 0\n ? `Invalid command input: ${message}`\n : 'Invalid command input.';\n}\n\nfunction toErrorMessage(error: unknown): string {\n if (error instanceof Error) {\n return error.message;\n }\n return String(error);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"CommandSlice.js","sourceRoot":"","sources":["../src/CommandSlice.ts"],"names":[],"mappings":"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","sourcesContent":["import {produce} from 'immer';\nimport type {ComponentType} from 'react';\nimport {z, ZodType} from 'zod';\nimport {StoreApi} from 'zustand';\nimport {BaseRoomStoreState, createSlice, StateCreator} from './BaseRoomStore';\nimport type {RoomCommandPortableSchema} from './RoomCommandPortableSchema';\nimport {toPortableSchema} from './toPortableSchema';\n\nexport type {RoomCommandPortableSchema} from './RoomCommandPortableSchema';\n\nconst DEFAULT_COMMAND_OWNER = 'global';\nconst DEFAULT_COMMAND_SURFACE: RoomCommandSurface = 'unknown';\n\nexport type RoomCommandSurface =\n | 'palette'\n | 'ai'\n | 'cli'\n | 'mcp'\n | 'api'\n | 'unknown';\n\nexport type RoomCommandInvocation = {\n surface: RoomCommandSurface;\n actor?: string;\n traceId?: string;\n metadata?: Record<string, unknown>;\n};\n\nexport type RoomCommandInvocationOptions = Partial<RoomCommandInvocation>;\n\nexport type RoomCommandExecutionContext<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = {\n store: StoreApi<RS>;\n getState: () => RS;\n invocation: RoomCommandInvocation;\n};\n\nexport type RoomCommandPredicate<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = (context: RoomCommandExecutionContext<RS>) => boolean;\n\nexport type RoomCommandInputComponentProps = {\n commandId: string;\n commandName: string;\n isSubmitting: boolean;\n error?: string;\n onSubmit: (input: unknown) => void | Promise<void>;\n onCancel: () => void;\n};\n\nexport type RoomCommandInputComponent =\n ComponentType<RoomCommandInputComponentProps>;\n\nexport type RoomCommandRiskLevel = 'low' | 'medium' | 'high';\nexport type RoomCommandKeystrokes = string | string[];\n\nexport type RoomCommandPolicyMetadata = {\n readOnly?: boolean;\n idempotent?: boolean;\n riskLevel?: RoomCommandRiskLevel;\n requiresConfirmation?: boolean;\n};\n\nexport type RoomCommandUiMetadata = {\n shortcut?: string;\n keystrokes?: RoomCommandKeystrokes;\n inputComponent?: RoomCommandInputComponent;\n hidden?: boolean;\n};\n\nexport type RoomCommandResult<TData = unknown> = {\n success: boolean;\n commandId: string;\n message?: string;\n code?: string;\n data?: TData;\n error?: string;\n};\n\nexport type RoomCommandExecuteOutput<TData = unknown> =\n | RoomCommandResult<TData>\n | TData\n | void;\n\nexport type RoomCommandMiddlewareNext = () => Promise<RoomCommandExecuteOutput>;\nexport type RoomCommandMiddleware<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = (\n command: RegisteredRoomCommand<RS>,\n input: unknown,\n context: RoomCommandExecutionContext<RS>,\n next: RoomCommandMiddlewareNext,\n) => RoomCommandExecuteOutput | Promise<RoomCommandExecuteOutput>;\n\nexport type RoomCommandInvokeStartEvent<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = {\n command: RegisteredRoomCommand<RS>;\n input: unknown;\n context: RoomCommandExecutionContext<RS>;\n};\n\nexport type RoomCommandInvokeSuccessEvent<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = RoomCommandInvokeStartEvent<RS> & {\n result: RoomCommandResult;\n durationMs: number;\n};\n\nexport type RoomCommandInvokeFailureEvent<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = RoomCommandInvokeStartEvent<RS> & {\n result: RoomCommandResult;\n durationMs: number;\n};\n\nexport type RoomCommandInvokeErrorEvent<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = RoomCommandInvokeStartEvent<RS> & {\n error: unknown;\n durationMs: number;\n};\n\nexport type CreateCommandSliceProps<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = {\n middleware?: RoomCommandMiddleware<RS>[];\n onCommandInvokeStart?: (event: RoomCommandInvokeStartEvent<RS>) => void;\n onCommandInvokeSuccess?: (event: RoomCommandInvokeSuccessEvent<RS>) => void;\n onCommandInvokeFailure?: (event: RoomCommandInvokeFailureEvent<RS>) => void;\n onCommandInvokeError?: (event: RoomCommandInvokeErrorEvent<RS>) => void;\n};\n\nexport type RoomCommand<RS extends BaseRoomStoreState = BaseRoomStoreState> = {\n id: string;\n name: string;\n description?: string;\n group?: string;\n keywords?: string[];\n inputSchema?: ZodType<unknown>;\n inputDescription?: string;\n validateInput?: (\n input: unknown,\n context: RoomCommandExecutionContext<RS>,\n ) => void | Promise<void>;\n execute: (\n context: RoomCommandExecutionContext<RS>,\n input?: unknown,\n ) => RoomCommandExecuteOutput | Promise<RoomCommandExecuteOutput>;\n isVisible?: RoomCommandPredicate<RS>;\n isEnabled?: RoomCommandPredicate<RS>;\n metadata?: RoomCommandPolicyMetadata;\n ui?: RoomCommandUiMetadata;\n /** @deprecated Use ui?.keystrokes */\n keystrokes?: RoomCommandKeystrokes;\n /** @deprecated Use ui?.shortcut */\n shortcut?: string;\n /** @deprecated Use ui?.inputComponent */\n inputComponent?: RoomCommandInputComponent;\n /** @deprecated Use metadata?.readOnly */\n readOnly?: boolean;\n /** @deprecated Use metadata?.idempotent */\n idempotent?: boolean;\n /** @deprecated Use metadata?.riskLevel */\n riskLevel?: RoomCommandRiskLevel;\n /** @deprecated Use metadata?.requiresConfirmation */\n requiresConfirmation?: boolean;\n};\n\nexport type RegisteredRoomCommand<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = RoomCommand<RS> & {\n owner: string;\n};\n\nexport type RoomCommandDescriptor = {\n id: string;\n owner: string;\n name: string;\n description?: string;\n group?: string;\n keywords?: string[];\n enabled: boolean;\n visible: boolean;\n requiresInput: boolean;\n inputDescription?: string;\n inputSchema?: RoomCommandPortableSchema;\n keystrokes: string[];\n shortcut?: string;\n readOnly: boolean;\n idempotent: boolean;\n riskLevel: RoomCommandRiskLevel;\n requiresConfirmation: boolean;\n};\n\nexport type RoomCommandListOptions = RoomCommandInvocationOptions & {\n includeInvisible?: boolean;\n includeDisabled?: boolean;\n includeInputSchema?: boolean;\n};\n\nexport type CommandSliceState<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n> = {\n commands: {\n registry: Record<string, RegisteredRoomCommand<RS>>;\n ownerToCommandIds: Record<string, string[]>;\n registerCommand: (owner: string, command: RoomCommand<RS>) => void;\n registerCommands: (owner: string, commands: RoomCommand<RS>[]) => void;\n unregisterCommand: (commandId: string) => void;\n unregisterCommands: (owner: string) => void;\n getCommand: (commandId: string) => RegisteredRoomCommand<RS> | undefined;\n listCommands: (options?: RoomCommandListOptions) => RoomCommandDescriptor[];\n invokeCommand: (\n commandId: string,\n input?: unknown,\n invocation?: RoomCommandInvocationOptions,\n ) => Promise<RoomCommandResult>;\n executeCommand: (\n commandId: string,\n input?: unknown,\n invocation?: RoomCommandInvocationOptions,\n ) => Promise<RoomCommandResult<unknown>>;\n };\n};\n\nexport function createCommandSlice<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n>(props?: CreateCommandSliceProps<RS>): StateCreator<CommandSliceState<RS>> {\n const middleware = props?.middleware ?? [];\n return createSlice<CommandSliceState<RS>, RS & CommandSliceState<RS>>(\n (set, get, store) => ({\n commands: {\n registry: {},\n ownerToCommandIds: {},\n registerCommand: (owner, command) =>\n get().commands.registerCommands(owner, [command]),\n registerCommands: (owner, commands) => {\n const normalizedOwner = normalizeOwner(owner);\n set((state) =>\n produce(state, (draft) => {\n const previousIds =\n draft.commands.ownerToCommandIds[normalizedOwner] ?? [];\n for (const previousId of previousIds) {\n delete draft.commands.registry[previousId];\n }\n\n const nextIds = new Set<string>();\n for (const command of commands) {\n if (!command.id) {\n continue;\n }\n\n const existingCommand = draft.commands.registry[command.id];\n if (\n existingCommand &&\n existingCommand.owner !== normalizedOwner\n ) {\n removeCommandIdFromOwner(\n draft.commands.ownerToCommandIds,\n existingCommand.owner,\n command.id,\n );\n }\n\n draft.commands.registry[command.id] = {\n ...command,\n owner: normalizedOwner,\n };\n nextIds.add(command.id);\n }\n\n if (nextIds.size === 0) {\n delete draft.commands.ownerToCommandIds[normalizedOwner];\n return;\n }\n\n draft.commands.ownerToCommandIds[normalizedOwner] =\n Array.from(nextIds);\n }),\n );\n },\n unregisterCommand: (commandId) => {\n const existingCommand = get().commands.registry[commandId];\n if (!existingCommand) {\n return;\n }\n set((state) =>\n produce(state, (draft) => {\n delete draft.commands.registry[commandId];\n removeCommandIdFromOwner(\n draft.commands.ownerToCommandIds,\n existingCommand.owner,\n commandId,\n );\n }),\n );\n },\n unregisterCommands: (owner) => {\n const normalizedOwner = normalizeOwner(owner);\n set((state) =>\n produce(state, (draft) => {\n const commandIds =\n draft.commands.ownerToCommandIds[normalizedOwner] ?? [];\n for (const commandId of commandIds) {\n delete draft.commands.registry[commandId];\n }\n delete draft.commands.ownerToCommandIds[normalizedOwner];\n }),\n );\n },\n getCommand: (commandId) => get().commands.registry[commandId],\n listCommands: (options) => {\n const invocation = normalizeInvocation(options);\n const context = createRoomCommandExecutionContext(\n store as StoreApi<RS>,\n invocation,\n );\n const includeInvisible = options?.includeInvisible ?? false;\n const includeDisabled = options?.includeDisabled ?? true;\n const includeInputSchema = options?.includeInputSchema ?? true;\n\n const descriptors = Object.values(get().commands.registry)\n .map((command) =>\n createCommandDescriptor(command, context, includeInputSchema),\n )\n .filter((descriptor) =>\n includeInvisible ? true : descriptor.visible,\n )\n .filter((descriptor) =>\n includeDisabled ? true : descriptor.enabled,\n );\n\n descriptors.sort((first, second) => {\n const firstGroup = first.group ?? '';\n const secondGroup = second.group ?? '';\n if (firstGroup !== secondGroup) {\n return firstGroup.localeCompare(secondGroup);\n }\n return first.name.localeCompare(second.name);\n });\n return descriptors;\n },\n invokeCommand: async (commandId, input, invocationOptions) => {\n const command = get().commands.registry[commandId];\n if (!command) {\n return {\n success: false,\n commandId,\n code: 'command-not-found',\n error: `Unknown command \"${commandId}\".`,\n };\n }\n\n const invocation = normalizeInvocation(invocationOptions);\n const executionContext = createRoomCommandExecutionContext(\n store as StoreApi<RS>,\n invocation,\n );\n\n if (!resolveCommandEnabled(command, executionContext)) {\n return {\n success: false,\n commandId: command.id,\n code: 'command-disabled',\n error: `Command \"${command.name}\" is currently disabled.`,\n };\n }\n\n const invocationStartEvent: RoomCommandInvokeStartEvent<RS> = {\n command,\n input,\n context: executionContext,\n };\n const invocationStartedAt = Date.now();\n invokeCommandSliceCallback(\n props?.onCommandInvokeStart,\n invocationStartEvent,\n get().room.captureException,\n );\n\n try {\n const validatedInput = await validateCommandInput(\n command,\n input,\n executionContext,\n );\n const rawResult = await runCommandExecutionMiddleware(\n middleware,\n command,\n validatedInput,\n executionContext,\n );\n const normalizedResult = normalizeCommandExecuteResult(\n command.id,\n rawResult,\n );\n const invocationResultEvent = {\n command,\n input: validatedInput,\n context: executionContext,\n result: normalizedResult,\n durationMs: Date.now() - invocationStartedAt,\n };\n if (normalizedResult.success) {\n invokeCommandSliceCallback(\n props?.onCommandInvokeSuccess,\n invocationResultEvent,\n get().room.captureException,\n );\n } else {\n invokeCommandSliceCallback(\n props?.onCommandInvokeFailure,\n invocationResultEvent,\n get().room.captureException,\n );\n }\n return normalizedResult;\n } catch (error) {\n get().room.captureException(error);\n invokeCommandSliceCallback(\n props?.onCommandInvokeError,\n {\n ...invocationStartEvent,\n error,\n durationMs: Date.now() - invocationStartedAt,\n },\n get().room.captureException,\n );\n return {\n success: false,\n commandId: command.id,\n code: 'command-execution-error',\n error: toErrorMessage(error),\n };\n }\n },\n executeCommand: async (commandId, input, invocation) => {\n const result = await get().commands.invokeCommand(\n commandId,\n input,\n invocation,\n );\n if (!result.success) {\n throw new Error(\n result.error ??\n result.message ??\n `Failed to execute ${commandId}`,\n );\n }\n return result;\n },\n },\n }),\n );\n}\n\nexport function createRoomCommandExecutionContext<\n RS extends BaseRoomStoreState,\n>(\n store: StoreApi<RS>,\n invocation?: RoomCommandInvocationOptions,\n): RoomCommandExecutionContext<RS> {\n return {\n store,\n getState: () => store.getState(),\n invocation: normalizeInvocation(invocation),\n };\n}\n\nexport function hasCommandSliceState(\n state: unknown,\n): state is BaseRoomStoreState & CommandSliceState {\n if (typeof state !== 'object' || state === null || !('commands' in state)) {\n return false;\n }\n\n const commands = state.commands;\n if (typeof commands !== 'object' || commands === null) {\n return false;\n }\n\n return (\n 'registerCommands' in commands &&\n typeof commands.registerCommands === 'function' &&\n 'unregisterCommands' in commands &&\n typeof commands.unregisterCommands === 'function' &&\n 'listCommands' in commands &&\n typeof commands.listCommands === 'function' &&\n 'invokeCommand' in commands &&\n typeof commands.invokeCommand === 'function' &&\n 'executeCommand' in commands &&\n typeof commands.executeCommand === 'function'\n );\n}\n\nexport function registerCommandsForOwner<RS extends BaseRoomStoreState>(\n store: StoreApi<RS>,\n owner: string,\n commands: RoomCommand<RS>[],\n): void {\n const state = store.getState();\n if (!hasCommandSliceState(state)) {\n return;\n }\n state.commands.registerCommands(\n owner,\n commands as unknown as RoomCommand<BaseRoomStoreState>[],\n );\n}\n\nexport function unregisterCommandsForOwner<RS extends BaseRoomStoreState>(\n store: StoreApi<RS>,\n owner: string,\n): void {\n const state = store.getState();\n if (!hasCommandSliceState(state)) {\n return;\n }\n state.commands.unregisterCommands(owner);\n}\n\nexport function listCommandsFromStore<RS extends BaseRoomStoreState>(\n store: StoreApi<RS>,\n options?: RoomCommandListOptions,\n): RoomCommandDescriptor[] {\n const state = store.getState();\n if (!hasCommandSliceState(state)) {\n return [];\n }\n return state.commands.listCommands(options);\n}\n\nexport async function invokeCommandFromStore<RS extends BaseRoomStoreState>(\n store: StoreApi<RS>,\n commandId: string,\n input?: unknown,\n invocation?: RoomCommandInvocationOptions,\n): Promise<RoomCommandResult> {\n const state = store.getState();\n if (!hasCommandSliceState(state)) {\n return {\n success: false,\n commandId,\n code: 'command-registry-unavailable',\n error: 'Command registry is not available.',\n };\n }\n return await state.commands.invokeCommand(commandId, input, invocation);\n}\n\nexport async function validateCommandInput<RS extends BaseRoomStoreState>(\n command: RoomCommand<RS>,\n input: unknown,\n context: RoomCommandExecutionContext<RS>,\n): Promise<unknown> {\n const parsedInput = command.inputSchema\n ? parseCommandInput(command.inputSchema, input)\n : input;\n\n if (command.validateInput) {\n await command.validateInput(parsedInput, context);\n }\n return parsedInput;\n}\n\nexport function doesCommandRequireInput(\n command: Pick<RoomCommand, 'inputSchema'>,\n): boolean {\n if (!command.inputSchema) {\n return false;\n }\n return !command.inputSchema.safeParse(undefined).success;\n}\n\nexport function getCommandShortcut(\n command: Pick<RoomCommand, 'ui' | 'shortcut' | 'keystrokes'>,\n): string | undefined {\n return getCommandKeystrokes(command)[0];\n}\n\nexport function getCommandKeystrokes(\n command: Pick<RoomCommand, 'ui' | 'shortcut' | 'keystrokes'>,\n): string[] {\n const keystrokes = [\n ...toCommandKeystrokeArray(command.ui?.keystrokes),\n ...toCommandKeystrokeArray(command.keystrokes),\n ...toCommandKeystrokeArray(command.ui?.shortcut),\n ...toCommandKeystrokeArray(command.shortcut),\n ];\n\n const deduplicated = new Set<string>();\n for (const keystroke of keystrokes) {\n if (typeof keystroke !== 'string') {\n continue;\n }\n const trimmed = keystroke.trim();\n if (!trimmed) {\n continue;\n }\n deduplicated.add(trimmed);\n }\n return Array.from(deduplicated);\n}\n\nexport function getCommandInputComponent(\n command: Pick<RoomCommand, 'ui' | 'inputComponent'>,\n): RoomCommandInputComponent | undefined {\n return command.ui?.inputComponent ?? command.inputComponent;\n}\n\nexport function resolveCommandPolicyMetadata(\n command: Pick<\n RoomCommand,\n | 'metadata'\n | 'readOnly'\n | 'idempotent'\n | 'riskLevel'\n | 'requiresConfirmation'\n >,\n): Required<RoomCommandPolicyMetadata> {\n return {\n readOnly: command.metadata?.readOnly ?? command.readOnly ?? false,\n idempotent: command.metadata?.idempotent ?? command.idempotent ?? false,\n riskLevel: command.metadata?.riskLevel ?? command.riskLevel ?? 'medium',\n requiresConfirmation:\n command.metadata?.requiresConfirmation ??\n command.requiresConfirmation ??\n false,\n };\n}\n\nexport function exportCommandInputSchema(\n schema: ZodType<unknown> | undefined,\n): RoomCommandPortableSchema | undefined {\n if (!schema) {\n return undefined;\n }\n return toPortableSchema(schema);\n}\n\nfunction createCommandDescriptor<RS extends BaseRoomStoreState>(\n command: RegisteredRoomCommand<RS>,\n context: RoomCommandExecutionContext<RS>,\n includeInputSchema: boolean,\n): RoomCommandDescriptor {\n const metadata = resolveCommandPolicyMetadata(command);\n const keystrokes = getCommandKeystrokes(command);\n return {\n id: command.id,\n owner: command.owner,\n name: command.name,\n description: command.description,\n group: command.group,\n keywords: command.keywords,\n visible: resolveCommandVisibility(command, context),\n enabled: resolveCommandEnabled(command, context),\n requiresInput: doesCommandRequireInput(command),\n inputDescription: command.inputDescription,\n inputSchema: includeInputSchema\n ? exportCommandInputSchema(command.inputSchema)\n : undefined,\n keystrokes,\n shortcut: keystrokes[0],\n ...metadata,\n };\n}\n\nfunction normalizeCommandExecuteResult(\n commandId: string,\n rawResult: RoomCommandExecuteOutput,\n): RoomCommandResult {\n if (isRoomCommandResult(rawResult)) {\n return {\n ...rawResult,\n commandId: rawResult.commandId || commandId,\n };\n }\n\n return {\n success: true,\n commandId,\n ...(rawResult !== undefined ? {data: rawResult} : {}),\n };\n}\n\nfunction isRoomCommandResult(value: unknown): value is RoomCommandResult {\n return (\n typeof value === 'object' &&\n value !== null &&\n 'success' in value &&\n typeof value.success === 'boolean' &&\n 'commandId' in value\n );\n}\n\nasync function runCommandExecutionMiddleware<\n RS extends BaseRoomStoreState = BaseRoomStoreState,\n>(\n middleware: RoomCommandMiddleware<RS>[],\n command: RegisteredRoomCommand<RS>,\n input: unknown,\n context: RoomCommandExecutionContext<RS>,\n): Promise<RoomCommandExecuteOutput> {\n const invokeMiddleware = async (\n index: number,\n ): Promise<RoomCommandExecuteOutput> => {\n const currentMiddleware = middleware[index];\n if (!currentMiddleware) {\n return await command.execute(context, input);\n }\n let called = false;\n return await currentMiddleware(command, input, context, async () => {\n if (called) {\n throw new Error('Command middleware next() called multiple times.');\n }\n called = true;\n return await invokeMiddleware(index + 1);\n });\n };\n\n return await invokeMiddleware(0);\n}\n\nfunction invokeCommandSliceCallback<TEvent>(\n callback: ((event: TEvent) => void) | undefined,\n event: TEvent,\n captureException: BaseRoomStoreState['room']['captureException'],\n): void {\n if (!callback) {\n return;\n }\n try {\n callback(event);\n } catch (error) {\n captureException(error);\n }\n}\n\nfunction toCommandKeystrokeArray(keystrokes?: RoomCommandKeystrokes): string[] {\n if (!keystrokes) {\n return [];\n }\n return Array.isArray(keystrokes) ? keystrokes : [keystrokes];\n}\n\nfunction removeCommandIdFromOwner(\n ownerToCommandIds: Record<string, string[]>,\n owner: string,\n commandId: string,\n): void {\n const ownerCommandIds = ownerToCommandIds[owner];\n if (!ownerCommandIds) {\n return;\n }\n\n const filteredIds = ownerCommandIds.filter((id) => id !== commandId);\n if (filteredIds.length === 0) {\n delete ownerToCommandIds[owner];\n return;\n }\n ownerToCommandIds[owner] = filteredIds;\n}\n\nfunction normalizeOwner(owner: string): string {\n const trimmed = owner.trim();\n if (trimmed.length > 0) {\n return trimmed;\n }\n return DEFAULT_COMMAND_OWNER;\n}\n\nfunction normalizeInvocation(\n invocation?: RoomCommandInvocationOptions,\n): RoomCommandInvocation {\n return {\n surface: invocation?.surface ?? DEFAULT_COMMAND_SURFACE,\n actor: invocation?.actor,\n traceId: invocation?.traceId,\n metadata: invocation?.metadata,\n };\n}\n\nfunction resolveCommandVisibility<RS extends BaseRoomStoreState>(\n command: RoomCommand<RS>,\n context: RoomCommandExecutionContext<RS>,\n): boolean {\n if (command.ui?.hidden) {\n return false;\n }\n if (!command.isVisible) {\n return true;\n }\n try {\n return command.isVisible(context);\n } catch (error) {\n context.getState().room.captureException(error);\n return false;\n }\n}\n\nfunction resolveCommandEnabled<RS extends BaseRoomStoreState>(\n command: RoomCommand<RS>,\n context: RoomCommandExecutionContext<RS>,\n): boolean {\n if (!command.isEnabled) {\n return true;\n }\n try {\n return command.isEnabled(context);\n } catch (error) {\n context.getState().room.captureException(error);\n return false;\n }\n}\n\nfunction parseCommandInput(schema: ZodType<unknown>, input: unknown): unknown {\n const parsedResult = schema.safeParse(input);\n if (parsedResult.success) {\n return parsedResult.data;\n }\n throw new Error(formatCommandInputValidationError(parsedResult.error));\n}\n\nfunction formatCommandInputValidationError(error: z.ZodError): string {\n const message = error.issues\n .map((issue) => {\n const path = issue.path.length > 0 ? issue.path.join('.') : 'input';\n return `${path}: ${issue.message}`;\n })\n .join('; ');\n return message.length > 0\n ? `Invalid command input: ${message}`\n : 'Invalid command input.';\n}\n\nfunction toErrorMessage(error: unknown): string {\n if (error instanceof Error) {\n return error.message;\n }\n return String(error);\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -12,5 +12,6 @@ export { createCommandSlice, createRoomCommandExecutionContext, doesCommandRequi
|
|
|
12
12
|
export type { CommandSliceState, CreateCommandSliceProps, RoomCommandDescriptor, RoomCommandExecuteOutput, RoomCommandKeystrokes, RoomCommandInvocation, RoomCommandInvokeFailureEvent, RoomCommandInvokeErrorEvent, RoomCommandInvocationOptions, RoomCommandInvokeStartEvent, RoomCommandInvokeSuccessEvent, RoomCommandMiddleware, RoomCommandMiddlewareNext, RegisteredRoomCommand, RoomCommand, RoomCommandInputComponent, RoomCommandInputComponentProps, RoomCommandListOptions, RoomCommandPolicyMetadata, RoomCommandPortableSchema, RoomCommandResult, RoomCommandRiskLevel, RoomCommandSurface, RoomCommandUiMetadata, RoomCommandExecutionContext, RoomCommandPredicate, } from './CommandSlice';
|
|
13
13
|
export { createCommandCliAdapter, createCommandMcpAdapter, } from './CommandAdapters';
|
|
14
14
|
export type { CommandCliAdapter, CommandCliAdapterOptions, CommandMcpAdapter, CommandMcpAdapterOptions, CommandMcpToolDescriptor, } from './CommandAdapters';
|
|
15
|
-
export { BaseDataSource, BaseRoomConfig, createDefaultBaseRoomConfig,
|
|
15
|
+
export { BaseDataSource, BaseRoomConfig, createDefaultBaseRoomConfig, DataSource, DataSourceTypes, DEFAULT_ROOM_TITLE, FileDataSource, isFileDataSource, isSpatialLoadFileOptions, isSqlQueryDataSource, isUrlDataSource, LoadFile, LoadFileOptions, MAIN_VIEW, SpatialLoadFileOptions, SpatialLoadOptions, SqlQueryDataSource, StandardLoadFileOptions, StandardLoadOptions, UrlDataSource, LayoutNodeKey, LayoutPanelNode, LayoutSplitNode, LayoutTabsNode, LayoutNode, LayoutConfig, isLayoutPanelNode, isLayoutSplitNode, isLayoutTabsNode, createDefaultLayout, } from '@sqlrooms/room-config';
|
|
16
|
+
export type { LayoutDirection } from '@sqlrooms/room-config';
|
|
16
17
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAC,sBAAsB,EAAC,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,WAAW,EACX,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AACpD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,kBAAkB,EAClB,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,6BAA6B,EAC7B,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,6BAA6B,EAC7B,qBAAqB,EACrB,yBAAyB,EACzB,qBAAqB,EACrB,WAAW,EACX,yBAAyB,EACzB,8BAA8B,EAC9B,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EACL,cAAc,EACd,cAAc,EACd,2BAA2B,EAC3B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAC,sBAAsB,EAAC,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,WAAW,EACX,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AACpD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,kBAAkB,EAClB,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,6BAA6B,EAC7B,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,6BAA6B,EAC7B,qBAAqB,EACrB,yBAAyB,EACzB,qBAAqB,EACrB,WAAW,EACX,yBAAyB,EACzB,8BAA8B,EAC9B,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EACL,cAAc,EACd,cAAc,EACd,2BAA2B,EAC3B,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,QAAQ,EACR,eAAe,EACf,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,eAAe,EACf,eAAe,EACf,cAAc,EACd,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -9,5 +9,5 @@ export { createCommandSlice, createRoomCommandExecutionContext, doesCommandRequi
|
|
|
9
9
|
export { createCommandCliAdapter, createCommandMcpAdapter, } from './CommandAdapters';
|
|
10
10
|
// Re-export from @sqlrooms/room-config
|
|
11
11
|
// Values also export their corresponding types automatically (Zod pattern)
|
|
12
|
-
export { BaseDataSource, BaseRoomConfig, createDefaultBaseRoomConfig,
|
|
12
|
+
export { BaseDataSource, BaseRoomConfig, createDefaultBaseRoomConfig, DataSource, DataSourceTypes, DEFAULT_ROOM_TITLE, FileDataSource, isFileDataSource, isSpatialLoadFileOptions, isSqlQueryDataSource, isUrlDataSource, LoadFile, LoadFileOptions, MAIN_VIEW, SpatialLoadFileOptions, SpatialLoadOptions, SqlQueryDataSource, StandardLoadFileOptions, StandardLoadOptions, UrlDataSource, LayoutNodeKey, LayoutPanelNode, LayoutSplitNode, LayoutTabsNode, LayoutNode, LayoutConfig, isLayoutPanelNode, isLayoutSplitNode, isLayoutTabsNode, createDefaultLayout, } from '@sqlrooms/room-config';
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,WAAW,EACX,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,kBAAkB,EAClB,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AA6BxB,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAS3B,uCAAuC;AACvC,2EAA2E;AAC3E,OAAO,EACL,cAAc,EACd,cAAc,EACd,2BAA2B,EAC3B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,WAAW,EACX,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,kBAAkB,EAClB,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AA6BxB,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAS3B,uCAAuC;AACvC,2EAA2E;AAC3E,OAAO,EACL,cAAc,EACd,cAAc,EACd,2BAA2B,EAC3B,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,QAAQ,EACR,eAAe,EACf,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,eAAe,EACf,eAAe,EACf,cAAc,EACd,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC","sourcesContent":["/**\n * {@include ../README.md}\n * @packageDocumentation\n */\n\nexport {\n RoomStateContext,\n RoomStateProvider,\n useBaseRoomStore,\n useRoomStoreApi,\n} from './RoomStateProvider';\nexport type {RoomStateProviderProps} from './RoomStateProvider';\n\nexport {\n createBaseRoomSlice,\n createBaseSlice,\n createRoomSlice,\n createRoomStore,\n createRoomStoreCreator,\n createSlice,\n isRoomSliceWithDestroy,\n isRoomSliceWithInitialize,\n} from './BaseRoomStore';\nexport type {\n BaseRoomStore,\n BaseRoomStoreState,\n CreateBaseRoomSliceProps,\n SliceFunctions,\n UseRoomStore,\n} from './BaseRoomStore';\n\nexport type {StateCreator, StoreApi} from 'zustand';\nexport {\n createPersistHelpers,\n persistSliceConfigs,\n} from './createPersistHelpers';\n\nexport {\n createCommandSlice,\n createRoomCommandExecutionContext,\n doesCommandRequireInput,\n exportCommandInputSchema,\n getCommandKeystrokes,\n getCommandInputComponent,\n getCommandShortcut,\n hasCommandSliceState,\n invokeCommandFromStore,\n listCommandsFromStore,\n registerCommandsForOwner,\n resolveCommandPolicyMetadata,\n unregisterCommandsForOwner,\n validateCommandInput,\n} from './CommandSlice';\nexport type {\n CommandSliceState,\n CreateCommandSliceProps,\n RoomCommandDescriptor,\n RoomCommandExecuteOutput,\n RoomCommandKeystrokes,\n RoomCommandInvocation,\n RoomCommandInvokeFailureEvent,\n RoomCommandInvokeErrorEvent,\n RoomCommandInvocationOptions,\n RoomCommandInvokeStartEvent,\n RoomCommandInvokeSuccessEvent,\n RoomCommandMiddleware,\n RoomCommandMiddlewareNext,\n RegisteredRoomCommand,\n RoomCommand,\n RoomCommandInputComponent,\n RoomCommandInputComponentProps,\n RoomCommandListOptions,\n RoomCommandPolicyMetadata,\n RoomCommandPortableSchema,\n RoomCommandResult,\n RoomCommandRiskLevel,\n RoomCommandSurface,\n RoomCommandUiMetadata,\n RoomCommandExecutionContext,\n RoomCommandPredicate,\n} from './CommandSlice';\nexport {\n createCommandCliAdapter,\n createCommandMcpAdapter,\n} from './CommandAdapters';\nexport type {\n CommandCliAdapter,\n CommandCliAdapterOptions,\n CommandMcpAdapter,\n CommandMcpAdapterOptions,\n CommandMcpToolDescriptor,\n} from './CommandAdapters';\n\n// Re-export from @sqlrooms/room-config\n// Values also export their corresponding types automatically (Zod pattern)\nexport {\n BaseDataSource,\n BaseRoomConfig,\n createDefaultBaseRoomConfig,\n DataSource,\n DataSourceTypes,\n DEFAULT_ROOM_TITLE,\n FileDataSource,\n isFileDataSource,\n isSpatialLoadFileOptions,\n isSqlQueryDataSource,\n isUrlDataSource,\n LoadFile,\n LoadFileOptions,\n MAIN_VIEW,\n SpatialLoadFileOptions,\n SpatialLoadOptions,\n SqlQueryDataSource,\n StandardLoadFileOptions,\n StandardLoadOptions,\n UrlDataSource,\n LayoutNodeKey,\n LayoutPanelNode,\n LayoutSplitNode,\n LayoutTabsNode,\n LayoutNode,\n LayoutConfig,\n isLayoutPanelNode,\n isLayoutSplitNode,\n isLayoutTabsNode,\n createDefaultLayout,\n} from '@sqlrooms/room-config';\n\nexport type {LayoutDirection} from '@sqlrooms/room-config';\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sqlrooms/room-store",
|
|
3
|
-
"version": "0.29.0-rc.
|
|
3
|
+
"version": "0.29.0-rc.3",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"access": "public"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@sqlrooms/room-config": "0.29.0-rc.
|
|
22
|
+
"@sqlrooms/room-config": "0.29.0-rc.3",
|
|
23
23
|
"immer": "^11.0.1",
|
|
24
24
|
"zod": "^4.1.8",
|
|
25
25
|
"zustand": "^5.0.8"
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
"typedoc": "typedoc"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@sqlrooms/preset-jest": "0.29.0-rc.
|
|
40
|
+
"@sqlrooms/preset-jest": "0.29.0-rc.3",
|
|
41
41
|
"ts-jest": "^29.4.4"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "cfe98c975d09c59aa8b2f2b01e7ef9fd96bc90b0"
|
|
44
44
|
}
|