@botharness/ui 1.3.1 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/THIRD_PARTY_NOTICES.md +63 -2
- package/dist/index.d.mts +18 -12
- package/dist/index.mjs +40 -2
- package/lib/client.js +134050 -48228
- package/lib/client.js.map +1 -1
- package/package.json +8 -5
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -7,7 +7,7 @@ Third-party works distributed inside this package (inlined into `lib/client.js`
|
|
|
7
7
|
- Package: `blobatar` 2.7.0
|
|
8
8
|
- License: MIT
|
|
9
9
|
- Source: <https://github.com/Alain00/blobatar>
|
|
10
|
-
- Used for: deterministic default avatars generated from a bot slug (
|
|
10
|
+
- Used for: deterministic default avatars generated from a bot slug (generator code is inlined by the client bundle build).
|
|
11
11
|
|
|
12
12
|
```
|
|
13
13
|
MIT License
|
|
@@ -69,7 +69,7 @@ SOFTWARE.
|
|
|
69
69
|
- Package: `lucide` icons (vendored glyph paths; see ADR-0032)
|
|
70
70
|
- License: ISC
|
|
71
71
|
- Source: <https://github.com/lucide-icons/lucide>
|
|
72
|
-
- Used for: Channel sidebar function/settings/check glyphs (`files`, `git-branch`, `messages-square`, `inbox`, `folder-key`, `users`, `settings-2`, `settings`, `monitor`, `globe`, `panels-top-left`, `grip-vertical`, `check`, `eye`, `eye-off`, from `lucide-react@1.46.0`) in `channel-sidebar-icon.tsx`; the `inbox` Activity Center glyph (`InboxIcon` in `src/client/inbox-icon.tsx`) and the `hash` channel glyph (`HashIcon` in `src/client/hash-icon.tsx`, from `lucide-react@1.46.0`); the `git-commit-vertical` Memory commit glyph (`GitCommitIcon` in `src/client/git-commit-icon.tsx`, from `lucide-react@1.46.0`)
|
|
72
|
+
- Used for: Channel sidebar function/settings/check glyphs (`house`, `files`, `git-branch`, `messages-square`, `inbox`, `folder-key`, `users`, `settings-2`, `settings`, `monitor`, `globe`, `panels-top-left`, `grip-vertical`, `check`, `eye`, `eye-off`, `chevron-right`, from `lucide-react@1.46.0`) in `channel-sidebar-icon.tsx`; the `inbox` Activity Center glyph (`InboxIcon` in `src/client/inbox-icon.tsx`) and the `hash` channel glyph (`HashIcon` in `src/client/hash-icon.tsx`, from `lucide-react@1.46.0`); the `git-commit-vertical` Memory commit glyph (`GitCommitIcon` in `src/client/git-commit-icon.tsx`, from `lucide-react@1.46.0`)
|
|
73
73
|
|
|
74
74
|
```
|
|
75
75
|
ISC License
|
|
@@ -177,6 +177,36 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
|
177
177
|
THE SOFTWARE.
|
|
178
178
|
```
|
|
179
179
|
|
|
180
|
+
## dockview
|
|
181
|
+
|
|
182
|
+
- Package: `dockview-react` 8.4.1 with `dockview` and `dockview-core` 8.4.1, locally bundled.
|
|
183
|
+
- Source: <https://github.com/dockview/dockview>
|
|
184
|
+
- Use: the desktop Bot mode dock layout; its stock themes are stripped and the remaining stylesheet is themed with DSH tokens.
|
|
185
|
+
|
|
186
|
+
```
|
|
187
|
+
MIT License
|
|
188
|
+
|
|
189
|
+
Copyright (c) 2021 mathuo
|
|
190
|
+
|
|
191
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
192
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
193
|
+
in the Software without restriction, including without limitation the rights
|
|
194
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
195
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
196
|
+
furnished to do so, subject to the following conditions:
|
|
197
|
+
|
|
198
|
+
The above copyright notice and this permission notice shall be included in all
|
|
199
|
+
copies or substantial portions of the Software.
|
|
200
|
+
|
|
201
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
202
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
203
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
204
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
205
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
206
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
207
|
+
SOFTWARE.
|
|
208
|
+
```
|
|
209
|
+
|
|
180
210
|
## html-to-image
|
|
181
211
|
|
|
182
212
|
- Package: `html-to-image` 1.11.13, locally bundled.
|
|
@@ -206,3 +236,34 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
|
206
236
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
207
237
|
SOFTWARE.
|
|
208
238
|
```
|
|
239
|
+
|
|
240
|
+
## pinyin-pro
|
|
241
|
+
|
|
242
|
+
- Package: `pinyin-pro` 3.29.5
|
|
243
|
+
- License: MIT
|
|
244
|
+
- Source: <https://github.com/zh-lx/pinyin-pro>
|
|
245
|
+
- Used for: matching Chinese conversation and settings names by full pinyin or initials in the quick switcher and roster search (inlined by the client bundle build).
|
|
246
|
+
|
|
247
|
+
```
|
|
248
|
+
MIT License
|
|
249
|
+
|
|
250
|
+
Copyright (c) 2022-present zh-lx
|
|
251
|
+
|
|
252
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
253
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
254
|
+
in the Software without restriction, including without limitation the rights
|
|
255
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
256
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
257
|
+
furnished to do so, subject to the following conditions:
|
|
258
|
+
|
|
259
|
+
The above copyright notice and this permission notice shall be included in all
|
|
260
|
+
copies or substantial portions of the Software.
|
|
261
|
+
|
|
262
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
263
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
264
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
265
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
266
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
267
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
268
|
+
SOFTWARE.
|
|
269
|
+
```
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//#region node_modules/.pnpm/@deepseek-ai+cosmokit@1.8.
|
|
1
|
+
//#region node_modules/.pnpm/@deepseek-ai+cosmokit@1.8.6/node_modules/@deepseek-ai/cosmokit/lib/types/types.d.ts
|
|
2
2
|
declare function isArrayBufferLike(value: any): value is ArrayBufferLike;
|
|
3
3
|
declare function isArrayBufferSource(value: any): value is Binary.Source;
|
|
4
4
|
/** Binary source detection and base64/hex conversion helpers. */
|
|
@@ -13,7 +13,7 @@ declare namespace Binary {
|
|
|
13
13
|
function fromHex(source: string): ArrayBuffer;
|
|
14
14
|
}
|
|
15
15
|
//#endregion
|
|
16
|
-
//#region node_modules/.pnpm/@deepseek-ai+cosmokit@1.8.
|
|
16
|
+
//#region node_modules/.pnpm/@deepseek-ai+cosmokit@1.8.6/node_modules/@deepseek-ai/cosmokit/lib/types/misc.d.ts
|
|
17
17
|
/** String/symbol keyed dictionary type. */
|
|
18
18
|
type Dict<T = any, K extends string | symbol = string> = { [key in K]: T; };
|
|
19
19
|
/** Wrap a value in `Promise`, preserving the resolved type of existing promises. */
|
|
@@ -21,7 +21,7 @@ type Promisify<T> = Promise<T extends Promise<infer S> ? S : T>;
|
|
|
21
21
|
/** Accept a value or promise unless the value type is already promise-like. */
|
|
22
22
|
type Awaitable<T> = [T] extends [Promise<unknown>] ? T : T | Promise<T>;
|
|
23
23
|
//#endregion
|
|
24
|
-
//#region node_modules/.pnpm/@deepseek-ai+cosmokit@1.8.
|
|
24
|
+
//#region node_modules/.pnpm/@deepseek-ai+cosmokit@1.8.6/node_modules/@deepseek-ai/cosmokit/lib/types/volatile.d.ts
|
|
25
25
|
/** Shared config references used by schema validators and plugin runtimes. */
|
|
26
26
|
/** Recursively readonly data returned by a volatile config reference. */
|
|
27
27
|
type VolatileSnapshot<T> = T extends object ? { readonly [K in keyof T]: VolatileSnapshot<T[K]>; } : T;
|
|
@@ -108,7 +108,7 @@ declare namespace StandardSchemaV1 {
|
|
|
108
108
|
type InferOutput<Schema extends StandardTypedV1> = StandardTypedV1.InferOutput<Schema>;
|
|
109
109
|
}
|
|
110
110
|
//#endregion
|
|
111
|
-
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.
|
|
111
|
+
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.5_@deepseek-ai+cordis-plugin-include@1.0.10_@deepseek-ai+cordis-plugin-loader@1.0.6/node_modules/@deepseek-ai/cordis/lib/types/utils.d.ts
|
|
112
112
|
/** Ordered collection of disposable values with O(1) deletion by value. */
|
|
113
113
|
declare class DisposableList<T extends WeakKey> {
|
|
114
114
|
private sn;
|
|
@@ -141,7 +141,7 @@ declare const symbols: {
|
|
|
141
141
|
resolveConfig: typeof Service.resolveConfig;
|
|
142
142
|
};
|
|
143
143
|
//#endregion
|
|
144
|
-
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.
|
|
144
|
+
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.5_@deepseek-ai+cordis-plugin-include@1.0.10_@deepseek-ai+cordis-plugin-loader@1.0.6/node_modules/@deepseek-ai/cordis/lib/types/registry.d.ts
|
|
145
145
|
/**
|
|
146
146
|
* Service dependency declaration accepted by plugins and the `@Inject`
|
|
147
147
|
* decorator.
|
|
@@ -333,7 +333,7 @@ declare class RegistryService {
|
|
|
333
333
|
plugin(plugin: Plugin, config?: any, getOuterStack?: () => string[]): Fiber & PromiseLike<Fiber>;
|
|
334
334
|
}
|
|
335
335
|
//#endregion
|
|
336
|
-
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.
|
|
336
|
+
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.5_@deepseek-ai+cordis-plugin-include@1.0.10_@deepseek-ai+cordis-plugin-loader@1.0.6/node_modules/@deepseek-ai/cordis/lib/types/reflect.d.ts
|
|
337
337
|
declare module './context.ts' {
|
|
338
338
|
interface Context {
|
|
339
339
|
/**
|
|
@@ -517,7 +517,7 @@ declare class ReflectService {
|
|
|
517
517
|
bind<T extends Function>(callback: T): T;
|
|
518
518
|
}
|
|
519
519
|
//#endregion
|
|
520
|
-
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.
|
|
520
|
+
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.5_@deepseek-ai+cordis-plugin-include@1.0.10_@deepseek-ai+cordis-plugin-loader@1.0.6/node_modules/@deepseek-ai/cordis/lib/types/fiber.d.ts
|
|
521
521
|
declare module './context.ts' {
|
|
522
522
|
interface Context extends Pick<Fiber, 'effect'> {
|
|
523
523
|
/** The fiber (plugin runtime instance) that owns this context. */
|
|
@@ -678,7 +678,7 @@ declare class Fiber {
|
|
|
678
678
|
update(config: any, noSave?: boolean): void;
|
|
679
679
|
}
|
|
680
680
|
//#endregion
|
|
681
|
-
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.
|
|
681
|
+
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.5_@deepseek-ai+cordis-plugin-include@1.0.10_@deepseek-ai+cordis-plugin-loader@1.0.6/node_modules/@deepseek-ai/cordis/lib/types/events.d.ts
|
|
682
682
|
/** Extract the parameter tuple from a function type. */
|
|
683
683
|
type Parameters<F> = F extends ((...args: infer P) => any) ? P : never;
|
|
684
684
|
/** Extract the return type from a function type. */
|
|
@@ -909,7 +909,7 @@ interface Events {
|
|
|
909
909
|
'internal/dispatch'(mode: DispatchMode, name: string, args: any[], thisArg: any): void;
|
|
910
910
|
}
|
|
911
911
|
//#endregion
|
|
912
|
-
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.
|
|
912
|
+
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.5_@deepseek-ai+cordis-plugin-include@1.0.10_@deepseek-ai+cordis-plugin-loader@1.0.6/node_modules/@deepseek-ai/cordis/lib/types/logger.d.ts
|
|
913
913
|
declare module './context.ts' {
|
|
914
914
|
interface Intercept {
|
|
915
915
|
logger: LoggerService.Intercept;
|
|
@@ -997,7 +997,7 @@ declare class LoggerService {
|
|
|
997
997
|
[symbols.invoke](name?: string): Logger;
|
|
998
998
|
}
|
|
999
999
|
//#endregion
|
|
1000
|
-
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.
|
|
1000
|
+
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.5_@deepseek-ai+cordis-plugin-include@1.0.10_@deepseek-ai+cordis-plugin-loader@1.0.6/node_modules/@deepseek-ai/cordis/lib/types/context.d.ts
|
|
1001
1001
|
/**
|
|
1002
1002
|
* Public shape of a Cordis context.
|
|
1003
1003
|
*
|
|
@@ -1092,7 +1092,7 @@ declare class Context {
|
|
|
1092
1092
|
intercept(name: string, config: any): this;
|
|
1093
1093
|
}
|
|
1094
1094
|
//#endregion
|
|
1095
|
-
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.
|
|
1095
|
+
//#region node_modules/.pnpm/@deepseek-ai+cordis@4.0.5_@deepseek-ai+cordis-plugin-include@1.0.10_@deepseek-ai+cordis-plugin-loader@1.0.6/node_modules/@deepseek-ai/cordis/lib/types/service.d.ts
|
|
1096
1096
|
/**
|
|
1097
1097
|
* Base class for services that expose a named API on `ctx`.
|
|
1098
1098
|
*
|
|
@@ -1146,7 +1146,7 @@ declare abstract class Service<out T = never> {
|
|
|
1146
1146
|
static [Symbol.hasInstance](instance: any): boolean;
|
|
1147
1147
|
}
|
|
1148
1148
|
//#endregion
|
|
1149
|
-
//#region node_modules/.pnpm/@deepseek-ai+schemastery@3.18.
|
|
1149
|
+
//#region node_modules/.pnpm/@deepseek-ai+schemastery@3.18.5/node_modules/@deepseek-ai/schemastery/lib/types/index.d.ts
|
|
1150
1150
|
declare const kSchema: unique symbol;
|
|
1151
1151
|
declare global {
|
|
1152
1152
|
namespace Schemastery {
|
|
@@ -1352,18 +1352,22 @@ declare const Schema: Schemastery.Static;
|
|
|
1352
1352
|
//#endregion
|
|
1353
1353
|
//#region packages/client/src/bot-mode-settings.d.ts
|
|
1354
1354
|
declare const BOT_MODE_SORT_MODES: readonly ['updated', 'manual'];
|
|
1355
|
+
declare const BOT_MODE_SEND_KEYS: readonly ['enter', 'shift-enter', 'mod-enter'];
|
|
1355
1356
|
declare const BOT_MODE_MOTION_PREFERENCES: readonly ['system', 'reduce', 'full'];
|
|
1356
1357
|
declare const BOT_MODE_ICONS: readonly ['mascot', 'simple', 'blob', 'bot'];
|
|
1357
1358
|
type BotModeSortMode = (typeof BOT_MODE_SORT_MODES)[number];
|
|
1358
1359
|
type BotModeMotionPreference = (typeof BOT_MODE_MOTION_PREFERENCES)[number];
|
|
1359
1360
|
type BotModeIcon = (typeof BOT_MODE_ICONS)[number];
|
|
1361
|
+
type BotModeSendKey = (typeof BOT_MODE_SEND_KEYS)[number];
|
|
1360
1362
|
interface BotModeSettings {
|
|
1361
1363
|
assignmentConcurrencyLimit?: number;
|
|
1362
1364
|
autoAcceptGroupInvites?: boolean;
|
|
1363
1365
|
developerMode: boolean;
|
|
1364
1366
|
showBotSessions?: boolean;
|
|
1367
|
+
showApprovalReviewSessions?: boolean;
|
|
1365
1368
|
motionPreference: BotModeMotionPreference;
|
|
1366
1369
|
botIcon: BotModeIcon;
|
|
1370
|
+
sendKey?: BotModeSendKey;
|
|
1367
1371
|
sortMode: BotModeSortMode;
|
|
1368
1372
|
sortModes: Record<string, BotModeSortMode>;
|
|
1369
1373
|
}
|
|
@@ -1375,8 +1379,10 @@ export interface Config {
|
|
|
1375
1379
|
autoAcceptGroupInvites: Volatile<boolean>;
|
|
1376
1380
|
developerMode: Volatile<boolean>;
|
|
1377
1381
|
showBotSessions: Volatile<boolean>;
|
|
1382
|
+
showApprovalReviewSessions: Volatile<boolean>;
|
|
1378
1383
|
botIcon: Volatile<BotModeIcon>;
|
|
1379
1384
|
motionPreference: Volatile<BotModeMotionPreference>;
|
|
1385
|
+
sendKey: Volatile<BotModeSendKey>;
|
|
1380
1386
|
sortMode: Volatile<BotModeSortMode>;
|
|
1381
1387
|
sortModes: Volatile<Record<string, BotModeSortMode>>;
|
|
1382
1388
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import { readFileSync, realpathSync } from "node:fs";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
3
|
+
//#region node_modules/.pnpm/@deepseek-ai+cosmokit@1.8.6/node_modules/@deepseek-ai/cosmokit/lib/index.js
|
|
2
4
|
/** Return true when a value is `null` or `undefined`. */
|
|
3
5
|
function isNullable(value) {
|
|
4
6
|
return value === null || value === void 0;
|
|
@@ -252,7 +254,7 @@ var Time;
|
|
|
252
254
|
Time.template = template;
|
|
253
255
|
})(Time || (Time = {}));
|
|
254
256
|
//#endregion
|
|
255
|
-
//#region node_modules/.pnpm/@deepseek-ai+schemastery@3.18.
|
|
257
|
+
//#region node_modules/.pnpm/@deepseek-ai+schemastery@3.18.5/node_modules/@deepseek-ai/schemastery/lib/index.mjs
|
|
256
258
|
const kSchema = Symbol.for("schemastery");
|
|
257
259
|
const kValidationError = Symbol.for("ValidationError");
|
|
258
260
|
globalThis.__schemastery_index__ ??= 0;
|
|
@@ -885,8 +887,40 @@ defineMethod("transform", [
|
|
|
885
887
|
"preserve"
|
|
886
888
|
], ({ inner }, isInner) => inner.toString(isInner));
|
|
887
889
|
//#endregion
|
|
890
|
+
//#region packages/core/src/release/component.ts
|
|
891
|
+
const componentKey = Symbol.for("botharness.release-component");
|
|
892
|
+
Object.freeze({
|
|
893
|
+
"botharness-core": "@botharness/core",
|
|
894
|
+
"botharness-client": "@botharness/ui",
|
|
895
|
+
"botharness-browser": "@botharness/browser",
|
|
896
|
+
"botharness-computer": "@botharness/computer"
|
|
897
|
+
});
|
|
898
|
+
function stampReleaseComponent(callback, moduleUrl) {
|
|
899
|
+
let snapshot;
|
|
900
|
+
try {
|
|
901
|
+
const manifest = JSON.parse(readFileSync(new URL("../package.json", moduleUrl), "utf8"));
|
|
902
|
+
if (typeof manifest === "object" && manifest !== null && !Array.isArray(manifest)) {
|
|
903
|
+
const value = manifest;
|
|
904
|
+
if (typeof value["name"] === "string" && typeof value["version"] === "string") snapshot = Object.freeze({
|
|
905
|
+
name: value["name"],
|
|
906
|
+
version: value["version"],
|
|
907
|
+
private: value["private"] === true,
|
|
908
|
+
directory: realpathSync(fileURLToPath(new URL("../", moduleUrl)))
|
|
909
|
+
});
|
|
910
|
+
}
|
|
911
|
+
} catch {
|
|
912
|
+
snapshot = void 0;
|
|
913
|
+
}
|
|
914
|
+
Object.defineProperty(callback, componentKey, { value: snapshot });
|
|
915
|
+
}
|
|
916
|
+
//#endregion
|
|
888
917
|
//#region packages/client/src/bot-mode-settings.ts
|
|
889
918
|
const BOT_MODE_SORT_MODES = ["updated", "manual"];
|
|
919
|
+
const BOT_MODE_SEND_KEYS = [
|
|
920
|
+
"enter",
|
|
921
|
+
"shift-enter",
|
|
922
|
+
"mod-enter"
|
|
923
|
+
];
|
|
890
924
|
const BOT_MODE_MOTION_PREFERENCES = [
|
|
891
925
|
"system",
|
|
892
926
|
"reduce",
|
|
@@ -901,16 +935,20 @@ const BOT_MODE_ICONS = [
|
|
|
901
935
|
const DEFAULT_BOT_MODE_SORT = "updated";
|
|
902
936
|
const DEFAULT_BOT_MODE_MOTION = "system";
|
|
903
937
|
const DEFAULT_BOT_MODE_ICON = "mascot";
|
|
938
|
+
const DEFAULT_BOT_MODE_SEND_KEY = "enter";
|
|
904
939
|
//#endregion
|
|
905
940
|
//#region packages/client/src/index.ts
|
|
906
941
|
const name = "botharness-client";
|
|
942
|
+
stampReleaseComponent(apply, import.meta.url);
|
|
907
943
|
const Config = Schema.object({
|
|
908
944
|
assignmentConcurrencyLimit: Schema.number().min(1).max(32).step(1).default(8).volatile(),
|
|
909
945
|
autoAcceptGroupInvites: Schema.boolean().default(true).volatile(),
|
|
910
946
|
developerMode: Schema.boolean().default(false).volatile(),
|
|
911
947
|
showBotSessions: Schema.boolean().default(true).volatile(),
|
|
948
|
+
showApprovalReviewSessions: Schema.boolean().default(false).volatile(),
|
|
912
949
|
botIcon: Schema.union([...BOT_MODE_ICONS]).default(DEFAULT_BOT_MODE_ICON).volatile(),
|
|
913
950
|
motionPreference: Schema.union([...BOT_MODE_MOTION_PREFERENCES]).default(DEFAULT_BOT_MODE_MOTION).volatile(),
|
|
951
|
+
sendKey: Schema.union([...BOT_MODE_SEND_KEYS]).default(DEFAULT_BOT_MODE_SEND_KEY).volatile(),
|
|
914
952
|
sortMode: Schema.union([...BOT_MODE_SORT_MODES]).default(DEFAULT_BOT_MODE_SORT).volatile(),
|
|
915
953
|
sortModes: Schema.dict(Schema.union([...BOT_MODE_SORT_MODES])).default({}).volatile()
|
|
916
954
|
});
|