@segha/catalog 2.2.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/CHANGELOG.md +187 -0
  2. package/es/Article/index.ts +17 -26
  3. package/es/Article/types.ts +1 -4
  4. package/es/Book/index.ts +21 -28
  5. package/es/Book/types.ts +1 -4
  6. package/es/Clothing/Cares.ts +1 -5
  7. package/es/Clothing/Colors.ts +2 -2
  8. package/es/Clothing/Fit.ts +1 -1
  9. package/es/Clothing/Formality.ts +12 -6
  10. package/es/Clothing/Layer.ts +7 -3
  11. package/es/Clothing/Materials.ts +1 -5
  12. package/es/Clothing/Measurements.ts +1 -3
  13. package/es/Clothing/Season.ts +10 -5
  14. package/es/Clothing/Status.ts +12 -6
  15. package/es/Clothing/UseCases.ts +1 -5
  16. package/es/Clothing/Variants.ts +2 -5
  17. package/es/Clothing/index.ts +30 -35
  18. package/es/Clothing/types.ts +1 -3
  19. package/es/Core/Area.ts +66 -0
  20. package/es/Core/Common.ts +43 -0
  21. package/es/Core/Format.ts +28 -0
  22. package/es/Core/Rating.ts +33 -0
  23. package/es/Core/Resource.ts +18 -0
  24. package/es/Core/Source.ts +37 -0
  25. package/es/Core/Subtype.ts +8 -0
  26. package/es/Core/Type.ts +36 -0
  27. package/es/Core/index.ts +9 -0
  28. package/es/DataTypes/Color.ts +22 -0
  29. package/es/DataTypes/Date.ts +45 -0
  30. package/es/DataTypes/Icon.ts +7 -0
  31. package/es/DataTypes/Image.ts +9 -0
  32. package/es/DataTypes/Language.ts +11 -0
  33. package/es/DataTypes/Status.ts +8 -0
  34. package/es/DataTypes/Wikilink.ts +16 -0
  35. package/es/DataTypes/index.ts +7 -0
  36. package/es/EncyclopediaEntry/index.ts +30 -0
  37. package/es/EncyclopediaEntry/types.ts +8 -0
  38. package/es/Movie/MovieExternalId.ts +7 -0
  39. package/es/Movie/index.ts +22 -27
  40. package/es/Movie/types.ts +1 -4
  41. package/es/Note.ts +4 -4
  42. package/es/Painting/index.ts +16 -23
  43. package/es/Painting/types.ts +1 -4
  44. package/es/Video/index.ts +35 -0
  45. package/es/Video/types.ts +9 -0
  46. package/es/index.ts +2 -2
  47. package/es/types.ts +2 -2
  48. package/json-schemas/common/Palette.json +14 -0
  49. package/json-schemas/common/Scheme.json +11 -0
  50. package/json-schemas/common/index.json +32 -0
  51. package/json-schemas/es/Article/ArticleSchema.json +184 -78
  52. package/json-schemas/es/Article/index.json +143 -193
  53. package/json-schemas/es/ArticleSchema.json +184 -78
  54. package/json-schemas/es/Book/BookSchema.json +227 -84
  55. package/json-schemas/es/Book/index.json +197 -213
  56. package/json-schemas/es/BookSchema.json +227 -84
  57. package/json-schemas/es/Clothing/AllYear.json +6 -0
  58. package/json-schemas/es/Clothing/Autumn.json +6 -0
  59. package/json-schemas/es/Clothing/Base.json +6 -0
  60. package/json-schemas/es/Clothing/BlackTie.json +6 -0
  61. package/json-schemas/es/Clothing/Care.json +2 -1
  62. package/json-schemas/es/Clothing/Casual.json +6 -0
  63. package/json-schemas/es/Clothing/ClothingSchema.json +195 -81
  64. package/json-schemas/es/Clothing/Damaged.json +6 -0
  65. package/json-schemas/es/Clothing/Exterior.json +6 -0
  66. package/json-schemas/es/Clothing/Fit.json +2 -2
  67. package/json-schemas/es/Clothing/Formal.json +6 -0
  68. package/json-schemas/es/Clothing/Formality.json +2 -2
  69. package/json-schemas/es/Clothing/Good.json +6 -0
  70. package/json-schemas/es/Clothing/Intermediate.json +6 -0
  71. package/json-schemas/es/Clothing/Material.json +2 -1
  72. package/json-schemas/es/Clothing/Measurements.json +2 -2
  73. package/json-schemas/es/Clothing/New.json +6 -0
  74. package/json-schemas/es/Clothing/Pattern.json +2 -2
  75. package/json-schemas/es/Clothing/Retire.json +6 -0
  76. package/json-schemas/es/Clothing/Season.json +2 -2
  77. package/json-schemas/es/Clothing/SecondaryColor.json +2 -2
  78. package/json-schemas/es/Clothing/SmartCasual.json +6 -0
  79. package/json-schemas/es/Clothing/Status.json +2 -3
  80. package/json-schemas/es/Clothing/Summer.json +6 -0
  81. package/json-schemas/es/Clothing/UseCase.json +2 -1
  82. package/json-schemas/es/Clothing/Variant.json +2 -1
  83. package/json-schemas/es/Clothing/VeryCasual.json +6 -0
  84. package/json-schemas/es/Clothing/Winter.json +6 -0
  85. package/json-schemas/es/Clothing/Worn.json +6 -0
  86. package/json-schemas/es/Clothing/index.json +367 -685
  87. package/json-schemas/es/ClothingSchema.json +195 -81
  88. package/json-schemas/es/Core/Articles.json +6 -0
  89. package/json-schemas/es/Core/Atrocious.json +6 -0
  90. package/json-schemas/es/Core/Bad.json +6 -0
  91. package/json-schemas/es/Core/Books.json +6 -0
  92. package/json-schemas/es/Core/Capabilities.json +6 -0
  93. package/json-schemas/es/Core/Chronicles.json +6 -0
  94. package/json-schemas/es/Core/Clothes.json +6 -0
  95. package/json-schemas/es/Core/CommonSchema.json +165 -0
  96. package/json-schemas/es/Core/Creativity.json +6 -0
  97. package/json-schemas/es/Core/EncyclopediaEntries.json +6 -0
  98. package/json-schemas/es/Core/Energy.json +6 -0
  99. package/json-schemas/es/Core/Entities.json +6 -0
  100. package/json-schemas/es/Core/Evil.json +6 -0
  101. package/json-schemas/es/Core/Excellent.json +6 -0
  102. package/json-schemas/es/Core/Exercise.json +6 -0
  103. package/json-schemas/es/Core/Exploration.json +6 -0
  104. package/json-schemas/es/Core/Extracts.json +6 -0
  105. package/json-schemas/es/Core/Finances.json +6 -0
  106. package/json-schemas/es/Core/Food.json +6 -0
  107. package/json-schemas/es/Core/Format.json +13 -0
  108. package/json-schemas/es/Core/Good.json +6 -0
  109. package/json-schemas/es/Core/Health.json +6 -0
  110. package/json-schemas/es/Core/Home.json +6 -0
  111. package/json-schemas/es/Core/Knowledge.json +6 -0
  112. package/json-schemas/es/Core/Links.json +6 -0
  113. package/json-schemas/es/Core/MentalHealth.json +6 -0
  114. package/json-schemas/es/Core/Movies.json +6 -0
  115. package/json-schemas/es/Core/Paintings.json +6 -0
  116. package/json-schemas/es/Core/Passable.json +6 -0
  117. package/json-schemas/es/Core/Perfect.json +6 -0
  118. package/json-schemas/es/Core/Productivity.json +6 -0
  119. package/json-schemas/es/Core/Publications.json +6 -0
  120. package/json-schemas/es/Core/Rating.json +41 -0
  121. package/json-schemas/es/Core/ResourceSchema.json +171 -0
  122. package/json-schemas/es/Core/Resources.json +6 -0
  123. package/json-schemas/es/Core/ResourcesSubtype.json +11 -0
  124. package/json-schemas/es/Core/Scenarios.json +6 -0
  125. package/json-schemas/es/Core/SourceSchema.json +209 -0
  126. package/json-schemas/es/Core/Sources.json +6 -0
  127. package/json-schemas/es/Core/SourcesFormat.json +16 -0
  128. package/json-schemas/es/Core/StructuredThinking.json +6 -0
  129. package/json-schemas/es/Core/Subtype.json +8 -0
  130. package/json-schemas/es/Core/Type.json +15 -0
  131. package/json-schemas/es/Core/Videos.json +6 -0
  132. package/json-schemas/es/Core/Work.json +6 -0
  133. package/json-schemas/es/Core/index.json +939 -0
  134. package/json-schemas/es/DataTypes/Blue.json +6 -0
  135. package/json-schemas/es/DataTypes/Color.json +6 -0
  136. package/json-schemas/es/DataTypes/Consolidated.json +5 -0
  137. package/json-schemas/es/DataTypes/Date.json +21 -0
  138. package/json-schemas/es/DataTypes/DateTime.json +6 -0
  139. package/json-schemas/es/DataTypes/DateTimeOffset.json +6 -0
  140. package/json-schemas/es/DataTypes/Embedding.json +6 -0
  141. package/json-schemas/es/DataTypes/FullDate.json +6 -0
  142. package/json-schemas/es/DataTypes/Hex.json +6 -0
  143. package/json-schemas/es/DataTypes/Icon.json +6 -0
  144. package/json-schemas/es/DataTypes/Image.json +15 -0
  145. package/json-schemas/es/DataTypes/InProgress.json +5 -0
  146. package/json-schemas/es/DataTypes/Language.json +6 -0
  147. package/json-schemas/es/DataTypes/LanguageTag.json +6 -0
  148. package/json-schemas/es/DataTypes/Month.json +6 -0
  149. package/json-schemas/es/DataTypes/Orange.json +6 -0
  150. package/json-schemas/es/DataTypes/OrdinalDate.json +6 -0
  151. package/json-schemas/es/DataTypes/Pending.json +5 -0
  152. package/json-schemas/es/DataTypes/Read.json +5 -0
  153. package/json-schemas/es/DataTypes/Seen.json +5 -0
  154. package/json-schemas/es/DataTypes/Time.json +6 -0
  155. package/json-schemas/es/DataTypes/Watched.json +5 -0
  156. package/json-schemas/es/DataTypes/Week.json +6 -0
  157. package/json-schemas/es/DataTypes/WeekWithWeekDay.json +6 -0
  158. package/json-schemas/es/DataTypes/Wikilink.json +6 -0
  159. package/json-schemas/es/DataTypes/WikilinkOrEmbedding.json +6 -0
  160. package/json-schemas/es/DataTypes/Year.json +6 -0
  161. package/json-schemas/es/DataTypes/Yellow.json +6 -0
  162. package/json-schemas/es/DataTypes/index.json +193 -0
  163. package/json-schemas/es/EncyclopediaEntry/EncyclopediaEntrySchema.json +252 -0
  164. package/json-schemas/es/EncyclopediaEntry/WikipediaEntrySchema.json +257 -0
  165. package/json-schemas/es/EncyclopediaEntry/index.json +516 -0
  166. package/json-schemas/es/EncyclopediaEntrySchema.json +252 -0
  167. package/json-schemas/es/Movie/MovieExternalId.json +5 -0
  168. package/json-schemas/es/Movie/MovieSchema.json +224 -93
  169. package/json-schemas/es/Movie/index.json +193 -225
  170. package/json-schemas/es/MovieSchema.json +224 -93
  171. package/json-schemas/es/NoteSchema.json +1323 -506
  172. package/json-schemas/es/Painting/PaintingSchema.json +182 -56
  173. package/json-schemas/es/Painting/index.json +160 -154
  174. package/json-schemas/es/PaintingSchema.json +182 -56
  175. package/json-schemas/es/Video/VideoSchema.json +230 -0
  176. package/json-schemas/es/Video/VimeoSchema.json +221 -0
  177. package/json-schemas/es/Video/YoutubeSchema.json +221 -0
  178. package/json-schemas/es/Video/index.json +679 -0
  179. package/json-schemas/es/VideoSchema.json +230 -0
  180. package/json-schemas/es/VimeoSchema.json +221 -0
  181. package/json-schemas/es/WikipediaEntrySchema.json +257 -0
  182. package/json-schemas/es/YoutubeSchema.json +158 -79
  183. package/json-schemas/es/index.json +3138 -3896
  184. package/package.json +8 -2
  185. package/es/Areas.ts +0 -24
  186. package/es/Icon.ts +0 -1673
  187. package/es/Wikipedia/index.ts +0 -18
  188. package/es/Wikipedia/types.ts +0 -10
  189. package/es/Youtube/index.ts +0 -19
  190. package/es/Youtube/types.ts +0 -10
  191. package/json-schemas/es/Article/CatalogArticleSchema.json +0 -47
  192. package/json-schemas/es/Article/DetailedArticleSchema.json +0 -38
  193. package/json-schemas/es/Article/MetaArticleSchema.json +0 -71
  194. package/json-schemas/es/Book/CatalogBookSchema.json +0 -48
  195. package/json-schemas/es/Book/DetailedBookSchema.json +0 -43
  196. package/json-schemas/es/Book/MetaBookSchema.json +0 -68
  197. package/json-schemas/es/CatalogArticleSchema.json +0 -47
  198. package/json-schemas/es/CatalogBookSchema.json +0 -48
  199. package/json-schemas/es/CatalogClothingSchema.json +0 -292
  200. package/json-schemas/es/CatalogMovieSchema.json +0 -50
  201. package/json-schemas/es/CatalogPaintingSchema.json +0 -26
  202. package/json-schemas/es/CatalogWikipediaSchema.json +0 -47
  203. package/json-schemas/es/CatalogYoutubeSchema.json +0 -47
  204. package/json-schemas/es/Clothing/Cares.json +0 -17
  205. package/json-schemas/es/Clothing/CatalogClothingSchema.json +0 -292
  206. package/json-schemas/es/Clothing/DetailedClothingSchema.json +0 -73
  207. package/json-schemas/es/Clothing/Materials.json +0 -32
  208. package/json-schemas/es/Clothing/MetaClothingSchema.json +0 -60
  209. package/json-schemas/es/Clothing/UseCases.json +0 -22
  210. package/json-schemas/es/Clothing/Variants.json +0 -41
  211. package/json-schemas/es/DetailedArticleSchema.json +0 -38
  212. package/json-schemas/es/DetailedBookSchema.json +0 -43
  213. package/json-schemas/es/DetailedClothingSchema.json +0 -73
  214. package/json-schemas/es/DetailedMovieSchema.json +0 -49
  215. package/json-schemas/es/DetailedPaintingSchema.json +0 -33
  216. package/json-schemas/es/DetailedWikipediaSchema.json +0 -38
  217. package/json-schemas/es/DetailedYoutubeSchema.json +0 -37
  218. package/json-schemas/es/Icon.json +0 -1675
  219. package/json-schemas/es/MetaArticleSchema.json +0 -71
  220. package/json-schemas/es/MetaBookSchema.json +0 -68
  221. package/json-schemas/es/MetaClothingSchema.json +0 -60
  222. package/json-schemas/es/MetaMovieSchema.json +0 -69
  223. package/json-schemas/es/MetaPaintingSchema.json +0 -61
  224. package/json-schemas/es/MetaWikipediaSchema.json +0 -76
  225. package/json-schemas/es/MetaYoutubeSchema.json +0 -76
  226. package/json-schemas/es/Movie/CatalogMovieSchema.json +0 -50
  227. package/json-schemas/es/Movie/DetailedMovieSchema.json +0 -49
  228. package/json-schemas/es/Movie/MetaMovieSchema.json +0 -69
  229. package/json-schemas/es/Painting/CatalogPaintingSchema.json +0 -26
  230. package/json-schemas/es/Painting/DetailedPaintingSchema.json +0 -33
  231. package/json-schemas/es/Painting/MetaPaintingSchema.json +0 -61
  232. package/json-schemas/es/Wikipedia/CatalogWikipediaSchema.json +0 -47
  233. package/json-schemas/es/Wikipedia/DetailedWikipediaSchema.json +0 -38
  234. package/json-schemas/es/Wikipedia/MetaWikipediaSchema.json +0 -76
  235. package/json-schemas/es/Wikipedia/WikipediaSchema.json +0 -143
  236. package/json-schemas/es/Wikipedia/index.json +0 -311
  237. package/json-schemas/es/WikipediaSchema.json +0 -143
  238. package/json-schemas/es/Youtube/CatalogYoutubeSchema.json +0 -47
  239. package/json-schemas/es/Youtube/DetailedYoutubeSchema.json +0 -37
  240. package/json-schemas/es/Youtube/MetaYoutubeSchema.json +0 -76
  241. package/json-schemas/es/Youtube/YoutubeSchema.json +0 -142
  242. package/json-schemas/es/Youtube/index.json +0 -309
  243. /package/json-schemas/es/{Area.json → Core/Area.json} +0 -0
  244. /package/json-schemas/es/{Areas.json → Core/Areas.json} +0 -0
  245. /package/json-schemas/es/{FirstLevelArea.json → Core/FirstLevelArea.json} +0 -0
