@semiont/core 0.2.1 → 0.2.2-build.12

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 (90) hide show
  1. package/dist/index.d.ts +1367 -27
  2. package/dist/index.js +1455 -78
  3. package/dist/index.js.map +1 -1
  4. package/package.json +18 -8
  5. package/dist/annotation-history-utils.d.ts +0 -42
  6. package/dist/annotation-history-utils.d.ts.map +0 -1
  7. package/dist/annotation-history-utils.js +0 -258
  8. package/dist/annotation-history-utils.js.map +0 -1
  9. package/dist/annotation-types.d.ts +0 -15
  10. package/dist/annotation-types.d.ts.map +0 -1
  11. package/dist/annotation-types.js +0 -6
  12. package/dist/annotation-types.js.map +0 -1
  13. package/dist/annotation-utils.d.ts +0 -18
  14. package/dist/annotation-utils.d.ts.map +0 -1
  15. package/dist/annotation-utils.js +0 -70
  16. package/dist/annotation-utils.js.map +0 -1
  17. package/dist/auth-types.d.ts +0 -8
  18. package/dist/auth-types.d.ts.map +0 -1
  19. package/dist/auth-types.js +0 -6
  20. package/dist/auth-types.js.map +0 -1
  21. package/dist/config/config-validator.d.ts +0 -25
  22. package/dist/config/config-validator.d.ts.map +0 -1
  23. package/dist/config/config-validator.js +0 -112
  24. package/dist/config/config-validator.js.map +0 -1
  25. package/dist/config/config.schema.json +0 -678
  26. package/dist/config/config.types.d.ts +0 -574
  27. package/dist/config/config.types.d.ts.map +0 -1
  28. package/dist/config/config.types.js +0 -4
  29. package/dist/config/config.types.js.map +0 -1
  30. package/dist/config/configuration-error.d.ts +0 -17
  31. package/dist/config/configuration-error.d.ts.map +0 -1
  32. package/dist/config/configuration-error.js +0 -36
  33. package/dist/config/configuration-error.js.map +0 -1
  34. package/dist/config/environment-loader.d.ts +0 -98
  35. package/dist/config/environment-loader.d.ts.map +0 -1
  36. package/dist/config/environment-loader.js +0 -229
  37. package/dist/config/environment-loader.js.map +0 -1
  38. package/dist/config/environment-validator.d.ts +0 -22
  39. package/dist/config/environment-validator.d.ts.map +0 -1
  40. package/dist/config/environment-validator.js +0 -50
  41. package/dist/config/environment-validator.js.map +0 -1
  42. package/dist/config/platform-types.d.ts +0 -26
  43. package/dist/config/platform-types.d.ts.map +0 -1
  44. package/dist/config/platform-types.js +0 -28
  45. package/dist/config/platform-types.js.map +0 -1
  46. package/dist/config/project-discovery.d.ts +0 -35
  47. package/dist/config/project-discovery.d.ts.map +0 -1
  48. package/dist/config/project-discovery.js +0 -99
  49. package/dist/config/project-discovery.js.map +0 -1
  50. package/dist/creation-methods.d.ts +0 -19
  51. package/dist/creation-methods.d.ts.map +0 -1
  52. package/dist/creation-methods.js +0 -18
  53. package/dist/creation-methods.js.map +0 -1
  54. package/dist/crypto.d.ts +0 -32
  55. package/dist/crypto.d.ts.map +0 -1
  56. package/dist/crypto.js +0 -52
  57. package/dist/crypto.js.map +0 -1
  58. package/dist/did-utils.d.ts +0 -51
  59. package/dist/did-utils.d.ts.map +0 -1
  60. package/dist/did-utils.js +0 -62
  61. package/dist/did-utils.js.map +0 -1
  62. package/dist/errors.d.ts +0 -51
  63. package/dist/errors.d.ts.map +0 -1
  64. package/dist/errors.js +0 -89
  65. package/dist/errors.js.map +0 -1
  66. package/dist/events.d.ts +0 -223
  67. package/dist/events.d.ts.map +0 -1
  68. package/dist/events.js +0 -45
  69. package/dist/events.js.map +0 -1
  70. package/dist/graph.d.ts +0 -31
  71. package/dist/graph.d.ts.map +0 -1
  72. package/dist/graph.js +0 -6
  73. package/dist/graph.js.map +0 -1
  74. package/dist/http-client.d.ts +0 -32
  75. package/dist/http-client.d.ts.map +0 -1
  76. package/dist/http-client.js +0 -56
  77. package/dist/http-client.js.map +0 -1
  78. package/dist/identifiers.d.ts +0 -24
  79. package/dist/identifiers.d.ts.map +0 -1
  80. package/dist/identifiers.js +0 -40
  81. package/dist/identifiers.js.map +0 -1
  82. package/dist/index.d.ts.map +0 -1
  83. package/dist/resource-types.d.ts +0 -15
  84. package/dist/resource-types.d.ts.map +0 -1
  85. package/dist/resource-types.js +0 -6
  86. package/dist/resource-types.js.map +0 -1
  87. package/dist/type-guards.d.ts +0 -44
  88. package/dist/type-guards.d.ts.map +0 -1
  89. package/dist/type-guards.js +0 -76
  90. package/dist/type-guards.js.map +0 -1
