diff --git a/.oxlintrc.json b/.oxlintrc.json index 9ac7e25f2..339cfc8b6 100644 --- a/.oxlintrc.json +++ b/.oxlintrc.json @@ -15,7 +15,6 @@ "oxc/no-async-endpoint-handlers": "off", "oxc/no-map-spread": "off", "typescript/no-extraneous-class": "off", - "typescript/no-redundant-type-constituents": "off", "typescript/no-unnecessary-template-expression": "off", "typescript/no-unsafe-type-assertion": "off", "unicorn/consistent-function-scoping": "off", diff --git a/ui/src/ui/app-view-state.ts b/ui/src/ui/app-view-state.ts index 7ccbf59d4..9e8d44a0a 100644 --- a/ui/src/ui/app-view-state.ts +++ b/ui/src/ui/app-view-state.ts @@ -80,7 +80,7 @@ export type AppViewState = { configApplying: boolean; updateRunning: boolean; configSnapshot: ConfigSnapshot | null; - configSchema: unknown | null; + configSchema: unknown; configSchemaLoading: boolean; configUiHints: Record; configForm: Record | null; @@ -130,7 +130,7 @@ export type AppViewState = { debugStatus: StatusSummary | null; debugHealth: HealthSnapshot | null; debugModels: unknown[]; - debugHeartbeat: unknown | null; + debugHeartbeat: unknown; debugCallMethod: string; debugCallParams: string; debugCallResult: string | null; diff --git a/ui/src/ui/app.ts b/ui/src/ui/app.ts index 15d6c564f..8b9643b43 100644 --- a/ui/src/ui/app.ts +++ b/ui/src/ui/app.ts @@ -164,7 +164,7 @@ export class OpenClawApp extends LitElement { @state() updateRunning = false; @state() applySessionKey = this.settings.lastActiveSessionKey; @state() configSnapshot: ConfigSnapshot | null = null; - @state() configSchema: unknown | null = null; + @state() configSchema: unknown = null; @state() configSchemaVersion: string | null = null; @state() configSchemaLoading = false; @state() configUiHints: ConfigUiHints = {}; @@ -225,7 +225,7 @@ export class OpenClawApp extends LitElement { @state() debugStatus: StatusSummary | null = null; @state() debugHealth: HealthSnapshot | null = null; @state() debugModels: unknown[] = []; - @state() debugHeartbeat: unknown | null = null; + @state() debugHeartbeat: unknown = null; @state() debugCallMethod = ""; @state() debugCallParams = "{}"; @state() debugCallResult: string | null = null; diff --git a/ui/src/ui/controllers/config.ts b/ui/src/ui/controllers/config.ts index 080c48d07..da0cb19dc 100644 --- a/ui/src/ui/controllers/config.ts +++ b/ui/src/ui/controllers/config.ts @@ -20,7 +20,7 @@ export type ConfigState = { configApplying: boolean; updateRunning: boolean; configSnapshot: ConfigSnapshot | null; - configSchema: unknown | null; + configSchema: unknown; configSchemaVersion: string | null; configSchemaLoading: boolean; configUiHints: ConfigUiHints; diff --git a/ui/src/ui/controllers/debug.ts b/ui/src/ui/controllers/debug.ts index aa467fe24..481e2c81b 100644 --- a/ui/src/ui/controllers/debug.ts +++ b/ui/src/ui/controllers/debug.ts @@ -8,7 +8,7 @@ export type DebugState = { debugStatus: StatusSummary | null; debugHealth: HealthSnapshot | null; debugModels: unknown[]; - debugHeartbeat: unknown | null; + debugHeartbeat: unknown; debugCallMethod: string; debugCallParams: string; debugCallResult: string | null; diff --git a/ui/src/ui/views/channels.config.ts b/ui/src/ui/views/channels.config.ts index 0ee5abd49..6ee0e1362 100644 --- a/ui/src/ui/views/channels.config.ts +++ b/ui/src/ui/views/channels.config.ts @@ -6,7 +6,7 @@ import { analyzeConfigSchema, renderNode, schemaType, type JsonSchema } from "./ type ChannelConfigFormProps = { channelId: string; configValue: Record | null; - schema: unknown | null; + schema: unknown; uiHints: ConfigUiHints; disabled: boolean; onPatch: (path: Array, value: unknown) => void; diff --git a/ui/src/ui/views/channels.types.ts b/ui/src/ui/views/channels.types.ts index fa1a9094b..844445390 100644 --- a/ui/src/ui/views/channels.types.ts +++ b/ui/src/ui/views/channels.types.ts @@ -26,7 +26,7 @@ export type ChannelsProps = { whatsappQrDataUrl: string | null; whatsappConnected: boolean | null; whatsappBusy: boolean; - configSchema: unknown | null; + configSchema: unknown; configSchemaLoading: boolean; configForm: Record | null; configUiHints: ConfigUiHints; diff --git a/ui/src/ui/views/config-form.node.ts b/ui/src/ui/views/config-form.node.ts index b2e9e97b5..ee4336ff6 100644 --- a/ui/src/ui/views/config-form.node.ts +++ b/ui/src/ui/views/config-form.node.ts @@ -132,7 +132,7 @@ export function renderNode(params: { } // Check if it's a set of literal values (enum-like) - const extractLiteral = (v: JsonSchema): unknown | undefined => { + const extractLiteral = (v: JsonSchema): unknown => { if (v.const !== undefined) { return v.const; } diff --git a/ui/src/ui/views/config.ts b/ui/src/ui/views/config.ts index 9b3f3ac3d..07aebfd77 100644 --- a/ui/src/ui/views/config.ts +++ b/ui/src/ui/views/config.ts @@ -13,7 +13,7 @@ export type ConfigProps = { applying: boolean; updating: boolean; connected: boolean; - schema: unknown | null; + schema: unknown; schemaLoading: boolean; uiHints: ConfigUiHints; formMode: "form" | "raw"; @@ -450,12 +450,23 @@ export function renderConfig(props: ConfigProps) {