package/CHANGELOG.md CHANGED
@@ -5,6 +5,193 @@ All notable changes to @segha/catalog will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [4.0.0] - 2026-02-08
9
+
10
+ ### Spanish (es)
11
+
12
+ #### Added
13
+
14
+ - **BREAKING** Property `size` in `ClothingSchema` changed from required to optional
15
+
16
+ #### Changed
17
+
18
+ - Property `variants` in `ClothingSchema` was modified
19
+ - Property `materials` in `ClothingSchema` was modified
20
+ - Property `use_case` in `ClothingSchema` was modified
21
+ - Property `cares` in `ClothingSchema` was modified
22
+
23
+ #### Removed
24
+
25
+ - **BREAKING** Schema `CatalogClothingSchema` was removed
26
+
27
+ ## [3.0.0] - 2026-02-08
28
+
29
+ ### COMMON (common)
30
+
31
+ #### Added
32
+
33
+ - Schema `Palette` was added
34
+ - Schema `Scheme` was added
35
+
36
+ ### Spanish (es)
37
+
38
+ #### Added
39
+
40
+ - Schema `EncyclopediaEntrySchema` was added
41
+ - Schema `VideoSchema` was added
42
+ - Schema `VimeoSchema` was added
43
+ - Schema `WikipediaEntrySchema` was added
44
+ - Optional property `cover` was added to `ArticleSchema`
45
+ - Optional property `aliases` was added to `ArticleSchema`
46
+ - **BREAKING** Property `type` in `ArticleSchema` changed from required to optional
47
+ - **BREAKING** Property `status` in `ArticleSchema` changed from required to optional
48
+ - **BREAKING** Property `format` in `ArticleSchema` changed from required to optional
49
+ - Optional property `banner` was added to `BookSchema`
50
+ - Optional property `projects` was added to `BookSchema`
51
+ - Optional property `aliases` was added to `BookSchema`
52
+ - **BREAKING** Property `type` in `BookSchema` changed from required to optional
53
+ - **BREAKING** Property `status` in `BookSchema` changed from required to optional
54
+ - **BREAKING** Property `format` in `BookSchema` changed from required to optional
55
+ - **BREAKING** Property `author` in `BookSchema` changed from required to optional
56
+ - Optional property `banner` was added to `ClothingSchema`
57
+ - Optional property `projects` was added to `ClothingSchema`
58
+ - **BREAKING** Required property `topics` was added to `ClothingSchema`
59
+ - Optional property `rating` was added to `ClothingSchema`
60
+ - Optional property `aliases` was added to `ClothingSchema`
61
+ - **BREAKING** Property `type` in `ClothingSchema` changed from required to optional
62
+ - **BREAKING** Property `subtype` in `ClothingSchema` changed from required to optional
63
+ - Optional property `banner` was added to `MovieSchema`
64
+ - Optional property `projects` was added to `MovieSchema`
65
+ - Optional property `aliases` was added to `MovieSchema`
66
+ - Optional property `external_ids` was added to `MovieSchema`
67
+ - **BREAKING** Property `type` in `MovieSchema` changed from required to optional
68
+ - **BREAKING** Property `status` in `MovieSchema` changed from required to optional
69
+ - **BREAKING** Property `format` in `MovieSchema` changed from required to optional
70
+ - Optional property `banner` was added to `PaintingSchema`
71
+ - Optional property `status` was added to `PaintingSchema`
72
+ - Optional property `aliases` was added to `PaintingSchema`
73
+ - Optional property `url` was added to `PaintingSchema`
74
+ - **BREAKING** Property `type` in `PaintingSchema` changed from required to optional
75
+ - **BREAKING** Property `cover` in `PaintingSchema` changed from required to optional
76
+ - **BREAKING** Property `format` in `PaintingSchema` changed from required to optional
77
+ - Optional property `cover` was added to `YoutubeSchema`
78
+ - Optional property `aliases` was added to `YoutubeSchema`
79
+ - **BREAKING** Property `type` in `YoutubeSchema` changed from required to optional
80
+ - **BREAKING** Property `status` in `YoutubeSchema` changed from required to optional
81
+ - **BREAKING** Property `format` in `YoutubeSchema` changed from required to optional
82
+
83
+ #### Changed
84
+
85
+ - **BREAKING** Property `status` in `ArticleSchema` type changed from `string` to `undefined`
86
+ - **BREAKING** Property `rating` in `ArticleSchema` type changed from `number` to `undefined`
87
+ - **BREAKING** Property `cover` in `BookSchema` type changed from `string` to `undefined`
88
+ - **BREAKING** Property `status` in `BookSchema` type changed from `string` to `undefined`
89
+ - **BREAKING** Property `rating` in `BookSchema` type changed from `number` to `undefined`
90
+ - **BREAKING** Property `description` in `BookSchema` type changed from `string` to `undefined`
91
+ - **BREAKING** Property `last_time_read` in `BookSchema` type changed from `string` to `undefined`
92
+ - **BREAKING** Property `cover` in `ClothingSchema` type changed from `string` to `undefined`
93
+ - **BREAKING** Property `cover` in `MovieSchema` type changed from `string` to `undefined`
94
+ - **BREAKING** Property `topics` in `MovieSchema` type changed from `undefined` to `array`
95
+ - **BREAKING** Property `status` in `MovieSchema` type changed from `string` to `undefined`
96
+ - **BREAKING** Property `rating` in `MovieSchema` type changed from `number` to `undefined`
97
+ - **BREAKING** Property `last_time_watched` in `MovieSchema` type changed from `string` to `undefined`
98
+ - **BREAKING** Property `cover` in `PaintingSchema` type changed from `string` to `undefined`
99
+ - **BREAKING** Property `rating` in `PaintingSchema` type changed from `number` to `undefined`
100
+ - **BREAKING** Property `published` in `PaintingSchema` type changed from `string` to `undefined`
101
+ - **BREAKING** Property `status` in `YoutubeSchema` type changed from `string` to `undefined`
102
+ - **BREAKING** Property `rating` in `YoutubeSchema` type changed from `number` to `undefined`
103
+ - Property `type` in `ArticleSchema` was modified
104
+ - Property `color` in `ArticleSchema` was modified
105
+ - Property `icon` in `ArticleSchema` was modified
106
+ - Property `banner` in `ArticleSchema` was modified
107
+ - Property `projects` in `ArticleSchema` was modified
108
+ - Property `topics` in `ArticleSchema` was modified
109
+ - Property `format` in `ArticleSchema` was modified
110
+ - Property `url` in `ArticleSchema` was modified
111
+ - Property `author` in `ArticleSchema` was modified
112
+ - Property `published` in `ArticleSchema` was modified
113
+ - Property `type` in `BookSchema` was modified
114
+ - Property `color` in `BookSchema` was modified
115
+ - Property `icon` in `BookSchema` was modified
116
+ - Property `topics` in `BookSchema` was modified
117
+ - Property `format` in `BookSchema` was modified
118
+ - Property `url` in `BookSchema` was modified
119
+ - Property `author` in `BookSchema` was modified
120
+ - Property `published` in `BookSchema` was modified
121
+ - Property `read_url` in `BookSchema` was modified
122
+ - Property `times_read` in `BookSchema` was modified
123
+ - Property `type` in `ClothingSchema` was modified
124
+ - Property `color` in `ClothingSchema` was modified
125
+ - Property `icon` in `ClothingSchema` was modified
126
+ - Property `subtype` in `ClothingSchema` was modified
127
+ - Property `type` in `MovieSchema` was modified
128
+ - Property `color` in `MovieSchema` was modified
129
+ - Property `icon` in `MovieSchema` was modified
130
+ - Property `format` in `MovieSchema` was modified
131
+ - Property `url` in `MovieSchema` was modified
132
+ - Property `author` in `MovieSchema` was modified
133
+ - Property `published` in `MovieSchema` was modified
134
+ - Property `watch_url` in `MovieSchema` was modified
135
+ - Property `times_watched` in `MovieSchema` was modified
136
+ - Property `type` in `PaintingSchema` was modified
137
+ - Property `color` in `PaintingSchema` was modified
138
+ - Property `icon` in `PaintingSchema` was modified
139
+ - Property `projects` in `PaintingSchema` was modified
140
+ - Property `topics` in `PaintingSchema` was modified
141
+ - Property `format` in `PaintingSchema` was modified
142
+ - Property `author` in `PaintingSchema` was modified
143
+ - Property `title` in `PaintingSchema` was modified
144
+ - Property `type` in `YoutubeSchema` was modified
145
+ - Property `color` in `YoutubeSchema` was modified
146
+ - Property `icon` in `YoutubeSchema` was modified
147
+ - Property `banner` in `YoutubeSchema` was modified
148
+ - Property `projects` in `YoutubeSchema` was modified
149
+ - Property `topics` in `YoutubeSchema` was modified
150
+ - Property `format` in `YoutubeSchema` was modified
151
+ - Property `url` in `YoutubeSchema` was modified
152
+ - Property `author` in `YoutubeSchema` was modified
153
+ - Property `published` in `YoutubeSchema` was modified
154
+ - Property `title` in `YoutubeSchema` was modified
155
+
156
+ #### Removed
157
+
158
+ - **BREAKING** Schema `Area` was removed
159
+ - **BREAKING** Schema `Areas` was removed
160
+ - **BREAKING** Schema `FirstLevelArea` was removed
161
+ - **BREAKING** Schema `Icon` was removed
162
+ - **BREAKING** Schema `CatalogArticleSchema` was removed
163
+ - **BREAKING** Schema `CatalogBookSchema` was removed
164
+ - **BREAKING** Schema `CatalogMovieSchema` was removed
165
+ - **BREAKING** Schema `CatalogPaintingSchema` was removed
166
+ - **BREAKING** Schema `CatalogWikipediaSchema` was removed
167
+ - **BREAKING** Schema `CatalogYoutubeSchema` was removed
168
+ - **BREAKING** Schema `DetailedArticleSchema` was removed
169
+ - **BREAKING** Schema `DetailedBookSchema` was removed
170
+ - **BREAKING** Schema `DetailedClothingSchema` was removed
171
+ - **BREAKING** Schema `DetailedMovieSchema` was removed
172
+ - **BREAKING** Schema `DetailedPaintingSchema` was removed
173
+ - **BREAKING** Schema `DetailedWikipediaSchema` was removed
174
+ - **BREAKING** Schema `DetailedYoutubeSchema` was removed
175
+ - **BREAKING** Schema `MetaArticleSchema` was removed
176
+ - **BREAKING** Schema `MetaBookSchema` was removed
177
+ - **BREAKING** Schema `MetaClothingSchema` was removed
178
+ - **BREAKING** Schema `MetaMovieSchema` was removed
179
+ - **BREAKING** Schema `MetaPaintingSchema` was removed
180
+ - **BREAKING** Schema `MetaWikipediaSchema` was removed
181
+ - **BREAKING** Schema `MetaYoutubeSchema` was removed
182
+ - **BREAKING** Schema `WikipediaSchema` was removed
183
+ - **BREAKING** Property `topics` in `ArticleSchema` changed from optional to required
184
+ - **BREAKING** Property `url` in `ArticleSchema` changed from optional to required
185
+ - **BREAKING** Property `topics` in `BookSchema` changed from optional to required
186
+ - **BREAKING** Property `description` was removed from `MovieSchema`
187
+ - **BREAKING** Property `topics` in `MovieSchema` changed from optional to required
188
+ - **BREAKING** Property `description` was removed from `PaintingSchema`
189
+ - **BREAKING** Property `topics` in `PaintingSchema` changed from optional to required
190
+ - **BREAKING** Property `title` in `PaintingSchema` changed from optional to required
191
+ - **BREAKING** Property `description` was removed from `YoutubeSchema`
192
+ - **BREAKING** Property `excerpt` was removed from `YoutubeSchema`
193
+ - **BREAKING** Property `topics` in `YoutubeSchema` changed from optional to required
194
+
8
195
  ## [2.2.0] - 2026-02-06
