@xivdyetools/core 1.6.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +17 -2
  2. package/dist/data/character_colors.json +1 -0
  3. package/dist/data/locales/de.json +1 -1
  4. package/dist/data/locales/en.json +1 -1
  5. package/dist/data/locales/fr.json +1 -1
  6. package/dist/data/locales/ja.json +1 -1
  7. package/dist/index.d.ts +6 -2
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +5 -1
  10. package/dist/index.js.map +1 -1
  11. package/dist/services/CharacterColorService.d.ts +125 -0
  12. package/dist/services/CharacterColorService.d.ts.map +1 -0
  13. package/dist/services/CharacterColorService.js +223 -0
  14. package/dist/services/CharacterColorService.js.map +1 -0
  15. package/dist/services/DyeService.d.ts +30 -9
  16. package/dist/services/DyeService.d.ts.map +1 -1
  17. package/dist/services/DyeService.js +38 -18
  18. package/dist/services/DyeService.js.map +1 -1
  19. package/dist/services/color/ColorConverter.d.ts +74 -1
  20. package/dist/services/color/ColorConverter.d.ts.map +1 -1
  21. package/dist/services/color/ColorConverter.js +212 -0
  22. package/dist/services/color/ColorConverter.js.map +1 -1
  23. package/dist/services/dye/DyeDatabase.d.ts +5 -2
  24. package/dist/services/dye/DyeDatabase.d.ts.map +1 -1
  25. package/dist/services/dye/DyeDatabase.js +21 -1
  26. package/dist/services/dye/DyeDatabase.js.map +1 -1
  27. package/dist/services/dye/HarmonyGenerator.d.ts +82 -11
  28. package/dist/services/dye/HarmonyGenerator.d.ts.map +1 -1
  29. package/dist/services/dye/HarmonyGenerator.js +130 -21
  30. package/dist/services/dye/HarmonyGenerator.js.map +1 -1
  31. package/dist/types/index.d.ts +6 -1
  32. package/dist/types/index.d.ts.map +1 -1
  33. package/dist/types/index.js +1 -0
  34. package/dist/types/index.js.map +1 -1
  35. package/dist/version.d.ts +1 -1
  36. package/dist/version.js +1 -1
  37. package/package.json +2 -2
package/README.md CHANGED
@@ -102,6 +102,11 @@ const simulated = ColorService.simulateColorblindness(
102
102
  // Color distance (Euclidean in RGB space)
103
103
  const distance = ColorService.getColorDistance('#FF0000', '#00FF00');
104
104
 
105
+ // LAB color space and DeltaE (perceptual color difference)
106
+ const lab = ColorService.hexToLab('#FF6B6B');
107
+ const deltaE = ColorService.getDeltaE('#FF0000', '#FF6B6B'); // CIE76 by default
108
+ const deltaE2000 = ColorService.getDeltaE('#FF0000', '#FF6B6B', 'cie2000'); // CIEDE2000
109
+
105
110
  // Color inversion
106
111
  const inverted = ColorService.invert('#FF6B6B');
107
112
 
@@ -129,13 +134,19 @@ const categories = dyeService.getCategories(); // ['Neutral', 'Red', 'Blue', ...
129
134
  const closest = dyeService.findClosestDye('#FF6B6B');
130
135
  const nearby = dyeService.findDyesWithinDistance('#FF6B6B', 50, 5);
131
136
 
132
- // Harmony generation
137
+ // Harmony generation (default: fast hue-based matching)
133
138
  const triadic = dyeService.findTriadicDyes('#FF6B6B');
134
139
  const complementary = dyeService.findComplementaryPair('#FF6B6B');
135
140
  const analogous = dyeService.findAnalogousDyes('#FF6B6B', 30);
136
141
  const monochromatic = dyeService.findMonochromaticDyes('#FF6B6B', 6);
137
142
  const splitComplementary = dyeService.findSplitComplementaryDyes('#FF6B6B');
138
143
 
144
+ // DeltaE-based harmony (perceptually accurate matching)
145
+ const triadicDeltaE = dyeService.findTriadicDyes('#FF6B6B', {
146
+ algorithm: 'deltaE',
147
+ deltaEFormula: 'cie2000', // or 'cie76' (faster, default)
148
+ });
149
+
139
150
  // Filtering
140
151
  const redDyes = dyeService.searchByCategory('Red');
141
152
  const searchResults = dyeService.searchByName('black');
@@ -262,12 +273,16 @@ import type {
262
273
  Dye,
263
274
  RGB,
264
275
  HSV,
276
+ LAB,
265
277
  HexColor,
266
278
  PriceData,
267
279
  CachedData,
268
280
  VisionType,
269
281
  ErrorSeverity,
270
- ICacheBackend
282
+ ICacheBackend,
283
+ HarmonyOptions,
284
+ HarmonyMatchingAlgorithm,
285
+ DeltaEFormula
271
286
  } from 'xivdyetools-core';
272
287
  ```
273
288