@genesislcap/foundation-utils 14.310.2 → 14.311.1-alpha-3bdf18f.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 (89) hide show
  1. package/dist/custom-elements.json +841 -160
  2. package/dist/dts/index.d.ts +1 -0
  3. package/dist/dts/index.d.ts.map +1 -1
  4. package/dist/dts/shortcut-manager/index.d.ts +3 -0
  5. package/dist/dts/shortcut-manager/index.d.ts.map +1 -0
  6. package/dist/dts/shortcut-manager/shortcut-listener.d.ts +21 -0
  7. package/dist/dts/shortcut-manager/shortcut-listener.d.ts.map +1 -0
  8. package/dist/dts/shortcut-manager/shortcut-manager.d.ts +120 -0
  9. package/dist/dts/shortcut-manager/shortcut-manager.d.ts.map +1 -0
  10. package/dist/dts/utils/os-platform.d.ts +31 -0
  11. package/dist/dts/utils/os-platform.d.ts.map +1 -0
  12. package/dist/esm/index.js +1 -0
  13. package/dist/esm/shortcut-manager/index.js +2 -0
  14. package/dist/esm/shortcut-manager/shortcut-listener.js +140 -0
  15. package/dist/esm/shortcut-manager/shortcut-manager.js +286 -0
  16. package/dist/esm/utils/os-platform.js +63 -0
  17. package/dist/foundation-utils.api.json +8414 -5799
  18. package/dist/foundation-utils.d.ts +145 -0
  19. package/docs/api/foundation-utils.defaultshortcutmanager.clearactivecontext.md +15 -0
  20. package/docs/api/foundation-utils.defaultshortcutmanager.executeshortcut.md +50 -0
  21. package/docs/api/foundation-utils.defaultshortcutmanager.executeshortcutbycontext.md +64 -0
  22. package/docs/api/foundation-utils.defaultshortcutmanager.findshortcutbykeycombination.md +114 -0
  23. package/docs/api/foundation-utils.defaultshortcutmanager.getactivecontext.md +15 -0
  24. package/docs/api/foundation-utils.defaultshortcutmanager.getcontexts.md +15 -0
  25. package/docs/api/foundation-utils.defaultshortcutmanager.getshortcuts.md +15 -0
  26. package/docs/api/foundation-utils.defaultshortcutmanager.getshortcutsbycontext.md +50 -0
  27. package/docs/api/foundation-utils.defaultshortcutmanager.getshortcutsbycontextmap.md +15 -0
  28. package/docs/api/foundation-utils.defaultshortcutmanager.ispaused.md +11 -0
  29. package/docs/api/foundation-utils.defaultshortcutmanager.ispaused_.md +11 -0
  30. package/docs/api/foundation-utils.defaultshortcutmanager.ispausedsubject.md +11 -0
  31. package/docs/api/foundation-utils.defaultshortcutmanager.md +321 -0
  32. package/docs/api/foundation-utils.defaultshortcutmanager.pause.md +15 -0
  33. package/docs/api/foundation-utils.defaultshortcutmanager.registercontext.md +50 -0
  34. package/docs/api/foundation-utils.defaultshortcutmanager.registershortcut.md +50 -0
  35. package/docs/api/foundation-utils.defaultshortcutmanager.registershortcuts.md +50 -0
  36. package/docs/api/foundation-utils.defaultshortcutmanager.resume.md +15 -0
  37. package/docs/api/foundation-utils.defaultshortcutmanager.setactivecontext.md +50 -0
  38. package/docs/api/foundation-utils.defaultshortcutmanager.unregistershortcut.md +64 -0
  39. package/docs/api/foundation-utils.defaultshortcutmanager.unregistershortcutsbycontext.md +50 -0
  40. package/docs/api/foundation-utils.foundationshortcutlistener.connectedcallback.md +15 -0
  41. package/docs/api/foundation-utils.foundationshortcutlistener.disconnectedcallback.md +15 -0
  42. package/docs/api/foundation-utils.foundationshortcutlistener.md +105 -0
  43. package/docs/api/foundation-utils.foundationshortcutlistener.shortcutmanager.md +11 -0
  44. package/docs/api/foundation-utils.md +77 -0
  45. package/docs/api/foundation-utils.shortcutdefinition.action.md +11 -0
  46. package/docs/api/foundation-utils.shortcutdefinition.altkey.md +11 -0
  47. package/docs/api/foundation-utils.shortcutdefinition.canexecute.md +11 -0
  48. package/docs/api/foundation-utils.shortcutdefinition.context.md +11 -0
  49. package/docs/api/foundation-utils.shortcutdefinition.ctrlkey.md +11 -0
  50. package/docs/api/foundation-utils.shortcutdefinition.description.md +11 -0
  51. package/docs/api/foundation-utils.shortcutdefinition.elementref.md +11 -0
  52. package/docs/api/foundation-utils.shortcutdefinition.id.md +11 -0
  53. package/docs/api/foundation-utils.shortcutdefinition.key.md +11 -0
  54. package/docs/api/foundation-utils.shortcutdefinition.md +276 -0
  55. package/docs/api/foundation-utils.shortcutdefinition.metakey.md +11 -0
  56. package/docs/api/foundation-utils.shortcutdefinition.optionkey.md +11 -0
  57. package/docs/api/foundation-utils.shortcutdefinition.priority.md +11 -0
  58. package/docs/api/foundation-utils.shortcutdefinition.shiftkey.md +11 -0
  59. package/docs/api/foundation-utils.shortcutexecutionstatus.md +16 -0
  60. package/docs/api/foundation-utils.shortcutmanager.clearactivecontext.md +15 -0
  61. package/docs/api/foundation-utils.shortcutmanager.executeshortcut.md +58 -0
  62. package/docs/api/foundation-utils.shortcutmanager.executeshortcutbycontext.md +70 -0
  63. package/docs/api/foundation-utils.shortcutmanager.findshortcutbykeycombination.md +114 -0
  64. package/docs/api/foundation-utils.shortcutmanager.getactivecontext.md +15 -0
  65. package/docs/api/foundation-utils.shortcutmanager.getcontexts.md +15 -0
  66. package/docs/api/foundation-utils.shortcutmanager.getshortcuts.md +15 -0
  67. package/docs/api/foundation-utils.shortcutmanager.getshortcutsbycontext.md +50 -0
  68. package/docs/api/foundation-utils.shortcutmanager.getshortcutsbycontextmap.md +15 -0
  69. package/docs/api/foundation-utils.shortcutmanager.ispaused.md +11 -0
  70. package/docs/api/foundation-utils.shortcutmanager.ispaused_.md +11 -0
  71. package/docs/api/foundation-utils.shortcutmanager.ispausedsubject.md +11 -0
  72. package/docs/api/foundation-utils.shortcutmanager.md +13 -0
  73. package/docs/api/foundation-utils.shortcutmanager.pause.md +15 -0
  74. package/docs/api/foundation-utils.shortcutmanager.registercontext.md +50 -0
  75. package/docs/api/foundation-utils.shortcutmanager.registershortcut.md +50 -0
  76. package/docs/api/foundation-utils.shortcutmanager.registershortcuts.md +50 -0
  77. package/docs/api/foundation-utils.shortcutmanager.resume.md +15 -0
  78. package/docs/api/foundation-utils.shortcutmanager.setactivecontext.md +50 -0
  79. package/docs/api/foundation-utils.shortcutmanager.unregistershortcut.md +64 -0
  80. package/docs/api/foundation-utils.shortcutmanager.unregistershortcutsbycontext.md +50 -0
  81. package/docs/api/foundation-utils.shortcutregistrationresult.disabled.md +11 -0
  82. package/docs/api/foundation-utils.shortcutregistrationresult.id.md +11 -0
  83. package/docs/api/foundation-utils.shortcutregistrationresult.keycombination.md +11 -0
  84. package/docs/api/foundation-utils.shortcutregistrationresult.keycombinationdisplay.md +11 -0
  85. package/docs/api/foundation-utils.shortcutregistrationresult.md +141 -0
  86. package/docs/api/foundation-utils.shortcutregistrationresult.shortcut.md +11 -0
  87. package/docs/api/foundation-utils.shortcutregistrationresult.tooltip.md +11 -0
  88. package/docs/api-report.md.api.md +153 -0
  89. package/package.json +12 -11
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Platform detection utilities for cross-platform compatibility
3
+ */
4
+ export class OperatingSystemUtils {
5
+ /**
6
+ * Detects if the current platform is macOS
7
+ */
8
+ static get isMacOS() {
9
+ return (navigator.platform.toLowerCase().includes('mac') ||
10
+ navigator.userAgent.toLowerCase().includes('mac os'));
11
+ }
12
+ /**
13
+ * Detects if the current platform is Windows
14
+ */
15
+ static get isWindows() {
16
+ return (navigator.platform.toLowerCase().includes('win') ||
17
+ navigator.userAgent.toLowerCase().includes('windows'));
18
+ }
19
+ /**
20
+ * Detects if the current platform is Linux
21
+ */
22
+ static get isLinux() {
23
+ return (navigator.platform.toLowerCase().includes('linux') ||
24
+ navigator.userAgent.toLowerCase().includes('linux'));
25
+ }
26
+ /**
27
+ * Gets the appropriate modifier key symbols for the current platform
28
+ */
29
+ static getModifierSymbols() {
30
+ if (this.isMacOS) {
31
+ return {
32
+ ctrl: '⌃',
33
+ alt: '⌥',
34
+ shift: '⇧',
35
+ meta: '⌘',
36
+ };
37
+ }
38
+ return {
39
+ ctrl: 'Ctrl',
40
+ alt: 'Alt',
41
+ shift: 'Shift',
42
+ meta: 'Win',
43
+ };
44
+ }
45
+ /**
46
+ * Formats a key combination with platform-appropriate symbols
47
+ */
48
+ static formatKeyCombination(key, ctrlKey = false, altKey = false, shiftKey = false, metaKey = false) {
49
+ const symbols = this.getModifierSymbols();
50
+ const modifiers = [];
51
+ if (ctrlKey)
52
+ modifiers.push(symbols.ctrl);
53
+ if (altKey)
54
+ modifiers.push(symbols.alt);
55
+ if (shiftKey)
56
+ modifiers.push(symbols.shift);
57
+ if (metaKey)
58
+ modifiers.push(symbols.meta);
59
+ const separator = this.isMacOS ? '' : '+';
60
+ const keyPart = this.isMacOS ? key.toUpperCase() : key;
61
+ return modifiers.length > 0 ? `${modifiers.join(separator)}${separator}${keyPart}` : keyPart;
62
+ }
63
+ }