9
196
 
10
197
  ### Added
@@ -1,34 +1,25 @@
1
1
 
2
2
  import z from "zod";
3
3
 
4
- import { Areas } from '../Areas';
4
+ import { Areas, Articles, SourceSchema, Knowledge } from '../Core';
5
+ import { Color, Icon, Image, Blue, Pending, InProgress, Read, Consolidated } from "../DataTypes";
5
6
 
6
- export const MetaArticleSchema = z.object({
7
- type: z.literal("[[Fuentes]]"),
8
- format: z.literal("[[Artículos]]"),
9
- areas: Areas.default(["[[Conocimiento]]"]),
10
- color: z.string().optional().default("#3171B2").describe('Color de la nota.'),
11
- icon: z.string().optional().default('newspaper').describe('Icono de Lucide.'),
12
- banner: z.string().nullable().optional().describe('Banner de la nota.'),
13
- url: z.string().optional().describe('URL del artículo'),
14
- }).describe('Artículo: Metadatos de Nota');
15
7
 
16
- export const CatalogArticleSchema = z.object({
8
+ const ArticleStatus = z
9
+ .union([Pending, InProgress, Read, Consolidated])
10
+ .describe('Estado de procesamiento del artículo');
11
+
12
+ const ArticleIcon = z.literal("newspaper");
13
+
14
+ export const ArticleSchema = SourceSchema.extend({
15
+ format: Articles.default(Articles.value),
16
+ status: ArticleStatus.default(Pending.value),
17
+ areas: Areas.default([Knowledge.value]),
18
+ color: Color.optional().default(Blue.value).describe('Color de la nota.'),
19
+ icon: Icon.optional().default(ArticleIcon.value).describe('Icono de Lucide.'),
20
+ banner: Image.nullable().optional().describe('Banner de la nota.'),
21
+ url: z.url().describe('URL del artículo'),
17
22
  title: z.string().describe('Título del artículo'),
18
23
  description: z.string().nullable().optional().describe('Descripción'),
19
24
  excerpt: z.string().optional().describe('Extracto del artículo'),
20
- author: z.array(z.string()).optional().describe('Autores'),
21
- published: z.union([z.string(), z.number()])
22
- .transform((val) => String(val))
23
- .optional()
24
- .describe('Año de publicación'),
25
- }).describe('Artículo: Datos obtenibles de catalogación');
26
-
27
- export const DetailedArticleSchema = z.object({
28
- status: z.enum(["Pendiente", "En Proceso", "Leído", "Consolidado"]).describe('Estado de lectura'),
29
- projects: z.array(z.string()).optional().describe('Proyectos'),
30
- topics: z.array(z.string()).optional().describe('Temas'),
31
- rating: z.number().optional().describe('Puntuación del artículo'),
32
- }).describe('Artículo: Datos adicionales');
33
-
34
- export const ArticleSchema = CatalogArticleSchema.extend(DetailedArticleSchema.shape).extend(MetaArticleSchema.shape).describe('Artículo');
25
+ }).describe('Artículo');
@@ -1,9 +1,6 @@
1
1
 
