adminforth 2.26.0-next.3 → 2.26.0-next.31

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 (88) hide show
  1. package/commands/createApp/templates/package.json.hbs +1 -1
  2. package/dist/dataConnectors/baseConnector.d.ts.map +1 -1
  3. package/dist/dataConnectors/baseConnector.js +3 -0
  4. package/dist/dataConnectors/baseConnector.js.map +1 -1
  5. package/dist/dataConnectors/clickhouse.d.ts +4 -0
  6. package/dist/dataConnectors/clickhouse.d.ts.map +1 -1
  7. package/dist/dataConnectors/clickhouse.js +14 -0
  8. package/dist/dataConnectors/clickhouse.js.map +1 -1
  9. package/dist/dataConnectors/mongo.d.ts +4 -0
  10. package/dist/dataConnectors/mongo.d.ts.map +1 -1
  11. package/dist/dataConnectors/mongo.js +9 -0
  12. package/dist/dataConnectors/mongo.js.map +1 -1
  13. package/dist/dataConnectors/mysql.d.ts +4 -0
  14. package/dist/dataConnectors/mysql.d.ts.map +1 -1
  15. package/dist/dataConnectors/mysql.js +11 -0
  16. package/dist/dataConnectors/mysql.js.map +1 -1
  17. package/dist/dataConnectors/postgres.d.ts +4 -0
  18. package/dist/dataConnectors/postgres.d.ts.map +1 -1
  19. package/dist/dataConnectors/postgres.js +11 -0
  20. package/dist/dataConnectors/postgres.js.map +1 -1
  21. package/dist/dataConnectors/qdrant.d.ts +57 -0
  22. package/dist/dataConnectors/qdrant.d.ts.map +1 -0
  23. package/dist/dataConnectors/qdrant.js +469 -0
  24. package/dist/dataConnectors/qdrant.js.map +1 -0
  25. package/dist/dataConnectors/sqlite.d.ts +4 -0
  26. package/dist/dataConnectors/sqlite.d.ts.map +1 -1
  27. package/dist/dataConnectors/sqlite.js +11 -0
  28. package/dist/dataConnectors/sqlite.js.map +1 -1
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +22 -33
  31. package/dist/index.js.map +1 -1
  32. package/dist/modules/codeInjector.d.ts.map +1 -1
  33. package/dist/modules/codeInjector.js +59 -50
  34. package/dist/modules/codeInjector.js.map +1 -1
  35. package/dist/modules/configValidator.d.ts.map +1 -1
  36. package/dist/modules/configValidator.js +3 -2
  37. package/dist/modules/configValidator.js.map +1 -1
  38. package/dist/modules/restApi.d.ts +1 -0
  39. package/dist/modules/restApi.d.ts.map +1 -1
  40. package/dist/modules/restApi.js +33 -16
  41. package/dist/modules/restApi.js.map +1 -1
  42. package/dist/modules/utils.d.ts +6 -0
  43. package/dist/modules/utils.d.ts.map +1 -1
  44. package/dist/modules/utils.js +13 -0
  45. package/dist/modules/utils.js.map +1 -1
  46. package/dist/servers/express.d.ts.map +1 -1
  47. package/dist/servers/express.js +7 -1
  48. package/dist/servers/express.js.map +1 -1
  49. package/dist/spa/package-lock.json +57 -0
  50. package/dist/spa/package.json +2 -0
  51. package/dist/spa/pnpm-lock.yaml +32 -0
  52. package/dist/spa/src/adminforth.ts +17 -29
  53. package/dist/spa/src/afcl/Input.vue +1 -1
  54. package/dist/spa/src/afcl/Modal.vue +18 -3
  55. package/dist/spa/src/afcl/Select.vue +4 -2
  56. package/dist/spa/src/afcl/Table.vue +27 -13
  57. package/dist/spa/src/components/AcceptModal.vue +33 -53
  58. package/dist/spa/src/components/BreadcrumbsWithButtons.vue +4 -5
  59. package/dist/spa/src/components/ColumnValueInputWrapper.vue +11 -3
  60. package/dist/spa/src/components/ListActionsThreeDots.vue +10 -9
  61. package/dist/spa/src/components/ResourceListTable.vue +291 -144
  62. package/dist/spa/src/components/Sidebar.vue +6 -2
  63. package/dist/spa/src/components/ThreeDotsMenu.vue +10 -9
  64. package/dist/spa/src/i18n.ts +1 -1
  65. package/dist/spa/src/renderers/CountryFlag.vue +2 -2
  66. package/dist/spa/src/stores/core.ts +4 -2
  67. package/dist/spa/src/types/Back.ts +24 -5
  68. package/dist/spa/src/types/Common.ts +45 -5
  69. package/dist/spa/src/types/FrontendAPI.ts +6 -1
  70. package/dist/spa/src/utils/listUtils.ts +8 -2
  71. package/dist/spa/src/utils/utils.ts +29 -10
  72. package/dist/spa/src/views/CreateView.vue +8 -8
  73. package/dist/spa/src/views/EditView.vue +8 -7
  74. package/dist/spa/src/views/ListView.vue +14 -48
  75. package/dist/spa/src/views/LoginView.vue +13 -13
  76. package/dist/spa/src/views/PageNotFound.vue +5 -1
  77. package/dist/spa/src/views/ShowView.vue +6 -6
  78. package/dist/types/Back.d.ts +23 -6
  79. package/dist/types/Back.d.ts.map +1 -1
  80. package/dist/types/Back.js.map +1 -1
  81. package/dist/types/Common.d.ts +25 -5
  82. package/dist/types/Common.d.ts.map +1 -1
  83. package/dist/types/Common.js.map +1 -1
  84. package/dist/types/FrontendAPI.d.ts +13 -1
  85. package/dist/types/FrontendAPI.d.ts.map +1 -1
  86. package/dist/types/FrontendAPI.js.map +1 -1
  87. package/package.json +2 -1
  88. package/dist/spa/src/components/ResourceListTableVirtual.vue +0 -794
