Refactored hooks to specify events and reworked the dropdowns to be significantly faster and more responsive. (#304)

* Updated events to be more specific

* Update more events

* Update globalmousepos

* Update themes and submap module to show submap name.

* Type fixes

* Reworked menu position calculation logic to be much more efficient.

* Revert import file location

* We luv arrow functions

* Remove globalMousePos remnants since it's unused.

* Added the ability to configure menu dropdown transition and duration.

* Fix type
This commit is contained in:
Jas Singh
2024-10-06 00:22:27 -07:00
committed by GitHub
parent 8a727a080e
commit ee7d19320c
71 changed files with 2175 additions and 1796 deletions

View File

@@ -153,7 +153,7 @@ export const Notify = (notifPayload: NotificationArgs): void => {
Utils.execAsync(command);
};
export function getPosition(pos: NotificationAnchor | OSDAnchor): ('top' | 'bottom' | 'left' | 'right')[] {
export const getPosition = (pos: NotificationAnchor | OSDAnchor): ('top' | 'bottom' | 'left' | 'right')[] => {
const positionMap: { [key: string]: ('top' | 'bottom' | 'left' | 'right')[] } = {
top: ['top'],
'top right': ['top', 'right'],
@@ -166,7 +166,7 @@ export function getPosition(pos: NotificationAnchor | OSDAnchor): ('top' | 'bott
};
return positionMap[pos] || ['top'];
}
};
export const isValidGjsColor = (color: string): boolean => {
const colorLower = color.toLowerCase().trim();
@@ -189,3 +189,7 @@ export const isValidGjsColor = (color: string): boolean => {
return false;
};
export const caapitalizeFirstLetter = (str: string): string => {
return str.charAt(0).toUpperCase() + str.slice(1);
};