2
2
  import type { z } from 'zod';
3
3
 
4
- import type { ArticleSchema, CatalogArticleSchema, DetailedArticleSchema, MetaArticleSchema } from ".";
4
+ import type { ArticleSchema } from ".";
5
5
 
6
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>;
package/es/Book/index.ts CHANGED
@@ -1,36 +1,29 @@
1
1
 
2
2
  import z from "zod";
3
- import { Areas } from "../Areas";
4
3
 
5
- export const MetaBookSchema= z.object({
6
- type: z.literal("[[Fuentes]]"),
7
- format: z.literal("[[Libros]]"),
8
- areas: Areas.default(["[[Conocimiento]]"]),
9
- color: z.string().optional().default("#3171B2").describe('Color de la nota.'),
10
- icon: z.string().optional().default('book').describe('Icono de Lucide.'),
11
- cover: z.string().optional().describe('Portada del libro.'),
12
- url: z.string().optional().describe('URL del libro en Amazon o similar'),
13
- read_url: z.string().optional().describe('URL de la lectura del libro'),
14
- }).describe('Libro: Metadatos de Nota');
4
+ import { Areas, SourceSchema, Knowledge, Books } from '../Core';
5
+ import { Color, Icon, Image, Blue, Pending, InProgress, Read, Consolidated, Date } from "../DataTypes";
15
6
 
