@nocobase/plugin-ai 3.0.0-alpha.5 → 3.0.0-alpha.7
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/ai/docs/nocobase/ai/ai-quick-start.md +1 -1
- package/dist/ai/docs/nocobase/ai/claude-code/index.md +1 -1
- package/dist/ai/docs/nocobase/ai/codex/index.md +1 -1
- package/dist/ai/docs/nocobase/ai/hermes-agent/index.md +1 -1
- package/dist/ai/docs/nocobase/ai/index.md +6 -25
- package/dist/ai/docs/nocobase/ai/install-nocobase-app.md +1 -1
- package/dist/ai/docs/nocobase/ai/openclaw/index.md +1 -1
- package/dist/ai/docs/nocobase/ai/opencode/index.md +1 -1
- package/dist/ai/docs/nocobase/ai/quick-start.mdx +9 -7
- package/dist/ai/docs/nocobase/ai/workbuddy/index.md +1 -1
- package/dist/ai/docs/nocobase/ai-builder/ai-portal/agent-workflow.md +153 -0
- package/dist/ai/docs/nocobase/ai-builder/ai-portal/components.md +134 -0
- package/dist/ai/docs/nocobase/ai-builder/ai-portal/deploy.md +164 -0
- package/dist/ai/docs/nocobase/ai-builder/ai-portal/index.md +144 -0
- package/dist/ai/docs/nocobase/ai-builder/ai-portal/project-structure.md +128 -0
- package/dist/ai/docs/nocobase/ai-builder/index.md +73 -32
- package/dist/ai/docs/nocobase/ai-builder/ui-builder.md +2 -0
- package/dist/ai/docs/nocobase/ai-dev/index.md +2 -1
- package/dist/ai/docs/nocobase/api/cli/index.md +1 -1
- package/dist/ai/docs/nocobase/api/cli/portal/config.md +5 -3
- package/dist/ai/docs/nocobase/api/cli/portal/create.md +3 -6
- package/dist/ai/docs/nocobase/api/cli/portal/deploy.md +1 -1
- package/dist/ai/docs/nocobase/api/cli/portal/destroy.md +6 -4
- package/dist/ai/docs/nocobase/api/cli/portal/dev.md +21 -9
- package/dist/ai/docs/nocobase/api/cli/portal/index.md +19 -13
- package/dist/ai/docs/nocobase/api/cli/portal/info.md +3 -3
- package/dist/ai/docs/nocobase/api/cli/portal/list.md +5 -5
- package/dist/ai/docs/nocobase/api/cli/portal/pull.md +11 -1
- package/dist/ai/docs/nocobase/api/cli/portal/push.md +1 -1
- package/dist/ai/docs/nocobase/nocobase-cli/installation/cli.md +1 -1
- package/dist/client/244.da833c04c5b64be4.js +10 -0
- package/dist/client/index.js +1 -1
- package/dist/client-v2/244.7451d5c4713eced3.js +10 -0
- package/dist/client-v2/index.js +1 -1
- package/dist/client-v2/pages/EmployeesPage.d.ts +3 -0
- package/dist/externalVersion.js +15 -15
- package/dist/locale/en-US.json +3 -0
- package/dist/locale/zh-CN.json +3 -0
- package/dist/node_modules/@langchain/mistralai/package.json +1 -1
- package/dist/node_modules/@langchain/xai/package.json +1 -1
- package/dist/node_modules/fs-extra/package.json +1 -1
- package/dist/node_modules/jsonrepair/package.json +1 -1
- package/dist/node_modules/just-bash/package.json +1 -1
- package/dist/node_modules/nodejs-snowflake/package.json +1 -1
- package/dist/node_modules/openai/package.json +1 -1
- package/dist/node_modules/zod/package.json +1 -1
- package/dist/server/ai-employees/ai-conversations.d.ts +2 -1
- package/dist/server/ai-employees/ai-conversations.js +2 -0
- package/dist/server/collections/ai-conversations.js +5 -0
- package/dist/server/migrations/20260803185305-migrate-ai-conversations-portal-name.d.ts +14 -0
- package/dist/server/migrations/20260803185305-migrate-ai-conversations-portal-name.js +52 -0
- package/dist/server/resource/aiConversations.js +14 -2
- package/package.json +2 -2
- package/dist/client/244.145eb763339a109b.js +0 -10
- package/dist/client-v2/244.64cb9d3ee27dcdc6.js +0 -10
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "nb portal dev"
|
|
3
|
-
description: "nb portal dev command reference: start a
|
|
4
|
-
keywords: "nb portal dev,NocoBase CLI,Portal"
|
|
3
|
+
description: "nb portal dev command reference: start development mode for a Portal's local source directory."
|
|
4
|
+
keywords: "nb portal dev,NocoBase CLI,Portal,development mode,local development"
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# nb portal dev
|
|
8
8
|
|
|
9
|
-
Start development mode for the specified portal
|
|
9
|
+
Start development mode for the specified Portal's local source directory. It is normally used after [`nb portal create`](./create.md) or [`nb portal pull`](./pull.md).
|
|
10
|
+
|
|
11
|
+
It refreshes `.env` and `.env.local` in the local source directory, then runs `pnpm dev` there.
|
|
10
12
|
|
|
11
13
|
## Usage
|
|
12
14
|
|
|
@@ -18,22 +20,32 @@ nb portal dev <portal> [flags]
|
|
|
18
20
|
|
|
19
21
|
| Flag | Type | Description |
|
|
20
22
|
| --- | --- | --- |
|
|
21
|
-
| `<portal>` | string | Portal name or slug
|
|
22
|
-
| `--env`, `-e` | string | CLI env name. If omitted, the current env is used
|
|
23
|
-
| `--yes`, `-y` | boolean | Skip
|
|
23
|
+
| `<portal>` | string | Portal name or slug |
|
|
24
|
+
| `--env`, `-e` | string | CLI env name. If omitted, the current env is used |
|
|
25
|
+
| `--yes`, `-y` | boolean | Skip the interactive confirmation when an explicit `--env` differs from the current env |
|
|
24
26
|
|
|
25
27
|
## Examples
|
|
26
28
|
|
|
29
|
+
Start development mode for a Portal in the current env:
|
|
30
|
+
|
|
27
31
|
```bash
|
|
28
32
|
nb portal dev customer
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Start development mode for a Portal in a specified env:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
29
38
|
nb portal dev customer --env dev --yes
|
|
30
39
|
```
|
|
31
40
|
|
|
32
41
|
## Notes
|
|
33
42
|
|
|
34
|
-
|
|
43
|
+
`dev` starts the dev server from the Portal's local source directory. It doesn't create a Portal record, and it doesn't pull remote source; if the local source directory doesn't exist, use [`nb portal create`](./create.md) or [`nb portal pull`](./pull.md) first.
|
|
44
|
+
|
|
45
|
+
The local source directory must contain `package.json`. `ssh` envs don't support starting Portal development mode yet.
|
|
35
46
|
|
|
36
47
|
## Related Commands
|
|
37
48
|
|
|
38
|
-
- [`nb portal`](./
|
|
39
|
-
- [`nb
|
|
49
|
+
- [`nb portal create`](./create.md)
|
|
50
|
+
- [`nb portal pull`](./pull.md)
|
|
51
|
+
- [`nb portal deploy`](./deploy.md)
|
|
@@ -20,14 +20,14 @@ nb portal <command>
|
|
|
20
20
|
|
|
21
21
|
| Command | Description |
|
|
22
22
|
| --- | --- |
|
|
23
|
-
| [`nb portal config`](./config.md) | Update
|
|
24
|
-
| [`nb portal create`](./create.md) | Create a local portal from a template
|
|
25
|
-
| [`nb portal deploy`](./deploy.md) | Build and deploy
|
|
26
|
-
| [`nb portal destroy`](./destroy.md) |
|
|
23
|
+
| [`nb portal config`](./config.md) | Update portal source configuration |
|
|
24
|
+
| [`nb portal create`](./create.md) | Create a local AI portal from a template |
|
|
25
|
+
| [`nb portal deploy`](./deploy.md) | Build and deploy a portal |
|
|
26
|
+
| [`nb portal destroy`](./destroy.md) | Destroy a portal record and deployed files |
|
|
27
27
|
| [`nb portal dev`](./dev.md) | Start development mode for the specified portal |
|
|
28
|
-
| [`nb portal info`](./info.md) | Show
|
|
29
|
-
| [`nb portal list`](./list.md) | List portal records and
|
|
30
|
-
| [`nb portal pull`](./pull.md) | Pull portal source
|
|
28
|
+
| [`nb portal info`](./info.md) | Show portal record and local file details |
|
|
29
|
+
| [`nb portal list`](./list.md) | List portal records and development paths |
|
|
30
|
+
| [`nb portal pull`](./pull.md) | Pull portal source into local files |
|
|
31
31
|
| [`nb portal push`](./push.md) | Push local portal source changes to source storage |
|
|
32
32
|
|
|
33
33
|
## Typical Flow
|
|
@@ -75,7 +75,7 @@ nb portal push customer -e dev --yes --message "Move customer portal source to G
|
|
|
75
75
|
|
|
76
76
|
## source storage
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
Portal source storage is stored in the remote portal record options:
|
|
79
79
|
|
|
80
80
|
| Mode | Description |
|
|
81
81
|
| --- | --- |
|
|
@@ -84,7 +84,7 @@ When creating a portal, choose where the source code is managed:
|
|
|
84
84
|
|
|
85
85
|
For quick creation and development, the default `nocobase` storage is usually enough. Use `git` when the portal source should be reviewed, versioned, or built through an existing team workflow.
|
|
86
86
|
|
|
87
|
-
|
|
87
|
+
`nb portal config` updates source storage and Git settings in the remote portal record. The development workspace path is stored separately in the CLI env config as `portals.<portal>.path`, maintained by `create`, `pull --path`, or `config --path`.
|
|
88
88
|
|
|
89
89
|
## Env Types
|
|
90
90
|
|
|
@@ -92,15 +92,21 @@ Source configuration is written to `portal.config.json` in the local workspace.
|
|
|
92
92
|
|
|
93
93
|
| Mode | Description |
|
|
94
94
|
| --- | --- |
|
|
95
|
-
| `local` | The workspace and app storage are on the current machine.
|
|
96
|
-
| `docker` | The workspace is shared with the app through a Docker volume.
|
|
95
|
+
| `local` | The workspace and app storage are on the current machine. `pull` writes source to the development path, and `deploy` builds from that path before syncing deployment output. |
|
|
96
|
+
| `docker` | The workspace is shared with the app through a Docker volume. `pull` writes source to the development path, and `deploy` builds from that path before syncing deployment output. |
|
|
97
97
|
| `http` | Source and deployment output are synced through APIs. `pull` downloads a source archive, and `push` uploads one. |
|
|
98
98
|
|
|
99
99
|
`ssh` envs do not support portal management in the current version.
|
|
100
100
|
|
|
101
|
-
##
|
|
101
|
+
## Development And Deployment Paths
|
|
102
102
|
|
|
103
|
-
|
|
103
|
+
Portal development workspaces are created under the current working directory by default:
|
|
104
|
+
|
|
105
|
+
```text
|
|
106
|
+
./<portal>
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Use `--path` with `create`, `pull`, or `config` to choose a different development path. Deployment output is still stored under the target app storage:
|
|
104
110
|
|
|
105
111
|
```text
|
|
106
112
|
<storagePath>/portals/<app>/<portal>
|
|
@@ -21,19 +21,19 @@ nb portal info <portal> [flags]
|
|
|
21
21
|
| `<portal>` | string | Portal name or slug. |
|
|
22
22
|
| `--env`, `-e` | string | CLI env name. If omitted, the current env is used. |
|
|
23
23
|
| `--yes`, `-y` | boolean | Skip cross-env confirmation. |
|
|
24
|
-
| `--json-output`, `-j` | boolean | Print portal details as JSON. |
|
|
24
|
+
| `--json-output`, `--json`, `-j` | boolean | Print portal details as JSON. |
|
|
25
25
|
|
|
26
26
|
## Examples
|
|
27
27
|
|
|
28
28
|
```bash
|
|
29
29
|
nb portal info customer
|
|
30
30
|
nb portal info customer --env dev --yes
|
|
31
|
-
nb portal info customer --json
|
|
31
|
+
nb portal info customer --json
|
|
32
32
|
```
|
|
33
33
|
|
|
34
34
|
## Notes
|
|
35
35
|
|
|
36
|
-
Text output includes name, URL, portal type,
|
|
36
|
+
Text output includes name, URL, portal type, development path, deployment path, and enabled status. `--json-output` and its alias `--json` print `name`, `url`, `portalType`, `developmentPath`, `deploymentPath`, `enabled`, `isDefault`, and `sourceStorage`. You can query by `routeName` or `uid`.
|
|
37
37
|
|
|
38
38
|
## Related Commands
|
|
39
39
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "nb portal list"
|
|
3
|
-
description: "nb portal list command reference: list portal records and
|
|
3
|
+
description: "nb portal list command reference: list portal records and development paths."
|
|
4
4
|
keywords: "nb portal list,NocoBase CLI,Portal"
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# nb portal list
|
|
8
8
|
|
|
9
|
-
List portal records and
|
|
9
|
+
List portal records and development paths
|
|
10
10
|
|
|
11
11
|
## Usage
|
|
12
12
|
|
|
@@ -20,19 +20,19 @@ nb portal list [flags]
|
|
|
20
20
|
| --- | --- | --- |
|
|
21
21
|
| `--env`, `-e` | string | CLI env name. If omitted, the current env is used. |
|
|
22
22
|
| `--yes`, `-y` | boolean | Skip cross-env confirmation. |
|
|
23
|
-
| `--json-output`, `-j` | boolean | Print portal records as JSON. |
|
|
23
|
+
| `--json-output`, `--json`, `-j` | boolean | Print portal records as JSON. |
|
|
24
24
|
|
|
25
25
|
## Examples
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
28
|
nb portal list
|
|
29
29
|
nb portal list --env dev --yes
|
|
30
|
-
nb portal list --json
|
|
30
|
+
nb portal list --json
|
|
31
31
|
```
|
|
32
32
|
|
|
33
33
|
## Notes
|
|
34
34
|
|
|
35
|
-
The list shows name, URL, portal type, source storage,
|
|
35
|
+
The list shows name, URL, portal type, source storage, development path, enabled status, and default status. `--json-output` and its alias `--json` print `name`, `url`, `portalType`, `developmentPath`, `deploymentPath`, `enabled`, `isDefault`, and `sourceStorage`.
|
|
36
36
|
|
|
37
37
|
## Related Commands
|
|
38
38
|
|
|
@@ -22,6 +22,10 @@ nb portal pull <portal> [flags]
|
|
|
22
22
|
| `--env`, `-e` | string | CLI env name. If omitted, the current env is used. |
|
|
23
23
|
| `--yes`, `-y` | boolean | Skip cross-env confirmation. |
|
|
24
24
|
| `--force` | boolean | Delete the existing local workspace and pull it again. |
|
|
25
|
+
| `--path` | string | Portal workspace directory. Defaults to the saved path, then `./<portal>`. |
|
|
26
|
+
| `--git-repo` | string | Temporarily pull source from this Git repository without updating the portal source configuration. |
|
|
27
|
+
| `--git-branch` | string | Git branch for the temporary `--git-repo` pull. Defaults to `main`. |
|
|
28
|
+
| `--git-path` | string | Directory inside the temporary Git repository. Defaults to the repository root (`.`). |
|
|
25
29
|
| `--install` / `--no-install` | boolean | Run `pnpm install` after pulling source. Enabled by default. |
|
|
26
30
|
|
|
27
31
|
## Examples
|
|
@@ -29,13 +33,19 @@ nb portal pull <portal> [flags]
|
|
|
29
33
|
```bash
|
|
30
34
|
nb portal pull customer
|
|
31
35
|
nb portal pull customer --env prod --yes
|
|
36
|
+
nb portal pull customer --path ./portals/customer
|
|
37
|
+
nb portal pull customer --git-repo git@github.com:nocobase/customer-portal.git --git-branch main --git-path portals/customer
|
|
32
38
|
nb portal pull customer --force
|
|
33
39
|
nb portal pull customer --no-install
|
|
34
40
|
```
|
|
35
41
|
|
|
36
42
|
## Notes
|
|
37
43
|
|
|
38
|
-
When the pulled workspace contains `package.json`, `pnpm install` runs by default. Use `--no-install` to skip it.
|
|
44
|
+
When the pulled workspace contains `package.json`, `pnpm install` runs by default. Use `--no-install` to skip it.
|
|
45
|
+
|
|
46
|
+
Git source storage clones the configured repo and branch, then copies `--git-path`. To pull from a Git repo one time without changing the remote portal record, pass `--git-repo`; `--git-branch` and `--git-path` can only be used together with `--git-repo`. Use `nb portal config` when you want to persist Git source settings.
|
|
47
|
+
|
|
48
|
+
With default `nocobase` storage, `pull` downloads a source archive through the API and writes it to the development workspace. After a successful pull, the development workspace path is saved to the CLI env config as `portals.<portal>.path`.
|
|
39
49
|
|
|
40
50
|
## Related Commands
|
|
41
51
|
|
|
@@ -33,7 +33,7 @@ nb portal push customer --message "Update customer portal"
|
|
|
33
33
|
|
|
34
34
|
## Notes
|
|
35
35
|
|
|
36
|
-
The command reads
|
|
36
|
+
The command reads source storage and Git settings from the remote portal record, then reads local source from the development path stored in the selected CLI env config. Git source storage clones the configured repo, copies the local workspace into `--git-path`, commits, and pushes. With default `nocobase` storage, `local` and `docker` envs are usually no-op; `http` envs upload a source archive through the API.
|
|
37
37
|
|
|
38
38
|
## Related Commands
|
|
39
39
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
"use strict";(self.webpackChunk_nocobase_plugin_ai=self.webpackChunk_nocobase_plugin_ai||[]).push([["244"],{143:function(u,e,t){t.r(e),t.d(e,{listAIEmployees:function(){return N},SkillSettings:function(){return uF},updateAIEmployee:function(){return X},createAIEmployee:function(){return Y},deleteAIEmployee:function(){return $},isKnowledgeBaseEnabled:function(){return Q},listKnowledgeBases:function(){return Z},buildEmployeeSubmitValues:function(){return ua},normalizeSkillSettings:function(){return ul},default:function(){return up},isAIEmployeeUsernameConflictError:function(){return z},EMPLOYEE_PROMPT_VARIABLE_NAMESPACES:function(){return M},updateAIEmployeeEnabled:function(){return J},EmployeesPage:function(){return um},moveAIEmployee:function(){return q}});var n=t(9155),r=t.n(n),l=t(2059),a=t(7375),o=t(5428),i=t(5477),A=t(3485),E=t(7694),F=t(9488),s=t(4196),c=t(3617),D=t(9312),B=t(8666),C=t(9937),m=/^[a-zA-Z0-9_-]+$/,d=RegExp("^[\\u0041-\\u005A\\u0061-\\u007A\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376-\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u066E-\\u066F\\u0671-\\u06D3\\u06D5\\u06E5-\\u06E6\\u06EE-\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4-\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088F\\u08A0-\\u08C9\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F-\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC-\\u09DD\\u09DF-\\u09E1\\u09F0-\\u09F1\\u09FC\\u0A05-\\u0A0A\\u0A0F-\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32-\\u0A33\\u0A35-\\u0A36\\u0A38-\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2-\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0-\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F-\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32-\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C-\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99-\\u0B9A\\u0B9C\\u0B9E-\\u0B9F\\u0BA3-\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5C-\\u0C5D\\u0C60-\\u0C61\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDC-\\u0CDE\\u0CE0-\\u0CE1\\u0CF1-\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32-\\u0E33\\u0E40-\\u0E46\\u0E81-\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2-\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065-\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B83-\\u1BA0\\u1BAE-\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1C80-\\u1C8A\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5-\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183-\\u2184\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3006\\u3031-\\u3035\\u303B-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A-\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7DC\\uA7F1-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD-\\uA8FE\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5-\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40-\\uFB41\\uFB43-\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\\u{10000}-\\u{1000B}\\u{1000D}-\\u{10026}\\u{10028}-\\u{1003A}\\u{1003C}-\\u{1003D}\\u{1003F}-\\u{1004D}\\u{10050}-\\u{1005D}\\u{10080}-\\u{100FA}\\u{10280}-\\u{1029C}\\u{102A0}-\\u{102D0}\\u{10300}-\\u{1031F}\\u{1032D}-\\u{10340}\\u{10342}-\\u{10349}\\u{10350}-\\u{10375}\\u{10380}-\\u{1039D}\\u{103A0}-\\u{103C3}\\u{103C8}-\\u{103CF}\\u{10400}-\\u{1049D}\\u{104B0}-\\u{104D3}\\u{104D8}-\\u{104FB}\\u{10500}-\\u{10527}\\u{10530}-\\u{10563}\\u{10570}-\\u{1057A}\\u{1057C}-\\u{1058A}\\u{1058C}-\\u{10592}\\u{10594}-\\u{10595}\\u{10597}-\\u{105A1}\\u{105A3}-\\u{105B1}\\u{105B3}-\\u{105B9}\\u{105BB}-\\u{105BC}\\u{105C0}-\\u{105F3}\\u{10600}-\\u{10736}\\u{10740}-\\u{10755}\\u{10760}-\\u{10767}\\u{10780}-\\u{10785}\\u{10787}-\\u{107B0}\\u{107B2}-\\u{107BA}\\u{10800}-\\u{10805}\\u{10808}\\u{1080A}-\\u{10835}\\u{10837}-\\u{10838}\\u{1083C}\\u{1083F}-\\u{10855}\\u{10860}-\\u{10876}\\u{10880}-\\u{1089E}\\u{108E0}-\\u{108F2}\\u{108F4}-\\u{108F5}\\u{10900}-\\u{10915}\\u{10920}-\\u{10939}\\u{10940}-\\u{10959}\\u{10980}-\\u{109B7}\\u{109BE}-\\u{109BF}\\u{10A00}\\u{10A10}-\\u{10A13}\\u{10A15}-\\u{10A17}\\u{10A19}-\\u{10A35}\\u{10A60}-\\u{10A7C}\\u{10A80}-\\u{10A9C}\\u{10AC0}-\\u{10AC7}\\u{10AC9}-\\u{10AE4}\\u{10B00}-\\u{10B35}\\u{10B40}-\\u{10B55}\\u{10B60}-\\u{10B72}\\u{10B80}-\\u{10B91}\\u{10C00}-\\u{10C48}\\u{10C80}-\\u{10CB2}\\u{10CC0}-\\u{10CF2}\\u{10D00}-\\u{10D23}\\u{10D4A}-\\u{10D65}\\u{10D6F}-\\u{10D85}\\u{10E80}-\\u{10EA9}\\u{10EB0}-\\u{10EB1}\\u{10EC2}-\\u{10EC7}\\u{10F00}-\\u{10F1C}\\u{10F27}\\u{10F30}-\\u{10F45}\\u{10F70}-\\u{10F81}\\u{10FB0}-\\u{10FC4}\\u{10FE0}-\\u{10FF6}\\u{11003}-\\u{11037}\\u{11071}-\\u{11072}\\u{11075}\\u{11083}-\\u{110AF}\\u{110D0}-\\u{110E8}\\u{11103}-\\u{11126}\\u{11144}\\u{11147}\\u{11150}-\\u{11172}\\u{11176}\\u{11183}-\\u{111B2}\\u{111C1}-\\u{111C4}\\u{111DA}\\u{111DC}\\u{11200}-\\u{11211}\\u{11213}-\\u{1122B}\\u{1123F}-\\u{11240}\\u{11280}-\\u{11286}\\u{11288}\\u{1128A}-\\u{1128D}\\u{1128F}-\\u{1129D}\\u{1129F}-\\u{112A8}\\u{112B0}-\\u{112DE}\\u{11305}-\\u{1130C}\\u{1130F}-\\u{11310}\\u{11313}-\\u{11328}\\u{1132A}-\\u{11330}\\u{11332}-\\u{11333}\\u{11335}-\\u{11339}\\u{1133D}\\u{11350}\\u{1135D}-\\u{11361}\\u{11380}-\\u{11389}\\u{1138B}\\u{1138E}\\u{11390}-\\u{113B5}\\u{113B7}\\u{113D1}\\u{113D3}\\u{11400}-\\u{11434}\\u{11447}-\\u{1144A}\\u{1145F}-\\u{11461}\\u{11480}-\\u{114AF}\\u{114C4}-\\u{114C5}\\u{114C7}\\u{11580}-\\u{115AE}\\u{115D8}-\\u{115DB}\\u{11600}-\\u{1162F}\\u{11644}\\u{11680}-\\u{116AA}\\u{116B8}\\u{11700}-\\u{1171A}\\u{11740}-\\u{11746}\\u{11800}-\\u{1182B}\\u{118A0}-\\u{118DF}\\u{118FF}-\\u{11906}\\u{11909}\\u{1190C}-\\u{11913}\\u{11915}-\\u{11916}\\u{11918}-\\u{1192F}\\u{1193F}\\u{11941}\\u{119A0}-\\u{119A7}\\u{119AA}-\\u{119D0}\\u{119E1}\\u{119E3}\\u{11A00}\\u{11A0B}-\\u{11A32}\\u{11A3A}\\u{11A50}\\u{11A5C}-\\u{11A89}\\u{11A9D}\\u{11AB0}-\\u{11AF8}\\u{11BC0}-\\u{11BE0}\\u{11C00}-\\u{11C08}\\u{11C0A}-\\u{11C2E}\\u{11C40}\\u{11C72}-\\u{11C8F}\\u{11D00}-\\u{11D06}\\u{11D08}-\\u{11D09}\\u{11D0B}-\\u{11D30}\\u{11D46}\\u{11D60}-\\u{11D65}\\u{11D67}-\\u{11D68}\\u{11D6A}-\\u{11D89}\\u{11D98}\\u{11DB0}-\\u{11DDB}\\u{11EE0}-\\u{11EF2}\\u{11F02}\\u{11F04}-\\u{11F10}\\u{11F12}-\\u{11F33}\\u{11FB0}\\u{12000}-\\u{12399}\\u{12480}-\\u{12543}\\u{12F90}-\\u{12FF0}\\u{13000}-\\u{1342F}\\u{13441}-\\u{13446}\\u{13460}-\\u{143FA}\\u{14400}-\\u{14646}\\u{16100}-\\u{1611D}\\u{16800}-\\u{16A38}\\u{16A40}-\\u{16A5E}\\u{16A70}-\\u{16ABE}\\u{16AD0}-\\u{16AED}\\u{16B00}-\\u{16B2F}\\u{16B40}-\\u{16B43}\\u{16B63}-\\u{16B77}\\u{16B7D}-\\u{16B8F}\\u{16D40}-\\u{16D6C}\\u{16E40}-\\u{16E7F}\\u{16EA0}-\\u{16EB8}\\u{16EBB}-\\u{16ED3}\\u{16F00}-\\u{16F4A}\\u{16F50}\\u{16F93}-\\u{16F9F}\\u{16FE0}-\\u{16FE1}\\u{16FE3}\\u{16FF2}-\\u{16FF3}\\u{17000}-\\u{18CD5}\\u{18CFF}-\\u{18D1E}\\u{18D80}-\\u{18DF2}\\u{1AFF0}-\\u{1AFF3}\\u{1AFF5}-\\u{1AFFB}\\u{1AFFD}-\\u{1AFFE}\\u{1B000}-\\u{1B122}\\u{1B132}\\u{1B150}-\\u{1B152}\\u{1B155}\\u{1B164}-\\u{1B167}\\u{1B170}-\\u{1B2FB}\\u{1BC00}-\\u{1BC6A}\\u{1BC70}-\\u{1BC7C}\\u{1BC80}-\\u{1BC88}\\u{1BC90}-\\u{1BC99}\\u{1D400}-\\u{1D454}\\u{1D456}-\\u{1D49C}\\u{1D49E}-\\u{1D49F}\\u{1D4A2}\\u{1D4A5}-\\u{1D4A6}\\u{1D4A9}-\\u{1D4AC}\\u{1D4AE}-\\u{1D4B9}\\u{1D4BB}\\u{1D4BD}-\\u{1D4C3}\\u{1D4C5}-\\u{1D505}\\u{1D507}-\\u{1D50A}\\u{1D50D}-\\u{1D514}\\u{1D516}-\\u{1D51C}\\u{1D51E}-\\u{1D539}\\u{1D53B}-\\u{1D53E}\\u{1D540}-\\u{1D544}\\u{1D546}\\u{1D54A}-\\u{1D550}\\u{1D552}-\\u{1D6A5}\\u{1D6A8}-\\u{1D6C0}\\u{1D6C2}-\\u{1D6DA}\\u{1D6DC}-\\u{1D6FA}\\u{1D6FC}-\\u{1D714}\\u{1D716}-\\u{1D734}\\u{1D736}-\\u{1D74E}\\u{1D750}-\\u{1D76E}\\u{1D770}-\\u{1D788}\\u{1D78A}-\\u{1D7A8}\\u{1D7AA}-\\u{1D7C2}\\u{1D7C4}-\\u{1D7CB}\\u{1DF00}-\\u{1DF1E}\\u{1DF25}-\\u{1DF2A}\\u{1E030}-\\u{1E06D}\\u{1E100}-\\u{1E12C}\\u{1E137}-\\u{1E13D}\\u{1E14E}\\u{1E290}-\\u{1E2AD}\\u{1E2C0}-\\u{1E2EB}\\u{1E4D0}-\\u{1E4EB}\\u{1E5D0}-\\u{1E5ED}\\u{1E5F0}\\u{1E6C0}-\\u{1E6DE}\\u{1E6E0}-\\u{1E6E2}\\u{1E6E4}-\\u{1E6E5}\\u{1E6E7}-\\u{1E6ED}\\u{1E6F0}-\\u{1E6F4}\\u{1E6FE}-\\u{1E6FF}\\u{1E7E0}-\\u{1E7E6}\\u{1E7E8}-\\u{1E7EB}\\u{1E7ED}-\\u{1E7EE}\\u{1E7F0}-\\u{1E7FE}\\u{1E800}-\\u{1E8C4}\\u{1E900}-\\u{1E943}\\u{1E94B}\\u{1EE00}-\\u{1EE03}\\u{1EE05}-\\u{1EE1F}\\u{1EE21}-\\u{1EE22}\\u{1EE24}\\u{1EE27}\\u{1EE29}-\\u{1EE32}\\u{1EE34}-\\u{1EE37}\\u{1EE39}\\u{1EE3B}\\u{1EE42}\\u{1EE47}\\u{1EE49}\\u{1EE4B}\\u{1EE4D}-\\u{1EE4F}\\u{1EE51}-\\u{1EE52}\\u{1EE54}\\u{1EE57}\\u{1EE59}\\u{1EE5B}\\u{1EE5D}\\u{1EE5F}\\u{1EE61}-\\u{1EE62}\\u{1EE64}\\u{1EE67}-\\u{1EE6A}\\u{1EE6C}-\\u{1EE72}\\u{1EE74}-\\u{1EE77}\\u{1EE79}-\\u{1EE7C}\\u{1EE7E}\\u{1EE80}-\\u{1EE89}\\u{1EE8B}-\\u{1EE9B}\\u{1EEA1}-\\u{1EEA3}\\u{1EEA5}-\\u{1EEA9}\\u{1EEAB}-\\u{1EEBB}\\u{20000}-\\u{2A6DF}\\u{2A700}-\\u{2B81D}\\u{2B820}-\\u{2CEAD}\\u{2CEB0}-\\u{2EBE0}\\u{2EBF0}-\\u{2EE5D}\\u{2F800}-\\u{2FA1D}\\u{30000}-\\u{3134A}\\u{31350}-\\u{33479}\\u0300-\\u036F\\u0483-\\u0489\\u0591-\\u05BD\\u05BF\\u05C1-\\u05C2\\u05C4-\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065F\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7-\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u07FD\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0859-\\u085B\\u0897-\\u089F\\u08CA-\\u08E1\\u08E3-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962-\\u0963\\u0981-\\u0983\\u09BC\\u09BE-\\u09C4\\u09C7-\\u09C8\\u09CB-\\u09CD\\u09D7\\u09E2-\\u09E3\\u09FE\\u0A01-\\u0A03\\u0A3C\\u0A3E-\\u0A42\\u0A47-\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70-\\u0A71\\u0A75\\u0A81-\\u0A83\\u0ABC\\u0ABE-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AE2-\\u0AE3\\u0AFA-\\u0AFF\\u0B01-\\u0B03\\u0B3C\\u0B3E-\\u0B44\\u0B47-\\u0B48\\u0B4B-\\u0B4D\\u0B55-\\u0B57\\u0B62-\\u0B63\\u0B82\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD7\\u0C00-\\u0C04\\u0C3C\\u0C3E-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55-\\u0C56\\u0C62-\\u0C63\\u0C81-\\u0C83\\u0CBC\\u0CBE-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5-\\u0CD6\\u0CE2-\\u0CE3\\u0CF3\\u0D00-\\u0D03\\u0D3B-\\u0D3C\\u0D3E-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4D\\u0D57\\u0D62-\\u0D63\\u0D81-\\u0D83\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2-\\u0DF3\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EBC\\u0EC8-\\u0ECE\\u0F18-\\u0F19\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F3F\\u0F71-\\u0F84\\u0F86-\\u0F87\\u0F8D-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102B-\\u103E\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F\\u109A-\\u109D\\u135D-\\u135F\\u1712-\\u1715\\u1732-\\u1734\\u1752-\\u1753\\u1772-\\u1773\\u17B4-\\u17D3\\u17DD\\u180B-\\u180D\\u180F\\u1885-\\u1886\\u18A9\\u1920-\\u192B\\u1930-\\u193B\\u1A17-\\u1A1B\\u1A55-\\u1A5E\\u1A60-\\u1A7C\\u1A7F\\u1AB0-\\u1ADD\\u1AE0-\\u1AEB\\u1B00-\\u1B04\\u1B34-\\u1B44\\u1B6B-\\u1B73\\u1B80-\\u1B82\\u1BA1-\\u1BAD\\u1BE6-\\u1BF3\\u1C24-\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE8\\u1CED\\u1CF4\\u1CF7-\\u1CF9\\u1DC0-\\u1DFF\\u20D0-\\u20F0\\u2CEF-\\u2CF1\\u2D7F\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099-\\u309A\\uA66F-\\uA672\\uA674-\\uA67D\\uA69E-\\uA69F\\uA6F0-\\uA6F1\\uA802\\uA806\\uA80B\\uA823-\\uA827\\uA82C\\uA880-\\uA881\\uA8B4-\\uA8C5\\uA8E0-\\uA8F1\\uA8FF\\uA926-\\uA92D\\uA947-\\uA953\\uA980-\\uA983\\uA9B3-\\uA9C0\\uA9E5\\uAA29-\\uAA36\\uAA43\\uAA4C-\\uAA4D\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7-\\uAAB8\\uAABE-\\uAABF\\uAAC1\\uAAEB-\\uAAEF\\uAAF5-\\uAAF6\\uABE3-\\uABEA\\uABEC-\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE2F\\u{101FD}\\u{102E0}\\u{10376}-\\u{1037A}\\u{10A01}-\\u{10A03}\\u{10A05}-\\u{10A06}\\u{10A0C}-\\u{10A0F}\\u{10A38}-\\u{10A3A}\\u{10A3F}\\u{10AE5}-\\u{10AE6}\\u{10D24}-\\u{10D27}\\u{10D69}-\\u{10D6D}\\u{10EAB}-\\u{10EAC}\\u{10EFA}-\\u{10EFF}\\u{10F46}-\\u{10F50}\\u{10F82}-\\u{10F85}\\u{11000}-\\u{11002}\\u{11038}-\\u{11046}\\u{11070}\\u{11073}-\\u{11074}\\u{1107F}-\\u{11082}\\u{110B0}-\\u{110BA}\\u{110C2}\\u{11100}-\\u{11102}\\u{11127}-\\u{11134}\\u{11145}-\\u{11146}\\u{11173}\\u{11180}-\\u{11182}\\u{111B3}-\\u{111C0}\\u{111C9}-\\u{111CC}\\u{111CE}-\\u{111CF}\\u{1122C}-\\u{11237}\\u{1123E}\\u{11241}\\u{112DF}-\\u{112EA}\\u{11300}-\\u{11303}\\u{1133B}-\\u{1133C}\\u{1133E}-\\u{11344}\\u{11347}-\\u{11348}\\u{1134B}-\\u{1134D}\\u{11357}\\u{11362}-\\u{11363}\\u{11366}-\\u{1136C}\\u{11370}-\\u{11374}\\u{113B8}-\\u{113C0}\\u{113C2}\\u{113C5}\\u{113C7}-\\u{113CA}\\u{113CC}-\\u{113D0}\\u{113D2}\\u{113E1}-\\u{113E2}\\u{11435}-\\u{11446}\\u{1145E}\\u{114B0}-\\u{114C3}\\u{115AF}-\\u{115B5}\\u{115B8}-\\u{115C0}\\u{115DC}-\\u{115DD}\\u{11630}-\\u{11640}\\u{116AB}-\\u{116B7}\\u{1171D}-\\u{1172B}\\u{1182C}-\\u{1183A}\\u{11930}-\\u{11935}\\u{11937}-\\u{11938}\\u{1193B}-\\u{1193E}\\u{11940}\\u{11942}-\\u{11943}\\u{119D1}-\\u{119D7}\\u{119DA}-\\u{119E0}\\u{119E4}\\u{11A01}-\\u{11A0A}\\u{11A33}-\\u{11A39}\\u{11A3B}-\\u{11A3E}\\u{11A47}\\u{11A51}-\\u{11A5B}\\u{11A8A}-\\u{11A99}\\u{11B60}-\\u{11B67}\\u{11C2F}-\\u{11C36}\\u{11C38}-\\u{11C3F}\\u{11C92}-\\u{11CA7}\\u{11CA9}-\\u{11CB6}\\u{11D31}-\\u{11D36}\\u{11D3A}\\u{11D3C}-\\u{11D3D}\\u{11D3F}-\\u{11D45}\\u{11D47}\\u{11D8A}-\\u{11D8E}\\u{11D90}-\\u{11D91}\\u{11D93}-\\u{11D97}\\u{11EF3}-\\u{11EF6}\\u{11F00}-\\u{11F01}\\u{11F03}\\u{11F34}-\\u{11F3A}\\u{11F3E}-\\u{11F42}\\u{11F5A}\\u{13440}\\u{13447}-\\u{13455}\\u{1611E}-\\u{1612F}\\u{16AF0}-\\u{16AF4}\\u{16B30}-\\u{16B36}\\u{16F4F}\\u{16F51}-\\u{16F87}\\u{16F8F}-\\u{16F92}\\u{16FE4}\\u{16FF0}-\\u{16FF1}\\u{1BC9D}-\\u{1BC9E}\\u{1CF00}-\\u{1CF2D}\\u{1CF30}-\\u{1CF46}\\u{1D165}-\\u{1D169}\\u{1D16D}-\\u{1D172}\\u{1D17B}-\\u{1D182}\\u{1D185}-\\u{1D18B}\\u{1D1AA}-\\u{1D1AD}\\u{1D242}-\\u{1D244}\\u{1DA00}-\\u{1DA36}\\u{1DA3B}-\\u{1DA6C}\\u{1DA75}\\u{1DA84}\\u{1DA9B}-\\u{1DA9F}\\u{1DAA1}-\\u{1DAAF}\\u{1E000}-\\u{1E006}\\u{1E008}-\\u{1E018}\\u{1E01B}-\\u{1E021}\\u{1E023}-\\u{1E024}\\u{1E026}-\\u{1E02A}\\u{1E08F}\\u{1E130}-\\u{1E136}\\u{1E2AE}\\u{1E2EC}-\\u{1E2EF}\\u{1E4EC}-\\u{1E4EF}\\u{1E5EE}-\\u{1E5EF}\\u{1E6E3}\\u{1E6E6}\\u{1E6EE}-\\u{1E6EF}\\u{1E6F5}\\u{1E8D0}-\\u{1E8D6}\\u{1E944}-\\u{1E94A}\\u{E0100}-\\u{E01EF}\\u0030-\\u0039\\u00B2-\\u00B3\\u00B9\\u00BC-\\u00BE\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u09F4-\\u09F9\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0B72-\\u0B77\\u0BE6-\\u0BF2\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0CE6-\\u0CEF\\u0D58-\\u0D5E\\u0D66-\\u0D78\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F33\\u1040-\\u1049\\u1090-\\u1099\\u1369-\\u137C\\u16EE-\\u16F0\\u17E0-\\u17E9\\u17F0-\\u17F9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19DA\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\u2070\\u2074-\\u2079\\u2080-\\u2089\\u2150-\\u2182\\u2185-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2CFD\\u3007\\u3021-\\u3029\\u3038-\\u303A\\u3192-\\u3195\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\uA620-\\uA629\\uA6E6-\\uA6EF\\uA830-\\uA835\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19\\u{10107}-\\u{10133}\\u{10140}-\\u{10178}\\u{1018A}-\\u{1018B}\\u{102E1}-\\u{102FB}\\u{10320}-\\u{10323}\\u{10341}\\u{1034A}\\u{103D1}-\\u{103D5}\\u{104A0}-\\u{104A9}\\u{10858}-\\u{1085F}\\u{10879}-\\u{1087F}\\u{108A7}-\\u{108AF}\\u{108FB}-\\u{108FF}\\u{10916}-\\u{1091B}\\u{109BC}-\\u{109BD}\\u{109C0}-\\u{109CF}\\u{109D2}-\\u{109FF}\\u{10A40}-\\u{10A48}\\u{10A7D}-\\u{10A7E}\\u{10A9D}-\\u{10A9F}\\u{10AEB}-\\u{10AEF}\\u{10B58}-\\u{10B5F}\\u{10B78}-\\u{10B7F}\\u{10BA9}-\\u{10BAF}\\u{10CFA}-\\u{10CFF}\\u{10D30}-\\u{10D39}\\u{10D40}-\\u{10D49}\\u{10E60}-\\u{10E7E}\\u{10F1D}-\\u{10F26}\\u{10F51}-\\u{10F54}\\u{10FC5}-\\u{10FCB}\\u{11052}-\\u{1106F}\\u{110F0}-\\u{110F9}\\u{11136}-\\u{1113F}\\u{111D0}-\\u{111D9}\\u{111E1}-\\u{111F4}\\u{112F0}-\\u{112F9}\\u{11450}-\\u{11459}\\u{114D0}-\\u{114D9}\\u{11650}-\\u{11659}\\u{116C0}-\\u{116C9}\\u{116D0}-\\u{116E3}\\u{11730}-\\u{1173B}\\u{118E0}-\\u{118F2}\\u{11950}-\\u{11959}\\u{11BF0}-\\u{11BF9}\\u{11C50}-\\u{11C6C}\\u{11D50}-\\u{11D59}\\u{11DA0}-\\u{11DA9}\\u{11DE0}-\\u{11DE9}\\u{11F50}-\\u{11F59}\\u{11FC0}-\\u{11FD4}\\u{12400}-\\u{1246E}\\u{16130}-\\u{16139}\\u{16A60}-\\u{16A69}\\u{16AC0}-\\u{16AC9}\\u{16B50}-\\u{16B59}\\u{16B5B}-\\u{16B61}\\u{16D70}-\\u{16D79}\\u{16E80}-\\u{16E96}\\u{16FF4}-\\u{16FF6}\\u{1CCF0}-\\u{1CCF9}\\u{1D2C0}-\\u{1D2D3}\\u{1D2E0}-\\u{1D2F3}\\u{1D360}-\\u{1D378}\\u{1D7CE}-\\u{1D7FF}\\u{1E140}-\\u{1E149}\\u{1E2F0}-\\u{1E2F9}\\u{1E4F0}-\\u{1E4F9}\\u{1E5F1}-\\u{1E5FA}\\u{1E8C7}-\\u{1E8CF}\\u{1E950}-\\u{1E959}\\u{1EC71}-\\u{1ECAB}\\u{1ECAD}-\\u{1ECAF}\\u{1ECB1}-\\u{1ECB4}\\u{1ED01}-\\u{1ED2D}\\u{1ED2F}-\\u{1ED3D}\\u{1F100}-\\u{1F10C}\\u{1FBF0}-\\u{1FBF9} ._'’()&\xb7-]+$","u"),f=function(u){return u.trim()},p=function(u,e){return u.length>0&&Array.from(u).length<=e},y=function(u){var e=f(u);return p(e,64)&&m.test(e)},g=function(u){var e=f(u);return p(e,64)&&d.test(e)&&RegExp("[\\u0041-\\u005A\\u0061-\\u007A\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376-\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u066E-\\u066F\\u0671-\\u06D3\\u06D5\\u06E5-\\u06E6\\u06EE-\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4-\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088F\\u08A0-\\u08C9\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F-\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC-\\u09DD\\u09DF-\\u09E1\\u09F0-\\u09F1\\u09FC\\u0A05-\\u0A0A\\u0A0F-\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32-\\u0A33\\u0A35-\\u0A36\\u0A38-\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2-\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0-\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F-\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32-\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C-\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99-\\u0B9A\\u0B9C\\u0B9E-\\u0B9F\\u0BA3-\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5C-\\u0C5D\\u0C60-\\u0C61\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDC-\\u0CDE\\u0CE0-\\u0CE1\\u0CF1-\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32-\\u0E33\\u0E40-\\u0E46\\u0E81-\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2-\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065-\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B83-\\u1BA0\\u1BAE-\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1C80-\\u1C8A\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5-\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183-\\u2184\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3006\\u3031-\\u3035\\u303B-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A-\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7DC\\uA7F1-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD-\\uA8FE\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5-\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40-\\uFB41\\uFB43-\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\\u{10000}-\\u{1000B}\\u{1000D}-\\u{10026}\\u{10028}-\\u{1003A}\\u{1003C}-\\u{1003D}\\u{1003F}-\\u{1004D}\\u{10050}-\\u{1005D}\\u{10080}-\\u{100FA}\\u{10280}-\\u{1029C}\\u{102A0}-\\u{102D0}\\u{10300}-\\u{1031F}\\u{1032D}-\\u{10340}\\u{10342}-\\u{10349}\\u{10350}-\\u{10375}\\u{10380}-\\u{1039D}\\u{103A0}-\\u{103C3}\\u{103C8}-\\u{103CF}\\u{10400}-\\u{1049D}\\u{104B0}-\\u{104D3}\\u{104D8}-\\u{104FB}\\u{10500}-\\u{10527}\\u{10530}-\\u{10563}\\u{10570}-\\u{1057A}\\u{1057C}-\\u{1058A}\\u{1058C}-\\u{10592}\\u{10594}-\\u{10595}\\u{10597}-\\u{105A1}\\u{105A3}-\\u{105B1}\\u{105B3}-\\u{105B9}\\u{105BB}-\\u{105BC}\\u{105C0}-\\u{105F3}\\u{10600}-\\u{10736}\\u{10740}-\\u{10755}\\u{10760}-\\u{10767}\\u{10780}-\\u{10785}\\u{10787}-\\u{107B0}\\u{107B2}-\\u{107BA}\\u{10800}-\\u{10805}\\u{10808}\\u{1080A}-\\u{10835}\\u{10837}-\\u{10838}\\u{1083C}\\u{1083F}-\\u{10855}\\u{10860}-\\u{10876}\\u{10880}-\\u{1089E}\\u{108E0}-\\u{108F2}\\u{108F4}-\\u{108F5}\\u{10900}-\\u{10915}\\u{10920}-\\u{10939}\\u{10940}-\\u{10959}\\u{10980}-\\u{109B7}\\u{109BE}-\\u{109BF}\\u{10A00}\\u{10A10}-\\u{10A13}\\u{10A15}-\\u{10A17}\\u{10A19}-\\u{10A35}\\u{10A60}-\\u{10A7C}\\u{10A80}-\\u{10A9C}\\u{10AC0}-\\u{10AC7}\\u{10AC9}-\\u{10AE4}\\u{10B00}-\\u{10B35}\\u{10B40}-\\u{10B55}\\u{10B60}-\\u{10B72}\\u{10B80}-\\u{10B91}\\u{10C00}-\\u{10C48}\\u{10C80}-\\u{10CB2}\\u{10CC0}-\\u{10CF2}\\u{10D00}-\\u{10D23}\\u{10D4A}-\\u{10D65}\\u{10D6F}-\\u{10D85}\\u{10E80}-\\u{10EA9}\\u{10EB0}-\\u{10EB1}\\u{10EC2}-\\u{10EC7}\\u{10F00}-\\u{10F1C}\\u{10F27}\\u{10F30}-\\u{10F45}\\u{10F70}-\\u{10F81}\\u{10FB0}-\\u{10FC4}\\u{10FE0}-\\u{10FF6}\\u{11003}-\\u{11037}\\u{11071}-\\u{11072}\\u{11075}\\u{11083}-\\u{110AF}\\u{110D0}-\\u{110E8}\\u{11103}-\\u{11126}\\u{11144}\\u{11147}\\u{11150}-\\u{11172}\\u{11176}\\u{11183}-\\u{111B2}\\u{111C1}-\\u{111C4}\\u{111DA}\\u{111DC}\\u{11200}-\\u{11211}\\u{11213}-\\u{1122B}\\u{1123F}-\\u{11240}\\u{11280}-\\u{11286}\\u{11288}\\u{1128A}-\\u{1128D}\\u{1128F}-\\u{1129D}\\u{1129F}-\\u{112A8}\\u{112B0}-\\u{112DE}\\u{11305}-\\u{1130C}\\u{1130F}-\\u{11310}\\u{11313}-\\u{11328}\\u{1132A}-\\u{11330}\\u{11332}-\\u{11333}\\u{11335}-\\u{11339}\\u{1133D}\\u{11350}\\u{1135D}-\\u{11361}\\u{11380}-\\u{11389}\\u{1138B}\\u{1138E}\\u{11390}-\\u{113B5}\\u{113B7}\\u{113D1}\\u{113D3}\\u{11400}-\\u{11434}\\u{11447}-\\u{1144A}\\u{1145F}-\\u{11461}\\u{11480}-\\u{114AF}\\u{114C4}-\\u{114C5}\\u{114C7}\\u{11580}-\\u{115AE}\\u{115D8}-\\u{115DB}\\u{11600}-\\u{1162F}\\u{11644}\\u{11680}-\\u{116AA}\\u{116B8}\\u{11700}-\\u{1171A}\\u{11740}-\\u{11746}\\u{11800}-\\u{1182B}\\u{118A0}-\\u{118DF}\\u{118FF}-\\u{11906}\\u{11909}\\u{1190C}-\\u{11913}\\u{11915}-\\u{11916}\\u{11918}-\\u{1192F}\\u{1193F}\\u{11941}\\u{119A0}-\\u{119A7}\\u{119AA}-\\u{119D0}\\u{119E1}\\u{119E3}\\u{11A00}\\u{11A0B}-\\u{11A32}\\u{11A3A}\\u{11A50}\\u{11A5C}-\\u{11A89}\\u{11A9D}\\u{11AB0}-\\u{11AF8}\\u{11BC0}-\\u{11BE0}\\u{11C00}-\\u{11C08}\\u{11C0A}-\\u{11C2E}\\u{11C40}\\u{11C72}-\\u{11C8F}\\u{11D00}-\\u{11D06}\\u{11D08}-\\u{11D09}\\u{11D0B}-\\u{11D30}\\u{11D46}\\u{11D60}-\\u{11D65}\\u{11D67}-\\u{11D68}\\u{11D6A}-\\u{11D89}\\u{11D98}\\u{11DB0}-\\u{11DDB}\\u{11EE0}-\\u{11EF2}\\u{11F02}\\u{11F04}-\\u{11F10}\\u{11F12}-\\u{11F33}\\u{11FB0}\\u{12000}-\\u{12399}\\u{12480}-\\u{12543}\\u{12F90}-\\u{12FF0}\\u{13000}-\\u{1342F}\\u{13441}-\\u{13446}\\u{13460}-\\u{143FA}\\u{14400}-\\u{14646}\\u{16100}-\\u{1611D}\\u{16800}-\\u{16A38}\\u{16A40}-\\u{16A5E}\\u{16A70}-\\u{16ABE}\\u{16AD0}-\\u{16AED}\\u{16B00}-\\u{16B2F}\\u{16B40}-\\u{16B43}\\u{16B63}-\\u{16B77}\\u{16B7D}-\\u{16B8F}\\u{16D40}-\\u{16D6C}\\u{16E40}-\\u{16E7F}\\u{16EA0}-\\u{16EB8}\\u{16EBB}-\\u{16ED3}\\u{16F00}-\\u{16F4A}\\u{16F50}\\u{16F93}-\\u{16F9F}\\u{16FE0}-\\u{16FE1}\\u{16FE3}\\u{16FF2}-\\u{16FF3}\\u{17000}-\\u{18CD5}\\u{18CFF}-\\u{18D1E}\\u{18D80}-\\u{18DF2}\\u{1AFF0}-\\u{1AFF3}\\u{1AFF5}-\\u{1AFFB}\\u{1AFFD}-\\u{1AFFE}\\u{1B000}-\\u{1B122}\\u{1B132}\\u{1B150}-\\u{1B152}\\u{1B155}\\u{1B164}-\\u{1B167}\\u{1B170}-\\u{1B2FB}\\u{1BC00}-\\u{1BC6A}\\u{1BC70}-\\u{1BC7C}\\u{1BC80}-\\u{1BC88}\\u{1BC90}-\\u{1BC99}\\u{1D400}-\\u{1D454}\\u{1D456}-\\u{1D49C}\\u{1D49E}-\\u{1D49F}\\u{1D4A2}\\u{1D4A5}-\\u{1D4A6}\\u{1D4A9}-\\u{1D4AC}\\u{1D4AE}-\\u{1D4B9}\\u{1D4BB}\\u{1D4BD}-\\u{1D4C3}\\u{1D4C5}-\\u{1D505}\\u{1D507}-\\u{1D50A}\\u{1D50D}-\\u{1D514}\\u{1D516}-\\u{1D51C}\\u{1D51E}-\\u{1D539}\\u{1D53B}-\\u{1D53E}\\u{1D540}-\\u{1D544}\\u{1D546}\\u{1D54A}-\\u{1D550}\\u{1D552}-\\u{1D6A5}\\u{1D6A8}-\\u{1D6C0}\\u{1D6C2}-\\u{1D6DA}\\u{1D6DC}-\\u{1D6FA}\\u{1D6FC}-\\u{1D714}\\u{1D716}-\\u{1D734}\\u{1D736}-\\u{1D74E}\\u{1D750}-\\u{1D76E}\\u{1D770}-\\u{1D788}\\u{1D78A}-\\u{1D7A8}\\u{1D7AA}-\\u{1D7C2}\\u{1D7C4}-\\u{1D7CB}\\u{1DF00}-\\u{1DF1E}\\u{1DF25}-\\u{1DF2A}\\u{1E030}-\\u{1E06D}\\u{1E100}-\\u{1E12C}\\u{1E137}-\\u{1E13D}\\u{1E14E}\\u{1E290}-\\u{1E2AD}\\u{1E2C0}-\\u{1E2EB}\\u{1E4D0}-\\u{1E4EB}\\u{1E5D0}-\\u{1E5ED}\\u{1E5F0}\\u{1E6C0}-\\u{1E6DE}\\u{1E6E0}-\\u{1E6E2}\\u{1E6E4}-\\u{1E6E5}\\u{1E6E7}-\\u{1E6ED}\\u{1E6F0}-\\u{1E6F4}\\u{1E6FE}-\\u{1E6FF}\\u{1E7E0}-\\u{1E7E6}\\u{1E7E8}-\\u{1E7EB}\\u{1E7ED}-\\u{1E7EE}\\u{1E7F0}-\\u{1E7FE}\\u{1E800}-\\u{1E8C4}\\u{1E900}-\\u{1E943}\\u{1E94B}\\u{1EE00}-\\u{1EE03}\\u{1EE05}-\\u{1EE1F}\\u{1EE21}-\\u{1EE22}\\u{1EE24}\\u{1EE27}\\u{1EE29}-\\u{1EE32}\\u{1EE34}-\\u{1EE37}\\u{1EE39}\\u{1EE3B}\\u{1EE42}\\u{1EE47}\\u{1EE49}\\u{1EE4B}\\u{1EE4D}-\\u{1EE4F}\\u{1EE51}-\\u{1EE52}\\u{1EE54}\\u{1EE57}\\u{1EE59}\\u{1EE5B}\\u{1EE5D}\\u{1EE5F}\\u{1EE61}-\\u{1EE62}\\u{1EE64}\\u{1EE67}-\\u{1EE6A}\\u{1EE6C}-\\u{1EE72}\\u{1EE74}-\\u{1EE77}\\u{1EE79}-\\u{1EE7C}\\u{1EE7E}\\u{1EE80}-\\u{1EE89}\\u{1EE8B}-\\u{1EE9B}\\u{1EEA1}-\\u{1EEA3}\\u{1EEA5}-\\u{1EEA9}\\u{1EEAB}-\\u{1EEBB}\\u{20000}-\\u{2A6DF}\\u{2A700}-\\u{2B81D}\\u{2B820}-\\u{2CEAD}\\u{2CEB0}-\\u{2EBE0}\\u{2EBF0}-\\u{2EE5D}\\u{2F800}-\\u{2FA1D}\\u{30000}-\\u{3134A}\\u{31350}-\\u{33479}\\u0030-\\u0039\\u00B2-\\u00B3\\u00B9\\u00BC-\\u00BE\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u09F4-\\u09F9\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0B72-\\u0B77\\u0BE6-\\u0BF2\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0CE6-\\u0CEF\\u0D58-\\u0D5E\\u0D66-\\u0D78\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F33\\u1040-\\u1049\\u1090-\\u1099\\u1369-\\u137C\\u16EE-\\u16F0\\u17E0-\\u17E9\\u17F0-\\u17F9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19DA\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\u2070\\u2074-\\u2079\\u2080-\\u2089\\u2150-\\u2182\\u2185-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2CFD\\u3007\\u3021-\\u3029\\u3038-\\u303A\\u3192-\\u3195\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\uA620-\\uA629\\uA6E6-\\uA6EF\\uA830-\\uA835\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19\\u{10107}-\\u{10133}\\u{10140}-\\u{10178}\\u{1018A}-\\u{1018B}\\u{102E1}-\\u{102FB}\\u{10320}-\\u{10323}\\u{10341}\\u{1034A}\\u{103D1}-\\u{103D5}\\u{104A0}-\\u{104A9}\\u{10858}-\\u{1085F}\\u{10879}-\\u{1087F}\\u{108A7}-\\u{108AF}\\u{108FB}-\\u{108FF}\\u{10916}-\\u{1091B}\\u{109BC}-\\u{109BD}\\u{109C0}-\\u{109CF}\\u{109D2}-\\u{109FF}\\u{10A40}-\\u{10A48}\\u{10A7D}-\\u{10A7E}\\u{10A9D}-\\u{10A9F}\\u{10AEB}-\\u{10AEF}\\u{10B58}-\\u{10B5F}\\u{10B78}-\\u{10B7F}\\u{10BA9}-\\u{10BAF}\\u{10CFA}-\\u{10CFF}\\u{10D30}-\\u{10D39}\\u{10D40}-\\u{10D49}\\u{10E60}-\\u{10E7E}\\u{10F1D}-\\u{10F26}\\u{10F51}-\\u{10F54}\\u{10FC5}-\\u{10FCB}\\u{11052}-\\u{1106F}\\u{110F0}-\\u{110F9}\\u{11136}-\\u{1113F}\\u{111D0}-\\u{111D9}\\u{111E1}-\\u{111F4}\\u{112F0}-\\u{112F9}\\u{11450}-\\u{11459}\\u{114D0}-\\u{114D9}\\u{11650}-\\u{11659}\\u{116C0}-\\u{116C9}\\u{116D0}-\\u{116E3}\\u{11730}-\\u{1173B}\\u{118E0}-\\u{118F2}\\u{11950}-\\u{11959}\\u{11BF0}-\\u{11BF9}\\u{11C50}-\\u{11C6C}\\u{11D50}-\\u{11D59}\\u{11DA0}-\\u{11DA9}\\u{11DE0}-\\u{11DE9}\\u{11F50}-\\u{11F59}\\u{11FC0}-\\u{11FD4}\\u{12400}-\\u{1246E}\\u{16130}-\\u{16139}\\u{16A60}-\\u{16A69}\\u{16AC0}-\\u{16AC9}\\u{16B50}-\\u{16B59}\\u{16B5B}-\\u{16B61}\\u{16D70}-\\u{16D79}\\u{16E80}-\\u{16E96}\\u{16FF4}-\\u{16FF6}\\u{1CCF0}-\\u{1CCF9}\\u{1D2C0}-\\u{1D2D3}\\u{1D2E0}-\\u{1D2F3}\\u{1D360}-\\u{1D378}\\u{1D7CE}-\\u{1D7FF}\\u{1E140}-\\u{1E149}\\u{1E2F0}-\\u{1E2F9}\\u{1E4F0}-\\u{1E4F9}\\u{1E5F1}-\\u{1E5FA}\\u{1E8C7}-\\u{1E8CF}\\u{1E950}-\\u{1E959}\\u{1EC71}-\\u{1ECAB}\\u{1ECAD}-\\u{1ECAF}\\u{1ECB1}-\\u{1ECB4}\\u{1ED01}-\\u{1ED2D}\\u{1ED2F}-\\u{1ED3D}\\u{1F100}-\\u{1F10C}\\u{1FBF0}-\\u{1FBF9}]","u").test(e)};function b(u,e){(null==e||e>u.length)&&(e=u.length);for(var t=0,n=Array(e);t<e;t++)n[t]=u[t];return n}function h(u,e,t,n,r,l,a){try{var o=u[l](a),i=o.value}catch(u){t(u);return}o.done?e(i):Promise.resolve(i).then(n,r)}function v(u){return function(){var e=this,t=arguments;return new Promise(function(n,r){var l=u.apply(e,t);function a(u){h(l,n,r,a,o,"next",u)}function o(u){h(l,n,r,a,o,"throw",u)}a(void 0)})}}function S(u){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter(function(u){return Object.getOwnPropertyDescriptor(t,u).enumerable}))),n.forEach(function(e){var n;n=t[e],e in u?Object.defineProperty(u,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):u[e]=n})}return u}function k(u,e){return e=null!=e?e:{},Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(e)):(function(u){var e=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);e.push.apply(e,t)}return e})(Object(e)).forEach(function(t){Object.defineProperty(u,t,Object.getOwnPropertyDescriptor(e,t))}),u}function w(u,e){return function(u){if(Array.isArray(u))return u}(u)||function(u,e){var t,n,r=null==u?null:"u">typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(null!=r){var l=[],a=!0,o=!1;try{for(r=r.call(u);!(a=(t=r.next()).done)&&(l.push(t.value),!e||l.length!==e);a=!0);}catch(u){o=!0,n=u}finally{try{a||null==r.return||r.return()}finally{if(o)throw n}}return l}}(u,e)||x(u,e)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(u){return function(u){if(Array.isArray(u))return b(u)}(u)||function(u){if("u">typeof Symbol&&null!=u[Symbol.iterator]||null!=u["@@iterator"])return Array.from(u)}(u)||x(u)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function x(u,e){if(u){if("string"==typeof u)return b(u,e);var t=Object.prototype.toString.call(u).slice(8,-1);if("Object"===t&&u.constructor&&(t=u.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return b(u,e)}}function T(u,e){var t,n,r,l={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),o=Object.defineProperty;return o(a,"next",{value:i(0)}),o(a,"throw",{value:i(1)}),o(a,"return",{value:i(2)}),"function"==typeof Symbol&&o(a,Symbol.iterator,{value:function(){return this}}),a;function i(o){return function(i){var A=[o,i];if(t)throw TypeError("Generator is already executing.");for(;a&&(a=0,A[0]&&(l=0)),l;)try{if(t=1,n&&(r=2&A[0]?n.return:A[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,A[1])).done)return r;switch(n=0,r&&(A=[2&A[0],r.value]),A[0]){case 0:case 1:r=A;break;case 4:return l.label++,{value:A[1],done:!1};case 5:l.label++,n=A[1],A=[0];continue;case 7:A=l.ops.pop(),l.trys.pop();continue;default:if(!(r=(r=l.trys).length>0&&r[r.length-1])&&(6===A[0]||2===A[0])){l=0;continue}if(3===A[0]&&(!r||A[1]>r[0]&&A[1]<r[3])){l.label=A[1];break}if(6===A[0]&&l.label<r[1]){l.label=r[1],r=A;break}if(r&&l.label<r[2]){l.label=r[2],l.ops.push(A);break}r[2]&&l.ops.pop(),l.trys.pop();continue}A=e.call(u,l)}catch(u){A=[6,u],n=0}finally{t=r=0}if(5&A[0])throw A[1];return{value:A[0]?A[1]:void 0,done:!0}}}}function O(){var u,e,t=(u=["\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n\n .ant-spin-nested-loading,\n .ant-spin-container,\n .ant-table,\n .ant-table-container {\n min-height: 0;\n flex: 1;\n display: flex;\n flex-direction: column;\n }\n\n .ant-table-content {\n flex: 1;\n min-height: 0;\n }\n\n .ant-table-body {\n flex: 1;\n min-height: 0;\n }\n\n .ant-table-thead > tr > th {\n white-space: nowrap;\n }\n\n .ant-pagination {\n flex: 0 0 auto;\n }\n"],e||(e=u.slice(0)),Object.freeze(Object.defineProperties(u,{raw:{value:Object.freeze(e)}})));return O=function(){return t},t}var P=Object.keys(s.B)[0],L="sort",M=["user","roleName","locale","now","timestamp"],j=function(u){return"".concat(u,":")},R=(0,i.css)(O()),K=function(u){return null!==u&&(void 0===u?"undefined":u&&"u">typeof Symbol&&u.constructor===Symbol?"symbol":typeof u)=="object"&&!Array.isArray(u)},z=function(u){if(!K(u)||!K(u.response)||!K(u.response.data))return!1;var e=u.response.data.errors;return Array.isArray(e)&&e.some(function(u){return K(u)&&"AI_EMPLOYEE_USERNAME_CONFLICT"===u.code})},W=function(u){var e;if(K(u))return null==(e=u.data)?void 0:e.data},_=function(u){if(!K(u))return{};var e=u.data;return K(e)?e:{}},V=function(u){return K(u)&&"string"==typeof u.username},G=function(u){return K(u)&&"string"==typeof u.key&&"string"==typeof u.name},U=function(u,e,t,n){return v(function(){var r;return T(this,function(l){if("function"!=typeof(r=u.resource(e)[t]))throw Error("Missing resource action: ".concat(e,".").concat(t));return[2,r(n)]})})()},H=function(u,e){var t=k(S({},u),{username:f(u.username),nickname:"string"==typeof u.nickname?f(u.nickname):u.nickname});return e.edit&&("system"===u._aboutMode&&(t.about=null),delete t._aboutMode,delete t.enabled),t};function N(u,e){return v(function(){var t,n,r;return T(this,function(l){switch(l.label){case 0:return[4,U(u,"aiEmployees","list",{page:e.page,pageSize:e.pageSize,filter:{category:e.category},sort:[L]})];case 1:return n=W(t=l.sent()),r=_(t),[2,{data:Array.isArray(n)?n.filter(V):[],total:"number"==typeof r.count?r.count:void 0}]}})})()}function q(u,e,t){return v(function(){return T(this,function(n){switch(n.label){case 0:return[4,U(u,"aiEmployees","move",{sourceId:e,targetId:t,sortField:L})];case 1:return n.sent(),[2]}})})()}function Y(u,e){return v(function(){return T(this,function(t){switch(t.label){case 0:return[4,U(u,"aiEmployees","create",{values:H(e,{edit:!1})})];case 1:return t.sent(),[2]}})})()}function X(u,e){return v(function(){return T(this,function(t){switch(t.label){case 0:if(!e.username)throw Error("Missing AI employee username.");return[4,U(u,"aiEmployees","update",{values:H(e,{edit:!0}),filterByTk:e.username})];case 1:return t.sent(),[2]}})})()}function $(u,e){return v(function(){return T(this,function(t){switch(t.label){case 0:return[4,U(u,"aiEmployees","destroy",{filterByTk:e})];case 1:return t.sent(),[2]}})})()}function J(u,e,t){return v(function(){return T(this,function(n){switch(n.label){case 0:return[4,U(u,"aiEmployees","update",{filterByTk:e,values:{enabled:t}})];case 1:return n.sent(),[2]}})})()}function Q(u){return v(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,U(u,"aiSettings","isKnowledgeBaseEnabled")];case 1:return[2,K(e=W(t.sent()))&&!0===e.enabled]}})})()}function Z(u){return v(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,U(u,"aiKnowledgeBase","list",{fields:["key","name"],filter:{enabled:!0}})];case 1:return[2,Array.isArray(e=W(t.sent()))?e.filter(G):[]]}})})()}var uu=function(u){var e=u.disabled,t=u.value,a=u.onChange,o=l.theme.useToken().token,i=t||P,A=(0,n.useMemo)(function(){return Object.keys(s.B).map(function(u){return{seed:u,uri:(0,s.H)(u)}})},[]);return r().createElement(r().Fragment,null,r().createElement("div",{style:{marginBottom:o.marginLG+o.margin}},r().createElement(l.Avatar,{size:2*o.controlHeightLG+o.paddingSM+2*o.lineWidth,src:(0,s.H)(i)})),e?null:r().createElement(l.List,{grid:{gutter:o.margin,column:10},dataSource:A,renderItem:function(u){return r().createElement(l.List.Item,null,r().createElement("button",{"aria-label":u.seed,type:"button",onClick:function(){return null==a?void 0:a(u.seed)},onKeyDown:function(e){("Enter"===e.key||" "===e.key)&&(e.preventDefault(),null==a||a(u.seed))},style:{background:"transparent",borderColor:i===u.seed?o.colorPrimary:"transparent",borderStyle:"solid",borderWidth:2*o.lineWidth,borderRadius:"50%",cursor:"pointer",display:"inline-flex",padding:0}},r().createElement(l.Avatar,{size:o.controlHeightLG+o.paddingSM+2*o.lineWidth,src:u.uri})))}}))},ue=function(u){var e=u.edit,t=u.builtIn,n=(0,F.kj)();return r().createElement(r().Fragment,null,r().createElement(l.Form.Item,{name:"username",label:j(n("Username")),rules:[{required:!0,whitespace:!0},{validator:function(u,e){return"string"==typeof e&&y(e)?Promise.resolve():Promise.reject(Error(n("Use 1-64 letters, numbers, underscores, or hyphens.")))}}],preserve:!0},r().createElement(l.Input,{disabled:e})),r().createElement(l.Form.Item,{name:"nickname",label:j(n("Nickname")),rules:[{required:!0,whitespace:!0},{validator:function(u,e){return"string"==typeof e&&g(e)?Promise.resolve():Promise.reject(Error(n("Use 1-64 letters, numbers, spaces, or . _ - ' ( ) & \xb7.")))}}],preserve:!0},r().createElement(l.Input,{disabled:t})),r().createElement(l.Form.Item,{name:"position",label:j(n("Position")),extra:n("Position description"),preserve:!0},r().createElement(l.Input,{disabled:t,placeholder:n("Position placeholder")})),r().createElement(l.Form.Item,{name:"avatar",label:j(n("Avatar")),preserve:!0},r().createElement(uu,{disabled:t})),r().createElement(l.Form.Item,{name:"bio",label:j(n("Bio")),preserve:!0},r().createElement(l.Input.TextArea,{disabled:t,placeholder:n("Bio placeholder")})),r().createElement(l.Form.Item,{name:"greeting",label:j(n("Greeting message")),preserve:!0},r().createElement(l.Input.TextArea,{disabled:t,placeholder:n("Greeting message placeholder")})))},ut=function(u){var e,t=u.builtIn,a=u.record,o=(0,F.kj)(),i=l.theme.useToken().token,E=l.Form.useFormInstance(),s=null!=(e=l.Form.useWatch("_aboutMode",E))?e:(null==a?void 0:a.about)?"custom":"system";return(0,n.useEffect)(function(){t&&!E.getFieldValue("_aboutMode")&&E.setFieldValue("_aboutMode",(null==a?void 0:a.about)?"custom":"system")},[t,E,null==a?void 0:a.about]),r().createElement(r().Fragment,null,r().createElement(l.Alert,{message:o("Role setting description"),type:"info",showIcon:!0}),t?r().createElement(l.Form.Item,{name:"_aboutMode",preserve:!0},r().createElement(l.Radio.Group,null,r().createElement(l.Radio,{value:"system"},o("System default")),r().createElement(l.Radio,{value:"custom"},o("Custom")))):null,t&&"system"===s?r().createElement(l.Typography.Paragraph,{copyable:!0,style:{backgroundColor:i.colorFillQuaternary,borderColor:i.colorBorder,borderRadius:i.borderRadius,borderStyle:"solid",borderWidth:i.lineWidth,margin:0,maxHeight:12*i.controlHeightLG,overflowY:"auto",paddingBlock:i.paddingSM,paddingInline:i.padding,whiteSpace:"pre-wrap",wordBreak:"break-word"}},(null==a?void 0:a.defaultPrompt)||""):r().createElement(l.Form.Item,{name:"about",label:j(o("Role setting")),preserve:!0},r().createElement(A.VariableTextArea,{namespaces:M,placeholder:o("Role setting placeholder"),rows:15})))},un=function(u){return K(u)?u:{}},ur=function(u){return"string"==typeof u?{name:u,autoCall:!1}:K(u)&&"string"==typeof u.name?{name:u.name,autoCall:!0===u.autoCall}:void 0},ul=function(u){return K(u)?{skills:Array.isArray(u.skills)?u.skills.filter(function(u){return"string"==typeof u}):[],tools:Array.isArray(u.tools)?u.tools.map(ur).filter(function(u){return!!u}):[]}:{}},ua=function(u,e){var t=k(S({},u),{skillSettings:ul(e.skillSettings)});return K(e.modelSettings)&&(t.modelSettings=un(e.modelSettings)),t},uo=function(){var u=(0,c.M)(),e=w((0,n.useState)(!1),2),t=e[0],r=e[1];return(0,n.useEffect)(function(){var e=!1;return v(function(){return T(this,function(t){switch(t.label){case 0:r(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,u.getLLMServices()];case 2:return t.sent(),[3,5];case 3:return console.error(t.sent()),[3,5];case 4:return e||r(!1),[7];case 5:return[2]}})})().catch(function(u){console.error(u)}),function(){e=!0}},[u]),{services:u.llmServices,loading:t||u.llmServicesLoading}},ui=(0,E.observer)(function(){var u=(0,F.kj)(),e=l.Form.useFormInstance(),t=l.Form.useWatch("modelSettings",{form:e,preserve:!0}),a=w((0,n.useState)(function(){return un(e.getFieldValue("modelSettings"))}),2),o=a[0],i=a[1],A=uo(),E=A.services,s=A.loading,c=!!o.enabled,D=(0,n.useMemo)(function(){var u=Array.isArray(o.models)?o.models:[];if(u.length)return u.map(C.Wm).filter(function(u){return!!u});var e=(0,C.Wm)(o);return e?[e]:[]},[o]),B=(0,n.useCallback)(function(u){var t=S({},un(e.getFieldValue("modelSettings")),u);i(t),e.setFieldsValue({modelSettings:t})},[e]);return(0,n.useEffect)(function(){i(un(t))},[t]),(0,n.useEffect)(function(){if(c&&!D.length&&E.length){var u=E[0],e=null==u?void 0:u.enabledModels[0],t=u&&e?"".concat(u.llmService,":").concat(e.value):void 0;t&&B({models:[(0,C.JC)(t)]})}},[c,D.length,E,B]),r().createElement(r().Fragment,null,r().createElement(l.Alert,{type:"info",showIcon:!0,message:u("Restrict this AI employee to the selected models.")}),r().createElement(l.Form.Item,{label:r().createElement(l.Typography.Text,{strong:!0},j(u("Enable dedicated model configuration"))),preserve:!0},r().createElement(l.Switch,{checked:c,onChange:function(u){return B({enabled:u})}})),r().createElement(l.Form.Item,{label:r().createElement(l.Typography.Text,{strong:!0},j(u("Models"))),preserve:!0},r().createElement(C.AE,{disabled:!c,loading:s,placeholder:u("Select models"),services:E,value:D,onChange:function(u){u.length?B({llmService:void 0,model:void 0,models:u.map(C.JC)}):B({llmService:void 0,model:void 0,models:[]})}})))}),uA=function(){var u=(0,F.kj)();return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e?u(e):t}},uE=function(u){var e=u.title,t=u.description,n=l.theme.useToken().token;return r().createElement("div",null,r().createElement("div",{style:{fontWeight:n.fontWeightStrong,fontSize:n.fontSizeSM}},e),r().createElement("div",{style:{color:n.colorTextSecondary,fontSize:n.fontSizeSM}},t))},uF=(0,E.observer)(function(u){var e=u.builtIn,t=(0,F.kj)(),o=l.theme.useToken().token,i=uA(),A=(0,c.M)(),E=l.Form.useFormInstance(),s=ul(l.Form.useWatch("skillSettings",{form:E,preserve:!0})),D=Array.isArray(s.skills)?s.skills:[],B=w((0,n.useState)(e&&!D.length?[]:["custom-skills"]),2),C=B[0],m=B[1],d=r().useRef(D.length);(0,n.useEffect)(function(){A.getAISkills().catch(function(u){console.error(u)})},[A]);var f=function(u){var e=ul(E.getFieldValue("skillSettings"));E.setFieldsValue({skillSettings:k(S({},e),{skills:u})})},p=new Set(D),y=new Map(A.aiSkills.map(function(u){return[u.name,u]})),g=A.aiSkills.filter(function(u){return"GENERAL"===u.scope}),b=D.map(function(u){return y.get(u)}).filter(function(u){return!!u&&"SPECIFIED"===u.scope}),h=A.aiSkills.filter(function(u){return"CUSTOM"===u.scope}),v=D.filter(function(u){var e=y.get(u);return!e||"CUSTOM"===e.scope});(0,n.useEffect)(function(){var u=0===d.current;e&&0===v.length?m([]):u&&v.length>0&&m(["custom-skills"]),d.current=v.length},[e,v.length]);var x=h.filter(function(u){return!p.has(u.name)}).map(function(u){var e,t;return{key:u.name,label:r().createElement("div",{style:{maxWidth:8*o.controlHeightLG,minWidth:4*o.controlHeightLG}},r().createElement("div",null,i(null!=(e=u.title)?e:u.name,u.name)),r().createElement(l.Typography.Text,{type:"secondary"},i(null!=(t=u.about)?t:u.description))),onClick:function(){var e=ul(E.getFieldValue("skillSettings")),t=Array.isArray(e.skills)?e.skills:[];t.includes(u.name)||f(I(t).concat([u.name]))}}}),T=function(u){var e,t;return r().createElement(l.List.Item,{key:u.name},r().createElement("div",null,i(null!=(e=u.title)?e:u.name,u.name)),r().createElement(l.Typography.Text,{type:"secondary"},i(null!=(t=u.about)?t:u.description)))},O=[{key:"general-skills",label:r().createElement(uE,{title:t("General skills"),description:t("Shared by all AI employees.")}),children:r().createElement(l.List,{itemLayout:"vertical",size:"small",dataSource:g,renderItem:T})}];return e&&b.length&&O.push({key:"specific-skills",label:r().createElement(uE,{title:t("Employee-specific skills"),description:t("Only available to this AI employee.")}),children:r().createElement(l.List,{itemLayout:"vertical",size:"small",dataSource:b,renderItem:T})}),h.length&&O.push({key:"custom-skills",label:r().createElement(uE,{title:t("Custom skills"),description:t("Can be added to or removed from this AI employee.")}),extra:r().createElement("div",{onClick:function(u){u.stopPropagation()},onKeyDown:function(u){u.stopPropagation()}},r().createElement(l.Dropdown,{menu:{items:x},disabled:!x.length,placement:"bottomRight"},r().createElement(l.Button,{type:"primary",icon:r().createElement(a.PlusOutlined,null),disabled:!x.length,style:{pointerEvents:x.length?void 0:"none"}},t("Add skill")))),children:r().createElement(l.List,{itemLayout:"vertical",bordered:!0,dataSource:v,renderItem:function(u){var e,n,o=y.get(u),A=o?i(null!=(e=o.title)?e:o.name,o.name):u,E=o?i(null!=(n=o.about)?n:o.description):null;return r().createElement(l.List.Item,{key:u,extra:r().createElement(l.Button,{"aria-label":t("Delete"),icon:r().createElement(a.DeleteOutlined,null),type:"text",onClick:function(){f(D.filter(function(e){return e!==u}))}})},r().createElement("div",null,A),E?r().createElement(l.Typography.Text,{type:"secondary"},E):null)}})}),A.aiSkillsLoading?r().createElement(l.Spin,null):r().createElement(l.Collapse,{ghost:!0,size:"small",activeKey:C,onChange:function(u){return m(Array.isArray(u)?u.map(String):[String(u)])},items:O})}),us=function(u,e){return"CUSTOM"===u.scope?(null==e?void 0:e.autoCall)?"ALLOW":"ASK":"ALLOW"===u.defaultPermission?"ALLOW":"ASK"},uc=(0,E.observer)(function(u){var e=u.builtIn,t=(0,F.kj)(),o=l.theme.useToken().token,i=uA(),A=(0,c.M)(),E=l.Form.useFormInstance(),s=l.Form.useWatch("skillSettings",{form:E,preserve:!0}),D=w((0,n.useState)(function(){return ul(E.getFieldValue("skillSettings"))}),2),B=D[0],C=D[1],m=Array.isArray(B.tools)?B.tools:[],d=w((0,n.useState)(e&&!m.length?[]:["custom-tools"]),2),f=d[0],p=d[1],y=r().useRef(m.length),g=[{label:t("Ask"),value:"ASK"},{label:t("Allow"),value:"ALLOW"}];(0,n.useEffect)(function(){A.refreshAITools().catch(function(u){console.error(u)})},[A]),(0,n.useEffect)(function(){C(ul(s))},[s]);var b=function(u){var e=k(S({},ul(E.getFieldValue("skillSettings"))),{tools:u});C(e),E.setFieldsValue({skillSettings:e})},h=new Set(m.map(function(u){return u.name})),v=new Map(A.aiTools.map(function(u){return[u.definition.name,u]})),x=A.aiTools.filter(function(u){return"GENERAL"===u.scope&&"loader"===u.from}),T=m.filter(function(u){var e=v.get(u.name);return e&&"GENERAL"!==e.scope&&"CUSTOM"!==e.scope}),O=m.filter(function(u){var e=v.get(u.name);return!e||"CUSTOM"===e.scope});(0,n.useEffect)(function(){var u=0===y.current;e&&0===O.length?p([]):u&&O.length>0&&p(["custom-tools"]),y.current=O.length},[e,O.length]);var P=A.aiTools.filter(function(u){return"CUSTOM"===u.scope&&!h.has(u.definition.name)}).map(function(u){var e,t,n,a;return{key:u.definition.name,label:r().createElement("div",{style:{maxWidth:8*o.controlHeightLG,minWidth:4*o.controlHeightLG}},r().createElement(l.Flex,{justify:"space-between"},r().createElement("div",null,i(null!=(e=null==(n=u.introduction)?void 0:n.title)?e:u.definition.name,u.definition.name))),r().createElement(l.Typography.Text,{type:"secondary"},i(null!=(t=null==(a=u.introduction)?void 0:a.about)?t:u.definition.description))),onClick:function(){var e=ul(E.getFieldValue("skillSettings")),t=Array.isArray(e.tools)?e.tools:[];t.some(function(e){return e.name===u.definition.name})||b(I(t).concat([{name:u.definition.name,autoCall:!1}]))}}}),L=function(u){var e,n,a,o,A="definition"in u?u:v.get(u.name);if(!A)return null;var E="definition"in u?void 0:u;return r().createElement(l.List.Item,{key:A.definition.name,extra:r().createElement(l.Flex,{vertical:!0,justify:"end"},r().createElement(l.Space,null,r().createElement(l.Typography.Text,{type:"secondary"},t("Permission")),r().createElement(l.Segmented,{size:"small",options:g,value:us(A,E),disabled:!0})))},r().createElement("div",null,i(null!=(e=null==(a=A.introduction)?void 0:a.title)?e:A.definition.name,A.definition.name)),r().createElement(l.Typography.Text,{type:"secondary"},i(null!=(n=null==(o=A.introduction)?void 0:o.about)?n:A.definition.description)))},M=[{key:"general-tools",label:r().createElement(uE,{title:t("General tools"),description:t("Shared by all AI employees.")}),children:r().createElement(l.List,{itemLayout:"vertical",size:"small",dataSource:x,renderItem:L})}];return e&&T.length&&M.push({key:"specific-tools",label:r().createElement(uE,{title:t("Employee-specific tools"),description:t("Only available to this AI employee.")}),children:r().createElement(l.List,{itemLayout:"vertical",size:"small",dataSource:T,renderItem:L})}),M.push({key:"custom-tools",label:r().createElement(uE,{title:t("Custom tools"),description:t("Created by workflow. You can add/remove and set default permissions.")}),extra:r().createElement("div",{onClick:function(u){u.stopPropagation()},onKeyDown:function(u){u.stopPropagation()}},r().createElement(l.Dropdown,{menu:{items:P},disabled:!(null==P?void 0:P.length),placement:"bottomRight"},r().createElement(l.Button,{type:"primary",icon:r().createElement(a.PlusOutlined,null),disabled:!(null==P?void 0:P.length),style:{pointerEvents:(null==P?void 0:P.length)?void 0:"none"}},t("Add tool")))),children:r().createElement(l.List,{itemLayout:"vertical",bordered:!0,dataSource:O,renderItem:function(u){var e,n,o,A,E=v.get(u.name),F=E?i(null!=(e=null==(o=E.introduction)?void 0:o.title)?e:E.definition.name,E.definition.name):u.name,s=E?i(null!=(n=null==(A=E.introduction)?void 0:A.about)?n:E.definition.description):null;return r().createElement(l.List.Item,{key:u.name,extra:r().createElement(l.Space,null,r().createElement(l.Typography.Text,null,t("Permission")),r().createElement(l.Segmented,{size:"small",options:g,value:E?us(E,u):u.autoCall?"ALLOW":"ASK",onChange:function(e){b(m.map(function(t){return t.name===u.name?k(S({},t),{autoCall:"ALLOW"===e}):t}))}}),r().createElement(l.Button,{"aria-label":t("Delete"),icon:r().createElement(a.DeleteOutlined,null),type:"text",onClick:function(){b(m.filter(function(e){return e.name!==u.name}))}}))},r().createElement("div",null,F),s?r().createElement(l.Typography.Text,{type:"secondary"},s):null)}})}),A.aiToolsLoading?r().createElement(l.Spin,null):r().createElement(l.Collapse,{ghost:!0,size:"small",activeKey:f,onChange:function(u){return p(Array.isArray(u)?u.map(String):[String(u)])},items:M})}),uD=function(u){var e=u.apiClient,t=(0,F.kj)(),a=l.Form.useFormInstance(),o=l.Form.useWatch("enableKnowledgeBase",a),i=w((0,n.useState)([]),2),A=i[0],E=i[1],s=w((0,n.useState)(!1),2),c=s[0],D=s[1];return(0,n.useEffect)(function(){var u=!1;return v(function(){var t;return T(this,function(n){switch(n.label){case 0:D(!0),n.label=1;case 1:return n.trys.push([1,3,4,5]),[4,Z(e)];case 2:return t=n.sent(),u||E(t),[3,5];case 3:return console.error(n.sent()),[3,5];case 4:return u||D(!1),[7];case 5:return[2]}})})().catch(function(u){console.error(u)}),function(){u=!0}},[e]),r().createElement(r().Fragment,null,r().createElement(l.Form.Item,{name:"enableKnowledgeBase",label:j(t("Enable Knowledge Base")),valuePropName:"checked",preserve:!0},r().createElement(l.Switch,null)),r().createElement(l.Form.Item,{name:"knowledgeBasePrompt",label:j(t("Knowledge Base Prompt")),rules:[{required:!0}],preserve:!0},r().createElement(l.Input.TextArea,{disabled:!o,autoSize:{minRows:5}})),r().createElement(l.Form.Item,{name:["knowledgeBase","knowledgeBaseKeys"],label:j(t("Knowledge Base")),rules:[{required:!!o}],preserve:!0},r().createElement(l.Select,{disabled:!o,fieldNames:{label:"name",value:"key"},loading:c,mode:"multiple",options:A})),r().createElement(l.Form.Item,{name:["knowledgeBase","topK"],label:j(t("Top K")),rules:[{required:!0}],preserve:!0},r().createElement(l.InputNumber,{disabled:!o,min:1,max:100})),r().createElement(l.Form.Item,{name:["knowledgeBase","score"],label:j(t("Score")),rules:[{required:!0}],preserve:!0},r().createElement(l.InputNumber,{disabled:!o,min:0,max:1,step:.1})))},uB=function(u){var e,t=u.apiClient,n=u.activeTab,a=u.edit,o=u.onTabChange,i=u.record,A=u.knowledgeBaseEnabled,E=(0,F.kj)(),s=l.Form.useFormInstance(),c=null!=(e=l.Form.useWatch("chatSettings",s))?e:{},D=!!(null==i?void 0:i.builtIn),B=!1!==c.enableSkills,C=!1!==c.enableTools;return r().createElement(l.Tabs,{activeKey:n,onChange:o,items:[{key:"profile",label:E("Profile"),children:r().createElement(ue,{edit:a,builtIn:D}),forceRender:!0},{key:"roleSetting",label:E("Role setting"),children:r().createElement(ut,{builtIn:D,record:i}),forceRender:!0},{key:"modelSettings",label:E("Model settings"),children:r().createElement(ui,null),forceRender:!0}].concat(I(B?[{key:"skills",label:E("Skills"),children:r().createElement(uF,{builtIn:D}),forceRender:!0}]:[]),I(C?[{key:"tools",label:E("Tools"),children:r().createElement(uc,{builtIn:D}),forceRender:!0}]:[]),I(A?[{key:"knowledgeBase",label:E("KnowledgeBase"),children:r().createElement(uD,{apiClient:t}),forceRender:!0}]:[]))})},uC=function(u){var e=u.record,t=u.onUpdated,a=(0,A.useApp)(),o=(0,F.kj)(),i=l.App.useApp().message,E=(0,c.M)(),s=w((0,n.useState)(!1),2),D=s[0],B=s[1];return r().createElement(l.Switch,{checked:!!e.enabled,onChange:function(u){return v(function(){return T(this,function(n){switch(n.label){case 0:B(!0),n.label=1;case 1:return n.trys.push([1,5,6,7]),[4,J(a.apiClient,e.username,u)];case 2:return n.sent(),i.success(o("Saved successfully")),[4,t()];case 3:return n.sent(),[4,E.refreshAIEmployees()];case 4:return n.sent(),[3,7];case 5:return console.error(n.sent()),i.error(o("Failed to update")),[3,7];case 6:return B(!1),[7];case 7:return[2]}})})()},loading:D,size:"small"})},um=function(){var u=(0,A.useApp)(),e=(0,E.useFlowContext)(),t=(0,F.kj)(),i=l.theme.useToken().token,B=l.App.useApp().message,C=(0,c.M)(),m=w((0,n.useState)("business"),2),d=m[0],f=m[1],p=w((0,n.useState)([]),2),y=p[0],g=p[1],b=w((0,n.useState)(!1),2),h=b[0],S=b[1],k=w((0,n.useState)(!1),2),I=k[0],x=k[1],O=w((0,n.useState)([]),2),P=O[0],L=O[1],M=u.apiClient.auth,j=(null==M?void 0:M.role)==="root",K=(0,n.useMemo)(function(){return{color:i.colorPrimary,marginInline:-i.paddingSM,paddingBlock:i.paddingSM,paddingInlineEnd:i.paddingXS+i.paddingSM,paddingInlineStart:i.paddingSM}},[i.colorPrimary,i.paddingSM,i.paddingXS]),z=(0,n.useCallback)(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:d;return v(function(){return T(this,function(t){switch(t.label){case 0:S(!0),t.label=1;case 1:return t.trys.push([1,,3,4]),[4,N(u.apiClient,{category:e})];case 2:return g(t.sent().data),[3,4];case 3:return S(!1),[7];case 4:return[2]}})})()},[u.apiClient,d]);(0,n.useEffect)(function(){z().catch(function(u){console.error(u),S(!1)})},[z]),(0,n.useEffect)(function(){v(function(){return T(this,function(e){switch(e.label){case 0:return e.trys.push([0,2,,3]),[4,Q(u.apiClient)];case 1:return x.apply(void 0,[e.sent()]),[3,3];case 2:return console.error(e.sent()),[3,3];case 3:return[2]}})})().catch(function(u){console.error(u)})},[u.apiClient]);var W=function(u){e.viewer.open({type:"drawer",width:D.o,closable:!0,content:r().createElement(ud,{editingRecord:u,knowledgeBaseEnabled:I,onSubmitted:function(){return v(function(){return T(this,function(u){switch(u.label){case 0:return[4,z()];case 1:return u.sent(),[4,C.refreshAIEmployees()];case 2:return u.sent(),[2]}})})()}})})},_=[{title:t("Avatar"),dataIndex:"avatar",render:function(u){return u?r().createElement(l.Avatar,{shape:"circle",size:"large",src:(0,s.H)(u)}):null}},{title:t("Username"),dataIndex:"username",render:function(u,e){var n=e.missingKnowledgeBaseKeys||[];return n.length?r().createElement(l.Space,{size:"small"},r().createElement("span",null,u),r().createElement(l.Tooltip,{title:t("Missing knowledge base configuration for keys: {{keys}}. Create knowledge bases with the same keys to enable this employee normally.",{keys:n.join(", ")})},r().createElement(a.ExclamationCircleOutlined,null))):u}},{title:t("Nickname"),dataIndex:"nickname"},{title:t("Position"),dataIndex:"position"},{title:t("Enabled"),dataIndex:"enabled",render:function(u,e){return r().createElement(uC,{record:e,onUpdated:function(){return z()}})}},{title:t("Actions"),key:"actions",render:function(e,n){return r().createElement(l.Space,{size:i.marginXS},r().createElement("a",{style:K,onClick:function(){return W(n)}},t("Edit")),r().createElement(l.Popconfirm,{title:t("Delete AI employee"),description:t("Are you sure you want to delete this AI employee?"),onConfirm:function(){return v(function(){return T(this,function(e){switch(e.label){case 0:if(n.builtIn&&!j)return B.warning(t("Cannot delete built-in ai employees")),[2];return[4,$(u.apiClient,n.username)];case 1:return e.sent(),B.success(t("Saved successfully")),[4,z()];case 2:return e.sent(),[4,C.refreshAIEmployees()];case 3:return e.sent(),[2]}})})()}},r().createElement("a",{style:K},t("Delete"))))}}];return r().createElement(l.Card,{style:{display:"flex",flexDirection:"column",minHeight:"100%"},styles:{body:{display:"flex",flex:1,flexDirection:"column",minHeight:0}}},r().createElement(l.Flex,{vertical:!0,gap:"middle",style:{flex:1,minHeight:0}},r().createElement(l.Flex,{justify:"space-between",wrap:"wrap",gap:"middle"},r().createElement(l.Radio.Group,{optionType:"button",value:d,options:[{label:t("Business"),value:"business"},{label:t("Developer"),value:"developer"}],onChange:function(u){return f(u.target.value)}}),r().createElement(l.Space,null,r().createElement(l.Button,{icon:r().createElement(a.ReloadOutlined,null),onClick:function(){return z()}},t("Refresh")),r().createElement(l.Button,{type:"primary",icon:r().createElement(a.PlusOutlined,null),onClick:function(){e.viewer.open({type:"drawer",width:D.o,closable:!0,content:r().createElement(ud,{knowledgeBaseEnabled:I,onSubmitted:function(){return v(function(){return T(this,function(u){switch(u.label){case 0:return[4,z()];case 1:return u.sent(),[4,C.refreshAIEmployees()];case 2:return u.sent(),[2]}})})()}})})}},t("New AI employee")))),r().createElement("div",{style:{display:"flex",flex:1,flexDirection:"column",minHeight:0}},r().createElement(A.Table,{rowKey:"username",loading:h,columns:_,dataSource:y,className:R,isDraggable:!0,onSortEnd:function(e,n){return v(function(){var r,l,a;return T(this,function(i){switch(i.label){case 0:if(!e.username||!n.username||e.username===n.username)return[2];r=y,l=y.findIndex(function(u){return u.username===e.username}),a=y.findIndex(function(u){return u.username===n.username}),l>=0&&a>=0&&g((0,o.arrayMove)(y,l,a)),i.label=1;case 1:return i.trys.push([1,5,,6]),[4,q(u.apiClient,e.username,n.username)];case 2:return i.sent(),B.success(t("Saved successfully")),[4,z()];case 3:return i.sent(),[4,C.refreshAIEmployees()];case 4:return i.sent(),[3,6];case 5:return console.error(i.sent()),g(r),B.error(t("Failed to update")),[3,6];case 6:return[2]}})})()},rowSelection:{selectedRowKeys:P,onChange:L},pagination:{defaultPageSize:20,showTotal:function(u){return t("Total {{count}} items",{count:u})}},scroll:{x:"max-content",y:"100%"}}))))},ud=function(u){var e=l.App.useApp().message;return r().createElement(l.App,{component:!1},r().createElement(uf,k(S({},u),{message:e})))},uf=function(u){var e=u.editingRecord,t=u.knowledgeBaseEnabled,a=u.onSubmitted,o=u.message,i=(0,A.useApp)(),s=(0,E.useFlowContext)(),c=(0,F.kj)(),D=w(l.Form.useForm(),1)[0],C=w((0,n.useState)(!1),2),m=C[0],d=C[1],f=w((0,n.useState)("profile"),2),p=f[0],y=f[1],g=w((0,n.useState)(!1),2),b=g[0],h=g[1],I=(0,n.useRef)();I.current||(I.current=e?k(S({},e),{_aboutMode:e.builtIn?e.about?"custom":"system":void 0}):{username:(0,E.randomId)(),enabled:!0,enableKnowledgeBase:!1,knowledgeBase:{knowledgeBaseKeys:[],topK:3,score:"0.6"},knowledgeBasePrompt:c("knowledge Base Prompt default"),avatar:P,builtIn:!1,category:"business"});var x=I.current,O=s.view,L=O.Header,M=O.Footer;(0,n.useEffect)(function(){D.setFieldsValue(x)},[D,x]);var j=(0,B.C)({view:s.view,form:D,initialValues:x,dirty:b,title:c("Unsaved changes"),content:c("Are you sure you don't want to save?")});return r().createElement(r().Fragment,null,r().createElement(L,{title:e?c("Edit AI employee"):c("New AI employee")}),r().createElement(l.Spin,{spinning:m},r().createElement(l.Form,{form:D,layout:"vertical",onFinish:function(u){return v(function(){var t,n;return T(this,function(r){switch(r.label){case 0:d(!0),r.label=1;case 1:if(r.trys.push([1,8,9,10]),t=ua(u,D.getFieldsValue(!0)),!e)return[3,3];return[4,X(i.apiClient,t)];case 2:return r.sent(),[3,5];case 3:return[4,Y(i.apiClient,t)];case 4:r.sent(),r.label=5;case 5:return o.success(c("Saved successfully")),[4,a()];case 6:return r.sent(),[4,s.view.close(void 0,!0)];case 7:return r.sent(),[3,10];case 8:if(n=r.sent(),!e&&z(n))return y("profile"),D.setFields([{name:"username",errors:[c("Username already exists")]}]),[2];throw n;case 9:return d(!1),[7];case 10:return[2]}})})()},onValuesChange:function(){return h(!0)}},r().createElement(uB,{apiClient:i.apiClient,activeTab:p,edit:!!e,onTabChange:y,record:e,knowledgeBaseEnabled:t}))),r().createElement(M,null,r().createElement(l.Flex,{justify:"end",gap:"small"},r().createElement(l.Button,{onClick:j},c("Cancel")),r().createElement(l.Button,{type:"primary",loading:m,onClick:function(){return D.submit()}},c("Submit")))))},up=um}}]);
|