@revisium/schema-toolkit 0.2.0 → 0.2.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 (81) hide show
  1. package/dist/chunk-22K22MMD.js +112 -0
  2. package/dist/chunk-22K22MMD.js.map +1 -0
  3. package/dist/chunk-2GCG6HJO.cjs +545 -0
  4. package/dist/chunk-2GCG6HJO.cjs.map +1 -0
  5. package/dist/chunk-3E7UGCRR.js +519 -0
  6. package/dist/chunk-3E7UGCRR.js.map +1 -0
  7. package/dist/chunk-47AQWLHU.cjs +122 -0
  8. package/dist/chunk-47AQWLHU.cjs.map +1 -0
  9. package/dist/chunk-5VDDLW7U.js +9 -0
  10. package/dist/chunk-5VDDLW7U.js.map +1 -0
  11. package/dist/chunk-AORPUIKD.js +81 -0
  12. package/dist/chunk-AORPUIKD.js.map +1 -0
  13. package/dist/chunk-ASXCDIN2.js +365 -0
  14. package/dist/chunk-ASXCDIN2.js.map +1 -0
  15. package/dist/chunk-DEPJRTVT.js +3 -0
  16. package/dist/chunk-DEPJRTVT.js.map +1 -0
  17. package/dist/chunk-EJYILFAK.cjs +92 -0
  18. package/dist/chunk-EJYILFAK.cjs.map +1 -0
  19. package/dist/chunk-FD57PCAC.cjs +4 -0
  20. package/dist/chunk-FD57PCAC.cjs.map +1 -0
  21. package/dist/chunk-H7W4QNMA.js +3 -0
  22. package/dist/chunk-H7W4QNMA.js.map +1 -0
  23. package/dist/chunk-IPL2CGVA.cjs +11 -0
  24. package/dist/chunk-IPL2CGVA.cjs.map +1 -0
  25. package/dist/chunk-JLIZ7QT2.cjs +787 -0
  26. package/dist/chunk-JLIZ7QT2.cjs.map +1 -0
  27. package/dist/chunk-ODCH3PP2.cjs +4 -0
  28. package/dist/chunk-ODCH3PP2.cjs.map +1 -0
  29. package/dist/chunk-Q2UOTIMG.js +17 -0
  30. package/dist/chunk-Q2UOTIMG.js.map +1 -0
  31. package/dist/chunk-V2SSSD5X.cjs +15 -0
  32. package/dist/chunk-V2SSSD5X.cjs.map +1 -0
  33. package/dist/chunk-VGTHMWJJ.cjs +380 -0
  34. package/dist/chunk-VGTHMWJJ.cjs.map +1 -0
  35. package/dist/chunk-WCFA4226.js +757 -0
  36. package/dist/chunk-WCFA4226.js.map +1 -0
  37. package/dist/chunk-XNFSFT7T.cjs +19 -0
  38. package/dist/chunk-XNFSFT7T.cjs.map +1 -0
  39. package/dist/chunk-ZXLLJAMQ.js +13 -0
  40. package/dist/chunk-ZXLLJAMQ.js.map +1 -0
  41. package/dist/consts/index.cjs +11 -20
  42. package/dist/consts/index.cjs.map +1 -1
  43. package/dist/consts/index.js +2 -21
  44. package/dist/consts/index.js.map +1 -1
  45. package/dist/index.cjs +372 -1869
  46. package/dist/index.cjs.map +1 -1
  47. package/dist/index.d.cts +2 -2
  48. package/dist/index.d.ts +2 -2
  49. package/dist/index.js +10 -1785
  50. package/dist/index.js.map +1 -1
  51. package/dist/{json-string.store-O1J0j-a1.d.cts → json-string.store-BNF1Y93E.d.cts} +1 -0
  52. package/dist/{json-string.store-S9FXT39Q.d.ts → json-string.store-qHcWNv07.d.ts} +1 -0
  53. package/dist/lib/index.cjs +128 -1342
  54. package/dist/lib/index.cjs.map +1 -1
  55. package/dist/lib/index.d.cts +1 -1
  56. package/dist/lib/index.d.ts +1 -1
  57. package/dist/lib/index.js +5 -1313
  58. package/dist/lib/index.js.map +1 -1
  59. package/dist/mocks/index.cjs +38 -81
  60. package/dist/mocks/index.cjs.map +1 -1
  61. package/dist/mocks/index.js +2 -79
  62. package/dist/mocks/index.js.map +1 -1
  63. package/dist/model/index.cjs +99 -711
  64. package/dist/model/index.cjs.map +1 -1
  65. package/dist/model/index.d.cts +8 -4
  66. package/dist/model/index.d.ts +8 -4
  67. package/dist/model/index.js +3 -695
  68. package/dist/model/index.js.map +1 -1
  69. package/dist/plugins/index.cjs +41 -118
  70. package/dist/plugins/index.cjs.map +1 -1
  71. package/dist/plugins/index.js +2 -110
  72. package/dist/plugins/index.js.map +1 -1
  73. package/dist/types/index.cjs +9 -11
  74. package/dist/types/index.cjs.map +1 -1
  75. package/dist/types/index.js +2 -11
  76. package/dist/types/index.js.map +1 -1
  77. package/dist/validation-schemas/index.cjs +57 -373
  78. package/dist/validation-schemas/index.cjs.map +1 -1
  79. package/dist/validation-schemas/index.js +1 -363
  80. package/dist/validation-schemas/index.js.map +1 -1
  81. package/package.json +1 -1
