@segha/catalog 2.1.0 → 3.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 (240) hide show
  1. package/CHANGELOG.md +179 -0
  2. package/README.md +83 -0
  3. package/en/Note.ts +2 -0
  4. package/en/Wikipedia/index.ts +18 -0
  5. package/en/Wikipedia/types.ts +10 -0
  6. package/en/index.ts +1 -0
  7. package/es/Article/index.ts +19 -23
  8. package/es/Article/types.ts +1 -4
  9. package/es/Book/index.ts +23 -27
  10. package/es/Book/types.ts +1 -4
  11. package/es/Clothing/index.ts +29 -14
  12. package/es/Clothing/types.ts +1 -3
  13. package/es/Core/Area.ts +66 -0
  14. package/es/Core/Common.ts +43 -0
  15. package/es/Core/Format.ts +28 -0
  16. package/es/Core/Rating.ts +33 -0
  17. package/es/Core/Resource.ts +18 -0
  18. package/es/Core/Source.ts +37 -0
  19. package/es/Core/Subtype.ts +8 -0
  20. package/es/Core/Type.ts +36 -0
  21. package/es/Core/index.ts +9 -0
  22. package/es/DataTypes/Color.ts +22 -0
  23. package/es/DataTypes/Date.ts +45 -0
  24. package/es/DataTypes/Icon.ts +7 -0
  25. package/es/DataTypes/Image.ts +9 -0
  26. package/es/DataTypes/Language.ts +11 -0
  27. package/es/DataTypes/Status.ts +8 -0
  28. package/es/DataTypes/Wikilink.ts +16 -0
  29. package/es/DataTypes/index.ts +7 -0
  30. package/es/EncyclopediaEntry/index.ts +30 -0
  31. package/es/EncyclopediaEntry/types.ts +8 -0
  32. package/es/Movie/MovieExternalId.ts +7 -0
  33. package/es/Movie/index.ts +25 -28
  34. package/es/Movie/types.ts +1 -4
  35. package/es/Note.ts +6 -0
  36. package/es/Painting/index.ts +23 -0
  37. package/es/Painting/types.ts +6 -0
  38. package/es/Video/index.ts +35 -0
  39. package/es/Video/types.ts +9 -0
  40. package/es/index.ts +3 -0
  41. package/es/types.ts +3 -0
  42. package/json-schemas/ArticleSchema.json +0 -1
  43. package/json-schemas/BookSchema.json +0 -1
  44. package/json-schemas/CatalogArticleSchema.json +0 -1
  45. package/json-schemas/CatalogBookSchema.json +0 -1
  46. package/json-schemas/CatalogClothingSchema.json +0 -1
  47. package/json-schemas/CatalogMovieSchema.json +0 -1
  48. package/json-schemas/{es/CatalogArticleSchema.json → CatalogWikipediaSchema.json} +6 -7
  49. package/json-schemas/ClothingSchema.json +0 -2
  50. package/json-schemas/DetailedArticleSchema.json +0 -1
  51. package/json-schemas/DetailedBookSchema.json +0 -1
  52. package/json-schemas/DetailedClothingSchema.json +0 -2
  53. package/json-schemas/DetailedMovieSchema.json +0 -1
  54. package/json-schemas/{es/Article/DetailedArticleSchema.json → DetailedWikipediaSchema.json} +9 -10
  55. package/json-schemas/MetaArticleSchema.json +0 -1
  56. package/json-schemas/MetaBookSchema.json +0 -1
  57. package/json-schemas/MetaClothingSchema.json +0 -1
  58. package/json-schemas/MetaMovieSchema.json +0 -1
  59. package/json-schemas/{es/Book/MetaBookSchema.json → MetaWikipediaSchema.json} +11 -12
  60. package/json-schemas/MovieSchema.json +0 -1
  61. package/json-schemas/NoteSchema.json +106 -5
  62. package/json-schemas/WikipediaSchema.json +107 -0
  63. package/json-schemas/common/Palette.json +14 -0
  64. package/json-schemas/common/Scheme.json +11 -0
  65. package/json-schemas/common/index.json +32 -0
  66. package/json-schemas/en/Article/ArticleSchema.json +0 -1
  67. package/json-schemas/en/Article/CatalogArticleSchema.json +0 -1
  68. package/json-schemas/en/Article/DetailedArticleSchema.json +0 -1
  69. package/json-schemas/en/Article/MetaArticleSchema.json +0 -1
  70. package/json-schemas/en/Article/index.json +0 -4
  71. package/json-schemas/en/ArticleSchema.json +0 -1
  72. package/json-schemas/en/Book/BookSchema.json +0 -1
  73. package/json-schemas/en/Book/CatalogBookSchema.json +0 -1
  74. package/json-schemas/en/Book/DetailedBookSchema.json +0 -1
  75. package/json-schemas/en/Book/MetaBookSchema.json +0 -1
  76. package/json-schemas/en/Book/index.json +0 -4
  77. package/json-schemas/en/BookSchema.json +0 -1
  78. package/json-schemas/en/CatalogArticleSchema.json +0 -1
  79. package/json-schemas/en/CatalogBookSchema.json +0 -1
  80. package/json-schemas/en/CatalogClothingSchema.json +0 -1
  81. package/json-schemas/en/CatalogMovieSchema.json +0 -1
  82. package/json-schemas/{es/Article/CatalogArticleSchema.json → en/CatalogWikipediaSchema.json} +6 -7
  83. package/json-schemas/en/Clothing/CatalogClothingSchema.json +0 -1
  84. package/json-schemas/en/Clothing/ClothingSchema.json +0 -2
  85. package/json-schemas/en/Clothing/DetailedClothingSchema.json +0 -2
  86. package/json-schemas/en/Clothing/MetaClothingSchema.json +0 -1
  87. package/json-schemas/en/Clothing/index.json +0 -6
  88. package/json-schemas/en/ClothingSchema.json +0 -2
  89. package/json-schemas/en/DetailedArticleSchema.json +0 -1
  90. package/json-schemas/en/DetailedBookSchema.json +0 -1
  91. package/json-schemas/en/DetailedClothingSchema.json +0 -2
  92. package/json-schemas/en/DetailedMovieSchema.json +0 -1
  93. package/json-schemas/{es/DetailedArticleSchema.json → en/DetailedWikipediaSchema.json} +9 -10
  94. package/json-schemas/en/MetaArticleSchema.json +0 -1
  95. package/json-schemas/en/MetaBookSchema.json +0 -1
  96. package/json-schemas/en/MetaClothingSchema.json +0 -1
  97. package/json-schemas/en/MetaMovieSchema.json +0 -1
  98. package/json-schemas/{es/MetaBookSchema.json → en/MetaWikipediaSchema.json} +11 -12
  99. package/json-schemas/en/Movie/CatalogMovieSchema.json +0 -1
  100. package/json-schemas/en/Movie/DetailedMovieSchema.json +0 -1
  101. package/json-schemas/en/Movie/MetaMovieSchema.json +0 -1
  102. package/json-schemas/en/Movie/MovieSchema.json +0 -1
  103. package/json-schemas/en/Movie/index.json +0 -4
  104. package/json-schemas/en/MovieSchema.json +0 -1
  105. package/json-schemas/en/NoteSchema.json +106 -5
  106. package/json-schemas/en/Wikipedia/CatalogWikipediaSchema.json +34 -0
  107. package/json-schemas/en/Wikipedia/DetailedWikipediaSchema.json +41 -0
  108. package/json-schemas/{es/Article/MetaArticleSchema.json → en/Wikipedia/MetaWikipediaSchema.json} +14 -10
  109. package/json-schemas/en/Wikipedia/WikipediaSchema.json +107 -0
  110. package/json-schemas/en/Wikipedia/index.json +239 -0
  111. package/json-schemas/en/WikipediaSchema.json +107 -0
  112. package/json-schemas/en/index.json +338 -23
  113. package/json-schemas/es/Article/ArticleSchema.json +202 -61
  114. package/json-schemas/es/Article/index.json +196 -178
  115. package/json-schemas/es/ArticleSchema.json +202 -61
  116. package/json-schemas/es/Book/BookSchema.json +240 -80
  117. package/json-schemas/es/Book/index.json +226 -210
  118. package/json-schemas/es/BookSchema.json +240 -80
  119. package/json-schemas/es/CatalogClothingSchema.json +1 -1
  120. package/json-schemas/es/Clothing/CatalogClothingSchema.json +1 -1
  121. package/json-schemas/es/Clothing/ClothingSchema.json +173 -46
  122. package/json-schemas/es/Clothing/index.json +174 -163
  123. package/json-schemas/es/ClothingSchema.json +173 -46
  124. package/json-schemas/es/Core/Articles.json +6 -0
  125. package/json-schemas/es/Core/Atrocious.json +6 -0
  126. package/json-schemas/es/Core/Bad.json +6 -0
  127. package/json-schemas/es/Core/Books.json +6 -0
  128. package/json-schemas/es/Core/Capabilities.json +6 -0
  129. package/json-schemas/es/Core/Chronicles.json +6 -0
  130. package/json-schemas/es/Core/Clothes.json +6 -0
  131. package/json-schemas/es/Core/CommonSchema.json +165 -0
  132. package/json-schemas/es/Core/Creativity.json +6 -0
  133. package/json-schemas/es/Core/EncyclopediaEntries.json +6 -0
  134. package/json-schemas/es/Core/Energy.json +6 -0
  135. package/json-schemas/es/Core/Entities.json +6 -0
  136. package/json-schemas/es/Core/Evil.json +6 -0
  137. package/json-schemas/es/Core/Excellent.json +6 -0
  138. package/json-schemas/es/Core/Exercise.json +6 -0
  139. package/json-schemas/es/Core/Exploration.json +6 -0
  140. package/json-schemas/es/Core/Extracts.json +6 -0
  141. package/json-schemas/es/Core/Finances.json +6 -0
  142. package/json-schemas/es/Core/Food.json +6 -0
  143. package/json-schemas/es/Core/Format.json +13 -0
  144. package/json-schemas/es/Core/Good.json +6 -0
  145. package/json-schemas/es/Core/Health.json +6 -0
  146. package/json-schemas/es/Core/Home.json +6 -0
  147. package/json-schemas/es/Core/Knowledge.json +6 -0
  148. package/json-schemas/es/Core/Links.json +6 -0
  149. package/json-schemas/es/Core/MentalHealth.json +6 -0
  150. package/json-schemas/es/Core/Movies.json +6 -0
  151. package/json-schemas/es/Core/Paintings.json +6 -0
  152. package/json-schemas/es/Core/Passable.json +6 -0
  153. package/json-schemas/es/Core/Perfect.json +6 -0
  154. package/json-schemas/es/Core/Productivity.json +6 -0
  155. package/json-schemas/es/Core/Publications.json +6 -0
  156. package/json-schemas/es/Core/Rating.json +41 -0
  157. package/json-schemas/es/Core/ResourceSchema.json +171 -0
  158. package/json-schemas/es/Core/Resources.json +6 -0
  159. package/json-schemas/es/Core/ResourcesSubtype.json +11 -0
  160. package/json-schemas/es/Core/Scenarios.json +6 -0
  161. package/json-schemas/es/Core/SourceSchema.json +209 -0
  162. package/json-schemas/es/Core/Sources.json +6 -0
  163. package/json-schemas/es/Core/SourcesFormat.json +16 -0
  164. package/json-schemas/es/Core/StructuredThinking.json +6 -0
  165. package/json-schemas/es/Core/Subtype.json +8 -0
  166. package/json-schemas/es/Core/Type.json +15 -0
  167. package/json-schemas/es/Core/Videos.json +6 -0
  168. package/json-schemas/es/Core/Work.json +6 -0
  169. package/json-schemas/es/Core/index.json +939 -0
  170. package/json-schemas/es/DataTypes/Blue.json +6 -0
  171. package/json-schemas/es/DataTypes/Color.json +6 -0
  172. package/json-schemas/es/DataTypes/Consolidated.json +5 -0
  173. package/json-schemas/es/DataTypes/Date.json +21 -0
  174. package/json-schemas/es/DataTypes/DateTime.json +6 -0
  175. package/json-schemas/es/DataTypes/DateTimeOffset.json +6 -0
  176. package/json-schemas/es/DataTypes/Embedding.json +6 -0
  177. package/json-schemas/es/DataTypes/FullDate.json +6 -0
  178. package/json-schemas/es/DataTypes/Hex.json +6 -0
  179. package/json-schemas/es/DataTypes/Icon.json +6 -0
  180. package/json-schemas/es/DataTypes/Image.json +15 -0
  181. package/json-schemas/es/DataTypes/InProgress.json +5 -0
  182. package/json-schemas/es/DataTypes/Language.json +6 -0
  183. package/json-schemas/es/DataTypes/LanguageTag.json +6 -0
  184. package/json-schemas/es/DataTypes/Month.json +6 -0
  185. package/json-schemas/es/DataTypes/Orange.json +6 -0
  186. package/json-schemas/es/DataTypes/OrdinalDate.json +6 -0
  187. package/json-schemas/es/DataTypes/Pending.json +5 -0
  188. package/json-schemas/es/DataTypes/Read.json +5 -0
  189. package/json-schemas/es/DataTypes/Seen.json +5 -0
  190. package/json-schemas/es/DataTypes/Time.json +6 -0
  191. package/json-schemas/es/DataTypes/Watched.json +5 -0
  192. package/json-schemas/es/DataTypes/Week.json +6 -0
  193. package/json-schemas/es/DataTypes/WeekWithWeekDay.json +6 -0
  194. package/json-schemas/es/DataTypes/Wikilink.json +6 -0
  195. package/json-schemas/es/DataTypes/WikilinkOrEmbedding.json +6 -0
  196. package/json-schemas/es/DataTypes/Year.json +6 -0
  197. package/json-schemas/es/DataTypes/Yellow.json +6 -0
  198. package/json-schemas/es/DataTypes/index.json +193 -0
  199. package/json-schemas/es/EncyclopediaEntry/EncyclopediaEntrySchema.json +252 -0
  200. package/json-schemas/es/EncyclopediaEntry/WikipediaEntrySchema.json +257 -0
  201. package/json-schemas/es/EncyclopediaEntry/index.json +516 -0
  202. package/json-schemas/es/EncyclopediaEntrySchema.json +252 -0
  203. package/json-schemas/es/Movie/MovieExternalId.json +5 -0
  204. package/json-schemas/es/Movie/MovieSchema.json +233 -80
  205. package/json-schemas/es/Movie/index.json +224 -214
  206. package/json-schemas/es/MovieSchema.json +233 -80
  207. package/json-schemas/es/NoteSchema.json +1540 -248
  208. package/json-schemas/es/Painting/PaintingSchema.json +232 -0
  209. package/json-schemas/es/Painting/index.json +239 -0
  210. package/json-schemas/es/PaintingSchema.json +232 -0
  211. package/json-schemas/es/Video/VideoSchema.json +230 -0
  212. package/json-schemas/es/Video/VimeoSchema.json +221 -0
  213. package/json-schemas/es/Video/YoutubeSchema.json +221 -0
  214. package/json-schemas/es/Video/index.json +679 -0
  215. package/json-schemas/es/VideoSchema.json +230 -0
  216. package/json-schemas/es/VimeoSchema.json +221 -0
  217. package/json-schemas/es/WikipediaEntrySchema.json +257 -0
  218. package/json-schemas/es/YoutubeSchema.json +221 -0
  219. package/json-schemas/es/index.json +3655 -967
  220. package/json-schemas/index.json +338 -23
  221. package/package.json +10 -4
  222. package/es/Areas.ts +0 -24
  223. package/json-schemas/es/Book/CatalogBookSchema.json +0 -44
  224. package/json-schemas/es/Book/DetailedBookSchema.json +0 -49
  225. package/json-schemas/es/CatalogBookSchema.json +0 -44
  226. package/json-schemas/es/CatalogMovieSchema.json +0 -49
  227. package/json-schemas/es/Clothing/DetailedClothingSchema.json +0 -75
  228. package/json-schemas/es/Clothing/MetaClothingSchema.json +0 -41
  229. package/json-schemas/es/DetailedBookSchema.json +0 -49
  230. package/json-schemas/es/DetailedClothingSchema.json +0 -75
  231. package/json-schemas/es/DetailedMovieSchema.json +0 -48
  232. package/json-schemas/es/MetaArticleSchema.json +0 -46
  233. package/json-schemas/es/MetaClothingSchema.json +0 -41
  234. package/json-schemas/es/MetaMovieSchema.json +0 -51
  235. package/json-schemas/es/Movie/CatalogMovieSchema.json +0 -49
  236. package/json-schemas/es/Movie/DetailedMovieSchema.json +0 -48
  237. package/json-schemas/es/Movie/MetaMovieSchema.json +0 -51
  238. /package/json-schemas/es/{Area.json → Core/Area.json} +0 -0
  239. /package/json-schemas/es/{Areas.json → Core/Areas.json} +0 -0
  240. /package/json-schemas/es/{FirstLevelArea.json → Core/FirstLevelArea.json} +0 -0
