@payloadcms/drizzle 4.0.0-internal.af6aad0 → 4.0.0-internal.b8a92d2

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 (97) hide show
  1. package/dist/find/buildPolymorphicJoinQuery.d.ts +38 -0
  2. package/dist/find/buildPolymorphicJoinQuery.d.ts.map +1 -0
  3. package/dist/find/buildPolymorphicJoinQuery.js +135 -0
  4. package/dist/find/buildPolymorphicJoinQuery.js.map +1 -0
  5. package/dist/find/buildPolymorphicJoinWhere.d.ts +20 -0
  6. package/dist/find/buildPolymorphicJoinWhere.d.ts.map +1 -0
  7. package/dist/find/buildPolymorphicJoinWhere.js +301 -0
  8. package/dist/find/buildPolymorphicJoinWhere.js.map +1 -0
  9. package/dist/find/createPolymorphicJoinWherePlan.d.ts +37 -0
  10. package/dist/find/createPolymorphicJoinWherePlan.d.ts.map +1 -0
  11. package/dist/find/createPolymorphicJoinWherePlan.js +191 -0
  12. package/dist/find/createPolymorphicJoinWherePlan.js.map +1 -0
  13. package/dist/find/traverseFields.d.ts.map +1 -1
  14. package/dist/find/traverseFields.js +19 -191
  15. package/dist/find/traverseFields.js.map +1 -1
  16. package/dist/migrate.d.ts.map +1 -1
  17. package/dist/migrate.js +35 -13
  18. package/dist/migrate.js.map +1 -1
  19. package/dist/migrateDown.d.ts +2 -1
  20. package/dist/migrateDown.d.ts.map +1 -1
  21. package/dist/migrateDown.js +12 -2
  22. package/dist/migrateDown.js.map +1 -1
  23. package/dist/migrateFresh.d.ts +4 -2
  24. package/dist/migrateFresh.d.ts.map +1 -1
  25. package/dist/migrateFresh.js +21 -7
  26. package/dist/migrateFresh.js.map +1 -1
  27. package/dist/migrateRefresh.d.ts +2 -1
  28. package/dist/migrateRefresh.d.ts.map +1 -1
  29. package/dist/migrateRefresh.js +14 -3
  30. package/dist/migrateRefresh.js.map +1 -1
  31. package/dist/migrateReset.d.ts +2 -1
  32. package/dist/migrateReset.d.ts.map +1 -1
  33. package/dist/migrateReset.js +12 -2
  34. package/dist/migrateReset.js.map +1 -1
  35. package/dist/migrateStatus.d.ts +2 -1
  36. package/dist/migrateStatus.d.ts.map +1 -1
  37. package/dist/migrateStatus.js +11 -6
  38. package/dist/migrateStatus.js.map +1 -1
  39. package/dist/postgres/createJSONQuery/index.js +3 -3
  40. package/dist/postgres/createJSONQuery/index.js.map +1 -1
  41. package/dist/postgres/predefinedMigrations/v2-v3/index.js +1 -1
  42. package/dist/postgres/predefinedMigrations/v2-v3/index.js.map +1 -1
  43. package/dist/queries/getTableColumnFromPath.d.ts +12 -3
  44. package/dist/queries/getTableColumnFromPath.d.ts.map +1 -1
  45. package/dist/queries/getTableColumnFromPath.js +59 -27
  46. package/dist/queries/getTableColumnFromPath.js.map +1 -1
  47. package/dist/queries/parseParams.d.ts.map +1 -1
  48. package/dist/queries/parseParams.js +210 -5
  49. package/dist/queries/parseParams.js.map +1 -1
  50. package/dist/queries/resolveRelationshipPath.d.ts +36 -0
  51. package/dist/queries/resolveRelationshipPath.d.ts.map +1 -0
  52. package/dist/queries/resolveRelationshipPath.js +66 -0
  53. package/dist/queries/resolveRelationshipPath.js.map +1 -0
  54. package/dist/sqlite/createJSONQuery/convertPathToJSONTraversal.js +3 -2
  55. package/dist/sqlite/createJSONQuery/convertPathToJSONTraversal.js.map +1 -1
  56. package/dist/sqlite/createJSONQuery/index.d.ts.map +1 -1
  57. package/dist/sqlite/createJSONQuery/index.js +6 -5
  58. package/dist/sqlite/createJSONQuery/index.js.map +1 -1
  59. package/dist/transform/write/traverseFields.d.ts.map +1 -1
  60. package/dist/transform/write/traverseFields.js +8 -14
  61. package/dist/transform/write/traverseFields.js.map +1 -1
  62. package/dist/updateOne.d.ts.map +1 -1
  63. package/dist/updateOne.js +41 -1
  64. package/dist/updateOne.js.map +1 -1
  65. package/dist/upsertRow/index.d.ts +1 -1
  66. package/dist/upsertRow/index.d.ts.map +1 -1
  67. package/dist/upsertRow/index.js +25 -5
  68. package/dist/upsertRow/index.js.map +1 -1
  69. package/dist/utilities/buildCreateMigration.d.ts.map +1 -1
  70. package/dist/utilities/buildCreateMigration.js +12 -8
  71. package/dist/utilities/buildCreateMigration.js.map +1 -1
  72. package/dist/utilities/createSchemaGenerator.d.ts.map +1 -1
  73. package/dist/utilities/createSchemaGenerator.js +3 -0
  74. package/dist/utilities/createSchemaGenerator.js.map +1 -1
  75. package/dist/utilities/parseJSONPathSegment.d.ts +9 -0
  76. package/dist/utilities/parseJSONPathSegment.d.ts.map +1 -0
  77. package/dist/utilities/parseJSONPathSegment.js +17 -0
  78. package/dist/utilities/parseJSONPathSegment.js.map +1 -0
  79. package/package.json +3 -3
  80. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.spec.js +0 -91
  81. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.spec.js.map +0 -1
  82. package/dist/postgres/query/postgresUnaccent.spec.js +0 -71
  83. package/dist/postgres/query/postgresUnaccent.spec.js.map +0 -1
  84. package/dist/queries/buildOperatorConstraint.spec.js +0 -348
  85. package/dist/queries/buildOperatorConstraint.spec.js.map +0 -1
  86. package/dist/queries/validateOperatorHandlers.spec.js +0 -142
  87. package/dist/queries/validateOperatorHandlers.spec.js.map +0 -1
  88. package/dist/schema/buildRawSchema.spec.js +0 -290
  89. package/dist/schema/buildRawSchema.spec.js.map +0 -1
  90. package/dist/upsertRow/handleUpsertError.spec.js +0 -42
  91. package/dist/upsertRow/handleUpsertError.spec.js.map +0 -1
  92. package/dist/utilities/checkTruncatedIdentifiers.spec.js +0 -301
  93. package/dist/utilities/checkTruncatedIdentifiers.spec.js.map +0 -1
  94. package/dist/utilities/isValidStringID.spec.js +0 -15
  95. package/dist/utilities/isValidStringID.spec.js.map +0 -1
  96. package/dist/utilities/validateIdentifierLength.spec.js +0 -19
  97. package/dist/utilities/validateIdentifierLength.spec.js.map +0 -1