16
- export const CatalogBookSchema = z.object({
7
+ const BookStatus = z
8
+ .union([Pending, InProgress, Read, Consolidated])
9
+ .describe('Estado de procesamiento del libro');
10
+
11
+ const BookIcon = z.literal("book");
12
+
13
+ export const BookSchema = SourceSchema.extend({
14
+ format: Books.default(Books.value),
15
+ status: BookStatus.default(Pending.value),
16
+ areas: Areas.default([Knowledge.value]),
17
+ color: Color.optional().default(Blue.value).describe('Color de la nota.'),
18
+ icon: Icon.optional().default(BookIcon.value).describe('Icono de Lucide.'),
19
+ cover: Image.nullable().optional().describe('Portada del libro.'),
20
+ url: z.url().optional().describe('URL del libro en Amazon o similar'),
21
+ read_url: z.url().optional().describe('URL de la lectura del libro'),
17
22
  title: z.string().describe('Título del libro'),
18
23
  subtitle: z.string().optional().describe('Subtítulo del libro'),
19
- description: z.string().optional().describe('Descripción del libro'),
20
- author: z.array(z.string()).describe('Autores'),
21
- published: z.union([z.string(), z.number()])
22
- .transform((val) => String(val))
23
- .optional().describe('Año de publicación'),
24
+ description: z.string().nullable().optional().describe('Descripción'),
24
25
  categories: z.array(z.string()).optional().describe('Géneros'),
25
- }).describe('Libro: Datos obtenibles de catalogación');
26
-
27
- export const DetailedBookSchema = z.object({
28
- status: z.enum(["Pendiente", "En Proceso", "Leído", "Consolidado"]).describe('Estado de lectura'),
29
- topics: z.array(z.string()).optional().describe('Temas'),
30
- rating: z.number().optional().describe('Puntuación del libro'),
31
26
  online_rating: z.number().optional().describe('Puntuación en línea'),
32
- last_time_read: z.string().optional().describe('Última vez leído'),
33
- times_read: z.number().optional().describe('Veces leído'),
34
- }).describe('Libro: Datos adicionales');
35
-
36
- export const BookSchema = CatalogBookSchema.extend(DetailedBookSchema.shape).extend(MetaBookSchema.shape).describe('Libro');
27
+ last_time_read: Date.optional().describe('Última vez leído'),
28
+ times_read: z.number().default(0).optional().describe('Veces leído'),
29
+ }).describe('Libro');
package/es/Book/types.ts CHANGED
@@ -1,9 +1,6 @@
1
1
 
