@nocobase/plugin-ai 2.2.0-alpha.11 → 2.2.0-alpha.12

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.
Files changed (120) hide show
  1. package/dist/ai/docs/nocobase/ai-employees/block/ai-chat-box.md +133 -0
  2. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/documents.md +1 -1
  3. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/index.md +11 -7
  4. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/settings.md +12 -8
  5. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/vector-database.md +3 -3
  6. package/dist/ai/docs/nocobase/ai-employees/workflow/nodes/knowledge/create-document.md +1 -1
  7. package/dist/ai/docs/nocobase/ops-management/migration-manager/built-in-tables.md +1 -2
  8. package/dist/ai/docs/nocobase/runjs/context/ai.md +194 -4
  9. package/dist/ai/tools/getSkill.js +1 -1
  10. package/dist/client/244.8631eb5cf3f05e21.js +10 -0
  11. package/dist/client/681.6ffbc9329b9ac242.js +10 -0
  12. package/dist/client/index.d.ts +1 -3
  13. package/dist/client/index.js +8 -8
  14. package/dist/client-v2/244.c428e645ecb94414.js +10 -0
  15. package/dist/client-v2/420.b2aedb1ff71fca0e.js +10 -0
  16. package/dist/client-v2/681.6890caa389564ff7.js +10 -0
  17. package/dist/client-v2/ai-employees/AIEmployeeShortcut.d.ts +2 -0
  18. package/dist/client-v2/ai-employees/AddContextButton.d.ts +2 -0
  19. package/dist/client-v2/ai-employees/chatbox/components/AIEmployeeSwitcher.d.ts +1 -0
  20. package/dist/client-v2/ai-employees/chatbox/components/ChatBoxUnreadBadge.d.ts +17 -0
  21. package/dist/client-v2/ai-employees/chatbox/components/Conversations.d.ts +9 -1
  22. package/dist/client-v2/ai-employees/chatbox/components/MessageRenderers.d.ts +1 -1
  23. package/dist/client-v2/ai-employees/chatbox/components/Messages.d.ts +5 -1
  24. package/dist/client-v2/ai-employees/chatbox/components/ModelSwitcher.d.ts +4 -0
  25. package/dist/client-v2/ai-employees/chatbox/components/Sender.d.ts +33 -1
  26. package/dist/client-v2/ai-employees/chatbox/components/index.d.ts +1 -0
  27. package/dist/client-v2/ai-employees/chatbox/hooks/useChat.d.ts +8 -5
  28. package/dist/client-v2/ai-employees/chatbox/hooks/useChatBoxActions.d.ts +3 -2
  29. package/dist/client-v2/ai-employees/chatbox/hooks/useChatBoxEffect.d.ts +2 -1
  30. package/dist/client-v2/ai-employees/chatbox/hooks/useChatConversationActions.d.ts +3 -2
  31. package/dist/client-v2/ai-employees/chatbox/hooks/useChatMessageActions.d.ts +4 -2
  32. package/dist/client-v2/ai-employees/chatbox/hooks/useToolCallActions.d.ts +3 -1
  33. package/dist/client-v2/ai-employees/chatbox/hooks/useUploadFiles.d.ts +13 -3
  34. package/dist/client-v2/ai-employees/chatbox/hooks/useWorkflowTasks.d.ts +3 -2
  35. package/dist/client-v2/ai-employees/chatbox/index.d.ts +17 -0
  36. package/dist/client-v2/ai-employees/chatbox/roles.d.ts +2 -153
  37. package/dist/client-v2/ai-employees/chatbox/stores/chat-box.d.ts +46 -31
  38. package/dist/client-v2/ai-employees/chatbox/stores/chat-conversations.d.ts +7 -7
  39. package/dist/client-v2/ai-employees/chatbox/stores/chat-messages.d.ts +23 -18
  40. package/dist/client-v2/ai-employees/chatbox/stores/chat-sender.d.ts +43 -0
  41. package/dist/client-v2/ai-employees/chatbox/stores/chat-tool-call.d.ts +6 -5
  42. package/dist/client-v2/ai-employees/chatbox/stores/chat-tools.d.ts +11 -5
  43. package/dist/client-v2/ai-employees/chatbox/stores/mounted-chat-boxes.d.ts +20 -0
  44. package/dist/client-v2/ai-employees/chatbox/stores/runtime.d.ts +43 -0
  45. package/dist/client-v2/ai-employees/chatbox/stores/workflow-tasks.d.ts +22 -10
  46. package/dist/client-v2/ai-employees/chatbox/upload.d.ts +19 -0
  47. package/dist/client-v2/ai-employees/chatbox/utils.d.ts +28 -4
  48. package/dist/client-v2/ai-employees/tools/SuggestionsOptionsCard.d.ts +1 -1
  49. package/dist/client-v2/ai-employees/tools/WorkflowTaskOutputCard.d.ts +1 -1
  50. package/dist/client-v2/ai-employees/types.d.ts +27 -0
  51. package/dist/client-v2/block/ai-chat-box/AIChatBoxBlockModel.d.ts +21 -0
  52. package/dist/client-v2/block/ai-chat-box/AIChatBoxCoreModel.d.ts +13 -0
  53. package/dist/client-v2/block/ai-chat-box/components/AIChatBoxCoreView.d.ts +10 -0
  54. package/dist/client-v2/block/ai-chat-box/components/AIChatBoxView.d.ts +12 -0
  55. package/dist/client-v2/block/ai-chat-box/index.d.ts +14 -0
  56. package/dist/client-v2/block/ai-chat-box/settings.d.ts +12 -0
  57. package/dist/client-v2/block/ai-chat-box/sub-models.d.ts +26 -0
  58. package/dist/client-v2/block/ai-chat-box/types.d.ts +38 -0
  59. package/dist/client-v2/block/ai-chat-box/utils.d.ts +26 -0
  60. package/dist/client-v2/index.d.ts +3 -5
  61. package/dist/client-v2/index.js +3 -3
  62. package/dist/client-v2/llm-services/model-select.d.ts +33 -0
  63. package/dist/client-v2/llm-services/utils.d.ts +1 -0
  64. package/dist/client-v2/manager/ai-manager.d.ts +8 -3
  65. package/dist/client-v2/models/ai-employees/AIEmployeeActionModel.d.ts +4 -1
  66. package/dist/client-v2/models/ai-employees/AIEmployeeShortcutModel.d.ts +5 -0
  67. package/dist/client-v2/pages/EmployeesPage.d.ts +1 -0
  68. package/dist/client-v2/runjs/registerAIEmployeeRunJSFacade.d.ts +1 -0
  69. package/dist/common/ai-employee-validation.d.ts +15 -0
  70. package/dist/common/ai-employee-validation.js +61 -0
  71. package/dist/common/error-codes.d.ts +13 -0
  72. package/dist/common/error-codes.js +48 -0
  73. package/dist/common/llm-service-models.d.ts +16 -0
  74. package/dist/common/llm-service-models.js +84 -0
  75. package/dist/externalVersion.js +15 -15
  76. package/dist/locale/en-US.json +62 -0
  77. package/dist/locale/zh-CN.json +62 -0
  78. package/dist/node_modules/@langchain/mistralai/package.json +1 -1
  79. package/dist/node_modules/@langchain/xai/package.json +1 -1
  80. package/dist/node_modules/fs-extra/package.json +1 -1
  81. package/dist/node_modules/jsonrepair/package.json +1 -1
  82. package/dist/node_modules/just-bash/package.json +1 -1
  83. package/dist/node_modules/nodejs-snowflake/package.json +1 -1
  84. package/dist/node_modules/openai/package.json +1 -1
  85. package/dist/node_modules/zod/package.json +1 -1
  86. package/dist/server/ai-employees/ai-conversations.d.ts +2 -1
  87. package/dist/server/ai-employees/ai-conversations.js +2 -0
  88. package/dist/server/ai-employees/ai-employee.d.ts +1 -0
  89. package/dist/server/ai-employees/ai-employee.js +6 -0
  90. package/dist/server/ai-employees/middleware/conversation.js +9 -2
  91. package/dist/server/collections/ai-conversations.js +5 -0
  92. package/dist/server/document-loader/constants.js +0 -1
  93. package/dist/server/plugin.d.ts +1 -0
  94. package/dist/server/plugin.js +25 -0
  95. package/dist/server/resource/aiConversations.js +6 -2
  96. package/dist/server/resource/aiEmployees.d.ts +2 -0
  97. package/dist/server/resource/aiEmployees.js +62 -0
  98. package/dist/server/resource/aiWorkflowTasks.js +9 -1
  99. package/dist/server/resource/llmServices.d.ts +11 -0
  100. package/dist/server/resource/llmServices.js +85 -0
  101. package/dist/server/types/knowledge-base.type.d.ts +6 -2
  102. package/dist/swagger/common.d.ts +143 -0
  103. package/dist/swagger/common.js +144 -0
  104. package/dist/swagger/employees.d.ts +301 -0
  105. package/dist/swagger/employees.js +131 -0
  106. package/dist/swagger/index.d.ts +1588 -0
  107. package/dist/swagger/index.js +62 -0
  108. package/dist/swagger/llm.d.ts +555 -0
  109. package/dist/swagger/llm.js +247 -0
  110. package/dist/swagger/schemas.d.ts +736 -0
  111. package/dist/swagger/schemas.js +381 -0
  112. package/package.json +2 -2
  113. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/vector-store.md +0 -24
  114. package/dist/client/372.49163fac65cef81c.js +0 -10
  115. package/dist/client/681.399948c18d753667.js +0 -10
  116. package/dist/client-v2/372.387161cdeb106987.js +0 -10
  117. package/dist/client-v2/406.341be51205c674e0.js +0 -10
  118. package/dist/client-v2/681.082f4f1c7b841983.js +0 -10
  119. package/dist/client-v2/ai-employees/chatbox/stores/create-selectors.d.ts +0 -46
  120. package/dist/client-v2/ai-employees/chatbox/utils/normalizeTriggerTaskOptions.d.ts +0 -19
