@omni-graph/omni-model 0.6.106 → 0.6.107-1-g0211605
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/functions/billing/index.d.ts +2 -0
- package/dist/functions/billing/index.d.ts.map +1 -0
- package/dist/functions/billing/index.js +2 -0
- package/dist/functions/billing/index.js.map +1 -0
- package/dist/functions/filtering/index.d.ts +2 -0
- package/dist/functions/filtering/index.d.ts.map +1 -0
- package/dist/functions/filtering/index.js +2 -0
- package/dist/functions/filtering/index.js.map +1 -0
- package/dist/functions/filtering/queryFilters.d.ts +73 -0
- package/dist/functions/filtering/queryFilters.d.ts.map +1 -0
- package/dist/functions/filtering/queryFilters.js +546 -0
- package/dist/functions/filtering/queryFilters.js.map +1 -0
- package/dist/functions/index.d.ts +2 -1
- package/dist/functions/index.d.ts.map +1 -1
- package/dist/functions/index.js +2 -1
- package/dist/functions/index.js.map +1 -1
- package/dist/zod/account-settings/accountSettings.d.ts +98 -0
- package/dist/zod/account-settings/accountSettings.d.ts.map +1 -1
- package/dist/zod/account-settings/accountSettings.js +11 -1
- package/dist/zod/account-settings/accountSettings.js.map +1 -1
- package/dist/zod/filtering/columnFilterItem.d.ts +13 -0
- package/dist/zod/filtering/columnFilterItem.d.ts.map +1 -0
- package/dist/zod/filtering/columnFilterItem.js +8 -0
- package/dist/zod/filtering/columnFilterItem.js.map +1 -0
- package/dist/zod/filtering/index.d.ts +2 -0
- package/dist/zod/filtering/index.d.ts.map +1 -0
- package/dist/zod/filtering/index.js +2 -0
- package/dist/zod/filtering/index.js.map +1 -0
- package/dist/zod/index.d.ts +1 -0
- package/dist/zod/index.d.ts.map +1 -1
- package/dist/zod/index.js +1 -0
- package/dist/zod/index.js.map +1 -1
- package/package.json +3 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/functions/billing/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functions/billing/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/functions/filtering/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functions/filtering/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import type { Row } from '@tanstack/react-table';
|
|
2
|
+
import { RuleGroupType, RuleType } from 'react-querybuilder';
|
|
3
|
+
type GeneralFilterArgs = {
|
|
4
|
+
variant: string;
|
|
5
|
+
operator: string;
|
|
6
|
+
/** JSON-encoded value of z.union([z.string(), z.array(z.string())]) */
|
|
7
|
+
valueJson: string;
|
|
8
|
+
};
|
|
9
|
+
type Predicate<Row = unknown> = (cellValue: unknown, row?: Row) => boolean;
|
|
10
|
+
/** ---------- Public factories ---------- */
|
|
11
|
+
/**
|
|
12
|
+
* Builds a predicate for a single cell given a filter config.
|
|
13
|
+
* Throws for unknown variant or irrelevant operators.
|
|
14
|
+
*/
|
|
15
|
+
export declare const createFilterPredicate: <Row = unknown>(args: GeneralFilterArgs) => Predicate<Row>;
|
|
16
|
+
/**
|
|
17
|
+
* A type for defining a function that determines whether a specific row of data
|
|
18
|
+
* meets the conditions defined by a filter.
|
|
19
|
+
*
|
|
20
|
+
* @template TData - The type of data represented in the row.
|
|
21
|
+
* @param {Row<TData>} row - The row of data being evaluated.
|
|
22
|
+
* @param {string} columnId - The identifier for the column being filtered.
|
|
23
|
+
* @param {string} filterJson - The value to filter against serialized as JSON.
|
|
24
|
+
* @returns {boolean} - Returns true if the row matches the filter condition, otherwise false.
|
|
25
|
+
*/
|
|
26
|
+
export type GenericColumnFilterFunction<TData> = (row: Row<TData>, columnId: string, filterJson: string) => boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Factory function that creates a filter function to be applied to data rows.
|
|
29
|
+
* The generated filter function evaluates a row against a given filter condition
|
|
30
|
+
* and returns a boolean indicating whether the row satisfies the filter criteria
|
|
31
|
+
* for the specified column.
|
|
32
|
+
*
|
|
33
|
+
* The filter function is constructed dynamically based on the provided filter
|
|
34
|
+
* definition, which includes an operator, variant, and filter value. The filter
|
|
35
|
+
* value is serialized and deserialized as JSON to ensure proper handling of
|
|
36
|
+
* complex data structures.
|
|
37
|
+
*
|
|
38
|
+
* @template TData - The type of the data row objects.
|
|
39
|
+
* @returns {GenericColumnFilterFunction<TData>} A filter function that takes a row, column ID, and filter value, and returns a boolean.
|
|
40
|
+
*/
|
|
41
|
+
export declare const genericColumnFilter: <TData>() => GenericColumnFilterFunction<TData>;
|
|
42
|
+
/**
|
|
43
|
+
* A generic filter function type used to evaluate whether a given row of data satisfies
|
|
44
|
+
* a specified filter condition. This function is commonly used in tables or data grids
|
|
45
|
+
* to implement filtering logic.
|
|
46
|
+
*
|
|
47
|
+
* @template TData - The type of the row data being filtered.
|
|
48
|
+
* @param {TData} row - The data object or row being evaluated against the filter condition.
|
|
49
|
+
* @param {string} columnId - The identifier for the column being filtered.
|
|
50
|
+
* @param {string} filterValue - The value to compare against the specified column of the row data.
|
|
51
|
+
* @returns {boolean} Returns true if the row satisfies the filter condition, otherwise false.
|
|
52
|
+
*/
|
|
53
|
+
type genericFilterFunction<TData> = (row: TData, filterValue: RuleType) => boolean;
|
|
54
|
+
/**
|
|
55
|
+
* A higher-order function that creates a generic filter function.
|
|
56
|
+
*
|
|
57
|
+
* @template TData
|
|
58
|
+
* @returns {genericFilterFunction<TData>} A function that takes a data row and a filter schema,
|
|
59
|
+
* and evaluates whether the row matches the filter criteria.
|
|
60
|
+
*
|
|
61
|
+
* The returned function takes two arguments:
|
|
62
|
+
* - `row` (TData): The data row to be evaluated.
|
|
63
|
+
* - `filter` (FilterItemSchema): Defines the filtering criteria, including the operator and value to filter by.
|
|
64
|
+
*
|
|
65
|
+
* Internally, the function determines the variant based on the row and operator, creates a filter
|
|
66
|
+
* predicate using the specified operator and value, and applies the predicate on the row to determine
|
|
67
|
+
* whether it satisfies the filter.
|
|
68
|
+
*/
|
|
69
|
+
export declare const genericFilter: <TData>() => genericFilterFunction<TData>;
|
|
70
|
+
type genericFilterGroupFunction<TData> = (row: TData, filter: RuleGroupType) => boolean;
|
|
71
|
+
export declare const genericFilterGroup: <TData>() => genericFilterGroupFunction<TData>;
|
|
72
|
+
export {};
|
|
73
|
+
//# sourceMappingURL=queryFilters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryFilters.d.ts","sourceRoot":"","sources":["../../../src/functions/filtering/queryFilters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAA8B,aAAa,EAAE,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AAyBxF,KAAK,iBAAiB,GAAG;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,uEAAuE;IACvE,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAGF,KAAK,SAAS,CAAC,GAAG,GAAG,OAAO,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;AAsc3E,6CAA6C;AAE7C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,GAAG,GAAG,OAAO,EAAE,MAAM,iBAAiB,KAAG,SAAS,CAAC,GAAG,CAI3F,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,MAAM,2BAA2B,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC;AAEpH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB,GAC7B,KAAK,OAAK,2BAA2B,CAAC,KAAK,CAS3C,CAAC;AAEJ;;;;;;;;;;GAUG;AACH,KAAK,qBAAqB,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,KAAK,OAAO,CAAC;AAsBnF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,GACvB,KAAK,OAAK,qBAAqB,CAAC,KAAK,CAQrC,CAAC;AAEJ,KAAK,0BAA0B,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC;AAExF,eAAO,MAAM,kBAAkB,GAC5B,KAAK,OAAK,0BAA0B,CAAC,KAAK,CAI1C,CAAC"}
|
|
@@ -0,0 +1,546 @@
|
|
|
1
|
+
import { isRuleGroupType, isRuleType } from 'react-querybuilder';
|
|
2
|
+
/** ---------- Date helpers ---------- */
|
|
3
|
+
const startOfDay = (d) => {
|
|
4
|
+
const r = new Date(d);
|
|
5
|
+
r.setHours(0, 0, 0, 0);
|
|
6
|
+
return r;
|
|
7
|
+
};
|
|
8
|
+
const endOfDay = (d) => {
|
|
9
|
+
const r = new Date(d);
|
|
10
|
+
r.setHours(23, 59, 59, 999);
|
|
11
|
+
return r;
|
|
12
|
+
};
|
|
13
|
+
const compareDateOnly = (a, b) => {
|
|
14
|
+
if (!a && !b)
|
|
15
|
+
return 0;
|
|
16
|
+
if (!a)
|
|
17
|
+
return 1;
|
|
18
|
+
if (!b)
|
|
19
|
+
return -1;
|
|
20
|
+
const aa = startOfDay(a).getTime();
|
|
21
|
+
const bb = startOfDay(b).getTime();
|
|
22
|
+
if (aa === bb)
|
|
23
|
+
return 0;
|
|
24
|
+
return aa < bb ? -1 : 1;
|
|
25
|
+
};
|
|
26
|
+
/** ---------- Utilities ---------- */
|
|
27
|
+
const parseJSONValue = (json) => {
|
|
28
|
+
try {
|
|
29
|
+
const v = JSON.parse(json);
|
|
30
|
+
if (typeof v === 'string')
|
|
31
|
+
return v;
|
|
32
|
+
if (Array.isArray(v) && v.every((x) => typeof x === 'string'))
|
|
33
|
+
return v;
|
|
34
|
+
throw new Error('value must be string or string[]');
|
|
35
|
+
}
|
|
36
|
+
catch (_a) {
|
|
37
|
+
throw new Error('Invalid JSON for filter value');
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
const toNumber = (x) => {
|
|
41
|
+
if (x == null || x === '')
|
|
42
|
+
return null;
|
|
43
|
+
const n = Number(x);
|
|
44
|
+
return Number.isFinite(n) ? n : null;
|
|
45
|
+
};
|
|
46
|
+
const toDate = (x) => {
|
|
47
|
+
if (x == null || x === '')
|
|
48
|
+
return null;
|
|
49
|
+
// Accept Date, epoch number, or ISO-like string
|
|
50
|
+
if (x instanceof Date && !isNaN(x.getTime()))
|
|
51
|
+
return x;
|
|
52
|
+
const n = Number(x);
|
|
53
|
+
if (Number.isFinite(n)) {
|
|
54
|
+
const d = new Date(n);
|
|
55
|
+
return isNaN(d.getTime()) ? null : d;
|
|
56
|
+
}
|
|
57
|
+
const d = new Date(String(x));
|
|
58
|
+
return isNaN(d.getTime()) ? null : d;
|
|
59
|
+
};
|
|
60
|
+
const normalizeStr = (x) => String(x !== null && x !== void 0 ? x : '').trim();
|
|
61
|
+
const ensureAllowed = (op, allowed) => {
|
|
62
|
+
if (!allowed.includes(op)) {
|
|
63
|
+
throw new Error(`Operator "${op}" is not allowed for this variant`);
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
const parseRelative = (json) => {
|
|
67
|
+
const v = JSON.parse(json);
|
|
68
|
+
if (v && typeof v === 'object' && typeof v.offsetDays === 'number' && typeof v.compare === 'string') {
|
|
69
|
+
return v;
|
|
70
|
+
}
|
|
71
|
+
if (v && typeof v === 'object' && typeof v.startOffsetDays === 'number' && typeof v.endOffsetDays === 'number') {
|
|
72
|
+
return v;
|
|
73
|
+
}
|
|
74
|
+
throw new Error('For "isRelativeToToday", value must be {"offsetDays":number,"compare":"lt|lte|gt|gte|eq|ne"} or {"startOffsetDays":number,"endOffsetDays":number}');
|
|
75
|
+
};
|
|
76
|
+
const addDays = (d, days) => {
|
|
77
|
+
const copy = new Date(d);
|
|
78
|
+
copy.setDate(copy.getDate() + days);
|
|
79
|
+
return copy;
|
|
80
|
+
};
|
|
81
|
+
class BaseHandler {
|
|
82
|
+
setNext(next) {
|
|
83
|
+
this.next = next;
|
|
84
|
+
return next;
|
|
85
|
+
}
|
|
86
|
+
handle(args) {
|
|
87
|
+
if (this.next)
|
|
88
|
+
return this.next.handle(args);
|
|
89
|
+
throw new Error(`No handler found for variant "${args.variant}"`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/** TEXT */
|
|
93
|
+
class TextHandler extends BaseHandler {
|
|
94
|
+
constructor() {
|
|
95
|
+
super(...arguments);
|
|
96
|
+
this.allowed = [
|
|
97
|
+
'beginsWith',
|
|
98
|
+
'endsWith',
|
|
99
|
+
'=',
|
|
100
|
+
'!=',
|
|
101
|
+
'contains',
|
|
102
|
+
'doesNotContain',
|
|
103
|
+
'isEmpty',
|
|
104
|
+
'isNotEmpty',
|
|
105
|
+
];
|
|
106
|
+
}
|
|
107
|
+
handle({ variant, operator, valueJson }) {
|
|
108
|
+
if (variant !== 'text')
|
|
109
|
+
return super.handle({ variant, operator, valueJson });
|
|
110
|
+
ensureAllowed(operator, this.allowed);
|
|
111
|
+
const raw = parseJSONValue(valueJson);
|
|
112
|
+
const needle = Array.isArray(raw) ? raw.join(' ') : raw;
|
|
113
|
+
switch (operator) {
|
|
114
|
+
case 'beginsWith':
|
|
115
|
+
return (cell) => {
|
|
116
|
+
console.log('beginsWith', cell, needle);
|
|
117
|
+
return normalizeStr(cell).toLowerCase().startsWith(needle.toLowerCase());
|
|
118
|
+
};
|
|
119
|
+
case 'endsWith':
|
|
120
|
+
return (cell) => normalizeStr(cell).toLowerCase().endsWith(needle.toLowerCase());
|
|
121
|
+
case '=':
|
|
122
|
+
return (cell) => normalizeStr(cell) === needle;
|
|
123
|
+
case '!=':
|
|
124
|
+
return (cell) => normalizeStr(cell) !== needle;
|
|
125
|
+
case 'contains':
|
|
126
|
+
return (cell) => normalizeStr(cell).toLowerCase().includes(needle.toLowerCase());
|
|
127
|
+
case 'doesNotContain':
|
|
128
|
+
return (cell) => !normalizeStr(cell).toLowerCase().includes(needle.toLowerCase());
|
|
129
|
+
case 'isEmpty':
|
|
130
|
+
return (cell) => normalizeStr(cell) === '';
|
|
131
|
+
case 'isNotEmpty':
|
|
132
|
+
return (cell) => normalizeStr(cell) !== '';
|
|
133
|
+
}
|
|
134
|
+
throw new Error(`Unsupported text operator "${operator}"`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/** NUMBER */
|
|
138
|
+
class NumberHandler extends BaseHandler {
|
|
139
|
+
constructor() {
|
|
140
|
+
super(...arguments);
|
|
141
|
+
this.allowed = ['==', '!=', '>', '>=', '<', '<=', 'isEmpty', 'isNotEmpty'];
|
|
142
|
+
}
|
|
143
|
+
handle({ variant, operator, valueJson }) {
|
|
144
|
+
if (variant !== 'number')
|
|
145
|
+
return super.handle({ variant, operator, valueJson });
|
|
146
|
+
ensureAllowed(operator, this.allowed);
|
|
147
|
+
const raw = parseJSONValue(valueJson);
|
|
148
|
+
const value = Array.isArray(raw) ? toNumber(raw[0]) : toNumber(raw);
|
|
149
|
+
if (value == null && !['isEmpty', 'isNotEmpty'].includes(operator)) {
|
|
150
|
+
throw new Error('Number filter requires a numeric value');
|
|
151
|
+
}
|
|
152
|
+
switch (operator) {
|
|
153
|
+
case '==':
|
|
154
|
+
return (cell) => toNumber(cell) === value;
|
|
155
|
+
case '!=':
|
|
156
|
+
return (cell) => toNumber(cell) !== value;
|
|
157
|
+
case '<':
|
|
158
|
+
return (cell) => {
|
|
159
|
+
const n = toNumber(cell);
|
|
160
|
+
return n == null ? false : n < value;
|
|
161
|
+
};
|
|
162
|
+
case '<=':
|
|
163
|
+
return (cell) => {
|
|
164
|
+
const n = toNumber(cell);
|
|
165
|
+
return n == null ? false : n <= value;
|
|
166
|
+
};
|
|
167
|
+
case '>':
|
|
168
|
+
return (cell) => {
|
|
169
|
+
const n = toNumber(cell);
|
|
170
|
+
return n == null ? false : n > value;
|
|
171
|
+
};
|
|
172
|
+
case '>=':
|
|
173
|
+
return (cell) => {
|
|
174
|
+
const n = toNumber(cell);
|
|
175
|
+
return n == null ? false : n >= value;
|
|
176
|
+
};
|
|
177
|
+
case 'isEmpty':
|
|
178
|
+
return (cell) => cell == null || cell === '';
|
|
179
|
+
case 'isNotEmpty':
|
|
180
|
+
return (cell) => !(cell == null || cell === '');
|
|
181
|
+
}
|
|
182
|
+
throw new Error(`Unsupported number operator "${operator}"`);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
/** RANGE (numeric range) */
|
|
186
|
+
class NumberRangeHandler extends BaseHandler {
|
|
187
|
+
constructor() {
|
|
188
|
+
super(...arguments);
|
|
189
|
+
this.allowed = ['isBetween'];
|
|
190
|
+
}
|
|
191
|
+
handle({ variant, operator, valueJson }) {
|
|
192
|
+
if (variant !== 'range')
|
|
193
|
+
return super.handle({ variant, operator, valueJson });
|
|
194
|
+
ensureAllowed(operator, this.allowed);
|
|
195
|
+
const raw = parseJSONValue(valueJson);
|
|
196
|
+
const arr = Array.isArray(raw) ? raw : [raw];
|
|
197
|
+
const [minStr, maxStr] = arr;
|
|
198
|
+
const min = toNumber(minStr);
|
|
199
|
+
const max = toNumber(maxStr);
|
|
200
|
+
return (cell) => {
|
|
201
|
+
const n = toNumber(cell);
|
|
202
|
+
if (n == null)
|
|
203
|
+
return false;
|
|
204
|
+
const geMin = min == null || n >= min;
|
|
205
|
+
const leMax = max == null || n <= max;
|
|
206
|
+
return geMin && leMax;
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
/** DATE (single) */
|
|
211
|
+
class DateHandler extends BaseHandler {
|
|
212
|
+
constructor() {
|
|
213
|
+
super(...arguments);
|
|
214
|
+
this.allowed = [
|
|
215
|
+
'eq',
|
|
216
|
+
'ne',
|
|
217
|
+
'lt',
|
|
218
|
+
'lte',
|
|
219
|
+
'gt',
|
|
220
|
+
'gte',
|
|
221
|
+
'isEmpty',
|
|
222
|
+
'isNotEmpty',
|
|
223
|
+
'isRelativeToToday',
|
|
224
|
+
];
|
|
225
|
+
}
|
|
226
|
+
handle({ variant, operator, valueJson }) {
|
|
227
|
+
if (variant !== 'date')
|
|
228
|
+
return super.handle({ variant, operator, valueJson });
|
|
229
|
+
ensureAllowed(operator, this.allowed);
|
|
230
|
+
if (operator === 'isRelativeToToday') {
|
|
231
|
+
const rel = parseRelative(valueJson);
|
|
232
|
+
if (!('offsetDays' in rel))
|
|
233
|
+
throw new Error('date:isRelativeToToday expects {offsetDays, compare}');
|
|
234
|
+
const pivot = addDays(startOfDay(new Date()), rel.offsetDays);
|
|
235
|
+
switch (rel.compare) {
|
|
236
|
+
case 'lt':
|
|
237
|
+
return (cell) => compareDateOnly(toDate(cell), pivot) < 0;
|
|
238
|
+
case 'lte':
|
|
239
|
+
return (cell) => compareDateOnly(toDate(cell), pivot) <= 0;
|
|
240
|
+
case 'gt':
|
|
241
|
+
return (cell) => compareDateOnly(toDate(cell), pivot) > 0;
|
|
242
|
+
case 'gte':
|
|
243
|
+
return (cell) => compareDateOnly(toDate(cell), pivot) >= 0;
|
|
244
|
+
case 'eq':
|
|
245
|
+
return (cell) => compareDateOnly(toDate(cell), pivot) === 0;
|
|
246
|
+
case 'ne':
|
|
247
|
+
return (cell) => compareDateOnly(toDate(cell), pivot) !== 0;
|
|
248
|
+
default:
|
|
249
|
+
throw new Error(`Unsupported compare "${rel.compare}" for isRelativeToToday`);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
const raw = parseJSONValue(valueJson);
|
|
253
|
+
const v = Array.isArray(raw) ? raw[0] : raw;
|
|
254
|
+
const target = toDate(v);
|
|
255
|
+
if (!target && !['isEmpty', 'isNotEmpty'].includes(operator)) {
|
|
256
|
+
throw new Error('Date filter requires a valid date value');
|
|
257
|
+
}
|
|
258
|
+
switch (operator) {
|
|
259
|
+
case 'eq':
|
|
260
|
+
return (cell) => compareDateOnly(toDate(cell), target) === 0;
|
|
261
|
+
case 'ne':
|
|
262
|
+
return (cell) => compareDateOnly(toDate(cell), target) !== 0;
|
|
263
|
+
case 'lt':
|
|
264
|
+
return (cell) => compareDateOnly(toDate(cell), target) < 0;
|
|
265
|
+
case 'lte':
|
|
266
|
+
return (cell) => compareDateOnly(toDate(cell), target) <= 0;
|
|
267
|
+
case 'gt':
|
|
268
|
+
return (cell) => compareDateOnly(toDate(cell), target) > 0;
|
|
269
|
+
case 'gte':
|
|
270
|
+
return (cell) => compareDateOnly(toDate(cell), target) >= 0;
|
|
271
|
+
case 'isEmpty':
|
|
272
|
+
return (cell) => !toDate(cell);
|
|
273
|
+
case 'isNotEmpty':
|
|
274
|
+
return (cell) => !!toDate(cell);
|
|
275
|
+
}
|
|
276
|
+
throw new Error(`Unsupported date operator "${operator}"`);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
/** DATE RANGE */
|
|
280
|
+
class DateRangeHandler extends BaseHandler {
|
|
281
|
+
constructor() {
|
|
282
|
+
super(...arguments);
|
|
283
|
+
this.allowed = ['isBetween', 'isRelativeToToday'];
|
|
284
|
+
}
|
|
285
|
+
handle({ variant, operator, valueJson }) {
|
|
286
|
+
if (variant !== 'dateRange')
|
|
287
|
+
return super.handle({ variant, operator, valueJson });
|
|
288
|
+
ensureAllowed(operator, this.allowed);
|
|
289
|
+
if (operator === 'isRelativeToToday') {
|
|
290
|
+
const rel = parseRelative(valueJson);
|
|
291
|
+
if (!('startOffsetDays' in rel)) {
|
|
292
|
+
throw new Error('dateRange:isRelativeToToday expects {startOffsetDays,endOffsetDays}');
|
|
293
|
+
}
|
|
294
|
+
const today = startOfDay(new Date());
|
|
295
|
+
const start = addDays(today, rel.startOffsetDays);
|
|
296
|
+
const end = addDays(today, rel.endOffsetDays);
|
|
297
|
+
const [lo, hi] = start <= end ? [start, end] : [end, start];
|
|
298
|
+
return (cell) => {
|
|
299
|
+
const d = toDate(cell);
|
|
300
|
+
if (!d)
|
|
301
|
+
return false;
|
|
302
|
+
const sd = startOfDay(d);
|
|
303
|
+
return sd >= lo && sd <= hi;
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
// isBetween with absolute dates: valueJson is string | [string, string]
|
|
307
|
+
const raw = parseJSONValue(valueJson);
|
|
308
|
+
const arr = Array.isArray(raw) ? raw : [raw];
|
|
309
|
+
const [startRaw, endRaw] = arr;
|
|
310
|
+
const start = startRaw ? startOfDay(toDate(startRaw)) : null;
|
|
311
|
+
const end = endRaw ? endOfDay(toDate(endRaw)) : null;
|
|
312
|
+
return (cell) => {
|
|
313
|
+
const d = toDate(cell);
|
|
314
|
+
if (!d)
|
|
315
|
+
return false;
|
|
316
|
+
const sd = d;
|
|
317
|
+
const geStart = !start || sd >= start;
|
|
318
|
+
const leEnd = !end || sd <= end;
|
|
319
|
+
return geStart && leEnd;
|
|
320
|
+
};
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
/** BOOLEAN */
|
|
324
|
+
class BooleanHandler extends BaseHandler {
|
|
325
|
+
constructor() {
|
|
326
|
+
super(...arguments);
|
|
327
|
+
this.allowed = ['==', '!=', 'isEmpty', 'isNotEmpty'];
|
|
328
|
+
}
|
|
329
|
+
handle({ variant, operator, valueJson }) {
|
|
330
|
+
if (variant !== 'boolean')
|
|
331
|
+
return super.handle({ variant, operator, valueJson });
|
|
332
|
+
ensureAllowed(operator, this.allowed);
|
|
333
|
+
const parseBooleanValue = (value) => {
|
|
334
|
+
if (value === 'true')
|
|
335
|
+
return true;
|
|
336
|
+
if (value === 'false')
|
|
337
|
+
return false;
|
|
338
|
+
return null;
|
|
339
|
+
};
|
|
340
|
+
const raw = parseJSONValue(valueJson);
|
|
341
|
+
const v = Array.isArray(raw) ? raw[0] : raw;
|
|
342
|
+
const val = parseBooleanValue(v);
|
|
343
|
+
switch (operator) {
|
|
344
|
+
case '==':
|
|
345
|
+
if (val == null)
|
|
346
|
+
throw new Error('Boolean "eq" needs value "true" or "false"');
|
|
347
|
+
return (cell) => Boolean(cell) === val;
|
|
348
|
+
case '!=':
|
|
349
|
+
if (val == null)
|
|
350
|
+
throw new Error('Boolean "ne" needs value "true" or "false"');
|
|
351
|
+
return (cell) => Boolean(cell) !== val;
|
|
352
|
+
case 'isEmpty':
|
|
353
|
+
return (cell) => cell == null || cell === '';
|
|
354
|
+
case 'isNotEmpty':
|
|
355
|
+
return (cell) => !(cell == null || cell === '');
|
|
356
|
+
}
|
|
357
|
+
throw new Error(`Unsupported boolean operator "${operator}"`);
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
/** MULTI-SELECT (array inclusion) */
|
|
361
|
+
class MultiSelectHandler extends BaseHandler {
|
|
362
|
+
constructor() {
|
|
363
|
+
super(...arguments);
|
|
364
|
+
this.allowed = ['inArray', 'notInArray', 'isEmpty', 'isNotEmpty'];
|
|
365
|
+
}
|
|
366
|
+
handle({ variant, operator, valueJson }) {
|
|
367
|
+
if (variant !== 'multiSelect')
|
|
368
|
+
return super.handle({ variant, operator, valueJson });
|
|
369
|
+
ensureAllowed(operator, this.allowed);
|
|
370
|
+
const raw = parseJSONValue(valueJson);
|
|
371
|
+
const needles = Array.isArray(raw) ? raw : [raw];
|
|
372
|
+
const asArray = (x) => {
|
|
373
|
+
if (Array.isArray(x))
|
|
374
|
+
return x.map((e) => String(e));
|
|
375
|
+
// allow comma-separated strings as a convenience
|
|
376
|
+
if (typeof x === 'string')
|
|
377
|
+
return x
|
|
378
|
+
.split(',')
|
|
379
|
+
.map((s) => s.trim())
|
|
380
|
+
.filter(Boolean);
|
|
381
|
+
if (x == null)
|
|
382
|
+
return [];
|
|
383
|
+
return [String(x)];
|
|
384
|
+
};
|
|
385
|
+
switch (operator) {
|
|
386
|
+
case 'inArray':
|
|
387
|
+
// cell has ANY of the selected
|
|
388
|
+
return (cell) => {
|
|
389
|
+
const arr = asArray(cell);
|
|
390
|
+
return arr.some((v) => needles.includes(String(v)));
|
|
391
|
+
};
|
|
392
|
+
case 'notInArray':
|
|
393
|
+
// cell has NONE of the selected
|
|
394
|
+
return (cell) => {
|
|
395
|
+
const arr = asArray(cell);
|
|
396
|
+
return arr.every((v) => !needles.includes(String(v)));
|
|
397
|
+
};
|
|
398
|
+
case 'isEmpty':
|
|
399
|
+
return (cell) => asArray(cell).length === 0;
|
|
400
|
+
case 'isNotEmpty':
|
|
401
|
+
return (cell) => asArray(cell).length > 0;
|
|
402
|
+
}
|
|
403
|
+
throw new Error(`Unsupported multi-select operator "${operator}"`);
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
/** ---------- Group Compilation ---------- */
|
|
407
|
+
const compileOrFilters = (filters) => {
|
|
408
|
+
const predicateBuilder = genericFilter();
|
|
409
|
+
return (row) => {
|
|
410
|
+
for (const filter of filters) {
|
|
411
|
+
if (isRuleType(filter)) {
|
|
412
|
+
const current = predicateBuilder(row, filter);
|
|
413
|
+
if (current)
|
|
414
|
+
return true;
|
|
415
|
+
}
|
|
416
|
+
if (isRuleGroupType(filter)) {
|
|
417
|
+
const current = genericFilterGroup()(row, filter);
|
|
418
|
+
if (current)
|
|
419
|
+
return true;
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
return false;
|
|
423
|
+
};
|
|
424
|
+
};
|
|
425
|
+
const compileAndFilters = (filters) => {
|
|
426
|
+
const predicateBuilder = genericFilter();
|
|
427
|
+
return (row) => {
|
|
428
|
+
for (const filter of filters) {
|
|
429
|
+
if (isRuleType(filter)) {
|
|
430
|
+
const current = predicateBuilder(row, filter);
|
|
431
|
+
if (!current)
|
|
432
|
+
return false;
|
|
433
|
+
}
|
|
434
|
+
if (isRuleGroupType(filter)) {
|
|
435
|
+
const current = genericFilterGroup()(row, filter);
|
|
436
|
+
if (!current)
|
|
437
|
+
return false;
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
return true;
|
|
441
|
+
};
|
|
442
|
+
};
|
|
443
|
+
const buildChain = () => {
|
|
444
|
+
const handlers = [
|
|
445
|
+
new TextHandler(),
|
|
446
|
+
new NumberHandler(),
|
|
447
|
+
new NumberRangeHandler(),
|
|
448
|
+
new DateHandler(),
|
|
449
|
+
new DateRangeHandler(),
|
|
450
|
+
new BooleanHandler(),
|
|
451
|
+
new MultiSelectHandler(),
|
|
452
|
+
];
|
|
453
|
+
handlers.reverse(); // reverse so that the first handler that matches is used
|
|
454
|
+
const first = handlers.pop();
|
|
455
|
+
if (!first)
|
|
456
|
+
throw new Error('No applicable filter handler');
|
|
457
|
+
return handlers.reduce((prev, curr) => prev.setNext(curr), first);
|
|
458
|
+
};
|
|
459
|
+
// Actual handler chain to be used by the public factory functions
|
|
460
|
+
const handlerChain = buildChain();
|
|
461
|
+
/** ---------- Public factories ---------- */
|
|
462
|
+
/**
|
|
463
|
+
* Builds a predicate for a single cell given a filter config.
|
|
464
|
+
* Throws for unknown variant or irrelevant operators.
|
|
465
|
+
*/
|
|
466
|
+
export const createFilterPredicate = (args) => {
|
|
467
|
+
const pred = handlerChain.handle(args);
|
|
468
|
+
if (!pred)
|
|
469
|
+
throw new Error('No applicable filter handler');
|
|
470
|
+
return pred;
|
|
471
|
+
};
|
|
472
|
+
/**
|
|
473
|
+
* Factory function that creates a filter function to be applied to data rows.
|
|
474
|
+
* The generated filter function evaluates a row against a given filter condition
|
|
475
|
+
* and returns a boolean indicating whether the row satisfies the filter criteria
|
|
476
|
+
* for the specified column.
|
|
477
|
+
*
|
|
478
|
+
* The filter function is constructed dynamically based on the provided filter
|
|
479
|
+
* definition, which includes an operator, variant, and filter value. The filter
|
|
480
|
+
* value is serialized and deserialized as JSON to ensure proper handling of
|
|
481
|
+
* complex data structures.
|
|
482
|
+
*
|
|
483
|
+
* @template TData - The type of the data row objects.
|
|
484
|
+
* @returns {GenericColumnFilterFunction<TData>} A filter function that takes a row, column ID, and filter value, and returns a boolean.
|
|
485
|
+
*/
|
|
486
|
+
export const genericColumnFilter = () => (row, columnId, filterValue) => {
|
|
487
|
+
const columnFilter = JSON.parse(filterValue);
|
|
488
|
+
const predicate = createFilterPredicate({
|
|
489
|
+
operator: columnFilter.operator,
|
|
490
|
+
variant: getVariant(row, columnFilter.operator),
|
|
491
|
+
valueJson: JSON.stringify(columnFilter.value),
|
|
492
|
+
});
|
|
493
|
+
return predicate(row.getValue(columnId));
|
|
494
|
+
};
|
|
495
|
+
const getVariant = (value, operator) => {
|
|
496
|
+
let variant = 'text';
|
|
497
|
+
if (value instanceof Date)
|
|
498
|
+
variant = 'date';
|
|
499
|
+
else if (Array.isArray(value) && value.length == 2 && value.every((v) => v instanceof Date))
|
|
500
|
+
variant = 'dateRange';
|
|
501
|
+
else if (typeof value === 'boolean')
|
|
502
|
+
variant = 'boolean';
|
|
503
|
+
else if (typeof value === 'number')
|
|
504
|
+
variant = 'number';
|
|
505
|
+
else if (Array.isArray(value) && value.length == 2 && value.every((v) => typeof v === 'number'))
|
|
506
|
+
variant = 'range';
|
|
507
|
+
else if (typeof value === 'string' && value.includes(','))
|
|
508
|
+
variant = 'multiSelect';
|
|
509
|
+
else if (typeof value === 'string' && !['iLike', 'notILike'].includes(operator))
|
|
510
|
+
variant = 'select';
|
|
511
|
+
return variant;
|
|
512
|
+
};
|
|
513
|
+
const getField = (row, columnId) => {
|
|
514
|
+
if (row && typeof row === 'object' && columnId in row) {
|
|
515
|
+
return row[columnId];
|
|
516
|
+
}
|
|
517
|
+
return undefined;
|
|
518
|
+
};
|
|
519
|
+
/**
|
|
520
|
+
* A higher-order function that creates a generic filter function.
|
|
521
|
+
*
|
|
522
|
+
* @template TData
|
|
523
|
+
* @returns {genericFilterFunction<TData>} A function that takes a data row and a filter schema,
|
|
524
|
+
* and evaluates whether the row matches the filter criteria.
|
|
525
|
+
*
|
|
526
|
+
* The returned function takes two arguments:
|
|
527
|
+
* - `row` (TData): The data row to be evaluated.
|
|
528
|
+
* - `filter` (FilterItemSchema): Defines the filtering criteria, including the operator and value to filter by.
|
|
529
|
+
*
|
|
530
|
+
* Internally, the function determines the variant based on the row and operator, creates a filter
|
|
531
|
+
* predicate using the specified operator and value, and applies the predicate on the row to determine
|
|
532
|
+
* whether it satisfies the filter.
|
|
533
|
+
*/
|
|
534
|
+
export const genericFilter = () => (row, filter) => {
|
|
535
|
+
const predicate = createFilterPredicate({
|
|
536
|
+
operator: filter.operator,
|
|
537
|
+
variant: getVariant(row, filter.operator),
|
|
538
|
+
valueJson: JSON.stringify(filter.value),
|
|
539
|
+
});
|
|
540
|
+
return predicate(getField(row, filter.field));
|
|
541
|
+
};
|
|
542
|
+
export const genericFilterGroup = () => (row, filter) => {
|
|
543
|
+
const predicate = filter.combinator === 'and' ? compileAndFilters(filter.rules) : compileOrFilters(filter.rules);
|
|
544
|
+
return predicate(row);
|
|
545
|
+
};
|
|
546
|
+
//# sourceMappingURL=queryFilters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryFilters.js","sourceRoot":"","sources":["../../../src/functions/filtering/queryFilters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAA"}
|
package/dist/functions/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAA"}
|
|
@@ -31,6 +31,38 @@ export type SettingsIdToResponseMap = {
|
|
|
31
31
|
[AccountSettingsIdEnum.WIZARD_PLATFORM]: WizardPlatformResponse;
|
|
32
32
|
[AccountSettingsIdEnum.EDUCATIONAL_PLATFORM]: EducationalPlatformResponse;
|
|
33
33
|
};
|
|
34
|
+
export declare const UnitsOrCurrencyEnum: z.ZodEnum<{
|
|
35
|
+
currency: "currency";
|
|
36
|
+
units: "units";
|
|
37
|
+
}>;
|
|
38
|
+
export type UnitsOrCurrency = z.infer<typeof UnitsOrCurrencyEnum>;
|
|
39
|
+
export declare const InventoryOptimizationValueSchema: z.ZodObject<{
|
|
40
|
+
lead_time_days: z.ZodNumber;
|
|
41
|
+
stockout_cost_ratio: z.ZodNumber;
|
|
42
|
+
holding_cost_ratio: z.ZodNumber;
|
|
43
|
+
allow_backorders: z.ZodBoolean;
|
|
44
|
+
location_ids: z.ZodArray<z.ZodString>;
|
|
45
|
+
max_locations: z.ZodNumber;
|
|
46
|
+
probability_threshold: z.ZodNumber;
|
|
47
|
+
maximum_periods: z.ZodNumber;
|
|
48
|
+
discount_rate: z.ZodNumber;
|
|
49
|
+
min_return_on_investment: z.ZodNumber;
|
|
50
|
+
bundle_size: z.ZodObject<{
|
|
51
|
+
meta_id: z.ZodOptional<z.ZodString>;
|
|
52
|
+
unit: z.ZodEnum<{
|
|
53
|
+
currency: "currency";
|
|
54
|
+
units: "units";
|
|
55
|
+
}>;
|
|
56
|
+
}, z.core.$strip>;
|
|
57
|
+
minimum_order_quantity: z.ZodObject<{
|
|
58
|
+
meta_id: z.ZodOptional<z.ZodString>;
|
|
59
|
+
unit: z.ZodEnum<{
|
|
60
|
+
currency: "currency";
|
|
61
|
+
units: "units";
|
|
62
|
+
}>;
|
|
63
|
+
}, z.core.$strip>;
|
|
64
|
+
}, z.core.$strip>;
|
|
65
|
+
export type InventoryOptimizationValue = z.infer<typeof InventoryOptimizationValueSchema>;
|
|
34
66
|
export declare const InventoryOptimizationResponseSchema: z.ZodPipe<z.ZodObject<{
|
|
35
67
|
id: z.ZodCatch<z.ZodEnum<{
|
|
36
68
|
[x: string]: string;
|
|
@@ -48,6 +80,21 @@ export declare const InventoryOptimizationResponseSchema: z.ZodPipe<z.ZodObject<
|
|
|
48
80
|
probability_threshold: z.ZodNumber;
|
|
49
81
|
maximum_periods: z.ZodNumber;
|
|
50
82
|
discount_rate: z.ZodNumber;
|
|
83
|
+
min_return_on_investment: z.ZodNumber;
|
|
84
|
+
bundle_size: z.ZodObject<{
|
|
85
|
+
meta_id: z.ZodOptional<z.ZodString>;
|
|
86
|
+
unit: z.ZodEnum<{
|
|
87
|
+
currency: "currency";
|
|
88
|
+
units: "units";
|
|
89
|
+
}>;
|
|
90
|
+
}, z.core.$strip>;
|
|
91
|
+
minimum_order_quantity: z.ZodObject<{
|
|
92
|
+
meta_id: z.ZodOptional<z.ZodString>;
|
|
93
|
+
unit: z.ZodEnum<{
|
|
94
|
+
currency: "currency";
|
|
95
|
+
units: "units";
|
|
96
|
+
}>;
|
|
97
|
+
}, z.core.$strip>;
|
|
51
98
|
}, z.core.$strip>;
|
|
52
99
|
}, z.core.$strip>, z.ZodTransform<{
|
|
53
100
|
lead_time_days: number;
|
|
@@ -59,6 +106,15 @@ export declare const InventoryOptimizationResponseSchema: z.ZodPipe<z.ZodObject<
|
|
|
59
106
|
probability_threshold: number;
|
|
60
107
|
maximum_periods: number;
|
|
61
108
|
discount_rate: number;
|
|
109
|
+
min_return_on_investment: number;
|
|
110
|
+
bundle_size: {
|
|
111
|
+
unit: "currency" | "units";
|
|
112
|
+
meta_id?: string | undefined;
|
|
113
|
+
};
|
|
114
|
+
minimum_order_quantity: {
|
|
115
|
+
unit: "currency" | "units";
|
|
116
|
+
meta_id?: string | undefined;
|
|
117
|
+
};
|
|
62
118
|
}, {
|
|
63
119
|
id: string;
|
|
64
120
|
accountId: string;
|
|
@@ -72,6 +128,15 @@ export declare const InventoryOptimizationResponseSchema: z.ZodPipe<z.ZodObject<
|
|
|
72
128
|
probability_threshold: number;
|
|
73
129
|
maximum_periods: number;
|
|
74
130
|
discount_rate: number;
|
|
131
|
+
min_return_on_investment: number;
|
|
132
|
+
bundle_size: {
|
|
133
|
+
unit: "currency" | "units";
|
|
134
|
+
meta_id?: string | undefined;
|
|
135
|
+
};
|
|
136
|
+
minimum_order_quantity: {
|
|
137
|
+
unit: "currency" | "units";
|
|
138
|
+
meta_id?: string | undefined;
|
|
139
|
+
};
|
|
75
140
|
};
|
|
76
141
|
isEnabled?: boolean | undefined;
|
|
77
142
|
updatedAt?: import("luxon").DateTime<true> | import("luxon").DateTime<false> | undefined;
|
|
@@ -1346,6 +1411,21 @@ export declare const SettingsSchemas: {
|
|
|
1346
1411
|
probability_threshold: z.ZodNumber;
|
|
1347
1412
|
maximum_periods: z.ZodNumber;
|
|
1348
1413
|
discount_rate: z.ZodNumber;
|
|
1414
|
+
min_return_on_investment: z.ZodNumber;
|
|
1415
|
+
bundle_size: z.ZodObject<{
|
|
1416
|
+
meta_id: z.ZodOptional<z.ZodString>;
|
|
1417
|
+
unit: z.ZodEnum<{
|
|
1418
|
+
currency: "currency";
|
|
1419
|
+
units: "units";
|
|
1420
|
+
}>;
|
|
1421
|
+
}, z.core.$strip>;
|
|
1422
|
+
minimum_order_quantity: z.ZodObject<{
|
|
1423
|
+
meta_id: z.ZodOptional<z.ZodString>;
|
|
1424
|
+
unit: z.ZodEnum<{
|
|
1425
|
+
currency: "currency";
|
|
1426
|
+
units: "units";
|
|
1427
|
+
}>;
|
|
1428
|
+
}, z.core.$strip>;
|
|
1349
1429
|
}, z.core.$strip>;
|
|
1350
1430
|
}, z.core.$strip>, z.ZodTransform<{
|
|
1351
1431
|
lead_time_days: number;
|
|
@@ -1357,6 +1437,15 @@ export declare const SettingsSchemas: {
|
|
|
1357
1437
|
probability_threshold: number;
|
|
1358
1438
|
maximum_periods: number;
|
|
1359
1439
|
discount_rate: number;
|
|
1440
|
+
min_return_on_investment: number;
|
|
1441
|
+
bundle_size: {
|
|
1442
|
+
unit: "currency" | "units";
|
|
1443
|
+
meta_id?: string | undefined;
|
|
1444
|
+
};
|
|
1445
|
+
minimum_order_quantity: {
|
|
1446
|
+
unit: "currency" | "units";
|
|
1447
|
+
meta_id?: string | undefined;
|
|
1448
|
+
};
|
|
1360
1449
|
}, {
|
|
1361
1450
|
id: string;
|
|
1362
1451
|
accountId: string;
|
|
@@ -1370,6 +1459,15 @@ export declare const SettingsSchemas: {
|
|
|
1370
1459
|
probability_threshold: number;
|
|
1371
1460
|
maximum_periods: number;
|
|
1372
1461
|
discount_rate: number;
|
|
1462
|
+
min_return_on_investment: number;
|
|
1463
|
+
bundle_size: {
|
|
1464
|
+
unit: "currency" | "units";
|
|
1465
|
+
meta_id?: string | undefined;
|
|
1466
|
+
};
|
|
1467
|
+
minimum_order_quantity: {
|
|
1468
|
+
unit: "currency" | "units";
|
|
1469
|
+
meta_id?: string | undefined;
|
|
1470
|
+
};
|
|
1373
1471
|
};
|
|
1374
1472
|
isEnabled?: boolean | undefined;
|
|
1375
1473
|
updatedAt?: import("luxon").DateTime<true> | import("luxon").DateTime<false> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accountSettings.d.ts","sourceRoot":"","sources":["../../../src/zod/account-settings/accountSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,qBAAqB,EAA6B,MAAM,QAAQ,CAAC;AAIzE,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC5E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAChG,MAAM,MAAM,2CAA2C,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iDAAiD,CAAC,CAAC;AAC5H,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAC5F,MAAM,MAAM,qCAAqC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2CAA2C,CAAC,CAAC;AAChH,MAAM,MAAM,sCAAsC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4CAA4C,CAAC,CAAC;AAClH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sCAAsC,CAAC,CAAC;AACtG,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAClG,MAAM,MAAM,2CAA2C,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iDAAiD,CAAC,CAAC;AAC5H,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AACpF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAG5F,MAAM,MAAM,uBAAuB,GAAG;IACpC,CAAC,qBAAqB,CAAC,sCAAsC,CAAC,EAAE,6BAA6B,CAAC;IAC9F,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;IACrE,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,2BAA2B,CAAC;IAC1E,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;IACpE,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;IACrE,CAAC,qBAAqB,CAAC,+BAA+B,CAAC,EAAE,qCAAqC,CAAC;IAC/F,CAAC,qBAAqB,CAAC,8BAA8B,CAAC,EAAE,sCAAsC,CAAC;IAC/F,CAAC,qBAAqB,CAAC,0BAA0B,CAAC,EAAE,gCAAgC,CAAC;IACrF,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,EAAE,8BAA8B,CAAC;IACjF,CAAC,qBAAqB,CAAC,sCAAsC,CAAC,EAAE,2CAA2C,CAAC;IAC5G,CAAC,qBAAqB,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IAC9D,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IACzE,CAAC,qBAAqB,CAAC,uCAAuC,CAAC,EAAE,2CAA2C,CAAC;IAC7G,CAAC,qBAAqB,CAAC,eAAe,CAAC,EAAE,sBAAsB,CAAC;IAChE,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,2BAA2B,CAAC;CAC3E,CAAC;
|
|
1
|
+
{"version":3,"file":"accountSettings.d.ts","sourceRoot":"","sources":["../../../src/zod/account-settings/accountSettings.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,8 @@ import { z } from 'zod';
|
|
|
2
2
|
import { AccountSettingsIdEnum, BaseSettingsResponseSchema } from './base';
|
|
3
3
|
import { supportedLanguageCodes } from '../../constants';
|
|
4
4
|
import { SupportedCurrencySchema } from '../../constants';
|
|
5
|
-
const
|
|
5
|
+
export const UnitsOrCurrencyEnum = z.enum(['units', 'currency']);
|
|
6
|
+
export const InventoryOptimizationValueSchema = z.object({
|
|
6
7
|
lead_time_days: z.number(),
|
|
7
8
|
stockout_cost_ratio: z.number(),
|
|
8
9
|
holding_cost_ratio: z.number(),
|
|
@@ -12,6 +13,15 @@ const InventoryOptimizationValueSchema = z.object({
|
|
|
12
13
|
probability_threshold: z.number(),
|
|
13
14
|
maximum_periods: z.number(),
|
|
14
15
|
discount_rate: z.number(),
|
|
16
|
+
min_return_on_investment: z.number(),
|
|
17
|
+
bundle_size: z.object({
|
|
18
|
+
meta_id: z.string().optional(),
|
|
19
|
+
unit: UnitsOrCurrencyEnum,
|
|
20
|
+
}),
|
|
21
|
+
minimum_order_quantity: z.object({
|
|
22
|
+
meta_id: z.string().optional(),
|
|
23
|
+
unit: UnitsOrCurrencyEnum,
|
|
24
|
+
}),
|
|
15
25
|
});
|
|
16
26
|
export const InventoryOptimizationResponseSchema = BaseSettingsResponseSchema.extend({
|
|
17
27
|
value: InventoryOptimizationValueSchema,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accountSettings.js","sourceRoot":"","sources":["../../../src/zod/account-settings/accountSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,qBAAqB,EAAE,0BAA0B,EAAC,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAC,sBAAsB,EAAC,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAC,uBAAuB,EAAC,MAAM,iBAAiB,CAAC;AAoCxD,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"accountSettings.js","sourceRoot":"","sources":["../../../src/zod/account-settings/accountSettings.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import z from 'zod';
|
|
2
|
+
declare const columnFilterItemSchema: z.ZodObject<{
|
|
3
|
+
id: z.ZodString;
|
|
4
|
+
value: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>;
|
|
5
|
+
operator: z.ZodString;
|
|
6
|
+
filterId: z.ZodString;
|
|
7
|
+
}, z.core.$strip>;
|
|
8
|
+
/**
|
|
9
|
+
* For use with MRT's ColumnFilterItem or Tanstack Table's ColumnFilterItem
|
|
10
|
+
*/
|
|
11
|
+
export type ColumnFilterItem = z.infer<typeof columnFilterItemSchema>;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=columnFilterItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"columnFilterItem.d.ts","sourceRoot":"","sources":["../../../src/zod/filtering/columnFilterItem.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,QAAA,MAAM,sBAAsB;;;;;iBAK1B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"columnFilterItem.js","sourceRoot":"","sources":["../../../src/zod/filtering/columnFilterItem.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACjD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/zod/filtering/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/zod/filtering/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
package/dist/zod/index.d.ts
CHANGED
package/dist/zod/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/zod/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/zod/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC"}
|
package/dist/zod/index.js
CHANGED
package/dist/zod/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/zod/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/zod/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@omni-graph/omni-model",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.107-1-g0211605",
|
|
4
4
|
"description": "Models for the OmniGraph Services & Frontend",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -28,7 +28,9 @@
|
|
|
28
28
|
"vitest": "^3.1.2"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
+
"@tanstack/react-table": "^8.21.3",
|
|
31
32
|
"luxon": "~3.6.1",
|
|
33
|
+
"react-querybuilder": "^8.9.2",
|
|
32
34
|
"zod": "4.0.14"
|
|
33
35
|
},
|
|
34
36
|
"exports": {
|