2
2
  import type { z } from 'zod';
3
3
 
4
- import type { BookSchema, CatalogBookSchema, DetailedBookSchema, MetaBookSchema } from ".";
4
+ import type { BookSchema } from ".";
5
5
 
6
6
  export type Book = z.infer<typeof BookSchema>;
7
- export type CatalogBook = z.infer<typeof CatalogBookSchema>;
8
- export type DetailedBook = z.infer<typeof DetailedBookSchema>;
9
- export type MetaBook = z.infer<typeof MetaBookSchema>;
@@ -20,8 +20,4 @@ export const Care = z.enum([
20
20
  ...WashType.options,
21
21
  ...Temperature.options,
22
22
  ...Ironing.options,
23
- ]);
24
-
25
- export const Cares = z.array(Care)
26
- .optional()
27
- .describe('Cuidados');
23
+ ]).describe('Cuidado de la prenda');
@@ -38,7 +38,7 @@ export const Color = z.enum([
38
38
  ]);
39
39
 
40
40
  export const PrimaryColor = Color.describe('Color principal');
41
- export const SecondaryColor = Color.optional().describe('Color secundario');
41
+ export const SecondaryColor = Color.describe('Color secundario');
42
42
 
43
43
  export const Pattern = z.enum([
44
44
  'Liso',
@@ -51,4 +51,4 @@ export const Pattern = z.enum([
51
51
  'Camuflaje',
52
52
  'EstampadoGráfico',
53
53
  'Degradado'
54
- ]).optional().describe('Estampado');
54
+ ]).describe('Estampado');
@@ -7,4 +7,4 @@ export const Fit = z.enum([
7
7
  'Relajado',
8
8
  'Holgado',
9
9
  'Extragrande',
10
- ]).optional().describe('Ajuste');
10
+ ]).describe('Ajuste');
@@ -1,9 +1,15 @@
1
1
  import z from "zod";
