@frictionless-ts/metadata 1.0.1
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/README.md +3 -0
- package/build/assets/dialect-1.0.json +58 -0
- package/build/assets/dialect-2.0.json +98 -0
- package/build/assets/package-1.0.json +1517 -0
- package/build/assets/package-2.0.json +2168 -0
- package/build/assets/resource-1.0.json +1353 -0
- package/build/assets/resource-2.0.json +1987 -0
- package/build/assets/schema-1.0.json +1126 -0
- package/build/assets/schema-2.0.json +1715 -0
- package/build/descriptor/Descriptor.d.ts +2 -0
- package/build/descriptor/Descriptor.js +4 -0
- package/build/descriptor/index.d.ts +6 -0
- package/build/descriptor/index.js +6 -0
- package/build/descriptor/load.d.ts +8 -0
- package/build/descriptor/load.js +36 -0
- package/build/descriptor/load.spec.d.ts +1 -0
- package/build/descriptor/load.spec.js +44 -0
- package/build/descriptor/process/parse.d.ts +2 -0
- package/build/descriptor/process/parse.js +8 -0
- package/build/descriptor/process/stringify.d.ts +2 -0
- package/build/descriptor/process/stringify.js +4 -0
- package/build/descriptor/save.d.ts +9 -0
- package/build/descriptor/save.js +19 -0
- package/build/descriptor/save.spec.d.ts +1 -0
- package/build/descriptor/save.spec.js +99 -0
- package/build/dialect/Dialect.d.ts +89 -0
- package/build/dialect/Dialect.js +2 -0
- package/build/dialect/assert.d.ts +6 -0
- package/build/dialect/assert.js +12 -0
- package/build/dialect/assert.spec.d.ts +1 -0
- package/build/dialect/assert.spec.js +22 -0
- package/build/dialect/convert/fromDescriptor.d.ts +2 -0
- package/build/dialect/convert/fromDescriptor.js +20 -0
- package/build/dialect/convert/toDescriptor.d.ts +3 -0
- package/build/dialect/convert/toDescriptor.js +5 -0
- package/build/dialect/index.d.ts +8 -0
- package/build/dialect/index.js +8 -0
- package/build/dialect/load.d.ts +5 -0
- package/build/dialect/load.js +12 -0
- package/build/dialect/load.spec.d.ts +1 -0
- package/build/dialect/load.spec.js +18 -0
- package/build/dialect/resolve.d.ts +2 -0
- package/build/dialect/resolve.js +11 -0
- package/build/dialect/save.d.ts +9 -0
- package/build/dialect/save.js +16 -0
- package/build/dialect/save.spec.d.ts +1 -0
- package/build/dialect/save.spec.js +52 -0
- package/build/dialect/validate.d.ts +10 -0
- package/build/dialect/validate.js +25 -0
- package/build/dialect/validate.spec.d.ts +1 -0
- package/build/dialect/validate.spec.js +28 -0
- package/build/error/Bound.d.ts +4 -0
- package/build/error/Bound.js +2 -0
- package/build/error/Error.d.ts +3 -0
- package/build/error/Error.js +2 -0
- package/build/error/Unbound.d.ts +6 -0
- package/build/error/Unbound.js +2 -0
- package/build/error/index.d.ts +16 -0
- package/build/error/index.js +2 -0
- package/build/error/types/Base.d.ts +3 -0
- package/build/error/types/Base.js +2 -0
- package/build/error/types/Bytes.d.ts +6 -0
- package/build/error/types/Bytes.js +2 -0
- package/build/error/types/Cell.d.ts +56 -0
- package/build/error/types/Cell.js +2 -0
- package/build/error/types/Data.d.ts +5 -0
- package/build/error/types/Data.js +2 -0
- package/build/error/types/Document.d.ts +7 -0
- package/build/error/types/Document.js +2 -0
- package/build/error/types/Encoding.d.ts +6 -0
- package/build/error/types/Encoding.js +2 -0
- package/build/error/types/Field.d.ts +15 -0
- package/build/error/types/Field.js +2 -0
- package/build/error/types/Fields.d.ts +11 -0
- package/build/error/types/Fields.js +2 -0
- package/build/error/types/File.d.ts +4 -0
- package/build/error/types/File.js +2 -0
- package/build/error/types/ForeignKey.d.ts +7 -0
- package/build/error/types/ForeignKey.js +2 -0
- package/build/error/types/Hash.d.ts +6 -0
- package/build/error/types/Hash.js +2 -0
- package/build/error/types/Metadata.d.ts +9 -0
- package/build/error/types/Metadata.js +2 -0
- package/build/error/types/Row.d.ts +9 -0
- package/build/error/types/Row.js +2 -0
- package/build/error/types/Table.d.ts +6 -0
- package/build/error/types/Table.js +2 -0
- package/build/field/Field.d.ts +5 -0
- package/build/field/Field.js +2 -0
- package/build/field/Type.d.ts +2 -0
- package/build/field/Type.js +2 -0
- package/build/field/convert/fromDescriptor.d.ts +2 -0
- package/build/field/convert/fromDescriptor.js +61 -0
- package/build/field/convert/fromDescriptor.spec.d.ts +1 -0
- package/build/field/convert/fromDescriptor.spec.js +241 -0
- package/build/field/convert/toDescriptor.d.ts +3 -0
- package/build/field/convert/toDescriptor.js +5 -0
- package/build/field/convert/toDescriptor.spec.d.ts +1 -0
- package/build/field/convert/toDescriptor.spec.js +291 -0
- package/build/field/index.d.ts +5 -0
- package/build/field/index.js +3 -0
- package/build/field/types/Any.d.ts +20 -0
- package/build/field/types/Any.js +2 -0
- package/build/field/types/Array.d.ts +32 -0
- package/build/field/types/Array.js +2 -0
- package/build/field/types/Base.d.ts +60 -0
- package/build/field/types/Base.js +2 -0
- package/build/field/types/Boolean.d.ts +28 -0
- package/build/field/types/Boolean.js +2 -0
- package/build/field/types/Date.d.ts +43 -0
- package/build/field/types/Date.js +2 -0
- package/build/field/types/Datetime.d.ts +43 -0
- package/build/field/types/Datetime.js +2 -0
- package/build/field/types/Duration.d.ts +28 -0
- package/build/field/types/Duration.js +2 -0
- package/build/field/types/Geojson.d.ts +30 -0
- package/build/field/types/Geojson.js +2 -0
- package/build/field/types/Geopoint.d.ts +27 -0
- package/build/field/types/Geopoint.js +2 -0
- package/build/field/types/Integer.d.ts +57 -0
- package/build/field/types/Integer.js +2 -0
- package/build/field/types/List.d.ts +36 -0
- package/build/field/types/List.js +2 -0
- package/build/field/types/Number.d.ts +48 -0
- package/build/field/types/Number.js +2 -0
- package/build/field/types/Object.d.ts +32 -0
- package/build/field/types/Object.js +2 -0
- package/build/field/types/String.d.ts +51 -0
- package/build/field/types/String.js +2 -0
- package/build/field/types/Time.d.ts +43 -0
- package/build/field/types/Time.js +2 -0
- package/build/field/types/Year.d.ts +36 -0
- package/build/field/types/Year.js +2 -0
- package/build/field/types/Yearmonth.d.ts +36 -0
- package/build/field/types/Yearmonth.js +2 -0
- package/build/field/types/index.d.ts +16 -0
- package/build/field/types/index.js +17 -0
- package/build/index.d.ts +112 -0
- package/build/index.js +32 -0
- package/build/json/Schema.d.ts +2 -0
- package/build/json/Schema.js +2 -0
- package/build/json/Value.d.ts +1 -0
- package/build/json/Value.js +2 -0
- package/build/json/ajv.d.ts +2 -0
- package/build/json/ajv.js +10 -0
- package/build/json/assert.d.ts +2 -0
- package/build/json/assert.js +10 -0
- package/build/json/cache.d.ts +2 -0
- package/build/json/cache.js +5 -0
- package/build/json/index.d.ts +5 -0
- package/build/json/index.js +4 -0
- package/build/json/inspect/schema.d.ts +4 -0
- package/build/json/inspect/schema.js +10 -0
- package/build/json/inspect/schema.spec.d.ts +1 -0
- package/build/json/inspect/schema.spec.js +132 -0
- package/build/json/inspect/value.d.ts +11 -0
- package/build/json/inspect/value.js +21 -0
- package/build/json/inspect/value.spec.d.ts +1 -0
- package/build/json/inspect/value.spec.js +121 -0
- package/build/json/load.d.ts +3 -0
- package/build/json/load.js +13 -0
- package/build/json/resolve.d.ts +2 -0
- package/build/json/resolve.js +11 -0
- package/build/metadata/Metadata.d.ts +3 -0
- package/build/metadata/Metadata.js +2 -0
- package/build/metadata/index.d.ts +1 -0
- package/build/metadata/index.js +2 -0
- package/build/package/Contributor.d.ts +21 -0
- package/build/package/Contributor.js +2 -0
- package/build/package/Package.d.ts +64 -0
- package/build/package/Package.js +2 -0
- package/build/package/assert.d.ts +8 -0
- package/build/package/assert.js +12 -0
- package/build/package/assert.spec.d.ts +1 -0
- package/build/package/assert.spec.js +26 -0
- package/build/package/convert/fromDescriptor.d.ts +4 -0
- package/build/package/convert/fromDescriptor.js +36 -0
- package/build/package/convert/toDescriptor.d.ts +5 -0
- package/build/package/convert/toDescriptor.js +7 -0
- package/build/package/index.d.ts +8 -0
- package/build/package/index.js +7 -0
- package/build/package/load.d.ts +5 -0
- package/build/package/load.js +14 -0
- package/build/package/load.spec.d.ts +1 -0
- package/build/package/load.spec.js +28 -0
- package/build/package/save.d.ts +9 -0
- package/build/package/save.js +18 -0
- package/build/package/save.spec.d.ts +1 -0
- package/build/package/save.spec.js +311 -0
- package/build/package/validate.d.ts +12 -0
- package/build/package/validate.js +27 -0
- package/build/package/validate.spec.d.ts +1 -0
- package/build/package/validate.spec.js +41 -0
- package/build/path/basepath.d.ts +2 -0
- package/build/path/basepath.js +25 -0
- package/build/path/basepath.spec.d.ts +1 -0
- package/build/path/basepath.spec.js +55 -0
- package/build/path/denormalize.d.ts +3 -0
- package/build/path/denormalize.js +29 -0
- package/build/path/denormalize.spec.d.ts +1 -0
- package/build/path/denormalize.spec.js +45 -0
- package/build/path/index.d.ts +5 -0
- package/build/path/index.js +6 -0
- package/build/path/normalize.d.ts +6 -0
- package/build/path/normalize.js +54 -0
- package/build/path/normalize.spec.d.ts +1 -0
- package/build/path/normalize.spec.js +71 -0
- package/build/path/path.d.ts +5 -0
- package/build/path/path.js +48 -0
- package/build/path/path.spec.d.ts +1 -0
- package/build/path/path.spec.js +111 -0
- package/build/platform/index.d.ts +1 -0
- package/build/platform/index.js +2 -0
- package/build/platform/node.d.ts +130 -0
- package/build/platform/node.js +10 -0
- package/build/platform/node.spec.d.ts +1 -0
- package/build/platform/node.spec.js +16 -0
- package/build/profile/@minify.d.ts +1 -0
- package/build/profile/@minify.js +58 -0
- package/build/profile/Profile.d.ts +9 -0
- package/build/profile/Profile.js +2 -0
- package/build/profile/assert.d.ts +6 -0
- package/build/profile/assert.js +36 -0
- package/build/profile/assert.spec.d.ts +1 -0
- package/build/profile/assert.spec.js +115 -0
- package/build/profile/index.d.ts +2 -0
- package/build/profile/index.js +2 -0
- package/build/profile/load.d.ts +4 -0
- package/build/profile/load.js +12 -0
- package/build/profile/registry.d.ts +2 -0
- package/build/profile/registry.js +83 -0
- package/build/profile/resolve.d.ts +2 -0
- package/build/profile/resolve.js +8 -0
- package/build/profile/validate.d.ts +9 -0
- package/build/profile/validate.js +12 -0
- package/build/report/Report.d.ts +5 -0
- package/build/report/Report.js +2 -0
- package/build/report/create.d.ts +7 -0
- package/build/report/create.js +6 -0
- package/build/report/index.d.ts +2 -0
- package/build/report/index.js +2 -0
- package/build/resource/License.d.ts +18 -0
- package/build/resource/License.js +2 -0
- package/build/resource/Resource.d.ts +93 -0
- package/build/resource/Resource.js +2 -0
- package/build/resource/Source.d.ts +17 -0
- package/build/resource/Source.js +2 -0
- package/build/resource/assert.d.ts +8 -0
- package/build/resource/assert.js +12 -0
- package/build/resource/assert.spec.d.ts +1 -0
- package/build/resource/assert.spec.js +23 -0
- package/build/resource/convert/fromDescriptor.d.ts +4 -0
- package/build/resource/convert/fromDescriptor.js +69 -0
- package/build/resource/convert/toDescriptor.d.ts +5 -0
- package/build/resource/convert/toDescriptor.js +36 -0
- package/build/resource/helpers.d.ts +2 -0
- package/build/resource/helpers.js +6 -0
- package/build/resource/index.d.ts +11 -0
- package/build/resource/index.js +9 -0
- package/build/resource/infer.d.ts +3 -0
- package/build/resource/infer.js +35 -0
- package/build/resource/infer.spec.d.ts +1 -0
- package/build/resource/infer.spec.js +103 -0
- package/build/resource/load.d.ts +5 -0
- package/build/resource/load.js +14 -0
- package/build/resource/load.spec.d.ts +1 -0
- package/build/resource/load.spec.js +22 -0
- package/build/resource/save.d.ts +9 -0
- package/build/resource/save.js +18 -0
- package/build/resource/save.spec.d.ts +1 -0
- package/build/resource/save.spec.js +170 -0
- package/build/resource/validate.d.ts +13 -0
- package/build/resource/validate.js +57 -0
- package/build/resource/validate.spec.d.ts +1 -0
- package/build/resource/validate.spec.js +30 -0
- package/build/schema/ForeignKey.d.ts +23 -0
- package/build/schema/ForeignKey.js +2 -0
- package/build/schema/Schema.d.ts +56 -0
- package/build/schema/Schema.js +2 -0
- package/build/schema/assert.d.ts +6 -0
- package/build/schema/assert.js +12 -0
- package/build/schema/assert.spec.d.ts +1 -0
- package/build/schema/assert.spec.js +34 -0
- package/build/schema/convert/fromDescriptor.d.ts +2 -0
- package/build/schema/convert/fromDescriptor.js +70 -0
- package/build/schema/convert/fromJsonSchema.d.ts +3 -0
- package/build/schema/convert/fromJsonSchema.js +105 -0
- package/build/schema/convert/fromJsonSchema.spec.d.ts +1 -0
- package/build/schema/convert/fromJsonSchema.spec.js +156 -0
- package/build/schema/convert/toDescriptor.d.ts +3 -0
- package/build/schema/convert/toDescriptor.js +5 -0
- package/build/schema/convert/toJsonSchema.d.ts +3 -0
- package/build/schema/convert/toJsonSchema.js +173 -0
- package/build/schema/convert/toJsonSchema.spec.d.ts +1 -0
- package/build/schema/convert/toJsonSchema.spec.js +403 -0
- package/build/schema/index.d.ts +11 -0
- package/build/schema/index.js +10 -0
- package/build/schema/load.d.ts +5 -0
- package/build/schema/load.js +12 -0
- package/build/schema/load.spec.d.ts +1 -0
- package/build/schema/load.spec.js +55 -0
- package/build/schema/resolve.d.ts +2 -0
- package/build/schema/resolve.js +11 -0
- package/build/schema/save.d.ts +9 -0
- package/build/schema/save.js +16 -0
- package/build/schema/save.spec.d.ts +1 -0
- package/build/schema/save.spec.js +58 -0
- package/build/schema/validate.d.ts +10 -0
- package/build/schema/validate.js +25 -0
- package/build/schema/validate.spec.d.ts +1 -0
- package/build/schema/validate.spec.js +41 -0
- package/package.json +37 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type { Field } from "./Field.ts";
|
|
2
|
+
export type { FieldType } from "./Type.ts";
|
|
3
|
+
export type * from "./types/index.ts";
|
|
4
|
+
export { convertFieldFromDescriptor } from "./convert/fromDescriptor.ts";
|
|
5
|
+
export { convertFieldToDescriptor } from "./convert/toDescriptor.ts";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { convertFieldFromDescriptor } from "./convert/fromDescriptor.js";
|
|
2
|
+
export { convertFieldToDescriptor } from "./convert/toDescriptor.js";
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9maWVsZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUN4RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIHsgRmllbGQgfSBmcm9tIFwiLi9GaWVsZC50c1wiXG5leHBvcnQgdHlwZSB7IEZpZWxkVHlwZSB9IGZyb20gXCIuL1R5cGUudHNcIlxuZXhwb3J0IHR5cGUgKiBmcm9tIFwiLi90eXBlcy9pbmRleC50c1wiXG5leHBvcnQgeyBjb252ZXJ0RmllbGRGcm9tRGVzY3JpcHRvciB9IGZyb20gXCIuL2NvbnZlcnQvZnJvbURlc2NyaXB0b3IudHNcIlxuZXhwb3J0IHsgY29udmVydEZpZWxkVG9EZXNjcmlwdG9yIH0gZnJvbSBcIi4vY29udmVydC90b0Rlc2NyaXB0b3IudHNcIlxuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Any field type (unspecified/mixed)
|
|
4
|
+
*/
|
|
5
|
+
export interface AnyField extends BaseField<AnyConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type?: "any";
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Any field constraints
|
|
13
|
+
*/
|
|
14
|
+
export interface AnyConstraints extends BaseConstraints {
|
|
15
|
+
/**
|
|
16
|
+
* Restrict values to a specified set
|
|
17
|
+
* For any field type, can be an array of any values
|
|
18
|
+
*/
|
|
19
|
+
enum?: any[];
|
|
20
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQW55LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZmllbGQvdHlwZXMvQW55LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEJhc2VDb25zdHJhaW50cywgQmFzZUZpZWxkIH0gZnJvbSBcIi4vQmFzZS50c1wiXG5cbi8qKlxuICogQW55IGZpZWxkIHR5cGUgKHVuc3BlY2lmaWVkL21peGVkKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFueUZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkPEFueUNvbnN0cmFpbnRzPiB7XG4gIC8qKlxuICAgKiBGaWVsZCB0eXBlIC0gZGlzY3JpbWluYXRvciBwcm9wZXJ0eVxuICAgKi9cbiAgdHlwZT86IFwiYW55XCJcbn1cblxuLyoqXG4gKiBBbnkgZmllbGQgY29uc3RyYWludHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBbnlDb25zdHJhaW50cyBleHRlbmRzIEJhc2VDb25zdHJhaW50cyB7XG4gIC8qKlxuICAgKiBSZXN0cmljdCB2YWx1ZXMgdG8gYSBzcGVjaWZpZWQgc2V0XG4gICAqIEZvciBhbnkgZmllbGQgdHlwZSwgY2FuIGJlIGFuIGFycmF5IG9mIGFueSB2YWx1ZXNcbiAgICovXG4gIGVudW0/OiBhbnlbXVxufVxuIl19
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Array field type (serialized JSON array)
|
|
4
|
+
*/
|
|
5
|
+
export interface ArrayField extends BaseField<ArrayConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "array";
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Array-specific constraints
|
|
13
|
+
*/
|
|
14
|
+
export interface ArrayConstraints extends BaseConstraints {
|
|
15
|
+
/**
|
|
16
|
+
* Minimum array length
|
|
17
|
+
*/
|
|
18
|
+
minLength?: number;
|
|
19
|
+
/**
|
|
20
|
+
* Maximum array length
|
|
21
|
+
*/
|
|
22
|
+
maxLength?: number;
|
|
23
|
+
/**
|
|
24
|
+
* JSON Schema object for validating array items
|
|
25
|
+
*/
|
|
26
|
+
jsonSchema?: Record<string, any>;
|
|
27
|
+
/**
|
|
28
|
+
* Restrict values to a specified set of arrays
|
|
29
|
+
* Serialized as JSON strings or parsed array objects
|
|
30
|
+
*/
|
|
31
|
+
enum?: string[] | any[][];
|
|
32
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXJyYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9maWVsZC90eXBlcy9BcnJheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCYXNlQ29uc3RyYWludHMsIEJhc2VGaWVsZCB9IGZyb20gXCIuL0Jhc2UudHNcIlxuXG4vKipcbiAqIEFycmF5IGZpZWxkIHR5cGUgKHNlcmlhbGl6ZWQgSlNPTiBhcnJheSlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcnJheUZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkPEFycmF5Q29uc3RyYWludHM+IHtcbiAgLyoqXG4gICAqIEZpZWxkIHR5cGUgLSBkaXNjcmltaW5hdG9yIHByb3BlcnR5XG4gICAqL1xuICB0eXBlOiBcImFycmF5XCJcbn1cblxuLyoqXG4gKiBBcnJheS1zcGVjaWZpYyBjb25zdHJhaW50c1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEFycmF5Q29uc3RyYWludHMgZXh0ZW5kcyBCYXNlQ29uc3RyYWludHMge1xuICAvKipcbiAgICogTWluaW11bSBhcnJheSBsZW5ndGhcbiAgICovXG4gIG1pbkxlbmd0aD86IG51bWJlclxuXG4gIC8qKlxuICAgKiBNYXhpbXVtIGFycmF5IGxlbmd0aFxuICAgKi9cbiAgbWF4TGVuZ3RoPzogbnVtYmVyXG5cbiAgLyoqXG4gICAqIEpTT04gU2NoZW1hIG9iamVjdCBmb3IgdmFsaWRhdGluZyBhcnJheSBpdGVtc1xuICAgKi9cbiAganNvblNjaGVtYT86IFJlY29yZDxzdHJpbmcsIGFueT5cblxuICAvKipcbiAgICogUmVzdHJpY3QgdmFsdWVzIHRvIGEgc3BlY2lmaWVkIHNldCBvZiBhcnJheXNcbiAgICogU2VyaWFsaXplZCBhcyBKU09OIHN0cmluZ3Mgb3IgcGFyc2VkIGFycmF5IG9iamVjdHNcbiAgICovXG4gIGVudW0/OiBzdHJpbmdbXSB8IGFueVtdW11cbn1cbiJdfQ==
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { Metadata } from "../../metadata/index.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Base field properties common to all field types
|
|
4
|
+
*/
|
|
5
|
+
export interface BaseField<T = BaseConstraints> extends Metadata {
|
|
6
|
+
/**
|
|
7
|
+
* Name of the field matching the column name
|
|
8
|
+
*/
|
|
9
|
+
name: string;
|
|
10
|
+
/**
|
|
11
|
+
* Field format -- optional addition to the type
|
|
12
|
+
*/
|
|
13
|
+
format?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Human-readable title
|
|
16
|
+
*/
|
|
17
|
+
title?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Human-readable description
|
|
20
|
+
*/
|
|
21
|
+
description?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Example value for this field
|
|
24
|
+
*/
|
|
25
|
+
example?: any;
|
|
26
|
+
/**
|
|
27
|
+
* Examples for this field
|
|
28
|
+
*/
|
|
29
|
+
examples?: any[];
|
|
30
|
+
/**
|
|
31
|
+
* URI for semantic type (RDF)
|
|
32
|
+
*/
|
|
33
|
+
rdfType?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Values representing missing data for this field
|
|
36
|
+
* Can be a simple array of strings or an array of {value, label} objects
|
|
37
|
+
* where label provides context for why the data is missing
|
|
38
|
+
*/
|
|
39
|
+
missingValues?: (string | {
|
|
40
|
+
value: string;
|
|
41
|
+
label: string;
|
|
42
|
+
})[];
|
|
43
|
+
/**
|
|
44
|
+
* Validation constraints applied to values
|
|
45
|
+
*/
|
|
46
|
+
constraints?: T;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Base constraints that can be applied to any field type
|
|
50
|
+
*/
|
|
51
|
+
export interface BaseConstraints {
|
|
52
|
+
/**
|
|
53
|
+
* Indicates if field is allowed to be null/empty
|
|
54
|
+
*/
|
|
55
|
+
required?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Indicates if values must be unique within the column
|
|
58
|
+
*/
|
|
59
|
+
unique?: boolean;
|
|
60
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpZWxkL3R5cGVzL0Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWV0YWRhdGEgfSBmcm9tIFwiLi4vLi4vbWV0YWRhdGEvaW5kZXgudHNcIlxuXG4vKipcbiAqIEJhc2UgZmllbGQgcHJvcGVydGllcyBjb21tb24gdG8gYWxsIGZpZWxkIHR5cGVzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUZpZWxkPFQgPSBCYXNlQ29uc3RyYWludHM+IGV4dGVuZHMgTWV0YWRhdGEge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZmllbGQgbWF0Y2hpbmcgdGhlIGNvbHVtbiBuYW1lXG4gICAqL1xuICBuYW1lOiBzdHJpbmdcblxuICAvKipcbiAgICogRmllbGQgZm9ybWF0IC0tIG9wdGlvbmFsIGFkZGl0aW9uIHRvIHRoZSB0eXBlXG4gICAqL1xuICBmb3JtYXQ/OiBzdHJpbmdcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgdGl0bGVcbiAgICovXG4gIHRpdGxlPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uXG4gICAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBFeGFtcGxlIHZhbHVlIGZvciB0aGlzIGZpZWxkXG4gICAqL1xuICBleGFtcGxlPzogYW55XG5cbiAgLyoqXG4gICAqIEV4YW1wbGVzIGZvciB0aGlzIGZpZWxkXG4gICAqL1xuICBleGFtcGxlcz86IGFueVtdXG5cbiAgLyoqXG4gICAqIFVSSSBmb3Igc2VtYW50aWMgdHlwZSAoUkRGKVxuICAgKi9cbiAgcmRmVHlwZT86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBWYWx1ZXMgcmVwcmVzZW50aW5nIG1pc3NpbmcgZGF0YSBmb3IgdGhpcyBmaWVsZFxuICAgKiBDYW4gYmUgYSBzaW1wbGUgYXJyYXkgb2Ygc3RyaW5ncyBvciBhbiBhcnJheSBvZiB7dmFsdWUsIGxhYmVsfSBvYmplY3RzXG4gICAqIHdoZXJlIGxhYmVsIHByb3ZpZGVzIGNvbnRleHQgZm9yIHdoeSB0aGUgZGF0YSBpcyBtaXNzaW5nXG4gICAqL1xuICBtaXNzaW5nVmFsdWVzPzogKHN0cmluZyB8IHsgdmFsdWU6IHN0cmluZzsgbGFiZWw6IHN0cmluZyB9KVtdXG5cbiAgLyoqXG4gICAqIFZhbGlkYXRpb24gY29uc3RyYWludHMgYXBwbGllZCB0byB2YWx1ZXNcbiAgICovXG4gIGNvbnN0cmFpbnRzPzogVFxufVxuXG4vKipcbiAqIEJhc2UgY29uc3RyYWludHMgdGhhdCBjYW4gYmUgYXBwbGllZCB0byBhbnkgZmllbGQgdHlwZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VDb25zdHJhaW50cyB7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgZmllbGQgaXMgYWxsb3dlZCB0byBiZSBudWxsL2VtcHR5XG4gICAqL1xuICByZXF1aXJlZD86IGJvb2xlYW5cblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHZhbHVlcyBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIGNvbHVtblxuICAgKi9cbiAgdW5pcXVlPzogYm9vbGVhblxufVxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Boolean field type
|
|
4
|
+
*/
|
|
5
|
+
export interface BooleanField extends BaseField<BooleanConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "boolean";
|
|
10
|
+
/**
|
|
11
|
+
* Values that represent true
|
|
12
|
+
*/
|
|
13
|
+
trueValues?: string[];
|
|
14
|
+
/**
|
|
15
|
+
* Values that represent false
|
|
16
|
+
*/
|
|
17
|
+
falseValues?: string[];
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Boolean-specific constraints
|
|
21
|
+
*/
|
|
22
|
+
export interface BooleanConstraints extends BaseConstraints {
|
|
23
|
+
/**
|
|
24
|
+
* Restrict values to a specified set
|
|
25
|
+
* Can be an array of booleans or strings that parse to booleans
|
|
26
|
+
*/
|
|
27
|
+
enum?: boolean[] | string[];
|
|
28
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm9vbGVhbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpZWxkL3R5cGVzL0Jvb2xlYW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmFzZUNvbnN0cmFpbnRzLCBCYXNlRmllbGQgfSBmcm9tIFwiLi9CYXNlLnRzXCJcblxuLyoqXG4gKiBCb29sZWFuIGZpZWxkIHR5cGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCb29sZWFuRmllbGQgZXh0ZW5kcyBCYXNlRmllbGQ8Qm9vbGVhbkNvbnN0cmFpbnRzPiB7XG4gIC8qKlxuICAgKiBGaWVsZCB0eXBlIC0gZGlzY3JpbWluYXRvciBwcm9wZXJ0eVxuICAgKi9cbiAgdHlwZTogXCJib29sZWFuXCJcblxuICAvKipcbiAgICogVmFsdWVzIHRoYXQgcmVwcmVzZW50IHRydWVcbiAgICovXG4gIHRydWVWYWx1ZXM/OiBzdHJpbmdbXVxuXG4gIC8qKlxuICAgKiBWYWx1ZXMgdGhhdCByZXByZXNlbnQgZmFsc2VcbiAgICovXG4gIGZhbHNlVmFsdWVzPzogc3RyaW5nW11cbn1cblxuLyoqXG4gKiBCb29sZWFuLXNwZWNpZmljIGNvbnN0cmFpbnRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQm9vbGVhbkNvbnN0cmFpbnRzIGV4dGVuZHMgQmFzZUNvbnN0cmFpbnRzIHtcbiAgLyoqXG4gICAqIFJlc3RyaWN0IHZhbHVlcyB0byBhIHNwZWNpZmllZCBzZXRcbiAgICogQ2FuIGJlIGFuIGFycmF5IG9mIGJvb2xlYW5zIG9yIHN0cmluZ3MgdGhhdCBwYXJzZSB0byBib29sZWFuc1xuICAgKi9cbiAgZW51bT86IGJvb2xlYW5bXSB8IHN0cmluZ1tdXG59XG4iXX0=
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Date field type
|
|
4
|
+
*/
|
|
5
|
+
export interface DateField extends BaseField<DateConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "date";
|
|
10
|
+
/**
|
|
11
|
+
* Format of the date
|
|
12
|
+
* - default: YYYY-MM-DD
|
|
13
|
+
* - any: flexible date parsing (not recommended)
|
|
14
|
+
* - Or custom strptime/strftime format string
|
|
15
|
+
*/
|
|
16
|
+
format?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Date-specific constraints
|
|
20
|
+
*/
|
|
21
|
+
export interface DateConstraints extends BaseConstraints {
|
|
22
|
+
/**
|
|
23
|
+
* Minimum allowed date value
|
|
24
|
+
*/
|
|
25
|
+
minimum?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Maximum allowed date value
|
|
28
|
+
*/
|
|
29
|
+
maximum?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Exclusive minimum date value
|
|
32
|
+
*/
|
|
33
|
+
exclusiveMinimum?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Exclusive maximum date value
|
|
36
|
+
*/
|
|
37
|
+
exclusiveMaximum?: string;
|
|
38
|
+
/**
|
|
39
|
+
* Restrict values to a specified set of dates
|
|
40
|
+
* Should be in string date format (e.g., "YYYY-MM-DD")
|
|
41
|
+
*/
|
|
42
|
+
enum?: string[];
|
|
43
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpZWxkL3R5cGVzL0RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmFzZUNvbnN0cmFpbnRzLCBCYXNlRmllbGQgfSBmcm9tIFwiLi9CYXNlLnRzXCJcblxuLyoqXG4gKiBEYXRlIGZpZWxkIHR5cGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRlRmllbGQgZXh0ZW5kcyBCYXNlRmllbGQ8RGF0ZUNvbnN0cmFpbnRzPiB7XG4gIC8qKlxuICAgKiBGaWVsZCB0eXBlIC0gZGlzY3JpbWluYXRvciBwcm9wZXJ0eVxuICAgKi9cbiAgdHlwZTogXCJkYXRlXCJcblxuICAvKipcbiAgICogRm9ybWF0IG9mIHRoZSBkYXRlXG4gICAqIC0gZGVmYXVsdDogWVlZWS1NTS1ERFxuICAgKiAtIGFueTogZmxleGlibGUgZGF0ZSBwYXJzaW5nIChub3QgcmVjb21tZW5kZWQpXG4gICAqIC0gT3IgY3VzdG9tIHN0cnB0aW1lL3N0cmZ0aW1lIGZvcm1hdCBzdHJpbmdcbiAgICovXG4gIGZvcm1hdD86IHN0cmluZ1xufVxuXG4vKipcbiAqIERhdGUtc3BlY2lmaWMgY29uc3RyYWludHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRlQ29uc3RyYWludHMgZXh0ZW5kcyBCYXNlQ29uc3RyYWludHMge1xuICAvKipcbiAgICogTWluaW11bSBhbGxvd2VkIGRhdGUgdmFsdWVcbiAgICovXG4gIG1pbmltdW0/OiBzdHJpbmdcblxuICAvKipcbiAgICogTWF4aW11bSBhbGxvd2VkIGRhdGUgdmFsdWVcbiAgICovXG4gIG1heGltdW0/OiBzdHJpbmdcblxuICAvKipcbiAgICogRXhjbHVzaXZlIG1pbmltdW0gZGF0ZSB2YWx1ZVxuICAgKi9cbiAgZXhjbHVzaXZlTWluaW11bT86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBFeGNsdXNpdmUgbWF4aW11bSBkYXRlIHZhbHVlXG4gICAqL1xuICBleGNsdXNpdmVNYXhpbXVtPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFJlc3RyaWN0IHZhbHVlcyB0byBhIHNwZWNpZmllZCBzZXQgb2YgZGF0ZXNcbiAgICogU2hvdWxkIGJlIGluIHN0cmluZyBkYXRlIGZvcm1hdCAoZS5nLiwgXCJZWVlZLU1NLUREXCIpXG4gICAqL1xuICBlbnVtPzogc3RyaW5nW11cbn1cbiJdfQ==
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Datetime field type
|
|
4
|
+
*/
|
|
5
|
+
export interface DatetimeField extends BaseField<DatetimeConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "datetime";
|
|
10
|
+
/**
|
|
11
|
+
* Format of the datetime
|
|
12
|
+
* - default: ISO8601 format
|
|
13
|
+
* - any: flexible datetime parsing (not recommended)
|
|
14
|
+
* - Or custom strptime/strftime format string
|
|
15
|
+
*/
|
|
16
|
+
format?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Datetime-specific constraints
|
|
20
|
+
*/
|
|
21
|
+
export interface DatetimeConstraints extends BaseConstraints {
|
|
22
|
+
/**
|
|
23
|
+
* Minimum allowed datetime value
|
|
24
|
+
*/
|
|
25
|
+
minimum?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Maximum allowed datetime value
|
|
28
|
+
*/
|
|
29
|
+
maximum?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Exclusive minimum datetime value
|
|
32
|
+
*/
|
|
33
|
+
exclusiveMinimum?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Exclusive maximum datetime value
|
|
36
|
+
*/
|
|
37
|
+
exclusiveMaximum?: string;
|
|
38
|
+
/**
|
|
39
|
+
* Restrict values to a specified set of datetimes
|
|
40
|
+
* Should be in string datetime format (e.g., ISO8601)
|
|
41
|
+
*/
|
|
42
|
+
enum?: string[];
|
|
43
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZXRpbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9maWVsZC90eXBlcy9EYXRldGltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCYXNlQ29uc3RyYWludHMsIEJhc2VGaWVsZCB9IGZyb20gXCIuL0Jhc2UudHNcIlxuXG4vKipcbiAqIERhdGV0aW1lIGZpZWxkIHR5cGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRldGltZUZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkPERhdGV0aW1lQ29uc3RyYWludHM+IHtcbiAgLyoqXG4gICAqIEZpZWxkIHR5cGUgLSBkaXNjcmltaW5hdG9yIHByb3BlcnR5XG4gICAqL1xuICB0eXBlOiBcImRhdGV0aW1lXCJcblxuICAvKipcbiAgICogRm9ybWF0IG9mIHRoZSBkYXRldGltZVxuICAgKiAtIGRlZmF1bHQ6IElTTzg2MDEgZm9ybWF0XG4gICAqIC0gYW55OiBmbGV4aWJsZSBkYXRldGltZSBwYXJzaW5nIChub3QgcmVjb21tZW5kZWQpXG4gICAqIC0gT3IgY3VzdG9tIHN0cnB0aW1lL3N0cmZ0aW1lIGZvcm1hdCBzdHJpbmdcbiAgICovXG4gIGZvcm1hdD86IHN0cmluZ1xufVxuXG4vKipcbiAqIERhdGV0aW1lLXNwZWNpZmljIGNvbnN0cmFpbnRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0ZXRpbWVDb25zdHJhaW50cyBleHRlbmRzIEJhc2VDb25zdHJhaW50cyB7XG4gIC8qKlxuICAgKiBNaW5pbXVtIGFsbG93ZWQgZGF0ZXRpbWUgdmFsdWVcbiAgICovXG4gIG1pbmltdW0/OiBzdHJpbmdcblxuICAvKipcbiAgICogTWF4aW11bSBhbGxvd2VkIGRhdGV0aW1lIHZhbHVlXG4gICAqL1xuICBtYXhpbXVtPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIEV4Y2x1c2l2ZSBtaW5pbXVtIGRhdGV0aW1lIHZhbHVlXG4gICAqL1xuICBleGNsdXNpdmVNaW5pbXVtPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIEV4Y2x1c2l2ZSBtYXhpbXVtIGRhdGV0aW1lIHZhbHVlXG4gICAqL1xuICBleGNsdXNpdmVNYXhpbXVtPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFJlc3RyaWN0IHZhbHVlcyB0byBhIHNwZWNpZmllZCBzZXQgb2YgZGF0ZXRpbWVzXG4gICAqIFNob3VsZCBiZSBpbiBzdHJpbmcgZGF0ZXRpbWUgZm9ybWF0IChlLmcuLCBJU084NjAxKVxuICAgKi9cbiAgZW51bT86IHN0cmluZ1tdXG59XG4iXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Duration field type (ISO 8601 duration)
|
|
4
|
+
*/
|
|
5
|
+
export interface DurationField extends BaseField<DurationConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "duration";
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Duration-specific constraints
|
|
13
|
+
*/
|
|
14
|
+
export interface DurationConstraints extends BaseConstraints {
|
|
15
|
+
/**
|
|
16
|
+
* Minimum allowed duration (ISO 8601 format)
|
|
17
|
+
*/
|
|
18
|
+
minimum?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Maximum allowed duration (ISO 8601 format)
|
|
21
|
+
*/
|
|
22
|
+
maximum?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Restrict values to a specified set of durations
|
|
25
|
+
* Should be in ISO 8601 duration format
|
|
26
|
+
*/
|
|
27
|
+
enum?: string[];
|
|
28
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRHVyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9maWVsZC90eXBlcy9EdXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCYXNlQ29uc3RyYWludHMsIEJhc2VGaWVsZCB9IGZyb20gXCIuL0Jhc2UudHNcIlxuXG4vKipcbiAqIER1cmF0aW9uIGZpZWxkIHR5cGUgKElTTyA4NjAxIGR1cmF0aW9uKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIER1cmF0aW9uRmllbGQgZXh0ZW5kcyBCYXNlRmllbGQ8RHVyYXRpb25Db25zdHJhaW50cz4ge1xuICAvKipcbiAgICogRmllbGQgdHlwZSAtIGRpc2NyaW1pbmF0b3IgcHJvcGVydHlcbiAgICovXG4gIHR5cGU6IFwiZHVyYXRpb25cIlxufVxuXG4vKipcbiAqIER1cmF0aW9uLXNwZWNpZmljIGNvbnN0cmFpbnRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHVyYXRpb25Db25zdHJhaW50cyBleHRlbmRzIEJhc2VDb25zdHJhaW50cyB7XG4gIC8qKlxuICAgKiBNaW5pbXVtIGFsbG93ZWQgZHVyYXRpb24gKElTTyA4NjAxIGZvcm1hdClcbiAgICovXG4gIG1pbmltdW0/OiBzdHJpbmdcblxuICAvKipcbiAgICogTWF4aW11bSBhbGxvd2VkIGR1cmF0aW9uIChJU08gODYwMSBmb3JtYXQpXG4gICAqL1xuICBtYXhpbXVtPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFJlc3RyaWN0IHZhbHVlcyB0byBhIHNwZWNpZmllZCBzZXQgb2YgZHVyYXRpb25zXG4gICAqIFNob3VsZCBiZSBpbiBJU08gODYwMSBkdXJhdGlvbiBmb3JtYXRcbiAgICovXG4gIGVudW0/OiBzdHJpbmdbXVxufVxuIl19
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* GeoJSON field type
|
|
4
|
+
*/
|
|
5
|
+
export interface GeojsonField extends BaseField<GeojsonConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "geojson";
|
|
10
|
+
/**
|
|
11
|
+
* Format of the geojson
|
|
12
|
+
* - default: standard GeoJSON
|
|
13
|
+
* - topojson: TopoJSON format
|
|
14
|
+
*/
|
|
15
|
+
format?: "default" | "topojson";
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* GeoJSON-specific constraints
|
|
19
|
+
*/
|
|
20
|
+
export interface GeojsonConstraints extends BaseConstraints {
|
|
21
|
+
/**
|
|
22
|
+
* JSON Schema object for validating the object structure and properties
|
|
23
|
+
*/
|
|
24
|
+
jsonSchema?: Record<string, any>;
|
|
25
|
+
/**
|
|
26
|
+
* Restrict values to a specified set of GeoJSON objects
|
|
27
|
+
* Serialized as strings or GeoJSON object literals
|
|
28
|
+
*/
|
|
29
|
+
enum?: string[] | Record<string, any>[];
|
|
30
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2VvanNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpZWxkL3R5cGVzL0dlb2pzb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmFzZUNvbnN0cmFpbnRzLCBCYXNlRmllbGQgfSBmcm9tIFwiLi9CYXNlLnRzXCJcblxuLyoqXG4gKiBHZW9KU09OIGZpZWxkIHR5cGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHZW9qc29uRmllbGQgZXh0ZW5kcyBCYXNlRmllbGQ8R2VvanNvbkNvbnN0cmFpbnRzPiB7XG4gIC8qKlxuICAgKiBGaWVsZCB0eXBlIC0gZGlzY3JpbWluYXRvciBwcm9wZXJ0eVxuICAgKi9cbiAgdHlwZTogXCJnZW9qc29uXCJcblxuICAvKipcbiAgICogRm9ybWF0IG9mIHRoZSBnZW9qc29uXG4gICAqIC0gZGVmYXVsdDogc3RhbmRhcmQgR2VvSlNPTlxuICAgKiAtIHRvcG9qc29uOiBUb3BvSlNPTiBmb3JtYXRcbiAgICovXG4gIGZvcm1hdD86IFwiZGVmYXVsdFwiIHwgXCJ0b3BvanNvblwiXG59XG5cbi8qKlxuICogR2VvSlNPTi1zcGVjaWZpYyBjb25zdHJhaW50c1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEdlb2pzb25Db25zdHJhaW50cyBleHRlbmRzIEJhc2VDb25zdHJhaW50cyB7XG4gIC8qKlxuICAgKiBKU09OIFNjaGVtYSBvYmplY3QgZm9yIHZhbGlkYXRpbmcgdGhlIG9iamVjdCBzdHJ1Y3R1cmUgYW5kIHByb3BlcnRpZXNcbiAgICovXG4gIGpzb25TY2hlbWE/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG5cbiAgLyoqXG4gICAqIFJlc3RyaWN0IHZhbHVlcyB0byBhIHNwZWNpZmllZCBzZXQgb2YgR2VvSlNPTiBvYmplY3RzXG4gICAqIFNlcmlhbGl6ZWQgYXMgc3RyaW5ncyBvciBHZW9KU09OIG9iamVjdCBsaXRlcmFsc1xuICAgKi9cbiAgZW51bT86IHN0cmluZ1tdIHwgUmVjb3JkPHN0cmluZywgYW55PltdXG59XG4iXX0=
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Geopoint field type
|
|
4
|
+
*/
|
|
5
|
+
export interface GeopointField extends BaseField<GeopointConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "geopoint";
|
|
10
|
+
/**
|
|
11
|
+
* Format of the geopoint
|
|
12
|
+
* - default: "lon,lat" string with comma separator
|
|
13
|
+
* - array: [lon,lat] array
|
|
14
|
+
* - object: {lon:x, lat:y} object
|
|
15
|
+
*/
|
|
16
|
+
format?: "default" | "array" | "object";
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Geopoint-specific constraints
|
|
20
|
+
*/
|
|
21
|
+
export interface GeopointConstraints extends BaseConstraints {
|
|
22
|
+
/**
|
|
23
|
+
* Restrict values to a specified set of geopoints
|
|
24
|
+
* Format depends on the field's format setting
|
|
25
|
+
*/
|
|
26
|
+
enum?: string[] | number[][] | Record<string, number>[];
|
|
27
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2VvcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9maWVsZC90eXBlcy9HZW9wb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCYXNlQ29uc3RyYWludHMsIEJhc2VGaWVsZCB9IGZyb20gXCIuL0Jhc2UudHNcIlxuXG4vKipcbiAqIEdlb3BvaW50IGZpZWxkIHR5cGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHZW9wb2ludEZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkPEdlb3BvaW50Q29uc3RyYWludHM+IHtcbiAgLyoqXG4gICAqIEZpZWxkIHR5cGUgLSBkaXNjcmltaW5hdG9yIHByb3BlcnR5XG4gICAqL1xuICB0eXBlOiBcImdlb3BvaW50XCJcblxuICAvKipcbiAgICogRm9ybWF0IG9mIHRoZSBnZW9wb2ludFxuICAgKiAtIGRlZmF1bHQ6IFwibG9uLGxhdFwiIHN0cmluZyB3aXRoIGNvbW1hIHNlcGFyYXRvclxuICAgKiAtIGFycmF5OiBbbG9uLGxhdF0gYXJyYXlcbiAgICogLSBvYmplY3Q6IHtsb246eCwgbGF0Onl9IG9iamVjdFxuICAgKi9cbiAgZm9ybWF0PzogXCJkZWZhdWx0XCIgfCBcImFycmF5XCIgfCBcIm9iamVjdFwiXG59XG5cbi8qKlxuICogR2VvcG9pbnQtc3BlY2lmaWMgY29uc3RyYWludHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHZW9wb2ludENvbnN0cmFpbnRzIGV4dGVuZHMgQmFzZUNvbnN0cmFpbnRzIHtcbiAgLyoqXG4gICAqIFJlc3RyaWN0IHZhbHVlcyB0byBhIHNwZWNpZmllZCBzZXQgb2YgZ2VvcG9pbnRzXG4gICAqIEZvcm1hdCBkZXBlbmRzIG9uIHRoZSBmaWVsZCdzIGZvcm1hdCBzZXR0aW5nXG4gICAqL1xuICBlbnVtPzogc3RyaW5nW10gfCBudW1iZXJbXVtdIHwgUmVjb3JkPHN0cmluZywgbnVtYmVyPltdXG59XG4iXX0=
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Integer field type
|
|
4
|
+
*/
|
|
5
|
+
export interface IntegerField extends BaseField<IntegerConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "integer";
|
|
10
|
+
/**
|
|
11
|
+
* Character used as thousands separator
|
|
12
|
+
*/
|
|
13
|
+
groupChar?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Whether number is presented without currency symbols or percent signs
|
|
16
|
+
*/
|
|
17
|
+
bareNumber?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Categories for enum values
|
|
20
|
+
* Can be an array of values or an array of {value, label} objects
|
|
21
|
+
*/
|
|
22
|
+
categories?: number[] | Array<{
|
|
23
|
+
value: number;
|
|
24
|
+
label: string;
|
|
25
|
+
}>;
|
|
26
|
+
/**
|
|
27
|
+
* Whether categories should be considered to have a natural order
|
|
28
|
+
*/
|
|
29
|
+
categoriesOrdered?: boolean;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Integer-specific constraints
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
export interface IntegerConstraints extends BaseConstraints {
|
|
36
|
+
/**
|
|
37
|
+
* Minimum allowed value
|
|
38
|
+
*/
|
|
39
|
+
minimum?: number | string;
|
|
40
|
+
/**
|
|
41
|
+
* Maximum allowed value
|
|
42
|
+
*/
|
|
43
|
+
maximum?: number | string;
|
|
44
|
+
/**
|
|
45
|
+
* Exclusive minimum allowed value
|
|
46
|
+
*/
|
|
47
|
+
exclusiveMinimum?: number | string;
|
|
48
|
+
/**
|
|
49
|
+
* Exclusive maximum allowed value
|
|
50
|
+
*/
|
|
51
|
+
exclusiveMaximum?: number | string;
|
|
52
|
+
/**
|
|
53
|
+
* Restrict values to a specified set
|
|
54
|
+
* Can be an array of integers or strings that parse to integers
|
|
55
|
+
*/
|
|
56
|
+
enum?: number[] | string[];
|
|
57
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpZWxkL3R5cGVzL0ludGVnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmFzZUNvbnN0cmFpbnRzLCBCYXNlRmllbGQgfSBmcm9tIFwiLi9CYXNlLnRzXCJcblxuLyoqXG4gKiBJbnRlZ2VyIGZpZWxkIHR5cGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlZ2VyRmllbGQgZXh0ZW5kcyBCYXNlRmllbGQ8SW50ZWdlckNvbnN0cmFpbnRzPiB7XG4gIC8qKlxuICAgKiBGaWVsZCB0eXBlIC0gZGlzY3JpbWluYXRvciBwcm9wZXJ0eVxuICAgKi9cbiAgdHlwZTogXCJpbnRlZ2VyXCJcblxuICAvKipcbiAgICogQ2hhcmFjdGVyIHVzZWQgYXMgdGhvdXNhbmRzIHNlcGFyYXRvclxuICAgKi9cbiAgZ3JvdXBDaGFyPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgbnVtYmVyIGlzIHByZXNlbnRlZCB3aXRob3V0IGN1cnJlbmN5IHN5bWJvbHMgb3IgcGVyY2VudCBzaWduc1xuICAgKi9cbiAgYmFyZU51bWJlcj86IGJvb2xlYW5cblxuICAvKipcbiAgICogQ2F0ZWdvcmllcyBmb3IgZW51bSB2YWx1ZXNcbiAgICogQ2FuIGJlIGFuIGFycmF5IG9mIHZhbHVlcyBvciBhbiBhcnJheSBvZiB7dmFsdWUsIGxhYmVsfSBvYmplY3RzXG4gICAqL1xuICBjYXRlZ29yaWVzPzogbnVtYmVyW10gfCBBcnJheTx7IHZhbHVlOiBudW1iZXI7IGxhYmVsOiBzdHJpbmcgfT5cblxuICAvKipcbiAgICogV2hldGhlciBjYXRlZ29yaWVzIHNob3VsZCBiZSBjb25zaWRlcmVkIHRvIGhhdmUgYSBuYXR1cmFsIG9yZGVyXG4gICAqL1xuICBjYXRlZ29yaWVzT3JkZXJlZD86IGJvb2xlYW5cbn1cblxuLyoqXG4gKiBJbnRlZ2VyLXNwZWNpZmljIGNvbnN0cmFpbnRzXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlZ2VyQ29uc3RyYWludHMgZXh0ZW5kcyBCYXNlQ29uc3RyYWludHMge1xuICAvKipcbiAgICogTWluaW11bSBhbGxvd2VkIHZhbHVlXG4gICAqL1xuICBtaW5pbXVtPzogbnVtYmVyIHwgc3RyaW5nXG5cbiAgLyoqXG4gICAqIE1heGltdW0gYWxsb3dlZCB2YWx1ZVxuICAgKi9cbiAgbWF4aW11bT86IG51bWJlciB8IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBFeGNsdXNpdmUgbWluaW11bSBhbGxvd2VkIHZhbHVlXG4gICAqL1xuICBleGNsdXNpdmVNaW5pbXVtPzogbnVtYmVyIHwgc3RyaW5nXG5cbiAgLyoqXG4gICAqIEV4Y2x1c2l2ZSBtYXhpbXVtIGFsbG93ZWQgdmFsdWVcbiAgICovXG4gIGV4Y2x1c2l2ZU1heGltdW0/OiBudW1iZXIgfCBzdHJpbmdcblxuICAvKipcbiAgICogUmVzdHJpY3QgdmFsdWVzIHRvIGEgc3BlY2lmaWVkIHNldFxuICAgKiBDYW4gYmUgYW4gYXJyYXkgb2YgaW50ZWdlcnMgb3Igc3RyaW5ncyB0aGF0IHBhcnNlIHRvIGludGVnZXJzXG4gICAqL1xuICBlbnVtPzogbnVtYmVyW10gfCBzdHJpbmdbXVxufVxuIl19
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* List field type (primitive values ordered collection)
|
|
4
|
+
*/
|
|
5
|
+
export interface ListField extends BaseField<ListConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "list";
|
|
10
|
+
/**
|
|
11
|
+
* Character used to separate values in the list
|
|
12
|
+
*/
|
|
13
|
+
delimiter?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Type of items in the list
|
|
16
|
+
*/
|
|
17
|
+
itemType?: "string" | "integer" | "number" | "boolean" | "datetime" | "date" | "time";
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* List-specific constraints
|
|
21
|
+
*/
|
|
22
|
+
export interface ListConstraints extends BaseConstraints {
|
|
23
|
+
/**
|
|
24
|
+
* Minimum number of list items
|
|
25
|
+
*/
|
|
26
|
+
minLength?: number;
|
|
27
|
+
/**
|
|
28
|
+
* Maximum number of list items
|
|
29
|
+
*/
|
|
30
|
+
maxLength?: number;
|
|
31
|
+
/**
|
|
32
|
+
* Restrict values to a specified set of lists
|
|
33
|
+
* Either as delimited strings or arrays
|
|
34
|
+
*/
|
|
35
|
+
enum?: string[] | any[][];
|
|
36
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpZWxkL3R5cGVzL0xpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmFzZUNvbnN0cmFpbnRzLCBCYXNlRmllbGQgfSBmcm9tIFwiLi9CYXNlLnRzXCJcblxuLyoqXG4gKiBMaXN0IGZpZWxkIHR5cGUgKHByaW1pdGl2ZSB2YWx1ZXMgb3JkZXJlZCBjb2xsZWN0aW9uKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3RGaWVsZCBleHRlbmRzIEJhc2VGaWVsZDxMaXN0Q29uc3RyYWludHM+IHtcbiAgLyoqXG4gICAqIEZpZWxkIHR5cGUgLSBkaXNjcmltaW5hdG9yIHByb3BlcnR5XG4gICAqL1xuICB0eXBlOiBcImxpc3RcIlxuXG4gIC8qKlxuICAgKiBDaGFyYWN0ZXIgdXNlZCB0byBzZXBhcmF0ZSB2YWx1ZXMgaW4gdGhlIGxpc3RcbiAgICovXG4gIGRlbGltaXRlcj86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIGl0ZW1zIGluIHRoZSBsaXN0XG4gICAqL1xuICBpdGVtVHlwZT86XG4gICAgfCBcInN0cmluZ1wiXG4gICAgfCBcImludGVnZXJcIlxuICAgIHwgXCJudW1iZXJcIlxuICAgIHwgXCJib29sZWFuXCJcbiAgICB8IFwiZGF0ZXRpbWVcIlxuICAgIHwgXCJkYXRlXCJcbiAgICB8IFwidGltZVwiXG59XG5cbi8qKlxuICogTGlzdC1zcGVjaWZpYyBjb25zdHJhaW50c1xuICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3RDb25zdHJhaW50cyBleHRlbmRzIEJhc2VDb25zdHJhaW50cyB7XG4gIC8qKlxuICAgKiBNaW5pbXVtIG51bWJlciBvZiBsaXN0IGl0ZW1zXG4gICAqL1xuICBtaW5MZW5ndGg/OiBudW1iZXJcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgbGlzdCBpdGVtc1xuICAgKi9cbiAgbWF4TGVuZ3RoPzogbnVtYmVyXG5cbiAgLyoqXG4gICAqIFJlc3RyaWN0IHZhbHVlcyB0byBhIHNwZWNpZmllZCBzZXQgb2YgbGlzdHNcbiAgICogRWl0aGVyIGFzIGRlbGltaXRlZCBzdHJpbmdzIG9yIGFycmF5c1xuICAgKi9cbiAgZW51bT86IHN0cmluZ1tdIHwgYW55W11bXVxufVxuIl19
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Number field type
|
|
4
|
+
*/
|
|
5
|
+
export interface NumberField extends BaseField<NumberConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "number";
|
|
10
|
+
/**
|
|
11
|
+
* Character used as decimal separator
|
|
12
|
+
*/
|
|
13
|
+
decimalChar?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Character used as thousands separator
|
|
16
|
+
*/
|
|
17
|
+
groupChar?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Whether number is presented without currency symbols or percent signs
|
|
20
|
+
*/
|
|
21
|
+
bareNumber?: boolean;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Number-specific constraints
|
|
25
|
+
*/
|
|
26
|
+
export interface NumberConstraints extends BaseConstraints {
|
|
27
|
+
/**
|
|
28
|
+
* Minimum allowed value
|
|
29
|
+
*/
|
|
30
|
+
minimum?: number | string;
|
|
31
|
+
/**
|
|
32
|
+
* Maximum allowed value
|
|
33
|
+
*/
|
|
34
|
+
maximum?: number | string;
|
|
35
|
+
/**
|
|
36
|
+
* Exclusive minimum allowed value
|
|
37
|
+
*/
|
|
38
|
+
exclusiveMinimum?: number | string;
|
|
39
|
+
/**
|
|
40
|
+
* Exclusive maximum allowed value
|
|
41
|
+
*/
|
|
42
|
+
exclusiveMaximum?: number | string;
|
|
43
|
+
/**
|
|
44
|
+
* Restrict values to a specified set
|
|
45
|
+
* Can be an array of numbers or strings that parse to numbers
|
|
46
|
+
*/
|
|
47
|
+
enum?: number[] | string[];
|
|
48
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZmllbGQvdHlwZXMvTnVtYmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEJhc2VDb25zdHJhaW50cywgQmFzZUZpZWxkIH0gZnJvbSBcIi4vQmFzZS50c1wiXG5cbi8qKlxuICogTnVtYmVyIGZpZWxkIHR5cGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOdW1iZXJGaWVsZCBleHRlbmRzIEJhc2VGaWVsZDxOdW1iZXJDb25zdHJhaW50cz4ge1xuICAvKipcbiAgICogRmllbGQgdHlwZSAtIGRpc2NyaW1pbmF0b3IgcHJvcGVydHlcbiAgICovXG4gIHR5cGU6IFwibnVtYmVyXCJcblxuICAvKipcbiAgICogQ2hhcmFjdGVyIHVzZWQgYXMgZGVjaW1hbCBzZXBhcmF0b3JcbiAgICovXG4gIGRlY2ltYWxDaGFyPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIENoYXJhY3RlciB1c2VkIGFzIHRob3VzYW5kcyBzZXBhcmF0b3JcbiAgICovXG4gIGdyb3VwQ2hhcj86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG51bWJlciBpcyBwcmVzZW50ZWQgd2l0aG91dCBjdXJyZW5jeSBzeW1ib2xzIG9yIHBlcmNlbnQgc2lnbnNcbiAgICovXG4gIGJhcmVOdW1iZXI/OiBib29sZWFuXG59XG5cbi8qKlxuICogTnVtYmVyLXNwZWNpZmljIGNvbnN0cmFpbnRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTnVtYmVyQ29uc3RyYWludHMgZXh0ZW5kcyBCYXNlQ29uc3RyYWludHMge1xuICAvKipcbiAgICogTWluaW11bSBhbGxvd2VkIHZhbHVlXG4gICAqL1xuICBtaW5pbXVtPzogbnVtYmVyIHwgc3RyaW5nXG5cbiAgLyoqXG4gICAqIE1heGltdW0gYWxsb3dlZCB2YWx1ZVxuICAgKi9cbiAgbWF4aW11bT86IG51bWJlciB8IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBFeGNsdXNpdmUgbWluaW11bSBhbGxvd2VkIHZhbHVlXG4gICAqL1xuICBleGNsdXNpdmVNaW5pbXVtPzogbnVtYmVyIHwgc3RyaW5nXG5cbiAgLyoqXG4gICAqIEV4Y2x1c2l2ZSBtYXhpbXVtIGFsbG93ZWQgdmFsdWVcbiAgICovXG4gIGV4Y2x1c2l2ZU1heGltdW0/OiBudW1iZXIgfCBzdHJpbmdcblxuICAvKipcbiAgICogUmVzdHJpY3QgdmFsdWVzIHRvIGEgc3BlY2lmaWVkIHNldFxuICAgKiBDYW4gYmUgYW4gYXJyYXkgb2YgbnVtYmVycyBvciBzdHJpbmdzIHRoYXQgcGFyc2UgdG8gbnVtYmVyc1xuICAgKi9cbiAgZW51bT86IG51bWJlcltdIHwgc3RyaW5nW11cbn1cbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Object field type (serialized JSON object)
|
|
4
|
+
*/
|
|
5
|
+
export interface ObjectField extends BaseField<ObjectConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "object";
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Object-specific constraints
|
|
13
|
+
*/
|
|
14
|
+
export interface ObjectConstraints extends BaseConstraints {
|
|
15
|
+
/**
|
|
16
|
+
* Minimum number of properties
|
|
17
|
+
*/
|
|
18
|
+
minLength?: number;
|
|
19
|
+
/**
|
|
20
|
+
* Maximum number of properties
|
|
21
|
+
*/
|
|
22
|
+
maxLength?: number;
|
|
23
|
+
/**
|
|
24
|
+
* JSON Schema object for validating the object structure and properties
|
|
25
|
+
*/
|
|
26
|
+
jsonSchema?: Record<string, any>;
|
|
27
|
+
/**
|
|
28
|
+
* Restrict values to a specified set of objects
|
|
29
|
+
* Serialized as JSON strings or object literals
|
|
30
|
+
*/
|
|
31
|
+
enum?: string[] | Record<string, any>[];
|
|
32
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZmllbGQvdHlwZXMvT2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEJhc2VDb25zdHJhaW50cywgQmFzZUZpZWxkIH0gZnJvbSBcIi4vQmFzZS50c1wiXG5cbi8qKlxuICogT2JqZWN0IGZpZWxkIHR5cGUgKHNlcmlhbGl6ZWQgSlNPTiBvYmplY3QpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT2JqZWN0RmllbGQgZXh0ZW5kcyBCYXNlRmllbGQ8T2JqZWN0Q29uc3RyYWludHM+IHtcbiAgLyoqXG4gICAqIEZpZWxkIHR5cGUgLSBkaXNjcmltaW5hdG9yIHByb3BlcnR5XG4gICAqL1xuICB0eXBlOiBcIm9iamVjdFwiXG59XG5cbi8qKlxuICogT2JqZWN0LXNwZWNpZmljIGNvbnN0cmFpbnRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT2JqZWN0Q29uc3RyYWludHMgZXh0ZW5kcyBCYXNlQ29uc3RyYWludHMge1xuICAvKipcbiAgICogTWluaW11bSBudW1iZXIgb2YgcHJvcGVydGllc1xuICAgKi9cbiAgbWluTGVuZ3RoPzogbnVtYmVyXG5cbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIHByb3BlcnRpZXNcbiAgICovXG4gIG1heExlbmd0aD86IG51bWJlclxuXG4gIC8qKlxuICAgKiBKU09OIFNjaGVtYSBvYmplY3QgZm9yIHZhbGlkYXRpbmcgdGhlIG9iamVjdCBzdHJ1Y3R1cmUgYW5kIHByb3BlcnRpZXNcbiAgICovXG4gIGpzb25TY2hlbWE/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG5cbiAgLyoqXG4gICAqIFJlc3RyaWN0IHZhbHVlcyB0byBhIHNwZWNpZmllZCBzZXQgb2Ygb2JqZWN0c1xuICAgKiBTZXJpYWxpemVkIGFzIEpTT04gc3RyaW5ncyBvciBvYmplY3QgbGl0ZXJhbHNcbiAgICovXG4gIGVudW0/OiBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIGFueT5bXVxufVxuIl19
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { BaseConstraints, BaseField } from "./Base.ts";
|
|
2
|
+
/**
|
|
3
|
+
* String field type
|
|
4
|
+
*/
|
|
5
|
+
export interface StringField extends BaseField<StringConstraints> {
|
|
6
|
+
/**
|
|
7
|
+
* Field type - discriminator property
|
|
8
|
+
*/
|
|
9
|
+
type: "string";
|
|
10
|
+
/**
|
|
11
|
+
* Format of the string
|
|
12
|
+
* - email: valid email address
|
|
13
|
+
* - uri: valid URI
|
|
14
|
+
* - binary: base64 encoded string
|
|
15
|
+
* - uuid: valid UUID string
|
|
16
|
+
*/
|
|
17
|
+
format?: "email" | "uri" | "binary" | "uuid";
|
|
18
|
+
/**
|
|
19
|
+
* Categories for enum values
|
|
20
|
+
* Can be an array of string values or an array of {value, label} objects
|
|
21
|
+
*/
|
|
22
|
+
categories?: string[] | Array<{
|
|
23
|
+
value: string;
|
|
24
|
+
label: string;
|
|
25
|
+
}>;
|
|
26
|
+
/**
|
|
27
|
+
* Whether categories should be considered to have a natural order
|
|
28
|
+
*/
|
|
29
|
+
categoriesOrdered?: boolean;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* String-specific constraints
|
|
33
|
+
*/
|
|
34
|
+
export interface StringConstraints extends BaseConstraints {
|
|
35
|
+
/**
|
|
36
|
+
* Minimum string length
|
|
37
|
+
*/
|
|
38
|
+
minLength?: number;
|
|
39
|
+
/**
|
|
40
|
+
* Maximum string length
|
|
41
|
+
*/
|
|
42
|
+
maxLength?: number;
|
|
43
|
+
/**
|
|
44
|
+
* Regular expression pattern to match
|
|
45
|
+
*/
|
|
46
|
+
pattern?: string;
|
|
47
|
+
/**
|
|
48
|
+
* Restrict values to a specified set of strings
|
|
49
|
+
*/
|
|
50
|
+
enum?: string[];
|
|
51
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RyaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZmllbGQvdHlwZXMvU3RyaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEJhc2VDb25zdHJhaW50cywgQmFzZUZpZWxkIH0gZnJvbSBcIi4vQmFzZS50c1wiXG5cbi8qKlxuICogU3RyaW5nIGZpZWxkIHR5cGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdHJpbmdGaWVsZCBleHRlbmRzIEJhc2VGaWVsZDxTdHJpbmdDb25zdHJhaW50cz4ge1xuICAvKipcbiAgICogRmllbGQgdHlwZSAtIGRpc2NyaW1pbmF0b3IgcHJvcGVydHlcbiAgICovXG4gIHR5cGU6IFwic3RyaW5nXCJcblxuICAvKipcbiAgICogRm9ybWF0IG9mIHRoZSBzdHJpbmdcbiAgICogLSBlbWFpbDogdmFsaWQgZW1haWwgYWRkcmVzc1xuICAgKiAtIHVyaTogdmFsaWQgVVJJXG4gICAqIC0gYmluYXJ5OiBiYXNlNjQgZW5jb2RlZCBzdHJpbmdcbiAgICogLSB1dWlkOiB2YWxpZCBVVUlEIHN0cmluZ1xuICAgKi9cbiAgZm9ybWF0PzogXCJlbWFpbFwiIHwgXCJ1cmlcIiB8IFwiYmluYXJ5XCIgfCBcInV1aWRcIlxuXG4gIC8qKlxuICAgKiBDYXRlZ29yaWVzIGZvciBlbnVtIHZhbHVlc1xuICAgKiBDYW4gYmUgYW4gYXJyYXkgb2Ygc3RyaW5nIHZhbHVlcyBvciBhbiBhcnJheSBvZiB7dmFsdWUsIGxhYmVsfSBvYmplY3RzXG4gICAqL1xuICBjYXRlZ29yaWVzPzogc3RyaW5nW10gfCBBcnJheTx7IHZhbHVlOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmcgfT5cblxuICAvKipcbiAgICogV2hldGhlciBjYXRlZ29yaWVzIHNob3VsZCBiZSBjb25zaWRlcmVkIHRvIGhhdmUgYSBuYXR1cmFsIG9yZGVyXG4gICAqL1xuICBjYXRlZ29yaWVzT3JkZXJlZD86IGJvb2xlYW5cbn1cblxuLyoqXG4gKiBTdHJpbmctc3BlY2lmaWMgY29uc3RyYWludHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdHJpbmdDb25zdHJhaW50cyBleHRlbmRzIEJhc2VDb25zdHJhaW50cyB7XG4gIC8qKlxuICAgKiBNaW5pbXVtIHN0cmluZyBsZW5ndGhcbiAgICovXG4gIG1pbkxlbmd0aD86IG51bWJlclxuXG4gIC8qKlxuICAgKiBNYXhpbXVtIHN0cmluZyBsZW5ndGhcbiAgICovXG4gIG1heExlbmd0aD86IG51bWJlclxuXG4gIC8qKlxuICAgKiBSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybiB0byBtYXRjaFxuICAgKi9cbiAgcGF0dGVybj86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBSZXN0cmljdCB2YWx1ZXMgdG8gYSBzcGVjaWZpZWQgc2V0IG9mIHN0cmluZ3NcbiAgICovXG4gIGVudW0/OiBzdHJpbmdbXVxufVxuIl19
|