fairspec-cardealer 0.1.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/build/index.js ADDED
@@ -0,0 +1,7 @@
1
+ import * as standard from "@fairspec/metadata";
2
+ import { z } from "zod";
3
+ import * as extension from "./models/dataset.js";
4
+ export * from "./models/index.js";
5
+ export const Dataset = z.intersection(standard.Dataset, extension.Dataset);
6
+ export const Resource = z.intersection(standard.Resource, extension.Resource);
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssUUFBUSxNQUFNLG9CQUFvQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUE7QUFDdkIsT0FBTyxLQUFLLFNBQVMsTUFBTSxxQkFBcUIsQ0FBQTtBQUVoRCxjQUFjLG1CQUFtQixDQUFBO0FBRWpDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgc3RhbmRhcmQgZnJvbSBcIkBmYWlyc3BlYy9tZXRhZGF0YVwiXG5pbXBvcnQgeyB6IH0gZnJvbSBcInpvZFwiXG5pbXBvcnQgKiBhcyBleHRlbnNpb24gZnJvbSBcIi4vbW9kZWxzL2RhdGFzZXQudHNcIlxuXG5leHBvcnQgKiBmcm9tIFwiLi9tb2RlbHMvaW5kZXgudHNcIlxuXG5leHBvcnQgY29uc3QgRGF0YXNldCA9IHouaW50ZXJzZWN0aW9uKHN0YW5kYXJkLkRhdGFzZXQsIGV4dGVuc2lvbi5EYXRhc2V0KVxuZXhwb3J0IGNvbnN0IFJlc291cmNlID0gei5pbnRlcnNlY3Rpb24oc3RhbmRhcmQuUmVzb3VyY2UsIGV4dGVuc2lvbi5SZXNvdXJjZSlcblxuZXhwb3J0IHR5cGUgRGF0YXNldCA9IHouaW5mZXI8dHlwZW9mIERhdGFzZXQ+XG5leHBvcnQgdHlwZSBSZXNvdXJjZSA9IHouaW5mZXI8dHlwZW9mIFJlc291cmNlPlxuIl19
@@ -0,0 +1,29 @@
1
+ import { z } from "zod";
2
+ export declare const Car: z.ZodObject<{
3
+ showroomId: z.ZodOptional<z.ZodString>;
4
+ title: z.ZodString;
5
+ url: z.ZodString;
6
+ price: z.ZodNumber;
7
+ currency: z.ZodString;
8
+ year: z.ZodOptional<z.ZodNumber>;
9
+ mileage: z.ZodNumber;
10
+ brand: z.ZodString;
11
+ model: z.ZodString;
12
+ version: z.ZodString;
13
+ fuel: z.ZodUnion<readonly [z.ZodLiteral<"diesel">, z.ZodLiteral<"petrol">, z.ZodLiteral<"hybrid">, z.ZodLiteral<"electric">]>;
14
+ gearbox: z.ZodUnion<readonly [z.ZodLiteral<"manual">, z.ZodLiteral<"auto">]>;
15
+ category: z.ZodUnion<readonly [z.ZodLiteral<"small">, z.ZodLiteral<"estate">, z.ZodLiteral<"saloon">, z.ZodLiteral<"suv">, z.ZodLiteral<"van">, z.ZodLiteral<"sport">, z.ZodLiteral<"cabrio">]>;
16
+ color: z.ZodUnion<readonly [z.ZodLiteral<"grey">, z.ZodLiteral<"black">, z.ZodLiteral<"white">, z.ZodLiteral<"blue">, z.ZodLiteral<"red">, z.ZodLiteral<"green">, z.ZodLiteral<"yellow">, z.ZodLiteral<"orange">]>;
17
+ door: z.ZodUnion<readonly [z.ZodLiteral<"twothree">, z.ZodLiteral<"fourfive">, z.ZodLiteral<"sixseven">]>;
18
+ power: z.ZodOptional<z.ZodNumber>;
19
+ cubics: z.ZodOptional<z.ZodNumber>;
20
+ seats: z.ZodOptional<z.ZodNumber>;
21
+ owners: z.ZodOptional<z.ZodNumber>;
22
+ month: z.ZodOptional<z.ZodNumber>;
23
+ warranty: z.ZodOptional<z.ZodNumber>;
24
+ range: z.ZodOptional<z.ZodNumber>;
25
+ battery: z.ZodOptional<z.ZodNumber>;
26
+ plate: z.ZodOptional<z.ZodString>;
27
+ vin: z.ZodOptional<z.ZodString>;
28
+ }, z.core.$strip>;
29
+ export type Car = z.infer<typeof Car>;
@@ -0,0 +1,30 @@
1
+ // biome-ignore-all format: DO NOT UPDATE this @generated file
2
+ import { z } from "zod";
3
+ export const Car = z.object({
4
+ showroomId: z.string().optional(),
5
+ title: z.string(),
6
+ url: z.string(),
7
+ price: z.number(),
8
+ currency: z.string(),
9
+ year: z.number().optional(),
10
+ mileage: z.number(),
11
+ brand: z.string(),
12
+ model: z.string(),
13
+ version: z.string(),
14
+ fuel: z.union([z.literal("diesel"), z.literal("petrol"), z.literal("hybrid"), z.literal("electric")]),
15
+ gearbox: z.union([z.literal("manual"), z.literal("auto")]),
16
+ category: z.union([z.literal("small"), z.literal("estate"), z.literal("saloon"), z.literal("suv"), z.literal("van"), z.literal("sport"), z.literal("cabrio")]),
17
+ color: z.union([z.literal("grey"), z.literal("black"), z.literal("white"), z.literal("blue"), z.literal("red"), z.literal("green"), z.literal("yellow"), z.literal("orange")]),
18
+ door: z.union([z.literal("twothree"), z.literal("fourfive"), z.literal("sixseven")]),
19
+ power: z.number().optional(),
20
+ cubics: z.number().optional(),
21
+ seats: z.number().optional(),
22
+ owners: z.number().optional(),
23
+ month: z.number().optional(),
24
+ warranty: z.number().optional(),
25
+ range: z.number().optional(),
26
+ battery: z.number().optional(),
27
+ plate: z.string().optional(),
28
+ vin: z.string().optional()
29
+ });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbW9kZWxzL2Nhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw4REFBOEQ7QUFDOUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUN4QixVQUFVLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNqQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNqQixHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNmLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO0lBQ2pCLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO0lBQ3BCLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzNCLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO0lBQ25CLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO0lBQ2pCLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO0lBQ2pCLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO0lBQ25CLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3JHLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDMUQsUUFBUSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDOUosS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM5SyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDcEYsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDNUIsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDN0IsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDNUIsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDN0IsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDNUIsUUFBUSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDL0IsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDNUIsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDOUIsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDNUIsR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDN0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gYmlvbWUtaWdub3JlLWFsbCBmb3JtYXQ6IERPIE5PVCBVUERBVEUgdGhpcyBAZ2VuZXJhdGVkIGZpbGVcbmltcG9ydCB7IHogfSBmcm9tIFwiem9kXCI7XG5cbmV4cG9ydCBjb25zdCBDYXIgPSB6Lm9iamVjdCh7XG4gICAgc2hvd3Jvb21JZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICAgIHRpdGxlOiB6LnN0cmluZygpLFxuICAgIHVybDogei5zdHJpbmcoKSxcbiAgICBwcmljZTogei5udW1iZXIoKSxcbiAgICBjdXJyZW5jeTogei5zdHJpbmcoKSxcbiAgICB5ZWFyOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gICAgbWlsZWFnZTogei5udW1iZXIoKSxcbiAgICBicmFuZDogei5zdHJpbmcoKSxcbiAgICBtb2RlbDogei5zdHJpbmcoKSxcbiAgICB2ZXJzaW9uOiB6LnN0cmluZygpLFxuICAgIGZ1ZWw6IHoudW5pb24oW3oubGl0ZXJhbChcImRpZXNlbFwiKSwgei5saXRlcmFsKFwicGV0cm9sXCIpLCB6LmxpdGVyYWwoXCJoeWJyaWRcIiksIHoubGl0ZXJhbChcImVsZWN0cmljXCIpXSksXG4gICAgZ2VhcmJveDogei51bmlvbihbei5saXRlcmFsKFwibWFudWFsXCIpLCB6LmxpdGVyYWwoXCJhdXRvXCIpXSksXG4gICAgY2F0ZWdvcnk6IHoudW5pb24oW3oubGl0ZXJhbChcInNtYWxsXCIpLCB6LmxpdGVyYWwoXCJlc3RhdGVcIiksIHoubGl0ZXJhbChcInNhbG9vblwiKSwgei5saXRlcmFsKFwic3V2XCIpLCB6LmxpdGVyYWwoXCJ2YW5cIiksIHoubGl0ZXJhbChcInNwb3J0XCIpLCB6LmxpdGVyYWwoXCJjYWJyaW9cIildKSxcbiAgICBjb2xvcjogei51bmlvbihbei5saXRlcmFsKFwiZ3JleVwiKSwgei5saXRlcmFsKFwiYmxhY2tcIiksIHoubGl0ZXJhbChcIndoaXRlXCIpLCB6LmxpdGVyYWwoXCJibHVlXCIpLCB6LmxpdGVyYWwoXCJyZWRcIiksIHoubGl0ZXJhbChcImdyZWVuXCIpLCB6LmxpdGVyYWwoXCJ5ZWxsb3dcIiksIHoubGl0ZXJhbChcIm9yYW5nZVwiKV0pLFxuICAgIGRvb3I6IHoudW5pb24oW3oubGl0ZXJhbChcInR3b3RocmVlXCIpLCB6LmxpdGVyYWwoXCJmb3VyZml2ZVwiKSwgei5saXRlcmFsKFwic2l4c2V2ZW5cIildKSxcbiAgICBwb3dlcjogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICAgIGN1Ymljczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICAgIHNlYXRzOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gICAgb3duZXJzOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gICAgbW9udGg6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgICB3YXJyYW50eTogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICAgIHJhbmdlOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gICAgYmF0dGVyeTogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICAgIHBsYXRlOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gICAgdmluOiB6LnN0cmluZygpLm9wdGlvbmFsKClcbn0pO1xuZXhwb3J0IHR5cGUgQ2FyID0gei5pbmZlcjx0eXBlb2YgQ2FyPlxuIl19
@@ -0,0 +1,91 @@
1
+ import { z } from "zod";
2
+ export declare const CarResource: z.ZodObject<{
3
+ name: z.ZodLiteral<"car">;
4
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
5
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/car.json">;
6
+ }, z.core.$strip>;
7
+ export declare const DealerResource: z.ZodObject<{
8
+ name: z.ZodLiteral<"dealer">;
9
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], null>;
10
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/dealer.json">;
11
+ }, z.core.$strip>;
12
+ export declare const ShowroomResource: z.ZodObject<{
13
+ name: z.ZodLiteral<"showroom">;
14
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
15
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/showroom.json">;
16
+ }, z.core.$strip>;
17
+ export declare const Resource: z.ZodUnion<readonly [z.ZodObject<{
18
+ name: z.ZodLiteral<"car">;
19
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
20
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/car.json">;
21
+ }, z.core.$strip>, z.ZodObject<{
22
+ name: z.ZodLiteral<"dealer">;
23
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], null>;
24
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/dealer.json">;
25
+ }, z.core.$strip>, z.ZodObject<{
26
+ name: z.ZodLiteral<"showroom">;
27
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
28
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/showroom.json">;
29
+ }, z.core.$strip>]>;
30
+ export declare const Dataset: z.ZodObject<{
31
+ $schema: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/profiles/0.1.0/dataset.json">;
32
+ resources: z.ZodTuple<[z.ZodUnion<readonly [z.ZodObject<{
33
+ name: z.ZodLiteral<"car">;
34
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
35
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/car.json">;
36
+ }, z.core.$strip>, z.ZodObject<{
37
+ name: z.ZodLiteral<"dealer">;
38
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], null>;
39
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/dealer.json">;
40
+ }, z.core.$strip>, z.ZodObject<{
41
+ name: z.ZodLiteral<"showroom">;
42
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
43
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/showroom.json">;
44
+ }, z.core.$strip>]>], z.ZodUnion<readonly [z.ZodObject<{
45
+ name: z.ZodLiteral<"car">;
46
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
47
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/car.json">;
48
+ }, z.core.$strip>, z.ZodObject<{
49
+ name: z.ZodLiteral<"dealer">;
50
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], null>;
51
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/dealer.json">;
52
+ }, z.core.$strip>, z.ZodObject<{
53
+ name: z.ZodLiteral<"showroom">;
54
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
55
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/showroom.json">;
56
+ }, z.core.$strip>]>>;
57
+ }, z.core.$strip>;
58
+ export declare const FairspecCardealerProfile: z.ZodObject<{
59
+ $schema: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/profiles/0.1.0/dataset.json">;
60
+ resources: z.ZodTuple<[z.ZodUnion<readonly [z.ZodObject<{
61
+ name: z.ZodLiteral<"car">;
62
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
63
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/car.json">;
64
+ }, z.core.$strip>, z.ZodObject<{
65
+ name: z.ZodLiteral<"dealer">;
66
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], null>;
67
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/dealer.json">;
68
+ }, z.core.$strip>, z.ZodObject<{
69
+ name: z.ZodLiteral<"showroom">;
70
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
71
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/showroom.json">;
72
+ }, z.core.$strip>]>], z.ZodUnion<readonly [z.ZodObject<{
73
+ name: z.ZodLiteral<"car">;
74
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
75
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/car.json">;
76
+ }, z.core.$strip>, z.ZodObject<{
77
+ name: z.ZodLiteral<"dealer">;
78
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], null>;
79
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/dealer.json">;
80
+ }, z.core.$strip>, z.ZodObject<{
81
+ name: z.ZodLiteral<"showroom">;
82
+ data: z.ZodTuple<[z.ZodObject<{}, z.core.$strip>], z.ZodObject<{}, z.core.$strip>>;
83
+ Table: z.ZodLiteral<"https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/showroom.json">;
84
+ }, z.core.$strip>]>>;
85
+ }, z.core.$strip>;
86
+ export type CarResource = z.infer<typeof CarResource>;
87
+ export type DealerResource = z.infer<typeof DealerResource>;
88
+ export type ShowroomResource = z.infer<typeof ShowroomResource>;
89
+ export type Resource = z.infer<typeof Resource>;
90
+ export type Dataset = z.infer<typeof Dataset>;
91
+ export type FairspecCardealerProfile = z.infer<typeof FairspecCardealerProfile>;
@@ -0,0 +1,24 @@
1
+ // biome-ignore-all format: DO NOT UPDATE this @generated file
2
+ import { z } from "zod";
3
+ export const CarResource = z.object({
4
+ name: z.literal("car"),
5
+ data: z.tuple([z.object({})]).rest(z.object({})),
6
+ Table: z.literal("https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/car.json")
7
+ });
8
+ export const DealerResource = z.object({
9
+ name: z.literal("dealer"),
10
+ data: z.tuple([z.object({})]),
11
+ Table: z.literal("https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/dealer.json")
12
+ });
13
+ export const ShowroomResource = z.object({
14
+ name: z.literal("showroom"),
15
+ data: z.tuple([z.object({})]).rest(z.object({})),
16
+ Table: z.literal("https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/showroom.json")
17
+ });
18
+ export const Resource = z.union([CarResource, DealerResource, ShowroomResource]);
19
+ export const Dataset = z.object({
20
+ $schema: z.literal("https://fairspec.github.io/fairspec-cardealer/profiles/0.1.0/dataset.json"),
21
+ resources: z.tuple([Resource]).rest(Resource)
22
+ });
23
+ export const FairspecCardealerProfile = Dataset;
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL21vZGVscy9kYXRhc2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDhEQUE4RDtBQUM5RCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2hDLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUN0QixJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLHNFQUFzRSxDQUFDO0NBQzNGLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ25DLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUN6QixJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM3QixLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyx5RUFBeUUsQ0FBQztDQUM5RixDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3JDLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztJQUMzQixJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLDJFQUEyRSxDQUFDO0NBQ2hHLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7QUFFakYsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDNUIsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsMkVBQTJFLENBQUM7SUFDL0YsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7Q0FDaEQsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gYmlvbWUtaWdub3JlLWFsbCBmb3JtYXQ6IERPIE5PVCBVUERBVEUgdGhpcyBAZ2VuZXJhdGVkIGZpbGVcbmltcG9ydCB7IHogfSBmcm9tIFwiem9kXCI7XG5cbmV4cG9ydCBjb25zdCBDYXJSZXNvdXJjZSA9IHoub2JqZWN0KHtcbiAgICBuYW1lOiB6LmxpdGVyYWwoXCJjYXJcIiksXG4gICAgZGF0YTogei50dXBsZShbei5vYmplY3Qoe30pXSkucmVzdCh6Lm9iamVjdCh7fSkpLFxuICAgIFRhYmxlOiB6LmxpdGVyYWwoXCJodHRwczovL2ZhaXJzcGVjLmdpdGh1Yi5pby9mYWlyc3BlYy1jYXJkZWFsZXIvc2NoZW1hcy8wLjEuMC9jYXIuanNvblwiKVxufSk7XG5cbmV4cG9ydCBjb25zdCBEZWFsZXJSZXNvdXJjZSA9IHoub2JqZWN0KHtcbiAgICBuYW1lOiB6LmxpdGVyYWwoXCJkZWFsZXJcIiksXG4gICAgZGF0YTogei50dXBsZShbei5vYmplY3Qoe30pXSksXG4gICAgVGFibGU6IHoubGl0ZXJhbChcImh0dHBzOi8vZmFpcnNwZWMuZ2l0aHViLmlvL2ZhaXJzcGVjLWNhcmRlYWxlci9zY2hlbWFzLzAuMS4wL2RlYWxlci5qc29uXCIpXG59KTtcblxuZXhwb3J0IGNvbnN0IFNob3dyb29tUmVzb3VyY2UgPSB6Lm9iamVjdCh7XG4gICAgbmFtZTogei5saXRlcmFsKFwic2hvd3Jvb21cIiksXG4gICAgZGF0YTogei50dXBsZShbei5vYmplY3Qoe30pXSkucmVzdCh6Lm9iamVjdCh7fSkpLFxuICAgIFRhYmxlOiB6LmxpdGVyYWwoXCJodHRwczovL2ZhaXJzcGVjLmdpdGh1Yi5pby9mYWlyc3BlYy1jYXJkZWFsZXIvc2NoZW1hcy8wLjEuMC9zaG93cm9vbS5qc29uXCIpXG59KTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlID0gei51bmlvbihbQ2FyUmVzb3VyY2UsIERlYWxlclJlc291cmNlLCBTaG93cm9vbVJlc291cmNlXSk7XG5cbmV4cG9ydCBjb25zdCBEYXRhc2V0ID0gei5vYmplY3Qoe1xuICAgICRzY2hlbWE6IHoubGl0ZXJhbChcImh0dHBzOi8vZmFpcnNwZWMuZ2l0aHViLmlvL2ZhaXJzcGVjLWNhcmRlYWxlci9wcm9maWxlcy8wLjEuMC9kYXRhc2V0Lmpzb25cIiksXG4gICAgcmVzb3VyY2VzOiB6LnR1cGxlKFtSZXNvdXJjZV0pLnJlc3QoUmVzb3VyY2UpXG59KTtcblxuZXhwb3J0IGNvbnN0IEZhaXJzcGVjQ2FyZGVhbGVyUHJvZmlsZSA9IERhdGFzZXQ7XG5leHBvcnQgdHlwZSBDYXJSZXNvdXJjZSA9IHouaW5mZXI8dHlwZW9mIENhclJlc291cmNlPlxuZXhwb3J0IHR5cGUgRGVhbGVyUmVzb3VyY2UgPSB6LmluZmVyPHR5cGVvZiBEZWFsZXJSZXNvdXJjZT5cbmV4cG9ydCB0eXBlIFNob3dyb29tUmVzb3VyY2UgPSB6LmluZmVyPHR5cGVvZiBTaG93cm9vbVJlc291cmNlPlxuZXhwb3J0IHR5cGUgUmVzb3VyY2UgPSB6LmluZmVyPHR5cGVvZiBSZXNvdXJjZT5cbmV4cG9ydCB0eXBlIERhdGFzZXQgPSB6LmluZmVyPHR5cGVvZiBEYXRhc2V0PlxuZXhwb3J0IHR5cGUgRmFpcnNwZWNDYXJkZWFsZXJQcm9maWxlID0gei5pbmZlcjx0eXBlb2YgRmFpcnNwZWNDYXJkZWFsZXJQcm9maWxlPlxuIl19
@@ -0,0 +1,15 @@
1
+ import { z } from "zod";
2
+ export declare const Dealer: z.ZodObject<{
3
+ title: z.ZodString;
4
+ country: z.ZodString;
5
+ region: z.ZodString;
6
+ city: z.ZodString;
7
+ address: z.ZodString;
8
+ postcode: z.ZodOptional<z.ZodString>;
9
+ phone: z.ZodOptional<z.ZodString>;
10
+ email: z.ZodOptional<z.ZodString>;
11
+ url: z.ZodString;
12
+ lon: z.ZodOptional<z.ZodNumber>;
13
+ lat: z.ZodOptional<z.ZodNumber>;
14
+ }, z.core.$strip>;
15
+ export type Dealer = z.infer<typeof Dealer>;
@@ -0,0 +1,16 @@
1
+ // biome-ignore-all format: DO NOT UPDATE this @generated file
2
+ import { z } from "zod";
3
+ export const Dealer = z.object({
4
+ title: z.string(),
5
+ country: z.string(),
6
+ region: z.string(),
7
+ city: z.string(),
8
+ address: z.string(),
9
+ postcode: z.string().optional(),
10
+ phone: z.string().optional(),
11
+ email: z.string().optional(),
12
+ url: z.string(),
13
+ lon: z.number().optional(),
14
+ lat: z.number().optional()
15
+ });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVhbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbW9kZWxzL2RlYWxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw4REFBOEQ7QUFDOUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMzQixLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNqQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNuQixNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNsQixJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNoQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNuQixRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUMvQixLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QixLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QixHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNmLEdBQUcsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzFCLEdBQUcsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0NBQzdCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGJpb21lLWlnbm9yZS1hbGwgZm9ybWF0OiBETyBOT1QgVVBEQVRFIHRoaXMgQGdlbmVyYXRlZCBmaWxlXG5pbXBvcnQgeyB6IH0gZnJvbSBcInpvZFwiO1xuXG5leHBvcnQgY29uc3QgRGVhbGVyID0gei5vYmplY3Qoe1xuICAgIHRpdGxlOiB6LnN0cmluZygpLFxuICAgIGNvdW50cnk6IHouc3RyaW5nKCksXG4gICAgcmVnaW9uOiB6LnN0cmluZygpLFxuICAgIGNpdHk6IHouc3RyaW5nKCksXG4gICAgYWRkcmVzczogei5zdHJpbmcoKSxcbiAgICBwb3N0Y29kZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICAgIHBob25lOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gICAgZW1haWw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICB1cmw6IHouc3RyaW5nKCksXG4gICAgbG9uOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gICAgbGF0OiB6Lm51bWJlcigpLm9wdGlvbmFsKClcbn0pO1xuZXhwb3J0IHR5cGUgRGVhbGVyID0gei5pbmZlcjx0eXBlb2YgRGVhbGVyPlxuIl19
@@ -0,0 +1,4 @@
1
+ export * from "./dataset.ts";
2
+ export * from "./car.ts";
3
+ export * from "./dealer.ts";
4
+ export * from "./showroom.ts";
@@ -0,0 +1,5 @@
1
+ export * from "./dataset.js";
2
+ export * from "./car.js";
3
+ export * from "./dealer.js";
4
+ export * from "./showroom.js";
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUE7QUFDNUIsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxhQUFhLENBQUE7QUFDM0IsY0FBYyxlQUFlLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9kYXRhc2V0LnRzXCJcbmV4cG9ydCAqIGZyb20gXCIuL2Nhci50c1wiXG5leHBvcnQgKiBmcm9tIFwiLi9kZWFsZXIudHNcIlxuZXhwb3J0ICogZnJvbSBcIi4vc2hvd3Jvb20udHNcIlxuIl19
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ export declare const Showroom: z.ZodObject<{
3
+ id: z.ZodString;
4
+ title: z.ZodString;
5
+ country: z.ZodString;
6
+ region: z.ZodString;
7
+ city: z.ZodString;
8
+ address: z.ZodString;
9
+ postcode: z.ZodOptional<z.ZodString>;
10
+ phone: z.ZodOptional<z.ZodString>;
11
+ email: z.ZodOptional<z.ZodString>;
12
+ url: z.ZodOptional<z.ZodString>;
13
+ lon: z.ZodOptional<z.ZodNumber>;
14
+ lat: z.ZodOptional<z.ZodNumber>;
15
+ }, z.core.$strip>;
16
+ export type Showroom = z.infer<typeof Showroom>;
@@ -0,0 +1,17 @@
1
+ // biome-ignore-all format: DO NOT UPDATE this @generated file
2
+ import { z } from "zod";
3
+ export const Showroom = z.object({
4
+ id: z.string(),
5
+ title: z.string(),
6
+ country: z.string(),
7
+ region: z.string(),
8
+ city: z.string(),
9
+ address: z.string(),
10
+ postcode: z.string().optional(),
11
+ phone: z.string().optional(),
12
+ email: z.string().optional(),
13
+ url: z.string().optional(),
14
+ lon: z.number().optional(),
15
+ lat: z.number().optional()
16
+ });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd3Jvb20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9tb2RlbHMvc2hvd3Jvb20udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsOERBQThEO0FBQzlELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDN0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDZCxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNqQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNuQixNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNsQixJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNoQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNuQixRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUMvQixLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QixLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QixHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUMxQixHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUMxQixHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtDQUM3QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBiaW9tZS1pZ25vcmUtYWxsIGZvcm1hdDogRE8gTk9UIFVQREFURSB0aGlzIEBnZW5lcmF0ZWQgZmlsZVxuaW1wb3J0IHsgeiB9IGZyb20gXCJ6b2RcIjtcblxuZXhwb3J0IGNvbnN0IFNob3dyb29tID0gei5vYmplY3Qoe1xuICAgIGlkOiB6LnN0cmluZygpLFxuICAgIHRpdGxlOiB6LnN0cmluZygpLFxuICAgIGNvdW50cnk6IHouc3RyaW5nKCksXG4gICAgcmVnaW9uOiB6LnN0cmluZygpLFxuICAgIGNpdHk6IHouc3RyaW5nKCksXG4gICAgYWRkcmVzczogei5zdHJpbmcoKSxcbiAgICBwb3N0Y29kZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICAgIHBob25lOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gICAgZW1haWw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICB1cmw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICBsb246IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgICBsYXQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKVxufSk7XG5leHBvcnQgdHlwZSBTaG93cm9vbSA9IHouaW5mZXI8dHlwZW9mIFNob3dyb29tPlxuIl19
@@ -0,0 +1,23 @@
1
+ /**
2
+ * This file was automatically generated by json-schema-to-typescript.
3
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
4
+ * and run json-schema-to-typescript to regenerate this file.
5
+ */
6
+ export type CarDealerDataPackageProfile = Package;
7
+ export type Schema = "https://raw.githubusercontent.com/datisthq/cardealerdp/v0.1.0/schemas/car.json";
8
+ export interface Package {
9
+ dealer: Dealer;
10
+ /**
11
+ * @minItems 1
12
+ * @maxItems 1
13
+ */
14
+ resources: [Resource];
15
+ }
16
+ export interface Dealer {
17
+ title: string;
18
+ url?: string;
19
+ }
20
+ export interface Resource {
21
+ name: "car";
22
+ schema: Schema;
23
+ }
@@ -0,0 +1,8 @@
1
+ /* eslint-disable */
2
+ /**
3
+ * This file was automatically generated by json-schema-to-typescript.
4
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
5
+ * and run json-schema-to-typescript to regenerate this file.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3Byb2ZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCOzs7O0dBSUciLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSAqL1xuLyoqXG4gKiBUaGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGpzb24tc2NoZW1hLXRvLXR5cGVzY3JpcHQuXG4gKiBETyBOT1QgTU9ESUZZIElUIEJZIEhBTkQuIEluc3RlYWQsIG1vZGlmeSB0aGUgc291cmNlIEpTT05TY2hlbWEgZmlsZSxcbiAqIGFuZCBydW4ganNvbi1zY2hlbWEtdG8tdHlwZXNjcmlwdCB0byByZWdlbmVyYXRlIHRoaXMgZmlsZS5cbiAqL1xuXG5leHBvcnQgdHlwZSBDYXJEZWFsZXJEYXRhUGFja2FnZVByb2ZpbGUgPSBQYWNrYWdlO1xuZXhwb3J0IHR5cGUgU2NoZW1hID0gXCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vZGF0aXN0aHEvY2FyZGVhbGVyZHAvdjAuMS4wL3NjaGVtYXMvY2FyLmpzb25cIjtcblxuZXhwb3J0IGludGVyZmFjZSBQYWNrYWdlIHtcbiAgZGVhbGVyOiBEZWFsZXI7XG4gIC8qKlxuICAgKiBAbWluSXRlbXMgMVxuICAgKiBAbWF4SXRlbXMgMVxuICAgKi9cbiAgcmVzb3VyY2VzOiBbUmVzb3VyY2VdO1xufVxuZXhwb3J0IGludGVyZmFjZSBEZWFsZXIge1xuICB0aXRsZTogc3RyaW5nO1xuICB1cmw/OiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlIHtcbiAgbmFtZTogXCJjYXJcIjtcbiAgc2NoZW1hOiBTY2hlbWE7XG59XG4iXX0=
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This file was automatically generated by json-schema-to-typescript.
3
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
4
+ * and run json-schema-to-typescript to regenerate this file.
5
+ */
6
+ export interface Car {
7
+ name?: string;
8
+ price?: number;
9
+ }
@@ -0,0 +1,8 @@
1
+ /* eslint-disable */
2
+ /**
3
+ * This file was automatically generated by json-schema-to-typescript.
4
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
5
+ * and run json-schema-to-typescript to regenerate this file.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc2NoZW1hcy9jYXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCOzs7O0dBSUciLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSAqL1xuLyoqXG4gKiBUaGlzIGZpbGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGpzb24tc2NoZW1hLXRvLXR5cGVzY3JpcHQuXG4gKiBETyBOT1QgTU9ESUZZIElUIEJZIEhBTkQuIEluc3RlYWQsIG1vZGlmeSB0aGUgc291cmNlIEpTT05TY2hlbWEgZmlsZSxcbiAqIGFuZCBydW4ganNvbi1zY2hlbWEtdG8tdHlwZXNjcmlwdCB0byByZWdlbmVyYXRlIHRoaXMgZmlsZS5cbiAqL1xuXG5leHBvcnQgaW50ZXJmYWNlIENhciB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHByaWNlPzogbnVtYmVyO1xufVxuIl19
@@ -0,0 +1 @@
1
+ export * from "./car.ts";
@@ -0,0 +1,2 @@
1
+ export * from "./car.js";
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zY2hlbWFzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vY2FyLnRzXCIiXX0=
package/index.ts ADDED
@@ -0,0 +1,11 @@
1
+ import * as standard from "@fairspec/metadata"
2
+ import { z } from "zod"
3
+ import * as extension from "./models/dataset.ts"
4
+
5
+ export * from "./models/index.ts"
6
+
7
+ export const Dataset = z.intersection(standard.Dataset, extension.Dataset)
8
+ export const Resource = z.intersection(standard.Resource, extension.Resource)
9
+
10
+ export type Dataset = z.infer<typeof Dataset>
11
+ export type Resource = z.infer<typeof Resource>
package/models/car.ts ADDED
@@ -0,0 +1,31 @@
1
+ // biome-ignore-all format: DO NOT UPDATE this @generated file
2
+ import { z } from "zod";
3
+
4
+ export const Car = z.object({
5
+ showroomId: z.string().optional(),
6
+ title: z.string(),
7
+ url: z.string(),
8
+ price: z.number(),
9
+ currency: z.string(),
10
+ year: z.number().optional(),
11
+ mileage: z.number(),
12
+ brand: z.string(),
13
+ model: z.string(),
14
+ version: z.string(),
15
+ fuel: z.union([z.literal("diesel"), z.literal("petrol"), z.literal("hybrid"), z.literal("electric")]),
16
+ gearbox: z.union([z.literal("manual"), z.literal("auto")]),
17
+ category: z.union([z.literal("small"), z.literal("estate"), z.literal("saloon"), z.literal("suv"), z.literal("van"), z.literal("sport"), z.literal("cabrio")]),
18
+ color: z.union([z.literal("grey"), z.literal("black"), z.literal("white"), z.literal("blue"), z.literal("red"), z.literal("green"), z.literal("yellow"), z.literal("orange")]),
19
+ door: z.union([z.literal("twothree"), z.literal("fourfive"), z.literal("sixseven")]),
20
+ power: z.number().optional(),
21
+ cubics: z.number().optional(),
22
+ seats: z.number().optional(),
23
+ owners: z.number().optional(),
24
+ month: z.number().optional(),
25
+ warranty: z.number().optional(),
26
+ range: z.number().optional(),
27
+ battery: z.number().optional(),
28
+ plate: z.string().optional(),
29
+ vin: z.string().optional()
30
+ });
31
+ export type Car = z.infer<typeof Car>
@@ -0,0 +1,35 @@
1
+ // biome-ignore-all format: DO NOT UPDATE this @generated file
2
+ import { z } from "zod";
3
+
4
+ export const CarResource = z.object({
5
+ name: z.literal("car"),
6
+ data: z.tuple([z.object({})]).rest(z.object({})),
7
+ Table: z.literal("https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/car.json")
8
+ });
9
+
10
+ export const DealerResource = z.object({
11
+ name: z.literal("dealer"),
12
+ data: z.tuple([z.object({})]),
13
+ Table: z.literal("https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/dealer.json")
14
+ });
15
+
16
+ export const ShowroomResource = z.object({
17
+ name: z.literal("showroom"),
18
+ data: z.tuple([z.object({})]).rest(z.object({})),
19
+ Table: z.literal("https://fairspec.github.io/fairspec-cardealer/schemas/0.1.0/showroom.json")
20
+ });
21
+
22
+ export const Resource = z.union([CarResource, DealerResource, ShowroomResource]);
23
+
24
+ export const Dataset = z.object({
25
+ $schema: z.literal("https://fairspec.github.io/fairspec-cardealer/profiles/0.1.0/dataset.json"),
26
+ resources: z.tuple([Resource]).rest(Resource)
27
+ });
28
+
29
+ export const FairspecCardealerProfile = Dataset;
30
+ export type CarResource = z.infer<typeof CarResource>
31
+ export type DealerResource = z.infer<typeof DealerResource>
32
+ export type ShowroomResource = z.infer<typeof ShowroomResource>
33
+ export type Resource = z.infer<typeof Resource>
34
+ export type Dataset = z.infer<typeof Dataset>
35
+ export type FairspecCardealerProfile = z.infer<typeof FairspecCardealerProfile>
@@ -0,0 +1,17 @@
1
+ // biome-ignore-all format: DO NOT UPDATE this @generated file
2
+ import { z } from "zod";
3
+
4
+ export const Dealer = z.object({
5
+ title: z.string(),
6
+ country: z.string(),
7
+ region: z.string(),
8
+ city: z.string(),
9
+ address: z.string(),
10
+ postcode: z.string().optional(),
11
+ phone: z.string().optional(),
12
+ email: z.string().optional(),
13
+ url: z.string(),
14
+ lon: z.number().optional(),
15
+ lat: z.number().optional()
16
+ });
17
+ export type Dealer = z.infer<typeof Dealer>
@@ -0,0 +1,4 @@
1
+ export * from "./dataset.ts"
2
+ export * from "./car.ts"
3
+ export * from "./dealer.ts"
4
+ export * from "./showroom.ts"
@@ -0,0 +1,18 @@
1
+ // biome-ignore-all format: DO NOT UPDATE this @generated file
2
+ import { z } from "zod";
3
+
4
+ export const Showroom = z.object({
5
+ id: z.string(),
6
+ title: z.string(),
7
+ country: z.string(),
8
+ region: z.string(),
9
+ city: z.string(),
10
+ address: z.string(),
11
+ postcode: z.string().optional(),
12
+ phone: z.string().optional(),
13
+ email: z.string().optional(),
14
+ url: z.string().optional(),
15
+ lon: z.number().optional(),
16
+ lat: z.number().optional()
17
+ });
18
+ export type Showroom = z.infer<typeof Showroom>
package/package.json ADDED
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "fairspec-cardealer",
3
+ "type": "module",
4
+ "version": "0.1.0",
5
+ "slug": "fairspec-cardealer",
6
+ "title": "Fairspec Cardealer",
7
+ "description": "Fairspec Cardealer is a data exchange format for car dealerships. It is developed on top of the Fairspec standard",
8
+ "repository": "https://github.com/fairspec/fairspec-cardealer",
9
+ "homepage": "https://fairspec.github.io/fairspec-cardealer",
10
+ "author": "Evgeny Karev",
11
+ "license": "MIT",
12
+ "dependencies": {
13
+ "@fairspec/metadata": "^0.2.2",
14
+ "zod": "^4.3.5"
15
+ },
16
+ "scripts": {
17
+ "build": "tsc"
18
+ }
19
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "../tsconfig.json"
3
+ }