@xivdyetools/core 2.7.0 → 4.0.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.
- package/README.md +85 -67
- package/dist/blending/blending.d.ts +22 -0
- package/dist/blending/blending.d.ts.map +1 -0
- package/dist/blending/blending.js +129 -0
- package/dist/blending/blending.js.map +1 -0
- package/dist/blending/conversions.d.ts +53 -0
- package/dist/blending/conversions.d.ts.map +1 -0
- package/dist/blending/conversions.js +256 -0
- package/dist/blending/conversions.js.map +1 -0
- package/dist/blending/index.d.ts +8 -0
- package/dist/blending/index.d.ts.map +1 -0
- package/dist/blending/index.js +3 -0
- package/dist/blending/index.js.map +1 -0
- package/dist/blending/types.d.ts +36 -0
- package/dist/blending/types.d.ts.map +1 -0
- package/dist/blending/types.js +21 -0
- package/dist/blending/types.js.map +1 -0
- package/dist/config/band-calibration.d.ts +68 -0
- package/dist/config/band-calibration.d.ts.map +1 -0
- package/dist/config/band-calibration.js +196 -0
- package/dist/config/band-calibration.js.map +1 -0
- package/dist/config/band-vocabulary.d.ts +82 -0
- package/dist/config/band-vocabulary.d.ts.map +1 -0
- package/dist/config/band-vocabulary.js +117 -0
- package/dist/config/band-vocabulary.js.map +1 -0
- package/dist/config/consolidated-ids.js +2 -2
- package/dist/config/consolidated-ids.js.map +1 -1
- package/dist/config/dye-vocabulary.d.ts +45 -0
- package/dist/config/dye-vocabulary.d.ts.map +1 -0
- package/dist/config/dye-vocabulary.js +58 -0
- package/dist/config/dye-vocabulary.js.map +1 -0
- package/dist/config/facewear.d.ts +24 -0
- package/dist/config/facewear.d.ts.map +1 -0
- package/dist/config/facewear.js +35 -0
- package/dist/config/facewear.js.map +1 -0
- package/dist/config/learn-links.d.ts +70 -0
- package/dist/config/learn-links.d.ts.map +1 -0
- package/dist/config/learn-links.js +171 -0
- package/dist/config/learn-links.js.map +1 -0
- package/dist/config/product-links.d.ts +44 -0
- package/dist/config/product-links.d.ts.map +1 -0
- package/dist/config/product-links.js +44 -0
- package/dist/config/product-links.js.map +1 -0
- package/dist/constants/index.d.ts +14 -1
- package/dist/constants/index.d.ts.map +1 -1
- package/dist/constants/index.js +38 -22
- package/dist/constants/index.js.map +1 -1
- package/dist/data/character_colors/race_specific/hair_colors.json +1 -1
- package/dist/data/character_colors/race_specific/skin_colors.json +1 -1
- package/dist/data/dyes.json +1127 -0
- package/dist/data/facewear_colors.json +57 -0
- package/dist/data/locales/de.json +4 -50
- package/dist/data/locales/en.json +4 -50
- package/dist/data/locales/fr.json +4 -50
- package/dist/data/locales/ja.json +4 -50
- package/dist/data/locales/ko.json +4 -50
- package/dist/data/locales/zh.json +4 -50
- package/dist/data/presets.json +59 -301
- package/dist/index.d.ts +156 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +114 -10
- package/dist/index.js.map +1 -1
- package/dist/services/APIService.d.ts +7 -61
- package/dist/services/APIService.d.ts.map +1 -1
- package/dist/services/APIService.js +43 -154
- package/dist/services/APIService.js.map +1 -1
- package/dist/services/CharacterColorService.d.ts +4 -36
- package/dist/services/CharacterColorService.d.ts.map +1 -1
- package/dist/services/CharacterColorService.js +16 -68
- package/dist/services/CharacterColorService.js.map +1 -1
- package/dist/services/ColorService.d.ts +55 -68
- package/dist/services/ColorService.d.ts.map +1 -1
- package/dist/services/ColorService.js +86 -94
- package/dist/services/ColorService.js.map +1 -1
- package/dist/services/DyeService.d.ts +10 -103
- package/dist/services/DyeService.d.ts.map +1 -1
- package/dist/services/DyeService.js +13 -156
- package/dist/services/DyeService.js.map +1 -1
- package/dist/services/LocalizationService.d.ts +1 -33
- package/dist/services/LocalizationService.d.ts.map +1 -1
- package/dist/services/LocalizationService.js +0 -44
- package/dist/services/LocalizationService.js.map +1 -1
- package/dist/services/PaletteService.d.ts +8 -9
- package/dist/services/PaletteService.d.ts.map +1 -1
- package/dist/services/PaletteService.js +2 -21
- package/dist/services/PaletteService.js.map +1 -1
- package/dist/services/PresetService.d.ts +2 -34
- package/dist/services/PresetService.d.ts.map +1 -1
- package/dist/services/PresetService.js +12 -59
- package/dist/services/PresetService.js.map +1 -1
- package/dist/services/chara/chara-models.d.ts +68 -0
- package/dist/services/chara/chara-models.d.ts.map +1 -0
- package/dist/services/chara/chara-models.js +87 -0
- package/dist/services/chara/chara-models.js.map +1 -0
- package/dist/services/chara/chara-parser.d.ts +95 -0
- package/dist/services/chara/chara-parser.d.ts.map +1 -0
- package/dist/services/chara/chara-parser.js +299 -0
- package/dist/services/chara/chara-parser.js.map +1 -0
- package/dist/services/chara/chara-resolver.d.ts +103 -0
- package/dist/services/chara/chara-resolver.d.ts.map +1 -0
- package/dist/services/chara/chara-resolver.js +233 -0
- package/dist/services/chara/chara-resolver.js.map +1 -0
- package/dist/services/color/ColorConverter.d.ts +107 -35
- package/dist/services/color/ColorConverter.d.ts.map +1 -1
- package/dist/services/color/ColorConverter.js +159 -48
- package/dist/services/color/ColorConverter.js.map +1 -1
- package/dist/services/color/ColorManipulator.d.ts +11 -0
- package/dist/services/color/ColorManipulator.d.ts.map +1 -1
- package/dist/services/color/ColorManipulator.js +14 -0
- package/dist/services/color/ColorManipulator.js.map +1 -1
- package/dist/services/color/ColorblindnessSimulator.d.ts +17 -0
- package/dist/services/color/ColorblindnessSimulator.d.ts.map +1 -1
- package/dist/services/color/ColorblindnessSimulator.js +53 -1
- package/dist/services/color/ColorblindnessSimulator.js.map +1 -1
- package/dist/services/color/SpectralMixer.d.ts +0 -34
- package/dist/services/color/SpectralMixer.d.ts.map +1 -1
- package/dist/services/color/SpectralMixer.js +0 -73
- package/dist/services/color/SpectralMixer.js.map +1 -1
- package/dist/services/dye/DyeDatabase.d.ts +0 -21
- package/dist/services/dye/DyeDatabase.d.ts.map +1 -1
- package/dist/services/dye/DyeDatabase.js +78 -103
- package/dist/services/dye/DyeDatabase.js.map +1 -1
- package/dist/services/dye/DyeSearch.d.ts +17 -31
- package/dist/services/dye/DyeSearch.d.ts.map +1 -1
- package/dist/services/dye/DyeSearch.js +31 -67
- package/dist/services/dye/DyeSearch.js.map +1 -1
- package/dist/services/dye/HarmonyGenerator.d.ts +11 -18
- package/dist/services/dye/HarmonyGenerator.d.ts.map +1 -1
- package/dist/services/dye/HarmonyGenerator.js +24 -35
- package/dist/services/dye/HarmonyGenerator.js.map +1 -1
- package/dist/services/localization/LocaleLoader.d.ts.map +1 -1
- package/dist/services/localization/LocaleLoader.js +0 -1
- package/dist/services/localization/LocaleLoader.js.map +1 -1
- package/dist/services/localization/TranslationProvider.d.ts +1 -42
- package/dist/services/localization/TranslationProvider.d.ts.map +1 -1
- package/dist/services/localization/TranslationProvider.js +4 -82
- package/dist/services/localization/TranslationProvider.js.map +1 -1
- package/dist/types/index.d.ts +39 -52
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +50 -10
- package/dist/types/index.js.map +1 -1
- package/dist/utils/index.d.ts +35 -122
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +45 -422
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/kd-tree.d.ts +0 -4
- package/dist/utils/kd-tree.d.ts.map +1 -1
- package/dist/utils/kd-tree.js +0 -6
- package/dist/utils/kd-tree.js.map +1 -1
- package/package.json +19 -10
- package/dist/data/character_colors/index.json +0 -40
- package/dist/data/colors_xiv.json +0 -3538
- package/dist/version.d.ts +0 -11
- package/dist/version.d.ts.map +0 -1
- package/dist/version.js +0 -11
- package/dist/version.js.map +0 -1
package/dist/utils/index.js
CHANGED
|
@@ -105,152 +105,6 @@ export class LRUCache {
|
|
|
105
105
|
return this.cache.size;
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
|
-
/**
|
|
109
|
-
* Async-safe LRU cache with built-in request deduplication
|
|
110
|
-
*
|
|
111
|
-
* Unlike the synchronous LRUCache, this class is designed for async operations
|
|
112
|
-
* where multiple concurrent requests for the same key should share a single
|
|
113
|
-
* computation rather than triggering duplicate work.
|
|
114
|
-
*
|
|
115
|
-
* @example
|
|
116
|
-
* ```typescript
|
|
117
|
-
* const cache = new AsyncLRUCache<string, ApiResponse>(100);
|
|
118
|
-
*
|
|
119
|
-
* // Multiple concurrent calls with same key share one fetch
|
|
120
|
-
* const [result1, result2] = await Promise.all([
|
|
121
|
-
* cache.getOrCompute('user:123', () => fetchUser('123')),
|
|
122
|
-
* cache.getOrCompute('user:123', () => fetchUser('123')), // Reuses first call
|
|
123
|
-
* ]);
|
|
124
|
-
* // fetchUser was only called once!
|
|
125
|
-
* ```
|
|
126
|
-
*
|
|
127
|
-
* Implementation notes:
|
|
128
|
-
* - Uses separate Map for pending promises (request deduplication)
|
|
129
|
-
* - Promise is stored SYNCHRONOUSLY before any await (critical for race safety)
|
|
130
|
-
* - Handles errors gracefully - removes from pending but doesn't cache failures
|
|
131
|
-
* - LRU eviction when cache is full
|
|
132
|
-
*
|
|
133
|
-
* Per OPT-001: This addresses the concurrency limitation of the synchronous
|
|
134
|
-
* LRUCache for async contexts.
|
|
135
|
-
*/
|
|
136
|
-
export class AsyncLRUCache {
|
|
137
|
-
cache;
|
|
138
|
-
pending;
|
|
139
|
-
maxSize;
|
|
140
|
-
constructor(maxSize = 1000) {
|
|
141
|
-
this.cache = new Map();
|
|
142
|
-
this.pending = new Map();
|
|
143
|
-
this.maxSize = maxSize;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Move an entry to the end of the Map (most recently used position).
|
|
147
|
-
*
|
|
148
|
-
* BUG-006: Extracted for clarity. These synchronous Map operations within
|
|
149
|
-
* a single microtask are atomic in JavaScript's event loop — no interleaving
|
|
150
|
-
* can occur between delete and set.
|
|
151
|
-
*/
|
|
152
|
-
moveToEnd(key, value) {
|
|
153
|
-
this.cache.delete(key);
|
|
154
|
-
this.cache.set(key, value);
|
|
155
|
-
}
|
|
156
|
-
/**
|
|
157
|
-
* Get a value from cache, or compute it if not present
|
|
158
|
-
*
|
|
159
|
-
* This method handles request deduplication: if a computation for the same
|
|
160
|
-
* key is already in progress, subsequent calls will wait for that computation
|
|
161
|
-
* rather than starting a new one.
|
|
162
|
-
*
|
|
163
|
-
* @param key - The cache key
|
|
164
|
-
* @param compute - Async function to compute the value if not cached
|
|
165
|
-
* @returns Promise resolving to the cached or computed value
|
|
166
|
-
*
|
|
167
|
-
* @example
|
|
168
|
-
* ```typescript
|
|
169
|
-
* const value = await cache.getOrCompute(
|
|
170
|
-
* 'expensive-key',
|
|
171
|
-
* async () => await expensiveAsyncOperation()
|
|
172
|
-
* );
|
|
173
|
-
* ```
|
|
174
|
-
*/
|
|
175
|
-
async getOrCompute(key, compute) {
|
|
176
|
-
// Check cache first (fast path)
|
|
177
|
-
if (this.cache.has(key)) {
|
|
178
|
-
const value = this.cache.get(key);
|
|
179
|
-
this.moveToEnd(key, value);
|
|
180
|
-
return value;
|
|
181
|
-
}
|
|
182
|
-
// Check if computation is already in progress (deduplication)
|
|
183
|
-
const pendingPromise = this.pending.get(key);
|
|
184
|
-
if (pendingPromise) {
|
|
185
|
-
return pendingPromise;
|
|
186
|
-
}
|
|
187
|
-
// CRITICAL: Store promise SYNCHRONOUSLY before any await
|
|
188
|
-
// This ensures concurrent calls see the pending promise
|
|
189
|
-
const promise = compute()
|
|
190
|
-
.then((value) => {
|
|
191
|
-
this.pending.delete(key);
|
|
192
|
-
this.set(key, value);
|
|
193
|
-
return value;
|
|
194
|
-
})
|
|
195
|
-
.catch((error) => {
|
|
196
|
-
this.pending.delete(key);
|
|
197
|
-
throw error;
|
|
198
|
-
});
|
|
199
|
-
this.pending.set(key, promise);
|
|
200
|
-
return promise;
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* Get a value from the cache (sync check only)
|
|
204
|
-
*
|
|
205
|
-
* @param key - The key to look up
|
|
206
|
-
* @returns The cached value or undefined if not found
|
|
207
|
-
*/
|
|
208
|
-
get(key) {
|
|
209
|
-
if (!this.cache.has(key))
|
|
210
|
-
return undefined;
|
|
211
|
-
const value = this.cache.get(key);
|
|
212
|
-
this.moveToEnd(key, value);
|
|
213
|
-
return value;
|
|
214
|
-
}
|
|
215
|
-
/**
|
|
216
|
-
* Set a value in the cache
|
|
217
|
-
*
|
|
218
|
-
* @param key - The key to store
|
|
219
|
-
* @param value - The value to cache
|
|
220
|
-
*/
|
|
221
|
-
set(key, value) {
|
|
222
|
-
if (this.cache.has(key)) {
|
|
223
|
-
this.cache.delete(key);
|
|
224
|
-
}
|
|
225
|
-
else if (this.cache.size >= this.maxSize) {
|
|
226
|
-
// Remove least recently used (first item)
|
|
227
|
-
const firstKey = this.cache.keys().next().value;
|
|
228
|
-
if (firstKey !== undefined) {
|
|
229
|
-
this.cache.delete(firstKey);
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
this.cache.set(key, value);
|
|
233
|
-
}
|
|
234
|
-
/**
|
|
235
|
-
* Clear all entries from the cache and pending operations
|
|
236
|
-
*/
|
|
237
|
-
clear() {
|
|
238
|
-
this.cache.clear();
|
|
239
|
-
this.pending.clear();
|
|
240
|
-
}
|
|
241
|
-
/**
|
|
242
|
-
* Get the current number of cached entries
|
|
243
|
-
*/
|
|
244
|
-
get size() {
|
|
245
|
-
return this.cache.size;
|
|
246
|
-
}
|
|
247
|
-
/**
|
|
248
|
-
* Get the current number of pending operations
|
|
249
|
-
*/
|
|
250
|
-
get pendingSize() {
|
|
251
|
-
return this.pending.size;
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
108
|
// ============================================================================
|
|
255
109
|
// Math Utilities
|
|
256
110
|
// ============================================================================
|
|
@@ -281,34 +135,6 @@ export function clamp(value, min, max) {
|
|
|
281
135
|
}
|
|
282
136
|
return Math.min(Math.max(value, min), max);
|
|
283
137
|
}
|
|
284
|
-
/**
|
|
285
|
-
* @internal
|
|
286
|
-
* Linear interpolation between two values
|
|
287
|
-
*
|
|
288
|
-
* @param a - Start value
|
|
289
|
-
* @param b - End value
|
|
290
|
-
* @param t - Interpolation factor (0 = a, 1 = b, 0.5 = midpoint)
|
|
291
|
-
* @returns Interpolated value
|
|
292
|
-
*
|
|
293
|
-
* @example
|
|
294
|
-
* ```typescript
|
|
295
|
-
* lerp(0, 100, 0.5) // Returns 50
|
|
296
|
-
* lerp(0, 100, 0) // Returns 0
|
|
297
|
-
* lerp(0, 100, 1) // Returns 100
|
|
298
|
-
* lerp(10, 20, 0.25) // Returns 12.5
|
|
299
|
-
* ```
|
|
300
|
-
*
|
|
301
|
-
* Edge cases:
|
|
302
|
-
* - t can be outside [0, 1] for extrapolation
|
|
303
|
-
* - NaN values return NaN
|
|
304
|
-
* - Handles Infinity correctly
|
|
305
|
-
*/
|
|
306
|
-
export function lerp(a, b, t) {
|
|
307
|
-
if (isNaN(a) || isNaN(b) || isNaN(t)) {
|
|
308
|
-
return NaN;
|
|
309
|
-
}
|
|
310
|
-
return a + (b - a) * t;
|
|
311
|
-
}
|
|
312
138
|
/**
|
|
313
139
|
* @internal
|
|
314
140
|
* Round a number to a specific decimal place
|
|
@@ -340,154 +166,6 @@ export function round(value, decimals = 0) {
|
|
|
340
166
|
const factor = Math.pow(10, decimals);
|
|
341
167
|
return Math.round(value * factor) / factor;
|
|
342
168
|
}
|
|
343
|
-
/**
|
|
344
|
-
* @internal
|
|
345
|
-
* Calculate Euclidean distance between two points in 2D space
|
|
346
|
-
*
|
|
347
|
-
* @param x1 - X coordinate of first point
|
|
348
|
-
* @param y1 - Y coordinate of first point
|
|
349
|
-
* @param x2 - X coordinate of second point
|
|
350
|
-
* @param y2 - Y coordinate of second point
|
|
351
|
-
* @returns Distance between the two points (always >= 0)
|
|
352
|
-
*
|
|
353
|
-
* @example
|
|
354
|
-
* ```typescript
|
|
355
|
-
* distance(0, 0, 3, 4) // Returns 5 (Pythagorean theorem)
|
|
356
|
-
* distance(0, 0, 0, 0) // Returns 0 (same point)
|
|
357
|
-
* distance(1, 1, 4, 5) // Returns 5
|
|
358
|
-
* ```
|
|
359
|
-
*
|
|
360
|
-
* Edge cases:
|
|
361
|
-
* - NaN values return NaN
|
|
362
|
-
* - Infinity values may return Infinity
|
|
363
|
-
* - Always returns non-negative value
|
|
364
|
-
*/
|
|
365
|
-
export function distance(x1, y1, x2, y2) {
|
|
366
|
-
if (isNaN(x1) || isNaN(y1) || isNaN(x2) || isNaN(y2)) {
|
|
367
|
-
return NaN;
|
|
368
|
-
}
|
|
369
|
-
const dx = x2 - x1;
|
|
370
|
-
const dy = y2 - y1;
|
|
371
|
-
return Math.sqrt(dx * dx + dy * dy);
|
|
372
|
-
}
|
|
373
|
-
// ============================================================================
|
|
374
|
-
// Array Utilities
|
|
375
|
-
// ============================================================================
|
|
376
|
-
/**
|
|
377
|
-
* @internal
|
|
378
|
-
* Get unique values from an array
|
|
379
|
-
*
|
|
380
|
-
* @param array - Input array (may contain duplicates)
|
|
381
|
-
* @returns New array with only unique values (preserves first occurrence order)
|
|
382
|
-
*
|
|
383
|
-
* @example
|
|
384
|
-
* ```typescript
|
|
385
|
-
* unique([1, 2, 2, 3, 1]) // Returns [1, 2, 3]
|
|
386
|
-
* unique(['a', 'b', 'a']) // Returns ['a', 'b']
|
|
387
|
-
* unique([]) // Returns []
|
|
388
|
-
* ```
|
|
389
|
-
*
|
|
390
|
-
* Edge cases:
|
|
391
|
-
* - Empty array returns empty array
|
|
392
|
-
* - Uses Set equality (NaN === NaN, +0 === -0)
|
|
393
|
-
* - Preserves object/array references
|
|
394
|
-
*/
|
|
395
|
-
export function unique(array) {
|
|
396
|
-
return Array.from(new Set(array));
|
|
397
|
-
}
|
|
398
|
-
/**
|
|
399
|
-
* @internal
|
|
400
|
-
* Group array items by a key function
|
|
401
|
-
*
|
|
402
|
-
* @param array - Input array to group
|
|
403
|
-
* @param keyFn - Function that extracts grouping key from each item
|
|
404
|
-
* @returns Object with keys as groups and values as arrays of items
|
|
405
|
-
*
|
|
406
|
-
* @example
|
|
407
|
-
* ```typescript
|
|
408
|
-
* const items = [
|
|
409
|
-
* { type: 'fruit', name: 'apple' },
|
|
410
|
-
* { type: 'fruit', name: 'banana' },
|
|
411
|
-
* { type: 'vegetable', name: 'carrot' }
|
|
412
|
-
* ];
|
|
413
|
-
* groupBy(items, item => item.type)
|
|
414
|
-
* // Returns { fruit: [...], vegetable: [...] }
|
|
415
|
-
* ```
|
|
416
|
-
*
|
|
417
|
-
* Edge cases:
|
|
418
|
-
* - Empty array returns empty object
|
|
419
|
-
* - Handles undefined/null keys as string keys
|
|
420
|
-
*/
|
|
421
|
-
export function groupBy(array, keyFn) {
|
|
422
|
-
return array.reduce((acc, item) => {
|
|
423
|
-
const key = keyFn(item);
|
|
424
|
-
if (!acc[key]) {
|
|
425
|
-
acc[key] = [];
|
|
426
|
-
}
|
|
427
|
-
acc[key].push(item);
|
|
428
|
-
return acc;
|
|
429
|
-
}, {});
|
|
430
|
-
}
|
|
431
|
-
/**
|
|
432
|
-
* @internal
|
|
433
|
-
* Sort array by property value
|
|
434
|
-
*
|
|
435
|
-
* @param array - Input array to sort
|
|
436
|
-
* @param property - Property key to sort by
|
|
437
|
-
* @param order - Sort order ('asc' or 'desc', default: 'asc')
|
|
438
|
-
* @returns New sorted array (does not mutate original)
|
|
439
|
-
*
|
|
440
|
-
* @example
|
|
441
|
-
* ```typescript
|
|
442
|
-
* const items = [{ age: 30 }, { age: 20 }, { age: 25 }];
|
|
443
|
-
* sortByProperty(items, 'age') // Sorted by age ascending
|
|
444
|
-
* sortByProperty(items, 'age', 'desc') // Sorted by age descending
|
|
445
|
-
* ```
|
|
446
|
-
*
|
|
447
|
-
* Edge cases:
|
|
448
|
-
* - Returns shallow copy of array
|
|
449
|
-
* - Handles undefined properties (sorted to end regardless of `order`)
|
|
450
|
-
* - Stable sort (preserves relative order of equal elements)
|
|
451
|
-
*/
|
|
452
|
-
export function sortByProperty(array, property, order = 'asc') {
|
|
453
|
-
return [...array].sort((a, b) => {
|
|
454
|
-
const aVal = a[property];
|
|
455
|
-
const bVal = b[property];
|
|
456
|
-
// BUG-048 (2026-07-18 audit): implement the documented "undefined sorted
|
|
457
|
-
// to end" — comparisons against undefined used to yield 0 ("equal"),
|
|
458
|
-
// leaving undefined-valued items interleaved in place. null gets the same
|
|
459
|
-
// treatment (comparisons against it are equally meaningless).
|
|
460
|
-
const aMissing = aVal === undefined || aVal === null;
|
|
461
|
-
const bMissing = bVal === undefined || bVal === null;
|
|
462
|
-
if (aMissing)
|
|
463
|
-
return bMissing ? 0 : 1;
|
|
464
|
-
if (bMissing)
|
|
465
|
-
return -1;
|
|
466
|
-
const comparison = aVal < bVal ? -1 : aVal > bVal ? 1 : 0;
|
|
467
|
-
return order === 'asc' ? comparison : -comparison;
|
|
468
|
-
});
|
|
469
|
-
}
|
|
470
|
-
/**
|
|
471
|
-
* @internal
|
|
472
|
-
* Filter array items, removing null and undefined values
|
|
473
|
-
*
|
|
474
|
-
* @param array - Input array with possibly null/undefined items
|
|
475
|
-
* @returns New array with null and undefined values removed
|
|
476
|
-
*
|
|
477
|
-
* @example
|
|
478
|
-
* ```typescript
|
|
479
|
-
* filterNulls([1, null, 2, undefined, 3]) // Returns [1, 2, 3]
|
|
480
|
-
* filterNulls([null, undefined]) // Returns []
|
|
481
|
-
* filterNulls([0, false, '']) // Returns [0, false, ''] (keeps falsy values)
|
|
482
|
-
* ```
|
|
483
|
-
*
|
|
484
|
-
* Edge cases:
|
|
485
|
-
* - Keeps falsy values (0, false, empty string)
|
|
486
|
-
* - Type guard ensures return type doesn't include null|undefined
|
|
487
|
-
*/
|
|
488
|
-
export function filterNulls(array) {
|
|
489
|
-
return array.filter((item) => item !== null && item !== undefined);
|
|
490
|
-
}
|
|
491
169
|
// ============================================================================
|
|
492
170
|
// Validation Utilities
|
|
493
171
|
// ============================================================================
|
|
@@ -592,106 +270,6 @@ export function isValidHSV(h, s, v) {
|
|
|
592
270
|
v <= VALUE_MAX);
|
|
593
271
|
}
|
|
594
272
|
// ============================================================================
|
|
595
|
-
// Type Guards
|
|
596
|
-
// ============================================================================
|
|
597
|
-
/**
|
|
598
|
-
* @internal
|
|
599
|
-
* Type guard: Check if a value is a string
|
|
600
|
-
*
|
|
601
|
-
* @param value - Value to check
|
|
602
|
-
* @returns true if value is a string, false otherwise
|
|
603
|
-
*
|
|
604
|
-
* @example
|
|
605
|
-
* ```typescript
|
|
606
|
-
* isString('hello') // Returns true
|
|
607
|
-
* isString('') // Returns true (empty string)
|
|
608
|
-
* isString(123) // Returns false
|
|
609
|
-
* isString(new String('')) // Returns false (String object, not primitive)
|
|
610
|
-
* ```
|
|
611
|
-
*/
|
|
612
|
-
export function isString(value) {
|
|
613
|
-
return typeof value === 'string';
|
|
614
|
-
}
|
|
615
|
-
/**
|
|
616
|
-
* @internal
|
|
617
|
-
* Type guard: Check if a value is a finite number (excludes NaN and Infinity)
|
|
618
|
-
*
|
|
619
|
-
* @param value - Value to check
|
|
620
|
-
* @returns true if value is a number and finite (not NaN, not Infinity), false otherwise
|
|
621
|
-
*
|
|
622
|
-
* @example
|
|
623
|
-
* ```typescript
|
|
624
|
-
* isNumber(42) // Returns true
|
|
625
|
-
* isNumber(0) // Returns true
|
|
626
|
-
* isNumber(-3.14) // Returns true
|
|
627
|
-
* isNumber(NaN) // Returns false
|
|
628
|
-
* isNumber(Infinity) // Returns false
|
|
629
|
-
* isNumber('123') // Returns false (string)
|
|
630
|
-
* isNumber(new Number(5)) // Returns false (Number object)
|
|
631
|
-
* ```
|
|
632
|
-
*
|
|
633
|
-
* Note: This excludes NaN and Infinity for safer numeric operations
|
|
634
|
-
*/
|
|
635
|
-
export function isNumber(value) {
|
|
636
|
-
return typeof value === 'number' && Number.isFinite(value);
|
|
637
|
-
}
|
|
638
|
-
/**
|
|
639
|
-
* @internal
|
|
640
|
-
* Type guard: Check if a value is an array
|
|
641
|
-
*
|
|
642
|
-
* @param value - Value to check
|
|
643
|
-
* @returns true if value is an array, false otherwise
|
|
644
|
-
*
|
|
645
|
-
* @example
|
|
646
|
-
* ```typescript
|
|
647
|
-
* isArray([1, 2, 3]) // Returns true
|
|
648
|
-
* isArray([]) // Returns true
|
|
649
|
-
* isArray('not array') // Returns false
|
|
650
|
-
* isArray({ length: 0 }) // Returns false (array-like object)
|
|
651
|
-
* ```
|
|
652
|
-
*/
|
|
653
|
-
export function isArray(value) {
|
|
654
|
-
return Array.isArray(value);
|
|
655
|
-
}
|
|
656
|
-
/**
|
|
657
|
-
* Type guard: Check if a value is a plain object (not array, not null)
|
|
658
|
-
*
|
|
659
|
-
* @param value - Value to check
|
|
660
|
-
* @returns true if value is a plain object, false otherwise
|
|
661
|
-
*
|
|
662
|
-
* @example
|
|
663
|
-
* ```typescript
|
|
664
|
-
* isObject({ a: 1 }) // Returns true
|
|
665
|
-
* isObject({}) // Returns true
|
|
666
|
-
* isObject([]) // Returns false (array)
|
|
667
|
-
* isObject(null) // Returns false
|
|
668
|
-
* isObject(new Date()) // Returns true (object instance)
|
|
669
|
-
* ```
|
|
670
|
-
*/
|
|
671
|
-
export function isObject(value) {
|
|
672
|
-
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
673
|
-
}
|
|
674
|
-
/**
|
|
675
|
-
* Type guard: Check if a value is null or undefined
|
|
676
|
-
*
|
|
677
|
-
* @param value - Value to check
|
|
678
|
-
* @returns true if value is null or undefined, false otherwise
|
|
679
|
-
*
|
|
680
|
-
* @example
|
|
681
|
-
* ```typescript
|
|
682
|
-
* isNullish(null) // Returns true
|
|
683
|
-
* isNullish(undefined) // Returns true
|
|
684
|
-
* isNullish(0) // Returns false
|
|
685
|
-
* isNullish('') // Returns false
|
|
686
|
-
* isNullish(false) // Returns false
|
|
687
|
-
* ```
|
|
688
|
-
*
|
|
689
|
-
* Note: More precise than falsy check - only null/undefined, not 0/false/''
|
|
690
|
-
*/
|
|
691
|
-
export function isNullish(value) {
|
|
692
|
-
return value === null || value === undefined;
|
|
693
|
-
}
|
|
694
|
-
// ============================================================================
|
|
695
273
|
// Async Utilities
|
|
696
274
|
// ============================================================================
|
|
697
275
|
/**
|
|
@@ -816,6 +394,51 @@ shouldRetry = () => true) {
|
|
|
816
394
|
throw lastError ?? new Error('All retry attempts failed');
|
|
817
395
|
}
|
|
818
396
|
// ============================================================================
|
|
397
|
+
// Text Utilities
|
|
398
|
+
// ============================================================================
|
|
399
|
+
/**
|
|
400
|
+
* Three-character axis code for a localized dye name (the bot's 14C triangle
|
|
401
|
+
* and 13C·1 contrast plot).
|
|
402
|
+
*
|
|
403
|
+
* The order of operations is the whole point, and it is why this lives in
|
|
404
|
+
* core rather than being re-derived per generator:
|
|
405
|
+
*
|
|
406
|
+
* 1. **Uppercase before slicing.** `'ß'.toUpperCase()` is `'SS'` — two
|
|
407
|
+
* characters — so slicing first and uppercasing after silently yields a
|
|
408
|
+
* four-character code for German names.
|
|
409
|
+
* 2. **Strip punctuation.** `Ul'dahbrauner` must abbreviate to `ULD`, not
|
|
410
|
+
* `UL'` — an apostrophe carries no identifying signal in a 3-char code.
|
|
411
|
+
* 3. **CJK keeps its first three characters** and is not uppercased: those
|
|
412
|
+
* scripts have no case, and each glyph already carries a full word's
|
|
413
|
+
* worth of meaning.
|
|
414
|
+
*
|
|
415
|
+
* A code is deliberately **not** globally unique — the nine Metallics all
|
|
416
|
+
* abbreviate to `MET`, the Dark run to `DAR`, and every German
|
|
417
|
+
* `Schnee-`/`Schiefer-` name collides on `SCH`. That is accepted because a
|
|
418
|
+
* code never appears alone: the swatch pair sits on the same row, so colour
|
|
419
|
+
* disambiguates the letters and the letters disambiguate the colour.
|
|
420
|
+
*
|
|
421
|
+
* @param name - The dye name, already localized
|
|
422
|
+
* @param locale - Locale code; `ja`/`zh`/`ko` take the CJK path
|
|
423
|
+
* @returns A code of at most three characters
|
|
424
|
+
*
|
|
425
|
+
* @example
|
|
426
|
+
* ```typescript
|
|
427
|
+
* abbreviateDyeName("Ul'dahbrauner", 'de') // 'ULD'
|
|
428
|
+
* abbreviateDyeName('Rußschwarzer', 'de') // 'RUS' (ß → SS, then sliced)
|
|
429
|
+
* abbreviateDyeName('Metallic Gold', 'en') // 'MET'
|
|
430
|
+
* abbreviateDyeName('ダラガブレッド', 'ja') // 'ダラガ'
|
|
431
|
+
* ```
|
|
432
|
+
*/
|
|
433
|
+
export function abbreviateDyeName(name, locale) {
|
|
434
|
+
if (locale === 'ja' || locale === 'zh' || locale === 'ko')
|
|
435
|
+
return name.slice(0, 3);
|
|
436
|
+
return name
|
|
437
|
+
.toUpperCase()
|
|
438
|
+
.replace(/[^\p{L}\p{N}]/gu, '')
|
|
439
|
+
.slice(0, 3);
|
|
440
|
+
}
|
|
441
|
+
// ============================================================================
|
|
819
442
|
// Data Integrity Utilities
|
|
820
443
|
// ============================================================================
|
|
821
444
|
/**
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/kd-tree.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kd-tree.d.ts","sourceRoot":"","sources":["../../src/utils/kd-tree.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAiBD;;;GAGG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,IAAI,CAAa;IAEzB;;;OAGG;gBACS,MAAM,EAAE,OAAO,EAAE;IAW7B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAoC1B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAOhB;;;;;OAKG;IACH,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,GAAG,OAAO,GAAG,IAAI;IAS1F;;OAEG;IACH,OAAO,CAAC,aAAa;IAgDrB;;;;;;OAMG;IACH,oBAAoB,CAClB,MAAM,EAAE,OAAO,EACf,WAAW,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,GACvC,KAAK,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAa9C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4C5B;;OAEG;IACH,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"kd-tree.d.ts","sourceRoot":"","sources":["../../src/utils/kd-tree.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAiBD;;;GAGG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,IAAI,CAAa;IAEzB;;;OAGG;gBACS,MAAM,EAAE,OAAO,EAAE;IAW7B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAoC1B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAOhB;;;;;OAKG;IACH,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,GAAG,OAAO,GAAG,IAAI;IAS1F;;OAEG;IACH,OAAO,CAAC,aAAa;IAgDrB;;;;;;OAMG;IACH,oBAAoB,CAClB,MAAM,EAAE,OAAO,EACf,WAAW,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,GACvC,KAAK,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAa9C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4C5B;;OAEG;IACH,OAAO,IAAI,OAAO;CAGnB"}
|
package/dist/utils/kd-tree.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kd-tree.js","sourceRoot":"","sources":["../../src/utils/kd-tree.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"kd-tree.js","sourceRoot":"","sources":["../../src/utils/kd-tree.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xivdyetools/core",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "Core color algorithms and dye database for XIV Dye Tools",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"type": "module",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js"
|
|
12
|
+
},
|
|
13
|
+
"./blending": {
|
|
14
|
+
"types": "./dist/blending/index.d.ts",
|
|
15
|
+
"import": "./dist/blending/index.js"
|
|
16
|
+
},
|
|
17
|
+
"./package.json": "./package.json"
|
|
18
|
+
},
|
|
8
19
|
"files": [
|
|
9
20
|
"dist",
|
|
10
21
|
"README.md"
|
|
@@ -35,16 +46,14 @@
|
|
|
35
46
|
},
|
|
36
47
|
"dependencies": {
|
|
37
48
|
"spectral.js": "^3.0.0",
|
|
38
|
-
"@xivdyetools/types": "
|
|
39
|
-
"@xivdyetools/logger": "1.
|
|
49
|
+
"@xivdyetools/types": "2.0.0",
|
|
50
|
+
"@xivdyetools/logger": "2.1.0"
|
|
40
51
|
},
|
|
41
52
|
"devDependencies": {
|
|
42
|
-
"@types/node": "^26.1.
|
|
53
|
+
"@types/node": "^26.1.2",
|
|
43
54
|
"@vitest/coverage-v8": "^4.1.10",
|
|
44
55
|
"csv-parse": "^7.0.1",
|
|
45
56
|
"tsx": "^4.23.1",
|
|
46
|
-
"typedoc": "^0.28.20",
|
|
47
|
-
"typedoc-plugin-markdown": "^4.12.0",
|
|
48
57
|
"vitest": "^4.1.10",
|
|
49
58
|
"yaml": "^2.9.0"
|
|
50
59
|
},
|
|
@@ -52,18 +61,18 @@
|
|
|
52
61
|
"node": ">=18.0.0"
|
|
53
62
|
},
|
|
54
63
|
"scripts": {
|
|
55
|
-
"build": "npm run build:
|
|
56
|
-
"build:version": "tsx scripts/generate-version.ts",
|
|
64
|
+
"build": "npm run build:locales && tsc -p tsconfig.build.json && npm run copy:locales",
|
|
57
65
|
"build:locales": "tsx scripts/build-locales.ts",
|
|
58
66
|
"copy:locales": "tsx scripts/copy-locales.ts",
|
|
67
|
+
"calibrate:bands": "tsx scripts/calibrate-bands.ts",
|
|
59
68
|
"test": "vitest run",
|
|
60
69
|
"test:watch": "vitest",
|
|
61
70
|
"test:integration": "vitest run src/__tests__/integration",
|
|
62
71
|
"test:coverage": "vitest run --coverage",
|
|
63
|
-
"lint": "eslint src",
|
|
72
|
+
"lint": "eslint src && pnpm run lint:dead",
|
|
73
|
+
"lint:dead": "knip --directory ../.. --workspace packages/core --no-config-hints --no-tag-hints",
|
|
64
74
|
"lint:fix": "eslint src --fix",
|
|
65
75
|
"type-check": "tsc --noEmit",
|
|
66
|
-
"docs": "typedoc",
|
|
67
76
|
"clean": "rimraf dist coverage"
|
|
68
77
|
}
|
|
69
78
|
}
|