@@ -3,280 +3,290 @@
3
3
  "title": "@segha/catalog/es/Movie",
4
4
  "description": "Schemas for Petroglyph Catalog",
5
5
  "$defs": {
6
- "CatalogMovieSchema": {
6
+ "MovieExternalId": {
7
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
8
+ "type": "string",
9
+ "pattern": "^(tmdb|imdb|watchmode|tvmaze|tvdb):.+$"
10
+ },
11
+ "MovieSchema": {
7
12
  "$schema": "https://json-schema.org/draft/2020-12/schema",
8
13
  "type": "object",
9
14
  "properties": {
10
- "title": {
11
- "type": "string",
12
- "description": "Título de la película"
13
- },
14
- "description": {
15
+ "type": {
16
+ "default": "[[Fuentes]]",
15
17
  "type": "string",
16
- "description": "Descripción de la película"
18
+ "const": "[[Fuentes]]",
19
+ "description": "Bibliografías, recursos validados sobre los que acumular información."
17
20
  },
18
- "author": {
21
+ "areas": {
22
+ "default": [
23
+ "[[Creatividad]]"
24
+ ],
19
25
  "type": "array",
20
26
  "items": {
21
- "type": "string"
27
+ "type": "string",
28
+ "enum": [
29
+ "[[Alimentación]]",
30
+ "[[Salud]]",
31
+ "[[Conocimiento]]",
32
+ "[[Pensamiento Estructurado]]",
33
+ "[[Hogar]]",
34
+ "[[Productividad]]",
35
+ "[[Exploración]]",
36
+ "[[Vínculos]]",
37
+ "[[Ejercicio]]",
38
+ "[[Energía Vital]]",
39
+ "[[Trabajo]]",
40
+ "[[Finanzas]]",
41
+ "[[Salud Mental]]",
42
+ "[[Creatividad]]"
43
+ ],
44
+ "description": "Área"
22
45
  },
23
- "description": "Autores. Guionistas, directores, productores, etc."
46
+ "description": "Áreas"
24
47
  },
25
- "actors": {
26
- "type": "array",
27
- "items": {
28
- "type": "string"
29
- },
30
- "description": "Actores"
48
+ "color": {
49
+ "default": "#BE9207",
50
+ "description": "Color de la nota.",
51
+ "type": "string",
52
+ "pattern": "^#([0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
31
53
  },
32
- "published": {
54
+ "icon": {
55
+ "default": "movie",
56
+ "description": "Icono de Lucide.",
33
57
  "type": "string",
34
- "description": "Año de publicación"
58
+ "pattern": "^[a-z-]+$"
59
+ },
60
+ "banner": {
61
+ "description": "Imagen",
62
+ "anyOf": [
63
+ {
64
+ "type": "string",
65
+ "format": "uri"
66
+ },
67
+ {
68
+ "type": "string",
69
+ "pattern": "\\[\\[([^\\]|]+)(?:\\|([^\\]]+))?\\]\\]",
70
+ "description": "Wikilink: [[Wikilink]] o [[Wikilink|Display Text]]"
71
+ }
72
+ ]
35
73
  },
36
- "genres": {
74
+ "cover": {
75
+ "description": "Portada de la película.",
76
+ "anyOf": [
77
+ {
78
+ "anyOf": [
79
+ {
80
+ "type": "string",
81
+ "format": "uri"
82
+ },
83
+ {
84
+ "type": "string",
85
+ "pattern": "\\[\\[([^\\]|]+)(?:\\|([^\\]]+))?\\]\\]",
86
+ "description": "Wikilink: [[Wikilink]] o [[Wikilink|Display Text]]"
87
+ }
88
+ ],
89
+ "description": "Imagen: URL o Wikilink de una imagen."
90
+ },
91
+ {
92
+ "type": "null"
93
+ }
94
+ ]
95
+ },
96
+ "projects": {
97
+ "description": "Proyectos asociados.",
37
98
  "type": "array",
38
99
  "items": {
39
- "type": "string"
40
- },
41
- "description": "Géneros"
42
- }
43
- },
44
- "required": [
45
- "title",
46
- "description",
47
- "author",
48
- "actors",
49
- "published",
50
- "genres"
51
- ],
52
- "additionalProperties": false,
53
- "description": "Película: Datos obtenibles de catalogación"
54
- },
55
- "DetailedMovieSchema": {
56
- "$schema": "https://json-schema.org/draft/2020-12/schema",
57
- "type": "object",
58
- "properties": {
59
- "status": {
60
- "type": "string",
61
- "enum": [
62
- "Pendiente",
63
- "En progreso",
64
- "Completado"
65
- ],
66
- "description": "Estado de visualización"
100
+ "type": "string",
101
+ "pattern": "\\[\\[([^\\]|]+)(?:\\|([^\\]]+))?\\]\\]",
102
+ "description": "Wikilink: [[Wikilink]] o [[Wikilink|Display Text]]"
103
+ }
67
104
  },
68
105
  "topics": {
69
106
  "type": "array",
70
107
  "items": {
71
- "type": "string"
72
- },
73
- "description": "Temas"
74
- },
75
- "rating": {
76
- "type": "number",
77
- "description": "Puntuación de la película"
78
- },
79
- "online_rating": {
80
- "type": "number",
81
- "description": "Puntuación en línea"
82
- },
83
- "last_time_watched": {
84
- "type": "string",
85
- "description": "Última vez vista"
86
- },
87
- "times_watched": {
88
- "type": "number",
89
- "description": "Veces vista"
90
- }
91
- },
92
- "required": [
93
- "status",
94
- "topics",
95
- "rating",
96
- "online_rating",
97
- "last_time_watched",
98
- "times_watched"
99
- ],
100
- "additionalProperties": false,
101
- "description": "Película: Datos adicionales"
102
- },
103
- "MetaMovieSchema": {
104
- "$schema": "https://json-schema.org/draft/2020-12/schema",
105
- "type": "object",
106
- "properties": {
107
- "type": {
108
- "type": "string",
109
- "const": "[[Fuentes]]"
108
+ "description": "Temas: Wikilink o texto libre",
109
+ "anyOf": [
110
+ {
111
+ "type": "string",
112
+ "pattern": "\\[\\[([^\\]|]+)(?:\\|([^\\]]+))?\\]\\]",
113
+ "description": "Wikilink: [[Wikilink]] o [[Wikilink|Display Text]]"
114
+ },
115
+ {
116
+ "type": "string"
117
+ }
118
+ ]
119
+ }
110
120
  },
111
- "format": {
112
- "type": "string",
113
- "const": "[[Películas]]"
121
+ "status": {
122
+ "default": "Pendiente",
123
+ "anyOf": [
124
+ {
125
+ "type": "string",
126
+ "const": "Pendiente"
127
+ },
128
+ {
129
+ "type": "string",
130
+ "const": "En Proceso"
131
+ },
132
+ {
133
+ "type": "string",
134
+ "const": "Visto"
135
+ }
136
+ ],
137
+ "description": "Estado de visualización de la película"
114
138
  },
115
- "areas": {
139
+ "rating": {
140
+ "description": "Valoración personal de la fuente.",
141
+ "anyOf": [
142
+ {
143
+ "type": "number",
144
+ "const": 7,
145
+ "description": "Perfecto, hay que probarlo, te cambia la vida, haz un esfuerzo por buscarlo."
146
+ },
147
+ {
148
+ "type": "number",
149
+ "const": 6,
150
+ "description": "Excelente, vale la pena repetirlo"
151
+ },
152
+ {
153
+ "type": "number",
154
+ "const": 5,
155
+ "description": "Bueno, no hagas un esfuerzo especial, pero es agradable."
156
+ },
157
+ {
158
+ "type": "number",
159
+ "const": 4,
160
+ "description": "Aceptable, sirve en caso de apuro."
161
+ },
162
+ {
163
+ "type": "number",
164
+ "const": 3,
165
+ "description": "Malo, no lo hagas si puedes evitarlo."
166
+ },
167
+ {
168
+ "type": "number",
169
+ "const": 2,
170
+ "description": "Atroz, evítalo activamente, repulsivo"
171
+ },
172
+ {
173
+ "type": "number",
174
+ "const": 1,
175
+ "description": "Malvado, te cambia la vida para mal."
176
+ }
177
+ ]
178
+ },
179
+ "aliases": {
180
+ "description": "Alias de la nota.",
116
181
  "type": "array",
117
182
  "items": {
118
- "type": "string",
119
- "const": "[[Creatividad]]"
183
+ "type": "string"
120
184
  }
121
185
  },
122
- "color": {
123
- "type": "string",
124
- "const": "#BE9207"
125
- },
126
- "icon": {
186
+ "format": {
187
+ "default": "[[Películas]]",
127
188
  "type": "string",
128
- "const": "movie"
129
- },
130
- "cover": {
131
- "type": "string"
189
+ "const": "[[Películas]]",
190
+ "description": "Películas"
132
191
  },
133
192
  "url": {
134
193
  "type": "string",
194
+ "format": "uri",
135
195
  "description": "URL de la película en IMDB o similar"
136
196
  },
137
- "watch_url": {
138
- "type": "string",
139
- "description": "URL de la película en streaming"
140
- }
141
- },
142
- "required": [
143
- "type",
144
- "format",
145
- "areas",
146
- "color",
147
- "icon",
148
- "url",
149
- "watch_url"
150
- ],
151
- "additionalProperties": false,
152
- "description": "Película: Metadatos de Nota"
153
- },
154
- "MovieSchema": {
155
- "$schema": "https://json-schema.org/draft/2020-12/schema",
156
- "type": "object",
157
- "properties": {
197
+ "author": {
198
+ "description": "Autores de la fuente.",
199
+ "type": "array",
200
+ "items": {
201
+ "type": "string"
202
+ }
203
+ },
204
+ "published": {
205
+ "description": "Año de publicación",
206
+ "anyOf": [
207
+ {
208
+ "type": "string",
209
+ "pattern": "^[0-9]{4}$",
210
+ "description": "Año: YYYY"
211
+ },
212
+ {
213
+ "type": "string",
214
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
215
+ "description": "Mes: YYYY-MM"
216
+ },
217
+ {
218
+ "type": "string",
219
+ "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
220
+ "description": "Fecha: YYYY-MM-DD"
221
+ }
222
+ ]
223
+ },
158
224
  "title": {
159
225
  "type": "string",
160
226
  "description": "Título de la película"
161
227
  },
162
- "description": {
228
+ "watch_url": {
229
+ "description": "URL de la película en streaming",
163
230
  "type": "string",
164
- "description": "Descripción de la película"
231
+ "format": "uri"
165
232
  },
166
- "author": {
233
+ "external_ids": {
234
+ "description": "IDs externos de la película",
167
235
  "type": "array",
168
236
  "items": {
169
- "type": "string"
170
- },
171
- "description": "Autores. Guionistas, directores, productores, etc."
237
+ "type": "string",
238
+ "pattern": "^(tmdb|imdb|watchmode|tvmaze|tvdb):.+$"
239
+ }
172
240
  },
173
241
  "actors": {
242
+ "description": "Actores",
174
243
  "type": "array",
175
244
  "items": {
176
245
  "type": "string"
177
- },
178
- "description": "Actores"
179
- },
180
- "published": {
181
- "type": "string",
182
- "description": "Año de publicación"
246
+ }
183
247
  },
184
248
  "genres": {
249
+ "description": "Géneros",
185
250
  "type": "array",
186
251
  "items": {
187
252
  "type": "string"
188
- },
189
- "description": "Géneros"
190
- },
191
- "status": {
192
- "type": "string",
193
- "enum": [
194
- "Pendiente",
195
- "En progreso",
196
- "Completado"
197
- ],
198
- "description": "Estado de visualización"
199
- },
200
- "topics": {
201
- "type": "array",
202
- "items": {
203
- "type": "string"
204
- },
205
- "description": "Temas"
206
- },
207
- "rating": {
208
- "type": "number",
209
- "description": "Puntuación de la película"
253
+ }
210
254
  },
211
255
  "online_rating": {
212
- "type": "number",
213
- "description": "Puntuación en línea"
256
+ "description": "Puntuación en línea",
257
+ "type": "number"
214
258
  },
215
259
  "last_time_watched": {
216
- "type": "string",
217
- "description": "Última vez vista"
260
+ "description": "Última vez vista",
261
+ "anyOf": [
262
+ {
263
+ "type": "string",
264
+ "pattern": "^[0-9]{4}$",
265
+ "description": "Año: YYYY"
266
+ },
267
+ {
268
+ "type": "string",
269
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
270
+ "description": "Mes: YYYY-MM"
271
+ },
272
+ {
273
+ "type": "string",
274
+ "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
275
+ "description": "Fecha: YYYY-MM-DD"
276
+ }
277
+ ]
218
278
  },
219
279
  "times_watched": {
220
- "type": "number",
221
- "description": "Veces vista"
222
- },
223
- "type": {
224
- "type": "string",
225
- "const": "[[Fuentes]]"
226
- },
227
- "format": {
228
- "type": "string",
229
- "const": "[[Películas]]"
230
- },
231
- "areas": {
232
- "type": "array",
233
- "items": {
234
- "type": "string",
235
- "const": "[[Creatividad]]"
236
- }
237
- },
238
- "color": {
239
- "type": "string",
240
- "const": "#BE9207"
241
- },
242
- "icon": {
243
- "type": "string",
244
- "const": "movie"
245
- },
246
- "cover": {
247
- "type": "string"
248
- },
249
- "url": {
250
- "type": "string",
251
- "description": "URL de la película en IMDB o similar"
252
- },
253
- "watch_url": {
254
- "type": "string",
255
- "description": "URL de la película en streaming"
280
+ "description": "Veces vista",
281
+ "default": 0,
282
+ "type": "number"
256
283
  }
257
284
  },
258
285
  "required": [
259
- "title",
260
- "description",
261
- "author",
262
- "actors",
263
- "published",
264
- "genres",
265
- "status",
266
286
  "topics",
267
- "rating",
268
- "online_rating",
269
- "last_time_watched",
270
- "times_watched",
271
- "type",
272
- "format",
273
- "areas",
274
- "color",
275
- "icon",
276
287
  "url",
277
- "watch_url"
288
+ "title"
278
289
  ],
279
- "additionalProperties": false,
280
290
  "description": "Película"
281
291
  }
282
292
  }