@nodaro/shared 1.4.2

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,61 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // Positive
5
+ "happy": { label: "Heureux", description: "Bonheur chaleureux et souriant" },
6
+ "joyful": { label: "Joyeux", description: "Joie radieuse et débridée" },
7
+ "serene": { label: "Serein", description: "Calme et contentement paisible" },
8
+ "playful": { label: "Espiègle", description: "Énergie joueuse et malicieuse" },
9
+ "confident": { label: "Sûr de soi", description: "Assuré et confiant" },
10
+ "loving": { label: "Aimant", description: "Tendre, affectueux" },
11
+ "amused": { label: "Amusé", description: "Subtilement amusé, esquisse de sourire" },
12
+ "smirking": { label: "Sourire en coin", description: "Amusement arrogant et désinvolte" },
13
+ "eccentric": { label: "Excentrique", description: "Original, non conventionnel" },
14
+ "hopeful": { label: "Plein d'espoir", description: "Œil brillant, optimiste" },
15
+ // Negative
16
+ "sad": { label: "Triste", description: "Tristement silencieux, abattu" },
17
+ "angry": { label: "Furieux", description: "Colère claire, tension" },
18
+ "afraid": { label: "Effrayé", description: "Apeuré, yeux écarquillés" },
19
+ "anxious": { label: "Anxieux", description: "Nerveux, inquiet" },
20
+ "melancholy": { label: "Mélancolique", description: "Tristesse rêveuse" },
21
+ "devastated": { label: "Dévasté", description: "Chagrin de cœur brisé" },
22
+ "grieving": { label: "En deuil", description: "Profond chagrin, perte" },
23
+ "caught-off-guard": { label: "Pris au dépourvu", description: "Surpris en pleine réaction" },
24
+ "aloof": { label: "Distant", description: "Replié, indifférent" },
25
+ "vulnerable": { label: "Vulnérable", description: "Exposé, sans défense" },
26
+ "coy": { label: "Timide enjôleur", description: "Timide, regard baissé" },
27
+ "bored": { label: "Ennuyé", description: "Désintéressé, impassible" },
28
+ "embarrassed": { label: "Gêné", description: "Rougissant, regard détourné" },
29
+ "disgusted": { label: "Dégoûté", description: "Repoussé, reculant" },
30
+ "bewildered": { label: "Perplexe", description: "Confus, perdu" },
31
+ // Neutral
32
+ "thoughtful": { label: "Pensif", description: "Plongé dans ses pensées" },
33
+ "stoic": { label: "Stoïque", description: "Impassible, indéchiffrable" },
34
+ "calm": { label: "Calme", description: "Centré, sans réaction" },
35
+ "curious": { label: "Curieux", description: "Intrigué, en alerte" },
36
+ "mysterious": { label: "Mystérieux", description: "Insondable, énigmatique" },
37
+ "dazed": { label: "Hébété", description: "Rêveur, à demi présent" },
38
+ "sleepy": { label: "Endormi", description: "Somnolent, paupières lourdes" },
39
+ "unbothered": { label: "Imperturbable", description: "Calme et maître de soi" },
40
+ // Intense
41
+ "fierce": { label: "Féroce", description: "Féroce, impérieux" },
42
+ "determined": { label: "Déterminé", description: "Volonté résolue et ciblée" },
43
+ "passionate": { label: "Passionné", description: "Passion brûlante" },
44
+ "brooding": { label: "Tourmenté", description: "Mélancolie sombre et tourmentée" },
45
+ "seductive": { label: "Séducteur", description: "Séduisant, attirant" },
46
+ "defiant": { label: "Défiant", description: "Défiant, inflexible" },
47
+ "sultry": { label: "Sulfureux", description: "Couvant, paupières lourdes" },
48
+ "smoldering": { label: "Brûlant", description: "Intensité ramassée, à combustion lente" },
49
+ "sinister": { label: "Sinistre", description: "Sombre, malicieux, menaçant" },
50
+ "wiccan-mystical": { label: "Wicca / Mystique", description: "D'un autre monde discret, occulte" },
51
+ "lazy-shy": { label: "Timide nonchalant", description: "Somnolent, doux, à demi timide" },
52
+ "awe": { label: "Émerveillement", description: "Émerveillement, révérent" },
53
+ "shocked": { label: "Choqué", description: "Surpris, bouche ouverte" },
54
+ "flirty": { label: "Coquet", description: "Flirt joueur, sourire qui s'attarde, contact visuel soutenu" },
55
+ "suspicious": { label: "Méfiant", description: "Méfiance circonspecte, yeux plissés, regard de côté" },
56
+ "resigned": { label: "Résigné", description: "Acceptation tranquille d'une situation désagréable" },
57
+ "conflicted": { label: "Conflicté", description: "Lutte intérieure visible, sourcils froncés" },
58
+ "relieved": { label: "Soulagé", description: "La tension se relâche dans le calme" },
59
+ }
60
+
61
+ export default map
@@ -0,0 +1,64 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // Positive
5
+ "happy": { label: "שמח", description: "אושר חמים ומחויך" },
6
+ "joyful": { label: "עליז", description: "שמחה זוהרת ובלתי מרוסנת" },
7
+ "serene": { label: "שלו", description: "שלוות נפש רגועה" },
8
+ "playful": { label: "שובב", description: "אנרגיה משתובבת ושובבה" },
9
+ "confident": { label: "בטוח", description: "ביטחון עצמי" },
10
+ "loving": { label: "אוהב", description: "עדין, מלא חיבה" },
11
+ "amused": { label: "מבודר", description: "משועשע בעדינות, עם חיוך מהורהר" },
12
+ "smirking": { label: "מחייך בזחיחות", description: "שעשוע יהיר ומתנשא" },
13
+ "eccentric": { label: "אקסצנטרי", description: "מוזר, לא קונבנציונלי" },
14
+ "hopeful": { label: "מקווה", description: "אופטימי עם עיניים בוהקות" },
15
+
16
+ // Negative
17
+ "sad": { label: "עצוב", description: "עצוב בשקט, מבט מורד" },
18
+ "angry": { label: "כועס", description: "כעס ברור, מתח" },
19
+ "afraid": { label: "מפוחד", description: "מבועת, עיניים פעורות" },
20
+ "anxious": { label: "חרד", description: "עצבני, מודאג" },
21
+ "melancholy": { label: "מלנכולי", description: "עצב מהורהר" },
22
+ "devastated": { label: "מנופץ", description: "אבל שבור-לב" },
23
+ "grieving": { label: "מתאבל", description: "אבל עמוק, אובדן" },
24
+ "caught-off-guard": { label: "נתפס לא מוכן", description: "מופתע באמצע תגובה" },
25
+ "aloof": { label: "מסויג", description: "מנותק, חסר עניין" },
26
+ "vulnerable": { label: "פגיע", description: "חשוף, חסר הגנה" },
27
+ "coy": { label: "מתוחכם", description: "ביישן, מבט מורד" },
28
+ "bored": { label: "משועמם", description: "חסר עניין, חסר הבעה" },
29
+ "embarrassed": { label: "נבוך", description: "מסמיק, עיניים מסיטות" },
30
+ "disgusted": { label: "מגועל", description: "סולד, נסוג" },
31
+ "bewildered": { label: "מבולבל", description: "מבולבל, אבוד" },
32
+
33
+ // Neutral
34
+ "thoughtful": { label: "מהורהר", description: "שקוע במחשבה" },
35
+ "stoic": { label: "סטואי", description: "אטום, בלתי קריא" },
36
+ "calm": { label: "רגוע", description: "ממורכז, לא מגיב" },
37
+ "curious": { label: "סקרן", description: "מסוקרן, ערני" },
38
+ "mysterious": { label: "מסתורי", description: "אינסקרוטבילי, חידתי" },
39
+ "dazed": { label: "מטומטם", description: "חולמני, נוכח לחצי" },
40
+ "sleepy": { label: "מנומנם", description: "מנמנם, עפעפיים כבדים" },
41
+ "unbothered": { label: "לא מוטרד", description: "שליטה עצמית רגועה" },
42
+
43
+ // Intense
44
+ "fierce": { label: "עז", description: "עז ומצווה" },
45
+ "determined": { label: "נחוש", description: "החלטי, רצון ממוקד" },
46
+ "passionate": { label: "נלהב", description: "תשוקה בוערת" },
47
+ "brooding": { label: "קודר", description: "מלנכוליה כהה ועמוקה" },
48
+ "seductive": { label: "מפתה", description: "מקסים, מפתה" },
49
+ "defiant": { label: "מתריס", description: "מתריס, בלתי כנוע" },
50
+ "sultry": { label: "חושני", description: "מעשן, עם עפעפיים כבדים" },
51
+ "smoldering": { label: "בוער לאט", description: "עוצמה כרוכה ובוערת לאט" },
52
+ "sinister": { label: "מאיים", description: "כהה, זדוני, מאיים" },
53
+ "wiccan-mystical": { label: "Wiccan / מיסטי", description: "אחר-עולמי בשקט, אזוטרי" },
54
+ "lazy-shy": { label: "ביישן עצל", description: "מנמנם, רך, ביישן למחצה" },
55
+ "awe": { label: "פליאה", description: "פלא, יראה" },
56
+ "shocked": { label: "המום", description: "מופתע, פה פתוח" },
57
+ "flirty": { label: "פלרטטני", description: "פלרטוט שובב, חיוך מתעכב, קשר עין מתמשך" },
58
+ "suspicious": { label: "חשדן", description: "אי-אמון זהיר, עיניים מצומצמות, מבט צד" },
59
+ "resigned": { label: "מושלם עם המצב", description: "השלמה שקטה עם מצב לא נעים" },
60
+ "conflicted": { label: "מתלבט", description: "מאבק פנימי גלוי, מצח מקומט" },
61
+ "relieved": { label: "מוקל", description: "המתח משתחרר לרוגע" },
62
+ }
63
+
64
+ export default map
@@ -0,0 +1,66 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // -------------------- Positive --------------------
5
+ "happy": { label: "ख़ुश", description: "गर्म, मुस्कुराती ख़ुशी" },
6
+ "joyful": { label: "हर्षित", description: "उज्ज्वल, बेलगाम आनंद" },
7
+ "serene": { label: "शांत", description: "शांत, peaceful संतोष" },
8
+ "playful": { label: "चंचल", description: "शरारती, चंचल ऊर्जा" },
9
+ "confident": { label: "आत्मविश्वासी", description: "Self-assured, आत्मविश्वासी" },
10
+ "loving": { label: "प्यार भरा", description: "कोमल, स्नेहपूर्ण" },
11
+ "amused": { label: "मनोरंजित", description: "हल्के से मनोरंजित, smirking" },
12
+ "smirking": { label: "Smirking", description: "घमंडी, अहंकारी मनोरंजन" },
13
+ "eccentric": { label: "विलक्षण", description: "अनोखा, अपरंपरागत" },
14
+ "hopeful": { label: "आशावान", description: "उज्ज्वल आँखों वाला, आशावादी" },
15
+
16
+ // -------------------- Negative --------------------
17
+ "sad": { label: "उदास", description: "शांति से उदास, downcast" },
18
+ "angry": { label: "ग़ुस्सा", description: "स्पष्ट ग़ुस्सा, तनाव" },
19
+ "afraid": { label: "डरा हुआ", description: "भयभीत, चौड़ी आँखें" },
20
+ "anxious": { label: "बेचैन", description: "घबराया हुआ, चिंतित" },
21
+ "melancholy": { label: "उदासी", description: "Wistful उदासी" },
22
+ "devastated": { label: "तबाह", description: "टूटे दिल वाला दुख" },
23
+ "grieving": { label: "शोक में", description: "गहरा शोक, हानि" },
24
+ "caught-off-guard": { label: "अचानक चौंका", description: "Mid-reaction में चौंका हुआ" },
25
+ "aloof": { label: "उदासीन", description: "विमुख, अरुचि" },
26
+ "vulnerable": { label: "कमज़ोर", description: "उजागर, असहाय" },
27
+ "coy": { label: "Coy", description: "शरमीला, downcast" },
28
+ "bored": { label: "ऊबा हुआ", description: "अरुचि, deadpan" },
29
+ "embarrassed": { label: "शर्मिंदा", description: "Blushing, आँखें झुकी हुई" },
30
+ "disgusted": { label: "घृणा भरा", description: "Repulsed, पीछे हटता हुआ" },
31
+ "bewildered": { label: "हैरान", description: "उलझा हुआ, खोया हुआ" },
32
+
33
+ // -------------------- Neutral --------------------
34
+ "thoughtful": { label: "विचारशील", description: "सोच में डूबा हुआ" },
35
+ "stoic": { label: "Stoic", description: "Impassive, अपठनीय" },
36
+ "calm": { label: "शांत", description: "केंद्रित, अप्रतिक्रियाशील" },
37
+ "curious": { label: "जिज्ञासु", description: "Intrigued, सतर्क" },
38
+ "mysterious": { label: "रहस्यमय", description: "अबूझ, पहेली जैसा" },
39
+ "dazed": { label: "हक्का-बक्का", description: "Dreamy, आधा-उपस्थित" },
40
+ "sleepy": { label: "नींद भरा", description: "Drowsy, भारी पलकों वाला" },
41
+ "unbothered": { label: "बेपरवाह", description: "शांत self-possession" },
42
+
43
+ // -------------------- Intense --------------------
44
+ "fierce": { label: "उग्र", description: "उग्र, दमदार" },
45
+ "determined": { label: "दृढ़", description: "Resolute, केंद्रित इच्छाशक्ति" },
46
+ "passionate": { label: "जोशीला", description: "जलता हुआ जुनून" },
47
+ "brooding": { label: "Brooding", description: "गहरी, brooding melancholy" },
48
+ "seductive": { label: "Seductive", description: "आकर्षक, मोहक" },
49
+ "defiant": { label: "विद्रोही", description: "विद्रोही, अडिग" },
50
+ "sultry": { label: "Sultry", description: "Smoldering, भारी पलकों वाला" },
51
+ "smoldering": { label: "Smoldering", description: "Coiled, धीमी-जलती तीव्रता" },
52
+ "sinister": { label: "अशुभ", description: "गहरा, दुर्भावनापूर्ण, धमकीभरा" },
53
+ "wiccan-mystical": { label: "Wiccan / Mystical", description: "शांति से अलौकिक, occult" },
54
+ "lazy-shy": { label: "Lazy Shy", description: "Drowsy, मुलायम, आधा-शरमीला" },
55
+ "awe": { label: "विस्मय", description: "अचंभा, श्रद्धावान" },
56
+ "shocked": { label: "हैरान", description: "चौंका हुआ, मुँह खुला" },
57
+
58
+ // -------------------- Round 2 --------------------
59
+ "flirty": { label: "Flirty", description: "चंचल flirtation, ठहरी हुई मुस्कान, बनाए रखा eye contact" },
60
+ "suspicious": { label: "संदेहास्पद", description: "सावधान अविश्वास, सिकुड़ी आँखें, side-eye" },
61
+ "resigned": { label: "विवश", description: "किसी अप्रिय स्थिति की शांत स्वीकार्यता" },
62
+ "conflicted": { label: "द्वंद्वग्रस्त", description: "दिखाई देता आंतरिक संघर्ष, भौंहें सिकुड़ी हुई" },
63
+ "relieved": { label: "राहत", description: "तनाव शांत हो जाता है" },
64
+ }
65
+
66
+ export default map
@@ -0,0 +1,66 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // Positive
5
+ "happy": { label: "幸せ", description: "暖かく微笑む幸せ" },
6
+ "joyful": { label: "喜びにあふれた", description: "輝かしく抑えのない喜び" },
7
+ "serene": { label: "穏やか", description: "静かで平和な満足感" },
8
+ "playful": { label: "遊び心のある", description: "いたずらっぽい遊び心のあるエネルギー" },
9
+ "confident": { label: "自信に満ちた", description: "自己を確信した自信" },
10
+ "loving": { label: "愛に満ちた", description: "優しく愛情深い" },
11
+ "amused": { label: "面白がっている", description: "微妙に面白がってにやりとする" },
12
+ "smirking": { label: "ニヤつく", description: "生意気で傲慢な笑み" },
13
+ "eccentric": { label: "風変わり", description: "風変わりで型破り" },
14
+ "hopeful": { label: "希望に満ちた", description: "目を輝かせ楽観的" },
15
+
16
+ // Negative
17
+ "sad": { label: "悲しい", description: "静かに悲しく、うつむきがち" },
18
+ "angry": { label: "怒っている", description: "明確な怒り、緊張" },
19
+ "afraid": { label: "怯えた", description: "怯えて目を見開く" },
20
+ "anxious": { label: "不安", description: "神経質で心配そう" },
21
+ "melancholy": { label: "憂鬱", description: "切ない悲しみ" },
22
+ "devastated": { label: "打ちひしがれた", description: "心が砕けるような悲しみ" },
23
+ "grieving": { label: "悲嘆に暮れる", description: "深い悲しみ、喪失" },
24
+ "caught-off-guard": { label: "不意を突かれた", description: "反応の途中で驚いた" },
25
+ "aloof": { label: "よそよそしい", description: "引きこもり、興味なさげ" },
26
+ "vulnerable": { label: "傷つきやすい", description: "さらされ無防備" },
27
+ "coy": { label: "はにかみ", description: "恥ずかしげで伏し目がち" },
28
+ "bored": { label: "退屈", description: "無関心で無表情" },
29
+ "embarrassed": { label: "恥ずかしがった", description: "頬を赤らめ、目をそらす" },
30
+ "disgusted": { label: "うんざり", description: "嫌悪感、後ずさり" },
31
+ "bewildered": { label: "困惑", description: "混乱して途方に暮れる" },
32
+
33
+ // Neutral
34
+ "thoughtful": { label: "思索的", description: "深く考えている" },
35
+ "stoic": { label: "ストイック", description: "無表情で読み取れない" },
36
+ "calm": { label: "落ち着いた", description: "中心が取れていて反応しない" },
37
+ "curious": { label: "好奇心旺盛", description: "興味津々で警戒している" },
38
+ "mysterious": { label: "ミステリアス", description: "底の知れない神秘的" },
39
+ "dazed": { label: "ぼんやり", description: "夢見心地で半分上の空" },
40
+ "sleepy": { label: "眠そう", description: "うとうとして瞼が重い" },
41
+ "unbothered": { label: "気にしていない", description: "落ち着いた自己の確信" },
42
+
43
+ // Intense
44
+ "fierce": { label: "猛々しい", description: "猛々しく堂々とした" },
45
+ "determined": { label: "決意に満ちた", description: "毅然とした集中した意志" },
46
+ "passionate": { label: "情熱的", description: "燃えるような情熱" },
47
+ "brooding": { label: "陰鬱", description: "暗く陰鬱な憂鬱" },
48
+ "seductive": { label: "誘惑的", description: "魅惑的で誘惑的" },
49
+ "defiant": { label: "反抗的", description: "反抗的で屈しない" },
50
+ "sultry": { label: "妖艶", description: "燻るような、瞼の重い" },
51
+ "smoldering": { label: "燻る", description: "丸まって、ゆっくり燃える強烈さ" },
52
+ "sinister": { label: "邪悪", description: "暗く悪意あり、脅威的" },
53
+ "wiccan-mystical": { label: "ウィッカン/神秘的", description: "静かに異世界的でオカルト的" },
54
+ "lazy-shy": { label: "怠惰でシャイ", description: "うとうと、柔らかく半ばシャイ" },
55
+ "awe": { label: "畏敬", description: "驚嘆、畏れに満ちた" },
56
+ "shocked": { label: "ショック", description: "驚いて口を開ける" },
57
+
58
+ // Additional moods
59
+ "flirty": { label: "フリーティ", description: "遊び心のある誘い、長く残る笑み、続くアイコンタクト" },
60
+ "suspicious": { label: "疑わしい", description: "警戒した不信、細めた目、横目" },
61
+ "resigned": { label: "諦念", description: "不快な状況を静かに受け入れる" },
62
+ "conflicted": { label: "葛藤", description: "目に見える内的葛藤、寄せた眉" },
63
+ "relieved": { label: "安堵", description: "緊張が解けて穏やかに" },
64
+ }
65
+
66
+ export default map
@@ -0,0 +1,66 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // Positive
5
+ "happy": { label: "행복", description: "따뜻하고 미소 짓는 행복한 표정입니다" },
6
+ "joyful": { label: "기쁨", description: "거리낌없는 빛나는 기쁨입니다" },
7
+ "serene": { label: "평온", description: "고요하고 평화로운 만족감입니다" },
8
+ "playful": { label: "장난스러움", description: "장난기 어린 활기찬 에너지입니다" },
9
+ "confident": { label: "자신감 있는", description: "자신감 있고 당당한 표정입니다" },
10
+ "loving": { label: "사랑스러운", description: "다정하고 애정 어린 표정입니다" },
11
+ "amused": { label: "재미있어하는", description: "은은하게 재미있어하며 미소 짓는 표정입니다" },
12
+ "smirking": { label: "비웃는", description: "거만하고 자신만만한 즐거움입니다" },
13
+ "eccentric": { label: "엉뚱한", description: "독특하고 비관습적인 분위기입니다" },
14
+ "hopeful": { label: "희망찬", description: "반짝이는 눈의 낙관적인 표정입니다" },
15
+
16
+ // Negative
17
+ "sad": { label: "슬픈", description: "조용히 슬프고 풀 죽은 표정입니다" },
18
+ "angry": { label: "화난", description: "분명한 분노와 긴장입니다" },
19
+ "afraid": { label: "두려워하는", description: "겁먹은 휘둥그레진 눈입니다" },
20
+ "anxious": { label: "불안한", description: "긴장하고 걱정스러운 표정입니다" },
21
+ "melancholy": { label: "우울한", description: "아련한 슬픔입니다" },
22
+ "devastated": { label: "망연자실한", description: "마음이 무너진 비탄입니다" },
23
+ "grieving": { label: "비탄에 잠긴", description: "깊은 슬픔과 상실감입니다" },
24
+ "caught-off-guard": { label: "허를 찔린", description: "놀라서 반응 중인 표정입니다" },
25
+ "aloof": { label: "냉담한", description: "위축되고 무관심한 표정입니다" },
26
+ "vulnerable": { label: "취약한", description: "노출되고 무방비한 표정입니다" },
27
+ "coy": { label: "수줍은", description: "수줍고 시선을 떨군 표정입니다" },
28
+ "bored": { label: "지루한", description: "흥미를 잃은 무덤덤한 표정입니다" },
29
+ "embarrassed": { label: "당황한", description: "얼굴이 붉어지고 시선을 피하는 표정입니다" },
30
+ "disgusted": { label: "혐오스러워하는", description: "혐오해 움찔하는 표정입니다" },
31
+ "bewildered": { label: "당혹스러운", description: "혼란스럽고 길을 잃은 표정입니다" },
32
+
33
+ // Neutral / Contemplative
34
+ "thoughtful": { label: "사색적인", description: "깊이 생각에 잠긴 표정입니다" },
35
+ "stoic": { label: "스토익한", description: "냉정하고 읽을 수 없는 표정입니다" },
36
+ "calm": { label: "차분한", description: "중심 잡힌 무반응의 표정입니다" },
37
+ "curious": { label: "호기심 있는", description: "흥미를 느끼며 기민한 표정입니다" },
38
+ "mysterious": { label: "신비로운", description: "헤아릴 수 없고 수수께끼 같은 표정입니다" },
39
+ "dazed": { label: "멍한", description: "꿈꾸는 듯 반쯤 정신이 나간 표정입니다" },
40
+ "sleepy": { label: "졸린", description: "졸리고 눈꺼풀이 무거운 표정입니다" },
41
+ "unbothered": { label: "신경 쓰지 않는", description: "차분한 자기 절제의 표정입니다" },
42
+
43
+ // Intense / Dramatic
44
+ "fierce": { label: "맹렬한", description: "맹렬하고 위엄 있는 표정입니다" },
45
+ "determined": { label: "결연한", description: "단호하고 집중된 의지입니다" },
46
+ "passionate": { label: "열정적인", description: "타오르는 열정입니다" },
47
+ "brooding": { label: "어두운 생각에 잠긴", description: "어둡고 침울한 우울입니다" },
48
+ "seductive": { label: "유혹적인", description: "매혹적이고 유혹적인 표정입니다" },
49
+ "defiant": { label: "반항적인", description: "반항적이고 굴하지 않는 표정입니다" },
50
+ "sultry": { label: "관능적인", description: "타오르는 듯 눈꺼풀이 무거운 표정입니다" },
51
+ "smoldering": { label: "타오르는", description: "응축된, 천천히 타오르는 강렬함입니다" },
52
+ "sinister": { label: "음흉한", description: "어둡고 악의적이며 위협적인 표정입니다" },
53
+ "wiccan-mystical": { label: "위칸 / 신비로운", description: "조용히 이세계적이고 오컬트적인 분위기입니다" },
54
+ "lazy-shy": { label: "게으르고 수줍은", description: "졸리고 부드러우며 반쯤 수줍은 표정입니다" },
55
+ "awe": { label: "경이로움", description: "경건한 경외의 감정입니다" },
56
+ "shocked": { label: "충격받은", description: "놀라서 입을 벌린 표정입니다" },
57
+
58
+ // Additional moods
59
+ "flirty": { label: "플러티", description: "장난스럽게 추파를 던지며 머무는 미소와 지속적인 시선 교환입니다" },
60
+ "suspicious": { label: "의심하는", description: "경계하는 불신, 가늘게 뜬 눈, 곁눈질입니다" },
61
+ "resigned": { label: "체념한", description: "불쾌한 상황을 조용히 받아들이는 표정입니다" },
62
+ "conflicted": { label: "갈등하는", description: "내면의 갈등이 보이고 미간이 찌푸려진 표정입니다" },
63
+ "relieved": { label: "안도", description: "긴장이 풀리며 차분해짐" },
64
+ }
65
+
66
+ export default map
@@ -0,0 +1,64 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // Positive
5
+ "happy": { label: "Feliz", description: "Felicidade calorosa e sorridente" },
6
+ "joyful": { label: "Alegre", description: "Alegria radiante e sem reservas" },
7
+ "serene": { label: "Sereno", description: "Contentamento calmo e tranquilo" },
8
+ "playful": { label: "Brincalhão", description: "Energia travessa e brincalhona" },
9
+ "confident": { label: "Confiante", description: "Autoconfiança, seguro de si" },
10
+ "loving": { label: "Amoroso", description: "Carinhoso e afetuoso" },
11
+ "amused": { label: "Divertido", description: "Sutilmente divertido, com sorrisinho" },
12
+ "smirking": { label: "Sorriso de Canto", description: "Diversão arrogante e convencida" },
13
+ "eccentric": { label: "Excêntrico", description: "Peculiar, sem convenções" },
14
+ "hopeful": { label: "Esperançoso", description: "Olhar brilhante e otimista" },
15
+
16
+ // Negative
17
+ "sad": { label: "Triste", description: "Tristeza silenciosa, cabisbaixo" },
18
+ "angry": { label: "Bravo", description: "Raiva clara, tensão" },
19
+ "afraid": { label: "Assustado", description: "Amedrontado, olhos arregalados" },
20
+ "anxious": { label: "Ansioso", description: "Nervoso, preocupado" },
21
+ "melancholy": { label: "Melancólico", description: "Tristeza saudosa" },
22
+ "devastated": { label: "Devastado", description: "Coração partido em luto" },
23
+ "grieving": { label: "Em Luto", description: "Luto profundo, perda" },
24
+ "caught-off-guard": { label: "Pego de Surpresa", description: "Assustado em pleno meio de reação" },
25
+ "aloof": { label: "Distante", description: "Recolhido, desinteressado" },
26
+ "vulnerable": { label: "Vulnerável", description: "Exposto, indefeso" },
27
+ "coy": { label: "Reservado", description: "Tímido, cabisbaixo" },
28
+ "bored": { label: "Entediado", description: "Desinteressado, inexpressivo" },
29
+ "embarrassed": { label: "Envergonhado", description: "Corado, olhos desviados" },
30
+ "disgusted": { label: "Enojado", description: "Repugnado, recuando" },
31
+ "bewildered": { label: "Atônito", description: "Confuso, perdido" },
32
+
33
+ // Neutral
34
+ "thoughtful": { label: "Pensativo", description: "Profundamente em pensamento" },
35
+ "stoic": { label: "Estoico", description: "Impassível, ilegível" },
36
+ "calm": { label: "Calmo", description: "Centrado, sem reagir" },
37
+ "curious": { label: "Curioso", description: "Intrigado, atento" },
38
+ "mysterious": { label: "Misterioso", description: "Inescrutável, enigmático" },
39
+ "dazed": { label: "Atordoado", description: "Sonhador, meio presente" },
40
+ "sleepy": { label: "Sonolento", description: "Sonolento, pálpebras pesadas" },
41
+ "unbothered": { label: "Imperturbável", description: "Calma autocontida" },
42
+
43
+ // Intense
44
+ "fierce": { label: "Feroz", description: "Feroz, dominador" },
45
+ "determined": { label: "Determinado", description: "Vontade resoluta e focada" },
46
+ "passionate": { label: "Apaixonado", description: "Paixão ardente" },
47
+ "brooding": { label: "Sombrio", description: "Melancolia escura e meditativa" },
48
+ "seductive": { label: "Sedutor", description: "Atraente, sedutor" },
49
+ "defiant": { label: "Desafiador", description: "Desafiador, irredutível" },
50
+ "sultry": { label: "Sensual", description: "Quente, com pálpebras pesadas" },
51
+ "smoldering": { label: "Ardente", description: "Intensidade contida e em brasa" },
52
+ "sinister": { label: "Sinistro", description: "Escuro, malicioso, ameaçador" },
53
+ "wiccan-mystical": { label: "Wiccana / Mística", description: "Discretamente sobrenatural, oculta" },
54
+ "lazy-shy": { label: "Preguiçoso e Tímido", description: "Sonolento, suave, meio tímido" },
55
+ "awe": { label: "Maravilhado", description: "Admiração, reverente" },
56
+ "shocked": { label: "Chocado", description: "Surpreso, boca aberta" },
57
+ "flirty": { label: "Flertando", description: "Flerte brincalhão, sorriso demorado, contato visual mantido" },
58
+ "suspicious": { label: "Desconfiado", description: "Desconfiança alerta, olhos estreitados, olhar de canto" },
59
+ "resigned": { label: "Resignado", description: "Aceitação silenciosa de uma situação desagradável" },
60
+ "conflicted": { label: "Conflituado", description: "Luta interna visível, sobrancelhas franzidas" },
61
+ "relieved": { label: "Aliviado", description: "A tensão se dissolve em calma" },
62
+ }
63
+
64
+ export default map
@@ -0,0 +1,64 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // -------------------- Positive --------------------
5
+ "happy": { label: "Счастливый", description: "Тёплое, улыбчивое счастье" },
6
+ "joyful": { label: "Радостный", description: "Сияющая, безудержная радость" },
7
+ "serene": { label: "Безмятежный", description: "Спокойное мирное удовлетворение" },
8
+ "playful": { label: "Игривый", description: "Озорная, игривая энергия" },
9
+ "confident": { label: "Уверенный", description: "Самоуверенный, уверенный" },
10
+ "loving": { label: "Любящий", description: "Нежный, ласковый" },
11
+ "amused": { label: "Развеселённый", description: "Слегка развеселённый, ухмылка" },
12
+ "smirking": { label: "Ухмыляющийся", description: "Самодовольное, надменное веселье" },
13
+ "eccentric": { label: "Эксцентричный", description: "Странный, нетрадиционный" },
14
+ "hopeful": { label: "Полный надежды", description: "С блеском в глазах, оптимистичный" },
15
+
16
+ // -------------------- Negative --------------------
17
+ "sad": { label: "Грустный", description: "Тихая грусть, опустивший взгляд" },
18
+ "angry": { label: "Сердитый", description: "Явный гнев, напряжение" },
19
+ "afraid": { label: "Испуганный", description: "Напуганный, с расширенными глазами" },
20
+ "anxious": { label: "Тревожный", description: "Нервный, обеспокоенный" },
21
+ "melancholy": { label: "Меланхоличный", description: "Тоскливая печаль" },
22
+ "devastated": { label: "Опустошённый", description: "Раздавленное горе" },
23
+ "grieving": { label: "Скорбящий", description: "Глубокое горе, утрата" },
24
+ "caught-off-guard": { label: "Застигнутый врасплох", description: "Испуганный посреди реакции" },
25
+ "aloof": { label: "Отстранённый", description: "Замкнутый, незаинтересованный" },
26
+ "vulnerable": { label: "Уязвимый", description: "Обнажённый, беззащитный" },
27
+ "coy": { label: "Кокетливый", description: "Робкий, опустивший глаза" },
28
+ "bored": { label: "Скучающий", description: "Незаинтересованный, безучастный" },
29
+ "embarrassed": { label: "Смущённый", description: "Покрасневший, отводящий взгляд" },
30
+ "disgusted": { label: "Отвращённый", description: "С отвращением, отшатывающийся" },
31
+ "bewildered": { label: "Озадаченный", description: "Растерянный, потерянный" },
32
+
33
+ // -------------------- Neutral / Contemplative --------------------
34
+ "thoughtful": { label: "Задумчивый", description: "Глубоко в мыслях" },
35
+ "stoic": { label: "Стоический", description: "Бесстрастный, нечитаемый" },
36
+ "calm": { label: "Спокойный", description: "Сосредоточенный, нереактивный" },
37
+ "curious": { label: "Любопытный", description: "Заинтригованный, настороженный" },
38
+ "mysterious": { label: "Загадочный", description: "Непостижимый, загадочный" },
39
+ "dazed": { label: "Ошеломлённый", description: "Мечтательный, наполовину присутствующий" },
40
+ "sleepy": { label: "Сонный", description: "Дремотный, с тяжёлыми веками" },
41
+ "unbothered": { label: "Невозмутимый", description: "Спокойное самообладание" },
42
+
43
+ // -------------------- Intense / Dramatic --------------------
44
+ "fierce": { label: "Свирепый", description: "Свирепый, повелевающий" },
45
+ "determined": { label: "Решительный", description: "Решительный, сосредоточенная воля" },
46
+ "passionate": { label: "Страстный", description: "Горящая страсть" },
47
+ "brooding": { label: "Угрюмый", description: "Тёмная, угрюмая меланхолия" },
48
+ "seductive": { label: "Соблазнительный", description: "Манящий, соблазнительный" },
49
+ "defiant": { label: "Дерзкий", description: "Дерзкий, непреклонный" },
50
+ "sultry": { label: "Знойный", description: "Тлеющий, с тяжёлыми веками" },
51
+ "smoldering": { label: "Тлеющий", description: "Сжатая, медленно горящая интенсивность" },
52
+ "sinister": { label: "Зловещий", description: "Тёмный, злобный, угрожающий" },
53
+ "wiccan-mystical": { label: "Викканский / Мистический", description: "Тихо потусторонний, оккультный" },
54
+ "lazy-shy": { label: "Ленивая стеснительность", description: "Дремотный, мягкий, наполовину застенчивый" },
55
+ "awe": { label: "Благоговение", description: "Чудо, благоговейный" },
56
+ "shocked": { label: "Шокированный", description: "Удивлённый, рот открыт" },
57
+ "flirty": { label: "Кокетливый", description: "Игривое заигрывание, задержавшаяся улыбка, продолжительный зрительный контакт" },
58
+ "suspicious": { label: "Подозрительный", description: "Настороженное недоверие, прищуренные глаза, косой взгляд" },
59
+ "resigned": { label: "Смирившийся", description: "Тихое принятие неприятной ситуации" },
60
+ "conflicted": { label: "Раздираемый", description: "Видимая внутренняя борьба, нахмуренные брови" },
61
+ "relieved": { label: "Облегчение", description: "Напряжение сменяется покоем" },
62
+ }
63
+
64
+ export default map
@@ -0,0 +1,64 @@
1
+ import type { LocaleCatalogMap } from "./types.js"
2
+
3
+ const map: LocaleCatalogMap = {
4
+ // -------------------- Positive --------------------
5
+ "happy": { label: "开心", description: "温暖、带笑意的开心" },
6
+ "joyful": { label: "欣喜", description: "灿烂、不加掩饰的喜悦" },
7
+ "serene": { label: "宁静", description: "平和、安详的满足" },
8
+ "playful": { label: "顽皮", description: "调皮、玩闹的能量" },
9
+ "confident": { label: "自信", description: "坚定、自信" },
10
+ "loving": { label: "深情", description: "温柔、充满爱意" },
11
+ "amused": { label: "暗自好笑", description: "微微好笑、嘴角上扬" },
12
+ "smirking": { label: "斜笑", description: "傲慢自负的好笑" },
13
+ "eccentric": { label: "古怪", description: "古怪、不落俗套" },
14
+ "hopeful": { label: "充满希望", description: "眼神明亮、乐观" },
15
+
16
+ // -------------------- Negative --------------------
17
+ "sad": { label: "悲伤", description: "安静地悲伤、目光低垂" },
18
+ "angry": { label: "愤怒", description: "明显的愤怒与紧绷" },
19
+ "afraid": { label: "恐惧", description: "受惊、瞪大眼睛" },
20
+ "anxious": { label: "焦虑", description: "紧张、忧虑" },
21
+ "melancholy": { label: "忧郁", description: "怅惘的悲伤" },
22
+ "devastated": { label: "心碎", description: "心碎欲绝的悲恸" },
23
+ "grieving": { label: "悲恸", description: "深切的悲恸与失去感" },
24
+ "caught-off-guard":{ label: "措手不及", description: "反应一半时的惊愕" },
25
+ "aloof": { label: "疏离", description: "退避、毫无兴趣" },
26
+ "vulnerable": { label: "脆弱", description: "暴露、毫无防备" },
27
+ "coy": { label: "腼腆", description: "羞怯、目光低垂" },
28
+ "bored": { label: "无聊", description: "毫无兴趣、面无表情" },
29
+ "embarrassed": { label: "尴尬", description: "脸红、目光躲闪" },
30
+ "disgusted": { label: "厌恶", description: "嫌恶、向后退缩" },
31
+ "bewildered": { label: "困惑", description: "迷茫、不知所措" },
32
+
33
+ // -------------------- Neutral --------------------
34
+ "thoughtful": { label: "深思", description: "陷入沉思" },
35
+ "stoic": { label: "克制", description: "面无表情、不可读" },
36
+ "calm": { label: "平静", description: "沉着、不动声色" },
37
+ "curious": { label: "好奇", description: "好奇、机敏" },
38
+ "mysterious": { label: "神秘", description: "高深莫测、难以捉摸" },
39
+ "dazed": { label: "恍惚", description: "梦幻般、神思半离" },
40
+ "sleepy": { label: "困倦", description: "昏昏欲睡、眼帘沉重" },
41
+ "unbothered": { label: "毫不在意", description: "镇定自若的从容" },
42
+
43
+ // -------------------- Intense --------------------
44
+ "fierce": { label: "凶猛", description: "凶猛、统领全场" },
45
+ "determined": { label: "坚定", description: "果断、专注的意志" },
46
+ "passionate": { label: "热烈", description: "燃烧般的热情" },
47
+ "brooding": { label: "阴郁沉思", description: "黑暗、阴郁的忧郁" },
48
+ "seductive": { label: "诱惑", description: "诱人、勾魂" },
49
+ "defiant": { label: "挑衅不屈", description: "挑衅、毫不让步" },
50
+ "sultry": { label: "撩人", description: "缱绻、眼帘低垂" },
51
+ "smoldering": { label: "暗涌", description: "压抑、缓慢燃烧的强烈感" },
52
+ "sinister": { label: "阴险", description: "黑暗、阴险、带威胁" },
53
+ "wiccan-mystical":{ label: "神秘巫女",description: "安静的超凡、带神秘色彩" },
54
+ "lazy-shy": { label: "慵懒带羞", description: "昏昏欲睡、柔软、半带羞涩" },
55
+ "awe": { label: "敬畏", description: "惊叹、敬仰" },
56
+ "shocked": { label: "震惊", description: "惊讶、张口呆视" },
57
+ "flirty": { label: "撩人", description: "调皮的眉目传情、含笑不去、持续的眼神交流" },
58
+ "suspicious": { label: "起疑", description: "戒备性的不信任、眯起的眼睛、斜睨" },
59
+ "resigned": { label: "认命", description: "对不愉快境遇的安静接受" },
60
+ "conflicted": { label: "矛盾", description: "可见的内心挣扎、眉头紧锁" },
61
+ "relieved": { label: "如释重负", description: "紧张化为平静" },
62
+ }
63
+
64
+ export default map