@@ -1,258 +0,0 @@
1
- "use strict";
2
- /**
3
- * Utility functions for AnnotationHistory component
4
- * Extracted to reduce component complexity and improve testability
5
- *
6
- * NOTE: This file contains UI-specific logic and should eventually move to the frontend package.
7
- * It has been updated to work with unified annotation events (annotation.added/removed/body.updated)
8
- * instead of separate highlight/reference/assessment events.
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.formatEventType = formatEventType;
12
- exports.getEventEmoji = getEventEmoji;
13
- exports.formatRelativeTime = formatRelativeTime;
14
- exports.getEventDisplayContent = getEventDisplayContent;
15
- exports.getEventEntityTypes = getEventEntityTypes;
16
- exports.getResourceCreationDetails = getResourceCreationDetails;
17
- exports.getAnnotationIdFromEvent = getAnnotationIdFromEvent;
18
- exports.isEventRelatedToAnnotation = isEventRelatedToAnnotation;
19
- const api_client_1 = require("@semiont/api-client");
20
- // Format event type for display
21
- function formatEventType(type, t) {
22
- // Using a switch for exhaustive checking - TypeScript will error if we miss a case
23
- switch (type) {
24
- case 'resource.created':
25
- return t('resourceCreated');
26
- case 'resource.cloned':
27
- return t('resourceCloned');
28
- case 'resource.archived':
29
- return t('resourceArchived');
30
- case 'resource.unarchived':
31
- return t('resourceUnarchived');
32
- case 'annotation.added':
33
- return t('annotationAdded');
34
- case 'annotation.removed':
35
- return t('annotationRemoved');
36
- case 'annotation.body.updated':
37
- return t('annotationBodyUpdated');
38
- case 'entitytag.added':
39
- return t('entitytagAdded');
40
- case 'entitytag.removed':
41
- return t('entitytagRemoved');
42
- case 'entitytype.added':
43
- return t('entitytypeAdded');
44
- case 'job.started':
45
- return t('jobStarted');
46
- case 'job.progress':
47
- return t('jobProgress');
48
- case 'job.completed':
49
- return t('jobCompleted');
50
- case 'job.failed':
51
- return t('jobFailed');
52
- default:
53
- // Exhaustive check: if we get here, we missed a case
54
- const _exhaustiveCheck = type;
55
- return _exhaustiveCheck;
56
- }
57
- }
58
- // Get emoji for annotation based on motivation
59
- function getMotivationEmoji(motivation) {
60
- switch (motivation) {
61
- case 'highlighting':
62
- return '🟡';
63
- case 'linking':
64
- return '🔵';
65
- case 'assessing':
66
- return '🔴';
67
- case 'bookmarking':
68
- return '🔖';
69
- case 'commenting':
70
- return '💬';
71
- case 'tagging':
72
- return '🏷️';
73
- default:
74
- return '📝';
75
- }
76
- }
77
- // Get emoji for event type
78
- function getEventEmoji(type, event) {
79
- // Using a switch for exhaustive checking - TypeScript will error if we miss a case
80
- switch (type) {
81
- case 'resource.created':
82
- case 'resource.cloned':
83
- case 'resource.archived':
84
- case 'resource.unarchived':
85
- return '📄';
86
- case 'annotation.added':
87
- if (event) {
88
- const payload = event.event.payload;
89
- return getMotivationEmoji(payload.annotation.motivation);
90
- }
91
- return '📝';
92
- case 'annotation.removed':
93
- return '🗑️';
94
- case 'annotation.body.updated':
95
- return '✏️';
96
- case 'entitytag.added':
97
- case 'entitytag.removed':
98
- return '🏷️';
99
- case 'entitytype.added':
100
- return '🏷️'; // Same emoji as entitytag (global entity type collection)
101
- case 'job.started':
102
- return '▶️';
103
- case 'job.progress':
104
- return '⏳';
105
- case 'job.completed':
106
- return '✅';
107
- case 'job.failed':
108
- return '❌';
109
- default:
110
- // Exhaustive check: if we get here, we missed a case
111
- const _exhaustiveCheck = type;
112
- return _exhaustiveCheck;
113
- }
114
- }
115
- // Format relative time
116
- function formatRelativeTime(timestamp, t) {
117
- const date = new Date(timestamp);
118
- const now = new Date();
119
- const diffMs = now.getTime() - date.getTime();
120
- const diffMins = Math.floor(diffMs / 60000);
121
- const diffHours = Math.floor(diffMs / 3600000);
122
- const diffDays = Math.floor(diffMs / 86400000);
123
- if (diffMins < 1)
124
- return t('justNow');
125
- if (diffMins < 60)
126
- return t('minutesAgo', { count: diffMins });
127
- if (diffHours < 24)
128
- return t('hoursAgo', { count: diffHours });
129
- if (diffDays < 7)
130
- return t('daysAgo', { count: diffDays });
131
- return date.toLocaleDateString();
132
- }
133
- // Helper to truncate text for display
134
- function truncateText(text, maxLength = 50) {
135
- const trimmed = text.trim();
136
- return trimmed.length > maxLength ? trimmed.substring(0, maxLength) + '...' : trimmed;
137
- }
138
- // Extract display content from event payload
139
- function getEventDisplayContent(event, _references, // underscore prefix to indicate intentionally unused for now
140
- _highlights, // underscore prefix to indicate intentionally unused for now
141
- allEvents) {
142
- const eventData = event.event;
143
- // Use type discriminators instead of runtime typeof checks
144
- switch (eventData.type) {
145
- case 'resource.created':
146
- case 'resource.cloned': {
147
- const payload = eventData.payload;
148
- return { exact: payload.name, isQuoted: false, isTag: false };
149
- }
150
- case 'annotation.body.updated': {
151
- const payload = eventData.payload;
152
- // Find the original annotation.added event to get the text
153
- const addedEvent = allEvents.find(e => e.event.type === 'annotation.added' &&
154
- e.event.payload.annotation.id === payload.annotationId);
155
- if (addedEvent) {
156
- const addedPayload = addedEvent.event.payload;
157
- return { exact: truncateText((0, api_client_1.getAnnotationExactText)(addedPayload.annotation)), isQuoted: true, isTag: false };
158
- }
159
- return null;
160
- }
161
- case 'annotation.removed': {
162
- const payload = eventData.payload;
163
- // Find the original annotation.added event
164
- const addedEvent = allEvents.find(e => e.event.type === 'annotation.added' &&
165
- e.event.payload.annotation.id === payload.annotationId);
166
- if (addedEvent) {
167
- const addedPayload = addedEvent.event.payload;
168
- return { exact: truncateText((0, api_client_1.getAnnotationExactText)(addedPayload.annotation)), isQuoted: true, isTag: false };
169
- }
170
- return null;
171
- }
172
- case 'annotation.added': {
173
- const payload = eventData.payload;
174
- return { exact: truncateText((0, api_client_1.getAnnotationExactText)(payload.annotation)), isQuoted: true, isTag: false };
175
- }
176
- case 'entitytag.added':
177
- case 'entitytag.removed': {
178
- const payload = eventData.payload;
179
- return { exact: payload.entityType, isQuoted: false, isTag: true };
180
- }
181
- default:
182
- return null;
183
- }
184
- }
185
- // Extract entity types from event payload
186
- function getEventEntityTypes(event) {
187
- const eventData = event.event;
188
- if (eventData.type === 'annotation.added') {
189
- const payload = eventData.payload;
190
- // Extract entity types from W3C annotation
191
- return (0, api_client_1.getEntityTypes)(payload.annotation);
192
- }
193
- return [];
194
- }
195
- // Format user ID for display
196
- function formatUserId(userId) {
197
- // If it's a DID format (did:web:org.com:users:alice), format as alice@org.com
198
- if (userId.startsWith('did:web:')) {
199
- const parts = userId.split(':');
200
- // Format: did:web:org.com:users:alice
201
- // parts: ['did', 'web', 'org.com', 'users', 'alice']
202
- if (parts.length >= 5) {
203
- const domain = parts[2]; // org.com
204
- const username = parts[parts.length - 1]; // alice
205
- return `${username}@${domain}`;
206
- }
207
- // Fallback if format is unexpected
208
- const username = parts[parts.length - 1];
209
- return username || userId.substring(0, 8);
210
- }
211
- // Otherwise show first 8 characters of UUID
212
- return userId.substring(0, 8);
213
- }
214
- // Extract additional metadata for resource creation events
215
- function getResourceCreationDetails(event) {
216
- const eventData = event.event;
217
- if (eventData.type === 'resource.created') {
218
- const payload = eventData.payload;
219
- return {
220
- type: 'created',
221
- userId: formatUserId(eventData.userId),
222
- method: payload.creationMethod,
223
- };
224
- }
225
- if (eventData.type === 'resource.cloned') {
226
- const payload = eventData.payload;
227
- return {
228
- type: 'cloned',
229
- userId: formatUserId(eventData.userId),
230
- method: payload.creationMethod,
231
- sourceDocId: payload.parentResourceId,
232
- };
233
- }
234
- return null;
235
- }
236
- // Extract annotation ID from event payload
237
- function getAnnotationIdFromEvent(event) {
238
- const eventData = event.event;
239
- switch (eventData.type) {
240
- case 'annotation.added': {
241
- const payload = eventData.payload;
242
- return payload.annotation.id;
243
- }
244
- case 'annotation.removed':
245
- case 'annotation.body.updated': {
246
- const payload = eventData.payload;
247
- return payload.annotationId;
248
- }
249
- default:
250
- return null;
251
- }
252
- }
253
- // Check if event relates to the hovered annotation
254
- function isEventRelatedToAnnotation(event, annotationId) {
255
- const eventAnnotationId = getAnnotationIdFromEvent(event);
256
- return eventAnnotationId === annotationId;
257
- }
258
- //# sourceMappingURL=annotation-history-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"annotation-history-utils.js","sourceRoot":"","sources":["../src/annotation-history-utils.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Annotation types
3
- */
4
- import type { components } from '@semiont/api-client';
5
- type Annotation = components['schemas']['Annotation'];
6
- export type AnnotationCategory = 'highlight' | 'reference';
7
- export interface CreateAnnotationInternal {
8
- id: string;
9
- motivation: Annotation['motivation'];
10
- target: Annotation['target'];
11
- body: Annotation['body'];
12
- creator: components['schemas']['Agent'];
13
- }
14
- export {};
15
- //# sourceMappingURL=annotation-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"annotation-types.d.ts","sourceRoot":"","sources":["../src/annotation-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,KAAK,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;AAEtD,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,WAAW,CAAC;AAE3D,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;IACrC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7B,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACzB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;CACzC"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- /**
3
- * Annotation types
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- //# sourceMappingURL=annotation-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"annotation-types.js","sourceRoot":"","sources":["../src/annotation-types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -1,18 +0,0 @@
1
- /**
2
- * Backend-specific annotation utility functions
3
- */
4
- import type { components } from '@semiont/api-client';
5
- import type { BodyItem } from './events';
6
- type Annotation = components['schemas']['Annotation'];
7
- /**
8
- * Check if two body items match (for remove/replace operations)
9
- * Matches by type, value/source, and purpose fields
10
- */
11
- export declare function bodyItemsMatch(item1: BodyItem, item2: BodyItem): boolean;
12
- /**
13
- * Find a body item in an array
14
- * Returns the index of the first matching item, or -1 if not found
15
- */
16
- export declare function findBodyItem(body: Annotation['body'], targetItem: BodyItem): number;
17
- export {};
18
- //# sourceMappingURL=annotation-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"annotation-utils.d.ts","sourceRoot":"","sources":["../src/annotation-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,KAAK,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;AAEtD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO,CAsBxE;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,QAAQ,GAAG,MAAM,CA0CnF"}
@@ -1,70 +0,0 @@
1
- "use strict";
2
- /**
3
- * Backend-specific annotation utility functions
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.bodyItemsMatch = bodyItemsMatch;
7
- exports.findBodyItem = findBodyItem;
8
- /**
9
- * Check if two body items match (for remove/replace operations)
10
- * Matches by type, value/source, and purpose fields
11
- */
12
- function bodyItemsMatch(item1, item2) {
13
- // Type must match
14
- if (item1.type !== item2.type) {
15
- return false;
16
- }
17
- // Purpose must match
18
- if (item1.purpose !== item2.purpose) {
19
- return false;
20
- }
21
- // For TextualBody, match by value
22
- if (item1.type === 'TextualBody' && item2.type === 'TextualBody') {
23
- return item1.value === item2.value;
24
- }
25
- // For SpecificResource, match by source
26
- if (item1.type === 'SpecificResource' && item2.type === 'SpecificResource') {
27
- return item1.source === item2.source;
28
- }
29
- return false;
30
- }
31
- /**
32
- * Find a body item in an array
33
- * Returns the index of the first matching item, or -1 if not found
34
- */
35
- function findBodyItem(body, targetItem) {
36
- if (!Array.isArray(body)) {
37
- return -1;
38
- }
39
- for (let i = 0; i < body.length; i++) {
40
- const item = body[i];
41
- // Check if this is a valid body item that can be matched
42
- if (typeof item === 'object' &&
43
- item !== null &&
44
- 'type' in item &&
45
- 'purpose' in item) {
46
- const itemType = item.type;
47
- const itemPurpose = item.purpose;
48
- // Type and purpose must match
49
- if (itemType !== targetItem.type || itemPurpose !== targetItem.purpose) {
50
- continue;
51
- }
52
- // For TextualBody, match by value
53
- if (targetItem.type === 'TextualBody' && 'value' in item) {
54
- const itemValue = item.value;
55
- if (itemValue === targetItem.value) {
56
- return i;
57
- }
58
- }
59
- // For SpecificResource, match by source
60
- if (targetItem.type === 'SpecificResource' && 'source' in item) {
61
- const itemSource = item.source;
62
- if (itemSource === targetItem.source) {
63
- return i;
64
- }
65
- }
66
- }
67
- }
68
- return -1;
69
- }
70
- //# sourceMappingURL=annotation-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"annotation-utils.js","sourceRoot":"","sources":["../src/annotation-utils.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAWH,wCAsBC;AAMD,oCA0CC;AA1ED;;;GAGG;AACH,SAAgB,cAAc,CAAC,KAAe,EAAE,KAAe;IAC7D,kBAAkB;IAClB,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qBAAqB;IACrB,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kCAAkC;IAClC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACjE,OAAO,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC;IACrC,CAAC;IAED,wCAAwC;IACxC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;IACvC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,IAAwB,EAAE,UAAoB;IACzE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAErB,yDAAyD;QACzD,IACE,OAAO,IAAI,KAAK,QAAQ;YACxB,IAAI,KAAK,IAAI;YACb,MAAM,IAAI,IAAI;YACd,SAAS,IAAI,IAAI,EACjB,CAAC;YACD,MAAM,QAAQ,GAAI,IAA0B,CAAC,IAAI,CAAC;YAClD,MAAM,WAAW,GAAI,IAA6B,CAAC,OAAO,CAAC;YAE3D,8BAA8B;YAC9B,IAAI,QAAQ,KAAK,UAAU,CAAC,IAAI,IAAI,WAAW,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvE,SAAS;YACX,CAAC;YAED,kCAAkC;YAClC,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACzD,MAAM,SAAS,GAAI,IAA2B,CAAC,KAAK,CAAC;gBACrD,IAAI,SAAS,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC;oBACnC,OAAO,CAAC,CAAC;gBACX,CAAC;YACH,CAAC;YAED,wCAAwC;YACxC,IAAI,UAAU,CAAC,IAAI,KAAK,kBAAkB,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;gBAC/D,MAAM,UAAU,GAAI,IAA4B,CAAC,MAAM,CAAC;gBACxD,IAAI,UAAU,KAAK,UAAU,CAAC,MAAM,EAAE,CAAC;oBACrC,OAAO,CAAC,CAAC;gBACX,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Auth types
3
- */
4
- export interface GoogleAuthRequest {
5
- credential: string;
6
- termsAccepted: boolean;
7
- }
8
- //# sourceMappingURL=auth-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-types.d.ts","sourceRoot":"","sources":["../src/auth-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;CACxB"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- /**
3
- * Auth types
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- //# sourceMappingURL=auth-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-types.js","sourceRoot":"","sources":["../src/auth-types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -1,25 +0,0 @@
1
- /**
2
- * Config Schema Validator
3
- *
4
- * Validates configuration data against JSON Schema using Ajv (JSON Schema validator).
5
- * Provides runtime validation for semiont.json and environment config files.
6
- */
7
- import { type ErrorObject } from 'ajv';
8
- export interface ValidationResult {
9
- valid: boolean;
10
- errors: ErrorObject[] | null;
11
- errorMessage?: string;
12
- }
13
- /**
14
- * Validate semiont.json config
15
- */
16
- export declare function validateSemiontConfig(data: unknown): ValidationResult;
17
- /**
18
- * Validate environment config (environments/*.json)
19
- */
20
- export declare function validateEnvironmentConfig(data: unknown): ValidationResult;
21
- /**
22
- * Validate site config
23
- */
24
- export declare function validateSiteConfig(data: unknown): ValidationResult;
25
- //# sourceMappingURL=config-validator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-validator.d.ts","sourceRoot":"","sources":["../../src/config/config-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAY,EAAE,KAAK,WAAW,EAAE,MAAM,KAAK,CAAC;AAmB5C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAiBrE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAiBzE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAiBlE"}
@@ -1,112 +0,0 @@
1
- "use strict";
2
- /**
3
- * Config Schema Validator
4
- *
5
- * Validates configuration data against JSON Schema using Ajv (JSON Schema validator).
6
- * Provides runtime validation for semiont.json and environment config files.
7
- */
8
- var __importDefault = (this && this.__importDefault) || function (mod) {
9
- return (mod && mod.__esModule) ? mod : { "default": mod };
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.validateSemiontConfig = validateSemiontConfig;
13
- exports.validateEnvironmentConfig = validateEnvironmentConfig;
14
- exports.validateSiteConfig = validateSiteConfig;
15
- const ajv_1 = __importDefault(require("ajv"));
16
- const ajv_formats_1 = __importDefault(require("ajv-formats"));
17
- const config_schema_json_1 = __importDefault(require("./config.schema.json"));
18
- // Initialize Ajv with config-compatible settings
19
- const ajv = new ajv_1.default({
20
- allErrors: true, // Return all errors, not just the first one
21
- coerceTypes: true, // Coerce types (e.g., "123" -> 123)
22
- removeAdditional: false, // Don't remove additional properties
23
- useDefaults: true, // Apply default values from schema
24
- strict: false
25
- });
26
- // Add format validators (email, uri, date-time, etc.)
27
- (0, ajv_formats_1.default)(ajv);
28
- // Load schema
29
- ajv.addSchema(config_schema_json_1.default, 'config');
30
- /**
31
- * Validate semiont.json config
32
- */
33
- function validateSemiontConfig(data) {
34
- const validate = ajv.getSchema('config#/definitions/SemiontConfig');
35
- if (!validate) {
36
- throw new Error('SemiontConfig schema not found');
37
- }
38
- const valid = validate(data);
39
- if (!valid) {
40
- return {
41
- valid: false,
42
- errors: validate.errors || null,
43
- errorMessage: formatErrors(validate.errors || [])
44
- };
45
- }
46
- return { valid: true, errors: null };
47
- }
48
- /**
49
- * Validate environment config (environments/*.json)
50
- */
51
- function validateEnvironmentConfig(data) {
52
- const validate = ajv.getSchema('config#/definitions/EnvironmentConfig');
53
- if (!validate) {
54
- throw new Error('EnvironmentConfig schema not found');
55
- }
56
- const valid = validate(data);
57
- if (!valid) {
58
- return {
59
- valid: false,
60
- errors: validate.errors || null,
61
- errorMessage: formatErrors(validate.errors || [])
62
- };
63
- }
64
- return { valid: true, errors: null };
65
- }
66
- /**
67
- * Validate site config
68
- */
69
- function validateSiteConfig(data) {
70
- const validate = ajv.getSchema('config#/definitions/SiteConfig');
71
- if (!validate) {
72
- throw new Error('SiteConfig schema not found');
73
- }
74
- const valid = validate(data);
75
- if (!valid) {
76
- return {
77
- valid: false,
78
- errors: validate.errors || null,
79
- errorMessage: formatErrors(validate.errors || [])
80
- };
81
- }
82
- return { valid: true, errors: null };
83
- }
84
- /**
85
- * Format validation errors into human-readable message
86
- */
87
- function formatErrors(errors) {
88
- if (errors.length === 0)
89
- return 'Validation failed';
90
- const messages = errors.map(err => {
91
- const path = err.instancePath || 'root';
92
- const message = err.message || 'validation error';
93
- if (err.keyword === 'required' && 'missingProperty' in err.params) {
94
- return `Missing required property: ${err.params.missingProperty}`;
95
- }
96
- if (err.keyword === 'type' && 'type' in err.params) {
97
- return `${path}: ${message} (expected ${err.params.type})`;
98
- }
99
- if (err.keyword === 'enum' && 'allowedValues' in err.params) {
100
- return `${path}: must be one of [${err.params.allowedValues.join(', ')}]`;
101
- }
102
- if (err.keyword === 'format') {
103
- return `${path}: invalid format (${message})`;
104
- }
105
- if (err.keyword === 'minLength' || err.keyword === 'minItems') {
106
- return `${path}: ${message}`;
107
- }
108
- return `${path}: ${message}`;
109
- });
110
- return messages.join('; ');
111
- }
112
- //# sourceMappingURL=config-validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../src/config/config-validator.ts"],"names":[],"mappings":"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"}