@nodaro/shared 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (665) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +32 -0
  3. package/dist/index.cjs +12506 -0
  4. package/dist/index.cjs.map +1 -0
  5. package/dist/index.d.cts +12269 -0
  6. package/dist/index.d.ts +12269 -0
  7. package/dist/index.js +11831 -0
  8. package/dist/index.js.map +1 -0
  9. package/package.json +54 -0
  10. package/src/__tests__/__snapshots__/prompt-builder-segments.test.ts.snap +65 -0
  11. package/src/__tests__/ai-avatar-pricing.test.ts +321 -0
  12. package/src/__tests__/apply-video-negative-prompt.test.ts +76 -0
  13. package/src/__tests__/attach-columns.test.ts +28 -0
  14. package/src/__tests__/audio-crossfade-curves.test.ts +33 -0
  15. package/src/__tests__/build-model-menu.test.ts +58 -0
  16. package/src/__tests__/character-aspect-defaults.test.ts +142 -0
  17. package/src/__tests__/character-mention-slug.test.ts +199 -0
  18. package/src/__tests__/character-reference-photo-kinds.test.ts +32 -0
  19. package/src/__tests__/character-usage-mode.test.ts +147 -0
  20. package/src/__tests__/character-variant-assets.test.ts +142 -0
  21. package/src/__tests__/character-voice.test.ts +130 -0
  22. package/src/__tests__/cinematic-avatar-pricing.test.ts +119 -0
  23. package/src/__tests__/combine-transitions.test.ts +137 -0
  24. package/src/__tests__/component-types.test.ts +87 -0
  25. package/src/__tests__/condition-variables.test.ts +98 -0
  26. package/src/__tests__/credit-identifiers.test.ts +811 -0
  27. package/src/__tests__/default-video-provider.test.ts +63 -0
  28. package/src/__tests__/entity-image-handle.test.ts +43 -0
  29. package/src/__tests__/entity-variants.test.ts +33 -0
  30. package/src/__tests__/fal-lip-sync-sets.test.ts +31 -0
  31. package/src/__tests__/featured-entities.test.ts +33 -0
  32. package/src/__tests__/film-pricing.test.ts +64 -0
  33. package/src/__tests__/filter-condition.test.ts +285 -0
  34. package/src/__tests__/freecut-protocol.test.ts +35 -0
  35. package/src/__tests__/generate-text-items.test.ts +19 -0
  36. package/src/__tests__/generated-results.test.ts +50 -0
  37. package/src/__tests__/graph-utils.test.ts +618 -0
  38. package/src/__tests__/group-aggregation.test.ts +83 -0
  39. package/src/__tests__/i18n-locale-completeness.test.ts +156 -0
  40. package/src/__tests__/image-critic-node.test.ts +86 -0
  41. package/src/__tests__/image-mask-mode.test.ts +16 -0
  42. package/src/__tests__/image-ref-limit.test.ts +78 -0
  43. package/src/__tests__/inpaint-region.test.ts +24 -0
  44. package/src/__tests__/input-field-map-parity.test.ts +30 -0
  45. package/src/__tests__/json-evaluator.test.ts +289 -0
  46. package/src/__tests__/json-path.test.ts +64 -0
  47. package/src/__tests__/lip-sync-pricing.test.ts +142 -0
  48. package/src/__tests__/list-merge.test.ts +96 -0
  49. package/src/__tests__/list-sort.test.ts +134 -0
  50. package/src/__tests__/llm-models.test.ts +445 -0
  51. package/src/__tests__/location-mention-slug.test.ts +246 -0
  52. package/src/__tests__/locations-coverage-critic-schema.test.ts +92 -0
  53. package/src/__tests__/loop-delimiter.test.ts +39 -0
  54. package/src/__tests__/lottie-slots.test.ts +245 -0
  55. package/src/__tests__/model-catalog-flux2-resolutions.test.ts +21 -0
  56. package/src/__tests__/model-constants-location.test.ts +20 -0
  57. package/src/__tests__/model-constants.test.ts +122 -0
  58. package/src/__tests__/model-tree.test.ts +86 -0
  59. package/src/__tests__/no-internal-imports.test.ts +25 -0
  60. package/src/__tests__/node-default-mappings.test.ts +175 -0
  61. package/src/__tests__/node-mappable-fields.test.ts +7 -0
  62. package/src/__tests__/node-preset-export.test.ts +46 -0
  63. package/src/__tests__/node-preset-extract.test.ts +166 -0
  64. package/src/__tests__/node-refs-canonical.test.ts +54 -0
  65. package/src/__tests__/node-refs-combine.test.ts +54 -0
  66. package/src/__tests__/node-refs.test.ts +187 -0
  67. package/src/__tests__/node-runtime-keys.test.ts +99 -0
  68. package/src/__tests__/object-aspect-defaults.test.ts +59 -0
  69. package/src/__tests__/parameter-node-value.test.ts +137 -0
  70. package/src/__tests__/pinterest-url.test.ts +35 -0
  71. package/src/__tests__/pipeline-chat.test.ts +110 -0
  72. package/src/__tests__/pipeline-validation.test.ts +98 -0
  73. package/src/__tests__/presentation-utils.test.ts +1137 -0
  74. package/src/__tests__/producer-types.test.ts +47 -0
  75. package/src/__tests__/prompt-length-limits.test.ts +156 -0
  76. package/src/__tests__/provider-directive-defaults.test.ts +46 -0
  77. package/src/__tests__/reduce-strategy-registry.test.ts +43 -0
  78. package/src/__tests__/reference-board-templates.test.ts +33 -0
  79. package/src/__tests__/reference-roles.test.ts +36 -0
  80. package/src/__tests__/resolve-field-mappings.test.ts +110 -0
  81. package/src/__tests__/resolve-pipeline-model.test.ts +76 -0
  82. package/src/__tests__/scene-node-types.test.ts +80 -0
  83. package/src/__tests__/scraper-actors.test.ts +67 -0
  84. package/src/__tests__/seedance-2-catalog.test.ts +18 -0
  85. package/src/__tests__/seedance-2-credit-id.test.ts +23 -0
  86. package/src/__tests__/seedance-aspects.test.ts +52 -0
  87. package/src/__tests__/selector.test.ts +1151 -0
  88. package/src/__tests__/settled-with-limit.test.ts +214 -0
  89. package/src/__tests__/social-media-specs.test.ts +129 -0
  90. package/src/__tests__/sub-workflow-validation.test.ts +88 -0
  91. package/src/__tests__/switchx-pricing.test.ts +28 -0
  92. package/src/__tests__/to-connected-references.test.ts +153 -0
  93. package/src/__tests__/utilities.test.ts +541 -0
  94. package/src/__tests__/video-analysis-pricing.test.ts +58 -0
  95. package/src/__tests__/video-analysis.test.ts +63 -0
  96. package/src/__tests__/video-audio-capability.test.ts +204 -0
  97. package/src/__tests__/video-gen-providers.test.ts +28 -0
  98. package/src/__tests__/video-mode-aliases.test.ts +150 -0
  99. package/src/__tests__/video-ref-limits.test.ts +72 -0
  100. package/src/__tests__/video-utils.test.ts +303 -0
  101. package/src/__tests__/voice-changer-models.test.ts +33 -0
  102. package/src/__tests__/workflow-export-strip.test.ts +46 -0
  103. package/src/ai-avatar-pricing.ts +213 -0
  104. package/src/ancestor-refs.ts +48 -0
  105. package/src/animals.ts +231 -0
  106. package/src/audio-crossfade-curves.ts +73 -0
  107. package/src/audio-fx-presets.ts +64 -0
  108. package/src/avatar-payload-validators.ts +214 -0
  109. package/src/caption-styles.ts +31 -0
  110. package/src/character-aspect-defaults.ts +102 -0
  111. package/src/character-facets.ts +37 -0
  112. package/src/character-mention-slug.ts +166 -0
  113. package/src/character-usage-mode.ts +109 -0
  114. package/src/character-variant-assets.ts +121 -0
  115. package/src/character-voice.ts +151 -0
  116. package/src/cinematic-avatar-pricing.ts +111 -0
  117. package/src/clone-utils.ts +46 -0
  118. package/src/combine-transitions.ts +482 -0
  119. package/src/community.ts +112 -0
  120. package/src/component-types.ts +127 -0
  121. package/src/condition-variables.ts +65 -0
  122. package/src/credit-estimators/index.ts +15 -0
  123. package/src/credit-estimators/video-utils.ts +165 -0
  124. package/src/credit-identifiers.ts +304 -0
  125. package/src/entity-approval-types.ts +31 -0
  126. package/src/entity-aspect-defaults.ts +82 -0
  127. package/src/entity-asset-types.ts +296 -0
  128. package/src/entity-image-handle.ts +36 -0
  129. package/src/extra-refs.ts +139 -0
  130. package/src/featured-entities.ts +136 -0
  131. package/src/film-pricing.ts +117 -0
  132. package/src/filter-condition.ts +250 -0
  133. package/src/flux2-pricing.ts +18 -0
  134. package/src/freecut-protocol.ts +52 -0
  135. package/src/furniture.ts +167 -0
  136. package/src/generate-text-items.ts +15 -0
  137. package/src/generated-results.ts +63 -0
  138. package/src/group-aggregation.ts +75 -0
  139. package/src/hint-graph-types.ts +18 -0
  140. package/src/i18n/action-fx.ar.ts +89 -0
  141. package/src/i18n/action-fx.de.ts +89 -0
  142. package/src/i18n/action-fx.es.ts +89 -0
  143. package/src/i18n/action-fx.fr.ts +89 -0
  144. package/src/i18n/action-fx.he.ts +89 -0
  145. package/src/i18n/action-fx.hi.ts +89 -0
  146. package/src/i18n/action-fx.ja.ts +89 -0
  147. package/src/i18n/action-fx.ko.ts +89 -0
  148. package/src/i18n/action-fx.pt-BR.ts +89 -0
  149. package/src/i18n/action-fx.ru.ts +89 -0
  150. package/src/i18n/action-fx.zh-CN.ts +89 -0
  151. package/src/i18n/aesthetic.ar.ts +170 -0
  152. package/src/i18n/aesthetic.de.ts +48 -0
  153. package/src/i18n/aesthetic.es.ts +169 -0
  154. package/src/i18n/aesthetic.fr.ts +52 -0
  155. package/src/i18n/aesthetic.he.ts +169 -0
  156. package/src/i18n/aesthetic.hi.ts +55 -0
  157. package/src/i18n/aesthetic.ja.ts +165 -0
  158. package/src/i18n/aesthetic.ko.ts +169 -0
  159. package/src/i18n/aesthetic.pt-BR.ts +148 -0
  160. package/src/i18n/aesthetic.ru.ts +155 -0
  161. package/src/i18n/aesthetic.zh-CN.ts +172 -0
  162. package/src/i18n/animals.ar.ts +145 -0
  163. package/src/i18n/animals.de.ts +144 -0
  164. package/src/i18n/animals.es.ts +158 -0
  165. package/src/i18n/animals.fr.ts +144 -0
  166. package/src/i18n/animals.he.ts +155 -0
  167. package/src/i18n/animals.hi.ts +157 -0
  168. package/src/i18n/animals.ja.ts +159 -0
  169. package/src/i18n/animals.ko.ts +159 -0
  170. package/src/i18n/animals.pt-BR.ts +157 -0
  171. package/src/i18n/animals.ru.ts +155 -0
  172. package/src/i18n/animals.zh-CN.ts +155 -0
  173. package/src/i18n/atmosphere.ar.ts +49 -0
  174. package/src/i18n/atmosphere.de.ts +47 -0
  175. package/src/i18n/atmosphere.es.ts +50 -0
  176. package/src/i18n/atmosphere.fr.ts +47 -0
  177. package/src/i18n/atmosphere.he.ts +47 -0
  178. package/src/i18n/atmosphere.hi.ts +49 -0
  179. package/src/i18n/atmosphere.ja.ts +49 -0
  180. package/src/i18n/atmosphere.ko.ts +49 -0
  181. package/src/i18n/atmosphere.pt-BR.ts +49 -0
  182. package/src/i18n/atmosphere.ru.ts +47 -0
  183. package/src/i18n/atmosphere.zh-CN.ts +152 -0
  184. package/src/i18n/backdrop.ar.ts +53 -0
  185. package/src/i18n/backdrop.de.ts +46 -0
  186. package/src/i18n/backdrop.es.ts +54 -0
  187. package/src/i18n/backdrop.fr.ts +52 -0
  188. package/src/i18n/backdrop.he.ts +51 -0
  189. package/src/i18n/backdrop.hi.ts +59 -0
  190. package/src/i18n/backdrop.ja.ts +61 -0
  191. package/src/i18n/backdrop.ko.ts +59 -0
  192. package/src/i18n/backdrop.pt-BR.ts +59 -0
  193. package/src/i18n/backdrop.ru.ts +57 -0
  194. package/src/i18n/backdrop.zh-CN.ts +57 -0
  195. package/src/i18n/camera-format.ar.ts +40 -0
  196. package/src/i18n/camera-format.de.ts +37 -0
  197. package/src/i18n/camera-format.es.ts +41 -0
  198. package/src/i18n/camera-format.fr.ts +37 -0
  199. package/src/i18n/camera-format.he.ts +37 -0
  200. package/src/i18n/camera-format.hi.ts +42 -0
  201. package/src/i18n/camera-format.ja.ts +37 -0
  202. package/src/i18n/camera-format.ko.ts +37 -0
  203. package/src/i18n/camera-format.pt-BR.ts +46 -0
  204. package/src/i18n/camera-format.ru.ts +42 -0
  205. package/src/i18n/camera-format.zh-CN.ts +42 -0
  206. package/src/i18n/camera-motions.ar.ts +86 -0
  207. package/src/i18n/camera-motions.de.ts +74 -0
  208. package/src/i18n/camera-motions.es.ts +86 -0
  209. package/src/i18n/camera-motions.fr.ts +86 -0
  210. package/src/i18n/camera-motions.he.ts +86 -0
  211. package/src/i18n/camera-motions.hi.ts +99 -0
  212. package/src/i18n/camera-motions.ja.ts +99 -0
  213. package/src/i18n/camera-motions.ko.ts +99 -0
  214. package/src/i18n/camera-motions.pt-BR.ts +99 -0
  215. package/src/i18n/camera-motions.ru.ts +99 -0
  216. package/src/i18n/camera-motions.zh-CN.ts +99 -0
  217. package/src/i18n/character-fx.ar.ts +72 -0
  218. package/src/i18n/character-fx.de.ts +72 -0
  219. package/src/i18n/character-fx.es.ts +72 -0
  220. package/src/i18n/character-fx.fr.ts +72 -0
  221. package/src/i18n/character-fx.he.ts +72 -0
  222. package/src/i18n/character-fx.hi.ts +72 -0
  223. package/src/i18n/character-fx.ja.ts +72 -0
  224. package/src/i18n/character-fx.ko.ts +72 -0
  225. package/src/i18n/character-fx.pt-BR.ts +72 -0
  226. package/src/i18n/character-fx.ru.ts +72 -0
  227. package/src/i18n/character-fx.zh-CN.ts +72 -0
  228. package/src/i18n/color-look.ar.ts +50 -0
  229. package/src/i18n/color-look.de.ts +47 -0
  230. package/src/i18n/color-look.es.ts +50 -0
  231. package/src/i18n/color-look.fr.ts +50 -0
  232. package/src/i18n/color-look.he.ts +49 -0
  233. package/src/i18n/color-look.hi.ts +52 -0
  234. package/src/i18n/color-look.ja.ts +54 -0
  235. package/src/i18n/color-look.ko.ts +54 -0
  236. package/src/i18n/color-look.pt-BR.ts +54 -0
  237. package/src/i18n/color-look.ru.ts +52 -0
  238. package/src/i18n/color-look.zh-CN.ts +53 -0
  239. package/src/i18n/composition-effects.ar.ts +26 -0
  240. package/src/i18n/composition-effects.de.ts +25 -0
  241. package/src/i18n/composition-effects.es.ts +27 -0
  242. package/src/i18n/composition-effects.fr.ts +25 -0
  243. package/src/i18n/composition-effects.he.ts +25 -0
  244. package/src/i18n/composition-effects.hi.ts +27 -0
  245. package/src/i18n/composition-effects.ja.ts +27 -0
  246. package/src/i18n/composition-effects.ko.ts +27 -0
  247. package/src/i18n/composition-effects.pt-BR.ts +25 -0
  248. package/src/i18n/composition-effects.ru.ts +82 -0
  249. package/src/i18n/composition-effects.zh-CN.ts +25 -0
  250. package/src/i18n/era.ar.ts +37 -0
  251. package/src/i18n/era.de.ts +34 -0
  252. package/src/i18n/era.es.ts +37 -0
  253. package/src/i18n/era.fr.ts +37 -0
  254. package/src/i18n/era.he.ts +36 -0
  255. package/src/i18n/era.hi.ts +39 -0
  256. package/src/i18n/era.ja.ts +41 -0
  257. package/src/i18n/era.ko.ts +39 -0
  258. package/src/i18n/era.pt-BR.ts +41 -0
  259. package/src/i18n/era.ru.ts +121 -0
  260. package/src/i18n/era.zh-CN.ts +39 -0
  261. package/src/i18n/exposure-settings.ar.ts +28 -0
  262. package/src/i18n/exposure-settings.de.ts +26 -0
  263. package/src/i18n/exposure-settings.es.ts +28 -0
  264. package/src/i18n/exposure-settings.fr.ts +29 -0
  265. package/src/i18n/exposure-settings.he.ts +28 -0
  266. package/src/i18n/exposure-settings.hi.ts +31 -0
  267. package/src/i18n/exposure-settings.ja.ts +31 -0
  268. package/src/i18n/exposure-settings.ko.ts +31 -0
  269. package/src/i18n/exposure-settings.pt-BR.ts +31 -0
  270. package/src/i18n/exposure-settings.ru.ts +31 -0
  271. package/src/i18n/exposure-settings.zh-CN.ts +31 -0
  272. package/src/i18n/framing.ar.ts +78 -0
  273. package/src/i18n/framing.de.ts +73 -0
  274. package/src/i18n/framing.es.ts +78 -0
  275. package/src/i18n/framing.fr.ts +78 -0
  276. package/src/i18n/framing.he.ts +77 -0
  277. package/src/i18n/framing.hi.ts +82 -0
  278. package/src/i18n/framing.ja.ts +84 -0
  279. package/src/i18n/framing.ko.ts +82 -0
  280. package/src/i18n/framing.pt-BR.ts +84 -0
  281. package/src/i18n/framing.ru.ts +82 -0
  282. package/src/i18n/framing.zh-CN.ts +82 -0
  283. package/src/i18n/furniture.ar.ts +92 -0
  284. package/src/i18n/furniture.de.ts +93 -0
  285. package/src/i18n/furniture.es.ts +101 -0
  286. package/src/i18n/furniture.fr.ts +93 -0
  287. package/src/i18n/furniture.he.ts +101 -0
  288. package/src/i18n/furniture.hi.ts +101 -0
  289. package/src/i18n/furniture.ja.ts +101 -0
  290. package/src/i18n/furniture.ko.ts +101 -0
  291. package/src/i18n/furniture.pt-BR.ts +101 -0
  292. package/src/i18n/furniture.ru.ts +101 -0
  293. package/src/i18n/furniture.zh-CN.ts +101 -0
  294. package/src/i18n/held-prop.ar.ts +74 -0
  295. package/src/i18n/held-prop.de.ts +65 -0
  296. package/src/i18n/held-prop.es.ts +83 -0
  297. package/src/i18n/held-prop.fr.ts +74 -0
  298. package/src/i18n/held-prop.he.ts +73 -0
  299. package/src/i18n/held-prop.hi.ts +82 -0
  300. package/src/i18n/held-prop.ja.ts +84 -0
  301. package/src/i18n/held-prop.ko.ts +84 -0
  302. package/src/i18n/held-prop.pt-BR.ts +84 -0
  303. package/src/i18n/held-prop.ru.ts +82 -0
  304. package/src/i18n/held-prop.zh-CN.ts +82 -0
  305. package/src/i18n/index.ts +208 -0
  306. package/src/i18n/instrumentation.ar.ts +195 -0
  307. package/src/i18n/instrumentation.de.ts +195 -0
  308. package/src/i18n/instrumentation.es.ts +195 -0
  309. package/src/i18n/instrumentation.fr.ts +195 -0
  310. package/src/i18n/instrumentation.he.ts +195 -0
  311. package/src/i18n/instrumentation.hi.ts +195 -0
  312. package/src/i18n/instrumentation.ja.ts +195 -0
  313. package/src/i18n/instrumentation.ko.ts +195 -0
  314. package/src/i18n/instrumentation.pt-BR.ts +195 -0
  315. package/src/i18n/instrumentation.ru.ts +195 -0
  316. package/src/i18n/instrumentation.zh-CN.ts +195 -0
  317. package/src/i18n/lens.ar.ts +24 -0
  318. package/src/i18n/lens.de.ts +24 -0
  319. package/src/i18n/lens.es.ts +24 -0
  320. package/src/i18n/lens.fr.ts +24 -0
  321. package/src/i18n/lens.he.ts +24 -0
  322. package/src/i18n/lens.hi.ts +24 -0
  323. package/src/i18n/lens.ja.ts +24 -0
  324. package/src/i18n/lens.ko.ts +24 -0
  325. package/src/i18n/lens.pt-BR.ts +24 -0
  326. package/src/i18n/lens.ru.ts +25 -0
  327. package/src/i18n/lens.zh-CN.ts +24 -0
  328. package/src/i18n/lighting.ar.ts +86 -0
  329. package/src/i18n/lighting.de.ts +84 -0
  330. package/src/i18n/lighting.es.ts +89 -0
  331. package/src/i18n/lighting.fr.ts +84 -0
  332. package/src/i18n/lighting.he.ts +88 -0
  333. package/src/i18n/lighting.hi.ts +90 -0
  334. package/src/i18n/lighting.ja.ts +90 -0
  335. package/src/i18n/lighting.ko.ts +90 -0
  336. package/src/i18n/lighting.pt-BR.ts +90 -0
  337. package/src/i18n/lighting.ru.ts +88 -0
  338. package/src/i18n/lighting.zh-CN.ts +92 -0
  339. package/src/i18n/loop-subject.ar.ts +39 -0
  340. package/src/i18n/loop-subject.de.ts +39 -0
  341. package/src/i18n/loop-subject.es.ts +39 -0
  342. package/src/i18n/loop-subject.fr.ts +39 -0
  343. package/src/i18n/loop-subject.he.ts +39 -0
  344. package/src/i18n/loop-subject.hi.ts +39 -0
  345. package/src/i18n/loop-subject.ja.ts +39 -0
  346. package/src/i18n/loop-subject.ko.ts +39 -0
  347. package/src/i18n/loop-subject.pt-BR.ts +39 -0
  348. package/src/i18n/loop-subject.ru.ts +39 -0
  349. package/src/i18n/loop-subject.zh-CN.ts +39 -0
  350. package/src/i18n/materials.ar.ts +80 -0
  351. package/src/i18n/materials.de.ts +80 -0
  352. package/src/i18n/materials.es.ts +87 -0
  353. package/src/i18n/materials.fr.ts +80 -0
  354. package/src/i18n/materials.he.ts +86 -0
  355. package/src/i18n/materials.hi.ts +86 -0
  356. package/src/i18n/materials.ja.ts +88 -0
  357. package/src/i18n/materials.ko.ts +88 -0
  358. package/src/i18n/materials.pt-BR.ts +88 -0
  359. package/src/i18n/materials.ru.ts +86 -0
  360. package/src/i18n/materials.zh-CN.ts +86 -0
  361. package/src/i18n/mood.ar.ts +61 -0
  362. package/src/i18n/mood.de.ts +61 -0
  363. package/src/i18n/mood.es.ts +66 -0
  364. package/src/i18n/mood.fr.ts +61 -0
  365. package/src/i18n/mood.he.ts +64 -0
  366. package/src/i18n/mood.hi.ts +66 -0
  367. package/src/i18n/mood.ja.ts +66 -0
  368. package/src/i18n/mood.ko.ts +66 -0
  369. package/src/i18n/mood.pt-BR.ts +64 -0
  370. package/src/i18n/mood.ru.ts +64 -0
  371. package/src/i18n/mood.zh-CN.ts +64 -0
  372. package/src/i18n/music-genre.ar.ts +302 -0
  373. package/src/i18n/music-genre.de.ts +302 -0
  374. package/src/i18n/music-genre.es.ts +302 -0
  375. package/src/i18n/music-genre.fr.ts +302 -0
  376. package/src/i18n/music-genre.he.ts +302 -0
  377. package/src/i18n/music-genre.hi.ts +302 -0
  378. package/src/i18n/music-genre.ja.ts +302 -0
  379. package/src/i18n/music-genre.ko.ts +302 -0
  380. package/src/i18n/music-genre.pt-BR.ts +302 -0
  381. package/src/i18n/music-genre.ru.ts +302 -0
  382. package/src/i18n/music-genre.zh-CN.ts +302 -0
  383. package/src/i18n/music-mood.ar.ts +75 -0
  384. package/src/i18n/music-mood.de.ts +75 -0
  385. package/src/i18n/music-mood.es.ts +75 -0
  386. package/src/i18n/music-mood.fr.ts +75 -0
  387. package/src/i18n/music-mood.he.ts +75 -0
  388. package/src/i18n/music-mood.hi.ts +75 -0
  389. package/src/i18n/music-mood.ja.ts +75 -0
  390. package/src/i18n/music-mood.ko.ts +75 -0
  391. package/src/i18n/music-mood.pt-BR.ts +75 -0
  392. package/src/i18n/music-mood.ru.ts +75 -0
  393. package/src/i18n/music-mood.zh-CN.ts +75 -0
  394. package/src/i18n/person.ar.ts +638 -0
  395. package/src/i18n/person.de.ts +629 -0
  396. package/src/i18n/person.es.ts +645 -0
  397. package/src/i18n/person.fr.ts +621 -0
  398. package/src/i18n/person.he.ts +656 -0
  399. package/src/i18n/person.hi.ts +654 -0
  400. package/src/i18n/person.ja.ts +662 -0
  401. package/src/i18n/person.ko.ts +662 -0
  402. package/src/i18n/person.pt-BR.ts +656 -0
  403. package/src/i18n/person.ru.ts +656 -0
  404. package/src/i18n/person.zh-CN.ts +656 -0
  405. package/src/i18n/photo-genre.ar.ts +58 -0
  406. package/src/i18n/photo-genre.de.ts +52 -0
  407. package/src/i18n/photo-genre.es.ts +64 -0
  408. package/src/i18n/photo-genre.fr.ts +58 -0
  409. package/src/i18n/photo-genre.he.ts +62 -0
  410. package/src/i18n/photo-genre.hi.ts +63 -0
  411. package/src/i18n/photo-genre.ja.ts +65 -0
  412. package/src/i18n/photo-genre.ko.ts +63 -0
  413. package/src/i18n/photo-genre.pt-BR.ts +65 -0
  414. package/src/i18n/photo-genre.ru.ts +63 -0
  415. package/src/i18n/photo-genre.zh-CN.ts +63 -0
  416. package/src/i18n/photographer.ar.ts +75 -0
  417. package/src/i18n/photographer.de.ts +74 -0
  418. package/src/i18n/photographer.es.ts +77 -0
  419. package/src/i18n/photographer.fr.ts +77 -0
  420. package/src/i18n/photographer.he.ts +78 -0
  421. package/src/i18n/photographer.hi.ts +80 -0
  422. package/src/i18n/photographer.ja.ts +84 -0
  423. package/src/i18n/photographer.ko.ts +84 -0
  424. package/src/i18n/photographer.pt-BR.ts +83 -0
  425. package/src/i18n/photographer.ru.ts +78 -0
  426. package/src/i18n/photographer.zh-CN.ts +78 -0
  427. package/src/i18n/pose.ar.ts +95 -0
  428. package/src/i18n/pose.de.ts +96 -0
  429. package/src/i18n/pose.es.ts +104 -0
  430. package/src/i18n/pose.fr.ts +96 -0
  431. package/src/i18n/pose.he.ts +104 -0
  432. package/src/i18n/pose.hi.ts +104 -0
  433. package/src/i18n/pose.ja.ts +104 -0
  434. package/src/i18n/pose.ko.ts +104 -0
  435. package/src/i18n/pose.pt-BR.ts +104 -0
  436. package/src/i18n/pose.ru.ts +104 -0
  437. package/src/i18n/pose.zh-CN.ts +104 -0
  438. package/src/i18n/post-process-effects.ar.ts +25 -0
  439. package/src/i18n/post-process-effects.de.ts +24 -0
  440. package/src/i18n/post-process-effects.es.ts +26 -0
  441. package/src/i18n/post-process-effects.fr.ts +24 -0
  442. package/src/i18n/post-process-effects.he.ts +24 -0
  443. package/src/i18n/post-process-effects.hi.ts +26 -0
  444. package/src/i18n/post-process-effects.ja.ts +26 -0
  445. package/src/i18n/post-process-effects.ko.ts +26 -0
  446. package/src/i18n/post-process-effects.pt-BR.ts +24 -0
  447. package/src/i18n/post-process-effects.ru.ts +24 -0
  448. package/src/i18n/post-process-effects.zh-CN.ts +24 -0
  449. package/src/i18n/render-quality.ar.ts +34 -0
  450. package/src/i18n/render-quality.de.ts +30 -0
  451. package/src/i18n/render-quality.es.ts +35 -0
  452. package/src/i18n/render-quality.fr.ts +34 -0
  453. package/src/i18n/render-quality.he.ts +33 -0
  454. package/src/i18n/render-quality.hi.ts +39 -0
  455. package/src/i18n/render-quality.ja.ts +39 -0
  456. package/src/i18n/render-quality.ko.ts +39 -0
  457. package/src/i18n/render-quality.pt-BR.ts +37 -0
  458. package/src/i18n/render-quality.ru.ts +37 -0
  459. package/src/i18n/render-quality.zh-CN.ts +37 -0
  460. package/src/i18n/seasons.ar.ts +10 -0
  461. package/src/i18n/seasons.de.ts +10 -0
  462. package/src/i18n/seasons.es.ts +10 -0
  463. package/src/i18n/seasons.fr.ts +10 -0
  464. package/src/i18n/seasons.he.ts +10 -0
  465. package/src/i18n/seasons.hi.ts +10 -0
  466. package/src/i18n/seasons.ja.ts +10 -0
  467. package/src/i18n/seasons.ko.ts +10 -0
  468. package/src/i18n/seasons.pt-BR.ts +10 -0
  469. package/src/i18n/seasons.ru.ts +10 -0
  470. package/src/i18n/seasons.zh-CN.ts +10 -0
  471. package/src/i18n/setting.ar.ts +73 -0
  472. package/src/i18n/setting.de.ts +73 -0
  473. package/src/i18n/setting.es.ts +77 -0
  474. package/src/i18n/setting.fr.ts +73 -0
  475. package/src/i18n/setting.he.ts +76 -0
  476. package/src/i18n/setting.hi.ts +76 -0
  477. package/src/i18n/setting.ja.ts +78 -0
  478. package/src/i18n/setting.ko.ts +76 -0
  479. package/src/i18n/setting.pt-BR.ts +78 -0
  480. package/src/i18n/setting.ru.ts +76 -0
  481. package/src/i18n/setting.zh-CN.ts +76 -0
  482. package/src/i18n/style.ar.ts +55 -0
  483. package/src/i18n/style.de.ts +54 -0
  484. package/src/i18n/style.es.ts +54 -0
  485. package/src/i18n/style.fr.ts +54 -0
  486. package/src/i18n/style.he.ts +54 -0
  487. package/src/i18n/style.hi.ts +54 -0
  488. package/src/i18n/style.ja.ts +54 -0
  489. package/src/i18n/style.ko.ts +54 -0
  490. package/src/i18n/style.pt-BR.ts +56 -0
  491. package/src/i18n/style.ru.ts +54 -0
  492. package/src/i18n/style.zh-CN.ts +54 -0
  493. package/src/i18n/styling.ar.ts +295 -0
  494. package/src/i18n/styling.de.ts +285 -0
  495. package/src/i18n/styling.es.ts +317 -0
  496. package/src/i18n/styling.fr.ts +285 -0
  497. package/src/i18n/styling.he.ts +307 -0
  498. package/src/i18n/styling.hi.ts +323 -0
  499. package/src/i18n/styling.ja.ts +317 -0
  500. package/src/i18n/styling.ko.ts +311 -0
  501. package/src/i18n/styling.pt-BR.ts +301 -0
  502. package/src/i18n/styling.ru.ts +301 -0
  503. package/src/i18n/styling.zh-CN.ts +307 -0
  504. package/src/i18n/temporal.ar.ts +31 -0
  505. package/src/i18n/temporal.de.ts +24 -0
  506. package/src/i18n/temporal.es.ts +27 -0
  507. package/src/i18n/temporal.fr.ts +28 -0
  508. package/src/i18n/temporal.he.ts +31 -0
  509. package/src/i18n/temporal.hi.ts +31 -0
  510. package/src/i18n/temporal.ja.ts +31 -0
  511. package/src/i18n/temporal.ko.ts +31 -0
  512. package/src/i18n/temporal.pt-BR.ts +31 -0
  513. package/src/i18n/temporal.ru.ts +31 -0
  514. package/src/i18n/temporal.zh-CN.ts +31 -0
  515. package/src/i18n/transitions.ar.ts +97 -0
  516. package/src/i18n/transitions.de.ts +97 -0
  517. package/src/i18n/transitions.es.ts +97 -0
  518. package/src/i18n/transitions.fr.ts +97 -0
  519. package/src/i18n/transitions.he.ts +97 -0
  520. package/src/i18n/transitions.hi.ts +97 -0
  521. package/src/i18n/transitions.ja.ts +97 -0
  522. package/src/i18n/transitions.ko.ts +97 -0
  523. package/src/i18n/transitions.pt-BR.ts +97 -0
  524. package/src/i18n/transitions.ru.ts +97 -0
  525. package/src/i18n/transitions.zh-CN.ts +97 -0
  526. package/src/i18n/types.ts +158 -0
  527. package/src/i18n/vehicles.ar.ts +137 -0
  528. package/src/i18n/vehicles.de.ts +125 -0
  529. package/src/i18n/vehicles.es.ts +138 -0
  530. package/src/i18n/vehicles.fr.ts +125 -0
  531. package/src/i18n/vehicles.he.ts +136 -0
  532. package/src/i18n/vehicles.hi.ts +138 -0
  533. package/src/i18n/vehicles.ja.ts +138 -0
  534. package/src/i18n/vehicles.ko.ts +138 -0
  535. package/src/i18n/vehicles.pt-BR.ts +136 -0
  536. package/src/i18n/vehicles.ru.ts +136 -0
  537. package/src/i18n/vehicles.zh-CN.ts +136 -0
  538. package/src/i18n/voice-character.ar.ts +126 -0
  539. package/src/i18n/voice-character.de.ts +126 -0
  540. package/src/i18n/voice-character.es.ts +126 -0
  541. package/src/i18n/voice-character.fr.ts +126 -0
  542. package/src/i18n/voice-character.he.ts +126 -0
  543. package/src/i18n/voice-character.hi.ts +126 -0
  544. package/src/i18n/voice-character.ja.ts +126 -0
  545. package/src/i18n/voice-character.ko.ts +126 -0
  546. package/src/i18n/voice-character.pt-BR.ts +126 -0
  547. package/src/i18n/voice-character.ru.ts +126 -0
  548. package/src/i18n/voice-character.zh-CN.ts +126 -0
  549. package/src/i18n/voice-delivery.ar.ts +77 -0
  550. package/src/i18n/voice-delivery.de.ts +77 -0
  551. package/src/i18n/voice-delivery.es.ts +77 -0
  552. package/src/i18n/voice-delivery.fr.ts +77 -0
  553. package/src/i18n/voice-delivery.he.ts +77 -0
  554. package/src/i18n/voice-delivery.hi.ts +77 -0
  555. package/src/i18n/voice-delivery.ja.ts +77 -0
  556. package/src/i18n/voice-delivery.ko.ts +77 -0
  557. package/src/i18n/voice-delivery.pt-BR.ts +77 -0
  558. package/src/i18n/voice-delivery.ru.ts +77 -0
  559. package/src/i18n/voice-delivery.zh-CN.ts +77 -0
  560. package/src/i18n/weapons.ar.ts +115 -0
  561. package/src/i18n/weapons.de.ts +114 -0
  562. package/src/i18n/weapons.es.ts +116 -0
  563. package/src/i18n/weapons.fr.ts +103 -0
  564. package/src/i18n/weapons.he.ts +114 -0
  565. package/src/i18n/weapons.hi.ts +116 -0
  566. package/src/i18n/weapons.ja.ts +116 -0
  567. package/src/i18n/weapons.ko.ts +116 -0
  568. package/src/i18n/weapons.pt-BR.ts +114 -0
  569. package/src/i18n/weapons.ru.ts +114 -0
  570. package/src/i18n/weapons.zh-CN.ts +114 -0
  571. package/src/image-critic-node.ts +61 -0
  572. package/src/image-critic-types.ts +40 -0
  573. package/src/index.ts +866 -0
  574. package/src/inject-upstream.ts +15 -0
  575. package/src/inpaint-region.ts +51 -0
  576. package/src/json-evaluator.ts +732 -0
  577. package/src/json-path.ts +52 -0
  578. package/src/lip-sync-pricing.ts +90 -0
  579. package/src/list-merge.ts +40 -0
  580. package/src/list-sort.ts +122 -0
  581. package/src/list-source-resolver.ts +50 -0
  582. package/src/llm-models.ts +245 -0
  583. package/src/location-mention-slug.ts +291 -0
  584. package/src/location-preset-catalog-map.ts +128 -0
  585. package/src/loop-delimiter.ts +73 -0
  586. package/src/lora-routing.ts +95 -0
  587. package/src/lottie-overlay-catalog.ts +175 -0
  588. package/src/lottie-slots.ts +309 -0
  589. package/src/model-catalog.ts +2386 -0
  590. package/src/model-constants.ts +1910 -0
  591. package/src/model-tree.ts +120 -0
  592. package/src/monetization.ts +15 -0
  593. package/src/multi-pick.ts +42 -0
  594. package/src/node-default-mappings.ts +262 -0
  595. package/src/node-mappable-fields.ts +70 -0
  596. package/src/node-preset-export.ts +56 -0
  597. package/src/node-preset-extract.ts +147 -0
  598. package/src/node-refs.ts +253 -0
  599. package/src/node-runtime-keys.ts +117 -0
  600. package/src/object-aspect-defaults.ts +72 -0
  601. package/src/object-picker-types.ts +22 -0
  602. package/src/parameter-node-value.ts +284 -0
  603. package/src/pinterest-url.ts +28 -0
  604. package/src/pipeline-chat.ts +72 -0
  605. package/src/pipeline-defaults.ts +318 -0
  606. package/src/pipeline-events.ts +162 -0
  607. package/src/pipeline-state-types.ts +196 -0
  608. package/src/pipeline-types.ts +647 -0
  609. package/src/pipeline-validation.ts +87 -0
  610. package/src/presentation-types.ts +23 -0
  611. package/src/presentation-utils.ts +397 -0
  612. package/src/producer-types.ts +188 -0
  613. package/src/progress-curve.ts +99 -0
  614. package/src/provider-directive-defaults.ts +69 -0
  615. package/src/reduce-strategy-registry.ts +121 -0
  616. package/src/reference-board-templates.ts +81 -0
  617. package/src/reference-roles.ts +153 -0
  618. package/src/reference-sheet/__tests__/board-to-column.test.ts +20 -0
  619. package/src/reference-sheet/__tests__/catalog.test.ts +50 -0
  620. package/src/reference-sheet/__tests__/cost.test.ts +38 -0
  621. package/src/reference-sheet/__tests__/no-drift.test.ts +28 -0
  622. package/src/reference-sheet/__tests__/panel-plan.test.ts +61 -0
  623. package/src/reference-sheet/__tests__/panel-prompts.test.ts +17 -0
  624. package/src/reference-sheet/__tests__/plan-generation.test.ts +72 -0
  625. package/src/reference-sheet/__tests__/presets.test.ts +54 -0
  626. package/src/reference-sheet/__tests__/types.test.ts +24 -0
  627. package/src/reference-sheet/catalog.ts +144 -0
  628. package/src/reference-sheet/cost.ts +37 -0
  629. package/src/reference-sheet/credit-id.ts +7 -0
  630. package/src/reference-sheet/index.ts +8 -0
  631. package/src/reference-sheet/panel-plan.ts +65 -0
  632. package/src/reference-sheet/panel-prompts.ts +14 -0
  633. package/src/reference-sheet/plan-generation.ts +79 -0
  634. package/src/reference-sheet/presets.ts +77 -0
  635. package/src/reference-sheet/types.ts +92 -0
  636. package/src/repeat-types.ts +97 -0
  637. package/src/resolve-field-mappings.ts +119 -0
  638. package/src/route-filter.ts +80 -0
  639. package/src/scene-helper-types.ts +249 -0
  640. package/src/scene-node-types.ts +281 -0
  641. package/src/scraper-actors.ts +57 -0
  642. package/src/scraper-output-schemas.ts +25 -0
  643. package/src/seasons.ts +45 -0
  644. package/src/selector.ts +864 -0
  645. package/src/settled-with-limit.ts +42 -0
  646. package/src/shot-element.ts +43 -0
  647. package/src/social-media-specs.ts +121 -0
  648. package/src/social-post.ts +24 -0
  649. package/src/sub-workflow-validation.ts +78 -0
  650. package/src/supported-fonts.ts +40 -0
  651. package/src/surround.ts +113 -0
  652. package/src/switchx-pricing.ts +33 -0
  653. package/src/text-separators.ts +59 -0
  654. package/src/to-connected-references.ts +77 -0
  655. package/src/types.ts +272 -0
  656. package/src/variant-job-id.ts +17 -0
  657. package/src/vehicles.ts +213 -0
  658. package/src/video-analysis-pricing.ts +74 -0
  659. package/src/video-analysis.ts +127 -0
  660. package/src/video-duration.ts +25 -0
  661. package/src/voice-changer-models.ts +36 -0
  662. package/src/voice-matcher-types.ts +37 -0
  663. package/src/voices.ts +92 -0
  664. package/src/weapons.ts +190 -0
  665. package/src/workflow-export.ts +153 -0