@@ -36,16 +36,76 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
36
36
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
37
37
  var aiEmployees_exports = {};
38
38
  __export(aiEmployees_exports, {
39
+ create: () => create,
39
40
  getTemplates: () => getTemplates,
40
41
  list: () => list,
41
42
  listByUser: () => listByUser,
43
+ update: () => update,
42
44
  updateUserPrompt: () => updateUserPrompt
43
45
  });
44
46
  module.exports = __toCommonJS(aiEmployees_exports);
45
47
  var import_actions = __toESM(require("@nocobase/actions"));
48
+ var import_database = require("@nocobase/database");
46
49
  var templates = __toESM(require("../ai-employees/templates"));
47
50
  var import_lodash = __toESM(require("lodash"));
48
51
  var import_ai_feature_manager = require("../manager/ai-feature-manager");
52
+ var import_error_codes = require("../../common/error-codes");
53
+ var import_ai_employee_validation = require("../../common/ai-employee-validation");
54
+ const isUniqueConstraintError = (error) => error instanceof import_database.UniqueConstraintError || typeof error === "object" && error !== null && "name" in error && error.name === "SequelizeUniqueConstraintError";
55
+ const throwUsernameConflict = (ctx) => ctx.throw(409, {
56
+ code: import_error_codes.AI_EMPLOYEE_USERNAME_CONFLICT,
57
+ message: ctx.t("Username already exists")
58
+ });
59
+ const isRecord = (value) => value !== null && typeof value === "object" && !Array.isArray(value);
60
+ const validateAndNormalizeProfileValues = (ctx) => {
61
+ const values = ctx.action.params.values;
62
+ if (!isRecord(values)) {
63
+ return;
64
+ }
65
+ if ("username" in values) {
66
+ if (typeof values.username !== "string" || !(0, import_ai_employee_validation.isValidAIEmployeeUsername)(values.username)) {
67
+ ctx.throw(400, {
68
+ code: import_error_codes.AI_EMPLOYEE_USERNAME_INVALID,
69
+ message: ctx.t("Use 1-64 letters, numbers, underscores, or hyphens.")
70
+ });
71
+ }
72
+ values.username = (0, import_ai_employee_validation.normalizeAIEmployeeName)(values.username);
73
+ }
74
+ if ("nickname" in values) {
75
+ if (typeof values.nickname !== "string" || !(0, import_ai_employee_validation.isValidAIEmployeeNickname)(values.nickname)) {
76
+ ctx.throw(400, {
77
+ code: import_error_codes.AI_EMPLOYEE_NICKNAME_INVALID,
78
+ message: ctx.t("Use 1-64 letters, numbers, spaces, or . _ - ' ( ) & \xB7.")
79
+ });
80
+ }
81
+ values.nickname = (0, import_ai_employee_validation.normalizeAIEmployeeName)(values.nickname);
82
+ }
83
+ };
84
+ const create = async (ctx, next) => {
85
+ var _a;
86
+ validateAndNormalizeProfileValues(ctx);
87
+ const username = (_a = ctx.action.params.values) == null ? void 0 : _a.username;
88
+ if (typeof username === "string") {
89
+ const existingEmployee = await ctx.db.getRepository("aiEmployees").findOne({
90
+ filter: { username }
91
+ });
92
+ if (existingEmployee) {
93
+ throwUsernameConflict(ctx);
94
+ }
95
+ }
96
+ try {
97
+ await import_actions.default.create(ctx, next);
98
+ } catch (error) {
99
+ if (isUniqueConstraintError(error)) {
100
+ throwUsernameConflict(ctx);
101
+ }
102
+ throw error;
103
+ }
104
+ };
105
+ const update = async (ctx, next) => {
106
+ validateAndNormalizeProfileValues(ctx);
107
+ await import_actions.default.update(ctx, next);
108
+ };
49
109
  const list = async (ctx, next) => {
50
110
  var _a, _b;
51
111
  const { paginate } = ctx.action.params || {};
@@ -227,8 +287,10 @@ const getTemplates = async (ctx, next) => {
227
287
  };
228
288
  // Annotate the CommonJS export names for ESM import in node:
229
289
  0 && (module.exports = {
290
+ create,
230
291
  getTemplates,
231
292
  list,
232
293
  listByUser,
294
+ update,
233
295
  updateUserPrompt
234
296
  });
@@ -129,7 +129,7 @@ const aiWorkflowTasks = {
129
129
  await next();
130
130
  },
131
131
  getBySession: async (ctx, next) => {
132
- var _a, _b, _c, _d, _e;
132
+ var _a, _b, _c, _d, _e, _f;
133
133
  const userId = (_a = ctx.auth) == null ? void 0 : _a.user.id;
134
134
  if (!userId) {
135
135
  return ctx.throw(403);
@@ -158,12 +158,20 @@ const aiWorkflowTasks = {
158
158
  id: task.nodeId
159
159
  }
160
160
  });
161
+ const conversation = await ctx.db.getRepository("aiConversations").findOne({
162
+ filter: {
163
+ sessionId
164
+ },
165
+ appends: ["aiEmployee"]
166
+ });
167
+ const aiEmployee = conversation == null ? void 0 : conversation.aiEmployee;
161
168
  const readonly = task.status !== "pending_approval" || task.acceptedUserId !== userId;
162
169
  ctx.body = {
163
170
  ...((_c = task == null ? void 0 : task.toJSON) == null ? void 0 : _c.call(task)) ?? task,
164
171
  read: (usersAiWorkflowTasks == null ? void 0 : usersAiWorkflowTasks.read) ?? true,
165
172
  config: (node == null ? void 0 : node.config) ?? null,
166
173
  structuredOutputSchema: ((_e = (_d = node == null ? void 0 : node.config) == null ? void 0 : _d.structuredOutput) == null ? void 0 : _e.schema) ?? null,
174
+ aiEmployee: ((_f = aiEmployee == null ? void 0 : aiEmployee.toJSON) == null ? void 0 : _f.call(aiEmployee)) ?? aiEmployee ?? null,
167
175
  readonly
168
176
  };
169
177
  await next();
@@ -0,0 +1,11 @@
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
+ import { Context, Next } from '@nocobase/actions';
10
+ export declare const create: (ctx: Context, next: Next) => Promise<void>;
11
+ export declare const update: (ctx: Context, next: Next) => Promise<void>;
@@ -0,0 +1,85 @@
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
+ var __create = Object.create;
11
+ var __defProp = Object.defineProperty;
12
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
13
+ var __getOwnPropNames = Object.getOwnPropertyNames;
14
+ var __getProtoOf = Object.getPrototypeOf;
15
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
16
+ var __export = (target, all) => {
17
+ for (var name in all)
18
+ __defProp(target, name, { get: all[name], enumerable: true });
19
+ };
20
+ var __copyProps = (to, from, except, desc) => {
21
+ if (from && typeof from === "object" || typeof from === "function") {
22
+ for (let key of __getOwnPropNames(from))
23
+ if (!__hasOwnProp.call(to, key) && key !== except)
24
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
25
+ }
26
+ return to;
27
+ };
28
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
29
+ // If the importer is in node compatibility mode or this is not an ESM
30
+ // file that has been converted to a CommonJS file using a Babel-
31
+ // compatible transform (i.e. "__esModule" has not been set), then set
32
+ // "default" to the CommonJS "module.exports" for node compatibility.
33
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
34
+ mod
35
+ ));
36
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
37
+ var llmServices_exports = {};
38
+ __export(llmServices_exports, {
39
+ create: () => create,
40
+ update: () => update
41
+ });
42
+ module.exports = __toCommonJS(llmServices_exports);
43
+ var import_actions = __toESM(require("@nocobase/actions"));
44
+ var import_package = require("../../../package.json");
45
+ var import_error_codes = require("../../common/error-codes");
46
+ var import_llm_service_models = require("../../common/llm-service-models");
47
+ const isRecord = (value) => value !== null && typeof value === "object" && !Array.isArray(value);
48
+ const validateAndNormalizeEnabledModels = (ctx) => {
49
+ const values = ctx.action.params.values;
50
+ if (!isRecord(values) || !("enabledModels" in values)) {
51
+ return;
52
+ }
53
+ const enabledModels = (0, import_llm_service_models.normalizeCustomModelIds)(values.enabledModels);
54
+ const issue = (0, import_llm_service_models.getCustomModelIdIssues)(enabledModels)[0];
55
+ if (issue) {
56
+ const required = issue.type === "required";
57
+ ctx.throw(400, {
58
+ code: required ? import_error_codes.LLM_SERVICE_MODEL_ID_REQUIRED : import_error_codes.LLM_SERVICE_MODEL_ID_DUPLICATE,
59
+ message: ctx.t(required ? "Model ID is required" : "Model ID already exists", { ns: import_package.name }),
60
+ data: { index: issue.index }
61
+ });
62
+ }
63
+ ctx.action.mergeParams(
64
+ {
65
+ values: {
66
+ ...values,
67
+ enabledModels
68
+ }
69
+ },
70
+ { values: "overwrite" }
71
+ );
72
+ };
73
+ const create = async (ctx, next) => {
74
+ validateAndNormalizeEnabledModels(ctx);
75
+ await import_actions.default.create(ctx, next);
76
+ };
77
+ const update = async (ctx, next) => {
78
+ validateAndNormalizeEnabledModels(ctx);
79
+ await import_actions.default.update(ctx, next);
80
+ };
81
+ // Annotate the CommonJS export names for ESM import in node:
82
+ 0 && (module.exports = {
83
+ create,
84
+ update
85
+ });
@@ -19,13 +19,17 @@ export type KnowledgeBase = {
19
19
  name: string;
20
20
  description: string;
21
21
  vectorStoreProvider: string;
22
- vectorStoreConfigKey?: string;
22
+ vectorDatabaseKey?: string;
23
+ llmService?: string;
24
+ embeddingModel?: string;
23
25
  vectorStoreProps?: VectorStoreProp[];
24
26
  enabled: boolean;
25
27
  };
