@ordis-dev/ordis 0.1.1 → 0.4.0

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 (83) hide show
  1. package/README.md +47 -0
  2. package/dist/cli.js +20 -4
  3. package/dist/cli.js.map +1 -1
  4. package/dist/core/error-formatter.d.ts +35 -0
  5. package/dist/core/error-formatter.d.ts.map +1 -0
  6. package/dist/core/error-formatter.js +319 -0
  7. package/dist/core/error-formatter.js.map +1 -0
  8. package/dist/core/index.d.ts +3 -1
  9. package/dist/core/index.d.ts.map +1 -1
  10. package/dist/core/index.js +1 -0
  11. package/dist/core/index.js.map +1 -1
  12. package/dist/core/pipeline.d.ts.map +1 -1
  13. package/dist/core/pipeline.js +17 -3
  14. package/dist/core/pipeline.js.map +1 -1
  15. package/dist/core/preprocessor.d.ts +35 -0
  16. package/dist/core/preprocessor.d.ts.map +1 -0
  17. package/dist/core/preprocessor.js +297 -0
  18. package/dist/core/preprocessor.js.map +1 -0
  19. package/dist/core/types.d.ts +24 -1
  20. package/dist/core/types.d.ts.map +1 -1
  21. package/dist/core/validator.d.ts +3 -1
  22. package/dist/core/validator.d.ts.map +1 -1
  23. package/dist/core/validator.js.map +1 -1
  24. package/dist/index.d.ts +4 -1
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +2 -0
  27. package/dist/index.js.map +1 -1
  28. package/dist/llm/client.d.ts.map +1 -1
  29. package/dist/llm/client.js +23 -3
  30. package/dist/llm/client.js.map +1 -1
  31. package/dist/llm/types.d.ts +2 -0
  32. package/dist/llm/types.d.ts.map +1 -1
  33. package/dist/schemas/types.d.ts +3 -1
  34. package/dist/schemas/types.d.ts.map +1 -1
  35. package/package.json +4 -1
  36. package/dist/__tests__/api.test.d.ts +0 -5
  37. package/dist/__tests__/api.test.d.ts.map +0 -1
  38. package/dist/__tests__/api.test.js +0 -95
  39. package/dist/__tests__/api.test.js.map +0 -1
  40. package/dist/__tests__/cli.test.d.ts +0 -6
  41. package/dist/__tests__/cli.test.d.ts.map +0 -1
  42. package/dist/__tests__/cli.test.js +0 -103
  43. package/dist/__tests__/cli.test.js.map +0 -1
  44. package/dist/cli/__tests__/cli.test.d.ts +0 -5
  45. package/dist/cli/__tests__/cli.test.d.ts.map +0 -1
  46. package/dist/cli/__tests__/cli.test.js +0 -13
  47. package/dist/cli/__tests__/cli.test.js.map +0 -1
  48. package/dist/core/__tests__/pipeline.test.d.ts +0 -5
  49. package/dist/core/__tests__/pipeline.test.d.ts.map +0 -1
  50. package/dist/core/__tests__/pipeline.test.js +0 -334
  51. package/dist/core/__tests__/pipeline.test.js.map +0 -1
  52. package/dist/core/__tests__/validator.test.d.ts +0 -5
  53. package/dist/core/__tests__/validator.test.d.ts.map +0 -1
  54. package/dist/core/__tests__/validator.test.js +0 -124
  55. package/dist/core/__tests__/validator.test.js.map +0 -1
  56. package/dist/llm/__tests__/client.test.d.ts +0 -5
  57. package/dist/llm/__tests__/client.test.d.ts.map +0 -1
  58. package/dist/llm/__tests__/client.test.js +0 -350
  59. package/dist/llm/__tests__/client.test.js.map +0 -1
  60. package/dist/llm/__tests__/prompt-builder.test.d.ts +0 -5
  61. package/dist/llm/__tests__/prompt-builder.test.d.ts.map +0 -1
  62. package/dist/llm/__tests__/prompt-builder.test.js +0 -171
  63. package/dist/llm/__tests__/prompt-builder.test.js.map +0 -1
  64. package/dist/llm/__tests__/retry.test.d.ts +0 -5
  65. package/dist/llm/__tests__/retry.test.d.ts.map +0 -1
  66. package/dist/llm/__tests__/retry.test.js +0 -350
  67. package/dist/llm/__tests__/retry.test.js.map +0 -1
  68. package/dist/llm/__tests__/token-counter.test.d.ts +0 -5
  69. package/dist/llm/__tests__/token-counter.test.d.ts.map +0 -1
  70. package/dist/llm/__tests__/token-counter.test.js +0 -166
  71. package/dist/llm/__tests__/token-counter.test.js.map +0 -1
  72. package/dist/schemas/__tests__/integration.test.d.ts +0 -5
  73. package/dist/schemas/__tests__/integration.test.d.ts.map +0 -1
  74. package/dist/schemas/__tests__/integration.test.js +0 -366
  75. package/dist/schemas/__tests__/integration.test.js.map +0 -1
  76. package/dist/schemas/__tests__/loader.test.d.ts +0 -5
  77. package/dist/schemas/__tests__/loader.test.d.ts.map +0 -1
  78. package/dist/schemas/__tests__/loader.test.js +0 -271
  79. package/dist/schemas/__tests__/loader.test.js.map +0 -1
  80. package/dist/schemas/__tests__/validator.test.d.ts +0 -5
  81. package/dist/schemas/__tests__/validator.test.d.ts.map +0 -1
  82. package/dist/schemas/__tests__/validator.test.js +0 -592
  83. package/dist/schemas/__tests__/validator.test.js.map +0 -1
