@segha/catalog 1.2.0 → 2.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/CHANGELOG.md +91 -0
- package/README.md +335 -67
- package/en/Areas.ts +24 -0
- package/en/Article/index.ts +29 -0
- package/en/Article/types.ts +9 -0
- package/en/Book/index.ts +33 -0
- package/en/Book/types.ts +9 -0
- package/en/Clothing/Cares.ts +27 -0
- package/en/Clothing/Colors.ts +54 -0
- package/en/Clothing/Fit.ts +10 -0
- package/en/Clothing/Formality.ts +9 -0
- package/en/Clothing/Garment.ts +97 -0
- package/en/Clothing/Layer.ts +8 -0
- package/en/Clothing/Materials.ts +45 -0
- package/en/Clothing/Measurements.ts +5 -0
- package/en/Clothing/Season.ts +8 -0
- package/en/Clothing/Size.ts +47 -0
- package/en/Clothing/Slot.ts +10 -0
- package/en/Clothing/Status.ts +9 -0
- package/en/Clothing/UseCases.ts +20 -0
- package/en/Clothing/Variants.ts +73 -0
- package/en/Clothing/index.ts +51 -0
- package/en/Clothing/types.ts +9 -0
- package/en/Movie/index.ts +34 -0
- package/en/Movie/types.ts +9 -0
- package/en/Note.ts +13 -0
- package/en/index.ts +5 -0
- package/en/types.ts +9 -0
- package/es/Areas.ts +24 -0
- package/es/Article/index.ts +29 -0
- package/es/Article/types.ts +9 -0
- package/es/Book/index.ts +33 -0
- package/es/Book/types.ts +9 -0
- package/es/Clothing/index.ts +10 -10
- package/es/Movie/index.ts +34 -0
- package/es/Movie/types.ts +9 -0
- package/es/Note.ts +13 -0
- package/es/index.ts +4 -0
- package/es/types.ts +7 -0
- package/index.ts +2 -2
- package/json-schemas/ArticleSchema.json +103 -0
- package/json-schemas/BookSchema.json +124 -0
- package/json-schemas/CatalogArticleSchema.json +35 -0
- package/json-schemas/CatalogBookSchema.json +44 -0
- package/json-schemas/CatalogClothingSchema.json +176 -177
- package/json-schemas/CatalogMovieSchema.json +49 -0
- package/json-schemas/ClothingSchema.json +195 -196
- package/json-schemas/DetailedArticleSchema.json +42 -0
- package/json-schemas/DetailedBookSchema.json +49 -0
- package/json-schemas/DetailedClothingSchema.json +17 -17
- package/json-schemas/DetailedMovieSchema.json +48 -0
- package/json-schemas/MetaArticleSchema.json +46 -0
- package/json-schemas/MetaBookSchema.json +51 -0
- package/json-schemas/MetaClothingSchema.json +4 -4
- package/json-schemas/MetaMovieSchema.json +51 -0
- package/json-schemas/MovieSchema.json +128 -0
- package/json-schemas/NoteSchema.json +745 -0
- package/json-schemas/en/Area.json +21 -0
- package/json-schemas/en/Areas.json +25 -0
- package/json-schemas/en/Article/ArticleSchema.json +103 -0
- package/json-schemas/en/Article/CatalogArticleSchema.json +35 -0
- package/json-schemas/en/Article/DetailedArticleSchema.json +42 -0
- package/json-schemas/en/Article/MetaArticleSchema.json +46 -0
- package/json-schemas/en/Article/index.json +233 -0
- package/json-schemas/en/ArticleSchema.json +103 -0
- package/json-schemas/en/Book/BookSchema.json +124 -0
- package/json-schemas/en/Book/CatalogBookSchema.json +44 -0
- package/json-schemas/en/Book/DetailedBookSchema.json +49 -0
- package/json-schemas/en/Book/MetaBookSchema.json +51 -0
- package/json-schemas/en/Book/index.json +275 -0
- package/json-schemas/en/BookSchema.json +124 -0
- package/json-schemas/en/CatalogArticleSchema.json +35 -0
- package/json-schemas/en/CatalogBookSchema.json +44 -0
- package/json-schemas/en/CatalogClothingSchema.json +292 -0
- package/json-schemas/en/CatalogMovieSchema.json +49 -0
- package/json-schemas/en/Clothing/Accessories.json +18 -0
- package/json-schemas/en/Clothing/AdditionalFeatures.json +9 -0
- package/json-schemas/en/Clothing/BaseColor.json +19 -0
- package/json-schemas/en/Clothing/Bottom.json +12 -0
- package/json-schemas/en/Clothing/Care.json +13 -0
- package/json-schemas/en/Clothing/Cares.json +17 -0
- package/json-schemas/en/Clothing/CatalogClothingSchema.json +292 -0
- package/json-schemas/en/Clothing/Closures.json +11 -0
- package/json-schemas/en/Clothing/ClothingSchema.json +388 -0
- package/json-schemas/en/Clothing/Color.json +26 -0
- package/json-schemas/en/Clothing/CommonFabric.json +15 -0
- package/json-schemas/en/Clothing/DetailedClothingSchema.json +75 -0
- package/json-schemas/en/Clothing/Dress.json +9 -0
- package/json-schemas/en/Clothing/Fit.json +13 -0
- package/json-schemas/en/Clothing/Formality.json +12 -0
- package/json-schemas/en/Clothing/Garment.json +56 -0
- package/json-schemas/en/Clothing/Home.json +9 -0
- package/json-schemas/en/Clothing/Ironing.json +8 -0
- package/json-schemas/en/Clothing/Layer.json +10 -0
- package/json-schemas/en/Clothing/Material.json +28 -0
- package/json-schemas/en/Clothing/Materials.json +32 -0
- package/json-schemas/en/Clothing/Measurements.json +8 -0
- package/json-schemas/en/Clothing/MetaClothingSchema.json +41 -0
- package/json-schemas/en/Clothing/MetallicColor.json +9 -0
- package/json-schemas/en/Clothing/NaturalMaterial.json +13 -0
- package/json-schemas/en/Clothing/Necks.json +15 -0
- package/json-schemas/en/Clothing/Outerwear.json +9 -0
- package/json-schemas/en/Clothing/Pants.json +11 -0
- package/json-schemas/en/Clothing/PantsSize.json +17 -0
- package/json-schemas/en/Clothing/Pattern.json +17 -0
- package/json-schemas/en/Clothing/PrimaryColor.json +27 -0
- package/json-schemas/en/Clothing/Season.json +11 -0
- package/json-schemas/en/Clothing/SecondaryColor.json +27 -0
- package/json-schemas/en/Clothing/Shoes.json +11 -0
- package/json-schemas/en/Clothing/ShoesSize.json +16 -0
- package/json-schemas/en/Clothing/Size.json +29 -0
- package/json-schemas/en/Clothing/Sleeves.json +9 -0
- package/json-schemas/en/Clothing/Slot.json +13 -0
- package/json-schemas/en/Clothing/SpecialColor.json +10 -0
- package/json-schemas/en/Clothing/SpecialCuts.json +9 -0
- package/json-schemas/en/Clothing/Sportswear.json +11 -0
- package/json-schemas/en/Clothing/Status.json +13 -0
- package/json-schemas/en/Clothing/Swimsuits.json +9 -0
- package/json-schemas/en/Clothing/SyntheticMaterial.json +12 -0
- package/json-schemas/en/Clothing/Temperature.json +8 -0
- package/json-schemas/en/Clothing/Top.json +16 -0
- package/json-schemas/en/Clothing/TopsSize.json +13 -0
- package/json-schemas/en/Clothing/Underwear.json +12 -0
- package/json-schemas/en/Clothing/UseCase.json +18 -0
- package/json-schemas/en/Clothing/UseCases.json +22 -0
- package/json-schemas/en/Clothing/Variant.json +37 -0
- package/json-schemas/en/Clothing/Variants.json +41 -0
- package/json-schemas/en/Clothing/WashType.json +9 -0
- package/json-schemas/en/Clothing/index.json +1602 -0
- package/json-schemas/en/ClothingSchema.json +388 -0
- package/json-schemas/en/DetailedArticleSchema.json +42 -0
- package/json-schemas/en/DetailedBookSchema.json +49 -0
- package/json-schemas/en/DetailedClothingSchema.json +75 -0
- package/json-schemas/en/DetailedMovieSchema.json +48 -0
- package/json-schemas/en/FirstLevelArea.json +21 -0
- package/json-schemas/en/MetaArticleSchema.json +46 -0
- package/json-schemas/en/MetaBookSchema.json +51 -0
- package/json-schemas/en/MetaClothingSchema.json +41 -0
- package/json-schemas/en/MetaMovieSchema.json +51 -0
- package/json-schemas/en/Movie/CatalogMovieSchema.json +49 -0
- package/json-schemas/en/Movie/DetailedMovieSchema.json +48 -0
- package/json-schemas/en/Movie/MetaMovieSchema.json +51 -0
- package/json-schemas/en/Movie/MovieSchema.json +128 -0
- package/json-schemas/en/Movie/index.json +283 -0
- package/json-schemas/en/MovieSchema.json +128 -0
- package/json-schemas/en/NoteSchema.json +745 -0
- package/json-schemas/en/index.json +2385 -0
- package/json-schemas/es/Area.json +21 -0
- package/json-schemas/es/Areas.json +25 -0
- package/json-schemas/es/Article/ArticleSchema.json +103 -0
- package/json-schemas/es/Article/CatalogArticleSchema.json +35 -0
- package/json-schemas/es/Article/DetailedArticleSchema.json +42 -0
- package/json-schemas/es/Article/MetaArticleSchema.json +46 -0
- package/json-schemas/es/Article/index.json +233 -0
- package/json-schemas/es/ArticleSchema.json +103 -0
- package/json-schemas/es/Book/BookSchema.json +124 -0
- package/json-schemas/es/Book/CatalogBookSchema.json +44 -0
- package/json-schemas/es/Book/DetailedBookSchema.json +49 -0
- package/json-schemas/es/Book/MetaBookSchema.json +51 -0
- package/json-schemas/es/Book/index.json +275 -0
- package/json-schemas/es/BookSchema.json +124 -0
- package/json-schemas/es/CatalogArticleSchema.json +35 -0
- package/json-schemas/es/CatalogBookSchema.json +44 -0
- package/json-schemas/es/CatalogMovieSchema.json +49 -0
- package/json-schemas/es/Clothing/DetailedClothingSchema.json +1 -1
- package/json-schemas/es/Clothing/index.json +1 -1
- package/json-schemas/es/DetailedArticleSchema.json +42 -0
- package/json-schemas/es/DetailedBookSchema.json +49 -0
- package/json-schemas/es/DetailedClothingSchema.json +1 -1
- package/json-schemas/es/DetailedMovieSchema.json +48 -0
- package/json-schemas/es/FirstLevelArea.json +21 -0
- package/json-schemas/es/MetaArticleSchema.json +46 -0
- package/json-schemas/es/MetaBookSchema.json +51 -0
- package/json-schemas/es/MetaMovieSchema.json +51 -0
- package/json-schemas/es/Movie/CatalogMovieSchema.json +49 -0
- package/json-schemas/es/Movie/DetailedMovieSchema.json +48 -0
- package/json-schemas/es/Movie/MetaMovieSchema.json +51 -0
- package/json-schemas/es/Movie/MovieSchema.json +128 -0
- package/json-schemas/es/Movie/index.json +283 -0
- package/json-schemas/es/MovieSchema.json +128 -0
- package/json-schemas/es/NoteSchema.json +746 -0
- package/json-schemas/es/index.json +1584 -1
- package/json-schemas/index.json +1907 -394
- package/package.json +11 -3
package/README.md
CHANGED
|
@@ -18,118 +18,386 @@ pnpm add @segha/catalog
|
|
|
18
18
|
## Usage
|
|
19
19
|
|
|
20
20
|
```typescript
|
|
21
|
-
import {
|
|
21
|
+
import { ArticleSchema, BookSchema, CatalogArticleSchema, ... } from '@segha/catalog';
|
|
22
22
|
|
|
23
23
|
// Validate data
|
|
24
|
-
const result =
|
|
24
|
+
const result = ArticleSchema.parse(data);
|
|
25
25
|
|
|
26
26
|
// Infer TypeScript types
|
|
27
|
-
type
|
|
27
|
+
type Article = z.infer<typeof ArticleSchema>;
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
You can also import specific submodules:
|
|
31
31
|
|
|
32
32
|
```typescript
|
|
33
|
-
import { CatalogClothingSchema, DetailedClothingSchema
|
|
33
|
+
import { MetaClothingSchema, CatalogClothingSchema, DetailedClothingSchema } from '@segha/catalog/en/clothing';
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
### Schemas
|
|
37
37
|
|
|
38
|
+
- [Article](#article)
|
|
39
|
+
- [Book](#book)
|
|
40
|
+
- [CatalogArticle](#catalogarticle)
|
|
41
|
+
- [CatalogBook](#catalogbook)
|
|
38
42
|
- [CatalogClothing](#catalogclothing)
|
|
43
|
+
- [CatalogMovie](#catalogmovie)
|
|
39
44
|
- [Clothing](#clothing)
|
|
45
|
+
- [DetailedArticle](#detailedarticle)
|
|
46
|
+
- [DetailedBook](#detailedbook)
|
|
40
47
|
- [DetailedClothing](#detailedclothing)
|
|
48
|
+
- [DetailedMovie](#detailedmovie)
|
|
49
|
+
- [MetaArticle](#metaarticle)
|
|
50
|
+
- [MetaBook](#metabook)
|
|
41
51
|
- [MetaClothing](#metaclothing)
|
|
52
|
+
- [MetaMovie](#metamovie)
|
|
53
|
+
- [Movie](#movie)
|
|
54
|
+
- [Note](#note)
|
|
42
55
|
|
|
43
56
|
## API Reference
|
|
44
57
|
|
|
58
|
+
## Article
|
|
59
|
+
|
|
60
|
+
Article
|
|
61
|
+
|
|
62
|
+
_Object containing the following properties:_
|
|
63
|
+
|
|
64
|
+
| Property | Description | Type |
|
|
65
|
+
| :------------------ | :--------------------- | :------------------------------------------------------- |
|
|
66
|
+
| **`title`** (\*) | Title of the article | `string` |
|
|
67
|
+
| `description` | Description | `string` |
|
|
68
|
+
| `excerpt` | Extract of the article | `string` |
|
|
69
|
+
| **`author`** (\*) | Authors | `Array<string>` |
|
|
70
|
+
| `published` | Year of publication | `string` |
|
|
71
|
+
| **`status`** (\*) | Reading status | `'Pending' \| 'In Progress' \| 'Read' \| 'Consolidated'` |
|
|
72
|
+
| **`projects`** (\*) | Projects | `Array<string>` |
|
|
73
|
+
| **`topics`** (\*) | Topics | `Array<string>` |
|
|
74
|
+
| **`rating`** (\*) | Rating of the article | `number` |
|
|
75
|
+
| **`type`** (\*) | | `'[[Sources]]'` |
|
|
76
|
+
| **`format`** (\*) | | `'[[Articles]]'` |
|
|
77
|
+
| **`areas`** (\*) | | `Array<'[[Knowledge]]'>` |
|
|
78
|
+
| **`color`** (\*) | | `'#3171B2'` |
|
|
79
|
+
| **`icon`** (\*) | | `'newspaper'` |
|
|
80
|
+
| `banner` | | `string` |
|
|
81
|
+
| **`url`** (\*) | URL of the article | `string` |
|
|
82
|
+
|
|
83
|
+
_(\*) Required._
|
|
84
|
+
|
|
85
|
+
## Book
|
|
86
|
+
|
|
87
|
+
Book
|
|
88
|
+
|
|
89
|
+
_Object containing the following properties:_
|
|
90
|
+
|
|
91
|
+
| Property | Description | Type |
|
|
92
|
+
| :------------------------ | :----------------------------------- | :------------------------------------------------------- |
|
|
93
|
+
| **`title`** (\*) | Title of the book | `string` |
|
|
94
|
+
| `subtitle` | Subtitle of the book | `string` |
|
|
95
|
+
| `description` | Description of the book | `string` |
|
|
96
|
+
| **`author`** (\*) | Authors | `Array<string>` |
|
|
97
|
+
| **`published`** (\*) | Year of publication | `string` |
|
|
98
|
+
| **`categories`** (\*) | Categories | `Array<string>` |
|
|
99
|
+
| **`status`** (\*) | Reading status | `'Pending' \| 'In Progress' \| 'Read' \| 'Consolidated'` |
|
|
100
|
+
| **`topics`** (\*) | Topics | `Array<string>` |
|
|
101
|
+
| **`rating`** (\*) | Rating of the book | `number` |
|
|
102
|
+
| **`online_rating`** (\*) | Online rating | `number` |
|
|
103
|
+
| **`last_time_read`** (\*) | Last time read | `string` |
|
|
104
|
+
| **`times_read`** (\*) | Times read | `number` |
|
|
105
|
+
| **`type`** (\*) | | `'[[Sources]]'` |
|
|
106
|
+
| **`format`** (\*) | | `'[[Books]]'` |
|
|
107
|
+
| **`areas`** (\*) | | `Array<'[[Knowledge]]'>` |
|
|
108
|
+
| **`color`** (\*) | | `'#3171B2'` |
|
|
109
|
+
| **`icon`** (\*) | | `'book'` |
|
|
110
|
+
| `cover` | | `string` |
|
|
111
|
+
| **`url`** (\*) | URL of the book in Amazon or similar | `string` |
|
|
112
|
+
| **`read_url`** (\*) | URL of the reading of the book | `string` |
|
|
113
|
+
|
|
114
|
+
_(\*) Required._
|
|
115
|
+
|
|
116
|
+
## CatalogArticle
|
|
117
|
+
|
|
118
|
+
Article: Data obtained from catalogation
|
|
119
|
+
|
|
120
|
+
_Object containing the following properties:_
|
|
121
|
+
|
|
122
|
+
| Property | Description | Type |
|
|
123
|
+
| :---------------- | :--------------------- | :-------------- |
|
|
124
|
+
| **`title`** (\*) | Title of the article | `string` |
|
|
125
|
+
| `description` | Description | `string` |
|
|
126
|
+
| `excerpt` | Extract of the article | `string` |
|
|
127
|
+
| **`author`** (\*) | Authors | `Array<string>` |
|
|
128
|
+
| `published` | Year of publication | `string` |
|
|
129
|
+
|
|
130
|
+
_(\*) Required._
|
|
131
|
+
|
|
132
|
+
## CatalogBook
|
|
133
|
+
|
|
134
|
+
Book: Data obtained from catalogation
|
|
135
|
+
|
|
136
|
+
_Object containing the following properties:_
|
|
137
|
+
|
|
138
|
+
| Property | Description | Type |
|
|
139
|
+
| :-------------------- | :---------------------- | :-------------- |
|
|
140
|
+
| **`title`** (\*) | Title of the book | `string` |
|
|
141
|
+
| `subtitle` | Subtitle of the book | `string` |
|
|
142
|
+
| `description` | Description of the book | `string` |
|
|
143
|
+
| **`author`** (\*) | Authors | `Array<string>` |
|
|
144
|
+
| **`published`** (\*) | Year of publication | `string` |
|
|
145
|
+
| **`categories`** (\*) | Categories | `Array<string>` |
|
|
146
|
+
|
|
147
|
+
_(\*) Required._
|
|
148
|
+
|
|
45
149
|
## CatalogClothing
|
|
46
150
|
|
|
47
|
-
|
|
151
|
+
Clothing item: Catalogable data
|
|
152
|
+
|
|
153
|
+
_Object containing the following properties:_
|
|
154
|
+
|
|
155
|
+
| Property | Description | Type |
|
|
156
|
+
| :----------------------- | :------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
157
|
+
| **`name`** (\*) | Descriptive name of the clothing item | `string` |
|
|
158
|
+
| **`garment`** (\*) | Garment Type | `'Undershirts' \| 'Boxers' \| 'Panties' \| 'Bras' \| 'Socks' \| 'T-Shirts' \| 'Polo Shirts' \| 'Shirts' \| 'Blouses' \| 'Tops' \| 'Sweaters' \| 'Hoodies' \| 'Cardigans' \| 'Jackets' \| 'Pants' \| 'Jeans' \| 'Chinos' \| 'Skirts' \| 'Shorts' \| 'Blazers' \| ...` |
|
|
159
|
+
| **`slot`** (\*) | Outfit part | `'Top' \| 'Bottom' \| 'Full Body' \| 'Outer' \| 'Footwear' \| 'Accessories'` |
|
|
160
|
+
| `variants` | Structural Details | `Array<'Sleeveless' \| 'Short Sleeves' \| 'Long Sleeves' \| 'Round Neck' \| 'V-Neck' \| 'High Neck' \| 'Shirt Collar' \| 'Polo Collar' \| 'Boat Neck' \| 'Mandarin Collar' \| 'Funnel Neck' \| 'Hood' \| 'Overshirt' \| 'Cropped' \| 'Long' \| 'Straight Leg' \| 'Skinny' \| 'Wide' \| 'Cargo' \| 'Flared' \| ...>` |
|
|
161
|
+
| `fit` | Fit | `'Fitted' \| 'Slim' \| 'Regular' \| 'Relaxed' \| 'Loose' \| 'Oversized'` |
|
|
162
|
+
| **`primary_color`** (\*) | Primary color | `'White' \| 'Black' \| 'Gray' \| 'Beige' \| 'Brown' \| 'Blue' \| 'Green' \| 'Red' \| 'Burgundy' \| 'Pink' \| 'Yellow' \| 'Orange' \| 'Purple' \| 'Camel' \| 'Khaki' \| 'Navy' \| 'Cream' \| 'Gold' \| 'Silver' \| 'Bronze'` |
|
|
163
|
+
| `secondary_color` | Secondary color | `'White' \| 'Black' \| 'Gray' \| 'Beige' \| 'Brown' \| 'Blue' \| 'Green' \| 'Red' \| 'Burgundy' \| 'Pink' \| 'Yellow' \| 'Orange' \| 'Purple' \| 'Camel' \| 'Khaki' \| 'Navy' \| 'Cream' \| 'Gold' \| 'Silver' \| 'Bronze'` |
|
|
164
|
+
| `pattern` | Pattern | `'Solid' \| 'Stripes' \| 'Plaid' \| 'Polka Dots' \| 'Animal Print' \| 'Floral' \| 'Geometric' \| 'Camouflage' \| 'Graphic Print' \| 'Gradient'` |
|
|
165
|
+
| `materials` | Materials | `Array<'Cotton' \| 'Linen' \| 'Wool' \| 'Silk' \| 'Leather' \| 'Cashmere' \| 'Suede' \| 'Polyester' \| 'Nylon' \| 'Elastane' \| 'Viscose' \| 'Synthetic Leather' \| 'Gore-Tex' \| 'Denim' \| 'Knit' \| 'Fleece' \| 'Tweed' \| 'Satin' \| 'Velvet' \| 'Jacquard' \| ...>` |
|
|
166
|
+
| **`layer`** (\*) | Thermal Layer | `'Base' \| 'Mid' \| 'Outer'` |
|
|
167
|
+
| `season` | Seasons | `'Winter' \| 'Summer' \| 'Spring/Fall' \| 'All Year'` |
|
|
168
|
+
| `use_case` | Use cases | `Array<'Capsule' \| 'Favorite' \| 'Basic' \| 'Sport' \| 'Work' \| 'Event' \| 'Travel' \| 'Home' \| 'Party' \| 'Beach' \| 'Rain' \| 'Extreme Cold'>` |
|
|
169
|
+
| `formality` | Formality | `'Very Casual' \| 'Casual' \| 'Smart Casual' \| 'Formal' \| 'Black Tie'` |
|
|
170
|
+
| `brand` | The brand of the clothing | `string` |
|
|
171
|
+
|
|
172
|
+
_(\*) Required._
|
|
173
|
+
|
|
174
|
+
## CatalogMovie
|
|
175
|
+
|
|
176
|
+
Movie: Data obtained from catalogation
|
|
48
177
|
|
|
49
178
|
_Object containing the following properties:_
|
|
50
179
|
|
|
51
|
-
| Property
|
|
52
|
-
|
|
|
53
|
-
| **`
|
|
54
|
-
| **`
|
|
55
|
-
| **`
|
|
56
|
-
|
|
|
57
|
-
|
|
|
58
|
-
| **`
|
|
59
|
-
| `secondary_color` | Color secundario | `'Blanco' \| 'Negro' \| 'Gris' \| 'Beige' \| 'Marrón' \| 'Azul' \| 'Verde' \| 'Rojo' \| 'Burdeos' \| 'Rosa' \| 'Amarillo' \| 'Naranja' \| 'Morado' \| 'Camel' \| 'Caqui' \| 'Marino' \| 'Crema' \| 'Oro' \| 'Plata' \| 'Bronce'` |
|
|
60
|
-
| `pattern` | Estampado | `'Liso' \| 'Rayas' \| 'Cuadros' \| 'Lunares' \| 'Animal Print' \| 'Floral' \| 'Geométrico' \| 'Camuflaje' \| 'EstampadoGráfico' \| 'Degradado'` |
|
|
61
|
-
| `materials` | Materiales | `Array<'Algodón' \| 'Lino' \| 'Lana' \| 'Seda' \| 'Cuero' \| 'Cachemir' \| 'Ante' \| 'Poliéster' \| 'Nylon' \| 'Elastano' \| 'Viscosa' \| 'Piel Sintética' \| 'Gore-Tex' \| 'Denim' \| 'Punto' \| 'Felpa' \| 'Tweed' \| 'Satén' \| 'Terciopelo' \| 'Jacquard' \| ...>` |
|
|
62
|
-
| **`layer`** (\*) | Capa Térmica | `'Base' \| 'Intermedia' \| 'Exterior'` |
|
|
63
|
-
| `season` | Estaciones | `'Invierno' \| 'Verano' \| 'Entretiempo' \| 'Todo el año'` |
|
|
64
|
-
| `use_case` | Casos de uso | `Array<'Capsula' \| 'Favorita' \| 'Básico' \| 'Deporte' \| 'Trabajo' \| 'Evento' \| 'Viaje' \| 'Casa' \| 'Fiesta' \| 'Playa' \| 'Lluvia' \| 'Frío Extremo'>` |
|
|
65
|
-
| `formality` | Formalidad | `'Muy Informal' \| 'Casual' \| 'Arreglado' \| 'Formal' \| 'Etiqueta'` |
|
|
66
|
-
| `brand` | The brand of the clothing | `string` |
|
|
180
|
+
| Property | Description | Type |
|
|
181
|
+
| :--------------------- | :------------------------------------------- | :-------------- |
|
|
182
|
+
| **`title`** (\*) | Title of the movie | `string` |
|
|
183
|
+
| **`description`** (\*) | Description of the movie | `string` |
|
|
184
|
+
| **`author`** (\*) | Authors. Writers, directors, producers, etc. | `Array<string>` |
|
|
185
|
+
| **`actors`** (\*) | Actors | `Array<string>` |
|
|
186
|
+
| **`published`** (\*) | Year of publication | `string` |
|
|
187
|
+
| **`genres`** (\*) | Genres | `Array<string>` |
|
|
67
188
|
|
|
68
189
|
_(\*) Required._
|
|
69
190
|
|
|
70
191
|
## Clothing
|
|
71
192
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
_Object containing the following properties:_
|
|
75
|
-
|
|
76
|
-
| Property | Description
|
|
77
|
-
| :----------------------- |
|
|
78
|
-
| **`name`** (\*) |
|
|
79
|
-
| **`garment`** (\*) |
|
|
80
|
-
| **`slot`** (\*) |
|
|
81
|
-
| `variants` |
|
|
82
|
-
| `fit` |
|
|
83
|
-
| **`primary_color`** (\*) |
|
|
84
|
-
| `secondary_color` |
|
|
85
|
-
| `pattern` |
|
|
86
|
-
| `materials` |
|
|
87
|
-
| **`layer`** (\*) |
|
|
88
|
-
| `season` |
|
|
89
|
-
| `use_case` |
|
|
90
|
-
| `formality` |
|
|
91
|
-
| `brand` | The brand of the clothing
|
|
92
|
-
| `cares` |
|
|
93
|
-
| `status` |
|
|
94
|
-
| **`size`** (\*) |
|
|
95
|
-
| `measurements` |
|
|
96
|
-
| **`type`** (\*) |
|
|
97
|
-
| **`subtype`** (\*) |
|
|
98
|
-
| **`areas`** (\*) |
|
|
99
|
-
| **`color`** (\*) |
|
|
100
|
-
| **`icon`** (\*) |
|
|
101
|
-
| `cover` |
|
|
193
|
+
Clothing item
|
|
194
|
+
|
|
195
|
+
_Object containing the following properties:_
|
|
196
|
+
|
|
197
|
+
| Property | Description | Type | Default |
|
|
198
|
+
| :----------------------- | :------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------- |
|
|
199
|
+
| **`name`** (\*) | Descriptive name of the clothing item | `string` | |
|
|
200
|
+
| **`garment`** (\*) | Garment Type | `'Undershirts' \| 'Boxers' \| 'Panties' \| 'Bras' \| 'Socks' \| 'T-Shirts' \| 'Polo Shirts' \| 'Shirts' \| 'Blouses' \| 'Tops' \| 'Sweaters' \| 'Hoodies' \| 'Cardigans' \| 'Jackets' \| 'Pants' \| 'Jeans' \| 'Chinos' \| 'Skirts' \| 'Shorts' \| 'Blazers' \| ...` | |
|
|
201
|
+
| **`slot`** (\*) | Outfit part | `'Top' \| 'Bottom' \| 'Full Body' \| 'Outer' \| 'Footwear' \| 'Accessories'` | |
|
|
202
|
+
| `variants` | Structural Details | `Array<'Sleeveless' \| 'Short Sleeves' \| 'Long Sleeves' \| 'Round Neck' \| 'V-Neck' \| 'High Neck' \| 'Shirt Collar' \| 'Polo Collar' \| 'Boat Neck' \| 'Mandarin Collar' \| 'Funnel Neck' \| 'Hood' \| 'Overshirt' \| 'Cropped' \| 'Long' \| 'Straight Leg' \| 'Skinny' \| 'Wide' \| 'Cargo' \| 'Flared' \| ...>` | |
|
|
203
|
+
| `fit` | Fit | `'Fitted' \| 'Slim' \| 'Regular' \| 'Relaxed' \| 'Loose' \| 'Oversized'` | |
|
|
204
|
+
| **`primary_color`** (\*) | Primary color | `'White' \| 'Black' \| 'Gray' \| 'Beige' \| 'Brown' \| 'Blue' \| 'Green' \| 'Red' \| 'Burgundy' \| 'Pink' \| 'Yellow' \| 'Orange' \| 'Purple' \| 'Camel' \| 'Khaki' \| 'Navy' \| 'Cream' \| 'Gold' \| 'Silver' \| 'Bronze'` | |
|
|
205
|
+
| `secondary_color` | Secondary color | `'White' \| 'Black' \| 'Gray' \| 'Beige' \| 'Brown' \| 'Blue' \| 'Green' \| 'Red' \| 'Burgundy' \| 'Pink' \| 'Yellow' \| 'Orange' \| 'Purple' \| 'Camel' \| 'Khaki' \| 'Navy' \| 'Cream' \| 'Gold' \| 'Silver' \| 'Bronze'` | |
|
|
206
|
+
| `pattern` | Pattern | `'Solid' \| 'Stripes' \| 'Plaid' \| 'Polka Dots' \| 'Animal Print' \| 'Floral' \| 'Geometric' \| 'Camouflage' \| 'Graphic Print' \| 'Gradient'` | |
|
|
207
|
+
| `materials` | Materials | `Array<'Cotton' \| 'Linen' \| 'Wool' \| 'Silk' \| 'Leather' \| 'Cashmere' \| 'Suede' \| 'Polyester' \| 'Nylon' \| 'Elastane' \| 'Viscose' \| 'Synthetic Leather' \| 'Gore-Tex' \| 'Denim' \| 'Knit' \| 'Fleece' \| 'Tweed' \| 'Satin' \| 'Velvet' \| 'Jacquard' \| ...>` | |
|
|
208
|
+
| **`layer`** (\*) | Thermal Layer | `'Base' \| 'Mid' \| 'Outer'` | |
|
|
209
|
+
| `season` | Seasons | `'Winter' \| 'Summer' \| 'Spring/Fall' \| 'All Year'` | |
|
|
210
|
+
| `use_case` | Use cases | `Array<'Capsule' \| 'Favorite' \| 'Basic' \| 'Sport' \| 'Work' \| 'Event' \| 'Travel' \| 'Home' \| 'Party' \| 'Beach' \| 'Rain' \| 'Extreme Cold'>` | |
|
|
211
|
+
| `formality` | Formality | `'Very Casual' \| 'Casual' \| 'Smart Casual' \| 'Formal' \| 'Black Tie'` | |
|
|
212
|
+
| `brand` | The brand of the clothing | `string` | |
|
|
213
|
+
| `cares` | Care Instructions | `Array<'Hand Wash' \| 'Machine Wash' \| 'Dry Clean' \| 'Cold' \| 'Hot' \| 'Ironing' \| 'Steam Ironing'>` | |
|
|
214
|
+
| `status` | Status | `'New' \| 'Good' \| 'Worn' \| 'Damaged' \| 'Retire'` | `'Good'` |
|
|
215
|
+
| **`size`** (\*) | | `'28' \| '30' \| '32' \| '34' \| '36' \| '37' \| '38' \| '39' \| '40' \| '41' \| '42' \| '43' \| '44' \| '45' \| '46' \| '48' \| 'XS' \| 'S' \| 'M' \| 'L' \| ...` | |
|
|
216
|
+
| `measurements` | Measurements | `Array<number>` | |
|
|
217
|
+
| **`type`** (\*) | | `'[[Resources]]'` | |
|
|
218
|
+
| **`subtype`** (\*) | | `'[[Clothes]]'` | |
|
|
219
|
+
| **`areas`** (\*) | | `Array<'[[Home]]'>` | |
|
|
220
|
+
| **`color`** (\*) | | `'#CB6120'` | |
|
|
221
|
+
| **`icon`** (\*) | | `'shirt'` | |
|
|
222
|
+
| `cover` | | `string` | |
|
|
223
|
+
|
|
224
|
+
_(\*) Required._
|
|
225
|
+
|
|
226
|
+
## DetailedArticle
|
|
227
|
+
|
|
228
|
+
Article: Additional data
|
|
229
|
+
|
|
230
|
+
_Object containing the following properties:_
|
|
231
|
+
|
|
232
|
+
| Property | Description | Type |
|
|
233
|
+
| :------------------ | :-------------------- | :------------------------------------------------------- |
|
|
234
|
+
| **`status`** (\*) | Reading status | `'Pending' \| 'In Progress' \| 'Read' \| 'Consolidated'` |
|
|
235
|
+
| **`projects`** (\*) | Projects | `Array<string>` |
|
|
236
|
+
| **`topics`** (\*) | Topics | `Array<string>` |
|
|
237
|
+
| **`rating`** (\*) | Rating of the article | `number` |
|
|
238
|
+
|
|
239
|
+
_(\*) Required._
|
|
240
|
+
|
|
241
|
+
## DetailedBook
|
|
242
|
+
|
|
243
|
+
Book: Additional data
|
|
244
|
+
|
|
245
|
+
_Object containing the following properties:_
|
|
246
|
+
|
|
247
|
+
| Property | Description | Type |
|
|
248
|
+
| :------------------------ | :----------------- | :------------------------------------------------------- |
|
|
249
|
+
| **`status`** (\*) | Reading status | `'Pending' \| 'In Progress' \| 'Read' \| 'Consolidated'` |
|
|
250
|
+
| **`topics`** (\*) | Topics | `Array<string>` |
|
|
251
|
+
| **`rating`** (\*) | Rating of the book | `number` |
|
|
252
|
+
| **`online_rating`** (\*) | Online rating | `number` |
|
|
253
|
+
| **`last_time_read`** (\*) | Last time read | `string` |
|
|
254
|
+
| **`times_read`** (\*) | Times read | `number` |
|
|
102
255
|
|
|
103
256
|
_(\*) Required._
|
|
104
257
|
|
|
105
258
|
## DetailedClothing
|
|
106
259
|
|
|
107
|
-
|
|
260
|
+
Clothing item: Additional hard-to-obtain data
|
|
261
|
+
|
|
262
|
+
_Object containing the following properties:_
|
|
263
|
+
|
|
264
|
+
| Property | Description | Type | Default |
|
|
265
|
+
| :-------------- | :---------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------- |
|
|
266
|
+
| `cares` | Care Instructions | `Array<'Hand Wash' \| 'Machine Wash' \| 'Dry Clean' \| 'Cold' \| 'Hot' \| 'Ironing' \| 'Steam Ironing'>` | |
|
|
267
|
+
| `status` | Status | `'New' \| 'Good' \| 'Worn' \| 'Damaged' \| 'Retire'` | `'Good'` |
|
|
268
|
+
| **`size`** (\*) | | `'28' \| '30' \| '32' \| '34' \| '36' \| '37' \| '38' \| '39' \| '40' \| '41' \| '42' \| '43' \| '44' \| '45' \| '46' \| '48' \| 'XS' \| 'S' \| 'M' \| 'L' \| ...` | |
|
|
269
|
+
| `measurements` | Measurements | `Array<number>` | |
|
|
270
|
+
|
|
271
|
+
_(\*) Required._
|
|
272
|
+
|
|
273
|
+
## DetailedMovie
|
|
274
|
+
|
|
275
|
+
Movie: Additional data
|
|
276
|
+
|
|
277
|
+
_Object containing the following properties:_
|
|
278
|
+
|
|
279
|
+
| Property | Description | Type |
|
|
280
|
+
| :--------------------------- | :------------------ | :------------------------------------------ |
|
|
281
|
+
| **`status`** (\*) | Watching status | `'Pending' \| 'In Progress' \| 'Completed'` |
|
|
282
|
+
| **`topics`** (\*) | Topics | `Array<string>` |
|
|
283
|
+
| **`rating`** (\*) | Rating of the movie | `number` |
|
|
284
|
+
| **`online_rating`** (\*) | Online rating | `number` |
|
|
285
|
+
| **`last_time_watched`** (\*) | Last time watched | `string` |
|
|
286
|
+
| **`times_watched`** (\*) | Times watched | `number` |
|
|
287
|
+
|
|
288
|
+
_(\*) Required._
|
|
289
|
+
|
|
290
|
+
## MetaArticle
|
|
291
|
+
|
|
292
|
+
Article: Metadata of Note
|
|
293
|
+
|
|
294
|
+
_Object containing the following properties:_
|
|
295
|
+
|
|
296
|
+
| Property | Description | Type |
|
|
297
|
+
| :---------------- | :----------------- | :----------------------- |
|
|
298
|
+
| **`type`** (\*) | | `'[[Sources]]'` |
|
|
299
|
+
| **`format`** (\*) | | `'[[Articles]]'` |
|
|
300
|
+
| **`areas`** (\*) | | `Array<'[[Knowledge]]'>` |
|
|
301
|
+
| **`color`** (\*) | | `'#3171B2'` |
|
|
302
|
+
| **`icon`** (\*) | | `'newspaper'` |
|
|
303
|
+
| `banner` | | `string` |
|
|
304
|
+
| **`url`** (\*) | URL of the article | `string` |
|
|
305
|
+
|
|
306
|
+
_(\*) Required._
|
|
307
|
+
|
|
308
|
+
## MetaBook
|
|
309
|
+
|
|
310
|
+
Book: Metadata of Note
|
|
108
311
|
|
|
109
312
|
_Object containing the following properties:_
|
|
110
313
|
|
|
111
|
-
| Property
|
|
112
|
-
|
|
|
113
|
-
|
|
|
114
|
-
|
|
|
115
|
-
| **`
|
|
116
|
-
|
|
|
314
|
+
| Property | Description | Type |
|
|
315
|
+
| :------------------ | :----------------------------------- | :----------------------- |
|
|
316
|
+
| **`type`** (\*) | | `'[[Sources]]'` |
|
|
317
|
+
| **`format`** (\*) | | `'[[Books]]'` |
|
|
318
|
+
| **`areas`** (\*) | | `Array<'[[Knowledge]]'>` |
|
|
319
|
+
| **`color`** (\*) | | `'#3171B2'` |
|
|
320
|
+
| **`icon`** (\*) | | `'book'` |
|
|
321
|
+
| `cover` | | `string` |
|
|
322
|
+
| **`url`** (\*) | URL of the book in Amazon or similar | `string` |
|
|
323
|
+
| **`read_url`** (\*) | URL of the reading of the book | `string` |
|
|
117
324
|
|
|
118
325
|
_(\*) Required._
|
|
119
326
|
|
|
120
327
|
## MetaClothing
|
|
121
328
|
|
|
122
|
-
|
|
329
|
+
Clothing item: Note metadata
|
|
330
|
+
|
|
331
|
+
_Object containing the following properties:_
|
|
332
|
+
|
|
333
|
+
| Property | Type |
|
|
334
|
+
| :----------------- | :------------------ |
|
|
335
|
+
| **`type`** (\*) | `'[[Resources]]'` |
|
|
336
|
+
| **`subtype`** (\*) | `'[[Clothes]]'` |
|
|
337
|
+
| **`areas`** (\*) | `Array<'[[Home]]'>` |
|
|
338
|
+
| **`color`** (\*) | `'#CB6120'` |
|
|
339
|
+
| **`icon`** (\*) | `'shirt'` |
|
|
340
|
+
| `cover` | `string` |
|
|
341
|
+
|
|
342
|
+
_(\*) Required._
|
|
343
|
+
|
|
344
|
+
## MetaMovie
|
|
345
|
+
|
|
346
|
+
Movie: Metadata of Note
|
|
123
347
|
|
|
124
348
|
_Object containing the following properties:_
|
|
125
349
|
|
|
126
|
-
| Property
|
|
127
|
-
|
|
|
128
|
-
| **`type`** (\*)
|
|
129
|
-
| **`
|
|
130
|
-
| **`areas`** (\*)
|
|
131
|
-
| **`color`** (\*)
|
|
132
|
-
| **`icon`** (\*)
|
|
133
|
-
| `cover`
|
|
350
|
+
| Property | Description | Type |
|
|
351
|
+
| :------------------- | :---------------------------------- | :------------------------ |
|
|
352
|
+
| **`type`** (\*) | | `'[[Sources]]'` |
|
|
353
|
+
| **`format`** (\*) | | `'[[Movies]]'` |
|
|
354
|
+
| **`areas`** (\*) | | `Array<'[[Creativity]]'>` |
|
|
355
|
+
| **`color`** (\*) | | `'#BE9207'` |
|
|
356
|
+
| **`icon`** (\*) | | `'movie'` |
|
|
357
|
+
| `cover` | | `string` |
|
|
358
|
+
| **`url`** (\*) | URL of the movie in IMDB or similar | `string` |
|
|
359
|
+
| **`watch_url`** (\*) | URL of the movie in streaming | `string` |
|
|
134
360
|
|
|
135
361
|
_(\*) Required._
|
|
362
|
+
|
|
363
|
+
## Movie
|
|
364
|
+
|
|
365
|
+
Movie
|
|
366
|
+
|
|
367
|
+
_Object containing the following properties:_
|
|
368
|
+
|
|
369
|
+
| Property | Description | Type |
|
|
370
|
+
| :--------------------------- | :------------------------------------------- | :------------------------------------------ |
|
|
371
|
+
| **`title`** (\*) | Title of the movie | `string` |
|
|
372
|
+
| **`description`** (\*) | Description of the movie | `string` |
|
|
373
|
+
| **`author`** (\*) | Authors. Writers, directors, producers, etc. | `Array<string>` |
|
|
374
|
+
| **`actors`** (\*) | Actors | `Array<string>` |
|
|
375
|
+
| **`published`** (\*) | Year of publication | `string` |
|
|
376
|
+
| **`genres`** (\*) | Genres | `Array<string>` |
|
|
377
|
+
| **`status`** (\*) | Watching status | `'Pending' \| 'In Progress' \| 'Completed'` |
|
|
378
|
+
| **`topics`** (\*) | Topics | `Array<string>` |
|
|
379
|
+
| **`rating`** (\*) | Rating of the movie | `number` |
|
|
380
|
+
| **`online_rating`** (\*) | Online rating | `number` |
|
|
381
|
+
| **`last_time_watched`** (\*) | Last time watched | `string` |
|
|
382
|
+
| **`times_watched`** (\*) | Times watched | `number` |
|
|
383
|
+
| **`type`** (\*) | | `'[[Sources]]'` |
|
|
384
|
+
| **`format`** (\*) | | `'[[Movies]]'` |
|
|
385
|
+
| **`areas`** (\*) | | `Array<'[[Creativity]]'>` |
|
|
386
|
+
| **`color`** (\*) | | `'#BE9207'` |
|
|
387
|
+
| **`icon`** (\*) | | `'movie'` |
|
|
388
|
+
| `cover` | | `string` |
|
|
389
|
+
| **`url`** (\*) | URL of the movie in IMDB or similar | `string` |
|
|
390
|
+
| **`watch_url`** (\*) | URL of the movie in streaming | `string` |
|
|
391
|
+
|
|
392
|
+
_(\*) Required._
|
|
393
|
+
|
|
394
|
+
## Note
|
|
395
|
+
|
|
396
|
+
Note: Union of all note types
|
|
397
|
+
|
|
398
|
+
_Union of the following possible types:_
|
|
399
|
+
|
|
400
|
+
- [Article](#article)
|
|
401
|
+
- [Book](#book)
|
|
402
|
+
- [Clothing](#clothing)
|
|
403
|
+
- [Movie](#movie)
|
package/en/Areas.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import z from "zod";
|
|
2
|
+
|
|
3
|
+
export const FirstLevelArea = z.enum([
|
|
4
|
+
"[[Food]]",
|
|
5
|
+
"[[Health]]",
|
|
6
|
+
"[[Knowledge]]",
|
|
7
|
+
"[[Structured Thinking]]",
|
|
8
|
+
"[[Home]]",
|
|
9
|
+
"[[Productivity]]",
|
|
10
|
+
"[[Exploration]]",
|
|
11
|
+
"[[Links]]",
|
|
12
|
+
"[[Exercise]]",
|
|
13
|
+
"[[Energy]]",
|
|
14
|
+
"[[Work]]",
|
|
15
|
+
"[[Finances]]",
|
|
16
|
+
"[[Mental Health]]",
|
|
17
|
+
"[[Creativity]]",
|
|
18
|
+
]).describe('First level area');
|
|
19
|
+
|
|
20
|
+
export const Area = z.enum([
|
|
21
|
+
...FirstLevelArea.options,
|
|
22
|
+
]).describe('Area');
|
|
23
|
+
|
|
24
|
+
export const Areas = z.array(Area).describe('Areas');
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
|
|
2
|
+
import z from "zod";
|
|
3
|
+
|
|
4
|
+
export const MetaArticleSchema = z.object({
|
|
5
|
+
type: z.literal("[[Sources]]"),
|
|
6
|
+
format: z.literal("[[Articles]]"),
|
|
7
|
+
areas: z.array(z.literal("[[Knowledge]]")),
|
|
8
|
+
color: z.literal("#3171B2"),
|
|
9
|
+
icon: z.literal("newspaper"),
|
|
10
|
+
banner: z.string().optional(),
|
|
11
|
+
url: z.string().describe('URL of the article'),
|
|
12
|
+
}).describe('Article: Metadata of Note');
|
|
13
|
+
|
|
14
|
+
export const CatalogArticleSchema = z.object({
|
|
15
|
+
title: z.string().describe('Title of the article'),
|
|
16
|
+
description: z.string().optional().describe('Description'),
|
|
17
|
+
excerpt: z.string().optional().describe('Extract of the article'),
|
|
18
|
+
author: z.array(z.string()).describe('Authors'),
|
|
19
|
+
published: z.string().optional().describe('Year of publication'),
|
|
20
|
+
}).describe('Article: Data obtained from catalogation');
|
|
21
|
+
|
|
22
|
+
export const DetailedArticleSchema = z.object({
|
|
23
|
+
status: z.enum(["Pending", "In Progress", "Read", "Consolidated"]).describe('Reading status'),
|
|
24
|
+
projects: z.array(z.string()).describe('Projects'),
|
|
25
|
+
topics: z.array(z.string()).describe('Topics'),
|
|
26
|
+
rating: z.number().describe('Rating of the article'),
|
|
27
|
+
}).describe('Article: Additional data');
|
|
28
|
+
|
|
29
|
+
export const ArticleSchema = CatalogArticleSchema.extend(DetailedArticleSchema.shape).extend(MetaArticleSchema.shape).describe('Article');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
|
|
2
|
+
import type { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
import type { ArticleSchema, CatalogArticleSchema, DetailedArticleSchema, MetaArticleSchema } from ".";
|
|
5
|
+
|
|
6
|
+
export type Article = z.infer<typeof ArticleSchema>;
|
|
7
|
+
export type CatalogArticle = z.infer<typeof CatalogArticleSchema>;
|
|
8
|
+
export type DetailedArticle = z.infer<typeof DetailedArticleSchema>;
|
|
9
|
+
export type MetaArticle = z.infer<typeof MetaArticleSchema>;
|