@@ -0,0 +1,302 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // -------------------- Hip Hop / R&B --------------------
5
+ "hip-hop": { label: "嘻哈", description: "节奏感强的口语演绎,采样或编程的节拍" },
6
+ "trap": { label: "陷阱", description: "Trap" },
7
+ "boom-bap": { label: "Boom Bap", description: "Boom Bap 嘻哈" },
8
+ "lo-fi-hip-hop": { label: "低保真嘻哈", description: "低保真嘻哈" },
9
+ "drill": { label: "Drill", description: "Drill" },
10
+ "uk-drill": { label: "英国 Drill", description: "英国 Drill" },
11
+ "cloud-rap": { label: "云说唱", description: "云说唱" },
12
+ "conscious-rap": { label: "意识说唱", description: "意识嘻哈" },
13
+ "gangsta-rap": { label: "黑帮说唱", description: "黑帮说唱" },
14
+ "jazz-rap": { label: "爵士说唱", description: "爵士说唱" },
15
+ "alt-hip-hop": { label: "另类嘻哈", description: "另类嘻哈" },
16
+ "phonk": { label: "Phonk", description: "Phonk" },
17
+ "drift-phonk": { label: "Drift Phonk", description: "Drift Phonk" },
18
+ "uk-hip-hop": { label: "英国嘻哈", description: "英国嘻哈" },
19
+ "grime": { label: "Grime", description: "Grime" },
20
+ "pluggnb": { label: "PluggnB", description: "PluggnB" },
21
+ "rage": { label: "Rage", description: "Rage 嘻哈" },
22
+ "jersey-club": { label: "新泽西俱乐部", description: "新泽西俱乐部" },
23
+ "brazilian-funk": { label: "巴西放克", description: "巴西放克" },
24
+ "moombahton": { label: "Moombahton", description: "Moombahton" },
25
+ "glitch-hop": { label: "故障嘻哈", description: "故障嘻哈" },
26
+
27
+ "rnb": { description: "顺滑人声,受灵魂乐影响" },
28
+ "neo-soul": { label: "新灵魂", description: "新灵魂" },
29
+ "contemporary-rnb": { label: "当代 R&B", description: "当代 R&B" },
30
+ "alt-rnb": { label: "另类 R&B", description: "另类 R&B" },
31
+ "neo-rnb": { label: "新 R&B", description: "现代 R&B" },
32
+ "quiet-storm": { label: "静谧风暴", description: "静谧风暴" },
33
+ "new-jack-swing": { label: "新杰克摇摆", description: "新杰克摇摆" },
34
+ "future-soul": { label: "未来灵魂", description: "未来灵魂" },
35
+
36
+ "soul": { label: "灵魂乐", description: "情感丰富的人声,源自福音乐,复古 R&B" },
37
+ "motown": { label: "摩城", description: "摩城灵魂" },
38
+ "northern-soul": { label: "北方灵魂", description: "北方灵魂" },
39
+ "southern-soul": { label: "南方灵魂", description: "南方灵魂" },
40
+ "psychedelic-soul": { label: "迷幻灵魂", description: "迷幻灵魂" },
41
+
42
+ "funk": { label: "放克", description: "切分音贝斯,打击节奏" },
43
+ "p-funk": { label: "P-放克", description: "P-放克" },
44
+ "g-funk": { label: "G-放克", description: "G-放克" },
45
+ "electro-funk": { label: "电子放克", description: "电子放克" },
46
+ "jazz-funk": { label: "爵士放克", description: "爵士放克" },
47
+
48
+ "lofi": { label: "低保真", description: "温暖的磁带嘶声,柔和节拍,怀旧" },
49
+ "lofi-beats": { label: "节拍", description: "低保真节拍" },
50
+ "lofi-jazz": { label: "爵士", description: "低保真爵士" },
51
+ "chillhop": { label: "Chillhop", description: "Chillhop" },
52
+
53
+ // -------------------- Electronic --------------------
54
+ "electronic": { label: "电子", description: "合成器/音序器驱动" },
55
+ "house": { label: "浩室", description: "浩室" },
56
+ "deep-house": { label: "深浩室", description: "深浩室" },
57
+ "tech-house": { label: "科技浩室", description: "科技浩室" },
58
+ "afro-house": { label: "非洲浩室", description: "非洲浩室" },
59
+ "amapiano": { label: "Amapiano", description: "Amapiano" },
60
+ "techno": { label: "科技舞曲", description: "科技舞曲" },
61
+ "minimal-techno": { label: "极简科技", description: "极简科技" },
62
+ "melodic-techno": { label: "旋律科技", description: "旋律科技" },
63
+ "drum-and-bass": { label: "鼓打贝斯", description: "鼓打贝斯" },
64
+ "jungle": { label: "丛林", description: "丛林" },
65
+ "dubstep": { label: "回响贝斯", description: "回响贝斯" },
66
+ "future-bass": { label: "未来贝斯", description: "未来贝斯" },
67
+ "trap-edm": { label: "Trap (EDM)", description: "Trap EDM" },
68
+ "synthwave": { label: "合成波", description: "合成波" },
69
+ "outrun": { label: "Outrun", description: "Outrun 合成波" },
70
+ "vaporwave": { label: "蒸汽波", description: "蒸汽波" },
71
+ "trance": { label: "迷幻舞曲", description: "迷幻舞曲" },
72
+ "psytrance": { label: "灵魂迷幻", description: "灵魂迷幻" },
73
+ "ambient": { label: "环境音乐", description: "电子环境" },
74
+ "idm": { label: "IDM", description: "智能舞曲" },
75
+ "breakbeat": { label: "断奏", description: "断奏" },
76
+ "garage-uk": { label: "英国 Garage", description: "英国 Garage" },
77
+ "hardstyle": { label: "Hardstyle", description: "Hardstyle" },
78
+ "footwork": { label: "Footwork", description: "Footwork" },
79
+ "indie-electronic": { label: "独立电子", description: "独立电子" },
80
+
81
+ "industrial": { label: "工业", description: "粗犷电子,机械质感,刺耳" },
82
+ "ebm": { label: "EBM", description: "电子身体音乐" },
83
+ "industrial-metal": { label: "工业金属", description: "工业金属" },
84
+ "noise": { label: "噪音", description: "噪音工业" },
85
+
86
+ "ambient-genre": { label: "环境音乐", description: "氛围性,缓慢演变,常无节拍" },
87
+ "dark-ambient": { label: "黑暗环境", description: "黑暗环境" },
88
+ "drone": { label: "持续音", description: "持续音" },
89
+ "new-age": { label: "新世纪", description: "新世纪环境" },
90
+ "space-music": { label: "太空", description: "太空环境" },
91
+
92
+ "experimental": { label: "实验", description: "无固定流派,先锋,抽象" },
93
+ "musique-concrete": { label: "具体音乐", description: "具体音乐" },
94
+ "noise-music": { label: "噪音", description: "噪音音乐" },
95
+ "free-improv": { label: "自由即兴", description: "自由即兴" },
96
+ "sound-art": { label: "声音艺术", description: "声音艺术" },
97
+
98
+ "chill": { label: "Chill", description: "慢拍,放松,柔和质感" },
99
+ "chillout": { label: "Chillout", description: "Chillout" },
100
+ "chillwave": { label: "Chillwave", description: "Chillwave" },
101
+ "downtempo": { label: "慢拍", description: "慢拍" },
102
+ "trip-hop": { label: "迷幻嘻哈", description: "迷幻嘻哈" },
103
+
104
+ "disco": { label: "迪斯科", description: "四四拍,丰富弦乐,舞池时代" },
105
+ "italo-disco": { label: "意大利迪斯科", description: "意大利迪斯科" },
106
+ "nu-disco": { label: "新迪斯科", description: "新迪斯科" },
107
+ "euro-disco": { label: "欧洲迪斯科", description: "欧洲迪斯科" },
108
+
109
+ // -------------------- Pop --------------------
110
+ "pop": { label: "流行", description: "主流,以钩子驱动" },
111
+ "synth-pop": { label: "合成流行", description: "合成流行" },
112
+ "dream-pop": { label: "梦幻流行", description: "梦幻流行" },
113
+ "indie-pop": { label: "独立流行", description: "独立流行" },
114
+ "k-pop": { label: "K-Pop", description: "K-pop" },
115
+ "j-pop": { label: "J-Pop", description: "J-pop" },
116
+ "art-pop": { label: "艺术流行", description: "艺术流行" },
117
+ "bubblegum-pop": { label: "泡泡糖", description: "泡泡糖流行" },
118
+ "chamber-pop": { label: "室内", description: "室内流行" },
119
+ "electro-pop": { label: "电子流行", description: "电子流行" },
120
+ "hyperpop": { label: "超流行", description: "超流行" },
121
+ "power-pop": { label: "强力流行", description: "强力流行" },
122
+ "bedroom-pop": { label: "卧室流行", description: "卧室流行" },
123
+
124
+ "anime": { label: "动漫 / J-Rock", description: "日本动画原声和 J-Rock" },
125
+ "anime-opening": { label: "片头曲", description: "动漫片头曲" },
126
+ "j-rock": { label: "J-Rock", description: "J-rock" },
127
+ "city-pop": { label: "都市流行", description: "都市流行" },
128
+
129
+ // -------------------- Rock / Metal --------------------
130
+ "rock": { label: "摇滚", description: "吉他驱动,显著的反拍" },
131
+ "classic-rock": { label: "经典摇滚", description: "经典摇滚" },
132
+ "hard-rock": { label: "硬摇滚", description: "硬摇滚" },
133
+ "indie-rock": { label: "独立摇滚", description: "独立摇滚" },
134
+ "punk-rock": { label: "朋克摇滚", description: "朋克摇滚" },
135
+ "alt-rock": { label: "另类", description: "另类摇滚" },
136
+ "psychedelic-rock": { label: "迷幻", description: "迷幻摇滚" },
137
+ "garage-rock": { label: "车库", description: "车库摇滚" },
138
+ "surf-rock": { label: "冲浪", description: "冲浪摇滚" },
139
+ "prog-rock": { label: "前卫", description: "前卫摇滚" },
140
+ "post-rock": { label: "后摇", description: "后摇" },
141
+ "shoegaze": { label: "盯鞋", description: "盯鞋" },
142
+ "math-rock": { label: "数学摇滚", description: "数学摇滚" },
143
+ "stoner-rock": { label: "迷幻石头", description: "迷幻石头摇滚" },
144
+ "emo": { label: "Emo", description: "Emo" },
145
+
146
+ "punk": { label: "朋克", description: "快速,激进,DIY 反文化" },
147
+ "hardcore-punk": { label: "硬核", description: "硬核朋克" },
148
+ "post-punk": { label: "后朋克", description: "后朋克" },
149
+ "pop-punk": { label: "流行朋克", description: "流行朋克" },
150
+ "skate-punk": { label: "滑板朋克", description: "滑板朋克" },
151
+ "anarcho-punk": { label: "无政府", description: "无政府朋克" },
152
+
153
+ "metal": { label: "金属", description: "重失真,激进人声" },
154
+ "heavy-metal": { description: "重金属" },
155
+ "death-metal": { description: "死亡金属" },
156
+ "black-metal": { description: "黑金属" },
157
+ "thrash-metal": { label: "敲击金属", description: "敲击金属" },
158
+ "doom-metal": { label: "毁灭", description: "毁灭金属" },
159
+ "power-metal": { label: "力量", description: "力量金属" },
160
+ "prog-metal": { label: "前卫", description: "前卫金属" },
161
+ "metalcore": { label: "金属核", description: "金属核" },
162
+ "deathcore": { label: "死核", description: "死核" },
163
+ "nu-metal": { label: "新金属", description: "新金属" },
164
+ "sludge-metal": { label: "泥浆", description: "泥浆金属" },
165
+ "symphonic-metal": { label: "交响", description: "交响金属" },
166
+
167
+ // -------------------- Acoustic / Roots --------------------
168
+ "jazz": { label: "爵士", description: "即兴,摇摆节奏,复杂和声" },
169
+ "bebop": { label: "比波普", description: "比波普" },
170
+ "smooth-jazz": { label: "顺滑爵士", description: "顺滑爵士" },
171
+ "fusion": { label: "融合", description: "爵士融合" },
172
+ "cool-jazz": { label: "酷派爵士", description: "酷派爵士" },
173
+ "free-jazz": { label: "自由爵士", description: "自由爵士" },
174
+ "swing": { label: "摇摆", description: "摇摆爵士" },
175
+ "big-band": { label: "大乐团", description: "大乐团爵士" },
176
+ "dixieland": { label: "迪克西兰", description: "迪克西兰爵士" },
177
+ "latin-jazz": { label: "拉丁爵士", description: "拉丁爵士" },
178
+ "nu-jazz": { label: "新爵士", description: "新爵士" },
179
+ "acid-jazz": { label: "酸性爵士", description: "酸性爵士" },
180
+
181
+ "blues": { label: "蓝调", description: "12小节形式,富有表现力的人声,弯音" },
182
+ "delta-blues": { label: "三角洲蓝调", description: "三角洲蓝调" },
183
+ "chicago-blues": { label: "芝加哥蓝调", description: "芝加哥蓝调" },
184
+ "electric-blues": { label: "电蓝调", description: "电蓝调" },
185
+ "jump-blues": { label: "跳跃蓝调", description: "跳跃蓝调" },
186
+ "blues-rock": { label: "蓝调摇滚", description: "蓝调摇滚" },
187
+
188
+ "country": { label: "乡村", description: "原声,叙事歌词" },
189
+ "country-pop": { label: "乡村流行", description: "乡村流行" },
190
+ "outlaw-country": { label: "亡命乡村", description: "亡命乡村" },
191
+ "alt-country": { label: "另类乡村", description: "另类乡村" },
192
+ "country-rock": { label: "乡村摇滚", description: "乡村摇滚" },
193
+ "americana": { label: "美式风", description: "美式风" },
194
+ "honky-tonk": { label: "Honky Tonk", description: "Honky Tonk" },
195
+ "bluegrass": { label: "蓝草", description: "蓝草" },
196
+
197
+ "folk": { label: "民谣", description: "原声,传统乐器" },
198
+ "indie-folk": { label: "独立民谣", description: "独立民谣" },
199
+ "traditional-folk": { label: "传统", description: "传统民谣" },
200
+ "celtic-folk": { label: "凯尔特", description: "凯尔特民谣" },
201
+ "freak-folk": { label: "怪异民谣", description: "怪异民谣" },
202
+ "folk-rock": { label: "民谣摇滚", description: "民谣摇滚" },
203
+ "anti-folk": { label: "反民谣", description: "反民谣" },
204
+
205
+ "gospel": { label: "福音乐", description: "基督教灵修,合唱,常以钢琴主导" },
206
+ "traditional-gospel": { label: "传统", description: "传统福音乐" },
207
+ "contemporary-gospel": { label: "当代", description: "当代福音乐" },
208
+ "urban-gospel": { label: "都市", description: "都市福音乐" },
209
+
210
+ // -------------------- Global --------------------
211
+ "reggae": { label: "雷鬼", description: "反拍节奏,牙买加起源" },
212
+ "roots-reggae": { label: "根源", description: "根源雷鬼" },
213
+ "dub": { label: "Dub", description: "Dub 雷鬼" },
214
+ "dancehall": { label: "舞厅", description: "舞厅" },
215
+ "ska": { label: "斯卡", description: "斯卡" },
216
+ "rocksteady": { label: "稳摇", description: "稳摇" },
217
+
218
+ "latin": { label: "拉丁", description: "拉丁美洲音乐传统" },
219
+ "salsa": { label: "萨尔萨", description: "萨尔萨" },
220
+ "bossa-nova": { label: "波萨诺瓦", description: "波萨诺瓦" },
221
+ "reggaeton": { label: "雷鬼顿", description: "雷鬼顿" },
222
+ "cumbia": { label: "昆比亚", description: "昆比亚" },
223
+ "merengue": { label: "梅伦格", description: "梅伦格" },
224
+ "bachata": { label: "巴恰塔", description: "巴恰塔" },
225
+ "tango": { label: "探戈", description: "探戈" },
226
+ "mariachi": { label: "马里亚奇", description: "马里亚奇" },
227
+ "samba": { label: "桑巴", description: "桑巴" },
228
+ "flamenco": { label: "弗拉门戈", description: "弗拉门戈" },
229
+ "latin-pop": { label: "拉丁流行", description: "拉丁流行" },
230
+ "latin-trap": { label: "拉丁 Trap", description: "拉丁 Trap" },
231
+
232
+ "world": { label: "世界", description: "非西方音乐传统" },
233
+ "afrobeat": { label: "Afrobeat", description: "Afrobeat" },
234
+ "afrobeats": { label: "Afrobeats", description: "Afrobeats" },
235
+ "highlife": { label: "Highlife", description: "Highlife" },
236
+ "amapiano-w": { label: "Amapiano", description: "Amapiano" },
237
+ "bhangra": { label: "Bhangra", description: "Bhangra" },
238
+ "bollywood": { label: "宝莱坞", description: "宝莱坞" },
239
+ "indian-classical": { label: "印度古典", description: "印度古典音乐" },
240
+ "klezmer": { label: "克莱兹默", description: "克莱兹默" },
241
+ "balkan": { label: "巴尔干", description: "巴尔干" },
242
+ "middle-eastern": { label: "中东", description: "中东" },
243
+ "celtic": { label: "凯尔特", description: "凯尔特" },
244
+ "gamelan": { label: "甘美兰", description: "甘美兰" },
245
+ "throat-singing": { label: "喉音演唱", description: "喉音演唱" },
246
+
247
+ // -------------------- Cinematic / Score --------------------
248
+ "classical": { label: "古典", description: "管弦乐,传统西方艺术音乐" },
249
+ "baroque": { label: "巴洛克", description: "巴洛克古典" },
250
+ "romantic": { label: "浪漫主义", description: "浪漫主义时期古典" },
251
+ "modern-classical": { label: "现代古典", description: "现代古典" },
252
+ "minimalist-classical": { label: "极简主义", description: "极简主义古典" },
253
+ "choral": { label: "合唱", description: "合唱古典" },
254
+ "chamber-music": { label: "室内乐", description: "室内乐" },
255
+ "opera": { label: "歌剧", description: "歌剧式" },
256
+ "early-music": { label: "早期音乐", description: "早期音乐" },
257
+
258
+ "cinematic": { label: "电影感", description: "配乐风格,唤起情感,情绪主导" },
259
+ "epic-orchestral": { label: "史诗管弦", description: "史诗管弦电影感" },
260
+ "minimalist-score": { label: "极简配乐", description: "极简电影配乐" },
261
+ "trailer-music": { label: "预告片", description: "电影预告片音乐" },
262
+ "score-action": { label: "动作", description: "动作电影配乐" },
263
+ "score-horror": { label: "恐怖", description: "恐怖电影配乐" },
264
+ "score-romance": { label: "爱情", description: "爱情电影配乐" },
265
+ "score-sci-fi": { label: "科幻", description: "科幻电影配乐" },
266
+ "score-fantasy": { label: "奇幻", description: "奇幻电影配乐" },
267
+ "score-noir": { label: "黑色", description: "黑色电影感" },
268
+ "score-documentary": { label: "纪录片", description: "纪录片配乐" },
269
+
270
+ "video-game": { label: "电子游戏", description: "游戏配乐风格——芯片音乐、管弦、电子" },
271
+ "chiptune": { label: "芯片音乐", description: "芯片音乐" },
272
+ "8bit": { label: "8位", description: "8位" },
273
+ "16bit": { label: "16位", description: "16位" },
274
+ "vgm-orchestral": { label: "管弦 VGM", description: "管弦电子游戏" },
275
+ "vgm-synth": { label: "合成 VGM", description: "合成电子游戏" },
276
+
277
+ "holiday": { label: "节日", description: "季节性——圣诞、节日、传统" },
278
+ "christmas": { label: "圣诞", description: "圣诞" },
279
+ "winter": { label: "冬季", description: "冬季节日" },
280
+ "festive": { label: "节庆", description: "节庆" },
281
+
282
+ "children": { label: "儿童", description: "儿童音乐——合唱、摇篮曲、教育性" },
283
+ "lullaby": { label: "摇篮曲", description: "摇篮曲" },
284
+ "nursery-rhyme": { label: "童谣", description: "童谣" },
285
+ "kids-pop": { label: "儿童流行", description: "儿童流行" },
286
+
287
+ // -------------------- Eras --------------------
288
+ "1920s": { description: "咆哮的二十年代,爵士时代" },
289
+ "1930s": { description: "大乐团,摇摆" },
290
+ "1940s": { description: "战时,比波普兴起" },
291
+ "1950s": { description: "早期摇滚乐,Doo-wop" },
292
+ "1960s": { description: "英国入侵,摩城" },
293
+ "1970s": { description: "迪斯科,前卫摇滚,朋克" },
294
+ "1980s": { description: "合成流行,新浪潮" },
295
+ "1990s": { description: "垃圾摇滚,嘻哈黄金时代" },
296
+ "2000s": { description: "流行朋克,R&B 复兴" },
297
+ "2010s": { description: "EDM 主流,流媒体时代" },
298
+ "modern": { label: "现代", description: "2020 年代以来当代" },
299
+ "futurist": { label: "未来主义", description: "科幻,超凡脱俗" },
300
+ }
301
+
302
+ export default map
@@ -0,0 +1,75 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // -------------------- Energies --------------------
5
+ "low": { label: "منخفضة", description: "هادئة، بطيئة" },
6
+ "mellow": { label: "ناعمة", description: "مسترخية، متروية" },
7
+ "gentle": { label: "لطيفة", description: "ناعمة، رقيقة" },
8
+ "moderate": { label: "معتدلة", description: "متوازنة، ثابتة" },
9
+ "building": { label: "متصاعدة", description: "تشتد ببطء" },
10
+ "upbeat": { label: "حيوية", description: "مفعمة بالنشاط، متفائلة" },
11
+ "driving": { label: "دافعة", description: "زخم اندفاعي للأمام" },
12
+ "high": { label: "عالية", description: "نشطة، مكثفة" },
13
+ "explosive": { label: "متفجرة", description: "منفجرة، جامحة" },
14
+ "frenetic": { label: "محمومة", description: "مكثفة، سريعة" },
15
+ "pulsing": { label: "نابضة", description: "إيقاعية، يقودها الإيقاع" },
16
+ "throbbing": { label: "خافقة", description: "ثقيلة، منومة" },
17
+ "simmering": { label: "متأججة", description: "متوترة، مكبوتة" },
18
+ "ferocious": { label: "ضارية", description: "عدوانية، عنيدة" },
19
+
20
+ // -------------------- Emotions --------------------
21
+ "happy": { label: "سعيدة", description: "مبهجة، مشرقة" },
22
+ "joyful": { label: "بهيجة", description: "متهللة، احتفالية" },
23
+ "euphoric": { label: "نشوانة", description: "نشوة، متعالية" },
24
+ "melancholic": { label: "كئيبة", description: "حنينية، حلوة مرة" },
25
+ "sad": { label: "حزينة", description: "كئيبة، أسيانة" },
26
+ "longing": { label: "متشوقة", description: "مشتاقة، موجعة" },
27
+ "lonely": { label: "وحيدة", description: "معزولة، بعيدة" },
28
+ "angry": { label: "غاضبة", description: "عدوانية، عدائية" },
29
+ "defiant": { label: "متحدية", description: "متمردة، مقاومة" },
30
+ "triumphant": { label: "ظافرة", description: "بطولية، منتصرة" },
31
+ "victorious": { label: "منتصرة", description: "غازية، نشيدية" },
32
+ "tender": { label: "رقيقة", description: "ناعمة، حنونة" },
33
+ "romantic": { label: "رومانسية", description: "محبة، حسية" },
34
+ "haunting": { label: "ملازمة", description: "مخيفة، باقية" },
35
+ "mysterious": { label: "غامضة", description: "محيرة، سرية" },
36
+ "menacing": { label: "مهددة", description: "متوعدة، نذير شؤم" },
37
+ "playful": { label: "مرحة", description: "غريبة الأطوار، ممتعة" },
38
+ "mischievous": { label: "شقية", description: "مكارة، مشاغبة" },
39
+ "anxious": { label: "قلقة", description: "متوترة، خائفة" },
40
+ "fearful": { label: "خائفة", description: "مذعورة، مرتعبة" },
41
+ "hopeful": { label: "متفائلة", description: "ملهمة، طموحة" },
42
+ "inspirational": { label: "ملهمة", description: "محفزة، محلقة" },
43
+ "nostalgic": { label: "حنينية", description: "متطلعة للماضي، حنينية" },
44
+ "bittersweet": { label: "حلوة مرة", description: "حزن حلو، مختلطة" },
45
+ "peaceful": { label: "هادئة", description: "ساكنة، مريحة" },
46
+ "contemplative": { label: "تأملية", description: "متأملة، متفكرة" },
47
+ "ethereal": { label: "أثيرية", description: "غير دنيوية، طافية" },
48
+ "awe": { label: "رهبة", description: "إعجاب، شساعة" },
49
+
50
+ // -------------------- Vibes --------------------
51
+ "cinematic": { label: "سينمائية", description: "كموسيقى تصويرية، موحية" },
52
+ "intimate": { label: "حميمية", description: "شخصية، قريبة" },
53
+ "epic": { label: "ملحمية", description: "عظيمة، جارفة" },
54
+ "anthemic": { label: "نشيدية", description: "كبيرة لمشاركة الحشد بالغناء" },
55
+ "lo-fi": { description: "دافئة، غير مثالية" },
56
+ "polished": { label: "مصقولة", description: "متقنة، سائدة" },
57
+ "raw": { label: "خام", description: "غير مفلترة، خشنة" },
58
+ "dreamy": { label: "حالمة", description: "ضبابية، سريالية" },
59
+ "hypnotic": { label: "منومة", description: "متكررة، شبيهة بالغيبوبة" },
60
+ "dark": { label: "مظلمة", description: "متجهمة، ظليلة" },
61
+ "gritty": { label: "خشنة", description: "وعرة، حضرية" },
62
+ "uplifting": { label: "محفزة", description: "مشرقة، مشجعة" },
63
+ "tense": { label: "متوترة", description: "مشوقة" },
64
+ "spacey": { label: "فضائية", description: "كونية، شاسعة" },
65
+ "psychedelic": { label: "سيكدلية", description: "محرفة للعقل، دوارة" },
66
+ "noir": { label: "نوار", description: "مدخنة، صلبة" },
67
+ "vintage": { label: "كلاسيكية", description: "رجعية، عتيقة" },
68
+ "futuristic": { label: "مستقبلية", description: "خيال علمي، استشرافية" },
69
+ "suspenseful": { label: "مشوقة", description: "رعب، على حافة الهاوية" },
70
+ "espionage": { label: "تجسس", description: "إثارة، عمليات سرية" },
71
+ "cold": { label: "باردة", description: "متجمدة، منفصلة، حادة" },
72
+ "clandestine": { label: "سرية", description: "خفية، متخفية" },
73
+ }
74
+
75
+ export default map
@@ -0,0 +1,75 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // -------------------- Energies --------------------
5
+ "low": { label: "Niedrig", description: "Ruhig, langsam" },
6
+ "mellow": { label: "Sanft", description: "Entspannt, gelassen" },
7
+ "gentle": { label: "Zart", description: "Weich, zärtlich" },
8
+ "moderate": { label: "Moderat", description: "Ausgewogen, gleichmäßig" },
9
+ "building": { label: "Aufbauend", description: "Langsam intensivierend" },
10
+ "upbeat": { label: "Lebhaft", description: "Schwungvoll, optimistisch" },
11
+ "driving": { label: "Treibend", description: "Vorwärtsdrängender Schwung" },
12
+ "high": { label: "Hoch", description: "Energiegeladen, intensiv" },
13
+ "explosive": { label: "Explosiv", description: "Berstend, wild" },
14
+ "frenetic": { label: "Frenetisch", description: "Intensiv, schnell" },
15
+ "pulsing": { label: "Pulsierend", description: "Rhythmisch, beatbetont" },
16
+ "throbbing": { label: "Pochend", description: "Schwer, hypnotisch" },
17
+ "simmering": { label: "Köchelnd", description: "Angespannt, zurückhaltend" },
18
+ "ferocious": { label: "Wild", description: "Aggressiv, unerbittlich" },
19
+
20
+ // -------------------- Emotions --------------------
21
+ "happy": { label: "Fröhlich", description: "Freudig, hell" },
22
+ "joyful": { label: "Freudvoll", description: "Überschwänglich, festlich" },
23
+ "euphoric": { label: "Euphorisch", description: "Ekstatisch, transzendent" },
24
+ "melancholic": { label: "Melancholisch", description: "Wehmütig, bittersüß" },
25
+ "sad": { label: "Traurig", description: "Düster, kummervoll" },
26
+ "longing": { label: "Sehnsuchtsvoll", description: "Sich sehnend, schmerzlich" },
27
+ "lonely": { label: "Einsam", description: "Isoliert, fern" },
28
+ "angry": { label: "Wütend", description: "Aggressiv, feindselig" },
29
+ "defiant": { label: "Trotzig", description: "Rebellisch, widerständig" },
30
+ "triumphant": { label: "Triumphierend", description: "Heroisch, siegreich" },
31
+ "victorious": { label: "Siegreich", description: "Erobernd, hymnisch" },
32
+ "tender": { label: "Zärtlich", description: "Sanft, liebevoll" },
33
+ "romantic": { label: "Romantisch", description: "Liebend, sinnlich" },
34
+ "haunting": { label: "Eindringlich", description: "Unheimlich, nachhallend" },
35
+ "mysterious": { label: "Geheimnisvoll", description: "Rätselhaft, verborgen" },
36
+ "menacing": { label: "Bedrohlich", description: "Bedrohlich, vorahnend" },
37
+ "playful": { label: "Verspielt", description: "Skurril, lustig" },
38
+ "mischievous": { label: "Schelmisch", description: "Listig, verschmitzt" },
39
+ "anxious": { label: "Ängstlich", description: "Angespannt, besorgt" },
40
+ "fearful": { label: "Furchtsam", description: "Verängstigt, panisch" },
41
+ "hopeful": { label: "Hoffnungsvoll", description: "Erbauend, anstrebend" },
42
+ "inspirational": { label: "Inspirierend", description: "Motivierend, erhebend" },
43
+ "nostalgic": { label: "Nostalgisch", description: "Rückblickend, wehmütig" },
44
+ "bittersweet": { label: "Bittersüß", description: "Süßer Schmerz, gemischt" },
45
+ "peaceful": { label: "Friedlich", description: "Heiter, erholsam" },
46
+ "contemplative": { label: "Nachdenklich", description: "Reflektierend, sinnierend" },
47
+ "ethereal": { label: "Ätherisch", description: "Überirdisch, schwebend" },
48
+ "awe": { label: "Ehrfurcht", description: "Wunder, Weite" },
49
+
50
+ // -------------------- Vibes --------------------
51
+ "cinematic": { label: "Filmisch", description: "Wie ein Soundtrack, evokativ" },
52
+ "intimate": { label: "Intim", description: "Persönlich, nah" },
53
+ "epic": { label: "Episch", description: "Großartig, ausladend" },
54
+ "anthemic": { label: "Hymnisch", description: "Mitsing-tauglich, groß" },
55
+ "lo-fi": { description: "Warm, unvollkommen" },
56
+ "polished": { label: "Poliert", description: "Makellos, mainstream" },
57
+ "raw": { label: "Roh", description: "Ungefiltert, rau" },
58
+ "dreamy": { label: "Verträumt", description: "Verschwommen, surreal" },
59
+ "hypnotic": { label: "Hypnotisch", description: "Geloopt, tranceartig" },
60
+ "dark": { label: "Düster", description: "Grüblerisch, schattig" },
61
+ "gritty": { label: "Schroff", description: "Grob, urban" },
62
+ "uplifting": { label: "Erhebend", description: "Strahlend, ermutigend" },
63
+ "tense": { label: "Angespannt", description: "Spannungsvoll" },
64
+ "spacey": { label: "Sphärisch", description: "Kosmisch, weit" },
65
+ "psychedelic": { label: "Psychedelisch", description: "Bewusstseinsverändernd, wirbelnd" },
66
+ "noir": { label: "Noir", description: "Rauchig, hartgesotten" },
67
+ "vintage": { label: "Vintage", description: "Retro, gealtert" },
68
+ "futuristic": { label: "Futuristisch", description: "Sci-Fi, vorausschauend" },
69
+ "suspenseful": { label: "Spannungsgeladen", description: "Bedrohlich, auf der Kippe" },
70
+ "espionage": { label: "Spionage", description: "Spionagethriller, verdeckte Operationen" },
71
+ "cold": { label: "Kalt", description: "Eisig, distanziert, scharf" },
72
+ "clandestine": { label: "Verborgen", description: "Geheim, schattenhaft, verdeckt" },
73
+ }
74
+
75
+ export default map
@@ -0,0 +1,75 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // -------------------- Energies --------------------
5
+ "low": { label: "Baja", description: "Calma, lenta" },
6
+ "mellow": { label: "Suave", description: "Relajada, tranquila" },
7
+ "gentle": { label: "Delicada", description: "Suave, tierna" },
8
+ "moderate": { label: "Moderada", description: "Equilibrada, constante" },
9
+ "building": { label: "Creciente", description: "Intensificándose lentamente" },
10
+ "upbeat": { label: "Animada", description: "Alegre, optimista" },
11
+ "driving": { label: "Impulsora", description: "Impulso hacia adelante" },
12
+ "high": { label: "Alta", description: "Enérgica, intensa" },
13
+ "explosive": { label: "Explosiva", description: "Estallante, salvaje" },
14
+ "frenetic": { label: "Frenética", description: "Intensa, rápida" },
15
+ "pulsing": { label: "Pulsante", description: "Rítmica, marcada por el ritmo" },
16
+ "throbbing": { label: "Palpitante", description: "Pesada, hipnótica" },
17
+ "simmering": { label: "Latente", description: "Tensa, contenida" },
18
+ "ferocious": { label: "Feroz", description: "Agresiva, implacable" },
19
+
20
+ // -------------------- Emotions --------------------
21
+ "happy": { label: "Feliz", description: "Alegre, brillante" },
22
+ "joyful": { label: "Jubilosa", description: "Exuberante, festiva" },
23
+ "euphoric": { label: "Eufórica", description: "Extática, trascendente" },
24
+ "melancholic": { label: "Melancólica", description: "Nostálgica, agridulce" },
25
+ "sad": { label: "Triste", description: "Sombría, apenada" },
26
+ "longing": { label: "Anhelante", description: "Anhelo, dolorosa" },
27
+ "lonely": { label: "Solitaria", description: "Aislada, distante" },
28
+ "angry": { label: "Enojada", description: "Agresiva, hostil" },
29
+ "defiant": { label: "Desafiante", description: "Rebelde, resistente" },
30
+ "triumphant": { label: "Triunfante", description: "Heroica, victoriosa" },
31
+ "victorious": { label: "Victoriosa", description: "Conquistadora, anímica" },
32
+ "tender": { label: "Tierna", description: "Suave, afectuosa" },
33
+ "romantic": { label: "Romántica", description: "Amorosa, sensual" },
34
+ "haunting": { label: "Inquietante", description: "Espeluznante, persistente" },
35
+ "mysterious": { label: "Misteriosa", description: "Enigmática, secreta" },
36
+ "menacing": { label: "Amenazante", description: "Amenazadora, presagiosa" },
37
+ "playful": { label: "Juguetona", description: "Caprichosa, divertida" },
38
+ "mischievous": { label: "Traviesa", description: "Astuta, traviesa" },
39
+ "anxious": { label: "Ansiosa", description: "Tensa, aprensiva" },
40
+ "fearful": { label: "Temerosa", description: "Asustada, en pánico" },
41
+ "hopeful": { label: "Esperanzadora", description: "Edificante, aspiracional" },
42
+ "inspirational": { label: "Inspiradora", description: "Motivadora, elevada" },
43
+ "nostalgic": { label: "Nostálgica", description: "Mirando al pasado, melancólica" },
44
+ "bittersweet": { label: "Agridulce", description: "Dulce tristeza, mixta" },
45
+ "peaceful": { label: "Apacible", description: "Serena, reposada" },
46
+ "contemplative": { label: "Contemplativa", description: "Reflexiva, meditativa" },
47
+ "ethereal": { label: "Etérea", description: "Sobrenatural, flotante" },
48
+ "awe": { label: "Asombro", description: "Maravilla, vastedad" },
49
+
50
+ // -------------------- Vibes --------------------
51
+ "cinematic": { label: "Cinematográfica", description: "Como banda sonora, evocadora" },
52
+ "intimate": { label: "Íntima", description: "Personal, cercana" },
53
+ "epic": { label: "Épica", description: "Grandiosa, arrolladora" },
54
+ "anthemic": { label: "Himno", description: "Grande para corear en multitud" },
55
+ "lo-fi": { description: "Cálida, imperfecta" },
56
+ "polished": { label: "Pulida", description: "Impecable, comercial" },
57
+ "raw": { label: "Cruda", description: "Sin filtrar, áspera" },
58
+ "dreamy": { label: "Onírica", description: "Brumosa, surrealista" },
59
+ "hypnotic": { label: "Hipnótica", description: "En bucle, como trance" },
60
+ "dark": { label: "Oscura", description: "Sombría, tenebrosa" },
61
+ "gritty": { label: "Áspera", description: "Tosca, urbana" },
62
+ "uplifting": { label: "Edificante", description: "Brillante, alentadora" },
63
+ "tense": { label: "Tensa", description: "De suspenso" },
64
+ "spacey": { label: "Espacial", description: "Cósmica, vasta" },
65
+ "psychedelic": { label: "Psicodélica", description: "Alucinante, arremolinada" },
66
+ "noir": { label: "Negra", description: "Humosa, dura" },
67
+ "vintage": { label: "Vintage", description: "Retro, envejecida" },
68
+ "futuristic": { label: "Futurista", description: "Sci-fi, mirando hacia adelante" },
69
+ "suspenseful": { label: "Suspense", description: "Terror, al borde del abismo" },
70
+ "espionage": { label: "Espionaje", description: "Thriller de espías, operaciones encubiertas" },
71
+ "cold": { label: "Fría", description: "Helada, distante, afilada" },
72
+ "clandestine": { label: "Clandestina", description: "Secreta, en las sombras, encubierta" },
73
+ }
74
+
75
+ export default map
@@ -0,0 +1,75 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // -------------------- Energies --------------------
5
+ "low": { label: "Faible", description: "Calme, lent" },
6
+ "mellow": { label: "Doux", description: "Détendu, décontracté" },
7
+ "gentle": { label: "Délicat", description: "Doux, tendre" },
8
+ "moderate": { label: "Modéré", description: "Équilibré, constant" },
9
+ "building": { label: "Montant", description: "S'intensifiant lentement" },
10
+ "upbeat": { label: "Entraînant", description: "Vif, optimiste" },
11
+ "driving": { label: "Propulsif", description: "Élan vers l'avant" },
12
+ "high": { label: "Élevé", description: "Énergique, intense" },
13
+ "explosive": { label: "Explosif", description: "Éclatant, sauvage" },
14
+ "frenetic": { label: "Frénétique", description: "Intense, rapide" },
15
+ "pulsing": { label: "Pulsant", description: "Rythmé, cadencé" },
16
+ "throbbing": { label: "Palpitant", description: "Lourd, hypnotique" },
17
+ "simmering": { label: "Bouillonnant", description: "Tendu, retenu" },
18
+ "ferocious": { label: "Féroce", description: "Agressif, implacable" },
19
+
20
+ // -------------------- Emotions --------------------
21
+ "happy": { label: "Joyeux", description: "Joyeux, lumineux" },
22
+ "joyful": { label: "Allègre", description: "Exubérant, festif" },
23
+ "euphoric": { label: "Euphorique", description: "Extatique, transcendant" },
24
+ "melancholic": { label: "Mélancolique", description: "Nostalgique, doux-amer" },
25
+ "sad": { label: "Triste", description: "Sombre, peiné" },
26
+ "longing": { label: "Languissant", description: "Aspirant, douloureux" },
27
+ "lonely": { label: "Solitaire", description: "Isolé, distant" },
28
+ "angry": { label: "En colère", description: "Agressif, hostile" },
29
+ "defiant": { label: "Provocant", description: "Rebelle, résistant" },
30
+ "triumphant": { label: "Triomphant", description: "Héroïque, victorieux" },
31
+ "victorious": { label: "Victorieux", description: "Conquérant, hymnique" },
32
+ "tender": { label: "Tendre", description: "Doux, affectueux" },
33
+ "romantic": { label: "Romantique", description: "Amoureux, sensuel" },
34
+ "haunting": { label: "Obsédant", description: "Étrange, persistant" },
35
+ "mysterious": { label: "Mystérieux", description: "Énigmatique, secret" },
36
+ "menacing": { label: "Menaçant", description: "Inquiétant, présage" },
37
+ "playful": { label: "Espiègle", description: "Fantaisiste, amusant" },
38
+ "mischievous": { label: "Malicieux", description: "Rusé, fauteur de troubles" },
39
+ "anxious": { label: "Anxieux", description: "Tendu, appréhensif" },
40
+ "fearful": { label: "Craintif", description: "Effrayé, paniqué" },
41
+ "hopeful": { label: "Plein d'espoir", description: "Édifiant, aspirationnel" },
42
+ "inspirational": { label: "Inspirant", description: "Motivant, exaltant" },
43
+ "nostalgic": { label: "Nostalgique", description: "Tourné vers le passé, mélancolique" },
44
+ "bittersweet": { label: "Doux-amer", description: "Douce tristesse, mêlée" },
45
+ "peaceful": { label: "Paisible", description: "Serein, reposant" },
46
+ "contemplative": { label: "Contemplatif", description: "Réfléchi, méditatif" },
47
+ "ethereal": { label: "Éthéré", description: "D'un autre monde, flottant" },
48
+ "awe": { label: "Émerveillement", description: "Merveille, immensité" },
49
+
50
+ // -------------------- Vibes --------------------
51
+ "cinematic": { label: "Cinématographique", description: "Comme une bande originale, évocateur" },
52
+ "intimate": { label: "Intime", description: "Personnel, proche" },
53
+ "epic": { label: "Épique", description: "Grandiose, balayant" },
54
+ "anthemic": { label: "Hymne", description: "Grand à reprendre en chœur" },
55
+ "lo-fi": { description: "Chaud, imparfait" },
56
+ "polished": { label: "Soigné", description: "Impeccable, grand public" },
57
+ "raw": { label: "Brut", description: "Non filtré, rugueux" },
58
+ "dreamy": { label: "Rêveur", description: "Brumeux, surréel" },
59
+ "hypnotic": { label: "Hypnotique", description: "En boucle, transe" },
60
+ "dark": { label: "Sombre", description: "Maussade, ombrageux" },
61
+ "gritty": { label: "Granuleux", description: "Rugueux, urbain" },
62
+ "uplifting": { label: "Élévateur", description: "Lumineux, encourageant" },
63
+ "tense": { label: "Tendu", description: "Suspense" },
64
+ "spacey": { label: "Cosmique", description: "Cosmique, vaste" },
65
+ "psychedelic": { label: "Psychédélique", description: "Vertigineux, tourbillonnant" },
66
+ "noir": { label: "Noir", description: "Enfumé, dur à cuire" },
67
+ "vintage": { label: "Vintage", description: "Rétro, vieilli" },
68
+ "futuristic": { label: "Futuriste", description: "Sci-fi, tourné vers l'avenir" },
69
+ "suspenseful": { label: "Suspense", description: "Angoisse, au bord du gouffre" },
70
+ "espionage": { label: "Espionnage", description: "Thriller d'espions, opérations secrètes" },
71
+ "cold": { label: "Froide", description: "Glaciale, distante, acérée" },
72
+ "clandestine": { label: "Clandestine", description: "Secrète, dans l'ombre, couverte" },
73
+ }
74
+
75
+ export default map