2
2
 
3
+ export const VeryCasual = z.literal('Muy Informal').describe('Muy Informal');
4
+ export const Casual = z.literal('Casual').describe('Casual');
5
+ export const SmartCasual = z.literal('Arreglado').describe('Arreglado');
6
+ export const Formal = z.literal('Formal').describe('Formal');
7
+ export const BlackTie = z.literal('Etiqueta').describe('Etiqueta');
8
+
3
9
  export const Formality = z.enum([
4
- 'Muy Informal', // 1,
5
- 'Casual', // 2,
6
- 'Arreglado', // 3,
7
- 'Formal', // 4,
8
- 'Etiqueta', // 5,
9
- ]).optional().describe('Formalidad');
10
+ VeryCasual.value,
11
+ Casual.value,
12
+ SmartCasual.value,
13
+ Formal.value,
14
+ BlackTie.value,
15
+ ]).describe('Formalidad');
@@ -1,8 +1,12 @@
1
1
  import z from "zod";
2
2
 
3
+ export const Base = z.literal('Base').describe('Base');
4
+ export const Intermediate = z.literal('Intermedia').describe('Intermedia');
5
+ export const Exterior = z.literal('Exterior').describe('Exterior');
6
+
3
7
  // Capa Térmica
4
8
  export const Layer = z.enum([
5
- 'Base',
6
- 'Intermedia',
7
- 'Exterior',
9
+ Base.value,
10
+ Intermediate.value,
11
+ Exterior.value,
8
12
  ]).describe('Capa Térmica');
@@ -38,8 +38,4 @@ export const Material = z.enum([
38
38
  ...NaturalMaterial.options,
39
39
  ...SyntheticMaterial.options,
40
40
  ...CommonFabric.options,
41
- ]);
42
-
43
- export const Materials = z.array(Material)
44
- .optional()
45
- .describe('Materiales');
41
+ ]).describe('Materiales');
@@ -1,5 +1,3 @@
1
1
  import z from "zod";
2
2
 
3
- export const Measurements = z.array(z.number())
4
- .optional()
5
- .describe('Medidas');
3
+ export const Measurements = z.array(z.number()).describe('Medidas');
@@ -1,8 +1,13 @@
1
1
  import z from "zod";
2
2
 
3
+ export const Winter = z.literal('Invierno').describe('Invierno');
4
+ export const Summer = z.literal('Verano').describe('Verano');
5
+ export const Autumn = z.literal('Entretiempo').describe('Entretiempo');
6
+ export const AllYear = z.literal('Todo el año').describe('Todo el año');
7
+
3
8
  export const Season = z.enum([
4
- 'Invierno',
5
- 'Verano',
6
- 'Entretiempo',
7
- 'Todo el año',
8
- ]).optional().describe('Estaciones');
9
+ Winter.value,
10
+ Summer.value,
11
+ Autumn.value,
12
+ AllYear.value,
13
+ ]).describe('Estaciones');
@@ -1,9 +1,15 @@
1
1
  import z from "zod";
2
2
 
3
+ export const New = z.literal('Nuevo').describe('Nuevo');
4
+ export const Good = z.literal('Bien').describe('Bien');
5
+ export const Worn = z.literal('Gastado').describe('Gastado');
6
+ export const Damaged = z.literal('Dañado').describe('Dañado');
7
+ export const Retire = z.literal('Retirar').describe('Retirar');
8
+
3
9
  export const Status = z.enum([
4
- 'Nuevo',
5
- 'Bien',
6
- 'Gastado',
7
- 'Dañado',
8
- 'Retirar'
9
- ]).optional().default('Bien').describe('Estado');
10
+ New.value,
11
+ Good.value,
12
+ Worn.value,
13
+ Damaged.value,
14
+ Retire.value,
15
+ ]).describe('Estado de la prenda de ropa');
@@ -13,8 +13,4 @@ export const UseCase = z.enum([
13
13
  'Playa',
14
14
  'Lluvia',
15
15
  'Frío Extremo',
16
- ])
17
-
18
- export const UseCases = z.array(UseCase)
19
- .optional()
20
- .describe('Casos de uso');
16
+ ]).describe('Casos de uso');
@@ -66,8 +66,5 @@ export const Variant = z.enum([
66
66
  ...Outerwear.options,
67
67
  ...Closures.options,
68
68
  ...AdditionalFeatures.options,
69
- ]);
70
-
71
- export const Variants = z.array(Variant)
72
- .optional()
73
- .describe('Detalles Estructurales');
69
+ ])
70
+ .describe('Detalles Estructurales');
@@ -1,52 +1,47 @@
1
1
  import z from "zod";
2
2
 
3
- import { Cares } from "./Cares";
3
+ import { Areas, Home, ResourceSchema } from "../Core";
4
+ import { Clothes } from "../Core/Subtype";
5
+ import { Color, Icon, Image, Orange } from "../DataTypes";
6
+ import { Care } from "./Cares";
4
7
  import { Pattern, PrimaryColor, SecondaryColor } from "./Colors";
5
8
  import { Fit } from "./Fit";
6
- import { Formality } from "./Formality";
9
+ import { Casual, Formality } from "./Formality";
7
10
  import { Garment } from "./Garment";
8
11
  import { Layer } from "./Layer";
9
- import { Materials } from "./Materials";
12
+ import { Material } from "./Materials";
10
13
  import { Measurements } from "./Measurements";
11
- import { Season } from "./Season";
14
+ import { AllYear, Season } from "./Season";
12
15
  import { Size } from "./Size";
13
16
  import { Slot } from "./Slot";