@@ -1,365 +1,3 @@
1
- // src/validation-schemas/shared-fields.ts
2
- var sharedFields = {
3
- deprecated: {
4
- type: "boolean"
5
- },
6
- title: {
7
- type: "string"
8
- },
9
- description: {
10
- type: "string"
11
- }
12
- };
13
-
14
- // src/validation-schemas/meta-schema.ts
15
- var refMetaSchema = {
16
- type: "object",
17
- properties: {
18
- ...sharedFields,
19
- $ref: {
20
- type: "string"
21
- }
22
- },
23
- additionalProperties: false,
24
- required: ["$ref"]
25
- };
26
- var baseStringFields = {
27
- type: {
28
- const: "string"
29
- },
30
- default: {
31
- type: "string"
32
- },
33
- readOnly: {
34
- type: "boolean"
35
- },
36
- pattern: {
37
- type: "string",
38
- format: "regex"
39
- },
40
- enum: {
41
- type: "array",
42
- items: { type: "string" },
43
- minItems: 1,
44
- uniqueItems: true
45
- },
46
- format: {
47
- type: "string",
48
- enum: ["date-time", "date", "time", "email", "regex"]
49
- },
50
- contentMediaType: {
51
- type: "string",
52
- enum: [
53
- "text/plain",
54
- "text/markdown",
55
- "text/html",
56
- "application/json",
57
- "application/schema+json",
58
- "application/yaml"
59
- ]
60
- },
61
- ...sharedFields
62
- };
63
- var stringMetaSchema = {
64
- type: "object",
65
- properties: {
66
- ...baseStringFields,
67
- foreignKey: {
68
- type: "string"
69
- }
70
- },
71
- additionalProperties: false,
72
- required: ["type", "default"]
73
- };
74
- var noForeignKeyStringMetaSchema = {
75
- type: "object",
76
- properties: {
77
- ...baseStringFields
78
- },
79
- additionalProperties: false,
80
- required: ["type", "default"]
81
- };
82
- var numberMetaSchema = {
83
- type: "object",
84
- properties: {
85
- type: {
86
- const: "number"
87
- },
88
- default: {
89
- type: "number"
90
- },
91
- readOnly: {
92
- type: "boolean"
93
- },
94
- ...sharedFields
95
- },
96
- additionalProperties: false,
97
- required: ["type", "default"]
98
- };
99
- var booleanMetaSchema = {
100
- type: "object",
101
- properties: {
102
- type: {
103
- const: "boolean"
104
- },
105
- default: {
106
- type: "boolean"
107
- },
108
- readOnly: {
109
- type: "boolean"
110
- },
111
- ...sharedFields
112
- },
113
- additionalProperties: false,
114
- required: ["type", "default"]
115
- };
116
- var objectMetaSchema = {
117
- type: "object",
118
- properties: {
119
- type: {
120
- const: "object"
121
- },
122
- ...sharedFields,
123
- properties: {
124
- type: "object",
125
- additionalProperties: { $dynamicRef: "#meta" },
126
- default: {}
127
- },
128
- additionalProperties: { const: false },
129
- required: { $ref: "#/$defs/stringArray" }
130
- },
131
- additionalProperties: false,
132
- required: ["type", "properties", "additionalProperties", "required"]
133
- };
134
- var arrayMetaSchema = {
135
- type: "object",
136
- properties: {
137
- type: {
138
- const: "array"
139
- },
140
- ...sharedFields,
141
- items: {
142
- oneOf: [
143
- { $ref: "#/$defs/refSchema" },
144
- { $ref: "#/$defs/objectSchema" },
145
- { $ref: "#/$defs/arraySchema" },
146
- { $ref: "#/$defs/stringSchema" },
147
- { $ref: "#/$defs/numberSchema" },
148
- { $ref: "#/$defs/booleanSchema" }
149
- ]
150
- }
151
- },
152
- additionalProperties: false,
153
- required: ["type", "items"]
154
- };
155
- var metaSchema = {
156
- $id: "meta-schema.json",
157
- type: "object",
158
- $dynamicAnchor: "meta",
159
- oneOf: [
160
- { $ref: "#/$defs/refSchema" },
161
- { $ref: "#/$defs/objectSchema" },
162
- { $ref: "#/$defs/arraySchema" },
163
- { $ref: "#/$defs/stringSchema" },
164
- { $ref: "#/$defs/numberSchema" },
165
- { $ref: "#/$defs/booleanSchema" }
166
- ],
167
- $defs: {
168
- stringArray: {
169
- type: "array",
170
- items: { type: "string" },
171
- uniqueItems: true,
172
- default: []
173
- },
174
- refSchema: refMetaSchema,
175
- objectSchema: objectMetaSchema,
176
- stringSchema: stringMetaSchema,
177
- numberSchema: numberMetaSchema,
178
- booleanSchema: booleanMetaSchema,
179
- arraySchema: arrayMetaSchema
180
- }
181
- };
182
- var notForeignKeyMetaSchema = {
183
- type: "object",
184
- $dynamicAnchor: "meta",
185
- oneOf: [
186
- { $ref: "#/$defs/refSchema" },
187
- { $ref: "#/$defs/objectSchema" },
188
- { $ref: "#/$defs/arraySchema" },
189
- { $ref: "#/$defs/stringSchema" },
190
- { $ref: "#/$defs/numberSchema" },
191
- { $ref: "#/$defs/booleanSchema" }
192
- ],
193
- $defs: {
194
- stringArray: {
195
- type: "array",
196
- items: { type: "string" },
197
- uniqueItems: true,
198
- default: []
199
- },
200
- refSchema: refMetaSchema,
201
- objectSchema: objectMetaSchema,
202
- stringSchema: noForeignKeyStringMetaSchema,
203
- numberSchema: numberMetaSchema,
204
- booleanSchema: booleanMetaSchema,
205
- arraySchema: arrayMetaSchema
206
- }
207
- };
208
-
209
- // src/validation-schemas/json-patch-schema.ts
210
- var jsonPatchSchema = {
211
- $id: "json-patch-schema.json",
212
- definitions: {
213
- path: {
214
- description: "A JSON Pointer path.",
215
- type: "string"
216
- },
217
- objectSchema: objectMetaSchema,
218
- stringSchema: stringMetaSchema,
219
- numberSchema: numberMetaSchema,
220
- booleanSchema: booleanMetaSchema,
221
- arraySchema: arrayMetaSchema
222
- },
223
- minItems: 1,
224
- items: {
225
- oneOf: [
226
- {
227
- type: "object",
228
- additionalProperties: false,
229
- required: ["value", "op", "path"],
230
- properties: {
231
- path: {
232
- $ref: "#/definitions/path"
233
- },
234
- op: {
235
- description: "The operation to perform.",
236
- type: "string",
237
- enum: ["add", "replace"]
238
- },
239
- value: {
240
- $ref: "meta-schema.json",
241
- description: "The value to add, replace or test."
242
- }
243
- }
244
- },
245
- {
246
- type: "object",
247
- additionalProperties: false,
248
- required: ["op", "path"],
249
- properties: {
250
- path: {
251
- $ref: "#/definitions/path"
252
- },
253
- op: {
254
- description: "The operation to perform.",
255
- type: "string",
256
- enum: ["remove"]
257
- }
258
- }
259
- },
260
- {
261
- type: "object",
262
- additionalProperties: false,
263
- required: ["from", "op", "path"],
264
- properties: {
265
- path: {
266
- $ref: "#/definitions/path"
267
- },
268
- op: {
269
- description: "The operation to perform.",
270
- type: "string",
271
- enum: ["move", "copy"]
272
- },
273
- from: {
274
- $ref: "#/definitions/path",
275
- description: "A JSON Pointer path pointing to the location to move/copy from."
276
- }
277
- }
278
- }
279
- ]
280
- },
281
- title: "JSON schema for JSONPatch files",
282
- type: "array"
283
- };
284
-
285
- // src/validation-schemas/history-patches-schema.ts
286
- var historyPatchesSchema = {
287
- $id: "history-patches-schema.json",
288
- type: "array",
289
- minItems: 1,
290
- items: {
291
- type: "object",
292
- properties: {
293
- patches: {
294
- $ref: "json-patch-schema.json"
295
- },
296
- hash: {
297
- type: "string"
298
- }
299
- },
300
- required: ["patches", "hash"]
301
- }
302
- };
303
-
304
- // src/validation-schemas/table-migrations-schema.ts
305
- var tableMigrationsSchema = {
306
- $id: "table-migrations-schema.json",
307
- oneOf: [
308
- { $ref: "#/definitions/InitMigration" },
309
- { $ref: "#/definitions/UpdateMigration" },
310
- { $ref: "#/definitions/RenameMigration" },
311
- { $ref: "#/definitions/RemoveMigration" }
312
- ],
313
- definitions: {
314
- InitMigration: {
315
- type: "object",
316
- additionalProperties: false,
317
- required: ["changeType", "tableId", "hash", "id", "schema"],
318
- properties: {
319
- changeType: { type: "string", const: "init" },
320
- tableId: { type: "string" },
321
- hash: { type: "string" },
322
- id: { type: "string" },
323
- schema: { $ref: "meta-schema.json" }
324
- }
325
- },
326
- UpdateMigration: {
327
- type: "object",
328
- additionalProperties: false,
329
- required: ["changeType", "tableId", "hash", "id", "patches"],
330
- properties: {
331
- changeType: { type: "string", const: "update" },
332
- tableId: { type: "string" },
333
- hash: { type: "string" },
334
- id: { type: "string" },
335
- patches: { $ref: "json-patch-schema.json" }
336
- }
337
- },
338
- RenameMigration: {
339
- type: "object",
340
- additionalProperties: false,
341
- required: ["changeType", "id", "tableId", "nextTableId"],
342
- properties: {
343
- changeType: { type: "string", const: "rename" },
344
- id: { type: "string" },
345
- tableId: { type: "string" },
346
- nextTableId: { type: "string" }
347
- }
348
- },
349
- RemoveMigration: {
350
- type: "object",
351
- additionalProperties: false,
352
- required: ["changeType", "id", "tableId"],
353
- properties: {
354
- changeType: { type: "string", const: "remove" },
355
- id: { type: "string" },
356
- tableId: { type: "string" }
357
- }
358
- }
359
- },
360
- title: "JSON Schema for a Single Migration"
361
- };
362
-
363
- export { arrayMetaSchema, baseStringFields, booleanMetaSchema, historyPatchesSchema, jsonPatchSchema, metaSchema, noForeignKeyStringMetaSchema, notForeignKeyMetaSchema, numberMetaSchema, objectMetaSchema, refMetaSchema, sharedFields, stringMetaSchema, tableMigrationsSchema };
1
+ export { arrayMetaSchema, baseStringFields, booleanMetaSchema, historyPatchesSchema, jsonPatchSchema, metaSchema, noForeignKeyStringMetaSchema, notForeignKeyMetaSchema, numberMetaSchema, objectMetaSchema, refMetaSchema, sharedFields, stringMetaSchema, tableMigrationsSchema } from '../chunk-ASXCDIN2.js';
364
2
  //# sourceMappingURL=index.js.map
