Compare commits

...

2 Commits

Author SHA1 Message Date
Lincoln Minto
97c972b21b
Merge 83e6ff6d96 into 3809375694 2025-05-07 16:01:16 +00:00
Lincoln Minto
83e6ff6d96
Refactor: Simplify mask data processing using Object.values and flat
💻 变更类型 | Change Type
feat

🔀 变更说明 | Description of Change
This PR refactors the code handling mask data processing by simplifying the logic and improving scalability and type safety.

Code Enhancements:
Refactored the mask processing logic in app/masks/index.ts:
Replaced manual destructuring of cn, tw, and en keys with Object.values to dynamically handle all mask data.
Used .flat() to simplify merging mask arrays into a single collection.
Added explicit type casting (as BuiltinMask) for improved type safety.

Benefits:
Improved Maintainability: By eliminating hardcoded destructuring, the code can adapt automatically to new mask keys without modification.
Enhanced Readability: The use of Object.values and flat provides a cleaner, more concise approach.
Scalability: The updated implementation supports dynamic mask additions without breaking functionality.

📝 补充信息 | Additional Information
This change ensures the mask processing code is robust and easier to extend in future updates.

Release Notes:

New Features:
Simplified mask data processing using dynamic Object.values and .flat() methods.
Enhanced type safety with explicit type casting (as BuiltinMask).
2025-01-07 09:53:54 -03:00

View File

@ -30,9 +30,8 @@ if (typeof window != "undefined") {
return { cn: [], tw: [], en: [] };
})
.then((masks) => {
const { cn = [], tw = [], en = [] } = masks;
return [...cn, ...tw, ...en].map((m) => {
BUILTIN_MASKS.push(BUILTIN_MASK_STORE.add(m));
return Object.values(masks).flat().map((m) => {
BUILTIN_MASKS.push(BUILTIN_MASK_STORE.add(m as BuiltinMask));
});
});
}