14
- import { Status } from "./Status";
15
- import { UseCases } from "./UseCases";
16
- import { Variants } from "./Variants";
17
- import { Areas } from "../Areas";
17
+ import { Good, Status } from "./Status";
18
+ import { UseCase } from "./UseCases";
19
+ import { Variant } from "./Variants";
18
20
 
19
- export const MetaClothingSchema = z.object({
20
- type: z.literal("[[Recursos]]"),
21
- subtype: z.literal("[[Prendas]]"),
22
- areas: Areas.default(["[[Hogar]]"]),
23
- color: z.string().optional().default("#CB6120").describe('Color de la nota.'),
24
- icon: z.string().optional().default('shirt').describe('Icono de Lucide.'),
25
- cover: z.string().optional().describe('Foto de la prenda de ropa.'),
26
- }).describe('Prenda de ropa: Metadatos de Nota');
21
+ const ClothingIcon = z.literal("shirt");
27
22
 
28
- export const CatalogClothingSchema = z.object({
23
+ export const ClothingSchema = ResourceSchema.extend({
24
+ subtype: Clothes.default(Clothes.value),
25
+ areas: Areas.default([Home.value]),
26
+ color: Color.optional().default(Orange.value).describe('Color de la nota.'),
27
+ icon: Icon.optional().default(ClothingIcon.value).describe('Icono de Lucide.'),
28
+ cover: Image.nullable().optional().describe('Portada de la prenda de ropa.'),
29
29
  name: z.string().describe('Nombre descriptivo de la prenda de ropa'),
30
30
  garment: Garment,
31
31
  slot: Slot,
32
- variants: Variants,
33
- fit: Fit,
32
+ variants: z.array(Variant).optional().describe('Detalles Estructurales'),
33
+ fit: Fit.optional(),
34
34
  primary_color: PrimaryColor,
35
- secondary_color: SecondaryColor,
36
- pattern: Pattern,
37
- materials: Materials,
35
+ secondary_color: SecondaryColor.optional(),
36
+ pattern: Pattern.optional(),
37
+ materials: z.array(Material).optional().describe('Materiales'),
38
38
  layer: Layer,
39
- season: Season,
40
- use_case: UseCases,
41
- formality: Formality,
39
+ season: Season.optional().default(AllYear.value),
40
+ use_case: z.array(UseCase).optional().describe('Casos de uso'),
41
+ formality: Formality.optional().default(Casual.value),
42
42
  brand: z.string().optional().describe('The brand of the clothing'),
43
- }).describe('Prenda de ropa: Datos obtenibles de catalogación');
44
-
45
- export const DetailedClothingSchema = z.object({
46
- cares: Cares,
47
- status: Status,
48
- size: Size,
49
- measurements: Measurements,
50
- }).describe('Prenda de ropa: Datos adicionales');
51
-
52
- export const ClothingSchema = CatalogClothingSchema.extend(DetailedClothingSchema.shape).extend(MetaClothingSchema.shape).describe('Prenda de ropa');
43
+ cares: z.array(Care).optional().describe('Cuidado de la prenda'),
44
+ status: Status.optional().default(Good.value),
45
+ size: Size.optional(),
46
+ measurements: Measurements.optional(),
47
+ }).describe('Prenda de ropa');
@@ -1,9 +1,7 @@
1
1
 
2
2
  import type { z } from 'zod';
3
3
 
4
- import type { ClothingSchema, CatalogClothingSchema, DetailedClothingSchema, MetaClothingSchema } from ".";
4
+ import type { ClothingSchema, CatalogClothingSchema } from ".";
5
5
 
6
6
  export type Clothing = z.infer<typeof ClothingSchema>;
7
7
  export type CatalogClothing = z.infer<typeof CatalogClothingSchema>;
8
- export type DetailedClothing = z.infer<typeof DetailedClothingSchema>;
9
- export type MetaClothing = z.infer<typeof MetaClothingSchema>;
@@ -0,0 +1,66 @@
1
+ import z from "zod";
2
+
3
+ export const Food = z.literal("[[Alimentación]]")
4
+ .describe('Alimentación');
5
+
6
+ export const Health = z.literal("[[Salud]]")
7
+ .describe('Salud');
8
+
9
+ export const Knowledge = z.literal("[[Conocimiento]]")
10
+ .describe('Conocimiento');
11
+
12
+ export const StructuredThinking = z.literal("[[Pensamiento Estructurado]]")
13
+ .describe('Pensamiento Estructurado');
14
+
15
+ export const Home = z.literal("[[Hogar]]")
16
+ .describe('Hogar');
17
+
18
+ export const Productivity = z.literal("[[Productividad]]")
19
+ .describe('Productividad');
20
+
21
+ export const Exploration = z.literal("[[Exploración]]")
22
+ .describe('Exploración');
23
+
24
+ export const Links = z.literal("[[Vínculos]]")
25
+ .describe('Vínculos');
26
+
27
+ export const Exercise = z.literal("[[Ejercicio]]")
28
+ .describe('Ejercicio');
29
+
30
+ export const Energy = z.literal("[[Energía Vital]]")
31
+ .describe('Energía Vital');
32
+
33
+ export const Work = z.literal("[[Trabajo]]")
34
+ .describe('Trabajo');
35
+
36
+ export const Finances = z.literal("[[Finanzas]]")
37
+ .describe('Finanzas');
38
+
39
+ export const MentalHealth = z.literal("[[Salud Mental]]")
40
+ .describe('Salud Mental');
41
+
42
+ export const Creativity = z.literal("[[Creatividad]]")
43
+ .describe('Creatividad');
44
+
45
+ export const FirstLevelArea = z.enum([
46
+ Food.value,
47
+ Health.value,
48
+ Knowledge.value,
49
+ StructuredThinking.value,
50
+ Home.value,
51
+ Productivity.value,
52
+ Exploration.value,
53
+ Links.value,
54
+ Exercise.value,
55
+ Energy.value,
56
+ Work.value,
57
+ Finances.value,
58
+ MentalHealth.value,
59
+ Creativity.value,
60
+ ]).describe('Área de Primer Nivel');
61
+
62
+ export const Area = z.enum([
63
+ ...FirstLevelArea.options,
64
+ ]).describe('Área');
65
+
66
+ export const Areas = z.array(Area).describe('Áreas');