365
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/validation-schemas/shared-fields.ts","../../src/validation-schemas/meta-schema.ts","../../src/validation-schemas/json-patch-schema.ts","../../src/validation-schemas/history-patches-schema.ts","../../src/validation-schemas/table-migrations-schema.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["export const sharedFields = {\n deprecated: {\n type: 'boolean',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n};\n","import { Schema } from 'ajv/dist/2020';\nimport { sharedFields } from './shared-fields.js';\n\n// https://json-schema.org/specification#single-vocabulary-meta-schemas\n\nexport const refMetaSchema: Schema = {\n type: 'object',\n properties: {\n ...sharedFields,\n $ref: {\n type: 'string',\n },\n },\n additionalProperties: false,\n required: ['$ref'],\n};\n\nexport const baseStringFields: Schema = {\n type: {\n const: 'string',\n },\n default: {\n type: 'string',\n },\n readOnly: {\n type: 'boolean',\n },\n pattern: {\n type: 'string',\n format: 'regex',\n },\n enum: {\n type: 'array',\n items: { type: 'string' },\n minItems: 1,\n uniqueItems: true,\n },\n format: {\n type: 'string',\n enum: ['date-time', 'date', 'time', 'email', 'regex'],\n },\n contentMediaType: {\n type: 'string',\n enum: [\n 'text/plain',\n 'text/markdown',\n 'text/html',\n 'application/json',\n 'application/schema+json',\n 'application/yaml',\n ],\n },\n ...sharedFields,\n};\n\nexport const stringMetaSchema: Schema = {\n type: 'object',\n properties: {\n ...baseStringFields,\n foreignKey: {\n type: 'string',\n },\n },\n additionalProperties: false,\n required: ['type', 'default'],\n};\n\nexport const noForeignKeyStringMetaSchema: Schema = {\n type: 'object',\n properties: {\n ...baseStringFields,\n },\n additionalProperties: false,\n required: ['type', 'default'],\n};\n\nexport const numberMetaSchema: Schema = {\n type: 'object',\n properties: {\n type: {\n const: 'number',\n },\n default: {\n type: 'number',\n },\n readOnly: {\n type: 'boolean',\n },\n ...sharedFields,\n },\n additionalProperties: false,\n required: ['type', 'default'],\n};\n\nexport const booleanMetaSchema: Schema = {\n type: 'object',\n properties: {\n type: {\n const: 'boolean',\n },\n default: {\n type: 'boolean',\n },\n readOnly: {\n type: 'boolean',\n },\n ...sharedFields,\n },\n additionalProperties: false,\n required: ['type', 'default'],\n};\n\nexport const objectMetaSchema: Schema = {\n type: 'object',\n properties: {\n type: {\n const: 'object',\n },\n ...sharedFields,\n properties: {\n type: 'object',\n additionalProperties: { $dynamicRef: '#meta' },\n default: {},\n },\n additionalProperties: { const: false },\n required: { $ref: '#/$defs/stringArray' },\n },\n additionalProperties: false,\n required: ['type', 'properties', 'additionalProperties', 'required'],\n};\n\nexport const arrayMetaSchema: Schema = {\n type: 'object',\n properties: {\n type: {\n const: 'array',\n },\n ...sharedFields,\n items: {\n oneOf: [\n { $ref: '#/$defs/refSchema' },\n { $ref: '#/$defs/objectSchema' },\n { $ref: '#/$defs/arraySchema' },\n { $ref: '#/$defs/stringSchema' },\n { $ref: '#/$defs/numberSchema' },\n { $ref: '#/$defs/booleanSchema' },\n ],\n },\n },\n additionalProperties: false,\n required: ['type', 'items'],\n};\n\nexport const metaSchema: Schema = {\n $id: 'meta-schema.json',\n type: 'object',\n $dynamicAnchor: 'meta',\n oneOf: [\n { $ref: '#/$defs/refSchema' },\n { $ref: '#/$defs/objectSchema' },\n { $ref: '#/$defs/arraySchema' },\n { $ref: '#/$defs/stringSchema' },\n { $ref: '#/$defs/numberSchema' },\n { $ref: '#/$defs/booleanSchema' },\n ],\n $defs: {\n stringArray: {\n type: 'array',\n items: { type: 'string' },\n uniqueItems: true,\n default: [],\n },\n refSchema: refMetaSchema,\n objectSchema: objectMetaSchema,\n stringSchema: stringMetaSchema,\n numberSchema: numberMetaSchema,\n booleanSchema: booleanMetaSchema,\n arraySchema: arrayMetaSchema,\n },\n};\n\nexport const notForeignKeyMetaSchema: Schema = {\n type: 'object',\n $dynamicAnchor: 'meta',\n oneOf: [\n { $ref: '#/$defs/refSchema' },\n { $ref: '#/$defs/objectSchema' },\n { $ref: '#/$defs/arraySchema' },\n { $ref: '#/$defs/stringSchema' },\n { $ref: '#/$defs/numberSchema' },\n { $ref: '#/$defs/booleanSchema' },\n ],\n $defs: {\n stringArray: {\n type: 'array',\n items: { type: 'string' },\n uniqueItems: true,\n default: [],\n },\n refSchema: refMetaSchema,\n objectSchema: objectMetaSchema,\n stringSchema: noForeignKeyStringMetaSchema,\n numberSchema: numberMetaSchema,\n booleanSchema: booleanMetaSchema,\n arraySchema: arrayMetaSchema,\n },\n};\n","import { Schema } from 'ajv/dist/2020';\nimport {\n arrayMetaSchema,\n booleanMetaSchema,\n numberMetaSchema,\n objectMetaSchema,\n stringMetaSchema,\n} from './meta-schema.js';\n\n// copied and modified from https://json.schemastore.org/json-patch\n\nexport const jsonPatchSchema: Schema = {\n $id: 'json-patch-schema.json',\n definitions: {\n path: {\n description: 'A JSON Pointer path.',\n type: 'string',\n },\n objectSchema: objectMetaSchema,\n stringSchema: stringMetaSchema,\n numberSchema: numberMetaSchema,\n booleanSchema: booleanMetaSchema,\n arraySchema: arrayMetaSchema,\n },\n minItems: 1,\n items: {\n oneOf: [\n {\n type: 'object',\n additionalProperties: false,\n required: ['value', 'op', 'path'],\n properties: {\n path: {\n $ref: '#/definitions/path',\n },\n op: {\n description: 'The operation to perform.',\n type: 'string',\n enum: ['add', 'replace'],\n },\n value: {\n $ref: 'meta-schema.json',\n description: 'The value to add, replace or test.',\n },\n },\n },\n {\n type: 'object',\n additionalProperties: false,\n required: ['op', 'path'],\n properties: {\n path: {\n $ref: '#/definitions/path',\n },\n op: {\n description: 'The operation to perform.',\n type: 'string',\n enum: ['remove'],\n },\n },\n },\n {\n type: 'object',\n additionalProperties: false,\n required: ['from', 'op', 'path'],\n properties: {\n path: {\n $ref: '#/definitions/path',\n },\n op: {\n description: 'The operation to perform.',\n type: 'string',\n enum: ['move', 'copy'],\n },\n from: {\n $ref: '#/definitions/path',\n description:\n 'A JSON Pointer path pointing to the location to move/copy from.',\n },\n },\n },\n ],\n },\n title: 'JSON schema for JSONPatch files',\n type: 'array',\n};\n","import { Schema } from 'ajv/dist/2020';\n\nexport const historyPatchesSchema: Schema = {\n $id: 'history-patches-schema.json',\n type: 'array',\n minItems: 1,\n items: {\n type: 'object',\n properties: {\n patches: {\n $ref: 'json-patch-schema.json',\n },\n hash: {\n type: 'string',\n },\n },\n required: ['patches', 'hash'],\n },\n};\n","import { Schema } from 'ajv/dist/2020';\n\nexport const tableMigrationsSchema: Schema = {\n $id: 'table-migrations-schema.json',\n oneOf: [\n { $ref: '#/definitions/InitMigration' },\n { $ref: '#/definitions/UpdateMigration' },\n { $ref: '#/definitions/RenameMigration' },\n { $ref: '#/definitions/RemoveMigration' },\n ],\n definitions: {\n InitMigration: {\n type: 'object',\n additionalProperties: false,\n required: ['changeType', 'tableId', 'hash', 'id', 'schema'],\n properties: {\n changeType: { type: 'string', const: 'init' },\n tableId: { type: 'string' },\n hash: { type: 'string' },\n id: { type: 'string' },\n schema: { $ref: 'meta-schema.json' },\n },\n },\n UpdateMigration: {\n type: 'object',\n additionalProperties: false,\n required: ['changeType', 'tableId', 'hash', 'id', 'patches'],\n properties: {\n changeType: { type: 'string', const: 'update' },\n tableId: { type: 'string' },\n hash: { type: 'string' },\n id: { type: 'string' },\n patches: { $ref: 'json-patch-schema.json' },\n },\n },\n RenameMigration: {\n type: 'object',\n additionalProperties: false,\n required: ['changeType', 'id', 'tableId', 'nextTableId'],\n properties: {\n changeType: { type: 'string', const: 'rename' },\n id: { type: 'string' },\n tableId: { type: 'string' },\n nextTableId: { type: 'string' },\n },\n },\n RemoveMigration: {\n type: 'object',\n additionalProperties: false,\n required: ['changeType', 'id', 'tableId'],\n properties: {\n changeType: { type: 'string', const: 'remove' },\n id: { type: 'string' },\n tableId: { type: 'string' },\n },\n },\n },\n title: 'JSON Schema for a Single Migration',\n};\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@revisium/schema-toolkit",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "Universal schema toolkit with TypeScript types and utilities for JSON Schema manipulation",
5
5
  "keywords": [
6
6
  "json-schema",