@calmlens/js-sdk 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/ApiKey.d.ts +31 -0
- package/cjs/ApiKey.js +59 -0
- package/cjs/Asset.d.ts +83 -3
- package/cjs/Asset.js +198 -28
- package/cjs/Auth.d.ts +95 -0
- package/cjs/Auth.js +2 -0
- package/cjs/CalmLensClient.d.ts +37 -11
- package/cjs/CalmLensClient.js +176 -77
- package/cjs/CalmLensTypes.d.ts +2 -0
- package/cjs/Classification.js +40 -7
- package/cjs/DocMetaTypes.d.ts +7 -0
- package/cjs/DocMetaTypes.js +7 -0
- package/cjs/Page.d.ts +42 -0
- package/cjs/Page.js +94 -0
- package/cjs/PublicApiSchemas.d.ts +1600 -0
- package/cjs/PublicApiSchemas.js +346 -0
- package/cjs/RequestInfo.d.ts +23 -0
- package/cjs/RequestInfo.js +2 -0
- package/cjs/Roles.d.ts +21 -0
- package/cjs/Roles.js +84 -0
- package/cjs/SharedConstants.d.ts +134 -0
- package/cjs/SharedConstants.js +125 -0
- package/cjs/SharedTypes.d.ts +6 -1
- package/cjs/User.d.ts +17 -0
- package/cjs/User.js +51 -0
- package/cjs/UtilTypes.d.ts +30 -0
- package/cjs/UtilTypes.js +4 -0
- package/cjs/Workflow.d.ts +58 -0
- package/cjs/Workflow.js +83 -0
- package/cjs/ZodUtils.d.ts +39 -0
- package/cjs/ZodUtils.js +328 -0
- package/cjs/index.js +4 -1
- package/esm/ApiKey.d.ts +31 -0
- package/esm/ApiKey.js +23 -0
- package/esm/Asset.d.ts +83 -3
- package/esm/Asset.js +148 -12
- package/esm/Auth.d.ts +95 -0
- package/esm/Auth.js +1 -0
- package/esm/CalmLensClient.d.ts +37 -11
- package/esm/CalmLensClient.js +134 -55
- package/esm/CalmLensTypes.d.ts +2 -0
- package/esm/Classification.js +1 -1
- package/esm/DocMetaTypes.d.ts +7 -0
- package/esm/DocMetaTypes.js +4 -0
- package/esm/Page.d.ts +42 -0
- package/esm/Page.js +55 -0
- package/esm/PublicApiSchemas.d.ts +1600 -0
- package/esm/PublicApiSchemas.js +310 -0
- package/esm/RequestInfo.d.ts +23 -0
- package/esm/RequestInfo.js +1 -0
- package/esm/Roles.d.ts +21 -0
- package/esm/Roles.js +45 -0
- package/esm/SharedConstants.d.ts +134 -0
- package/esm/SharedConstants.js +122 -0
- package/esm/SharedTypes.d.ts +6 -1
- package/esm/User.d.ts +17 -0
- package/esm/User.js +15 -0
- package/esm/UtilTypes.d.ts +30 -0
- package/esm/UtilTypes.js +1 -0
- package/esm/Workflow.d.ts +58 -0
- package/esm/Workflow.js +46 -0
- package/esm/ZodUtils.d.ts +39 -0
- package/esm/ZodUtils.js +266 -0
- package/package.json +10 -10
- package/cjs/SchemaUtils.d.ts +0 -11
- package/cjs/SchemaUtils.js +0 -63
- package/esm/SchemaUtils.d.ts +0 -11
- package/esm/SchemaUtils.js +0 -46
package/cjs/CalmLensClient.js
CHANGED
|
@@ -37,6 +37,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
var api_def_1 = require("api-def");
|
|
40
|
+
var SharedConstants_1 = require("shared/SharedConstants");
|
|
40
41
|
var CalmLensUtils_1 = require("./CalmLensUtils");
|
|
41
42
|
var createApi = function (options) {
|
|
42
43
|
var api = new api_def_1.Api({
|
|
@@ -51,40 +52,57 @@ var createApi = function (options) {
|
|
|
51
52
|
},
|
|
52
53
|
},
|
|
53
54
|
],
|
|
55
|
+
requestBackend: options.requestBackend,
|
|
54
56
|
});
|
|
55
57
|
return api;
|
|
56
58
|
};
|
|
57
|
-
// API endpoint definitions
|
|
59
|
+
// API endpoint definitions using schemas like CalmLensApi.ts
|
|
58
60
|
var createEndpoints = function (api) {
|
|
59
|
-
var
|
|
61
|
+
var getAssetsPage = api
|
|
60
62
|
.endpoint()
|
|
61
|
-
.
|
|
63
|
+
.queryOf()
|
|
62
64
|
.paramsOf()
|
|
63
65
|
.responseOf()
|
|
64
66
|
.build({
|
|
65
|
-
id: "
|
|
66
|
-
method: "
|
|
67
|
-
path: "/projects/:projectId/assets",
|
|
67
|
+
id: "getAssetsPage",
|
|
68
|
+
method: "get",
|
|
69
|
+
path: "/projects/:projectId/assets/page",
|
|
68
70
|
});
|
|
69
|
-
var getAsset = api
|
|
71
|
+
var getAsset = api
|
|
72
|
+
.endpoint()
|
|
73
|
+
.paramsOf()
|
|
74
|
+
.responseOf()
|
|
75
|
+
.build({
|
|
70
76
|
id: "getAsset",
|
|
71
77
|
method: "get",
|
|
72
78
|
path: "/projects/:projectId/assets/:assetId",
|
|
73
79
|
});
|
|
74
|
-
var
|
|
80
|
+
var getAssetChildren = api
|
|
75
81
|
.endpoint()
|
|
76
|
-
.queryOf()
|
|
77
82
|
.paramsOf()
|
|
83
|
+
.queryOf()
|
|
78
84
|
.responseOf()
|
|
79
85
|
.build({
|
|
80
|
-
id: "
|
|
86
|
+
id: "getAssetChildren",
|
|
81
87
|
method: "get",
|
|
82
|
-
path: "/projects/:projectId/assets/
|
|
88
|
+
path: "/projects/:projectId/assets/:assetId/children",
|
|
89
|
+
});
|
|
90
|
+
var postUploadAsset = api
|
|
91
|
+
.endpoint()
|
|
92
|
+
.bodyOf()
|
|
93
|
+
.paramsOf()
|
|
94
|
+
.queryOf()
|
|
95
|
+
.responseOf()
|
|
96
|
+
.build({
|
|
97
|
+
id: "postUploadAsset",
|
|
98
|
+
method: "post",
|
|
99
|
+
path: "/projects/:projectId/assets",
|
|
83
100
|
});
|
|
84
101
|
return {
|
|
85
|
-
postUploadAsset: postUploadAsset,
|
|
86
|
-
getAsset: getAsset,
|
|
87
102
|
getAssetsPage: getAssetsPage,
|
|
103
|
+
getAsset: getAsset,
|
|
104
|
+
getAssetChildren: getAssetChildren,
|
|
105
|
+
postUploadAsset: postUploadAsset,
|
|
88
106
|
};
|
|
89
107
|
};
|
|
90
108
|
var CalmLensClient = /** @class */ (function () {
|
|
@@ -97,7 +115,7 @@ var CalmLensClient = /** @class */ (function () {
|
|
|
97
115
|
if (!options.projectId) {
|
|
98
116
|
throw new Error("Project ID is required");
|
|
99
117
|
}
|
|
100
|
-
this.options.baseUrl = (_a = this.options.baseUrl) !== null && _a !== void 0 ? _a : "https://api.
|
|
118
|
+
this.options.baseUrl = (_a = this.options.baseUrl) !== null && _a !== void 0 ? _a : "https://api.".concat(SharedConstants_1.DOMAIN, "/v1");
|
|
101
119
|
this.api = createApi(this.options);
|
|
102
120
|
this.endpoints = createEndpoints(this.api);
|
|
103
121
|
}
|
|
@@ -128,72 +146,153 @@ var CalmLensClient = /** @class */ (function () {
|
|
|
128
146
|
});
|
|
129
147
|
});
|
|
130
148
|
};
|
|
131
|
-
CalmLensClient.prototype
|
|
132
|
-
|
|
133
|
-
var
|
|
134
|
-
return
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
149
|
+
Object.defineProperty(CalmLensClient.prototype, "assets", {
|
|
150
|
+
get: function () {
|
|
151
|
+
var _this = this;
|
|
152
|
+
return {
|
|
153
|
+
/**
|
|
154
|
+
* List all assets for a project
|
|
155
|
+
* @param options - Pagination and filtering options
|
|
156
|
+
* @returns Promise with paginated assets
|
|
157
|
+
*/
|
|
158
|
+
list: function (options) { return __awaiter(_this, void 0, void 0, function () {
|
|
159
|
+
var result;
|
|
160
|
+
return __generator(this, function (_a) {
|
|
161
|
+
switch (_a.label) {
|
|
162
|
+
case 0: return [4 /*yield*/, this.endpoints.getAssetsPage.submit({
|
|
163
|
+
params: {
|
|
164
|
+
projectId: this.options.projectId,
|
|
165
|
+
},
|
|
166
|
+
query: options,
|
|
167
|
+
})];
|
|
168
|
+
case 1:
|
|
169
|
+
result = _a.sent();
|
|
170
|
+
return [2 /*return*/, result.data];
|
|
139
171
|
}
|
|
140
|
-
|
|
141
|
-
|
|
172
|
+
});
|
|
173
|
+
}); },
|
|
174
|
+
/**
|
|
175
|
+
* Retrieve a specific asset by ID
|
|
176
|
+
* @param assetId - The asset ID
|
|
177
|
+
* @returns Promise with asset data
|
|
178
|
+
*/
|
|
179
|
+
retrieve: function (assetId) { return __awaiter(_this, void 0, void 0, function () {
|
|
180
|
+
var result;
|
|
181
|
+
return __generator(this, function (_a) {
|
|
182
|
+
switch (_a.label) {
|
|
183
|
+
case 0:
|
|
184
|
+
if (!assetId) {
|
|
185
|
+
throw new Error("Asset ID is required");
|
|
186
|
+
}
|
|
187
|
+
return [4 /*yield*/, this.endpoints.getAsset.submit({
|
|
188
|
+
params: {
|
|
189
|
+
projectId: this.options.projectId,
|
|
190
|
+
assetId: assetId,
|
|
191
|
+
},
|
|
192
|
+
})];
|
|
193
|
+
case 1:
|
|
194
|
+
result = _a.sent();
|
|
195
|
+
return [2 /*return*/, result.data];
|
|
142
196
|
}
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
197
|
+
});
|
|
198
|
+
}); },
|
|
199
|
+
/**
|
|
200
|
+
* Get child assets of a parent asset
|
|
201
|
+
* @param assetId - The parent asset ID
|
|
202
|
+
* @param options - Pagination options
|
|
203
|
+
* @returns Promise with paginated child assets
|
|
204
|
+
*/
|
|
205
|
+
listChildren: function (assetId, options) { return __awaiter(_this, void 0, void 0, function () {
|
|
206
|
+
var result;
|
|
207
|
+
return __generator(this, function (_a) {
|
|
208
|
+
switch (_a.label) {
|
|
209
|
+
case 0:
|
|
210
|
+
if (!assetId) {
|
|
211
|
+
throw new Error("Asset ID is required");
|
|
212
|
+
}
|
|
213
|
+
return [4 /*yield*/, this.endpoints.getAssetChildren.submit({
|
|
214
|
+
params: {
|
|
215
|
+
projectId: this.options.projectId,
|
|
216
|
+
assetId: assetId,
|
|
217
|
+
},
|
|
218
|
+
query: options,
|
|
219
|
+
})];
|
|
220
|
+
case 1:
|
|
221
|
+
result = _a.sent();
|
|
222
|
+
return [2 /*return*/, result.data];
|
|
164
223
|
}
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
224
|
+
});
|
|
225
|
+
}); },
|
|
226
|
+
/**
|
|
227
|
+
* Submit a new asset for processing (queued asynchronously)
|
|
228
|
+
* The asset will be queued for classification and returned immediately.
|
|
229
|
+
* @param options - Asset submission options
|
|
230
|
+
* @returns Promise with created asset
|
|
231
|
+
*/
|
|
232
|
+
create: function (options) { return __awaiter(_this, void 0, void 0, function () {
|
|
233
|
+
var result;
|
|
234
|
+
return __generator(this, function (_a) {
|
|
235
|
+
switch (_a.label) {
|
|
236
|
+
case 0:
|
|
237
|
+
if (!("file" in options) && !("url" in options)) {
|
|
238
|
+
throw new Error("Either file content or URL is required");
|
|
239
|
+
}
|
|
240
|
+
if (!options.name) {
|
|
241
|
+
throw new Error("Asset name is required");
|
|
242
|
+
}
|
|
243
|
+
return [4 /*yield*/, this.endpoints.postUploadAsset.submit({
|
|
244
|
+
body: options,
|
|
245
|
+
params: {
|
|
246
|
+
projectId: this.options.projectId,
|
|
247
|
+
},
|
|
248
|
+
query: {
|
|
249
|
+
queue: true, // Queue for async processing
|
|
250
|
+
},
|
|
251
|
+
})];
|
|
252
|
+
case 1:
|
|
253
|
+
result = _a.sent();
|
|
254
|
+
return [2 /*return*/, result.data];
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
}); },
|
|
258
|
+
/**
|
|
259
|
+
* Submit a new asset and analyze it synchronously
|
|
260
|
+
* The asset will be classified immediately before the response is returned.
|
|
261
|
+
* This may take longer but ensures the asset is fully processed.
|
|
262
|
+
* @param options - Asset submission options
|
|
263
|
+
* @returns Promise with created and analyzed asset
|
|
264
|
+
*/
|
|
265
|
+
analyze: function (options) { return __awaiter(_this, void 0, void 0, function () {
|
|
266
|
+
var result;
|
|
267
|
+
return __generator(this, function (_a) {
|
|
268
|
+
switch (_a.label) {
|
|
269
|
+
case 0:
|
|
270
|
+
if (!("file" in options) && !("url" in options)) {
|
|
271
|
+
throw new Error("Either file content or URL is required");
|
|
272
|
+
}
|
|
273
|
+
if (!options.name) {
|
|
274
|
+
throw new Error("Asset name is required");
|
|
275
|
+
}
|
|
276
|
+
return [4 /*yield*/, this.endpoints.postUploadAsset.submit({
|
|
277
|
+
body: options,
|
|
278
|
+
params: {
|
|
279
|
+
projectId: this.options.projectId,
|
|
280
|
+
},
|
|
281
|
+
query: {
|
|
282
|
+
queue: false, // Process synchronously
|
|
283
|
+
},
|
|
284
|
+
})];
|
|
285
|
+
case 1:
|
|
286
|
+
result = _a.sent();
|
|
287
|
+
return [2 /*return*/, result.data];
|
|
288
|
+
}
|
|
289
|
+
});
|
|
290
|
+
}); },
|
|
291
|
+
};
|
|
292
|
+
},
|
|
293
|
+
enumerable: false,
|
|
294
|
+
configurable: true
|
|
295
|
+
});
|
|
197
296
|
return CalmLensClient;
|
|
198
297
|
}());
|
|
199
298
|
exports.default = CalmLensClient;
|
package/cjs/CalmLensTypes.d.ts
CHANGED
package/cjs/Classification.js
CHANGED
|
@@ -1,8 +1,41 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
36
|
exports.CLASSIFICATION_REPORT_SCHEMA = exports.CLASSIFICATION_LABEL_SCHEMA = exports.CATEGORIES_SCHEMA = exports.CLASSIFICATION_CATEGORY_REPORT_SCHEMA = exports.LIKELIHOOD_SCHEMA = exports.getCategoryInfo = exports.CLASSIFICATION_CATEGORY_INFO = exports.CLASSIFICATION_CATEGORY_INFO_SCHEMA = exports.CLASSIFICATION_CATEGORY_SCHEMA = exports.CLASSIFICATION_CATEGORIES = void 0;
|
|
4
|
-
var zod = require("zod/v4");
|
|
5
|
-
var
|
|
37
|
+
var zod = __importStar(require("zod/v4"));
|
|
38
|
+
var ZodUtils_1 = require("./ZodUtils");
|
|
6
39
|
// OpenAI Content Moderation Categories (Merged subcategories)
|
|
7
40
|
exports.CLASSIFICATION_CATEGORIES = [
|
|
8
41
|
"sexual",
|
|
@@ -18,8 +51,8 @@ exports.CLASSIFICATION_CATEGORY_SCHEMA = zod.enum(exports.CLASSIFICATION_CATEGOR
|
|
|
18
51
|
// Type to define category information including whether it's text-only
|
|
19
52
|
exports.CLASSIFICATION_CATEGORY_INFO_SCHEMA = zod.object({
|
|
20
53
|
category: exports.CLASSIFICATION_CATEGORY_SCHEMA,
|
|
21
|
-
displayName: (0,
|
|
22
|
-
description: (0,
|
|
54
|
+
displayName: (0, ZodUtils_1.saneStringField)(),
|
|
55
|
+
description: (0, ZodUtils_1.saneStringField)(),
|
|
23
56
|
textOnly: zod.boolean(),
|
|
24
57
|
supportsImages: zod.boolean(),
|
|
25
58
|
});
|
|
@@ -101,17 +134,17 @@ exports.CLASSIFICATION_CATEGORY_REPORT_SCHEMA = zod.object({
|
|
|
101
134
|
});
|
|
102
135
|
exports.CATEGORIES_SCHEMA = zod.partialRecord(exports.CLASSIFICATION_CATEGORY_SCHEMA, exports.CLASSIFICATION_CATEGORY_REPORT_SCHEMA);
|
|
103
136
|
exports.CLASSIFICATION_LABEL_SCHEMA = zod.object({
|
|
104
|
-
description: (0,
|
|
137
|
+
description: (0, ZodUtils_1.saneStringField)(),
|
|
105
138
|
score: zod.number(),
|
|
106
139
|
topicalityScore: zod.number().nullish(),
|
|
107
140
|
likelihood: exports.LIKELIHOOD_SCHEMA,
|
|
108
|
-
knowledgeBaseId: (0,
|
|
141
|
+
knowledgeBaseId: (0, ZodUtils_1.saneStringField)().nullish(),
|
|
109
142
|
});
|
|
110
143
|
exports.CLASSIFICATION_REPORT_SCHEMA = zod.object({
|
|
111
144
|
processedAt: zod.number(),
|
|
112
145
|
categories: exports.CATEGORIES_SCHEMA,
|
|
113
146
|
flagged: zod.boolean(),
|
|
114
147
|
score: zod.number(),
|
|
115
|
-
notes: (0,
|
|
148
|
+
notes: (0, ZodUtils_1.saneStringField)().nullish(),
|
|
116
149
|
labels: zod.array(exports.CLASSIFICATION_LABEL_SCHEMA).nullish(),
|
|
117
150
|
});
|
package/cjs/Page.d.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import * as zod from "zod/v4";
|
|
2
|
+
export declare const DEFAULT_PAGE_SIZE = 10;
|
|
3
|
+
export declare const ORDER_SCHEMA: zod.ZodObject<{
|
|
4
|
+
field: zod.ZodString;
|
|
5
|
+
direction: zod.ZodEnum<{
|
|
6
|
+
ASC: "ASC";
|
|
7
|
+
DESC: "DESC";
|
|
8
|
+
}>;
|
|
9
|
+
}, zod.z.core.$strip>;
|
|
10
|
+
export type Order = zod.infer<typeof ORDER_SCHEMA>;
|
|
11
|
+
export declare const PAGE_QUERY_SCHEMA: zod.ZodObject<{
|
|
12
|
+
pageIndex: zod.ZodDefault<zod.ZodNumber>;
|
|
13
|
+
pageSize: zod.ZodOptional<zod.ZodNumber>;
|
|
14
|
+
ordering: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
|
|
15
|
+
field: zod.ZodString;
|
|
16
|
+
direction: zod.ZodEnum<{
|
|
17
|
+
ASC: "ASC";
|
|
18
|
+
DESC: "DESC";
|
|
19
|
+
}>;
|
|
20
|
+
}, zod.z.core.$strip>>>;
|
|
21
|
+
}, zod.z.core.$strip>;
|
|
22
|
+
export type PageQuery = zod.infer<typeof PAGE_QUERY_SCHEMA>;
|
|
23
|
+
export interface Page<T> extends Required<PageQuery> {
|
|
24
|
+
items: T[];
|
|
25
|
+
total: number;
|
|
26
|
+
hasMore: boolean;
|
|
27
|
+
}
|
|
28
|
+
export declare const createPageSchema: <T extends zod.ZodType>(itemSchema: T) => zod.ZodIntersection<zod.ZodObject<{
|
|
29
|
+
pageIndex: zod.ZodNonOptional<zod.ZodDefault<zod.ZodNumber>>;
|
|
30
|
+
pageSize: zod.ZodNonOptional<zod.ZodOptional<zod.ZodNumber>>;
|
|
31
|
+
ordering: zod.ZodNonOptional<zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
|
|
32
|
+
field: zod.ZodString;
|
|
33
|
+
direction: zod.ZodEnum<{
|
|
34
|
+
ASC: "ASC";
|
|
35
|
+
DESC: "DESC";
|
|
36
|
+
}>;
|
|
37
|
+
}, zod.z.core.$strip>>>>;
|
|
38
|
+
}, zod.z.core.$strip>, zod.ZodObject<{
|
|
39
|
+
items: zod.ZodArray<T>;
|
|
40
|
+
total: zod.ZodNumber;
|
|
41
|
+
hasMore: zod.ZodBoolean;
|
|
42
|
+
}, zod.z.core.$strip>>;
|
package/cjs/Page.js
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.createPageSchema = exports.PAGE_QUERY_SCHEMA = exports.ORDER_SCHEMA = exports.DEFAULT_PAGE_SIZE = void 0;
|
|
37
|
+
var zod = __importStar(require("zod/v4"));
|
|
38
|
+
var zod_meta_1 = require("zod-meta");
|
|
39
|
+
var DocMetaTypes_1 = require("./DocMetaTypes");
|
|
40
|
+
exports.DEFAULT_PAGE_SIZE = 10;
|
|
41
|
+
exports.ORDER_SCHEMA = zod.object({
|
|
42
|
+
field: zod.string().meta((0, zod_meta_1.metaStore)([
|
|
43
|
+
(0, DocMetaTypes_1.docPropertyInfo)({
|
|
44
|
+
description: "The field name to order by",
|
|
45
|
+
placeholder: "createdAt",
|
|
46
|
+
}),
|
|
47
|
+
])),
|
|
48
|
+
direction: zod.enum(["ASC", "DESC"]).meta((0, zod_meta_1.metaStore)([
|
|
49
|
+
(0, DocMetaTypes_1.docPropertyInfo)({
|
|
50
|
+
description: "The sort direction",
|
|
51
|
+
defaultValue: "ASC",
|
|
52
|
+
}),
|
|
53
|
+
])),
|
|
54
|
+
});
|
|
55
|
+
exports.PAGE_QUERY_SCHEMA = zod.object({
|
|
56
|
+
pageIndex: zod
|
|
57
|
+
.number()
|
|
58
|
+
.min(0)
|
|
59
|
+
.default(0)
|
|
60
|
+
.meta((0, zod_meta_1.metaStore)([
|
|
61
|
+
(0, DocMetaTypes_1.docPropertyInfo)({
|
|
62
|
+
description: "The zero-based page index",
|
|
63
|
+
defaultValue: "0",
|
|
64
|
+
}),
|
|
65
|
+
])),
|
|
66
|
+
pageSize: zod
|
|
67
|
+
.number()
|
|
68
|
+
.min(1)
|
|
69
|
+
.max(100)
|
|
70
|
+
.optional()
|
|
71
|
+
.meta((0, zod_meta_1.metaStore)([
|
|
72
|
+
(0, DocMetaTypes_1.docPropertyInfo)({
|
|
73
|
+
description: "Number of items per page (1-100)",
|
|
74
|
+
placeholder: "10",
|
|
75
|
+
}),
|
|
76
|
+
])),
|
|
77
|
+
ordering: zod
|
|
78
|
+
.array(exports.ORDER_SCHEMA)
|
|
79
|
+
.optional()
|
|
80
|
+
.meta((0, zod_meta_1.metaStore)([
|
|
81
|
+
(0, DocMetaTypes_1.docPropertyInfo)({
|
|
82
|
+
description: "Array of field ordering specifications",
|
|
83
|
+
placeholder: '[{"field": "createdAt", "direction": "DESC"}]',
|
|
84
|
+
}),
|
|
85
|
+
])),
|
|
86
|
+
});
|
|
87
|
+
var createPageSchema = function (itemSchema) {
|
|
88
|
+
return exports.PAGE_QUERY_SCHEMA.required().and(zod.object({
|
|
89
|
+
items: zod.array(itemSchema),
|
|
90
|
+
total: zod.number(),
|
|
91
|
+
hasMore: zod.boolean(),
|
|
92
|
+
}));
|
|
93
|
+
};
|
|
94
|
+
exports.createPageSchema = createPageSchema;
|