26
28
  export type VectorStoreConfig = {
27
29
  vectorStoreProvider: string;
28
- vectorStoreConfigKey?: string;
30
+ vectorDatabaseKey?: string;
31
+ llmService?: string;
32
+ embeddingModel?: string;
29
33
  };
30
34
  export type KnowledgeBaseGroup = {
31
35
  vectorStoreConfig: VectorStoreConfig;
@@ -0,0 +1,143 @@
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
+ export declare const jsonContent: (schema: Record<string, unknown>) => {
10
+ 'application/json': {
11
+ schema: Record<string, unknown>;
12
+ };
13
+ };
14
+ export declare const okResponse: (schema?: Record<string, unknown>) => {
15
+ 200: {
16
+ content?: {
17
+ 'application/json': {
18
+ schema: Record<string, unknown>;
19
+ };
20
+ };
21
+ description: string;
22
+ };
23
+ };
24
+ export declare const errorResponses: {
25
+ 400: {
26
+ description: string;
27
+ content: {
28
+ 'application/json': {
29
+ schema: Record<string, unknown>;
30
+ };
31
+ };
32
+ };
33
+ 401: {
34
+ description: string;
35
+ content: {
36
+ 'application/json': {
37
+ schema: Record<string, unknown>;
38
+ };
39
+ };
40
+ };
41
+ 403: {
42
+ description: string;
43
+ content: {
44
+ 'application/json': {
45
+ schema: Record<string, unknown>;
46
+ };
47
+ };
48
+ };
49
+ 404: {
50
+ description: string;
51
+ content: {
52
+ 'application/json': {
53
+ schema: Record<string, unknown>;
54
+ };
55
+ };
56
+ };
57
+ };
58
+ export declare const withErrorResponses: (responses: Record<string | number, unknown>) => {
59
+ 400: {
60
+ description: string;
61
+ content: {
62
+ 'application/json': {
63
+ schema: Record<string, unknown>;
64
+ };
65
+ };
66
+ };
67
+ 401: {
68
+ description: string;
69
+ content: {
70
+ 'application/json': {
71
+ schema: Record<string, unknown>;
72
+ };
73
+ };
74
+ };
75
+ 403: {
76
+ description: string;
77
+ content: {
78
+ 'application/json': {
79
+ schema: Record<string, unknown>;
80
+ };
81
+ };
82
+ };
83
+ 404: {
84
+ description: string;
85
+ content: {
86
+ 'application/json': {
87
+ schema: Record<string, unknown>;
88
+ };
89
+ };
90
+ };
91
+ };
92
+ export declare const filterByTkParameter: {
93
+ name: string;
94
+ in: string;
95
+ required: boolean;
96
+ description: string;
97
+ schema: {
98
+ type: string;
99
+ };
100
+ };
101
+ export declare const listParameters: ({
102
+ name: string;
103
+ in: string;
104
+ description: string;
105
+ schema: {
106
+ type: string;
107
+ additionalProperties: boolean;
108
+ items?: undefined;
109
+ minimum?: undefined;
110
+ };
111
+ } | {
112
+ name: string;
113
+ in: string;
114
+ description: string;
115
+ schema: {
116
+ type: string;
117
+ items: {
118
+ type: string;
119
+ };
120
+ additionalProperties?: undefined;
121
+ minimum?: undefined;
122
+ };
123
+ } | {
124
+ name: string;
125
+ in: string;
126
+ schema: {
127
+ type: string;
128
+ minimum: number;
129
+ additionalProperties?: undefined;
130
+ items?: undefined;
131
+ };
132
+ description?: undefined;
133
+ } | {
134
+ name: string;
135
+ in: string;
136
+ description: string;
137
+ schema: {
138
+ type: string;
139
+ additionalProperties?: undefined;
140
+ items?: undefined;
141
+ minimum?: undefined;
142
+ };
143
+ })[];
@@ -0,0 +1,144 @@
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
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
27
+ var common_exports = {};
28
+ __export(common_exports, {
29
+ errorResponses: () => errorResponses,
30
+ filterByTkParameter: () => filterByTkParameter,
31
+ jsonContent: () => jsonContent,
32
+ listParameters: () => listParameters,
33
+ okResponse: () => okResponse,
34
+ withErrorResponses: () => withErrorResponses
35
+ });
36
+ module.exports = __toCommonJS(common_exports);
37
+ const jsonContent = (schema) => ({
38
+ "application/json": {
39
+ schema
40
+ }
41
+ });
42
+ const okResponse = (schema) => ({
43
+ 200: {
44
+ description: "OK",
45
+ ...schema ? { content: jsonContent(schema) } : {}
46
+ }
47
+ });
48
+ const errorResponses = {
49
+ 400: {
50
+ description: "Bad request",
51
+ content: jsonContent({ $ref: "#/components/schemas/ErrorResponse" })
52
+ },
53
+ 401: {
54
+ description: "Unauthorized",
55
+ content: jsonContent({ $ref: "#/components/schemas/ErrorResponse" })
56
+ },
57
+ 403: {
58
+ description: "Forbidden",
59
+ content: jsonContent({ $ref: "#/components/schemas/ErrorResponse" })
60
+ },
61
+ 404: {
62
+ description: "Not found",
63
+ content: jsonContent({ $ref: "#/components/schemas/ErrorResponse" })
64
+ }
65
+ };
66
+ const withErrorResponses = (responses) => ({
67
+ ...responses,
68
+ ...errorResponses
69
+ });
70
+ const filterByTkParameter = {
71
+ name: "filterByTk",
72
+ in: "query",
73
+ required: true,
74
+ description: "Primary key of the target record.",
75
+ schema: {
76
+ type: "string"
77
+ }
78
+ };
79
+ const listParameters = [
80
+ {
81
+ name: "filter",
82
+ in: "query",
83
+ description: "NocoBase filter object encoded as JSON.",
84
+ schema: {
85
+ type: "object",
86
+ additionalProperties: true
87
+ }
88
+ },
89
+ {
90
+ name: "fields",
91
+ in: "query",
92
+ description: "Fields to include in the response.",
93
+ schema: {
94
+ type: "array",
95
+ items: {
96
+ type: "string"
97
+ }
98
+ }
99
+ },
100
+ {
101
+ name: "sort",
102
+ in: "query",
103
+ description: "Sort fields. Prefix a field with - for descending order.",
104
+ schema: {
105
+ type: "array",
106
+ items: {
107
+ type: "string"
108
+ }
109
+ }
110
+ },
111
+ {
112
+ name: "page",
113
+ in: "query",
114
+ schema: {
115
+ type: "integer",
116
+ minimum: 1
117
+ }
118
+ },
119
+ {
120
+ name: "pageSize",
121
+ in: "query",
122
+ schema: {
123
+ type: "integer",
124
+ minimum: 1
125
+ }
126
+ },
127
+ {
128
+ name: "paginate",
129
+ in: "query",
130
+ description: "Set to false to return an unpaginated array.",
131
+ schema: {
132
+ type: "boolean"
133
+ }
134
+ }
135
+ ];
136
+ // Annotate the CommonJS export names for ESM import in node:
137
+ 0 && (module.exports = {
138
+ errorResponses,
139
+ filterByTkParameter,
140
+ jsonContent,
141
+ listParameters,
142
+ okResponse,
143
+ withErrorResponses
144
+ });