@@ -1,271 +0,0 @@
1
- /**
2
- * Unit tests for schema loader
3
- */
4
- import { describe, it, expect, beforeEach, afterEach } from 'vitest';
5
- import * as fs from 'fs/promises';
6
- import * as path from 'path';
7
- import { loadSchema, parseSchema, loadSchemaFromObject } from '../loader.js';
8
- import { SchemaValidationError, ErrorCodes } from '../errors.js';
9
- const TEST_DIR = path.join(process.cwd(), 'test-schemas');
10
- describe('Schema Loader', () => {
11
- beforeEach(async () => {
12
- // Create test directory
13
- await fs.mkdir(TEST_DIR, { recursive: true });
14
- });
15
- afterEach(async () => {
16
- // Clean up test directory
17
- await fs.rm(TEST_DIR, { recursive: true, force: true });
18
- });
19
- describe('loadSchema', () => {
20
- it('should load a valid schema from file', async () => {
21
- const schema = {
22
- fields: {
23
- name: { type: 'string' },
24
- age: { type: 'number' },
25
- },
26
- };
27
- const filePath = path.join(TEST_DIR, 'valid.schema.json');
28
- await fs.writeFile(filePath, JSON.stringify(schema));
29
- const loaded = await loadSchema(filePath);
30
- expect(loaded).toEqual(schema);
31
- });
32
- it('should throw error for non-existent file', async () => {
33
- const filePath = path.join(TEST_DIR, 'does-not-exist.json');
34
- await expect(loadSchema(filePath)).rejects.toThrow(SchemaValidationError);
35
- await expect(loadSchema(filePath)).rejects.toThrow(/Cannot read schema file/);
36
- });
37
- it('should throw error for invalid JSON', async () => {
38
- const filePath = path.join(TEST_DIR, 'invalid.json');
39
- await fs.writeFile(filePath, '{ invalid json }');
40
- await expect(loadSchema(filePath)).rejects.toThrow(SchemaValidationError);
41
- await expect(loadSchema(filePath)).rejects.toThrow(/Invalid JSON/);
42
- });
43
- it('should throw error for invalid schema structure', async () => {
44
- const invalidSchema = {
45
- // Missing fields property
46
- metadata: { name: 'Test' },
47
- };
48
- const filePath = path.join(TEST_DIR, 'invalid-schema.json');
49
- await fs.writeFile(filePath, JSON.stringify(invalidSchema));
50
- await expect(loadSchema(filePath)).rejects.toThrow(SchemaValidationError);
51
- });
52
- it('should load schema with metadata', async () => {
53
- const schema = {
54
- fields: {
55
- id: { type: 'string' },
56
- },
57
- metadata: {
58
- name: 'Test Schema',
59
- version: '1.0.0',
60
- description: 'A test schema',
61
- },
62
- };
63
- const filePath = path.join(TEST_DIR, 'with-metadata.json');
64
- await fs.writeFile(filePath, JSON.stringify(schema));
65
- const loaded = await loadSchema(filePath);
66
- expect(loaded).toEqual(schema);
67
- expect(loaded.metadata?.name).toBe('Test Schema');
68
- });
69
- it('should load complex schema with all field types', async () => {
70
- const schema = {
71
- fields: {
72
- invoice_id: { type: 'string', description: 'Invoice ID' },
73
- amount: { type: 'number', min: 0 },
74
- currency: { type: 'enum', enum: ['USD', 'EUR', 'GBP'] },
75
- date: { type: 'date', optional: true },
76
- email: { type: 'string', pattern: '^[a-z]+@[a-z]+\\.[a-z]+$' },
77
- },
78
- };
79
- const filePath = path.join(TEST_DIR, 'complex.json');
80
- await fs.writeFile(filePath, JSON.stringify(schema, null, 2));
81
- const loaded = await loadSchema(filePath);
82
- expect(loaded).toEqual(schema);
83
- });
84
- });
85
- describe('parseSchema', () => {
86
- it('should parse valid JSON string', () => {
87
- const schemaString = JSON.stringify({
88
- fields: {
89
- name: { type: 'string' },
90
- },
91
- });
92
- const schema = parseSchema(schemaString);
93
- expect(schema.fields.name.type).toBe('string');
94
- });
95
- it('should throw error for invalid JSON string', () => {
96
- const invalidJson = '{ invalid }';
97
- expect(() => parseSchema(invalidJson)).toThrow(SchemaValidationError);
98
- expect(() => parseSchema(invalidJson)).toThrow(/Invalid JSON/);
99
- });
100
- it('should throw error for invalid schema structure', () => {
101
- const invalidSchema = JSON.stringify({ notFields: {} });
102
- expect(() => parseSchema(invalidSchema)).toThrow(SchemaValidationError);
103
- });
104
- it('should parse schema with all features', () => {
105
- const schemaString = JSON.stringify({
106
- fields: {
107
- id: { type: 'string' },
108
- count: { type: 'number', min: 0, max: 100 },
109
- status: { type: 'enum', enum: ['active', 'inactive'] },
110
- created: { type: 'date', optional: true },
111
- },
112
- metadata: {
113
- name: 'Complete Schema',
114
- version: '1.0.0',
115
- },
116
- });
117
- const schema = parseSchema(schemaString);
118
- expect(Object.keys(schema.fields)).toHaveLength(4);
119
- expect(schema.metadata?.name).toBe('Complete Schema');
120
- });
121
- });
122
- describe('loadSchemaFromObject', () => {
123
- it('should load valid schema object', () => {
124
- const schemaObj = {
125
- fields: {
126
- title: { type: 'string' },
127
- },
128
- };
129
- const schema = loadSchemaFromObject(schemaObj);
130
- expect(schema).toEqual(schemaObj);
131
- });
132
- it('should throw error for invalid schema object', () => {
133
- const invalidObj = {
134
- notFields: { title: { type: 'string' } },
135
- };
136
- expect(() => loadSchemaFromObject(invalidObj)).toThrow(SchemaValidationError);
137
- });
138
- it('should validate all constraints', () => {
139
- const invalidObj = {
140
- fields: {
141
- age: { type: 'number', min: 100, max: 50 }, // min > max
142
- },
143
- };
144
- expect(() => loadSchemaFromObject(invalidObj)).toThrow(SchemaValidationError);
145
- });
146
- it('should accept schema with metadata', () => {
147
- const schemaObj = {
148
- fields: {
149
- name: { type: 'string' },
150
- },
151
- metadata: {
152
- name: 'Object Schema',
153
- },
154
- };
155
- const schema = loadSchemaFromObject(schemaObj);
156
- expect(schema.metadata?.name).toBe('Object Schema');
157
- });
158
- });
159
- describe('Error handling', () => {
160
- it('should provide file path in error details', async () => {
161
- const filePath = path.join(TEST_DIR, 'bad-json.json');
162
- await fs.writeFile(filePath, '{ bad json');
163
- try {
164
- await loadSchema(filePath);
165
- expect.fail('Should have thrown an error');
166
- }
167
- catch (error) {
168
- expect(error).toBeInstanceOf(SchemaValidationError);
169
- const schemaError = error;
170
- expect(schemaError.details?.filePath).toBe(filePath);
171
- }
172
- });
173
- it('should have appropriate error code for JSON errors', async () => {
174
- const filePath = path.join(TEST_DIR, 'bad.json');
175
- await fs.writeFile(filePath, 'not json at all');
176
- try {
177
- await loadSchema(filePath);
178
- expect.fail('Should have thrown an error');
179
- }
180
- catch (error) {
181
- expect(error).toBeInstanceOf(SchemaValidationError);
182
- expect(error.code).toBe(ErrorCodes.INVALID_JSON);
183
- }
184
- });
185
- it('should handle read permission errors gracefully', async () => {
186
- const filePath = path.join(TEST_DIR, 'readonly.json');
187
- await fs.writeFile(filePath, '{}');
188
- await fs.chmod(filePath, 0o000); // Remove all permissions
189
- try {
190
- await expect(loadSchema(filePath)).rejects.toThrow(SchemaValidationError);
191
- }
192
- finally {
193
- // Restore permissions for cleanup
194
- await fs.chmod(filePath, 0o644);
195
- }
196
- });
197
- });
198
- describe('Real-world schemas', () => {
199
- it('should load invoice schema', async () => {
200
- const invoiceSchema = {
201
- fields: {
202
- invoice_id: {
203
- type: 'string',
204
- description: 'Unique invoice identifier',
205
- },
206
- amount: {
207
- type: 'number',
208
- description: 'Total invoice amount',
209
- },
210
- currency: {
211
- type: 'enum',
212
- enum: ['USD', 'SGD', 'EUR'],
213
- description: 'Currency code',
214
- },
215
- date: {
216
- type: 'date',
217
- optional: true,
218
- description: 'Invoice date',
219
- },
220
- },
221
- };
222
- const filePath = path.join(TEST_DIR, 'invoice.schema.json');
223
- await fs.writeFile(filePath, JSON.stringify(invoiceSchema, null, 2));
224
- const loaded = await loadSchema(filePath);
225
- expect(loaded.fields.invoice_id.type).toBe('string');
226
- expect(loaded.fields.amount.type).toBe('number');
227
- expect(loaded.fields.currency.type).toBe('enum');
228
- expect(loaded.fields.currency.enum).toEqual(['USD', 'SGD', 'EUR']);
229
- expect(loaded.fields.date.optional).toBe(true);
230
- });
231
- it('should load user profile schema', async () => {
232
- const userSchema = {
233
- fields: {
234
- username: {
235
- type: 'string',
236
- pattern: '^[a-zA-Z0-9_]{3,20}$',
237
- },
238
- email: {
239
- type: 'string',
240
- pattern: '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$',
241
- },
242
- age: {
243
- type: 'number',
244
- min: 13,
245
- max: 120,
246
- },
247
- role: {
248
- type: 'enum',
249
- enum: ['user', 'admin', 'moderator'],
250
- },
251
- bio: {
252
- type: 'string',
253
- optional: true,
254
- },
255
- },
256
- metadata: {
257
- name: 'User Profile',
258
- version: '2.0.0',
259
- description: 'Schema for user profile data',
260
- },
261
- };
262
- const filePath = path.join(TEST_DIR, 'user.schema.json');
263
- await fs.writeFile(filePath, JSON.stringify(userSchema, null, 2));
264
- const loaded = await loadSchema(filePath);
265
- expect(loaded.fields.username.pattern).toBeDefined();
266
- expect(loaded.fields.age.min).toBe(13);
267
- expect(loaded.metadata?.version).toBe('2.0.0');
268
- });
269
- });
270
- });
271
- //# sourceMappingURL=loader.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"loader.test.js","sourceRoot":"","sources":["../../../src/schemas/__tests__/loader.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Unit tests for schema validator
3
- */
4
- export {};
5
- //# sourceMappingURL=validator.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validator.test.d.ts","sourceRoot":"","sources":["../../../src/schemas/__tests__/validator.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}