promidas 2.0.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.
- package/LICENSE +21 -0
- package/README.md +179 -0
- package/dist/builder.d.ts +158 -0
- package/dist/builder.d.ts.map +1 -0
- package/dist/builder.js +255 -0
- package/dist/builder.js.map +1 -0
- package/dist/factory.d.ts +154 -0
- package/dist/factory.d.ts.map +1 -0
- package/dist/factory.js +243 -0
- package/dist/factory.js.map +1 -0
- package/dist/fetcher/client/config.d.ts +140 -0
- package/dist/fetcher/client/config.d.ts.map +1 -0
- package/dist/fetcher/client/config.js +2 -0
- package/dist/fetcher/client/config.js.map +1 -0
- package/dist/fetcher/client/fetch-with-progress.d.ts +156 -0
- package/dist/fetcher/client/fetch-with-progress.d.ts.map +1 -0
- package/dist/fetcher/client/fetch-with-progress.js +313 -0
- package/dist/fetcher/client/fetch-with-progress.js.map +1 -0
- package/dist/fetcher/client/fetch-with-timeout.d.ts +6 -0
- package/dist/fetcher/client/fetch-with-timeout.d.ts.map +1 -0
- package/dist/fetcher/client/fetch-with-timeout.js +48 -0
- package/dist/fetcher/client/fetch-with-timeout.js.map +1 -0
- package/dist/fetcher/client/protopedia-api-custom-client.d.ts +141 -0
- package/dist/fetcher/client/protopedia-api-custom-client.d.ts.map +1 -0
- package/dist/fetcher/client/protopedia-api-custom-client.js +268 -0
- package/dist/fetcher/client/protopedia-api-custom-client.js.map +1 -0
- package/dist/fetcher/client/select-custom-fetch.d.ts +58 -0
- package/dist/fetcher/client/select-custom-fetch.d.ts.map +1 -0
- package/dist/fetcher/client/select-custom-fetch.js +58 -0
- package/dist/fetcher/client/select-custom-fetch.js.map +1 -0
- package/dist/fetcher/errors/fetcher-error.d.ts +10 -0
- package/dist/fetcher/errors/fetcher-error.d.ts.map +1 -0
- package/dist/fetcher/errors/fetcher-error.js +15 -0
- package/dist/fetcher/errors/fetcher-error.js.map +1 -0
- package/dist/fetcher/index.d.ts +73 -0
- package/dist/fetcher/index.d.ts.map +1 -0
- package/dist/fetcher/index.js +70 -0
- package/dist/fetcher/index.js.map +1 -0
- package/dist/fetcher/types/index.d.ts +9 -0
- package/dist/fetcher/types/index.d.ts.map +1 -0
- package/dist/fetcher/types/index.js +7 -0
- package/dist/fetcher/types/index.js.map +1 -0
- package/dist/fetcher/types/progress-event.types.d.ts +221 -0
- package/dist/fetcher/types/progress-event.types.d.ts.map +1 -0
- package/dist/fetcher/types/progress-event.types.js +10 -0
- package/dist/fetcher/types/progress-event.types.js.map +1 -0
- package/dist/fetcher/types/prototype-api.types.d.ts +106 -0
- package/dist/fetcher/types/prototype-api.types.d.ts.map +1 -0
- package/dist/fetcher/types/prototype-api.types.js +2 -0
- package/dist/fetcher/types/prototype-api.types.js.map +1 -0
- package/dist/fetcher/types/result.types.d.ts +75 -0
- package/dist/fetcher/types/result.types.d.ts.map +1 -0
- package/dist/fetcher/types/result.types.js +2 -0
- package/dist/fetcher/types/result.types.js.map +1 -0
- package/dist/fetcher/utils/create-client-fetch.d.ts +63 -0
- package/dist/fetcher/utils/create-client-fetch.d.ts.map +1 -0
- package/dist/fetcher/utils/create-client-fetch.js +89 -0
- package/dist/fetcher/utils/create-client-fetch.js.map +1 -0
- package/dist/fetcher/utils/create-fetch-with-stripped-headers.d.ts +6 -0
- package/dist/fetcher/utils/create-fetch-with-stripped-headers.d.ts.map +1 -0
- package/dist/fetcher/utils/create-fetch-with-stripped-headers.js +40 -0
- package/dist/fetcher/utils/create-fetch-with-stripped-headers.js.map +1 -0
- package/dist/fetcher/utils/errors/handler.d.ts +58 -0
- package/dist/fetcher/utils/errors/handler.d.ts.map +1 -0
- package/dist/fetcher/utils/errors/handler.js +243 -0
- package/dist/fetcher/utils/errors/handler.js.map +1 -0
- package/dist/fetcher/utils/errors/messages.d.ts +75 -0
- package/dist/fetcher/utils/errors/messages.d.ts.map +1 -0
- package/dist/fetcher/utils/errors/messages.js +88 -0
- package/dist/fetcher/utils/errors/messages.js.map +1 -0
- package/dist/fetcher/utils/index.d.ts +13 -0
- package/dist/fetcher/utils/index.d.ts.map +1 -0
- package/dist/fetcher/utils/index.js +12 -0
- package/dist/fetcher/utils/index.js.map +1 -0
- package/dist/fetcher/utils/log-timestamp-normalization-warnings.d.ts +10 -0
- package/dist/fetcher/utils/log-timestamp-normalization-warnings.d.ts.map +1 -0
- package/dist/fetcher/utils/log-timestamp-normalization-warnings.js +32 -0
- package/dist/fetcher/utils/log-timestamp-normalization-warnings.js.map +1 -0
- package/dist/fetcher/utils/normalize-protopedia-timestamp.d.ts +59 -0
- package/dist/fetcher/utils/normalize-protopedia-timestamp.d.ts.map +1 -0
- package/dist/fetcher/utils/normalize-protopedia-timestamp.js +81 -0
- package/dist/fetcher/utils/normalize-protopedia-timestamp.js.map +1 -0
- package/dist/fetcher/utils/normalize-prototype.d.ts +56 -0
- package/dist/fetcher/utils/normalize-prototype.d.ts.map +1 -0
- package/dist/fetcher/utils/normalize-prototype.js +113 -0
- package/dist/fetcher/utils/normalize-prototype.js.map +1 -0
- package/dist/fetcher/utils/sanitize-options.d.ts +14 -0
- package/dist/fetcher/utils/sanitize-options.d.ts.map +1 -0
- package/dist/fetcher/utils/sanitize-options.js +16 -0
- package/dist/fetcher/utils/sanitize-options.js.map +1 -0
- package/dist/fetcher/utils/string-parsers.d.ts +45 -0
- package/dist/fetcher/utils/string-parsers.d.ts.map +1 -0
- package/dist/fetcher/utils/string-parsers.js +53 -0
- package/dist/fetcher/utils/string-parsers.js.map +1 -0
- package/dist/index.d.ts +66 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +70 -0
- package/dist/index.js.map +1 -0
- package/dist/logger/console-logger.d.ts +74 -0
- package/dist/logger/console-logger.d.ts.map +1 -0
- package/dist/logger/console-logger.js +113 -0
- package/dist/logger/console-logger.js.map +1 -0
- package/dist/logger/factory.d.ts +88 -0
- package/dist/logger/factory.d.ts.map +1 -0
- package/dist/logger/factory.js +94 -0
- package/dist/logger/factory.js.map +1 -0
- package/dist/logger/index.d.ts +42 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js +41 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/logger.types.d.ts +49 -0
- package/dist/logger/logger.types.d.ts.map +1 -0
- package/dist/logger/logger.types.js +2 -0
- package/dist/logger/logger.types.js.map +1 -0
- package/dist/repository/errors/validation-error.d.ts +24 -0
- package/dist/repository/errors/validation-error.d.ts.map +1 -0
- package/dist/repository/errors/validation-error.js +26 -0
- package/dist/repository/errors/validation-error.js.map +1 -0
- package/dist/repository/index.d.ts +122 -0
- package/dist/repository/index.d.ts.map +1 -0
- package/dist/repository/index.js +44 -0
- package/dist/repository/index.js.map +1 -0
- package/dist/repository/protopedia-in-memory-repository.d.ts +560 -0
- package/dist/repository/protopedia-in-memory-repository.d.ts.map +1 -0
- package/dist/repository/protopedia-in-memory-repository.js +929 -0
- package/dist/repository/protopedia-in-memory-repository.js.map +1 -0
- package/dist/repository/schemas/index.d.ts +9 -0
- package/dist/repository/schemas/index.d.ts.map +1 -0
- package/dist/repository/schemas/index.js +11 -0
- package/dist/repository/schemas/index.js.map +1 -0
- package/dist/repository/schemas/params.d.ts +44 -0
- package/dist/repository/schemas/params.d.ts.map +1 -0
- package/dist/repository/schemas/params.js +44 -0
- package/dist/repository/schemas/params.js.map +1 -0
- package/dist/repository/schemas/serializable-snapshot.d.ts +33 -0
- package/dist/repository/schemas/serializable-snapshot.d.ts.map +1 -0
- package/dist/repository/schemas/serializable-snapshot.js +45 -0
- package/dist/repository/schemas/serializable-snapshot.js.map +1 -0
- package/dist/repository/types/analysis.types.d.ts +89 -0
- package/dist/repository/types/analysis.types.d.ts.map +1 -0
- package/dist/repository/types/analysis.types.js +2 -0
- package/dist/repository/types/analysis.types.js.map +1 -0
- package/dist/repository/types/index.d.ts +12 -0
- package/dist/repository/types/index.d.ts.map +1 -0
- package/dist/repository/types/index.js +7 -0
- package/dist/repository/types/index.js.map +1 -0
- package/dist/repository/types/repository-events.types.d.ts +110 -0
- package/dist/repository/types/repository-events.types.d.ts.map +1 -0
- package/dist/repository/types/repository-events.types.js +2 -0
- package/dist/repository/types/repository-events.types.js.map +1 -0
- package/dist/repository/types/repository.types.d.ts +330 -0
- package/dist/repository/types/repository.types.d.ts.map +1 -0
- package/dist/repository/types/repository.types.js +2 -0
- package/dist/repository/types/repository.types.js.map +1 -0
- package/dist/repository/types/result.types.d.ts +55 -0
- package/dist/repository/types/result.types.d.ts.map +1 -0
- package/dist/repository/types/result.types.js +2 -0
- package/dist/repository/types/result.types.js.map +1 -0
- package/dist/repository/types/serialization.types.d.ts +61 -0
- package/dist/repository/types/serialization.types.d.ts.map +1 -0
- package/dist/repository/types/serialization.types.js +2 -0
- package/dist/repository/types/serialization.types.js.map +1 -0
- package/dist/repository/types/snapshot-operation.types.d.ts +140 -0
- package/dist/repository/types/snapshot-operation.types.d.ts.map +1 -0
- package/dist/repository/types/snapshot-operation.types.js +2 -0
- package/dist/repository/types/snapshot-operation.types.js.map +1 -0
- package/dist/repository/utils/convert-fetch-result.d.ts +46 -0
- package/dist/repository/utils/convert-fetch-result.d.ts.map +1 -0
- package/dist/repository/utils/convert-fetch-result.js +59 -0
- package/dist/repository/utils/convert-fetch-result.js.map +1 -0
- package/dist/repository/utils/convert-store-result.d.ts +36 -0
- package/dist/repository/utils/convert-store-result.d.ts.map +1 -0
- package/dist/repository/utils/convert-store-result.js +36 -0
- package/dist/repository/utils/convert-store-result.js.map +1 -0
- package/dist/repository/utils/emit-repository-event-safely.d.ts +5 -0
- package/dist/repository/utils/emit-repository-event-safely.d.ts.map +1 -0
- package/dist/repository/utils/emit-repository-event-safely.js +17 -0
- package/dist/repository/utils/emit-repository-event-safely.js.map +1 -0
- package/dist/repository/utils/index.d.ts +3 -0
- package/dist/repository/utils/index.d.ts.map +1 -0
- package/dist/repository/utils/index.js +3 -0
- package/dist/repository/utils/index.js.map +1 -0
- package/dist/repository/validation/index.d.ts +9 -0
- package/dist/repository/validation/index.d.ts.map +1 -0
- package/dist/repository/validation/index.js +10 -0
- package/dist/repository/validation/index.js.map +1 -0
- package/dist/repository/validation/params-validators.d.ts +46 -0
- package/dist/repository/validation/params-validators.d.ts.map +1 -0
- package/dist/repository/validation/params-validators.js +68 -0
- package/dist/repository/validation/params-validators.js.map +1 -0
- package/dist/repository/validation/serializable-snapshot.d.ts +47 -0
- package/dist/repository/validation/serializable-snapshot.d.ts.map +1 -0
- package/dist/repository/validation/serializable-snapshot.js +104 -0
- package/dist/repository/validation/serializable-snapshot.js.map +1 -0
- package/dist/schemas/index.d.ts +8 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +8 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/normalized-prototype.d.ts +56 -0
- package/dist/schemas/normalized-prototype.d.ts.map +1 -0
- package/dist/schemas/normalized-prototype.js +123 -0
- package/dist/schemas/normalized-prototype.js.map +1 -0
- package/dist/store/errors/store-error.d.ts +148 -0
- package/dist/store/errors/store-error.d.ts.map +1 -0
- package/dist/store/errors/store-error.js +156 -0
- package/dist/store/errors/store-error.js.map +1 -0
- package/dist/store/index.d.ts +84 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +83 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/store.d.ts +295 -0
- package/dist/store/store.d.ts.map +1 -0
- package/dist/store/store.js +411 -0
- package/dist/store/store.js.map +1 -0
- package/dist/store/types/index.d.ts +2 -0
- package/dist/store/types/index.d.ts.map +1 -0
- package/dist/store/types/index.js +2 -0
- package/dist/store/types/index.js.map +1 -0
- package/dist/store/types/result.types.d.ts +67 -0
- package/dist/store/types/result.types.d.ts.map +1 -0
- package/dist/store/types/result.types.js +2 -0
- package/dist/store/types/result.types.js.map +1 -0
- package/dist/types/codes.d.ts +44 -0
- package/dist/types/codes.d.ts.map +1 -0
- package/dist/types/codes.js +9 -0
- package/dist/types/codes.js.map +1 -0
- package/dist/types/index.d.ts +61 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +60 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/normalized-prototype.d.ts +95 -0
- package/dist/types/normalized-prototype.d.ts.map +1 -0
- package/dist/types/normalized-prototype.js +2 -0
- package/dist/types/normalized-prototype.js.map +1 -0
- package/dist/utils/converters/index.d.ts +15 -0
- package/dist/utils/converters/index.d.ts.map +1 -0
- package/dist/utils/converters/index.js +15 -0
- package/dist/utils/converters/index.js.map +1 -0
- package/dist/utils/converters/license-type.d.ts +23 -0
- package/dist/utils/converters/license-type.d.ts.map +1 -0
- package/dist/utils/converters/license-type.js +38 -0
- package/dist/utils/converters/license-type.js.map +1 -0
- package/dist/utils/converters/release-flag.d.ts +24 -0
- package/dist/utils/converters/release-flag.d.ts.map +1 -0
- package/dist/utils/converters/release-flag.js +40 -0
- package/dist/utils/converters/release-flag.js.map +1 -0
- package/dist/utils/converters/status.d.ts +23 -0
- package/dist/utils/converters/status.d.ts.map +1 -0
- package/dist/utils/converters/status.js +40 -0
- package/dist/utils/converters/status.js.map +1 -0
- package/dist/utils/converters/thanks-flag.d.ts +25 -0
- package/dist/utils/converters/thanks-flag.d.ts.map +1 -0
- package/dist/utils/converters/thanks-flag.js +41 -0
- package/dist/utils/converters/thanks-flag.js.map +1 -0
- package/dist/utils/deep-merge.d.ts +38 -0
- package/dist/utils/deep-merge.d.ts.map +1 -0
- package/dist/utils/deep-merge.js +85 -0
- package/dist/utils/deep-merge.js.map +1 -0
- package/dist/utils/index.d.ts +80 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +85 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger-utils.d.ts +100 -0
- package/dist/utils/logger-utils.d.ts.map +1 -0
- package/dist/utils/logger-utils.js +265 -0
- package/dist/utils/logger-utils.js.map +1 -0
- package/dist/utils/time/constants.d.ts +14 -0
- package/dist/utils/time/constants.d.ts.map +1 -0
- package/dist/utils/time/constants.js +14 -0
- package/dist/utils/time/constants.js.map +1 -0
- package/dist/utils/time/index.d.ts +28 -0
- package/dist/utils/time/index.d.ts.map +1 -0
- package/dist/utils/time/index.js +28 -0
- package/dist/utils/time/index.js.map +1 -0
- package/dist/utils/time/parser.d.ts +91 -0
- package/dist/utils/time/parser.d.ts.map +1 -0
- package/dist/utils/time/parser.js +143 -0
- package/dist/utils/time/parser.js.map +1 -0
- package/dist/utils/validation/index.d.ts +8 -0
- package/dist/utils/validation/index.d.ts.map +1 -0
- package/dist/utils/validation/index.js +7 -0
- package/dist/utils/validation/index.js.map +1 -0
- package/dist/utils/validation/normalized-prototype.d.ts +64 -0
- package/dist/utils/validation/normalized-prototype.d.ts.map +1 -0
- package/dist/utils/validation/normalized-prototype.js +97 -0
- package/dist/utils/validation/normalized-prototype.js.map +1 -0
- package/dist/utils/validation/types.d.ts +62 -0
- package/dist/utils/validation/types.d.ts.map +1 -0
- package/dist/utils/validation/types.js +8 -0
- package/dist/utils/validation/types.js.map +1 -0
- package/dist/version.d.ts +6 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +6 -0
- package/dist/version.js.map +1 -0
- package/package.json +138 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protopedia-in-memory-repository.js","sourceRoot":"","sources":["../../lib/repository/protopedia-in-memory-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repository validation schemas.
|
|
3
|
+
*
|
|
4
|
+
* This module provides Zod schemas for validating repository method parameters
|
|
5
|
+
* and snapshot data structures.
|
|
6
|
+
*/
|
|
7
|
+
export { prototypeIdSchema, sampleSizeSchema } from './params.js';
|
|
8
|
+
export { serializedAtSchema, versionSchema } from './serializable-snapshot.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/repository/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGlE,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repository validation schemas.
|
|
3
|
+
*
|
|
4
|
+
* This module provides Zod schemas for validating repository method parameters
|
|
5
|
+
* and snapshot data structures.
|
|
6
|
+
*/
|
|
7
|
+
// Parameter validation schemas
|
|
8
|
+
export { prototypeIdSchema, sampleSizeSchema } from './params.js';
|
|
9
|
+
// Snapshot serialization schemas
|
|
10
|
+
export { serializedAtSchema, versionSchema } from './serializable-snapshot.js';
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/repository/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+BAA+B;AAC/B,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAElE,iCAAiC;AACjC,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation schemas for repository operations.
|
|
3
|
+
*
|
|
4
|
+
* This module provides Zod schemas for validating both method parameters
|
|
5
|
+
* and data structures at runtime.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
/**
|
|
9
|
+
* Validation schema for prototype ID.
|
|
10
|
+
* Must be a positive integer (1, 2, 3, ...).
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* ID 0 is not valid for ProtoPedia prototypes. All valid prototype IDs
|
|
14
|
+
* are positive integers starting from 1.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* prototypeIdSchema.parse(123); // ✅ Valid
|
|
19
|
+
* prototypeIdSchema.parse(1); // ✅ Valid
|
|
20
|
+
* prototypeIdSchema.parse(0); // ❌ ZodError: too_small
|
|
21
|
+
* prototypeIdSchema.parse(-1); // ❌ ZodError: too_small
|
|
22
|
+
* prototypeIdSchema.parse(1.5); // ❌ ZodError: invalid_type
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare const prototypeIdSchema: z.ZodNumber;
|
|
26
|
+
/**
|
|
27
|
+
* Validation schema for sample size.
|
|
28
|
+
* Must be an integer (can be negative, zero, or positive).
|
|
29
|
+
*
|
|
30
|
+
* Negative values are handled by the caller logic as returning empty array.
|
|
31
|
+
* This allows for flexible API usage where negative sizes are semantically
|
|
32
|
+
* equivalent to zero (no samples).
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```ts
|
|
36
|
+
* sampleSizeSchema.parse(10); // ✅ Valid
|
|
37
|
+
* sampleSizeSchema.parse(0); // ✅ Valid
|
|
38
|
+
* sampleSizeSchema.parse(-5); // ✅ Valid (handled as 0 by caller)
|
|
39
|
+
* sampleSizeSchema.parse(1.5); // ❌ ZodError: invalid_type
|
|
40
|
+
* sampleSizeSchema.parse(NaN); // ❌ ZodError: invalid_type
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare const sampleSizeSchema: z.ZodNumber;
|
|
44
|
+
//# sourceMappingURL=params.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../../lib/repository/schemas/params.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,iBAAiB,aAA8B,CAAC;AAE7D;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,gBAAgB,aAAmB,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation schemas for repository operations.
|
|
3
|
+
*
|
|
4
|
+
* This module provides Zod schemas for validating both method parameters
|
|
5
|
+
* and data structures at runtime.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
/**
|
|
9
|
+
* Validation schema for prototype ID.
|
|
10
|
+
* Must be a positive integer (1, 2, 3, ...).
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* ID 0 is not valid for ProtoPedia prototypes. All valid prototype IDs
|
|
14
|
+
* are positive integers starting from 1.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* prototypeIdSchema.parse(123); // ✅ Valid
|
|
19
|
+
* prototypeIdSchema.parse(1); // ✅ Valid
|
|
20
|
+
* prototypeIdSchema.parse(0); // ❌ ZodError: too_small
|
|
21
|
+
* prototypeIdSchema.parse(-1); // ❌ ZodError: too_small
|
|
22
|
+
* prototypeIdSchema.parse(1.5); // ❌ ZodError: invalid_type
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export const prototypeIdSchema = z.number().int().positive();
|
|
26
|
+
/**
|
|
27
|
+
* Validation schema for sample size.
|
|
28
|
+
* Must be an integer (can be negative, zero, or positive).
|
|
29
|
+
*
|
|
30
|
+
* Negative values are handled by the caller logic as returning empty array.
|
|
31
|
+
* This allows for flexible API usage where negative sizes are semantically
|
|
32
|
+
* equivalent to zero (no samples).
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```ts
|
|
36
|
+
* sampleSizeSchema.parse(10); // ✅ Valid
|
|
37
|
+
* sampleSizeSchema.parse(0); // ✅ Valid
|
|
38
|
+
* sampleSizeSchema.parse(-5); // ✅ Valid (handled as 0 by caller)
|
|
39
|
+
* sampleSizeSchema.parse(1.5); // ❌ ZodError: invalid_type
|
|
40
|
+
* sampleSizeSchema.parse(NaN); // ❌ ZodError: invalid_type
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export const sampleSizeSchema = z.number().int();
|
|
44
|
+
//# sourceMappingURL=params.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"params.js","sourceRoot":"","sources":["../../../lib/repository/schemas/params.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAE7D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation schemas for serializable snapshot data.
|
|
3
|
+
*
|
|
4
|
+
* This module provides Zod schemas for validating snapshot serialization
|
|
5
|
+
* metadata fields (version and timestamp).
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
/**
|
|
9
|
+
* Validation schema for semantic version strings.
|
|
10
|
+
* Must follow semver format (e.g., "1.0.0").
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* versionSchema.parse("1.0.0"); // ✅ Valid
|
|
15
|
+
* versionSchema.parse("2.15.43"); // ✅ Valid
|
|
16
|
+
* versionSchema.parse("v1.0.0"); // ❌ ZodError: invalid_string
|
|
17
|
+
* versionSchema.parse("1.0"); // ❌ ZodError: invalid_string
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare const versionSchema: z.ZodString;
|
|
21
|
+
/**
|
|
22
|
+
* Validation schema for ISO-8601 UTC datetime strings.
|
|
23
|
+
* Must follow format: "YYYY-MM-DDTHH:mm:ss.sssZ"
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* serializedAtSchema.parse("2024-01-12T10:30:00.000Z"); // ✅ Valid
|
|
28
|
+
* serializedAtSchema.parse("2024-01-12T10:30:00Z"); // ❌ Missing milliseconds
|
|
29
|
+
* serializedAtSchema.parse("2024-01-12 10:30:00"); // ❌ Not ISO-8601
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare const serializedAtSchema: z.ZodString;
|
|
33
|
+
//# sourceMappingURL=serializable-snapshot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializable-snapshot.d.ts","sourceRoot":"","sources":["../../../lib/repository/schemas/serializable-snapshot.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,aAExB,CAAC;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,aAa5B,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation schemas for serializable snapshot data.
|
|
3
|
+
*
|
|
4
|
+
* This module provides Zod schemas for validating snapshot serialization
|
|
5
|
+
* metadata fields (version and timestamp).
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
/**
|
|
9
|
+
* Validation schema for semantic version strings.
|
|
10
|
+
* Must follow semver format (e.g., "1.0.0").
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* versionSchema.parse("1.0.0"); // ✅ Valid
|
|
15
|
+
* versionSchema.parse("2.15.43"); // ✅ Valid
|
|
16
|
+
* versionSchema.parse("v1.0.0"); // ❌ ZodError: invalid_string
|
|
17
|
+
* versionSchema.parse("1.0"); // ❌ ZodError: invalid_string
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export const versionSchema = z.string().regex(/^\d+\.\d+\.\d+$/, {
|
|
21
|
+
message: 'Version must be in semver format (e.g., "1.0.0")',
|
|
22
|
+
});
|
|
23
|
+
/**
|
|
24
|
+
* Validation schema for ISO-8601 UTC datetime strings.
|
|
25
|
+
* Must follow format: "YYYY-MM-DDTHH:mm:ss.sssZ"
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```ts
|
|
29
|
+
* serializedAtSchema.parse("2024-01-12T10:30:00.000Z"); // ✅ Valid
|
|
30
|
+
* serializedAtSchema.parse("2024-01-12T10:30:00Z"); // ❌ Missing milliseconds
|
|
31
|
+
* serializedAtSchema.parse("2024-01-12 10:30:00"); // ❌ Not ISO-8601
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export const serializedAtSchema = z
|
|
35
|
+
.string()
|
|
36
|
+
.regex(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/, {
|
|
37
|
+
message: 'serializedAt must be ISO-8601 UTC timestamp',
|
|
38
|
+
})
|
|
39
|
+
.refine((value) => {
|
|
40
|
+
const date = new Date(value);
|
|
41
|
+
return !isNaN(date.getTime()) && date.toISOString() === value;
|
|
42
|
+
}, {
|
|
43
|
+
message: 'serializedAt must be a valid datetime',
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=serializable-snapshot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializable-snapshot.js","sourceRoot":"","sources":["../../../lib/repository/schemas/serializable-snapshot.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE;IAC/D,OAAO,EAAE,kDAAkD;CAC5D,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,EAAE;KACR,KAAK,CAAC,+CAA+C,EAAE;IACtD,OAAO,EAAE,6CAA6C;CACvD,CAAC;KACD,MAAM,CACL,CAAC,KAAK,EAAE,EAAE;IACR,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;AAChE,CAAC,EACD;IACE,OAAO,EAAE,uCAAuC;CACjD,CACF,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Result of analyzing prototypes to extract ID range.
|
|
3
|
+
*
|
|
4
|
+
* Used by {@link ProtopediaInMemoryRepository.analyzePrototypes} to return
|
|
5
|
+
* the minimum and maximum prototype IDs from the current snapshot.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const { min, max } = await repo.analyzePrototypes();
|
|
10
|
+
* if (min !== null && max !== null) {
|
|
11
|
+
* console.log(`Prototype ID range: ${min} - ${max}`);
|
|
12
|
+
* }
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export type PrototypeAnalysisResult = {
|
|
16
|
+
/** Minimum prototype ID, or null if no prototypes exist in snapshot. */
|
|
17
|
+
min: number | null;
|
|
18
|
+
/** Maximum prototype ID, or null if no prototypes exist in snapshot. */
|
|
19
|
+
max: number | null;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Numeric field statistics.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* const stats: NumericStats = { total: 15000, avg: 15, min: 0, max: 500 };
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export type NumericStats = {
|
|
30
|
+
/** Sum of all values */
|
|
31
|
+
total: number;
|
|
32
|
+
/** Average (mean) value */
|
|
33
|
+
avg: number;
|
|
34
|
+
/** Minimum value */
|
|
35
|
+
min: number;
|
|
36
|
+
/** Maximum value */
|
|
37
|
+
max: number;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Tag or label with its occurrence count.
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```typescript
|
|
44
|
+
* const tag: TagCount = { name: 'Arduino', count: 150 };
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export type TagCount = {
|
|
48
|
+
/** Tag name */
|
|
49
|
+
name: string;
|
|
50
|
+
/** Number of occurrences */
|
|
51
|
+
count: number;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Extended statistics from analyzing prototypes in the snapshot.
|
|
55
|
+
*
|
|
56
|
+
* All statistics are based on the current snapshot data only.
|
|
57
|
+
* Does not represent 全 ProtoPedia data.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```typescript
|
|
61
|
+
* const stats = await repo.analyzePrototypesExtended();
|
|
62
|
+
* console.log(`Total prototypes: ${stats.count}`);
|
|
63
|
+
* console.log(`Unique tags: ${stats.uniqueTags}`);
|
|
64
|
+
* console.log(`Top tag: ${stats.topTags[0]?.name} (${stats.topTags[0]?.count})`);
|
|
65
|
+
* console.log(`Avg views: ${stats.viewCount.avg}`);
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
export type ExtendedAnalysisResult = {
|
|
69
|
+
/** Total number of prototypes in snapshot */
|
|
70
|
+
count: number;
|
|
71
|
+
/** ID range (same as PrototypeAnalysisResult) */
|
|
72
|
+
idRange: {
|
|
73
|
+
min: number | null;
|
|
74
|
+
max: number | null;
|
|
75
|
+
};
|
|
76
|
+
/** Number of unique tags across all prototypes */
|
|
77
|
+
uniqueTags: number;
|
|
78
|
+
/** Number of unique users across all prototypes */
|
|
79
|
+
uniqueUsers: number;
|
|
80
|
+
/** Top 10 most frequent tags */
|
|
81
|
+
topTags: TagCount[];
|
|
82
|
+
/** View count statistics */
|
|
83
|
+
viewCount: NumericStats;
|
|
84
|
+
/** Good (like) count statistics */
|
|
85
|
+
goodCount: NumericStats;
|
|
86
|
+
/** Comment count statistics */
|
|
87
|
+
commentCount: NumericStats;
|
|
88
|
+
};
|
|
89
|
+
//# sourceMappingURL=analysis.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analysis.types.d.ts","sourceRoot":"","sources":["../../../lib/repository/types/analysis.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,wEAAwE;IACxE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,wEAAwE;IACxE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB;IACpB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,OAAO,EAAE;QACP,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QACnB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;KACpB,CAAC;IACF,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,4BAA4B;IAC5B,SAAS,EAAE,YAAY,CAAC;IACxB,mCAAmC;IACnC,SAAS,EAAE,YAAY,CAAC;IACxB,+BAA+B;IAC/B,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analysis.types.js","sourceRoot":"","sources":["../../../lib/repository/types/analysis.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for the ProtoPedia in-memory repository module.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
export type { PrototypeAnalysisResult } from './analysis.types.js';
|
|
7
|
+
export type { RepositoryEvents } from './repository-events.types.js';
|
|
8
|
+
export type { ProtopediaInMemoryRepository, ProtopediaInMemoryRepositoryConfig, } from './repository.types.js';
|
|
9
|
+
export type { SerializableSnapshot } from './serialization.types.js';
|
|
10
|
+
export type { RepositoryFailureKind, RepositoryErrorCode, RepositorySuccess, RepositoryFailure, RepositoryResult, } from './result.types.js';
|
|
11
|
+
export type { SnapshotOperationResult, SnapshotOperationSuccess, SnapshotOperationFailure, FetcherSnapshotFailure, StoreSnapshotFailure, RepositorySnapshotFailure, UnknownSnapshotFailure, } from './snapshot-operation.types.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/repository/types/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,YAAY,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,YAAY,EACV,4BAA4B,EAC5B,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAErE,YAAY,EACV,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/repository/types/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Event type definitions for the ProtoPedia in-memory repository.
|
|
3
|
+
*
|
|
4
|
+
* This module defines the event interface for repository state change notifications
|
|
5
|
+
* during snapshot operations.
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
* @see {@link https://github.com/F88/promidas/issues/19 | Issue #19: Event Notification System}
|
|
9
|
+
*/
|
|
10
|
+
import type { PrototypeInMemoryStats } from '../../store/index.js';
|
|
11
|
+
import type { SnapshotOperationFailure } from './snapshot-operation.types.js';
|
|
12
|
+
/**
|
|
13
|
+
* Event types emitted by the repository during snapshot operations.
|
|
14
|
+
*
|
|
15
|
+
* @remarks
|
|
16
|
+
* Events are only available when `enableEvents: true` is set in the repository configuration.
|
|
17
|
+
* The repository exposes an optional `events` property of type `TypedEmitter<RepositoryEvents>`.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* import { PromidasRepositoryBuilder } from 'promidas';
|
|
22
|
+
*
|
|
23
|
+
* const repo = new PromidasRepositoryBuilder()
|
|
24
|
+
* .setRepositoryConfig({ enableEvents: true })
|
|
25
|
+
* .build();
|
|
26
|
+
*
|
|
27
|
+
* repo.events?.on('snapshotStarted', (operation) => {
|
|
28
|
+
* console.log(`${operation} started`);
|
|
29
|
+
* });
|
|
30
|
+
*
|
|
31
|
+
* repo.events?.on('snapshotCompleted', (stats) => {
|
|
32
|
+
* console.log(`Snapshot updated: ${stats.size} prototypes`);
|
|
33
|
+
* });
|
|
34
|
+
*
|
|
35
|
+
* repo.events?.on('snapshotFailed', (error) => {
|
|
36
|
+
* console.error('Snapshot failed:', error.error);
|
|
37
|
+
* });
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* @see {@link ProtopediaInMemoryRepositoryConfig.enableEvents}
|
|
41
|
+
*/
|
|
42
|
+
export interface RepositoryEvents {
|
|
43
|
+
/**
|
|
44
|
+
* Emitted when a snapshot operation starts.
|
|
45
|
+
*
|
|
46
|
+
* This event is fired at the beginning of `setupSnapshot`, `refreshSnapshot`,
|
|
47
|
+
* or `setupSnapshotFromSerializedData` operations, before any processing begins.
|
|
48
|
+
*
|
|
49
|
+
* @param operation - Type of operation ('setup', 'refresh', or 'setupFromSerializedData')
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* repo.events?.on('snapshotStarted', (operation) => {
|
|
54
|
+
* if (operation === 'setup') {
|
|
55
|
+
* console.log('Initial setup started');
|
|
56
|
+
* } else if (operation === 'refresh') {
|
|
57
|
+
* console.log('Refreshing snapshot');
|
|
58
|
+
* } else if (operation === 'setupFromSerializedData') {
|
|
59
|
+
* console.log('Setting up snapshot from serialized data');
|
|
60
|
+
* }
|
|
61
|
+
* setLoading(true);
|
|
62
|
+
* });
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
snapshotStarted: (operation: 'setup' | 'refresh' | 'setupFromSerializedData') => void;
|
|
66
|
+
/**
|
|
67
|
+
* Emitted when a snapshot operation completes successfully.
|
|
68
|
+
*
|
|
69
|
+
* This event includes the complete snapshot statistics, eliminating the need
|
|
70
|
+
* for an additional `getStats()` call.
|
|
71
|
+
*
|
|
72
|
+
* @param stats - Current snapshot statistics including size, cachedAt, and TTL info
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* repo.events?.on('snapshotCompleted', (stats) => {
|
|
77
|
+
* console.log(`Snapshot updated: ${stats.size} prototypes`);
|
|
78
|
+
* console.log(`Cached at: ${stats.cachedAt}`);
|
|
79
|
+
* setLoading(false);
|
|
80
|
+
* updateUI(stats);
|
|
81
|
+
* });
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
snapshotCompleted: (stats: PrototypeInMemoryStats) => void;
|
|
85
|
+
/**
|
|
86
|
+
* Emitted when a snapshot operation fails.
|
|
87
|
+
*
|
|
88
|
+
* This event includes complete error information including HTTP status codes
|
|
89
|
+
* and API error codes when available.
|
|
90
|
+
*
|
|
91
|
+
* @param error - Error details including message, status, and code
|
|
92
|
+
*
|
|
93
|
+
* @example
|
|
94
|
+
* ```typescript
|
|
95
|
+
* repo.events?.on('snapshotFailed', (error) => {
|
|
96
|
+
* console.error('Snapshot failed:', error.error);
|
|
97
|
+
* if (error.status) {
|
|
98
|
+
* console.error('HTTP status:', error.status);
|
|
99
|
+
* }
|
|
100
|
+
* if (error.code) {
|
|
101
|
+
* console.error('API error code:', error.code);
|
|
102
|
+
* }
|
|
103
|
+
* setLoading(false);
|
|
104
|
+
* showError(error.error);
|
|
105
|
+
* });
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
snapshotFailed: (error: SnapshotOperationFailure) => void;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=repository-events.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repository-events.types.d.ts","sourceRoot":"","sources":["../../../lib/repository/types/repository-events.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,eAAe,EAAE,CACf,SAAS,EAAE,OAAO,GAAG,SAAS,GAAG,yBAAyB,KACvD,IAAI,CAAC;IAEV;;;;;;;;;;;;;;;;;OAiBG;IACH,iBAAiB,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAE3D;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,cAAc,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,IAAI,CAAC;CAC3D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repository-events.types.js","sourceRoot":"","sources":["../../../lib/repository/types/repository-events.types.ts"],"names":[],"mappings":""}
|