@@ -1 +1 @@
1
- {"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../dataConnectors/postgres.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../dataConnectors/postgres.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import type { AdminForthResource, AdminForthResourceColumn, IAdminForthAndOrFilter, IAdminForthDataSourceConnector, IAdminForthSort } from '../types/Back.js';
2
+ import AdminForthBaseConnector from './baseConnector.js';
3
+ declare class QdrantConnector extends AdminForthBaseConnector implements IAdminForthDataSourceConnector {
4
+ private static readonly MIN_SCROLL_PAGE_SIZE;
5
+ setupClient(url: string): Promise<void>;
6
+ private getCollectionName;
7
+ private normalizePointId;
8
+ private getSingleIdFilterValue;
9
+ private isLocalOnlyFilter;
10
+ getAllTables(): Promise<Array<string>>;
11
+ discoverFields(resource: any): Promise<any>;
12
+ getFieldValue(field: AdminForthResourceColumn, value: any): any;
13
+ setFieldValue(_field: AdminForthResourceColumn, value: any): any;
14
+ private detectColumnType;
15
+ private getPointFieldValue;
16
+ private normalizeComparable;
17
+ private compareValues;
18
+ private matchesFilter;
19
+ private toQdrantMatchValue;
20
+ private toQdrantFilter;
21
+ private mapPointToRecord;
22
+ private sortRecords;
23
+ private canUseServerSideSort;
24
+ private isBadRequestError;
25
+ private getScrollArgs;
26
+ private scrollPage;
27
+ private filterPoints;
28
+ private collectMatchingPoints;
29
+ private getDirectIdRecords;
30
+ getDataWithOriginalTypes({ resource, limit, offset, sort, filters }: {
31
+ resource: AdminForthResource;
32
+ limit: number;
33
+ offset: number;
34
+ sort: IAdminForthSort[];
35
+ filters: IAdminForthAndOrFilter;
36
+ }): Promise<any[]>;
37
+ getCount({ resource, filters }: {
38
+ resource: AdminForthResource;
39
+ filters: IAdminForthAndOrFilter;
40
+ }): Promise<number>;
41
+ getMinMaxForColumnsWithOriginalTypes({ resource, columns }: {
42
+ resource: AdminForthResource;
43
+ columns: AdminForthResourceColumn[];
44
+ }): Promise<{
45
+ [key: string]: {
46
+ min: any;
47
+ max: any;
48
+ };
49
+ }>;
50
+ createRecordOriginalValues(): Promise<string>;
51
+ updateRecordOriginalValues(): Promise<void>;
52
+ deleteRecord(): Promise<boolean>;
53
+ deleteMany(): Promise<number>;
54
+ close(): Promise<void>;
55
+ }
56
+ export default QdrantConnector;
57
+ //# sourceMappingURL=qdrant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qdrant.d.ts","sourceRoot":"","sources":["../../dataConnectors/qdrant.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEX,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,8BAA8B,EAE9B,eAAe,EACf,MAAM,kBAAkB,CAAC;AAM1B,OAAO,uBAAuB,MAAM,oBAAoB,CAAC;AAUzD,cAAM,eAAgB,SAAQ,uBAAwB,YAAW,8BAA8B;IAC9F,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAM;IAE5C,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7C,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,sBAAsB;IAmB9B,OAAO,CAAC,iBAAiB;IAWnB,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAMtC,cAAc,CAAC,QAAQ,KAAA;IAkB7B,aAAa,CAAC,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,GAAG;IAiBzD,aAAa,CAAC,MAAM,EAAE,wBAAwB,EAAE,KAAK,EAAE,GAAG;IAK1D,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,aAAa;IAgCrB,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,cAAc;IA4DtB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,WAAW;IA6BnB,OAAO,CAAC,oBAAoB;IAyB5B,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,aAAa;YAYP,UAAU;IAoCxB,OAAO,CAAC,YAAY;YAMN,qBAAqB;YAyBrB,kBAAkB;IAW1B,wBAAwB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QAC1E,QAAQ,EAAE,kBAAkB,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,eAAe,EAAE,CAAC;QACxB,OAAO,EAAE,sBAAsB,CAAC;KAChC,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAsBZ,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;QAAE,QAAQ,EAAE,kBAAkB,CAAC;QAAC,OAAO,EAAE,sBAAsB,CAAC;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA2BpH,oCAAoC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;QAAE,QAAQ,EAAE,kBAAkB,CAAC;QAAC,OAAO,EAAE,wBAAwB,EAAE,CAAC;KAAE,GAAG,OAAO,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG;YAAE,GAAG,EAAE,GAAG,CAAC;YAAC,GAAG,EAAE,GAAG,CAAC;SAAE,CAAC;KAAE,CAAC;IAyBzL,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7C,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3C,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAIhC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7B,KAAK;CAGX;AAED,eAAe,eAAe,CAAC"}
@@ -0,0 +1,469 @@
1
+ import { QdrantClient } from '@qdrant/js-client-rest';
2
+ import dayjs from 'dayjs';
3
+ import { AdminForthDataTypes, AdminForthFilterOperators, AdminForthSortDirections, } from '../types/Common.js';
4
+ import AdminForthBaseConnector from './baseConnector.js';
5
+ class QdrantConnector extends AdminForthBaseConnector {
6
+ async setupClient(url) {
7
+ const parsed = new URL(url);
8
+ const apiKey = parsed.searchParams.get('apiKey');
9
+ this.client = new QdrantClient(Object.assign({ url: `http://${parsed.host}` }, (apiKey ? { apiKey } : {})));
10
+ }
11
+ getCollectionName(resource) {
12
+ return resource.table;
13
+ }
14
+ // Qdrant point ids can be strings or numbers
15
+ normalizePointId(value) {
16
+ if (typeof value === 'number') {
17
+ return value;
18
+ }
19
+ if (typeof value === 'string') {
20
+ const trimmed = value.trim();
21
+ if (!trimmed) {
22
+ throw new Error('Qdrant point id cannot be empty');
23
+ }
24
+ if (/^-?\d+$/.test(trimmed) && Number.isSafeInteger(Number(trimmed))) {
25
+ return Number(trimmed);
26
+ }
27
+ return trimmed;
28
+ }
29
+ throw new Error(`Unsupported Qdrant point id type: ${typeof value}`);
30
+ }
31
+ // Checks if the filter is a simple equality filter on the 'id'
32
+ getSingleIdFilterValue(filter) {
33
+ if (filter.operator !== AdminForthFilterOperators.AND || filter.subFilters.length !== 1) {
34
+ return undefined;
35
+ }
36
+ const single = filter.subFilters[0];
37
+ if (single.field !== 'id'
38
+ || single.operator !== AdminForthFilterOperators.EQ
39
+ || single.rightField !== undefined
40
+ || single.value === undefined) {
41
+ return undefined;
42
+ }
43
+ return this.normalizePointId(single.value);
44
+ }
45
+ // check if we can use this filter in quadrant
46
+ isLocalOnlyFilter(filter) {
47
+ const single = filter;
48
+ if (single.field || single.insecureRawNoSQL !== undefined || single.insecureRawSQL !== undefined) {
49
+ return this.toQdrantFilter(filter) === undefined;
50
+ }
51
+ const complex = filter;
52
+ return complex.subFilters.some((subFilter) => this.isLocalOnlyFilter(subFilter));
53
+ }
54
+ // get all collections
55
+ async getAllTables() {
56
+ var _a;
57
+ const collections = await this.client.getCollections();
58
+ return ((_a = collections.collections) !== null && _a !== void 0 ? _a : []).map((collection) => collection.name);
59
+ }
60
+ // discover fields
61
+ async discoverFields(resource) {
62
+ return resource.columns.filter((col) => !col.virtual).reduce((acc, col) => {
63
+ if (!col.type) {
64
+ throw new Error(`Type is not defined for column ${col.name} in resource ${resource.table}`);
65
+ }
66
+ acc[col.name] = {
67
+ name: col.name,
68
+ type: col.type,
69
+ primaryKey: col.primaryKey,
70
+ virtual: col.virtual,
71
+ _underlineType: col._underlineType,
72
+ };
73
+ return acc;
74
+ }, {});
75
+ }
76
+ // get field value
77
+ getFieldValue(field, value) {
78
+ if (value === undefined) {
79
+ return null;
80
+ }
81
+ if (field.type === AdminForthDataTypes.DATETIME) {
82
+ return value ? dayjs(value).toISOString() : null;
83
+ }
84
+ if (field.type === AdminForthDataTypes.DATE) {
85
+ return value ? dayjs(value).format('YYYY-MM-DD') : null;
86
+ }
87
+ if (field.type === AdminForthDataTypes.BOOLEAN) {
88
+ return value === null ? null : !!value;
89
+ }
90
+ return value;
91
+ }
92
+ //just passthrough
93
+ setFieldValue(_field, value) {
94
+ return value;
95
+ }
96
+ // detect column type for the discover fields
97
+ detectColumnType(value) {
98
+ if (value === null || value === undefined) {
99
+ return AdminForthDataTypes.STRING;
100
+ }
101
+ if (typeof value === 'boolean') {
102
+ return AdminForthDataTypes.BOOLEAN;
103
+ }
104
+ if (typeof value === 'number') {
105
+ return Number.isInteger(value) ? AdminForthDataTypes.INTEGER : AdminForthDataTypes.FLOAT;
106
+ }
107
+ if (typeof value === 'string') {
108
+ if (dayjs(value).isValid() && value.includes('T')) {
109
+ return AdminForthDataTypes.DATETIME;
110
+ }
111
+ return AdminForthDataTypes.STRING;
112
+ }
113
+ return AdminForthDataTypes.JSON;
114
+ }
115
+ // get field value from point based on field name
116
+ getPointFieldValue(point, fieldName) {
117
+ var _a, _b, _c, _d, _e;
118
+ if (fieldName === 'id') {
119
+ return (_a = point.id) !== null && _a !== void 0 ? _a : null;
120
+ }
121
+ if (fieldName === 'payload') {
122
+ return (_b = point.payload) !== null && _b !== void 0 ? _b : null;
123
+ }
124
+ if (fieldName === 'vector') {
125
+ return (_c = point.vector) !== null && _c !== void 0 ? _c : null;
126
+ }
127
+ return (_e = (_d = point.payload) === null || _d === void 0 ? void 0 : _d[fieldName]) !== null && _e !== void 0 ? _e : null;
128
+ }
129
+ // for comparison purposes
130
+ normalizeComparable(value) {
131
+ if (Array.isArray(value)) {
132
+ return value.map((item) => this.normalizeComparable(item));
133
+ }
134
+ if (value && typeof value === 'object') {
135
+ return JSON.stringify(value);
136
+ }
137
+ return value;
138
+ }
139
+ // compare actual and expected values based on the operator
140
+ compareValues(operator, actual, expected) {
141
+ switch (operator) {
142
+ case AdminForthFilterOperators.EQ:
143
+ return this.normalizeComparable(actual) === this.normalizeComparable(expected);
144
+ case AdminForthFilterOperators.NE:
145
+ return this.normalizeComparable(actual) !== this.normalizeComparable(expected);
146
+ case AdminForthFilterOperators.GT:
147
+ return actual > expected;
148
+ case AdminForthFilterOperators.GTE:
149
+ return actual >= expected;
150
+ case AdminForthFilterOperators.LT:
151
+ return actual < expected;
152
+ case AdminForthFilterOperators.LTE:
153
+ return actual <= expected;
154
+ case AdminForthFilterOperators.LIKE:
155
+ return String(actual !== null && actual !== void 0 ? actual : '').includes(String(expected !== null && expected !== void 0 ? expected : ''));
156
+ case AdminForthFilterOperators.ILIKE:
157
+ return String(actual !== null && actual !== void 0 ? actual : '').toLowerCase().includes(String(expected !== null && expected !== void 0 ? expected : '').toLowerCase());
158
+ case AdminForthFilterOperators.IN:
159
+ return Array.isArray(expected) && expected.some((item) => this.normalizeComparable(item) === this.normalizeComparable(actual));
160
+ case AdminForthFilterOperators.NIN:
161
+ return Array.isArray(expected) && !expected.some((item) => this.normalizeComparable(item) === this.normalizeComparable(actual));
162
+ case AdminForthFilterOperators.IS_EMPTY:
163
+ return actual === null || actual === undefined || actual === '' || (Array.isArray(actual) && actual.length === 0);
164
+ case AdminForthFilterOperators.IS_NOT_EMPTY:
165
+ return !(actual === null || actual === undefined || actual === '' || (Array.isArray(actual) && actual.length === 0));
166
+ default:
167
+ return true;
168
+ }
169
+ }
170
+ // check if we can use this filter in quadrant
171
+ matchesFilter(point, filter) {
172
+ const single = filter;
173
+ if (single.field) {
174
+ const actual = this.getPointFieldValue(point, single.field);
175
+ const expected = single.rightField ? this.getPointFieldValue(point, single.rightField) : single.value;
176
+ return this.compareValues(single.operator, actual, expected);
177
+ }
178
+ if (single.insecureRawNoSQL !== undefined || single.insecureRawSQL !== undefined) {
179
+ return true;
180
+ }
181
+ const complex = filter;
182
+ if (complex.operator === AdminForthFilterOperators.AND) {
183
+ return complex.subFilters.every((subFilter) => this.matchesFilter(point, subFilter));
184
+ }
185
+ return complex.subFilters.some((subFilter) => this.matchesFilter(point, subFilter));
186
+ }
187
+ // transform input value to valid qdrant match value
188
+ toQdrantMatchValue(value) {
189
+ if (Array.isArray(value)) {
190
+ const arr = value.filter((v) => ['string', 'number', 'boolean'].includes(typeof v));
191
+ return arr.length ? arr : undefined;
192
+ }
193
+ if (['string', 'number', 'boolean'].includes(typeof value)) {
194
+ return value;
195
+ }
196
+ return undefined;
197
+ }
198
+ // convert our filter format to qdrant filter format
199
+ toQdrantFilter(filter) {
200
+ const single = filter;
201
+ if (single.insecureRawNoSQL !== undefined) {
202
+ return single.insecureRawNoSQL;
203
+ }
204
+ if (single.insecureRawSQL !== undefined) {
205
+ return undefined;
206
+ }
207
+ if (single.field) {
208
+ if (single.rightField || single.field === 'id' || single.field === 'vector' || single.field === 'payload') {
209
+ return undefined;
210
+ }
211
+ const matchValue = this.toQdrantMatchValue(single.value);
212
+ switch (single.operator) {
213
+ case AdminForthFilterOperators.EQ:
214
+ if (matchValue !== undefined && !Array.isArray(matchValue)) {
215
+ return { must: [{ key: single.field, match: { value: matchValue } }] };
216
+ }
217
+ return undefined;
218
+ case AdminForthFilterOperators.NE:
219
+ if (matchValue !== undefined && !Array.isArray(matchValue)) {
220
+ return { must_not: [{ key: single.field, match: { value: matchValue } }] };
221
+ }
222
+ return undefined;
223
+ case AdminForthFilterOperators.IN:
224
+ if (Array.isArray(matchValue)) {
225
+ return { must: [{ key: single.field, match: { any: matchValue } }] };
226
+ }
227
+ return undefined;
228
+ case AdminForthFilterOperators.NIN:
229
+ if (Array.isArray(matchValue)) {
230
+ return { must_not: [{ key: single.field, match: { any: matchValue } }] };
231
+ }
232
+ return undefined;
233
+ case AdminForthFilterOperators.GT:
234
+ return { must: [{ key: single.field, range: { gt: single.value } }] };
235
+ case AdminForthFilterOperators.GTE:
236
+ return { must: [{ key: single.field, range: { gte: single.value } }] };
237
+ case AdminForthFilterOperators.LT:
238
+ return { must: [{ key: single.field, range: { lt: single.value } }] };
239
+ case AdminForthFilterOperators.LTE:
240
+ return { must: [{ key: single.field, range: { lte: single.value } }] };
241
+ default:
242
+ return undefined;
243
+ }
244
+ }
245
+ const complex = filter;
246
+ const subFilters = complex.subFilters.map((subFilter) => this.toQdrantFilter(subFilter)).filter(Boolean);
247
+ if (!subFilters.length) {
248
+ return undefined;
249
+ }
250
+ if (complex.operator === AdminForthFilterOperators.AND) {
251
+ return { must: subFilters };
252
+ }
253
+ return { should: subFilters, min_should: 1 };
254
+ }
255
+ // transform qdrant point to our record format
256
+ mapPointToRecord(resource, point) {
257
+ const result = {};
258
+ for (const column of resource.dataSourceColumns) {
259
+ result[column.name] = this.getPointFieldValue(point, column.name);
260
+ }
261
+ return result;
262
+ }
263
+ // locally sort records
264
+ sortRecords(records, sort) {
265
+ if (!sort.length) {
266
+ return records;
267
+ }
268
+ return [...records].sort((a, b) => {
269
+ for (const sortItem of sort) {
270
+ const left = a[sortItem.field];
271
+ const right = b[sortItem.field];
272
+ if (left === right) {
273
+ continue;
274
+ }
275
+ if (left === null || left === undefined) {
276
+ return sortItem.direction === AdminForthSortDirections.asc ? -1 : 1;
277
+ }
278
+ if (right === null || right === undefined) {
279
+ return sortItem.direction === AdminForthSortDirections.asc ? 1 : -1;
280
+ }
281
+ if (left < right) {
282
+ return sortItem.direction === AdminForthSortDirections.asc ? -1 : 1;
283
+ }
284
+ if (left > right) {
285
+ return sortItem.direction === AdminForthSortDirections.asc ? 1 : -1;
286
+ }
287
+ }
288
+ return 0;
289
+ });
290
+ }
291
+ // check if we can sort in qdrant
292
+ canUseServerSideSort(resource, sort) {
293
+ if (sort.length !== 1) {
294
+ return false;
295
+ }
296
+ const fieldName = sort[0].field;
297
+ if (['id', 'payload', 'vector'].includes(fieldName)) {
298
+ return false;
299
+ }
300
+ const column = resource.dataSourceColumns.find((item) => item.name === fieldName);
301
+ if (!column) {
302
+ return false;
303
+ }
304
+ return [
305
+ AdminForthDataTypes.STRING,
306
+ AdminForthDataTypes.INTEGER,
307
+ AdminForthDataTypes.FLOAT,
308
+ AdminForthDataTypes.BOOLEAN,
309
+ AdminForthDataTypes.DATE,
310
+ AdminForthDataTypes.DATETIME,
311
+ ].includes(column.type);
312
+ }
313
+ isBadRequestError(error) {
314
+ if (!(error instanceof Error)) {
315
+ return false;
316
+ }
317
+ return /bad request/i.test(error.message);
318
+ }
319
+ // get scroll arguments for qdrant
320
+ getScrollArgs(filters, limit, offset) {
321
+ const qdrantFilter = this.toQdrantFilter(filters);
322
+ return Object.assign(Object.assign(Object.assign({ limit }, (offset !== undefined ? { offset } : {})), (qdrantFilter ? { filter: qdrantFilter } : {})), { with_payload: true, with_vector: true });
323
+ }
324
+ // scroll request to qdrant
325
+ async scrollPage(resource, filters, limit, sort, offset) {
326
+ const collectionName = this.getCollectionName(resource);
327
+ const canUseServerSort = this.canUseServerSideSort(resource, sort);
328
+ const baseArgs = this.getScrollArgs(filters, limit, offset);
329
+ if (!canUseServerSort) {
330
+ return {
331
+ response: await this.client.scroll(collectionName, baseArgs),
332
+ usedServerSort: false,
333
+ };
334
+ }
335
+ try {
336
+ return {
337
+ response: await this.client.scroll(collectionName, Object.assign(Object.assign({}, baseArgs), { order_by: {
338
+ key: sort[0].field,
339
+ direction: sort[0].direction === AdminForthSortDirections.asc ? 'asc' : 'desc',
340
+ } })),
341
+ usedServerSort: true,
342
+ };
343
+ }
344
+ catch (error) {
345
+ if (!this.isBadRequestError(error)) {
346
+ throw error;
347
+ }
348
+ return {
349
+ response: await this.client.scroll(collectionName, baseArgs),
350
+ usedServerSort: false,
351
+ };
352
+ }
353
+ }
354
+ // filter points based on our filter format
355
+ filterPoints(points, filters) {
356
+ const qdrantFilter = this.toQdrantFilter(filters);
357
+ return qdrantFilter ? points : points.filter((point) => this.matchesFilter(point, filters));
358
+ }
359
+ //scroll pages and filter them until we have enough matches or no more data
360
+ async collectMatchingPoints(resource, filters, sort, requiredMatches) {
361
+ var _a, _b, _c;
362
+ let offset;
363
+ let usedServerSort = false;
364
+ const points = [];
365
+ const pageSize = Math.max(requiredMatches, QdrantConnector.MIN_SCROLL_PAGE_SIZE);
366
+ while (points.length < requiredMatches) {
367
+ const page = await this.scrollPage(resource, filters, pageSize, sort, offset);
368
+ usedServerSort = page.usedServerSort;
369
+ const pagePoints = ((_b = (_a = page.response) === null || _a === void 0 ? void 0 : _a.points) !== null && _b !== void 0 ? _b : []);
370
+ points.push(...this.filterPoints(pagePoints, filters));
371
+ const nextOffset = (_c = page.response) === null || _c === void 0 ? void 0 : _c.next_page_offset;
372
+ if (!nextOffset || pagePoints.length === 0) {
373
+ break;
374
+ }
375
+ offset = nextOffset;
376
+ }
377
+ return { points, usedServerSort };
378
+ }
379
+ // get records by direct ID
380
+ async getDirectIdRecords(resource, pointId, sort) {
381
+ const points = await this.client.retrieve(this.getCollectionName(resource), {
382
+ ids: [pointId],
383
+ with_payload: true,
384
+ with_vector: true,
385
+ });
386
+ const records = (points !== null && points !== void 0 ? points : []).map((point) => this.mapPointToRecord(resource, point));
387
+ return sort.length ? this.sortRecords(records, sort) : records;
388
+ }
389
+ async getDataWithOriginalTypes({ resource, limit, offset, sort, filters }) {
390
+ var _a, _b;
391
+ const directId = this.getSingleIdFilterValue(filters);
392
+ if (directId !== undefined) {
393
+ const records = await this.getDirectIdRecords(resource, directId, sort);
394
+ return records.slice(offset, offset + limit);
395
+ }
396
+ const requestedLimit = Math.max(limit + offset, 1);
397
+ const localFilteringRequired = this.isLocalOnlyFilter(filters);
398
+ const result = localFilteringRequired
399
+ ? await this.collectMatchingPoints(resource, filters, sort, requestedLimit)
400
+ : await this.scrollPage(resource, filters, requestedLimit, sort);
401
+ const points = 'points' in result ? result.points : this.filterPoints(((_b = (_a = result.response) === null || _a === void 0 ? void 0 : _a.points) !== null && _b !== void 0 ? _b : []), filters);
402
+ let records = points.map((point) => this.mapPointToRecord(resource, point));
403
+ if (!result.usedServerSort) {
404
+ records = this.sortRecords(records, sort);
405
+ }
406
+ return records.slice(offset, offset + limit);
407
+ }
408
+ async getCount({ resource, filters }) {
409
+ var _a;
410
+ const collectionName = this.getCollectionName(resource);
411
+ const directId = this.getSingleIdFilterValue(filters);
412
+ if (directId !== undefined) {
413
+ const points = await this.client.retrieve(collectionName, {
414
+ ids: [directId],
415
+ with_payload: false,
416
+ with_vector: false,
417
+ });
418
+ return (points !== null && points !== void 0 ? points : []).length;
419
+ }
420
+ const qdrantFilter = this.toQdrantFilter(filters);
421
+ if (qdrantFilter || filters.subFilters.length === 0) {
422
+ const result = await this.client.count(collectionName, Object.assign(Object.assign({}, (qdrantFilter ? { filter: qdrantFilter } : {})), { exact: true }));
423
+ return (_a = result.count) !== null && _a !== void 0 ? _a : 0;
424
+ }
425
+ const allMatches = await this.collectMatchingPoints(resource, filters, [], Number.MAX_SAFE_INTEGER);
426
+ return allMatches.points.length;
427
+ }
428
+ async getMinMaxForColumnsWithOriginalTypes({ resource, columns }) {
429
+ var _a;
430
+ const response = await this.client.scroll(this.getCollectionName(resource), {
431
+ limit: 10000,
432
+ with_payload: true,
433
+ with_vector: true,
434
+ });
435
+ const records = ((_a = response.points) !== null && _a !== void 0 ? _a : []).map((point) => this.mapPointToRecord(resource, point));
436
+ const result = {};
437
+ for (const column of columns) {
438
+ const values = records.map((record) => record[column.name]).filter((value) => value !== null && value !== undefined);
439
+ if (!values.length) {
440
+ result[column.name] = { min: null, max: null };
441
+ continue;
442
+ }
443
+ const sorted = [...values].sort((a, b) => (a < b ? -1 : a > b ? 1 : 0));
444
+ result[column.name] = {
445
+ min: sorted[0],
446
+ max: sorted[sorted.length - 1],
447
+ };
448
+ }
449
+ return result;
450
+ }
451
+ async createRecordOriginalValues() {
452
+ throw new Error('Qdrant connector is read-only for AdminForth operations');
453
+ }
454
+ async updateRecordOriginalValues() {
455
+ throw new Error('Qdrant connector is read-only for AdminForth operations');
456
+ }
457
+ async deleteRecord() {
458
+ throw new Error('Qdrant connector is read-only for AdminForth operations');
459
+ }
460
+ async deleteMany() {
461
+ throw new Error('Qdrant connector is read-only for AdminForth operations');
462
+ }
463
+ async close() {
464
+ return;
465
+ }
466
+ }
467
+ QdrantConnector.MIN_SCROLL_PAGE_SIZE = 50;
468
+ export default QdrantConnector;
469
+ //# sourceMappingURL=qdrant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qdrant.js","sourceRoot":"","sources":["../../dataConnectors/qdrant.ts"],"names":[],"mappings":"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"}