@@ -1,301 +0,0 @@
1
- import { describe, expect, it, vi } from 'vitest';
2
- import { checkTruncatedIdentifiers } from './checkTruncatedIdentifiers.js';
3
- import { maxIdentifierLength } from './validateIdentifierLength.js';
4
- const buildAdapter = (rawTables, warn = ()=>{})=>({
5
- payload: {
6
- logger: {
7
- warn
8
- }
9
- },
10
- rawTables
11
- });
12
- const longName = (char)=>char.repeat(maxIdentifierLength + 1);
13
- describe('checkTruncatedIdentifiers', ()=>{
14
- it('should neither warn nor throw when all identifiers fit within the limit', ()=>{
15
- const warn = vi.fn();
16
- const adapter = buildAdapter({
17
- posts: {
18
- name: 'posts',
19
- columns: {
20
- id: {
21
- name: 'id',
22
- type: 'serial'
23
- },
24
- title: {
25
- name: 'title',
26
- type: 'text'
27
- }
28
- }
29
- }
30
- }, warn);
31
- expect(()=>checkTruncatedIdentifiers({
32
- adapter,
33
- logWarnings: true
34
- })).not.toThrow();
35
- expect(warn).not.toHaveBeenCalled();
36
- });
37
- it('should warn (not throw) for a single over-long column name', ()=>{
38
- const columnName = longName('a');
39
- const warn = vi.fn();
40
- const adapter = buildAdapter({
41
- posts: {
42
- name: 'posts',
43
- columns: {
44
- overflow: {
45
- name: columnName,
46
- type: 'text'
47
- }
48
- }
49
- }
50
- }, warn);
51
- expect(()=>checkTruncatedIdentifiers({
52
- adapter,
53
- logWarnings: true
54
- })).not.toThrow();
55
- expect(warn).toHaveBeenCalledTimes(1);
56
- expect(warn.mock.calls[0][0]).toContain(columnName);
57
- });
58
- it('should not warn when logWarnings is false', ()=>{
59
- const warn = vi.fn();
60
- const adapter = buildAdapter({
61
- posts: {
62
- name: 'posts',
63
- columns: {
64
- overflow: {
65
- name: longName('a'),
66
- type: 'text'
67
- }
68
- }
69
- }
70
- }, warn);
71
- expect(()=>checkTruncatedIdentifiers({
72
- adapter,
73
- logWarnings: false
74
- })).not.toThrow();
75
- expect(warn).not.toHaveBeenCalled();
76
- });
77
- it('should throw when two columns in the same table truncate to the same name', ()=>{
78
- // Differ only past the 63rd character, so both truncate to the same identifier.
79
- const shared = 'a'.repeat(maxIdentifierLength);
80
- const adapter = buildAdapter({
81
- posts: {
82
- name: 'posts',
83
- columns: {
84
- first: {
85
- name: `${shared}_one`,
86
- type: 'text'
87
- },
88
- second: {
89
- name: `${shared}_two`,
90
- type: 'text'
91
- }
92
- }
93
- }
94
- });
95
- expect(()=>checkTruncatedIdentifiers({
96
- adapter,
97
- logWarnings: true
98
- })).toThrow('truncate to the same name');
99
- });
100
- it('should throw on a collision even when logWarnings is false', ()=>{
101
- const shared = 'a'.repeat(maxIdentifierLength);
102
- const adapter = buildAdapter({
103
- posts: {
104
- name: 'posts',
105
- columns: {
106
- first: {
107
- name: `${shared}_one`,
108
- type: 'text'
109
- },
110
- second: {
111
- name: `${shared}_two`,
112
- type: 'text'
113
- }
114
- }
115
- }
116
- });
117
- expect(()=>checkTruncatedIdentifiers({
118
- adapter,
119
- logWarnings: false
120
- })).toThrow();
121
- });
122
- it('should not treat same-named columns in different tables as a collision', ()=>{
123
- const shared = 'a'.repeat(maxIdentifierLength);
124
- const warn = vi.fn();
125
- const adapter = buildAdapter({
126
- posts: {
127
- name: 'posts',
128
- columns: {
129
- overflow: {
130
- name: `${shared}_one`,
131
- type: 'text'
132
- }
133
- }
134
- },
135
- pages: {
136
- name: 'pages',
137
- columns: {
138
- overflow: {
139
- name: `${shared}_two`,
140
- type: 'text'
141
- }
142
- }
143
- }
144
- }, warn);
145
- expect(()=>checkTruncatedIdentifiers({
146
- adapter,
147
- logWarnings: true
148
- })).not.toThrow();
149
- expect(warn).toHaveBeenCalledTimes(1);
150
- });
151
- it('should throw when two table names truncate to the same name', ()=>{
152
- const shared = 'a'.repeat(maxIdentifierLength);
153
- const adapter = buildAdapter({
154
- [`${shared}_one`]: {
155
- name: `${shared}_one`,
156
- columns: {
157
- id: {
158
- name: 'id',
159
- type: 'serial'
160
- }
161
- }
162
- },
163
- [`${shared}_two`]: {
164
- name: `${shared}_two`,
165
- columns: {
166
- id: {
167
- name: 'id',
168
- type: 'serial'
169
- }
170
- }
171
- }
172
- });
173
- expect(()=>checkTruncatedIdentifiers({
174
- adapter,
175
- logWarnings: true
176
- })).toThrow('truncate to the same name');
177
- });
178
- it('should warn about a single over-long inline index name', ()=>{
179
- const indexName = `${'a'.repeat(maxIdentifierLength)}_idx`;
180
- const warn = vi.fn();
181
- const adapter = buildAdapter({
182
- posts: {
183
- name: 'posts',
184
- columns: {
185
- id: {
186
- name: 'id',
187
- type: 'serial'
188
- }
189
- },
190
- indexes: {
191
- a: {
192
- name: indexName,
193
- on: 'id'
194
- }
195
- }
196
- }
197
- }, warn);
198
- checkTruncatedIdentifiers({
199
- adapter,
200
- logWarnings: true
201
- });
202
- expect(warn).toHaveBeenCalledTimes(1);
203
- expect(warn.mock.calls[0][0]).toContain(indexName);
204
- });
205
- it('should throw when two inline index names truncate to the same name', ()=>{
206
- const shared = 'a'.repeat(maxIdentifierLength);
207
- const adapter = buildAdapter({
208
- posts: {
209
- name: 'posts',
210
- columns: {
211
- id: {
212
- name: 'id',
213
- type: 'serial'
214
- }
215
- },
216
- indexes: {
217
- a: {
218
- name: `${shared}_one`,
219
- on: 'id'
220
- }
221
- }
222
- },
223
- pages: {
224
- name: 'pages',
225
- columns: {
226
- id: {
227
- name: 'id',
228
- type: 'serial'
229
- }
230
- },
231
- indexes: {
232
- b: {
233
- name: `${shared}_two`,
234
- on: 'id'
235
- }
236
- }
237
- }
238
- });
239
- expect(()=>checkTruncatedIdentifiers({
240
- adapter,
241
- logWarnings: true
242
- })).toThrow('truncate to the same name');
243
- });
244
- it('should throw when two inline foreign key names truncate to the same name', ()=>{
245
- const shared = 'a'.repeat(maxIdentifierLength);
246
- const adapter = buildAdapter({
247
- posts: {
248
- name: 'posts',
249
- columns: {
250
- author_id: {
251
- name: 'author_id',
252
- type: 'integer'
253
- }
254
- },
255
- foreignKeys: {
256
- a: {
257
- name: `${shared}_one`,
258
- columns: [
259
- 'author_id'
260
- ],
261
- foreignColumns: [
262
- {
263
- name: 'id',
264
- table: 'authors'
265
- }
266
- ]
267
- }
268
- }
269
- },
270
- pages: {
271
- name: 'pages',
272
- columns: {
273
- author_id: {
274
- name: 'author_id',
275
- type: 'integer'
276
- }
277
- },
278
- foreignKeys: {
279
- b: {
280
- name: `${shared}_two`,
281
- columns: [
282
- 'author_id'
283
- ],
284
- foreignColumns: [
285
- {
286
- name: 'id',
287
- table: 'authors'
288
- }
289
- ]
290
- }
291
- }
292
- }
293
- });
294
- expect(()=>checkTruncatedIdentifiers({
295
- adapter,
296
- logWarnings: true
297
- })).toThrow('truncate to the same name');
298
- });
299
- });
300
-
301
- //# sourceMappingURL=checkTruncatedIdentifiers.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utilities/checkTruncatedIdentifiers.spec.ts"],"sourcesContent":["import { describe, expect, it, vi } from 'vitest'\n\nimport type { DrizzleAdapter } from '../types.js'\n\nimport { checkTruncatedIdentifiers } from './checkTruncatedIdentifiers.js'\nimport { maxIdentifierLength } from './validateIdentifierLength.js'\n\nconst buildAdapter = (\n rawTables: DrizzleAdapter['rawTables'],\n warn: (...args: any[]) => void = () => {},\n): Pick<DrizzleAdapter, 'payload' | 'rawTables'> =>\n ({\n payload: { logger: { warn } },\n rawTables,\n }) as unknown as Pick<DrizzleAdapter, 'payload' | 'rawTables'>\n\nconst longName = (char: string) => char.repeat(maxIdentifierLength + 1)\n\ndescribe('checkTruncatedIdentifiers', () => {\n it('should neither warn nor throw when all identifiers fit within the limit', () => {\n const warn = vi.fn()\n\n const adapter = buildAdapter(\n {\n posts: {\n name: 'posts',\n columns: {\n id: { name: 'id', type: 'serial' },\n title: { name: 'title', type: 'text' },\n },\n },\n },\n warn,\n )\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: true })).not.toThrow()\n expect(warn).not.toHaveBeenCalled()\n })\n\n it('should warn (not throw) for a single over-long column name', () => {\n const columnName = longName('a')\n const warn = vi.fn()\n\n const adapter = buildAdapter(\n {\n posts: {\n name: 'posts',\n columns: {\n overflow: { name: columnName, type: 'text' },\n },\n },\n },\n warn,\n )\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: true })).not.toThrow()\n expect(warn).toHaveBeenCalledTimes(1)\n expect(warn.mock.calls[0][0]).toContain(columnName)\n })\n\n it('should not warn when logWarnings is false', () => {\n const warn = vi.fn()\n\n const adapter = buildAdapter(\n {\n posts: {\n name: 'posts',\n columns: {\n overflow: { name: longName('a'), type: 'text' },\n },\n },\n },\n warn,\n )\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: false })).not.toThrow()\n expect(warn).not.toHaveBeenCalled()\n })\n\n it('should throw when two columns in the same table truncate to the same name', () => {\n // Differ only past the 63rd character, so both truncate to the same identifier.\n const shared = 'a'.repeat(maxIdentifierLength)\n\n const adapter = buildAdapter({\n posts: {\n name: 'posts',\n columns: {\n first: { name: `${shared}_one`, type: 'text' },\n second: { name: `${shared}_two`, type: 'text' },\n },\n },\n })\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: true })).toThrow(\n 'truncate to the same name',\n )\n })\n\n it('should throw on a collision even when logWarnings is false', () => {\n const shared = 'a'.repeat(maxIdentifierLength)\n\n const adapter = buildAdapter({\n posts: {\n name: 'posts',\n columns: {\n first: { name: `${shared}_one`, type: 'text' },\n second: { name: `${shared}_two`, type: 'text' },\n },\n },\n })\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: false })).toThrow()\n })\n\n it('should not treat same-named columns in different tables as a collision', () => {\n const shared = 'a'.repeat(maxIdentifierLength)\n const warn = vi.fn()\n\n const adapter = buildAdapter(\n {\n posts: {\n name: 'posts',\n columns: {\n overflow: { name: `${shared}_one`, type: 'text' },\n },\n },\n pages: {\n name: 'pages',\n columns: {\n overflow: { name: `${shared}_two`, type: 'text' },\n },\n },\n },\n warn,\n )\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: true })).not.toThrow()\n expect(warn).toHaveBeenCalledTimes(1)\n })\n\n it('should throw when two table names truncate to the same name', () => {\n const shared = 'a'.repeat(maxIdentifierLength)\n\n const adapter = buildAdapter({\n [`${shared}_one`]: {\n name: `${shared}_one`,\n columns: { id: { name: 'id', type: 'serial' } },\n },\n [`${shared}_two`]: {\n name: `${shared}_two`,\n columns: { id: { name: 'id', type: 'serial' } },\n },\n })\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: true })).toThrow(\n 'truncate to the same name',\n )\n })\n\n it('should warn about a single over-long inline index name', () => {\n const indexName = `${'a'.repeat(maxIdentifierLength)}_idx`\n const warn = vi.fn()\n\n const adapter = buildAdapter(\n {\n posts: {\n name: 'posts',\n columns: { id: { name: 'id', type: 'serial' } },\n indexes: { a: { name: indexName, on: 'id' } },\n },\n },\n warn,\n )\n\n checkTruncatedIdentifiers({ adapter, logWarnings: true })\n\n expect(warn).toHaveBeenCalledTimes(1)\n expect(warn.mock.calls[0][0]).toContain(indexName)\n })\n\n it('should throw when two inline index names truncate to the same name', () => {\n const shared = 'a'.repeat(maxIdentifierLength)\n\n const adapter = buildAdapter({\n posts: {\n name: 'posts',\n columns: { id: { name: 'id', type: 'serial' } },\n indexes: { a: { name: `${shared}_one`, on: 'id' } },\n },\n pages: {\n name: 'pages',\n columns: { id: { name: 'id', type: 'serial' } },\n indexes: { b: { name: `${shared}_two`, on: 'id' } },\n },\n })\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: true })).toThrow(\n 'truncate to the same name',\n )\n })\n\n it('should throw when two inline foreign key names truncate to the same name', () => {\n const shared = 'a'.repeat(maxIdentifierLength)\n\n const adapter = buildAdapter({\n posts: {\n name: 'posts',\n columns: { author_id: { name: 'author_id', type: 'integer' } },\n foreignKeys: {\n a: {\n name: `${shared}_one`,\n columns: ['author_id'],\n foreignColumns: [{ name: 'id', table: 'authors' }],\n },\n },\n },\n pages: {\n name: 'pages',\n columns: { author_id: { name: 'author_id', type: 'integer' } },\n foreignKeys: {\n b: {\n name: `${shared}_two`,\n columns: ['author_id'],\n foreignColumns: [{ name: 'id', table: 'authors' }],\n },\n },\n },\n })\n\n expect(() => checkTruncatedIdentifiers({ adapter, logWarnings: true })).toThrow(\n 'truncate to the same name',\n )\n })\n})\n"],"names":["describe","expect","it","vi","checkTruncatedIdentifiers","maxIdentifierLength","buildAdapter","rawTables","warn","payload","logger","longName","char","repeat","fn","adapter","posts","name","columns","id","type","title","logWarnings","not","toThrow","toHaveBeenCalled","columnName","overflow","toHaveBeenCalledTimes","mock","calls","toContain","shared","first","second","pages","indexName","indexes","a","on","b","author_id","foreignKeys","foreignColumns","table"],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { isValidStringID } from './isValidStringID.js';
3
- describe('isValidStringID', ()=>{
4
- it('should pass', ()=>{
5
- expect(isValidStringID('1')).toBe(true);
6
- expect(isValidStringID('a_b_c')).toBe(true);
7
- expect(isValidStringID('8cc2df6d-6e07-4da4-be48-5fa747c3b92b')).toBe(true);
8
- });
9
- it('should not pass', ()=>{
10
- expect(isValidStringID('1 2 3')).toBe(false);
11
- expect(isValidStringID('1@')).toBe(false);
12
- });
13
- });
14
-
15
- //# sourceMappingURL=isValidStringID.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utilities/isValidStringID.spec.ts"],"sourcesContent":["import { describe, it, expect } from 'vitest'\nimport { isValidStringID } from './isValidStringID.js'\n\ndescribe('isValidStringID', () => {\n it('should pass', () => {\n expect(isValidStringID('1')).toBe(true)\n expect(isValidStringID('a_b_c')).toBe(true)\n expect(isValidStringID('8cc2df6d-6e07-4da4-be48-5fa747c3b92b')).toBe(true)\n })\n\n it('should not pass', () => {\n expect(isValidStringID('1 2 3')).toBe(false)\n expect(isValidStringID('1@')).toBe(false)\n })\n})\n"],"names":["describe","it","expect","isValidStringID","toBe"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,EAAEC,MAAM,QAAQ,SAAQ;AAC7C,SAASC,eAAe,QAAQ,uBAAsB;AAEtDH,SAAS,mBAAmB;IAC1BC,GAAG,eAAe;QAChBC,OAAOC,gBAAgB,MAAMC,IAAI,CAAC;QAClCF,OAAOC,gBAAgB,UAAUC,IAAI,CAAC;QACtCF,OAAOC,gBAAgB,yCAAyCC,IAAI,CAAC;IACvE;IAEAH,GAAG,mBAAmB;QACpBC,OAAOC,gBAAgB,UAAUC,IAAI,CAAC;QACtCF,OAAOC,gBAAgB,OAAOC,IAAI,CAAC;IACrC;AACF"}
@@ -1,19 +0,0 @@
1
- import { describe, expect, it } from 'vitest';
2
- import { maxIdentifierLength, validateIdentifierLength } from './validateIdentifierLength.js';
3
- describe('validateIdentifierLength', ()=>{
4
- it('should return the name unchanged when at or under the 63-char limit', ()=>{
5
- const name = 'a'.repeat(maxIdentifierLength);
6
- expect(validateIdentifierLength(name)).toBe(name);
7
- });
8
- it('should throw when the name exceeds the 63-char limit', ()=>{
9
- const name = 'a'.repeat(maxIdentifierLength + 1);
10
- expect(()=>validateIdentifierLength(name)).toThrow('Exceeded max identifier length');
11
- });
12
- it('should include the invalid name and the dbName tip in the error', ()=>{
13
- const name = `some_long_table_name${'x'.repeat(maxIdentifierLength)}_locales`;
14
- expect(()=>validateIdentifierLength(name)).toThrow(name);
15
- expect(()=>validateIdentifierLength(name)).toThrow('You can use the dbName property to reduce the table name length');
16
- });
17
- });
18
-
19
- //# sourceMappingURL=validateIdentifierLength.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utilities/validateIdentifierLength.spec.ts"],"sourcesContent":["import { describe, expect, it } from 'vitest'\n\nimport { maxIdentifierLength, validateIdentifierLength } from './validateIdentifierLength.js'\n\ndescribe('validateIdentifierLength', () => {\n it('should return the name unchanged when at or under the 63-char limit', () => {\n const name = 'a'.repeat(maxIdentifierLength)\n\n expect(validateIdentifierLength(name)).toBe(name)\n })\n\n it('should throw when the name exceeds the 63-char limit', () => {\n const name = 'a'.repeat(maxIdentifierLength + 1)\n\n expect(() => validateIdentifierLength(name)).toThrow('Exceeded max identifier length')\n })\n\n it('should include the invalid name and the dbName tip in the error', () => {\n const name = `some_long_table_name${'x'.repeat(maxIdentifierLength)}_locales`\n\n expect(() => validateIdentifierLength(name)).toThrow(name)\n expect(() => validateIdentifierLength(name)).toThrow(\n 'You can use the dbName property to reduce the table name length',\n )\n })\n})\n"],"names":["describe","expect","it","maxIdentifierLength","validateIdentifierLength","name","repeat","toBe","toThrow"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,mBAAmB,EAAEC,wBAAwB,QAAQ,gCAA+B;AAE7FJ,SAAS,4BAA4B;IACnCE,GAAG,uEAAuE;QACxE,MAAMG,OAAO,IAAIC,MAAM,CAACH;QAExBF,OAAOG,yBAAyBC,OAAOE,IAAI,CAACF;IAC9C;IAEAH,GAAG,wDAAwD;QACzD,MAAMG,OAAO,IAAIC,MAAM,CAACH,sBAAsB;QAE9CF,OAAO,IAAMG,yBAAyBC,OAAOG,OAAO,CAAC;IACvD;IAEAN,GAAG,mEAAmE;QACpE,MAAMG,OAAO,CAAC,oBAAoB,EAAE,IAAIC,MAAM,CAACH,qBAAqB,QAAQ,CAAC;QAE7EF,OAAO,IAAMG,yBAAyBC,OAAOG,OAAO,CAACH;QACrDJ,OAAO,IAAMG,yBAAyBC,OAAOG,OAAO,CAClD;IAEJ;AACF"}