@goatlab/typesense 0.0.2

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 (149) hide show
  1. package/LICENSE +21 -0
  2. package/dist/TypesenseApi.d.ts +229 -0
  3. package/dist/TypesenseApi.js +423 -0
  4. package/dist/TypesenseApi.js.map +1 -0
  5. package/dist/actions/admin/getCollectionStats.d.ts +3 -0
  6. package/dist/actions/admin/getCollectionStats.js +8 -0
  7. package/dist/actions/admin/getCollectionStats.js.map +1 -0
  8. package/dist/actions/admin/health.d.ts +4 -0
  9. package/dist/actions/admin/health.js +22 -0
  10. package/dist/actions/admin/health.js.map +1 -0
  11. package/dist/actions/admin/metrics.d.ts +4 -0
  12. package/dist/actions/admin/metrics.js +11 -0
  13. package/dist/actions/admin/metrics.js.map +1 -0
  14. package/dist/actions/aliases/createOrUpdateAlias.d.ts +3 -0
  15. package/dist/actions/aliases/createOrUpdateAlias.js +10 -0
  16. package/dist/actions/aliases/createOrUpdateAlias.js.map +1 -0
  17. package/dist/actions/aliases/deleteAlias.d.ts +3 -0
  18. package/dist/actions/aliases/deleteAlias.js +7 -0
  19. package/dist/actions/aliases/deleteAlias.js.map +1 -0
  20. package/dist/actions/aliases/getAlias.d.ts +3 -0
  21. package/dist/actions/aliases/getAlias.js +7 -0
  22. package/dist/actions/aliases/getAlias.js.map +1 -0
  23. package/dist/actions/aliases/listAliases.d.ts +3 -0
  24. package/dist/actions/aliases/listAliases.js +7 -0
  25. package/dist/actions/aliases/listAliases.js.map +1 -0
  26. package/dist/actions/collections/createCollection.d.ts +3 -0
  27. package/dist/actions/collections/createCollection.js +18 -0
  28. package/dist/actions/collections/createCollection.js.map +1 -0
  29. package/dist/actions/collections/deleteCollection.d.ts +3 -0
  30. package/dist/actions/collections/deleteCollection.js +13 -0
  31. package/dist/actions/collections/deleteCollection.js.map +1 -0
  32. package/dist/actions/collections/getCollection.d.ts +3 -0
  33. package/dist/actions/collections/getCollection.js +11 -0
  34. package/dist/actions/collections/getCollection.js.map +1 -0
  35. package/dist/actions/collections/getOrCreateCollection.d.ts +3 -0
  36. package/dist/actions/collections/getOrCreateCollection.js +19 -0
  37. package/dist/actions/collections/getOrCreateCollection.js.map +1 -0
  38. package/dist/actions/collections/listCollections.d.ts +3 -0
  39. package/dist/actions/collections/listCollections.js +7 -0
  40. package/dist/actions/collections/listCollections.js.map +1 -0
  41. package/dist/actions/collections/updateCollection.d.ts +3 -0
  42. package/dist/actions/collections/updateCollection.js +14 -0
  43. package/dist/actions/collections/updateCollection.js.map +1 -0
  44. package/dist/actions/documents/clearCollection.d.ts +5 -0
  45. package/dist/actions/documents/clearCollection.js +11 -0
  46. package/dist/actions/documents/clearCollection.js.map +1 -0
  47. package/dist/actions/documents/deleteByFilter.d.ts +5 -0
  48. package/dist/actions/documents/deleteByFilter.js +15 -0
  49. package/dist/actions/documents/deleteByFilter.js.map +1 -0
  50. package/dist/actions/documents/deleteDocument.d.ts +3 -0
  51. package/dist/actions/documents/deleteDocument.js +14 -0
  52. package/dist/actions/documents/deleteDocument.js.map +1 -0
  53. package/dist/actions/documents/exportDocuments.d.ts +5 -0
  54. package/dist/actions/documents/exportDocuments.js +51 -0
  55. package/dist/actions/documents/exportDocuments.js.map +1 -0
  56. package/dist/actions/documents/getDocumentById.d.ts +3 -0
  57. package/dist/actions/documents/getDocumentById.js +12 -0
  58. package/dist/actions/documents/getDocumentById.js.map +1 -0
  59. package/dist/actions/documents/importDocuments.d.ts +4 -0
  60. package/dist/actions/documents/importDocuments.js +58 -0
  61. package/dist/actions/documents/importDocuments.js.map +1 -0
  62. package/dist/actions/documents/insertDocument.d.ts +3 -0
  63. package/dist/actions/documents/insertDocument.js +38 -0
  64. package/dist/actions/documents/insertDocument.js.map +1 -0
  65. package/dist/actions/documents/updateDocument.d.ts +5 -0
  66. package/dist/actions/documents/updateDocument.js +15 -0
  67. package/dist/actions/documents/updateDocument.js.map +1 -0
  68. package/dist/actions/documents/upsertDocument.d.ts +3 -0
  69. package/dist/actions/documents/upsertDocument.js +16 -0
  70. package/dist/actions/documents/upsertDocument.js.map +1 -0
  71. package/dist/actions/overrides/deleteOverride.d.ts +3 -0
  72. package/dist/actions/overrides/deleteOverride.js +8 -0
  73. package/dist/actions/overrides/deleteOverride.js.map +1 -0
  74. package/dist/actions/overrides/getOverride.d.ts +3 -0
  75. package/dist/actions/overrides/getOverride.js +8 -0
  76. package/dist/actions/overrides/getOverride.js.map +1 -0
  77. package/dist/actions/overrides/listOverrides.d.ts +5 -0
  78. package/dist/actions/overrides/listOverrides.js +8 -0
  79. package/dist/actions/overrides/listOverrides.js.map +1 -0
  80. package/dist/actions/overrides/upsertOverride.d.ts +3 -0
  81. package/dist/actions/overrides/upsertOverride.js +11 -0
  82. package/dist/actions/overrides/upsertOverride.js.map +1 -0
  83. package/dist/actions/presets/deletePreset.d.ts +3 -0
  84. package/dist/actions/presets/deletePreset.js +7 -0
  85. package/dist/actions/presets/deletePreset.js.map +1 -0
  86. package/dist/actions/presets/getPreset.d.ts +3 -0
  87. package/dist/actions/presets/getPreset.js +7 -0
  88. package/dist/actions/presets/getPreset.js.map +1 -0
  89. package/dist/actions/presets/listPresets.d.ts +5 -0
  90. package/dist/actions/presets/listPresets.js +7 -0
  91. package/dist/actions/presets/listPresets.js.map +1 -0
  92. package/dist/actions/presets/upsertPreset.d.ts +3 -0
  93. package/dist/actions/presets/upsertPreset.js +10 -0
  94. package/dist/actions/presets/upsertPreset.js.map +1 -0
  95. package/dist/actions/search/multiSearch.d.ts +3 -0
  96. package/dist/actions/search/multiSearch.js +10 -0
  97. package/dist/actions/search/multiSearch.js.map +1 -0
  98. package/dist/actions/search/search.d.ts +5 -0
  99. package/dist/actions/search/search.js +19 -0
  100. package/dist/actions/search/search.js.map +1 -0
  101. package/dist/actions/synonyms/deleteSynonym.d.ts +3 -0
  102. package/dist/actions/synonyms/deleteSynonym.js +8 -0
  103. package/dist/actions/synonyms/deleteSynonym.js.map +1 -0
  104. package/dist/actions/synonyms/getSynonym.d.ts +3 -0
  105. package/dist/actions/synonyms/getSynonym.js +8 -0
  106. package/dist/actions/synonyms/getSynonym.js.map +1 -0
  107. package/dist/actions/synonyms/listSynonyms.d.ts +5 -0
  108. package/dist/actions/synonyms/listSynonyms.js +8 -0
  109. package/dist/actions/synonyms/listSynonyms.js.map +1 -0
  110. package/dist/actions/synonyms/upsertSynonym.d.ts +3 -0
  111. package/dist/actions/synonyms/upsertSynonym.js +11 -0
  112. package/dist/actions/synonyms/upsertSynonym.js.map +1 -0
  113. package/dist/components/export-formatter.d.ts +16 -0
  114. package/dist/components/export-formatter.js +226 -0
  115. package/dist/components/export-formatter.js.map +1 -0
  116. package/dist/components/http-client.d.ts +50 -0
  117. package/dist/components/http-client.js +149 -0
  118. package/dist/components/http-client.js.map +1 -0
  119. package/dist/components/resilience-policy.d.ts +33 -0
  120. package/dist/components/resilience-policy.js +115 -0
  121. package/dist/components/resilience-policy.js.map +1 -0
  122. package/dist/components/schema-manager.d.ts +30 -0
  123. package/dist/components/schema-manager.js +227 -0
  124. package/dist/components/schema-manager.js.map +1 -0
  125. package/dist/components/typesense.filter-builder.d.ts +127 -0
  126. package/dist/components/typesense.filter-builder.js +216 -0
  127. package/dist/components/typesense.filter-builder.js.map +1 -0
  128. package/dist/examples/multitenancy-example.d.ts +4 -0
  129. package/dist/examples/multitenancy-example.js +182 -0
  130. package/dist/examples/multitenancy-example.js.map +1 -0
  131. package/dist/index.d.ts +10 -0
  132. package/dist/index.js +23 -0
  133. package/dist/index.js.map +1 -0
  134. package/dist/tests/const.d.ts +6 -0
  135. package/dist/tests/const.js +22 -0
  136. package/dist/tests/const.js.map +1 -0
  137. package/dist/tests/typesense.d.ts +2 -0
  138. package/dist/tests/typesense.js +24 -0
  139. package/dist/tests/typesense.js.map +1 -0
  140. package/dist/types.d.ts +16 -0
  141. package/dist/types.js +3 -0
  142. package/dist/types.js.map +1 -0
  143. package/dist/typesense.model.d.ts +455 -0
  144. package/dist/typesense.model.js +98 -0
  145. package/dist/typesense.model.js.map +1 -0
  146. package/dist/utils/tenant.d.ts +48 -0
  147. package/dist/utils/tenant.js +89 -0
  148. package/dist/utils/tenant.js.map +1 -0
  149. package/package.json +60 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insertDocument.js","sourceRoot":"","sources":["../../../src/actions/documents/insertDocument.ts"],"names":[],"mappings":";;AAKA,wCA8CC;AAlDD,2DAAyE;AAEzE,gFAA4E;AAErE,KAAK,UAAU,cAAc,CAClC,GAAqB,EACrB,QAA2B,EAC3B,OAAoC;IAEpC,IAAI,CAAC,IAAA,mCAAiB,EAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,gCAAc,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAA;IAChE,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,YAAY,EAC1C;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,QAAQ;SACf,CACF,CAAA;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,oCAAoC;QACpC,IACE,GAAG,CAAC,oBAAoB;YACxB,KAAK,CAAC,MAAM,KAAK,GAAG;YACpB,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EACpC,CAAC;YACD,6BAA6B;YAC7B,MAAM,cAAc,GAAG,GAAG,CAAC,aAAa,CAAC,uBAAuB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAA;YAE1F,oBAAoB;YACpB,MAAM,IAAA,6CAAqB,EAAC,GAAG,EAAE;gBAC/B,GAAG,cAAc;gBACjB,IAAI,EAAE,cAAc;aACrB,CAAC,CAAA;YAEF,eAAe;YACf,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,YAAY,EAC1C;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,QAAQ;aACf,CACF,CAAA;QACH,CAAC;QACD,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { TypesenseDocument, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function updateDocument<T extends Record<string, any>>(ctx: TypesenseContext, document: Partial<TypesenseDocument<T>> & {
4
+ id: string | number;
5
+ }, options?: TypesenseCollectionOptions): Promise<TypesenseDocument<T>>;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateDocument = updateDocument;
4
+ const typesense_model_1 = require("../../typesense.model");
5
+ async function updateDocument(ctx, document, options) {
6
+ if (!(0, typesense_model_1.isValidDocumentId)(document.id)) {
7
+ throw new typesense_model_1.TypesenseError('updateDocument requires a valid document id', 400);
8
+ }
9
+ const collectionName = options?.collection || ctx.fqcn();
10
+ return await ctx.httpClient.request(`/collections/${collectionName}/documents/${document.id}`, {
11
+ method: 'PATCH',
12
+ body: document
13
+ });
14
+ }
15
+ //# sourceMappingURL=updateDocument.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateDocument.js","sourceRoot":"","sources":["../../../src/actions/documents/updateDocument.ts"],"names":[],"mappings":";;AAIA,wCAkBC;AArBD,2DAAyE;AAGlE,KAAK,UAAU,cAAc,CAClC,GAAqB,EACrB,QAAiE,EACjE,OAAoC;IAEpC,IAAI,CAAC,IAAA,mCAAiB,EAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,gCAAc,CAAC,6CAA6C,EAAE,GAAG,CAAC,CAAA;IAC9E,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,cAAc,QAAQ,CAAC,EAAE,EAAE,EACzD;QACE,MAAM,EAAE,OAAO;QACf,IAAI,EAAE,QAAQ;KACf,CACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesenseDocument, TypesenseCollectionOptions, WithRequiredId } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function upsertDocument<T extends Record<string, any>>(ctx: TypesenseContext, document: WithRequiredId<T>, options?: TypesenseCollectionOptions): Promise<TypesenseDocument<T>>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.upsertDocument = upsertDocument;
4
+ const typesense_model_1 = require("../../typesense.model");
5
+ async function upsertDocument(ctx, document, options) {
6
+ if (!(0, typesense_model_1.isValidDocumentId)(document.id)) {
7
+ throw new typesense_model_1.TypesenseError('Document must have a valid id', 400);
8
+ }
9
+ const collectionName = options?.collection || ctx.fqcn();
10
+ return await ctx.httpClient.request(`/collections/${collectionName}/documents`, {
11
+ method: 'POST',
12
+ body: document,
13
+ searchParams: { action: 'upsert' }
14
+ });
15
+ }
16
+ //# sourceMappingURL=upsertDocument.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsertDocument.js","sourceRoot":"","sources":["../../../src/actions/documents/upsertDocument.ts"],"names":[],"mappings":";;AAIA,wCAmBC;AAtBD,2DAAyE;AAGlE,KAAK,UAAU,cAAc,CAClC,GAAqB,EACrB,QAA2B,EAC3B,OAAoC;IAEpC,IAAI,CAAC,IAAA,mCAAiB,EAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,gCAAc,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAA;IAChE,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,YAAY,EAC1C;QACE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;KACnC,CACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesenseOverrideResponse, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function deleteOverride(ctx: TypesenseContext, overrideId: string, options?: TypesenseCollectionOptions): Promise<TypesenseOverrideResponse>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteOverride = deleteOverride;
4
+ async function deleteOverride(ctx, overrideId, options) {
5
+ const collectionName = options?.collection || ctx.fqcn();
6
+ return await ctx.httpClient.request(`/collections/${collectionName}/overrides/${overrideId}`, { method: 'DELETE' });
7
+ }
8
+ //# sourceMappingURL=deleteOverride.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deleteOverride.js","sourceRoot":"","sources":["../../../src/actions/overrides/deleteOverride.ts"],"names":[],"mappings":";;AAGA,wCAWC;AAXM,KAAK,UAAU,cAAc,CAClC,GAAqB,EACrB,UAAkB,EAClB,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,cAAc,UAAU,EAAE,EACxD,EAAE,MAAM,EAAE,QAAQ,EAAE,CACrB,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesenseOverrideResponse, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function getOverride(ctx: TypesenseContext, overrideId: string, options?: TypesenseCollectionOptions): Promise<TypesenseOverrideResponse>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOverride = getOverride;
4
+ async function getOverride(ctx, overrideId, options) {
5
+ const collectionName = options?.collection || ctx.fqcn();
6
+ return await ctx.httpClient.request(`/collections/${collectionName}/overrides/${overrideId}`);
7
+ }
8
+ //# sourceMappingURL=getOverride.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOverride.js","sourceRoot":"","sources":["../../../src/actions/overrides/getOverride.ts"],"names":[],"mappings":";;AAGA,kCAUC;AAVM,KAAK,UAAU,WAAW,CAC/B,GAAqB,EACrB,UAAkB,EAClB,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,cAAc,UAAU,EAAE,CACzD,CAAA;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { TypesenseOverrideResponse, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function listOverrides(ctx: TypesenseContext, options?: TypesenseCollectionOptions): Promise<{
4
+ overrides: TypesenseOverrideResponse[];
5
+ }>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listOverrides = listOverrides;
4
+ async function listOverrides(ctx, options) {
5
+ const collectionName = options?.collection || ctx.fqcn();
6
+ return await ctx.httpClient.request(`/collections/${collectionName}/overrides`);
7
+ }
8
+ //# sourceMappingURL=listOverrides.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listOverrides.js","sourceRoot":"","sources":["../../../src/actions/overrides/listOverrides.ts"],"names":[],"mappings":";;AAGA,sCASC;AATM,KAAK,UAAU,aAAa,CACjC,GAAqB,EACrB,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,YAAY,CAC3C,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesenseOverride, TypesenseOverrideResponse, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function upsertOverride(ctx: TypesenseContext, override: TypesenseOverride, options?: TypesenseCollectionOptions): Promise<TypesenseOverrideResponse>;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.upsertOverride = upsertOverride;
4
+ async function upsertOverride(ctx, override, options) {
5
+ const collectionName = options?.collection || ctx.fqcn();
6
+ return await ctx.httpClient.request(`/collections/${collectionName}/overrides/${override.id}`, {
7
+ method: 'PUT',
8
+ body: override
9
+ });
10
+ }
11
+ //# sourceMappingURL=upsertOverride.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsertOverride.js","sourceRoot":"","sources":["../../../src/actions/overrides/upsertOverride.ts"],"names":[],"mappings":";;AAGA,wCAcC;AAdM,KAAK,UAAU,cAAc,CAClC,GAAqB,EACrB,QAA2B,EAC3B,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,cAAc,QAAQ,CAAC,EAAE,EAAE,EACzD;QACE,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,QAAQ;KACf,CACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesensePresetResponse } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function deletePreset(ctx: TypesenseContext, presetName: string): Promise<TypesensePresetResponse>;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deletePreset = deletePreset;
4
+ async function deletePreset(ctx, presetName) {
5
+ return await ctx.httpClient.request(`/presets/${presetName}`, { method: 'DELETE' });
6
+ }
7
+ //# sourceMappingURL=deletePreset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deletePreset.js","sourceRoot":"","sources":["../../../src/actions/presets/deletePreset.ts"],"names":[],"mappings":";;AAGA,oCAQC;AARM,KAAK,UAAU,YAAY,CAChC,GAAqB,EACrB,UAAkB;IAElB,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,YAAY,UAAU,EAAE,EACxB,EAAE,MAAM,EAAE,QAAQ,EAAE,CACrB,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesensePresetResponse } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function getPreset(ctx: TypesenseContext, presetName: string): Promise<TypesensePresetResponse>;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPreset = getPreset;
4
+ async function getPreset(ctx, presetName) {
5
+ return await ctx.httpClient.request(`/presets/${presetName}`);
6
+ }
7
+ //# sourceMappingURL=getPreset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPreset.js","sourceRoot":"","sources":["../../../src/actions/presets/getPreset.ts"],"names":[],"mappings":";;AAGA,8BAOC;AAPM,KAAK,UAAU,SAAS,CAC7B,GAAqB,EACrB,UAAkB;IAElB,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,YAAY,UAAU,EAAE,CACzB,CAAA;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { TypesensePresetResponse } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function listPresets(ctx: TypesenseContext): Promise<{
4
+ presets: TypesensePresetResponse[];
5
+ }>;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listPresets = listPresets;
4
+ async function listPresets(ctx) {
5
+ return await ctx.httpClient.request('/presets');
6
+ }
7
+ //# sourceMappingURL=listPresets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listPresets.js","sourceRoot":"","sources":["../../../src/actions/presets/listPresets.ts"],"names":[],"mappings":";;AAGA,kCAMC;AANM,KAAK,UAAU,WAAW,CAC/B,GAAqB;IAErB,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,UAAU,CACX,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesensePreset, TypesensePresetResponse } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function upsertPreset(ctx: TypesenseContext, preset: TypesensePreset): Promise<TypesensePresetResponse>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.upsertPreset = upsertPreset;
4
+ async function upsertPreset(ctx, preset) {
5
+ return await ctx.httpClient.request(`/presets/${preset.name}`, {
6
+ method: 'PUT',
7
+ body: preset
8
+ });
9
+ }
10
+ //# sourceMappingURL=upsertPreset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsertPreset.js","sourceRoot":"","sources":["../../../src/actions/presets/upsertPreset.ts"],"names":[],"mappings":";;AAGA,oCAWC;AAXM,KAAK,UAAU,YAAY,CAChC,GAAqB,EACrB,MAAuB;IAEvB,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,YAAY,MAAM,CAAC,IAAI,EAAE,EACzB;QACE,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,MAAM;KACb,CACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesenseMultiSearchRequest, TypesenseMultiSearchResult } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function multiSearch<T extends Record<string, any> = Record<string, any>>(ctx: TypesenseContext, request: TypesenseMultiSearchRequest): Promise<TypesenseMultiSearchResult<T>>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.multiSearch = multiSearch;
4
+ async function multiSearch(ctx, request) {
5
+ return await ctx.httpClient.request('/multi_search', {
6
+ method: 'POST',
7
+ body: request
8
+ });
9
+ }
10
+ //# sourceMappingURL=multiSearch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiSearch.js","sourceRoot":"","sources":["../../../src/actions/search/multiSearch.ts"],"names":[],"mappings":";;AAMA,kCAWC;AAXM,KAAK,UAAU,WAAW,CAC/B,GAAqB,EACrB,OAAoC;IAEpC,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,eAAe,EACf;QACE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,OAAO;KACd,CACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { TypesenseQuery, TypesenseQueryResults, TypesenseCollectionOptions, TypesenseTextQuery, TypesenseVectorQuery } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function search<T extends Record<string, any>>(ctx: TypesenseContext, query: TypesenseQuery, options?: TypesenseCollectionOptions): Promise<TypesenseQueryResults<T>>;
4
+ export declare function searchVector<T extends Record<string, any>>(ctx: TypesenseContext, query: TypesenseVectorQuery, options?: TypesenseCollectionOptions): Promise<TypesenseQueryResults<T>>;
5
+ export declare function searchText<T extends Record<string, any>>(ctx: TypesenseContext, query: TypesenseTextQuery, options?: TypesenseCollectionOptions): Promise<TypesenseQueryResults<T>>;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.search = search;
4
+ exports.searchVector = searchVector;
5
+ exports.searchText = searchText;
6
+ async function search(ctx, query, options) {
7
+ const collectionName = options?.collection || ctx.fqcn();
8
+ return await ctx.httpClient.request(`/collections/${collectionName}/documents/search`, {
9
+ searchParams: query,
10
+ timeout: ctx.httpClient.getOptions().searchTimeout
11
+ });
12
+ }
13
+ async function searchVector(ctx, query, options) {
14
+ return search(ctx, query, options);
15
+ }
16
+ async function searchText(ctx, query, options) {
17
+ return search(ctx, query, options);
18
+ }
19
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/actions/search/search.ts"],"names":[],"mappings":";;AASA,wBAcC;AAED,oCAMC;AAED,gCAMC;AA9BM,KAAK,UAAU,MAAM,CAC1B,GAAqB,EACrB,KAAqB,EACrB,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,mBAAmB,EACjD;QACE,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,aAAa;KACnD,CACF,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,GAAqB,EACrB,KAA2B,EAC3B,OAAoC;IAEpC,OAAO,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;AACpC,CAAC;AAEM,KAAK,UAAU,UAAU,CAC9B,GAAqB,EACrB,KAAyB,EACzB,OAAoC;IAEpC,OAAO,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;AACpC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesenseSynonymResponse, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function deleteSynonym(ctx: TypesenseContext, synonymId: string, options?: TypesenseCollectionOptions): Promise<TypesenseSynonymResponse>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteSynonym = deleteSynonym;
4
+ async function deleteSynonym(ctx, synonymId, options) {
5
+ const collectionName = options?.collection || ctx.fqcn();
6
+ return await ctx.httpClient.request(`/collections/${collectionName}/synonyms/${synonymId}`, { method: 'DELETE' });
7
+ }
8
+ //# sourceMappingURL=deleteSynonym.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deleteSynonym.js","sourceRoot":"","sources":["../../../src/actions/synonyms/deleteSynonym.ts"],"names":[],"mappings":";;AAGA,sCAWC;AAXM,KAAK,UAAU,aAAa,CACjC,GAAqB,EACrB,SAAiB,EACjB,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,aAAa,SAAS,EAAE,EACtD,EAAE,MAAM,EAAE,QAAQ,EAAE,CACrB,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesenseSynonymResponse, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function getSynonym(ctx: TypesenseContext, synonymId: string, options?: TypesenseCollectionOptions): Promise<TypesenseSynonymResponse>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSynonym = getSynonym;
4
+ async function getSynonym(ctx, synonymId, options) {
5
+ const collectionName = options?.collection || ctx.fqcn();
6
+ return await ctx.httpClient.request(`/collections/${collectionName}/synonyms/${synonymId}`);
7
+ }
8
+ //# sourceMappingURL=getSynonym.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSynonym.js","sourceRoot":"","sources":["../../../src/actions/synonyms/getSynonym.ts"],"names":[],"mappings":";;AAGA,gCAUC;AAVM,KAAK,UAAU,UAAU,CAC9B,GAAqB,EACrB,SAAiB,EACjB,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,aAAa,SAAS,EAAE,CACvD,CAAA;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { TypesenseSynonymResponse, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function listSynonyms(ctx: TypesenseContext, options?: TypesenseCollectionOptions): Promise<{
4
+ synonyms: TypesenseSynonymResponse[];
5
+ }>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listSynonyms = listSynonyms;
4
+ async function listSynonyms(ctx, options) {
5
+ const collectionName = options?.collection || ctx.fqcn();
6
+ return await ctx.httpClient.request(`/collections/${collectionName}/synonyms`);
7
+ }
8
+ //# sourceMappingURL=listSynonyms.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listSynonyms.js","sourceRoot":"","sources":["../../../src/actions/synonyms/listSynonyms.ts"],"names":[],"mappings":";;AAGA,oCASC;AATM,KAAK,UAAU,YAAY,CAChC,GAAqB,EACrB,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,WAAW,CAC1C,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TypesenseSynonym, TypesenseSynonymResponse, TypesenseCollectionOptions } from '../../typesense.model';
2
+ import type { TypesenseContext } from '../../types';
3
+ export declare function upsertSynonym(ctx: TypesenseContext, synonym: TypesenseSynonym, options?: TypesenseCollectionOptions): Promise<TypesenseSynonymResponse>;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.upsertSynonym = upsertSynonym;
4
+ async function upsertSynonym(ctx, synonym, options) {
5
+ const collectionName = options?.collection || ctx.fqcn();
6
+ return await ctx.httpClient.request(`/collections/${collectionName}/synonyms/${synonym.id}`, {
7
+ method: 'PUT',
8
+ body: synonym
9
+ });
10
+ }
11
+ //# sourceMappingURL=upsertSynonym.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsertSynonym.js","sourceRoot":"","sources":["../../../src/actions/synonyms/upsertSynonym.ts"],"names":[],"mappings":";;AAGA,sCAcC;AAdM,KAAK,UAAU,aAAa,CACjC,GAAqB,EACrB,OAAyB,EACzB,OAAoC;IAEpC,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;IAExD,OAAO,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CACjC,gBAAgB,cAAc,aAAa,OAAO,CAAC,EAAE,EAAE,EACvD;QACE,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,OAAO;KACd,CACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { Transform, Readable } from 'stream';
2
+ import { TypesenseDocument, TypesenseExportFormat } from '../typesense.model';
3
+ export declare class ExportFormatter {
4
+ static formatDocuments<T>(documents: TypesenseDocument<T>[], format: TypesenseExportFormat): string | TypesenseDocument<T>[];
5
+ static formatCSV<T>(documents: TypesenseDocument<T>[]): string;
6
+ static createStreamingCSVTransform<T>(): Transform;
7
+ static createStreamingJSONLTransform<T>(): Transform;
8
+ static createGzipStream(): Transform;
9
+ static createDocumentParser(format: TypesenseExportFormat): Transform;
10
+ private static createJSONLParser;
11
+ private static createJSONParser;
12
+ private static escapeCsvValue;
13
+ static streamToString(stream: Readable): Promise<string>;
14
+ static streamToAsyncIterator<T>(stream: Readable): AsyncGenerator<T>;
15
+ static createDocumentStream<T>(documents: TypesenseDocument<T>[]): Readable;
16
+ }
@@ -0,0 +1,226 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExportFormatter = void 0;
4
+ // ExportFormatter - Handles CSV/gzip helpers with streaming support
5
+ const stream_1 = require("stream");
6
+ const zlib_1 = require("zlib");
7
+ class ExportFormatter {
8
+ static formatDocuments(documents, format) {
9
+ switch (format) {
10
+ case 'json':
11
+ return documents;
12
+ case 'jsonl':
13
+ return documents.map(doc => JSON.stringify(doc)).join('\n');
14
+ case 'csv':
15
+ return this.formatCSV(documents);
16
+ default:
17
+ throw new Error(`Unsupported export format: ${format}`);
18
+ }
19
+ }
20
+ static formatCSV(documents) {
21
+ if (documents.length === 0) {
22
+ return '';
23
+ }
24
+ // Get all unique keys from all documents
25
+ const allKeys = new Set();
26
+ documents.forEach(doc => {
27
+ Object.keys(doc).forEach(key => allKeys.add(key));
28
+ });
29
+ const headers = Array.from(allKeys).sort();
30
+ const csvLines = [headers.join(',')];
31
+ for (const doc of documents) {
32
+ const row = headers.map(header => {
33
+ const value = doc[header];
34
+ return this.escapeCsvValue(value);
35
+ });
36
+ csvLines.push(row.join(','));
37
+ }
38
+ return csvLines.join('\n');
39
+ }
40
+ static createStreamingCSVTransform() {
41
+ let isFirstRow = true;
42
+ let headers = [];
43
+ return new stream_1.Transform({
44
+ objectMode: true,
45
+ transform(chunk, encoding, callback) {
46
+ try {
47
+ if (isFirstRow) {
48
+ // Extract headers from first document
49
+ headers = Object.keys(chunk).sort();
50
+ this.push(headers.join(',') + '\n');
51
+ isFirstRow = false;
52
+ }
53
+ // Convert document to CSV row
54
+ const row = headers.map(header => {
55
+ const value = chunk[header];
56
+ return ExportFormatter.escapeCsvValue(value);
57
+ });
58
+ this.push(row.join(',') + '\n');
59
+ callback();
60
+ }
61
+ catch (error) {
62
+ callback(error);
63
+ }
64
+ }
65
+ });
66
+ }
67
+ static createStreamingJSONLTransform() {
68
+ return new stream_1.Transform({
69
+ objectMode: true,
70
+ transform(chunk, encoding, callback) {
71
+ try {
72
+ this.push(JSON.stringify(chunk) + '\n');
73
+ callback();
74
+ }
75
+ catch (error) {
76
+ callback(error);
77
+ }
78
+ }
79
+ });
80
+ }
81
+ static createGzipStream() {
82
+ return (0, zlib_1.createGzip)();
83
+ }
84
+ static createDocumentParser(format) {
85
+ switch (format) {
86
+ case 'jsonl':
87
+ return this.createJSONLParser();
88
+ case 'json':
89
+ return this.createJSONParser();
90
+ default:
91
+ throw new Error(`Parsing not supported for format: ${format}`);
92
+ }
93
+ }
94
+ static createJSONLParser() {
95
+ let buffer = '';
96
+ return new stream_1.Transform({
97
+ objectMode: true,
98
+ transform(chunk, encoding, callback) {
99
+ buffer += chunk.toString();
100
+ const lines = buffer.split('\n');
101
+ // Keep the last incomplete line in buffer
102
+ buffer = lines.pop() || '';
103
+ for (const line of lines) {
104
+ if (line.trim()) {
105
+ try {
106
+ const document = JSON.parse(line);
107
+ this.push(document);
108
+ }
109
+ catch (error) {
110
+ return callback(new Error(`Invalid JSON in line: ${line}`));
111
+ }
112
+ }
113
+ }
114
+ callback();
115
+ },
116
+ flush(callback) {
117
+ if (buffer.trim()) {
118
+ try {
119
+ const document = JSON.parse(buffer);
120
+ this.push(document);
121
+ }
122
+ catch (error) {
123
+ return callback(new Error(`Invalid JSON in final line: ${buffer}`));
124
+ }
125
+ }
126
+ callback();
127
+ }
128
+ });
129
+ }
130
+ static createJSONParser() {
131
+ let buffer = '';
132
+ return new stream_1.Transform({
133
+ objectMode: true,
134
+ transform(chunk, encoding, callback) {
135
+ buffer += chunk.toString();
136
+ callback();
137
+ },
138
+ flush(callback) {
139
+ try {
140
+ const documents = JSON.parse(buffer);
141
+ if (Array.isArray(documents)) {
142
+ documents.forEach(doc => this.push(doc));
143
+ }
144
+ else {
145
+ this.push(documents);
146
+ }
147
+ }
148
+ catch (error) {
149
+ return callback(new Error(`Invalid JSON: ${error.message}`));
150
+ }
151
+ callback();
152
+ }
153
+ });
154
+ }
155
+ static escapeCsvValue(value) {
156
+ if (value === null || value === undefined) {
157
+ return '';
158
+ }
159
+ let stringValue = String(value);
160
+ // Handle arrays by joining with semicolons
161
+ if (Array.isArray(value)) {
162
+ stringValue = value.map(item => String(item)).join(';');
163
+ }
164
+ // Handle objects by stringifying
165
+ if (typeof value === 'object' && !Array.isArray(value)) {
166
+ stringValue = JSON.stringify(value);
167
+ }
168
+ // Escape quotes and wrap in quotes if needed
169
+ const needsQuoting = stringValue.includes(',') ||
170
+ stringValue.includes('"') ||
171
+ stringValue.includes('\n') ||
172
+ stringValue.includes('\r');
173
+ if (needsQuoting) {
174
+ // Escape existing quotes by doubling them
175
+ stringValue = stringValue.replace(/"/g, '""');
176
+ return `"${stringValue}"`;
177
+ }
178
+ return stringValue;
179
+ }
180
+ static async streamToString(stream) {
181
+ const chunks = [];
182
+ return new Promise((resolve, reject) => {
183
+ stream.on('data', chunk => chunks.push(chunk));
184
+ stream.on('error', reject);
185
+ stream.on('end', () => {
186
+ resolve(Buffer.concat(chunks).toString());
187
+ });
188
+ });
189
+ }
190
+ static async *streamToAsyncIterator(stream) {
191
+ const reader = stream[Symbol.asyncIterator]?.() || stream;
192
+ if (typeof reader[Symbol.asyncIterator] === 'function') {
193
+ for await (const chunk of reader) {
194
+ yield chunk;
195
+ }
196
+ }
197
+ else {
198
+ // Fallback for streams without async iterator support
199
+ const chunks = [];
200
+ await new Promise((resolve, reject) => {
201
+ stream.on('data', (chunk) => chunks.push(chunk));
202
+ stream.on('error', reject);
203
+ stream.on('end', resolve);
204
+ });
205
+ for (const chunk of chunks) {
206
+ yield chunk;
207
+ }
208
+ }
209
+ }
210
+ static createDocumentStream(documents) {
211
+ let index = 0;
212
+ return new stream_1.Readable({
213
+ objectMode: true,
214
+ read() {
215
+ if (index < documents.length) {
216
+ this.push(documents[index++]);
217
+ }
218
+ else {
219
+ this.push(null); // End stream
220
+ }
221
+ }
222
+ });
223
+ }
224
+ }
225
+ exports.ExportFormatter = ExportFormatter;
226
+ //# sourceMappingURL=export-formatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export-formatter.js","sourceRoot":"","sources":["../../src/components/export-formatter.ts"],"names":[],"mappings":"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"}