@ram_28/kf-ai-sdk 1.0.27 → 1.0.29
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/types/base-fields.d.ts +11 -8
- package/dist/types/base-fields.d.ts.map +1 -1
- package/docs/api.md +5 -3
- package/package.json +1 -1
- package/sdk/types/base-fields.ts +27 -14
|
@@ -71,30 +71,32 @@ export interface DateEncodedType {
|
|
|
71
71
|
export interface DateTimeEncodedType {
|
|
72
72
|
$__dt__: number;
|
|
73
73
|
}
|
|
74
|
+
type Year = `${number}${number}${number}${number}`;
|
|
75
|
+
type Month = `0${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}` | `1${0 | 1 | 2}`;
|
|
76
|
+
type Day = `${0}${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}` | `${1 | 2}${number}` | `3${0 | 1}`;
|
|
74
77
|
/**
|
|
75
78
|
* Date field (date only, no time)
|
|
76
|
-
* API Response Format: { "$__d__": "YYYY-MM-DD" }
|
|
77
79
|
* API Request Format: "YYYY-MM-DD"
|
|
78
80
|
* Storage: DATE in database
|
|
79
|
-
* Use this for birth dates, due dates, calendar events
|
|
80
81
|
*
|
|
81
82
|
* @example
|
|
82
83
|
* // Response from API:
|
|
83
|
-
*
|
|
84
|
+
* "2025-05-01"
|
|
84
85
|
*/
|
|
85
|
-
export type DateFieldType =
|
|
86
|
+
export type DateFieldType = `${Year}-${Month}-${Day}`;
|
|
87
|
+
type Hour = number;
|
|
88
|
+
type Minute = number;
|
|
89
|
+
type Second = number;
|
|
86
90
|
/**
|
|
87
91
|
* DateTime field (date and time)
|
|
88
|
-
* API Response Format: { "$__dt__": unix_timestamp_seconds }
|
|
89
92
|
* API Request Format: "YYYY-MM-DD HH:MM:SS"
|
|
90
|
-
* Storage: DATETIME/TIMESTAMP in database
|
|
91
93
|
* Use this for created_at, updated_at, event timestamps
|
|
92
94
|
*
|
|
93
95
|
* @example
|
|
94
96
|
* // Response from API:
|
|
95
|
-
*
|
|
97
|
+
* "2026-01-23T01:21:33"
|
|
96
98
|
*/
|
|
97
|
-
export type DateTimeFieldType =
|
|
99
|
+
export type DateTimeFieldType = `${Year}-${Month}-${Day}T${Hour}:${Minute}:${Second}`;
|
|
98
100
|
/**
|
|
99
101
|
* Currency field supporting multiple value formats
|
|
100
102
|
* Resolves to: CurrencyValueType
|
|
@@ -233,4 +235,5 @@ export type OptionalFieldType<T> = T | undefined;
|
|
|
233
235
|
* Useful for runtime validation and type guards
|
|
234
236
|
*/
|
|
235
237
|
export type ExtractFieldTypeType<T> = T extends OptionalFieldType<infer U> ? U : T;
|
|
238
|
+
export {};
|
|
236
239
|
//# sourceMappingURL=base-fields.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-fields.d.ts","sourceRoot":"","sources":["../../sdk/types/base-fields.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,CACzB,CAAC,SAAS,MAAM,GAAG,MAAM,EACzB,UAAU,SAAS,MAAM,GAAG,KAAK,EACjC,UAAU,SAAS,MAAM,GAAG,KAAK,IAC/B,CAAC,CAAC;AAEN;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAEvC;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,CAAC,UAAU,SAAS,MAAM,GAAG,KAAK,IAAI,MAAM,CAAC;AAExE;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAEvC;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED
|
|
1
|
+
{"version":3,"file":"base-fields.d.ts","sourceRoot":"","sources":["../../sdk/types/base-fields.ts"],"names":[],"mappings":"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"}
|
package/docs/api.md
CHANGED
|
@@ -213,7 +213,7 @@ const response = await product.list({
|
|
|
213
213
|
Field: ["Title", "Price", "Category"],
|
|
214
214
|
Filter: {
|
|
215
215
|
Operator: "And",
|
|
216
|
-
|
|
216
|
+
Condition: [
|
|
217
217
|
{
|
|
218
218
|
LHSField: "Category",
|
|
219
219
|
Operator: "EQ",
|
|
@@ -458,7 +458,7 @@ const response = await product.metric({
|
|
|
458
458
|
Metric: [{ Field: "_id", Type: "Count" }],
|
|
459
459
|
Filter: {
|
|
460
460
|
Operator: "And",
|
|
461
|
-
|
|
461
|
+
Condition: [
|
|
462
462
|
{
|
|
463
463
|
LHSField: "Stock",
|
|
464
464
|
Operator: "LT",
|
|
@@ -523,7 +523,9 @@ const response = await product.metric({
|
|
|
523
523
|
// { "Category": "Books", "sum_Stock": 1200, "avg_Price": 24.99 }
|
|
524
524
|
// ] }
|
|
525
525
|
response.Data.forEach((row) => {
|
|
526
|
-
console.log(
|
|
526
|
+
console.log(
|
|
527
|
+
`${row.Category}: ${row["sum_Stock"]} total stock, $${row["avg_Price"]} avg price`,
|
|
528
|
+
);
|
|
527
529
|
});
|
|
528
530
|
```
|
|
529
531
|
|
package/package.json
CHANGED
package/sdk/types/base-fields.ts
CHANGED
|
@@ -83,31 +83,43 @@ export interface DateTimeEncodedType {
|
|
|
83
83
|
$__dt__: number;
|
|
84
84
|
}
|
|
85
85
|
|
|
86
|
+
type Year = `${number}${number}${number}${number}`;
|
|
87
|
+
type Month = `0${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}` | `1${0 | 1 | 2}`;
|
|
88
|
+
type Day =
|
|
89
|
+
| `${0}${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}`
|
|
90
|
+
| `${1 | 2}${number}`
|
|
91
|
+
| `3${0 | 1}`;
|
|
92
|
+
|
|
86
93
|
/**
|
|
87
94
|
* Date field (date only, no time)
|
|
88
|
-
* API Response Format: { "$__d__": "YYYY-MM-DD" }
|
|
89
95
|
* API Request Format: "YYYY-MM-DD"
|
|
90
96
|
* Storage: DATE in database
|
|
91
|
-
* Use this for birth dates, due dates, calendar events
|
|
92
97
|
*
|
|
93
98
|
* @example
|
|
94
99
|
* // Response from API:
|
|
95
|
-
*
|
|
100
|
+
* "2025-05-01"
|
|
96
101
|
*/
|
|
97
|
-
|
|
102
|
+
|
|
103
|
+
export type DateFieldType = `${Year}-${Month}-${Day}`;
|
|
104
|
+
|
|
105
|
+
type Hour = number;
|
|
106
|
+
type Minute = number;
|
|
107
|
+
type Second = number;
|
|
98
108
|
|
|
99
109
|
/**
|
|
100
110
|
* DateTime field (date and time)
|
|
101
|
-
* API Response Format: { "$__dt__": unix_timestamp_seconds }
|
|
102
111
|
* API Request Format: "YYYY-MM-DD HH:MM:SS"
|
|
103
|
-
* Storage: DATETIME/TIMESTAMP in database
|
|
104
112
|
* Use this for created_at, updated_at, event timestamps
|
|
105
113
|
*
|
|
106
114
|
* @example
|
|
107
115
|
* // Response from API:
|
|
108
|
-
*
|
|
116
|
+
* "2026-01-23T01:21:33"
|
|
109
117
|
*/
|
|
110
|
-
|
|
118
|
+
|
|
119
|
+
export type DateTimeFieldType =
|
|
120
|
+
`${Year}-${Month}-${Day}T${Hour}:${Minute}:${Second}`;
|
|
121
|
+
|
|
122
|
+
// export type DateTimeFieldType = string;
|
|
111
123
|
|
|
112
124
|
// ============================================================
|
|
113
125
|
// COMPLEX FIELD TYPES
|
|
@@ -181,10 +193,9 @@ export type ExtractReferenceType<T> = T extends { _id: string } ? T : never;
|
|
|
181
193
|
* type CategoryOptions = ExtractFetchFieldType<BaseProductType["Category"]>;
|
|
182
194
|
* // Result: { Value: string; Label: string } (string has no _id)
|
|
183
195
|
*/
|
|
184
|
-
export type ExtractFetchFieldType<T> =
|
|
185
|
-
T
|
|
186
|
-
|
|
187
|
-
: { Value: string; Label: string };
|
|
196
|
+
export type ExtractFetchFieldType<T> = T extends { _id: string }
|
|
197
|
+
? T
|
|
198
|
+
: { Value: string; Label: string };
|
|
188
199
|
|
|
189
200
|
/**
|
|
190
201
|
* Valid JSON value types
|
|
@@ -220,7 +231,8 @@ export type SelectFieldType<T extends string> = T;
|
|
|
220
231
|
* @template TReferencedType - The full type of the referenced BDO record
|
|
221
232
|
* @deprecated Use ReferenceFieldType instead
|
|
222
233
|
*/
|
|
223
|
-
export type LookupFieldType<TReferencedType = unknown> =
|
|
234
|
+
export type LookupFieldType<TReferencedType = unknown> =
|
|
235
|
+
ReferenceFieldType<TReferencedType>;
|
|
224
236
|
|
|
225
237
|
// ============================================================
|
|
226
238
|
// CONTAINER AND UTILITY TYPES
|
|
@@ -272,4 +284,5 @@ export type OptionalFieldType<T> = T | undefined;
|
|
|
272
284
|
* Utility type to extract the base type from a field type
|
|
273
285
|
* Useful for runtime validation and type guards
|
|
274
286
|
*/
|
|
275
|
-
export type ExtractFieldTypeType<T> =
|
|
287
|
+
export type ExtractFieldTypeType<T> =
|
|
288
|
+
T extends OptionalFieldType<infer U> ? U : T;
|