elasticlink 0.2.2-beta → 0.4.0-beta

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 (118) hide show
  1. package/README.md +223 -177
  2. package/dist/__tests__/aggregation-builder.test.d.ts +2 -0
  3. package/dist/__tests__/aggregation-builder.test.d.ts.map +1 -0
  4. package/dist/__tests__/aggregation-builder.test.js +622 -0
  5. package/dist/__tests__/bulk.test.d.ts +2 -0
  6. package/dist/__tests__/bulk.test.d.ts.map +1 -0
  7. package/dist/__tests__/bulk.test.js +679 -0
  8. package/dist/__tests__/examples.test.d.ts +2 -0
  9. package/dist/__tests__/examples.test.d.ts.map +1 -0
  10. package/dist/__tests__/examples.test.js +2123 -0
  11. package/dist/__tests__/fixtures/finance.d.ts +58 -0
  12. package/dist/__tests__/fixtures/finance.d.ts.map +1 -0
  13. package/dist/__tests__/fixtures/finance.js +73 -0
  14. package/dist/__tests__/fixtures/legal.d.ts +14 -0
  15. package/dist/__tests__/fixtures/legal.d.ts.map +1 -0
  16. package/dist/__tests__/fixtures/legal.js +27 -0
  17. package/dist/__tests__/fixtures/real-estate.d.ts +31 -0
  18. package/dist/__tests__/fixtures/real-estate.d.ts.map +1 -0
  19. package/dist/__tests__/fixtures/real-estate.js +39 -0
  20. package/dist/__tests__/index-management.test.d.ts +2 -0
  21. package/dist/__tests__/index-management.test.d.ts.map +1 -0
  22. package/dist/__tests__/index-management.test.js +1699 -0
  23. package/dist/__tests__/integration/aggregation.integration.test.d.ts +2 -0
  24. package/dist/__tests__/integration/aggregation.integration.test.d.ts.map +1 -0
  25. package/dist/__tests__/integration/aggregation.integration.test.js +188 -0
  26. package/dist/__tests__/integration/bulk.integration.test.d.ts +2 -0
  27. package/dist/__tests__/integration/bulk.integration.test.d.ts.map +1 -0
  28. package/dist/__tests__/integration/bulk.integration.test.js +90 -0
  29. package/dist/__tests__/integration/fixtures/finance.d.ts +37 -0
  30. package/dist/__tests__/integration/fixtures/finance.d.ts.map +1 -0
  31. package/dist/__tests__/integration/fixtures/finance.js +58 -0
  32. package/dist/__tests__/integration/fixtures/legal.d.ts +38 -0
  33. package/dist/__tests__/integration/fixtures/legal.d.ts.map +1 -0
  34. package/dist/__tests__/integration/fixtures/legal.js +65 -0
  35. package/dist/__tests__/integration/fixtures/real-estate.d.ts +17 -0
  36. package/dist/__tests__/integration/fixtures/real-estate.d.ts.map +1 -0
  37. package/dist/__tests__/integration/fixtures/real-estate.js +28 -0
  38. package/dist/__tests__/integration/helpers.d.ts +15 -0
  39. package/dist/__tests__/integration/helpers.d.ts.map +1 -0
  40. package/dist/__tests__/integration/helpers.js +21 -0
  41. package/dist/__tests__/integration/index-management.integration.test.d.ts +2 -0
  42. package/dist/__tests__/integration/index-management.integration.test.d.ts.map +1 -0
  43. package/dist/__tests__/integration/index-management.integration.test.js +67 -0
  44. package/dist/__tests__/integration/multi-search.integration.test.d.ts +2 -0
  45. package/dist/__tests__/integration/multi-search.integration.test.d.ts.map +1 -0
  46. package/dist/__tests__/integration/multi-search.integration.test.js +49 -0
  47. package/dist/__tests__/integration/query.integration.test.d.ts +2 -0
  48. package/dist/__tests__/integration/query.integration.test.d.ts.map +1 -0
  49. package/dist/__tests__/integration/query.integration.test.js +101 -0
  50. package/dist/__tests__/integration/suggester.integration.test.d.ts +2 -0
  51. package/dist/__tests__/integration/suggester.integration.test.d.ts.map +1 -0
  52. package/dist/__tests__/integration/suggester.integration.test.js +42 -0
  53. package/dist/__tests__/multi-search.test.d.ts +2 -0
  54. package/dist/__tests__/multi-search.test.d.ts.map +1 -0
  55. package/dist/__tests__/multi-search.test.js +325 -0
  56. package/dist/__tests__/query-builder-extensions.test.d.ts +2 -0
  57. package/dist/__tests__/query-builder-extensions.test.d.ts.map +1 -0
  58. package/dist/__tests__/query-builder-extensions.test.js +436 -0
  59. package/dist/__tests__/query-builder.test.d.ts +2 -0
  60. package/dist/__tests__/query-builder.test.d.ts.map +1 -0
  61. package/dist/__tests__/query-builder.test.js +5482 -0
  62. package/dist/__tests__/settings-presets.test.d.ts +2 -0
  63. package/dist/__tests__/settings-presets.test.d.ts.map +1 -0
  64. package/dist/__tests__/settings-presets.test.js +183 -0
  65. package/dist/__tests__/suggester.test.d.ts +2 -0
  66. package/dist/__tests__/suggester.test.d.ts.map +1 -0
  67. package/dist/__tests__/suggester.test.js +1006 -0
  68. package/dist/aggregation.builder.d.ts +4 -2
  69. package/dist/aggregation.builder.d.ts.map +1 -1
  70. package/dist/aggregation.builder.js +102 -95
  71. package/dist/aggregation.types.d.ts +16 -14
  72. package/dist/aggregation.types.d.ts.map +1 -1
  73. package/dist/bulk.builder.d.ts +126 -2
  74. package/dist/bulk.builder.d.ts.map +1 -1
  75. package/dist/bulk.builder.js +11 -12
  76. package/dist/bulk.types.d.ts.map +1 -1
  77. package/dist/field.helpers.d.ts +92 -42
  78. package/dist/field.helpers.d.ts.map +1 -1
  79. package/dist/field.helpers.js +99 -20
  80. package/dist/field.types.d.ts +113 -6
  81. package/dist/field.types.d.ts.map +1 -1
  82. package/dist/field.types.js +3 -3
  83. package/dist/index-management.builder.d.ts +19 -14
  84. package/dist/index-management.builder.d.ts.map +1 -1
  85. package/dist/index-management.builder.js +36 -34
  86. package/dist/index-management.types.d.ts +32 -62
  87. package/dist/index-management.types.d.ts.map +1 -1
  88. package/dist/index-management.types.js +0 -1
  89. package/dist/index.d.ts +18 -13
  90. package/dist/index.d.ts.map +1 -1
  91. package/dist/index.js +12 -8
  92. package/dist/mapping.builder.d.ts +37 -0
  93. package/dist/mapping.builder.d.ts.map +1 -0
  94. package/dist/mapping.builder.js +38 -0
  95. package/dist/mapping.types.d.ts +105 -0
  96. package/dist/mapping.types.d.ts.map +1 -0
  97. package/dist/mapping.types.js +6 -0
  98. package/dist/multi-search.builder.d.ts +5 -3
  99. package/dist/multi-search.builder.d.ts.map +1 -1
  100. package/dist/multi-search.builder.js +6 -4
  101. package/dist/multi-search.types.d.ts +7 -6
  102. package/dist/multi-search.types.d.ts.map +1 -1
  103. package/dist/query.builder.d.ts +3 -11
  104. package/dist/query.builder.d.ts.map +1 -1
  105. package/dist/query.builder.js +118 -259
  106. package/dist/query.types.d.ts +140 -236
  107. package/dist/query.types.d.ts.map +1 -1
  108. package/dist/query.types.js +2 -1
  109. package/dist/settings.presets.d.ts +98 -0
  110. package/dist/settings.presets.d.ts.map +1 -0
  111. package/dist/settings.presets.js +115 -0
  112. package/dist/suggester.builder.d.ts +5 -3
  113. package/dist/suggester.builder.d.ts.map +1 -1
  114. package/dist/suggester.builder.js +3 -2
  115. package/dist/suggester.types.d.ts +5 -4
  116. package/dist/suggester.types.d.ts.map +1 -1
  117. package/dist/vector.types.d.ts.map +1 -1
  118. package/package.json +12 -9
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=settings-presets.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings-presets.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/settings-presets.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,183 @@
1
+ import { fastIngestSettings, productionSearchSettings, indexSortSettings, indexBuilder } from '..';
2
+ describe('Settings Presets', () => {
3
+ describe('productionSearchSettings', () => {
4
+ it('should return balanced production defaults', () => {
5
+ const result = productionSearchSettings();
6
+ expect(result).toMatchInlineSnapshot(`
7
+ {
8
+ "number_of_replicas": 1,
9
+ "refresh_interval": "5s",
10
+ }
11
+ `);
12
+ });
13
+ it('should allow overriding defaults', () => {
14
+ const result = productionSearchSettings({
15
+ number_of_replicas: 2,
16
+ refresh_interval: '10s'
17
+ });
18
+ expect(result).toMatchInlineSnapshot(`
19
+ {
20
+ "number_of_replicas": 2,
21
+ "refresh_interval": "10s",
22
+ }
23
+ `);
24
+ });
25
+ it('should allow adding codec compression', () => {
26
+ const result = productionSearchSettings({ codec: 'best_compression' });
27
+ expect(result).toMatchInlineSnapshot(`
28
+ {
29
+ "codec": "best_compression",
30
+ "number_of_replicas": 1,
31
+ "refresh_interval": "5s",
32
+ }
33
+ `);
34
+ });
35
+ });
36
+ describe('indexSortSettings', () => {
37
+ it('should generate sort config from a single field', () => {
38
+ const result = indexSortSettings({ timestamp: 'desc' });
39
+ expect(result).toMatchInlineSnapshot(`
40
+ {
41
+ "sort": {
42
+ "field": [
43
+ "timestamp",
44
+ ],
45
+ "order": [
46
+ "desc",
47
+ ],
48
+ },
49
+ }
50
+ `);
51
+ });
52
+ it('should generate sort config from multiple fields', () => {
53
+ const result = indexSortSettings({
54
+ timestamp: 'desc',
55
+ status: 'asc',
56
+ priority: 'desc'
57
+ });
58
+ expect(result).toMatchInlineSnapshot(`
59
+ {
60
+ "sort": {
61
+ "field": [
62
+ "timestamp",
63
+ "status",
64
+ "priority",
65
+ ],
66
+ "order": [
67
+ "desc",
68
+ "asc",
69
+ "desc",
70
+ ],
71
+ },
72
+ }
73
+ `);
74
+ });
75
+ it('should compose with other settings via spread', () => {
76
+ const result = {
77
+ ...productionSearchSettings(),
78
+ index: indexSortSettings({ timestamp: 'desc' })
79
+ };
80
+ expect(result).toMatchInlineSnapshot(`
81
+ {
82
+ "index": {
83
+ "sort": {
84
+ "field": [
85
+ "timestamp",
86
+ ],
87
+ "order": [
88
+ "desc",
89
+ ],
90
+ },
91
+ },
92
+ "number_of_replicas": 1,
93
+ "refresh_interval": "5s",
94
+ }
95
+ `);
96
+ });
97
+ });
98
+ describe('fastIngestSettings', () => {
99
+ it('should return optimized settings for bulk ingestion', () => {
100
+ const result = fastIngestSettings();
101
+ expect(result).toMatchInlineSnapshot(`
102
+ {
103
+ "number_of_replicas": 0,
104
+ "refresh_interval": "-1",
105
+ "translog": {
106
+ "durability": "async",
107
+ "sync_interval": "30s",
108
+ },
109
+ }
110
+ `);
111
+ });
112
+ it('should allow overriding defaults', () => {
113
+ const result = fastIngestSettings({ number_of_replicas: 1 });
114
+ expect(result).toMatchInlineSnapshot(`
115
+ {
116
+ "number_of_replicas": 1,
117
+ "refresh_interval": "-1",
118
+ "translog": {
119
+ "durability": "async",
120
+ "sync_interval": "30s",
121
+ },
122
+ }
123
+ `);
124
+ });
125
+ it('should allow adding extra settings', () => {
126
+ const result = fastIngestSettings({ number_of_shards: 3 });
127
+ expect(result).toMatchInlineSnapshot(`
128
+ {
129
+ "number_of_replicas": 0,
130
+ "number_of_shards": 3,
131
+ "refresh_interval": "-1",
132
+ "translog": {
133
+ "durability": "async",
134
+ "sync_interval": "30s",
135
+ },
136
+ }
137
+ `);
138
+ });
139
+ it('should deep-merge translog overrides without clobbering defaults', () => {
140
+ const result = fastIngestSettings({ translog: { durability: 'request' } });
141
+ expect(result).toMatchInlineSnapshot(`
142
+ {
143
+ "number_of_replicas": 0,
144
+ "refresh_interval": "-1",
145
+ "translog": {
146
+ "durability": "request",
147
+ "sync_interval": "30s",
148
+ },
149
+ }
150
+ `);
151
+ });
152
+ });
153
+ describe('Preset integration with indexBuilder', () => {
154
+ it('should work with indexBuilder().settings()', () => {
155
+ const result = indexBuilder().settings(productionSearchSettings()).build();
156
+ expect(result).toMatchInlineSnapshot(`
157
+ {
158
+ "settings": {
159
+ "number_of_replicas": 1,
160
+ "refresh_interval": "5s",
161
+ },
162
+ }
163
+ `);
164
+ });
165
+ it('should allow spreading presets with additional settings', () => {
166
+ const result = indexBuilder()
167
+ .settings({
168
+ ...productionSearchSettings(),
169
+ number_of_shards: 3
170
+ })
171
+ .build();
172
+ expect(result).toMatchInlineSnapshot(`
173
+ {
174
+ "settings": {
175
+ "number_of_replicas": 1,
176
+ "number_of_shards": 3,
177
+ "refresh_interval": "5s",
178
+ },
179
+ }
180
+ `);
181
+ });
182
+ });
183
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=suggester.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suggester.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/suggester.test.ts"],"names":[],"mappings":""}