@seelen-ui/lib 2.3.6 → 2.4.1-next.20250825015552

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 (537) hide show
  1. package/esm/constants/mod.d.ts +17 -9
  2. package/esm/constants/mod.d.ts.map +1 -1
  3. package/esm/constants/mod.js +6 -4
  4. package/esm/handlers/commands.d.ts +17 -8
  5. package/esm/handlers/commands.d.ts.map +1 -1
  6. package/esm/handlers/commands.js +17 -8
  7. package/esm/handlers/events.d.ts +3 -5
  8. package/esm/handlers/events.d.ts.map +1 -1
  9. package/esm/handlers/events.js +3 -5
  10. package/esm/lib.d.ts +1 -1
  11. package/esm/lib.d.ts.map +1 -1
  12. package/esm/lib.js +1 -1
  13. package/esm/resource/mod.d.ts +6 -0
  14. package/esm/resource/mod.d.ts.map +1 -0
  15. package/esm/state/icon_pack.d.ts +23 -52
  16. package/esm/state/icon_pack.d.ts.map +1 -1
  17. package/esm/state/icon_pack.js +137 -131
  18. package/esm/state/mod.d.ts +2 -1
  19. package/esm/state/mod.d.ts.map +1 -1
  20. package/esm/state/mod.js +1 -0
  21. package/esm/state/plugin/mod.d.ts +1 -1
  22. package/esm/state/plugin/mod.d.ts.map +1 -1
  23. package/esm/state/settings/mod.d.ts +6 -5
  24. package/esm/state/settings/mod.d.ts.map +1 -1
  25. package/esm/state/settings/mod.js +5 -8
  26. package/esm/state/settings/settings_by_monitor.d.ts +1 -4
  27. package/esm/state/settings/settings_by_monitor.d.ts.map +1 -1
  28. package/esm/state/settings/settings_by_monitor.js +0 -8
  29. package/esm/state/settings_by_app.d.ts +1 -1
  30. package/esm/state/settings_by_app.d.ts.map +1 -1
  31. package/esm/state/theme/mod.d.ts +19 -3
  32. package/esm/state/theme/mod.d.ts.map +1 -1
  33. package/esm/state/theme/mod.js +96 -0
  34. package/esm/state/wallpaper/mod.d.ts +15 -0
  35. package/esm/state/wallpaper/mod.d.ts.map +1 -0
  36. package/esm/state/wallpaper/mod.js +31 -0
  37. package/esm/state/weg_items.d.ts +6 -9
  38. package/esm/state/weg_items.d.ts.map +1 -1
  39. package/esm/state/weg_items.js +9 -17
  40. package/esm/state/widget/mod.d.ts +9 -4
  41. package/esm/state/widget/mod.d.ts.map +1 -1
  42. package/esm/state/widget/mod.js +31 -12
  43. package/esm/state/wm_layout.d.ts +4 -5
  44. package/esm/state/wm_layout.d.ts.map +1 -1
  45. package/esm/state/wm_layout.js +3 -8
  46. package/esm/system_state/bluetooth/mod.d.ts +2 -2
  47. package/esm/system_state/bluetooth/mod.d.ts.map +1 -1
  48. package/esm/system_state/language.d.ts +1 -1
  49. package/esm/system_state/language.d.ts.map +1 -1
  50. package/esm/system_state/monitors.d.ts +1 -1
  51. package/esm/system_state/monitors.d.ts.map +1 -1
  52. package/esm/system_state/ui_colors.d.ts +1 -1
  53. package/esm/system_state/ui_colors.d.ts.map +1 -1
  54. package/esm/system_state/ui_colors.js +8 -2
  55. package/esm/system_state/user.d.ts +1 -1
  56. package/esm/system_state/user.d.ts.map +1 -1
  57. package/esm/types/CssVariableName.d.ts +5 -0
  58. package/esm/types/CssVariableName.d.ts.map +1 -0
  59. package/esm/types/CustomIconPackEntry.d.ts +16 -0
  60. package/esm/types/CustomIconPackEntry.d.ts.map +1 -0
  61. package/esm/types/DesktopWorkspace.d.ts +5 -0
  62. package/esm/types/DesktopWorkspace.d.ts.map +1 -1
  63. package/esm/types/FocusedApp.d.ts +4 -0
  64. package/esm/types/FocusedApp.d.ts.map +1 -1
  65. package/esm/types/FocusedApp.js +0 -1
  66. package/esm/types/Icon.d.ts +17 -10
  67. package/esm/types/Icon.d.ts.map +1 -1
  68. package/esm/types/IconPack.d.ts +7 -19
  69. package/esm/types/IconPack.d.ts.map +1 -1
  70. package/esm/types/IconPackEntry.d.ts +11 -0
  71. package/esm/types/IconPackEntry.d.ts.map +1 -0
  72. package/esm/types/IconPackId.d.ts +3 -0
  73. package/esm/types/IconPackId.d.ts.map +1 -1
  74. package/esm/types/MediaPlayer.d.ts +2 -0
  75. package/esm/types/MediaPlayer.d.ts.map +1 -1
  76. package/esm/types/MediaPlayerTimeline.d.ts +24 -0
  77. package/esm/types/MediaPlayerTimeline.d.ts.map +1 -0
  78. package/esm/types/MixBlendMode.d.ts +2 -0
  79. package/esm/types/MixBlendMode.d.ts.map +1 -0
  80. package/esm/types/MonitorConfiguration.d.ts +0 -5
  81. package/esm/types/MonitorConfiguration.d.ts.map +1 -1
  82. package/esm/types/MonitorId.d.ts +2 -0
  83. package/esm/types/MonitorId.d.ts.map +1 -0
  84. package/esm/types/MonitorSettingsByWidget.d.ts +1 -10
  85. package/esm/types/MonitorSettingsByWidget.d.ts.map +1 -1
  86. package/esm/types/ObjectFit.d.ts +2 -0
  87. package/esm/types/ObjectFit.d.ts.map +1 -0
  88. package/esm/types/ObjectPosition.d.ts +2 -0
  89. package/esm/types/ObjectPosition.d.ts.map +1 -0
  90. package/esm/types/PhysicalMonitor.d.ts +2 -1
  91. package/esm/types/PhysicalMonitor.d.ts.map +1 -1
  92. package/esm/types/PlaybackSpeed.d.ts +2 -0
  93. package/esm/types/PlaybackSpeed.d.ts.map +1 -0
  94. package/esm/types/PluginId.d.ts +3 -0
  95. package/esm/types/PluginId.d.ts.map +1 -1
  96. package/esm/types/Resource.d.ts +35 -3
  97. package/esm/types/Resource.d.ts.map +1 -1
  98. package/esm/types/ResourceAttribute.d.ts +2 -0
  99. package/esm/types/ResourceAttribute.d.ts.map +1 -0
  100. package/esm/types/ResourceId.d.ts +4 -2
  101. package/esm/types/ResourceId.d.ts.map +1 -1
  102. package/esm/types/ResourceMetadata.d.ts +2 -6
  103. package/esm/types/ResourceMetadata.d.ts.map +1 -1
  104. package/esm/types/SeelenCommandArgument.d.ts +43 -18
  105. package/esm/types/SeelenCommandArgument.d.ts.map +1 -1
  106. package/esm/types/SeelenCommandClosePopupArgs.d.ts +4 -0
  107. package/esm/types/SeelenCommandClosePopupArgs.d.ts.map +1 -0
  108. package/esm/types/SeelenCommandClosePopupArgs.js +2 -0
  109. package/esm/types/SeelenCommandCreatePopupArgs.d.ts +5 -0
  110. package/esm/types/SeelenCommandCreatePopupArgs.d.ts.map +1 -0
  111. package/esm/types/SeelenCommandRemoveResourceArgs.d.ts +7 -0
  112. package/esm/types/SeelenCommandRemoveResourceArgs.d.ts.map +1 -0
  113. package/esm/types/SeelenCommandRequestToUserInputShortcutArgs.d.ts +4 -0
  114. package/esm/types/SeelenCommandRequestToUserInputShortcutArgs.d.ts.map +1 -0
  115. package/esm/types/SeelenCommandRequestToUserInputShortcutArgs.js +2 -0
  116. package/esm/types/SeelenCommandReturn.d.ts +38 -16
  117. package/esm/types/SeelenCommandReturn.d.ts.map +1 -1
  118. package/esm/types/SeelenCommandSetNativeShellWallpaperArgs.d.ts +4 -0
  119. package/esm/types/SeelenCommandSetNativeShellWallpaperArgs.d.ts.map +1 -0
  120. package/esm/types/SeelenCommandSetNativeShellWallpaperArgs.js +2 -0
  121. package/esm/types/SeelenCommandStateGetWegItemsArgs.d.ts +5 -0
  122. package/esm/types/SeelenCommandStateGetWegItemsArgs.d.ts.map +1 -0
  123. package/esm/types/SeelenCommandStateSetCustomIconPackArgs.d.ts +5 -0
  124. package/esm/types/SeelenCommandStateSetCustomIconPackArgs.d.ts.map +1 -0
  125. package/esm/types/SeelenCommandSwitchWorkspaceArgs.d.ts +2 -0
  126. package/esm/types/SeelenCommandSwitchWorkspaceArgs.d.ts.map +1 -1
  127. package/esm/types/SeelenCommandSwitchWorkspaceArgs.js +0 -1
  128. package/esm/types/SeelenCommandUpdatePopupArgs.d.ts +6 -0
  129. package/esm/types/SeelenCommandUpdatePopupArgs.d.ts.map +1 -0
  130. package/esm/types/SeelenEventPayload.d.ts +10 -14
  131. package/esm/types/SeelenEventPayload.d.ts.map +1 -1
  132. package/esm/types/SeelenWallSettings.d.ts +5 -2
  133. package/esm/types/SeelenWallSettings.d.ts.map +1 -1
  134. package/esm/types/SeelenWegSettings.d.ts +4 -0
  135. package/esm/types/SeelenWegSettings.d.ts.map +1 -1
  136. package/esm/types/Settings.d.ts +23 -16
  137. package/esm/types/Settings.d.ts.map +1 -1
  138. package/esm/types/SettingsByWidget.d.ts +19 -3
  139. package/esm/types/SettingsByWidget.d.ts.map +1 -1
  140. package/esm/types/SharedIconPackEntry.d.ts +12 -0
  141. package/esm/types/SharedIconPackEntry.d.ts.map +1 -0
  142. package/esm/types/SluHotkey.d.ts +8 -0
  143. package/esm/types/SluHotkey.d.ts.map +1 -0
  144. package/esm/types/SluHotkeyAction.d.ts +84 -0
  145. package/esm/types/SluHotkeyAction.d.ts.map +1 -0
  146. package/esm/types/SluHotkeyAction.js +2 -0
  147. package/esm/types/SluPopupConfig.d.ts +2 -0
  148. package/esm/types/SluPopupConfig.d.ts.map +1 -1
  149. package/esm/types/SluShortcutsSettings.d.ts +6 -0
  150. package/esm/types/SluShortcutsSettings.d.ts.map +1 -0
  151. package/esm/types/Theme.d.ts +5 -0
  152. package/esm/types/Theme.d.ts.map +1 -1
  153. package/esm/types/ThemeConfigDefinition.d.ts +6 -0
  154. package/esm/types/ThemeConfigDefinition.d.ts.map +1 -0
  155. package/esm/types/ThemeConfigGroup.d.ts +7 -0
  156. package/esm/types/ThemeConfigGroup.d.ts.map +1 -0
  157. package/esm/types/ThemeConfigGroup.js +1 -0
  158. package/esm/types/ThemeId.d.ts +3 -0
  159. package/esm/types/ThemeId.d.ts.map +1 -1
  160. package/esm/types/ThemeSettings.d.ts +5 -0
  161. package/esm/types/ThemeSettings.d.ts.map +1 -0
  162. package/esm/types/ThemeSettings.js +1 -0
  163. package/esm/types/ThemeSettingsDefinition.d.ts +2 -2
  164. package/esm/types/ThemeSettingsDefinition.d.ts.map +1 -1
  165. package/esm/types/ThemeVariable.d.ts +16 -2
  166. package/esm/types/ThemeVariable.d.ts.map +1 -1
  167. package/esm/types/ThemeVariableWithUnit.d.ts +11 -2
  168. package/esm/types/ThemeVariableWithUnit.d.ts.map +1 -1
  169. package/esm/types/ThirdPartyPlugin.d.ts +2 -2
  170. package/esm/types/ThirdPartyPlugin.d.ts.map +1 -1
  171. package/esm/types/ThirdPartyWidgetSettings.d.ts +1 -1
  172. package/esm/types/ThirdPartyWidgetSettings.d.ts.map +1 -1
  173. package/esm/types/UniqueIconPackEntry.d.ts +24 -0
  174. package/esm/types/UniqueIconPackEntry.d.ts.map +1 -0
  175. package/esm/types/UniqueIconPackEntry.js +1 -0
  176. package/esm/types/VirtualDesktopMonitor.d.ts +9 -0
  177. package/esm/types/VirtualDesktopMonitor.d.ts.map +1 -0
  178. package/esm/types/VirtualDesktopMonitor.js +1 -0
  179. package/esm/types/VirtualDesktops.d.ts +15 -0
  180. package/esm/types/VirtualDesktops.d.ts.map +1 -0
  181. package/esm/types/VirtualDesktops.js +1 -0
  182. package/esm/types/Wallpaper.d.ts +11 -0
  183. package/esm/types/Wallpaper.d.ts.map +1 -0
  184. package/esm/types/Wallpaper.js +1 -0
  185. package/esm/types/WallpaperId.d.ts +6 -0
  186. package/esm/types/WallpaperId.d.ts.map +1 -0
  187. package/esm/types/WallpaperId.js +1 -0
  188. package/esm/types/WallpaperInstanceSettings.d.ts +45 -0
  189. package/esm/types/WallpaperInstanceSettings.d.ts.map +1 -0
  190. package/esm/types/WallpaperInstanceSettings.js +1 -0
  191. package/esm/types/WidgetId.d.ts +3 -0
  192. package/esm/types/WidgetId.d.ts.map +1 -1
  193. package/esm/types/WindowManagerLayout.d.ts +1 -2
  194. package/esm/types/WindowManagerLayout.d.ts.map +1 -1
  195. package/esm/types/WmNode.d.ts +40 -15
  196. package/esm/types/WmNode.d.ts.map +1 -1
  197. package/esm/types/WmNodeKind.d.ts +2 -0
  198. package/esm/types/WmNodeKind.d.ts.map +1 -0
  199. package/esm/types/WmNodeKind.js +2 -0
  200. package/esm/types/WmNodeLifetime.d.ts +2 -0
  201. package/esm/types/WmNodeLifetime.d.ts.map +1 -0
  202. package/esm/types/WmNodeLifetime.js +2 -0
  203. package/esm/types/mod.d.ts +215 -201
  204. package/esm/types/mod.d.ts.map +1 -1
  205. package/esm/types/mod.js +215 -201
  206. package/esm/utils/Wrapper.d.ts +3 -0
  207. package/esm/utils/Wrapper.d.ts.map +1 -0
  208. package/esm/utils/Wrapper.js +5 -0
  209. package/package.json +6 -6
  210. package/script/constants/mod.d.ts +17 -9
  211. package/script/constants/mod.d.ts.map +1 -1
  212. package/script/constants/mod.js +6 -4
  213. package/script/handlers/commands.d.ts +17 -8
  214. package/script/handlers/commands.d.ts.map +1 -1
  215. package/script/handlers/commands.js +17 -8
  216. package/script/handlers/events.d.ts +3 -5
  217. package/script/handlers/events.d.ts.map +1 -1
  218. package/script/handlers/events.js +3 -5
  219. package/script/lib.d.ts +1 -1
  220. package/script/lib.d.ts.map +1 -1
  221. package/script/lib.js +1 -1
  222. package/script/resource/mod.d.ts +6 -0
  223. package/script/resource/mod.d.ts.map +1 -0
  224. package/script/state/icon_pack.d.ts +23 -52
  225. package/script/state/icon_pack.d.ts.map +1 -1
  226. package/script/state/icon_pack.js +137 -131
  227. package/script/state/mod.d.ts +2 -1
  228. package/script/state/mod.d.ts.map +1 -1
  229. package/script/state/mod.js +1 -0
  230. package/script/state/plugin/mod.d.ts +1 -1
  231. package/script/state/plugin/mod.d.ts.map +1 -1
  232. package/script/state/settings/mod.d.ts +6 -5
  233. package/script/state/settings/mod.d.ts.map +1 -1
  234. package/script/state/settings/mod.js +5 -9
  235. package/script/state/settings/settings_by_monitor.d.ts +1 -4
  236. package/script/state/settings/settings_by_monitor.d.ts.map +1 -1
  237. package/script/state/settings/settings_by_monitor.js +1 -9
  238. package/script/state/settings_by_app.d.ts +1 -1
  239. package/script/state/settings_by_app.d.ts.map +1 -1
  240. package/script/state/theme/mod.d.ts +19 -3
  241. package/script/state/theme/mod.d.ts.map +1 -1
  242. package/script/state/theme/mod.js +100 -1
  243. package/script/state/wallpaper/mod.d.ts +15 -0
  244. package/script/state/wallpaper/mod.d.ts.map +1 -0
  245. package/script/state/wallpaper/mod.js +36 -0
  246. package/script/state/weg_items.d.ts +6 -9
  247. package/script/state/weg_items.d.ts.map +1 -1
  248. package/script/state/weg_items.js +7 -15
  249. package/script/state/widget/mod.d.ts +9 -4
  250. package/script/state/widget/mod.d.ts.map +1 -1
  251. package/script/state/widget/mod.js +31 -12
  252. package/script/state/wm_layout.d.ts +4 -5
  253. package/script/state/wm_layout.d.ts.map +1 -1
  254. package/script/state/wm_layout.js +5 -11
  255. package/script/system_state/bluetooth/mod.d.ts +2 -2
  256. package/script/system_state/bluetooth/mod.d.ts.map +1 -1
  257. package/script/system_state/language.d.ts +1 -1
  258. package/script/system_state/language.d.ts.map +1 -1
  259. package/script/system_state/monitors.d.ts +1 -1
  260. package/script/system_state/monitors.d.ts.map +1 -1
  261. package/script/system_state/ui_colors.d.ts +1 -1
  262. package/script/system_state/ui_colors.d.ts.map +1 -1
  263. package/script/system_state/ui_colors.js +8 -2
  264. package/script/system_state/user.d.ts +1 -1
  265. package/script/system_state/user.d.ts.map +1 -1
  266. package/script/types/CssVariableName.d.ts +5 -0
  267. package/script/types/CssVariableName.d.ts.map +1 -0
  268. package/script/types/CustomIconPackEntry.d.ts +16 -0
  269. package/script/types/CustomIconPackEntry.d.ts.map +1 -0
  270. package/script/types/DesktopWorkspace.d.ts +5 -0
  271. package/script/types/DesktopWorkspace.d.ts.map +1 -1
  272. package/script/types/FocusedApp.d.ts +4 -0
  273. package/script/types/FocusedApp.d.ts.map +1 -1
  274. package/script/types/FocusedApp.js +0 -1
  275. package/script/types/Icon.d.ts +17 -10
  276. package/script/types/Icon.d.ts.map +1 -1
  277. package/script/types/IconPack.d.ts +7 -19
  278. package/script/types/IconPack.d.ts.map +1 -1
  279. package/script/types/IconPackEntry.d.ts +11 -0
  280. package/script/types/IconPackEntry.d.ts.map +1 -0
  281. package/script/types/IconPackId.d.ts +3 -0
  282. package/script/types/IconPackId.d.ts.map +1 -1
  283. package/script/types/MediaPlayer.d.ts +2 -0
  284. package/script/types/MediaPlayer.d.ts.map +1 -1
  285. package/script/types/MediaPlayerTimeline.d.ts +24 -0
  286. package/script/types/MediaPlayerTimeline.d.ts.map +1 -0
  287. package/script/types/MixBlendMode.d.ts +2 -0
  288. package/script/types/MixBlendMode.d.ts.map +1 -0
  289. package/script/types/MonitorConfiguration.d.ts +0 -5
  290. package/script/types/MonitorConfiguration.d.ts.map +1 -1
  291. package/script/types/MonitorId.d.ts +2 -0
  292. package/script/types/MonitorId.d.ts.map +1 -0
  293. package/script/types/MonitorSettingsByWidget.d.ts +1 -10
  294. package/script/types/MonitorSettingsByWidget.d.ts.map +1 -1
  295. package/script/types/ObjectFit.d.ts +2 -0
  296. package/script/types/ObjectFit.d.ts.map +1 -0
  297. package/script/types/ObjectPosition.d.ts +2 -0
  298. package/script/types/ObjectPosition.d.ts.map +1 -0
  299. package/script/types/PhysicalMonitor.d.ts +2 -1
  300. package/script/types/PhysicalMonitor.d.ts.map +1 -1
  301. package/script/types/PlaybackSpeed.d.ts +2 -0
  302. package/script/types/PlaybackSpeed.d.ts.map +1 -0
  303. package/script/types/PluginId.d.ts +3 -0
  304. package/script/types/PluginId.d.ts.map +1 -1
  305. package/script/types/Resource.d.ts +35 -3
  306. package/script/types/Resource.d.ts.map +1 -1
  307. package/script/types/ResourceAttribute.d.ts +2 -0
  308. package/script/types/ResourceAttribute.d.ts.map +1 -0
  309. package/script/types/ResourceId.d.ts +4 -2
  310. package/script/types/ResourceId.d.ts.map +1 -1
  311. package/script/types/ResourceMetadata.d.ts +2 -6
  312. package/script/types/ResourceMetadata.d.ts.map +1 -1
  313. package/script/types/SeelenCommandArgument.d.ts +43 -18
  314. package/script/types/SeelenCommandArgument.d.ts.map +1 -1
  315. package/script/types/SeelenCommandClosePopupArgs.d.ts +4 -0
  316. package/script/types/SeelenCommandClosePopupArgs.d.ts.map +1 -0
  317. package/script/types/SeelenCommandClosePopupArgs.js +3 -0
  318. package/script/types/SeelenCommandCreatePopupArgs.d.ts +5 -0
  319. package/script/types/SeelenCommandCreatePopupArgs.d.ts.map +1 -0
  320. package/script/types/SeelenCommandRemoveResourceArgs.d.ts +7 -0
  321. package/script/types/SeelenCommandRemoveResourceArgs.d.ts.map +1 -0
  322. package/script/types/SeelenCommandRequestToUserInputShortcutArgs.d.ts +4 -0
  323. package/script/types/SeelenCommandRequestToUserInputShortcutArgs.d.ts.map +1 -0
  324. package/script/types/SeelenCommandRequestToUserInputShortcutArgs.js +3 -0
  325. package/script/types/SeelenCommandReturn.d.ts +38 -16
  326. package/script/types/SeelenCommandReturn.d.ts.map +1 -1
  327. package/script/types/SeelenCommandSetNativeShellWallpaperArgs.d.ts +4 -0
  328. package/script/types/SeelenCommandSetNativeShellWallpaperArgs.d.ts.map +1 -0
  329. package/script/types/SeelenCommandSetNativeShellWallpaperArgs.js +3 -0
  330. package/script/types/SeelenCommandStateGetWegItemsArgs.d.ts +5 -0
  331. package/script/types/SeelenCommandStateGetWegItemsArgs.d.ts.map +1 -0
  332. package/script/types/SeelenCommandStateSetCustomIconPackArgs.d.ts +5 -0
  333. package/script/types/SeelenCommandStateSetCustomIconPackArgs.d.ts.map +1 -0
  334. package/script/types/SeelenCommandSwitchWorkspaceArgs.d.ts +2 -0
  335. package/script/types/SeelenCommandSwitchWorkspaceArgs.d.ts.map +1 -1
  336. package/script/types/SeelenCommandSwitchWorkspaceArgs.js +0 -1
  337. package/script/types/SeelenCommandUpdatePopupArgs.d.ts +6 -0
  338. package/script/types/SeelenCommandUpdatePopupArgs.d.ts.map +1 -0
  339. package/script/types/SeelenEventPayload.d.ts +10 -14
  340. package/script/types/SeelenEventPayload.d.ts.map +1 -1
  341. package/script/types/SeelenWallSettings.d.ts +5 -2
  342. package/script/types/SeelenWallSettings.d.ts.map +1 -1
  343. package/script/types/SeelenWegSettings.d.ts +4 -0
  344. package/script/types/SeelenWegSettings.d.ts.map +1 -1
  345. package/script/types/Settings.d.ts +23 -16
  346. package/script/types/Settings.d.ts.map +1 -1
  347. package/script/types/SettingsByWidget.d.ts +19 -3
  348. package/script/types/SettingsByWidget.d.ts.map +1 -1
  349. package/script/types/SharedIconPackEntry.d.ts +12 -0
  350. package/script/types/SharedIconPackEntry.d.ts.map +1 -0
  351. package/script/types/SluHotkey.d.ts +8 -0
  352. package/script/types/SluHotkey.d.ts.map +1 -0
  353. package/script/types/SluHotkeyAction.d.ts +84 -0
  354. package/script/types/SluHotkeyAction.d.ts.map +1 -0
  355. package/script/types/SluHotkeyAction.js +3 -0
  356. package/script/types/SluPopupConfig.d.ts +2 -0
  357. package/script/types/SluPopupConfig.d.ts.map +1 -1
  358. package/script/types/SluShortcutsSettings.d.ts +6 -0
  359. package/script/types/SluShortcutsSettings.d.ts.map +1 -0
  360. package/script/types/Theme.d.ts +5 -0
  361. package/script/types/Theme.d.ts.map +1 -1
  362. package/script/types/ThemeConfigDefinition.d.ts +6 -0
  363. package/script/types/ThemeConfigDefinition.d.ts.map +1 -0
  364. package/script/types/ThemeConfigGroup.d.ts +7 -0
  365. package/script/types/ThemeConfigGroup.d.ts.map +1 -0
  366. package/script/types/ThemeConfigGroup.js +2 -0
  367. package/script/types/ThemeId.d.ts +3 -0
  368. package/script/types/ThemeId.d.ts.map +1 -1
  369. package/script/types/ThemeSettings.d.ts +5 -0
  370. package/script/types/ThemeSettings.d.ts.map +1 -0
  371. package/script/types/ThemeSettings.js +2 -0
  372. package/script/types/ThemeSettingsDefinition.d.ts +2 -2
  373. package/script/types/ThemeSettingsDefinition.d.ts.map +1 -1
  374. package/script/types/ThemeVariable.d.ts +16 -2
  375. package/script/types/ThemeVariable.d.ts.map +1 -1
  376. package/script/types/ThemeVariableWithUnit.d.ts +11 -2
  377. package/script/types/ThemeVariableWithUnit.d.ts.map +1 -1
  378. package/script/types/ThirdPartyPlugin.d.ts +2 -2
  379. package/script/types/ThirdPartyPlugin.d.ts.map +1 -1
  380. package/script/types/ThirdPartyWidgetSettings.d.ts +1 -1
  381. package/script/types/ThirdPartyWidgetSettings.d.ts.map +1 -1
  382. package/script/types/UniqueIconPackEntry.d.ts +24 -0
  383. package/script/types/UniqueIconPackEntry.d.ts.map +1 -0
  384. package/script/types/UniqueIconPackEntry.js +2 -0
  385. package/script/types/VirtualDesktopMonitor.d.ts +9 -0
  386. package/script/types/VirtualDesktopMonitor.d.ts.map +1 -0
  387. package/script/types/VirtualDesktopMonitor.js +2 -0
  388. package/script/types/VirtualDesktops.d.ts +15 -0
  389. package/script/types/VirtualDesktops.d.ts.map +1 -0
  390. package/script/types/VirtualDesktops.js +2 -0
  391. package/script/types/Wallpaper.d.ts +11 -0
  392. package/script/types/Wallpaper.d.ts.map +1 -0
  393. package/script/types/Wallpaper.js +2 -0
  394. package/script/types/WallpaperId.d.ts +6 -0
  395. package/script/types/WallpaperId.d.ts.map +1 -0
  396. package/script/types/WallpaperId.js +2 -0
  397. package/script/types/WallpaperInstanceSettings.d.ts +45 -0
  398. package/script/types/WallpaperInstanceSettings.d.ts.map +1 -0
  399. package/script/types/WallpaperInstanceSettings.js +2 -0
  400. package/script/types/WidgetId.d.ts +3 -0
  401. package/script/types/WidgetId.d.ts.map +1 -1
  402. package/script/types/WindowManagerLayout.d.ts +1 -2
  403. package/script/types/WindowManagerLayout.d.ts.map +1 -1
  404. package/script/types/WmNode.d.ts +40 -15
  405. package/script/types/WmNode.d.ts.map +1 -1
  406. package/script/types/WmNodeKind.d.ts +2 -0
  407. package/script/types/WmNodeKind.d.ts.map +1 -0
  408. package/script/types/WmNodeKind.js +3 -0
  409. package/script/types/WmNodeLifetime.d.ts +2 -0
  410. package/script/types/WmNodeLifetime.d.ts.map +1 -0
  411. package/script/types/WmNodeLifetime.js +3 -0
  412. package/script/types/mod.d.ts +215 -201
  413. package/script/types/mod.d.ts.map +1 -1
  414. package/script/types/mod.js +215 -201
  415. package/script/utils/Wrapper.d.ts +3 -0
  416. package/script/utils/Wrapper.d.ts.map +1 -0
  417. package/script/utils/Wrapper.js +8 -0
  418. package/esm/resource.d.ts +0 -6
  419. package/esm/resource.d.ts.map +0 -1
  420. package/esm/types/AhkVar.d.ts +0 -7
  421. package/esm/types/AhkVar.d.ts.map +0 -1
  422. package/esm/types/AhkVarList.d.ts +0 -64
  423. package/esm/types/AhkVarList.d.ts.map +0 -1
  424. package/esm/types/FancyToolbarSettingsByMonitor.d.ts +0 -4
  425. package/esm/types/FancyToolbarSettingsByMonitor.d.ts.map +0 -1
  426. package/esm/types/NoFallbackBehavior.d.ts +0 -2
  427. package/esm/types/NoFallbackBehavior.d.ts.map +0 -1
  428. package/esm/types/NodeSubtype.d.ts +0 -2
  429. package/esm/types/NodeSubtype.d.ts.map +0 -1
  430. package/esm/types/SeelenCommandStateSetWallpaperArgs.d.ts +0 -4
  431. package/esm/types/SeelenCommandStateSetWallpaperArgs.d.ts.map +0 -1
  432. package/esm/types/SeelenWallSettingsByMonitor.d.ts +0 -6
  433. package/esm/types/SeelenWallSettingsByMonitor.d.ts.map +0 -1
  434. package/esm/types/SeelenWallWallpaper.d.ts +0 -5
  435. package/esm/types/SeelenWallWallpaper.d.ts.map +0 -1
  436. package/esm/types/SeelenWegSettingsByMonitor.d.ts +0 -8
  437. package/esm/types/SeelenWegSettingsByMonitor.d.ts.map +0 -1
  438. package/esm/types/VirtualDesktopStrategy.d.ts +0 -2
  439. package/esm/types/VirtualDesktopStrategy.d.ts.map +0 -1
  440. package/esm/types/WindowManagerSettingsByMonitor.d.ts +0 -9
  441. package/esm/types/WindowManagerSettingsByMonitor.d.ts.map +0 -1
  442. package/esm/types/WmFallbackNode.d.ts +0 -25
  443. package/esm/types/WmFallbackNode.d.ts.map +0 -1
  444. package/esm/types/WmHorizontalNode.d.ts +0 -19
  445. package/esm/types/WmHorizontalNode.d.ts.map +0 -1
  446. package/esm/types/WmLeafNode.d.ts +0 -21
  447. package/esm/types/WmLeafNode.d.ts.map +0 -1
  448. package/esm/types/WmStackNode.d.ts +0 -25
  449. package/esm/types/WmStackNode.d.ts.map +0 -1
  450. package/esm/types/WmVerticalNode.d.ts +0 -19
  451. package/esm/types/WmVerticalNode.d.ts.map +0 -1
  452. package/esm/types/WorkspaceConfiguration.d.ts +0 -8
  453. package/esm/types/WorkspaceConfiguration.d.ts.map +0 -1
  454. package/esm/types/WorkspaceIdentifier.d.ts +0 -6
  455. package/esm/types/WorkspaceIdentifier.d.ts.map +0 -1
  456. package/esm/types/WorkspaceIdentifierType.d.ts +0 -2
  457. package/esm/types/WorkspaceIdentifierType.d.ts.map +0 -1
  458. package/script/resource.d.ts +0 -6
  459. package/script/resource.d.ts.map +0 -1
  460. package/script/types/AhkVar.d.ts +0 -7
  461. package/script/types/AhkVar.d.ts.map +0 -1
  462. package/script/types/AhkVarList.d.ts +0 -64
  463. package/script/types/AhkVarList.d.ts.map +0 -1
  464. package/script/types/FancyToolbarSettingsByMonitor.d.ts +0 -4
  465. package/script/types/FancyToolbarSettingsByMonitor.d.ts.map +0 -1
  466. package/script/types/NoFallbackBehavior.d.ts +0 -2
  467. package/script/types/NoFallbackBehavior.d.ts.map +0 -1
  468. package/script/types/NodeSubtype.d.ts +0 -2
  469. package/script/types/NodeSubtype.d.ts.map +0 -1
  470. package/script/types/SeelenCommandStateSetWallpaperArgs.d.ts +0 -4
  471. package/script/types/SeelenCommandStateSetWallpaperArgs.d.ts.map +0 -1
  472. package/script/types/SeelenWallSettingsByMonitor.d.ts +0 -6
  473. package/script/types/SeelenWallSettingsByMonitor.d.ts.map +0 -1
  474. package/script/types/SeelenWallWallpaper.d.ts +0 -5
  475. package/script/types/SeelenWallWallpaper.d.ts.map +0 -1
  476. package/script/types/SeelenWegSettingsByMonitor.d.ts +0 -8
  477. package/script/types/SeelenWegSettingsByMonitor.d.ts.map +0 -1
  478. package/script/types/VirtualDesktopStrategy.d.ts +0 -2
  479. package/script/types/VirtualDesktopStrategy.d.ts.map +0 -1
  480. package/script/types/WindowManagerSettingsByMonitor.d.ts +0 -9
  481. package/script/types/WindowManagerSettingsByMonitor.d.ts.map +0 -1
  482. package/script/types/WmFallbackNode.d.ts +0 -25
  483. package/script/types/WmFallbackNode.d.ts.map +0 -1
  484. package/script/types/WmHorizontalNode.d.ts +0 -19
  485. package/script/types/WmHorizontalNode.d.ts.map +0 -1
  486. package/script/types/WmLeafNode.d.ts +0 -21
  487. package/script/types/WmLeafNode.d.ts.map +0 -1
  488. package/script/types/WmStackNode.d.ts +0 -25
  489. package/script/types/WmStackNode.d.ts.map +0 -1
  490. package/script/types/WmVerticalNode.d.ts +0 -19
  491. package/script/types/WmVerticalNode.d.ts.map +0 -1
  492. package/script/types/WorkspaceConfiguration.d.ts +0 -8
  493. package/script/types/WorkspaceConfiguration.d.ts.map +0 -1
  494. package/script/types/WorkspaceIdentifier.d.ts +0 -6
  495. package/script/types/WorkspaceIdentifier.d.ts.map +0 -1
  496. package/script/types/WorkspaceIdentifierType.d.ts +0 -2
  497. package/script/types/WorkspaceIdentifierType.d.ts.map +0 -1
  498. /package/esm/{resource.js → resource/mod.js} +0 -0
  499. /package/esm/types/{AhkVar.js → CssVariableName.js} +0 -0
  500. /package/esm/types/{AhkVarList.js → CustomIconPackEntry.js} +0 -0
  501. /package/esm/types/{SeelenWallSettingsByMonitor.js → IconPackEntry.js} +0 -0
  502. /package/esm/types/{FancyToolbarSettingsByMonitor.js → MediaPlayerTimeline.js} +0 -0
  503. /package/esm/types/{NoFallbackBehavior.js → MixBlendMode.js} +0 -0
  504. /package/esm/types/{NodeSubtype.js → MonitorId.js} +0 -0
  505. /package/esm/types/{SeelenCommandStateSetWallpaperArgs.js → ObjectFit.js} +0 -0
  506. /package/esm/types/{SeelenWallWallpaper.js → ObjectPosition.js} +0 -0
  507. /package/esm/types/{VirtualDesktopStrategy.js → PlaybackSpeed.js} +0 -0
  508. /package/esm/types/{WorkspaceIdentifierType.js → ResourceAttribute.js} +0 -0
  509. /package/esm/types/{SeelenWegSettingsByMonitor.js → SeelenCommandCreatePopupArgs.js} +0 -0
  510. /package/esm/types/{WindowManagerSettingsByMonitor.js → SeelenCommandRemoveResourceArgs.js} +0 -0
  511. /package/esm/types/{WmFallbackNode.js → SeelenCommandStateGetWegItemsArgs.js} +0 -0
  512. /package/esm/types/{WmHorizontalNode.js → SeelenCommandStateSetCustomIconPackArgs.js} +0 -0
  513. /package/esm/types/{WmLeafNode.js → SeelenCommandUpdatePopupArgs.js} +0 -0
  514. /package/esm/types/{WmStackNode.js → SharedIconPackEntry.js} +0 -0
  515. /package/esm/types/{WmVerticalNode.js → SluHotkey.js} +0 -0
  516. /package/esm/types/{WorkspaceConfiguration.js → SluShortcutsSettings.js} +0 -0
  517. /package/esm/types/{WorkspaceIdentifier.js → ThemeConfigDefinition.js} +0 -0
  518. /package/script/{resource.js → resource/mod.js} +0 -0
  519. /package/script/types/{AhkVar.js → CssVariableName.js} +0 -0
  520. /package/script/types/{AhkVarList.js → CustomIconPackEntry.js} +0 -0
  521. /package/script/types/{SeelenWallSettingsByMonitor.js → IconPackEntry.js} +0 -0
  522. /package/script/types/{FancyToolbarSettingsByMonitor.js → MediaPlayerTimeline.js} +0 -0
  523. /package/script/types/{NoFallbackBehavior.js → MixBlendMode.js} +0 -0
  524. /package/script/types/{NodeSubtype.js → MonitorId.js} +0 -0
  525. /package/script/types/{SeelenCommandStateSetWallpaperArgs.js → ObjectFit.js} +0 -0
  526. /package/script/types/{SeelenWallWallpaper.js → ObjectPosition.js} +0 -0
  527. /package/script/types/{VirtualDesktopStrategy.js → PlaybackSpeed.js} +0 -0
  528. /package/script/types/{WorkspaceIdentifierType.js → ResourceAttribute.js} +0 -0
  529. /package/script/types/{SeelenWegSettingsByMonitor.js → SeelenCommandCreatePopupArgs.js} +0 -0
  530. /package/script/types/{WindowManagerSettingsByMonitor.js → SeelenCommandRemoveResourceArgs.js} +0 -0
  531. /package/script/types/{WmFallbackNode.js → SeelenCommandStateGetWegItemsArgs.js} +0 -0
  532. /package/script/types/{WmHorizontalNode.js → SeelenCommandStateSetCustomIconPackArgs.js} +0 -0
  533. /package/script/types/{WmLeafNode.js → SeelenCommandUpdatePopupArgs.js} +0 -0
  534. /package/script/types/{WmStackNode.js → SharedIconPackEntry.js} +0 -0
  535. /package/script/types/{WmVerticalNode.js → SluHotkey.js} +0 -0
  536. /package/script/types/{WorkspaceConfiguration.js → SluShortcutsSettings.js} +0 -0
  537. /package/script/types/{WorkspaceIdentifier.js → ThemeConfigDefinition.js} +0 -0
@@ -1,7 +1,6 @@
1
1
  import { List } from '../utils/List.js';
2
2
  import { newFromInvoke, newOnEvent } from '../utils/State.js';
3
3
  import { invoke, SeelenCommand, SeelenEvent } from '../handlers/mod.js';
4
- import { path } from '@tauri-apps/api';
5
4
  import { Settings } from './settings/mod.js';
6
5
  import { convertFileSrc } from '@tauri-apps/api/core';
7
6
  export class IconPackList extends List {
@@ -16,42 +15,50 @@ export class IconPackList extends List {
16
15
  * Class helper to allow easy use of icon packs
17
16
  */
18
17
  export class IconPackManager {
19
- iconPackPath;
20
- _iconPacks;
21
- _actives;
18
+ _availableIconPacks;
19
+ _activeIconPackIds;
22
20
  callbacks = new Set();
23
- unlistenerSettings = null;
24
- unlistenerIcons = null;
25
- static resolveIcon(parent, icon) {
26
- if (typeof icon === 'string') {
27
- return `${parent}\\${icon}`;
28
- }
29
- return {
30
- light: `${parent}\\${icon.light}`,
31
- dark: `${parent}\\${icon.dark}`,
32
- mask: icon.mask ? `${parent}\\${icon.mask}` : null,
33
- };
21
+ unlisteners = [];
22
+ isListeningForChanges = false;
23
+ /// list of active icon packs and fully resolved paths
24
+ activeIconPacks = [];
25
+ constructor(_availableIconPacks, _activeIconPackIds) {
26
+ this._availableIconPacks = _availableIconPacks;
27
+ this._activeIconPackIds = _activeIconPackIds;
34
28
  }
35
- static resolveIconAsSrc(icon) {
36
- if (typeof icon === 'string') {
37
- return convertFileSrc(icon);
38
- }
39
- return {
40
- light: convertFileSrc(icon.light),
41
- dark: convertFileSrc(icon.dark),
42
- mask: icon.mask ? convertFileSrc(icon.mask) : null,
43
- };
29
+ get iconPacks() {
30
+ return this._availableIconPacks;
44
31
  }
45
- constructor(iconPackPath, _iconPacks, _actives) {
46
- this.iconPackPath = iconPackPath;
47
- this._iconPacks = _iconPacks;
48
- this._actives = _actives;
32
+ get activeIconPackIds() {
33
+ return this._activeIconPackIds;
49
34
  }
50
- get iconPacks() {
51
- return this._iconPacks;
35
+ resolveAvailableIcons() {
36
+ for (const pack of this._availableIconPacks) {
37
+ const path = `${pack.metadata.path}`;
38
+ if (pack.missing) {
39
+ pack.missing = resolveIcon(path, pack.missing);
40
+ }
41
+ for (const entry of pack.entries) {
42
+ if (entry.type === 'unique') {
43
+ entry.path = entry.path?.toLowerCase() || null;
44
+ }
45
+ if (entry.type === 'shared') {
46
+ entry.extension = entry.extension.toLowerCase();
47
+ }
48
+ if (entry.icon) {
49
+ entry.icon = resolveIcon(path, entry.icon);
50
+ }
51
+ }
52
+ }
52
53
  }
53
- get actives() {
54
- return this._actives;
54
+ cacheActiveIconPacks() {
55
+ this.activeIconPacks = [];
56
+ for (const key of this._activeIconPackIds.toReversed()) {
57
+ const pack = this._availableIconPacks.find((p) => p.id === key);
58
+ if (pack) {
59
+ this.activeIconPacks.push(pack);
60
+ }
61
+ }
55
62
  }
56
63
  /**
57
64
  * Creates an instance of IconPackManager. This intance will be updated when
@@ -60,7 +67,9 @@ export class IconPackManager {
60
67
  * @returns A new instance of IconPackManager
61
68
  */
62
69
  static async create() {
63
- const instance = new IconPackManager(await path.resolve(await path.appDataDir(), 'icons'), await IconPackList.getAsync(), (await Settings.getAsync()).inner.iconPacks);
70
+ const instance = new IconPackManager((await IconPackList.getAsync()).asArray(), (await Settings.getAsync()).inner.activeIconPacks);
71
+ instance.resolveAvailableIcons();
72
+ instance.cacheActiveIconPacks();
64
73
  return instance;
65
74
  }
66
75
  /**
@@ -96,21 +105,27 @@ export class IconPackManager {
96
105
  */
97
106
  async onChange(cb) {
98
107
  this.callbacks.add(cb);
99
- if (!this.unlistenerIcons && !this.unlistenerSettings) {
100
- this.unlistenerIcons = await IconPackList.onChange((list) => {
101
- this._iconPacks = list;
108
+ if (!this.isListeningForChanges) {
109
+ this.isListeningForChanges = true;
110
+ const unlistenerIcons = await IconPackList.onChange((list) => {
111
+ this._availableIconPacks = JSON.parse(JSON.stringify(list.all()));
112
+ this.resolveAvailableIcons();
113
+ this.cacheActiveIconPacks();
102
114
  this.callbacks.forEach((cb) => cb());
103
115
  });
104
- this.unlistenerSettings = await Settings.onChange((settings) => {
105
- this._actives = settings.inner.iconPacks;
116
+ const unlistenerSettings = await Settings.onChange((settings) => {
117
+ this._activeIconPackIds = settings.inner.activeIconPacks;
118
+ this.cacheActiveIconPacks();
106
119
  this.callbacks.forEach((cb) => cb());
107
120
  });
121
+ this.unlisteners = [unlistenerIcons, unlistenerSettings];
108
122
  }
109
123
  return () => {
110
124
  this.callbacks.delete(cb);
111
125
  if (this.callbacks.size === 0) {
112
- this.unlistenerIcons?.();
113
- this.unlistenerSettings?.();
126
+ this.unlisteners.forEach((unlisten) => unlisten());
127
+ this.unlisteners = [];
128
+ this.isListeningForChanges = false;
114
129
  }
115
130
  };
116
131
  }
@@ -119,11 +134,9 @@ export class IconPackManager {
119
134
  *
120
135
  * The search for icons follows this priority order:
121
136
  * 1. UMID (App User Model Id)
122
- * 2. Full path or filename (for executable files like .exe or .lnk)
123
- * 3. File extension (for non-executable files like .png, .jpg, .txt)
124
- *
125
- * Icon packs are searched in the order of their priority. An icon from a higher-priority pack
126
- * will override an icon from a lower-priority pack, even if the latter matches the search criteria.
137
+ * 2. Full path
138
+ * 3. Filename (this is only used to match executable files like .exe)
139
+ * 4. Extension
127
140
  *
128
141
  * @param {Object} args - Arguments for retrieving the icon path.
129
142
  * @param {string} [args.path] - The full path to the app or file.
@@ -141,102 +154,78 @@ export class IconPackManager {
141
154
  * umid: "Seelen.SeelenUI_p6yyn03m1894e!App"
142
155
  * });
143
156
  */
144
- getIconPath({ path, umid }) {
157
+ getIconPath(args) {
158
+ const { path, umid, __seen = new Set() } = args;
145
159
  // If neither path nor UMID is provided, return null
146
160
  if (!path && !umid) {
147
161
  return null;
148
162
  }
149
- // Create an ordered list of icon packs based on their priority
150
- const orderedPacks = [];
151
- for (const active of this.actives.toReversed()) {
152
- const pack = this._iconPacks.asArray().find((p) => p.metadata.filename === active);
153
- if (pack) {
154
- orderedPacks.push(pack);
155
- }
156
- }
157
- // Search by UMID first (highest priority)
158
- if (umid) {
159
- for (const pack of orderedPacks) {
160
- const icon = pack.apps[umid];
161
- if (icon) {
162
- return IconPackManager.resolveIcon(`${this.iconPackPath}\\${pack.metadata.filename}`, icon);
163
- }
163
+ const lowerPath = path?.toLowerCase();
164
+ const extension = lowerPath?.split('.').pop();
165
+ for (const pack of this.activeIconPacks) {
166
+ let entry;
167
+ if (umid) {
168
+ entry = pack.entries.find((e) => e.type === 'unique' && !!e.umid && e.umid === umid);
164
169
  }
165
- }
166
- // If no UMID is provided, search by path
167
- if (!path) {
168
- return null;
169
- }
170
- const lowercasedPath = path.toLowerCase();
171
- const isExecutable = lowercasedPath.endsWith('.exe') || lowercasedPath.endsWith('.lnk');
172
- // For non-executable files, search by file extension
173
- if (!isExecutable) {
174
- const extension = lowercasedPath.split('.').pop();
175
- if (!extension) {
176
- return null;
170
+ if (!entry && lowerPath) {
171
+ entry = pack.entries.find((e) => {
172
+ if (e.type !== 'unique' || !e.path) {
173
+ return false;
174
+ }
175
+ if (e.path === lowerPath) {
176
+ return true;
177
+ }
178
+ // only search for filename in case of executable files
179
+ if (extension === 'exe') {
180
+ const filename = lowerPath.split('\\').pop();
181
+ if (filename && e.path.endsWith(filename)) {
182
+ return true;
183
+ }
184
+ }
185
+ return false;
186
+ });
177
187
  }
178
- for (const pack of orderedPacks) {
179
- const icon = pack.files[extension];
180
- if (icon) {
181
- return IconPackManager.resolveIcon(`${this.iconPackPath}\\${pack.metadata.filename}`, icon);
188
+ if (entry) {
189
+ if (entry.redirect) {
190
+ // break circular references
191
+ if (__seen.has(entry.redirect)) {
192
+ return null;
193
+ }
194
+ __seen.add(entry.redirect);
195
+ return this.getIconPath({ path: entry.redirect, __seen });
196
+ }
197
+ if (entry.icon) {
198
+ return entry.icon;
182
199
  }
183
200
  }
184
- return null;
185
201
  }
186
- // For executable files, search by full path or filename
187
- const filename = path.split(/[/\\]/g).pop();
188
- if (!filename) {
202
+ // search by file extension
203
+ if (!extension) {
189
204
  return null;
190
205
  }
191
- for (const pack of orderedPacks) {
192
- const icon = pack.apps[path] || pack.apps[filename];
206
+ for (const pack of this.activeIconPacks) {
207
+ const icon = pack.entries.find((e) => {
208
+ return e.type === 'shared' && e.extension === extension;
209
+ });
193
210
  if (icon) {
194
- return IconPackManager.resolveIcon(`${this.iconPackPath}\\${pack.metadata.filename}`, icon);
211
+ return icon.icon;
195
212
  }
196
213
  }
197
214
  // If no icon is found in any icon pack, return null
198
215
  return null;
199
216
  }
200
- /**
201
- * Returns the icon Url/Src for an app or file. If no icon is available, returns `null`.
202
- *
203
- * The search for icons follows this priority order:
204
- * 1. UMID (App User Model Id)
205
- * 2. Full path or filename (for executable files like .exe or .lnk)
206
- * 3. File extension (for non-executable files like .png, .jpg, .txt)
207
- *
208
- * Icon packs are searched in the order of their priority. An icon from a higher-priority pack
209
- * will override an icon from a lower-priority pack, even if the latter matches the search criteria.
210
- *
211
- * @param {Object} args - Arguments for retrieving the icon path.
212
- * @param {string} [args.path] - The full path to the app or file.
213
- * @param {string} [args.umid] - The UMID of the app.
214
- * @returns {string | null} - The path to the icon, or `null` if no icon is found.
215
- *
216
- * @example
217
- * // Example 1: Get icon by full path
218
- * const iconSrc = instance.getIconPath({
219
- * path: "C:\\Program Files\\Steam\\steam.exe"
220
- * });
221
- *
222
- * // Example 2: Get icon by UMID
223
- * const iconSrc = instance.getIconPath({
224
- * umid: "Seelen.SeelenUI_p6yyn03m1894e!App"
225
- * });
226
- */
227
217
  getIcon({ path, umid }) {
228
218
  const iconPath = this.getIconPath({ path, umid });
229
- return iconPath ? IconPackManager.resolveIconAsSrc(iconPath) : null;
219
+ return iconPath ? resolveAsSrc(iconPath) : null;
230
220
  }
231
221
  /**
232
222
  * Will return the special missing icon path from the highest priority icon pack.
233
223
  * If no icon pack haves a missing icon, will return null.
234
224
  */
235
225
  getMissingIconPath() {
236
- for (const active of this.actives.toReversed()) {
237
- const pack = this.iconPacks.asArray().find((p) => p.metadata.filename === active);
238
- if (pack && pack.missing) {
239
- return IconPackManager.resolveIcon(`${this.iconPackPath}\\${pack.metadata.filename}`, pack.missing);
226
+ for (const pack of this.activeIconPacks) {
227
+ if (pack.missing) {
228
+ return pack.missing;
240
229
  }
241
230
  }
242
231
  return null;
@@ -247,33 +236,32 @@ export class IconPackManager {
247
236
  */
248
237
  getMissingIcon() {
249
238
  const iconPath = this.getMissingIconPath();
250
- return iconPath ? IconPackManager.resolveIconAsSrc(iconPath) : null;
239
+ return iconPath ? resolveAsSrc(iconPath) : null;
251
240
  }
252
241
  /**
253
- * Will return the specifit icon path from the highest priority icon pack.
242
+ * Will return the specific icon path from the highest priority icon pack.
254
243
  * If no icon pack haves the searched icon, will return null.
255
244
  */
256
- getSpecificIconPath(name) {
257
- for (const active of this.actives.toReversed()) {
258
- const pack = this.iconPacks.asArray().find((p) => p.metadata.filename === active);
259
- const icon = pack?.specific[name];
260
- if (icon) {
261
- return IconPackManager.resolveIcon(`${this.iconPackPath}\\${pack.metadata.filename}`, icon);
245
+ getCustomIconPath(name) {
246
+ for (const pack of this.activeIconPacks) {
247
+ const entry = pack.entries.find((e) => e.type === 'custom' && e.key === name);
248
+ if (entry) {
249
+ return entry.icon;
262
250
  }
263
251
  }
264
252
  return null;
265
253
  }
266
254
  /**
267
- * Will return the specifit icon SRC from the highest priority icon pack.
255
+ * Will return the specific icon SRC from the highest priority icon pack.
268
256
  * If no icon pack haves the searched icon, will return null.
269
257
  */
270
- getSpecificIcon(name) {
271
- const iconPath = this.getSpecificIconPath(name);
272
- return iconPath ? IconPackManager.resolveIconAsSrc(iconPath) : null;
258
+ getCustomIcon(name) {
259
+ const iconPath = this.getCustomIconPath(name);
260
+ return iconPath ? resolveAsSrc(iconPath) : null;
273
261
  }
274
262
  /**
275
- * Return the icon Path for an app or file, in case of no icon available will return `null`.\
276
- * This method doesn't take in care icon packs, just extracts the inherited icon into system's icon pack.
263
+ * This method doesn't take in care icon packs, just extracts the inherited icon into system's icon pack
264
+ * if it's not already there.
277
265
  *
278
266
  * @param filePath The path to the app could be umid o full path
279
267
  * @example
@@ -284,7 +272,7 @@ export class IconPackManager {
284
272
  * umid: "Seelen.SeelenUI_p6yyn03m1894e!App"
285
273
  * });
286
274
  */
287
- static extractIcon(obj) {
275
+ static requestIconExtraction(obj) {
288
276
  return invoke(SeelenCommand.GetIcon, obj);
289
277
  }
290
278
  /**
@@ -295,3 +283,21 @@ export class IconPackManager {
295
283
  return invoke(SeelenCommand.StateDeleteCachedIcons);
296
284
  }
297
285
  }
286
+ function resolveIcon(parent, icon) {
287
+ return {
288
+ base: icon.base ? `${parent}\\${icon.base}` : null,
289
+ light: icon.light ? `${parent}\\${icon.light}` : null,
290
+ dark: icon.dark ? `${parent}\\${icon.dark}` : null,
291
+ mask: icon.mask ? `${parent}\\${icon.mask}` : null,
292
+ isAproximatelySquare: icon.isAproximatelySquare,
293
+ };
294
+ }
295
+ function resolveAsSrc(icon) {
296
+ return {
297
+ base: icon.base ? convertFileSrc(icon.base) : null,
298
+ light: icon.light ? convertFileSrc(icon.light) : null,
299
+ dark: icon.dark ? convertFileSrc(icon.dark) : null,
300
+ mask: icon.mask ? convertFileSrc(icon.mask) : null,
301
+ isAproximatelySquare: icon.isAproximatelySquare,
302
+ };
303
+ }
@@ -11,10 +11,11 @@ export * from './icon_pack.js';
11
11
  export * from './plugin/mod.js';
12
12
  export * from './widget/mod.js';
13
13
  export * from './profile.js';
14
+ export * from './wallpaper/mod.js';
14
15
  export declare class LauncherHistory {
15
16
  inner: ILauncherHistory;
16
17
  constructor(inner: ILauncherHistory);
17
18
  static getAsync(): Promise<LauncherHistory>;
18
- static onChange(cb: (user: LauncherHistory) => void): Promise<UnSubscriber>;
19
+ static onChange(cb: (payload: LauncherHistory) => void): Promise<UnSubscriber>;
19
20
  }
20
21
  //# sourceMappingURL=mod.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/state/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEnF,OAAO,KAAK,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE3E,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAE7B,qBAAa,eAAe;IACP,KAAK,EAAE,gBAAgB;gBAAvB,KAAK,EAAE,gBAAgB;IAE1C,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC;IAI3C,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;CAG5E"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/state/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEnF,OAAO,KAAK,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE3E,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AAEnC,qBAAa,eAAe;IACP,KAAK,EAAE,gBAAgB;gBAAvB,KAAK,EAAE,gBAAgB;IAE1C,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC;IAI3C,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;CAG/E"}
package/esm/state/mod.js CHANGED
@@ -11,6 +11,7 @@ export * from './icon_pack.js';
11
11
  export * from './plugin/mod.js';
12
12
  export * from './widget/mod.js';
13
13
  export * from './profile.js';
14
+ export * from './wallpaper/mod.js';
14
15
  export class LauncherHistory {
15
16
  inner;
16
17
  constructor(inner) {
@@ -3,7 +3,7 @@ import { List } from '../../utils/List.js';
3
3
  import type { Plugin } from '../../types/mod.js';
4
4
  export declare class PluginList extends List<Plugin> {
5
5
  static getAsync(): Promise<PluginList>;
6
- static onChange(cb: (user: PluginList) => void): Promise<UnSubscriber>;
6
+ static onChange(cb: (payload: PluginList) => void): Promise<UnSubscriber>;
7
7
  forCurrentWidget(): Plugin[];
8
8
  }
9
9
  //# sourceMappingURL=mod.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/state/plugin/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,qBAAa,UAAW,SAAQ,IAAI,CAAC,MAAM,CAAC;IAC1C,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC;IAItC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAItE,gBAAgB,IAAI,MAAM,EAAE;CAI7B"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/state/plugin/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,qBAAa,UAAW,SAAQ,IAAI,CAAC,MAAM,CAAC;IAC1C,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC;IAItC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAIzE,gBAAgB,IAAI,MAAM,EAAE;CAI7B"}
@@ -1,12 +1,14 @@
1
1
  import { type UnSubscriber } from '../../handlers/mod.js';
2
- import type { FancyToolbarSettings, FancyToolbarSide, HideMode, SeelenLauncherMonitor, SeelenLauncherSettings, SeelenWallSettings, SeelenWegMode, SeelenWegSettings, SeelenWegSide, Settings as ISettings, ThirdPartyWidgetSettings, UpdateChannel, VirtualDesktopStrategy, WindowManagerSettings } from '../../types/mod.js';
2
+ import type { FancyToolbarSettings, FancyToolbarSide, HideMode, SeelenLauncherMonitor, SeelenLauncherSettings, SeelenWallSettings, SeelenWegMode, SeelenWegSettings, SeelenWegSide, Settings as ISettings, ThirdPartyWidgetSettings, UpdateChannel, WindowManagerSettings } from '../../types/mod.js';
3
3
  import type { Enum } from '../../utils/enums.js';
4
+ export interface Settings extends ISettings {
5
+ }
4
6
  export declare class Settings {
5
7
  inner: ISettings;
6
8
  constructor(inner: ISettings);
7
9
  static default(): Promise<Settings>;
8
10
  static getAsync(): Promise<Settings>;
9
- static onChange(cb: (user: Settings) => void): Promise<UnSubscriber>;
11
+ static onChange(cb: (payload: Settings) => void): Promise<UnSubscriber>;
10
12
  static loadCustom(path: string): Promise<Settings>;
11
13
  /**
12
14
  * Returns the settings for the current widget, taking in care of the replicas
@@ -16,7 +18,7 @@ export declare class Settings {
16
18
  * - the instance patch settings (if apply)
17
19
  * - the monitor patch settings (if apply)
18
20
  */
19
- getCurrentWidgetConfig(): Promise<ThirdPartyWidgetSettings>;
21
+ getCurrentWidgetConfig(): ThirdPartyWidgetSettings;
20
22
  private getBundledWidgetConfig;
21
23
  get fancyToolbar(): FancyToolbarSettings;
22
24
  get seelenweg(): SeelenWegSettings;
@@ -27,12 +29,11 @@ export declare class Settings {
27
29
  save(): Promise<void>;
28
30
  }
29
31
  declare const FancyToolbarSide: Enum<FancyToolbarSide>;
30
- declare const VirtualDesktopStrategy: Enum<VirtualDesktopStrategy>;
31
32
  declare const SeelenWegMode: Enum<SeelenWegMode>;
32
33
  declare const HideMode: Enum<HideMode>;
33
34
  declare const SeelenWegSide: Enum<SeelenWegSide>;
34
35
  declare const SeelenLauncherMonitor: Enum<SeelenLauncherMonitor>;
35
36
  declare const UpdateChannel: Enum<UpdateChannel>;
36
- export { FancyToolbarSide, HideMode, SeelenLauncherMonitor, SeelenWegMode, SeelenWegSide, UpdateChannel, VirtualDesktopStrategy, };
37
+ export { FancyToolbarSide, HideMode, SeelenLauncherMonitor, SeelenWegMode, SeelenWegSide, UpdateChannel };
37
38
  export * from './settings_by_monitor.js';
38
39
  //# sourceMappingURL=mod.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/state/settings/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEtF,OAAO,KAAK,EACV,oBAAoB,EACpB,gBAAgB,EAChB,QAAQ,EACR,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,QAAQ,IAAI,SAAS,EACrB,wBAAwB,EACxB,aAAa,EACb,sBAAsB,EAEtB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAWjD,qBAAa,QAAQ;IACA,KAAK,EAAE,SAAS;gBAAhB,KAAK,EAAE,SAAS;IAEnC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;IAInC,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIpC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAIpE,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIlD;;;;;;;OAOG;IACG,sBAAsB,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAkBjE,OAAO,CAAC,sBAAsB;IAM9B,IAAI,YAAY,IAAI,oBAAoB,CAEvC;IAED,IAAI,SAAS,IAAI,iBAAiB,CAEjC;IAED,IAAI,aAAa,IAAI,qBAAqB,CAEzC;IAED,IAAI,QAAQ,IAAI,sBAAsB,CAErC;IAED,IAAI,IAAI,IAAI,kBAAkB,CAE7B;IAED,sCAAsC;IACtC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAGtB;AAMD,QAAA,MAAM,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAG5C,CAAC;AAEF,QAAA,MAAM,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,CAGxD,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,IAAI,CAAC,aAAa,CAGtC,CAAC;AAEF,QAAA,MAAM,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAI5B,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,IAAI,CAAC,aAAa,CAKtC,CAAC;AAEF,QAAA,MAAM,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,CAGtD,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,IAAI,CAAC,aAAa,CAItC,CAAC;AAEF,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,aAAa,EACb,sBAAsB,GACvB,CAAC;AAEF,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/state/settings/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEtF,OAAO,KAAK,EACV,oBAAoB,EACpB,gBAAgB,EAChB,QAAQ,EACR,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,QAAQ,IAAI,SAAS,EACrB,wBAAwB,EACxB,aAAa,EAEb,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAWjD,MAAM,WAAW,QAAS,SAAQ,SAAS;CAAG;AAC9C,qBAAa,QAAQ;IACA,KAAK,EAAE,SAAS;gBAAhB,KAAK,EAAE,SAAS;IAInC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;IAInC,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIpC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAIvE,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIlD;;;;;;;OAOG;IACH,sBAAsB,IAAI,wBAAwB;IAkBlD,OAAO,CAAC,sBAAsB;IAM9B,IAAI,YAAY,IAAI,oBAAoB,CAEvC;IAED,IAAI,SAAS,IAAI,iBAAiB,CAEjC;IAED,IAAI,aAAa,IAAI,qBAAqB,CAEzC;IAED,IAAI,QAAQ,IAAI,sBAAsB,CAErC;IAED,IAAI,IAAI,IAAI,kBAAkB,CAE7B;IAED,sCAAsC;IACtC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAGtB;AAMD,QAAA,MAAM,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAG5C,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,IAAI,CAAC,aAAa,CAGtC,CAAC;AAEF,QAAA,MAAM,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAI5B,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,IAAI,CAAC,aAAa,CAKtC,CAAC;AAEF,QAAA,MAAM,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,CAGtD,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,IAAI,CAAC,aAAa,CAItC,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,qBAAqB,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC;AAE1G,cAAc,0BAA0B,CAAC"}
@@ -6,6 +6,7 @@ export class Settings {
6
6
  inner;
7
7
  constructor(inner) {
8
8
  this.inner = inner;
9
+ Object.assign(this, this.inner);
9
10
  }
10
11
  static default() {
11
12
  return newFromInvoke(this, SeelenCommand.StateGetDefaultSettings);
@@ -27,13 +28,13 @@ export class Settings {
27
28
  * - the instance patch settings (if apply)
28
29
  * - the monitor patch settings (if apply)
29
30
  */
30
- async getCurrentWidgetConfig() {
31
- const currentWidget = await Widget.getCurrentAsync();
31
+ getCurrentWidgetConfig() {
32
+ const currentWidget = Widget.getCurrent();
32
33
  const widgetId = currentWidget.id;
33
34
  const { monitorId, instanceId } = currentWidget.decoded;
34
35
  const root = this.inner.byWidget[widgetId];
35
36
  const instance = instanceId ? root?.$instances?.[instanceId] : undefined;
36
- const monitor = monitorId ? this.inner.monitorsV2[monitorId]?.byWidget[widgetId] : undefined;
37
+ const monitor = monitorId ? this.inner.monitorsV3[monitorId]?.byWidget[widgetId] : undefined;
37
38
  return {
38
39
  ...currentWidget.getDefaultConfig(),
39
40
  ...(root || {}),
@@ -74,10 +75,6 @@ const FancyToolbarSide = {
74
75
  Top: 'Top',
75
76
  Bottom: 'Bottom',
76
77
  };
77
- const VirtualDesktopStrategy = {
78
- Native: 'Native',
79
- Seelen: 'Seelen',
80
- };
81
78
  const SeelenWegMode = {
82
79
  FullWidth: 'FullWidth',
83
80
  MinContent: 'MinContent',
@@ -102,5 +99,5 @@ const UpdateChannel = {
102
99
  Beta: 'Beta',
103
100
  Nightly: 'Nightly',
104
101
  };
105
- export { FancyToolbarSide, HideMode, SeelenLauncherMonitor, SeelenWegMode, SeelenWegSide, UpdateChannel, VirtualDesktopStrategy, };
102
+ export { FancyToolbarSide, HideMode, SeelenLauncherMonitor, SeelenWegMode, SeelenWegSide, UpdateChannel };
106
103
  export * from './settings_by_monitor.js';
@@ -1,10 +1,7 @@
1
- import type { MonitorConfiguration as IMonitorConfiguration, WorkspaceIdentifierType } from '../../types/mod.js';
2
- import type { Enum } from '../../utils/enums.js';
1
+ import type { MonitorConfiguration as IMonitorConfiguration } from '../../types/mod.js';
3
2
  export declare class MonitorConfiguration {
4
3
  inner: IMonitorConfiguration;
5
4
  constructor(inner: IMonitorConfiguration);
6
5
  static default(): Promise<MonitorConfiguration>;
7
6
  }
8
- declare const WorkspaceIdentifierType: Enum<WorkspaceIdentifierType>;
9
- export { WorkspaceIdentifierType };
10
7
  //# sourceMappingURL=settings_by_monitor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings_by_monitor.d.ts","sourceRoot":"","sources":["../../../src/state/settings/settings_by_monitor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,IAAI,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAEjH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAEjD,qBAAa,oBAAoB;IACZ,KAAK,EAAE,qBAAqB;gBAA5B,KAAK,EAAE,qBAAqB;IAE/C,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,oBAAoB,CAAC;CAGhD;AAMD,QAAA,MAAM,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,CAG1D,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
1
+ {"version":3,"file":"settings_by_monitor.d.ts","sourceRoot":"","sources":["../../../src/state/settings/settings_by_monitor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,IAAI,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAGxF,qBAAa,oBAAoB;IACZ,KAAK,EAAE,qBAAqB;gBAA5B,KAAK,EAAE,qBAAqB;IAE/C,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,oBAAoB,CAAC;CAGhD"}
@@ -9,11 +9,3 @@ export class MonitorConfiguration {
9
9
  return newFromInvoke(this, SeelenCommand.StateGetDefaultMonitorSettings);
10
10
  }
11
11
  }
12
- // =================================================================================
13
- // From here some enums as helpers like @seelen-ui/types only contains types
14
- // =================================================================================
15
- const WorkspaceIdentifierType = {
16
- Name: 'Name',
17
- Index: 'Index',
18
- };
19
- export { WorkspaceIdentifierType };
@@ -4,7 +4,7 @@ import { type UnSubscriber } from '../handlers/mod.js';
4
4
  import type { Enum } from '../utils/enums.js';
5
5
  export declare class AppConfigurationList extends List<AppConfig> {
6
6
  static getAsync(): Promise<AppConfigurationList>;
7
- static onChange(cb: (user: AppConfigurationList) => void): Promise<UnSubscriber>;
7
+ static onChange(cb: (payload: AppConfigurationList) => void): Promise<UnSubscriber>;
8
8
  }
9
9
  declare const AppExtraFlag: Enum<AppExtraFlag>;
10
10
  declare const AppIdentifierType: Enum<AppIdentifierType>;
@@ -1 +1 @@
1
- {"version":3,"file":"settings_by_app.d.ts","sourceRoot":"","sources":["../../src/state/settings_by_app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACpG,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGnF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,qBAAa,oBAAqB,SAAQ,IAAI,CAAC,SAAS,CAAC;IACvD,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAIhD,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;CAGjF;AAMD,QAAA,MAAM,YAAY,EAAE,IAAI,CAAC,YAAY,CAMpC,CAAC;AAEF,QAAA,MAAM,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAK9C,CAAC;AAEF,QAAA,MAAM,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAM5C,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"settings_by_app.d.ts","sourceRoot":"","sources":["../../src/state/settings_by_app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACpG,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGnF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,qBAAa,oBAAqB,SAAQ,IAAI,CAAC,SAAS,CAAC;IACvD,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAIhD,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;CAGpF;AAMD,QAAA,MAAM,YAAY,EAAE,IAAI,CAAC,YAAY,CAMpC,CAAC;AAEF,QAAA,MAAM,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAK9C,CAAC;AAEF,QAAA,MAAM,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAM5C,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,8 +1,24 @@
1
- import type { Theme } from '../../types/mod.js';
1
+ import type { ResourceId, Settings as ISettings, Theme as ITheme, ThemeId, ThemeVariableDefinition } from '../../types/mod.js';
2
2
  import { type UnSubscriber } from '../../handlers/mod.js';
3
3
  import { List } from '../../utils/List.js';
4
- export declare class ThemeList extends List<Theme> {
4
+ export declare class ThemeList extends List<ITheme> {
5
5
  static getAsync(): Promise<ThemeList>;
6
- static onChange(cb: (user: ThemeList) => void): Promise<UnSubscriber>;
6
+ static onChange(cb: (payload: ThemeList) => void): Promise<UnSubscriber>;
7
+ applyToDocument(activeIds: ThemeId[], variables: ISettings['byTheme']): void;
7
8
  }
9
+ export interface Theme extends ITheme {
10
+ }
11
+ export declare class Theme {
12
+ constructor(plain: ITheme);
13
+ forEachVariableDefinition(cb: (def: ThemeVariableDefinition) => void): void;
14
+ /** Will add the styles targeting the current widget id */
15
+ applyToDocument(varValues?: ISettings['byTheme'][ResourceId]): void;
16
+ removeFromDocument(): void;
17
+ }
18
+ export declare function removeAllThemeStyles(): void;
19
+ /**
20
+ * This will apply the active themes for this widget, and automatically update
21
+ * when the themes or settings change. Also will add the systehm ui colors to the document.
22
+ */
23
+ export declare function startThemingTool(): Promise<void>;
8
24
  //# sourceMappingURL=mod.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/state/theme/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,qBAAa,SAAU,SAAQ,IAAI,CAAC,KAAK,CAAC;IACxC,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;IAIrC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;CAGtE"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/state/theme/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,QAAQ,IAAI,SAAS,EACrB,KAAK,IAAI,MAAM,EAEf,OAAO,EACP,uBAAuB,EACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAA8B,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAM3C,qBAAa,SAAU,SAAQ,IAAI,CAAC,MAAM,CAAC;IACzC,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;IAIrC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAIxE,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,IAAI;CAe7E;AAED,MAAM,WAAW,KAAM,SAAQ,MAAM;CAAG;AAExC,qBAAa,KAAK;gBACJ,KAAK,EAAE,MAAM;IAIzB,yBAAyB,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,uBAAuB,KAAK,IAAI,GAAG,IAAI;IAI3E,0DAA0D;IAC1D,eAAe,CAAC,SAAS,GAAE,SAAS,CAAC,SAAS,CAAC,CAAC,UAAU,CAAM,GAAG,IAAI;IAkCvE,kBAAkB,IAAI,IAAI;CAG3B;AAgBD,wBAAgB,oBAAoB,IAAI,IAAI,CAK3C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkBtD"}