@edenapp/sdk 0.1.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 (432) hide show
  1. package/apps/com/eden/editor/dist/assets/css-DQU6DXDx.js +3 -0
  2. package/apps/com/eden/editor/dist/assets/editor-BRA9licV.css +1 -0
  3. package/apps/com/eden/editor/dist/assets/editor.main-DAsyVptA.js +677 -0
  4. package/apps/com/eden/editor/dist/assets/editor.worker-B4pQIWZD.js +12 -0
  5. package/apps/com/eden/editor/dist/assets/html-CTBLac3N.js +1 -0
  6. package/apps/com/eden/editor/dist/assets/index-B7GgDQ9I.css +1 -0
  7. package/apps/com/eden/editor/dist/assets/index-BWJI9cyM.js +2 -0
  8. package/apps/com/eden/editor/dist/assets/ini-BvajGCUy.js +1 -0
  9. package/apps/com/eden/editor/dist/assets/javascript-DJ6Ya8pi.js +1 -0
  10. package/apps/com/eden/editor/dist/assets/jsonMode-BA0kYRDI.js +10 -0
  11. package/apps/com/eden/editor/dist/assets/less-GGFNNJHn.js +2 -0
  12. package/apps/com/eden/editor/dist/assets/markdown-B811l8j2.js +1 -0
  13. package/apps/com/eden/editor/dist/assets/shell-CsDZo4DB.js +1 -0
  14. package/apps/com/eden/editor/dist/assets/typescript-C7BsmV0J.js +1 -0
  15. package/apps/com/eden/editor/dist/assets/yaml-QL02lm_B.js +1 -0
  16. package/apps/com/eden/editor/dist/index.html +13 -0
  17. package/apps/com/eden/editor/icon.svg +22 -0
  18. package/apps/com/eden/editor/index.html +12 -0
  19. package/apps/com/eden/editor/manifest.json +58 -0
  20. package/apps/com/eden/editor/node_modules/.bin/browserslist +21 -0
  21. package/apps/com/eden/editor/node_modules/.bin/tsc +21 -0
  22. package/apps/com/eden/editor/node_modules/.bin/tsserver +21 -0
  23. package/apps/com/eden/editor/node_modules/.bin/vite +21 -0
  24. package/apps/com/eden/editor/package.json +21 -0
  25. package/apps/com/eden/editor/src/App.tsx +212 -0
  26. package/apps/com/eden/editor/src/components/ErrorBanner.tsx +13 -0
  27. package/apps/com/eden/editor/src/components/LazyMonacoEditor.tsx +154 -0
  28. package/apps/com/eden/editor/src/components/TabBar.tsx +36 -0
  29. package/apps/com/eden/editor/src/components/Toolbar.tsx +39 -0
  30. package/apps/com/eden/editor/src/components/WelcomeScreen.tsx +49 -0
  31. package/apps/com/eden/editor/src/components/index.ts +11 -0
  32. package/apps/com/eden/editor/src/index.tsx +10 -0
  33. package/apps/com/eden/editor/src/styles.css +319 -0
  34. package/apps/com/eden/editor/src/types.ts +69 -0
  35. package/apps/com/eden/editor/tsconfig.json +24 -0
  36. package/apps/com/eden/editor/vite.config.mts +67 -0
  37. package/apps/com/eden/eveshell/assets/apps-grid-icon.svg +17 -0
  38. package/apps/com/eden/eveshell/assets/default-icon.svg +17 -0
  39. package/apps/com/eden/eveshell/dist/assets/index-BS2yCXxK.css +1 -0
  40. package/apps/com/eden/eveshell/dist/assets/index-De0NEh_d.js +1 -0
  41. package/apps/com/eden/eveshell/dist/index.html +13 -0
  42. package/apps/com/eden/eveshell/index.html +12 -0
  43. package/apps/com/eden/eveshell/manifest.json +28 -0
  44. package/apps/com/eden/eveshell/node_modules/.bin/tsc +21 -0
  45. package/apps/com/eden/eveshell/node_modules/.bin/tsserver +21 -0
  46. package/apps/com/eden/eveshell/node_modules/.bin/vite +21 -0
  47. package/apps/com/eden/eveshell/package.json +20 -0
  48. package/apps/com/eden/eveshell/src/components/AllApps.tsx +228 -0
  49. package/apps/com/eden/eveshell/src/components/AppContextMenu.tsx +125 -0
  50. package/apps/com/eden/eveshell/src/components/AppIcon.tsx +40 -0
  51. package/apps/com/eden/eveshell/src/components/Clock.tsx +35 -0
  52. package/apps/com/eden/eveshell/src/components/Dock.tsx +147 -0
  53. package/apps/com/eden/eveshell/src/components/ShellOverlay.tsx +343 -0
  54. package/apps/com/eden/eveshell/src/icon-cache.ts +38 -0
  55. package/apps/com/eden/eveshell/src/index.tsx +11 -0
  56. package/apps/com/eden/eveshell/src/styles.css +409 -0
  57. package/apps/com/eden/eveshell/src/types.ts +5 -0
  58. package/apps/com/eden/eveshell/tsconfig.json +37 -0
  59. package/apps/com/eden/eveshell/vite.config.mts +23 -0
  60. package/apps/com/eden/example/appbus/client-a/app.js +239 -0
  61. package/apps/com/eden/example/appbus/client-a/index.html +48 -0
  62. package/apps/com/eden/example/appbus/client-a/manifest.json +27 -0
  63. package/apps/com/eden/example/appbus/client-a/styles.css +52 -0
  64. package/apps/com/eden/example/appbus/client-b/app.js +130 -0
  65. package/apps/com/eden/example/appbus/client-b/index.html +35 -0
  66. package/apps/com/eden/example/appbus/client-b/manifest.json +27 -0
  67. package/apps/com/eden/example/appbus/client-b/styles.css +48 -0
  68. package/apps/com/eden/example/appbus/hub/README.md +18 -0
  69. package/apps/com/eden/example/appbus/hub/backend.js +121 -0
  70. package/apps/com/eden/example/appbus/hub/manifest.json +17 -0
  71. package/apps/com/eden/example/appbus/isolated/app.js +107 -0
  72. package/apps/com/eden/example/appbus/isolated/index.html +35 -0
  73. package/apps/com/eden/example/appbus/isolated/manifest.json +27 -0
  74. package/apps/com/eden/example/appbus/isolated/styles.css +52 -0
  75. package/apps/com/eden/example/calculator/.dev-manifest.json +5 -0
  76. package/apps/com/eden/example/calculator/app.js +95 -0
  77. package/apps/com/eden/example/calculator/icon.svg +19 -0
  78. package/apps/com/eden/example/calculator/index.html +39 -0
  79. package/apps/com/eden/example/calculator/manifest.json +30 -0
  80. package/apps/com/eden/example/calculator/styles.css +83 -0
  81. package/apps/com/eden/example/hello/README.md +3 -0
  82. package/apps/com/eden/example/hello/backend/dist/backend.js +47 -0
  83. package/apps/com/eden/example/hello/backend/node_modules/.bin/tsc +21 -0
  84. package/apps/com/eden/example/hello/backend/node_modules/.bin/tsserver +21 -0
  85. package/apps/com/eden/example/hello/backend/package.json +13 -0
  86. package/apps/com/eden/example/hello/backend/src/backend.ts +58 -0
  87. package/apps/com/eden/example/hello/backend/tsconfig.json +19 -0
  88. package/apps/com/eden/example/hello/frontend/dist/assets/index-D2WAwW3g.css +1 -0
  89. package/apps/com/eden/example/hello/frontend/dist/assets/index-D4bTq3-Q.js +1 -0
  90. package/apps/com/eden/example/hello/frontend/dist/index.html +59 -0
  91. package/apps/com/eden/example/hello/frontend/index.html +59 -0
  92. package/apps/com/eden/example/hello/frontend/node_modules/.bin/tsc +21 -0
  93. package/apps/com/eden/example/hello/frontend/node_modules/.bin/tsserver +21 -0
  94. package/apps/com/eden/example/hello/frontend/node_modules/.bin/vite +21 -0
  95. package/apps/com/eden/example/hello/frontend/package.json +15 -0
  96. package/apps/com/eden/example/hello/frontend/src/App.ts +191 -0
  97. package/apps/com/eden/example/hello/frontend/styles.css +96 -0
  98. package/apps/com/eden/example/hello/frontend/tsconfig.json +16 -0
  99. package/apps/com/eden/example/hello/frontend/vite.config.mts +21 -0
  100. package/apps/com/eden/example/hello/manifest.json +34 -0
  101. package/apps/com/eden/example/hello/shared/protocol.d.ts +38 -0
  102. package/apps/com/eden/example/showcase/app.js +186 -0
  103. package/apps/com/eden/example/showcase/index.html +637 -0
  104. package/apps/com/eden/example/showcase/manifest.json +24 -0
  105. package/apps/com/eden/example/showcase/styles.css +195 -0
  106. package/apps/com/eden/files/.dev-manifest.json +5 -0
  107. package/apps/com/eden/files/dist/assets/index-BOw4ESi3.js +1 -0
  108. package/apps/com/eden/files/dist/assets/index-BPH5FvSW.css +1 -0
  109. package/apps/com/eden/files/dist/index.html +13 -0
  110. package/apps/com/eden/files/icon.svg +15 -0
  111. package/apps/com/eden/files/index.html +12 -0
  112. package/apps/com/eden/files/manifest.json +28 -0
  113. package/apps/com/eden/files/node_modules/.bin/tsc +21 -0
  114. package/apps/com/eden/files/node_modules/.bin/tsserver +21 -0
  115. package/apps/com/eden/files/node_modules/.bin/vite +21 -0
  116. package/apps/com/eden/files/node_modules/.vite/deps/_metadata.json +46 -0
  117. package/apps/com/eden/files/node_modules/.vite/deps/chunk-5W77UGHT.js +1253 -0
  118. package/apps/com/eden/files/node_modules/.vite/deps/chunk-5W77UGHT.js.map +7 -0
  119. package/apps/com/eden/files/node_modules/.vite/deps/chunk-K4SCX2FD.js +1809 -0
  120. package/apps/com/eden/files/node_modules/.vite/deps/chunk-K4SCX2FD.js.map +7 -0
  121. package/apps/com/eden/files/node_modules/.vite/deps/package.json +3 -0
  122. package/apps/com/eden/files/node_modules/.vite/deps/solid-js.js +112 -0
  123. package/apps/com/eden/files/node_modules/.vite/deps/solid-js.js.map +7 -0
  124. package/apps/com/eden/files/node_modules/.vite/deps/solid-js_h.js +122 -0
  125. package/apps/com/eden/files/node_modules/.vite/deps/solid-js_h.js.map +7 -0
  126. package/apps/com/eden/files/node_modules/.vite/deps/solid-js_html.js +606 -0
  127. package/apps/com/eden/files/node_modules/.vite/deps/solid-js_html.js.map +7 -0
  128. package/apps/com/eden/files/node_modules/.vite/deps/solid-js_store.js +455 -0
  129. package/apps/com/eden/files/node_modules/.vite/deps/solid-js_store.js.map +7 -0
  130. package/apps/com/eden/files/node_modules/.vite/deps/solid-js_web.js +147 -0
  131. package/apps/com/eden/files/node_modules/.vite/deps/solid-js_web.js.map +7 -0
  132. package/apps/com/eden/files/package-lock.json +1754 -0
  133. package/apps/com/eden/files/package.json +20 -0
  134. package/apps/com/eden/files/src/App.tsx +387 -0
  135. package/apps/com/eden/files/src/components/FileExplorerHeader.tsx +90 -0
  136. package/apps/com/eden/files/src/components/FileItem.tsx +70 -0
  137. package/apps/com/eden/files/src/components/FileList.tsx +77 -0
  138. package/apps/com/eden/files/src/components/Modal.tsx +48 -0
  139. package/apps/com/eden/files/src/components/Omnibox.tsx +241 -0
  140. package/apps/com/eden/files/src/dialogs/CreateFileDialog.tsx +71 -0
  141. package/apps/com/eden/files/src/dialogs/CreateFolderDialog.tsx +68 -0
  142. package/apps/com/eden/files/src/dialogs/DeleteConfirmDialog.tsx +35 -0
  143. package/apps/com/eden/files/src/dialogs/DisplayOptionsModal.tsx +122 -0
  144. package/apps/com/eden/files/src/dialogs/ErrorDialog.tsx +28 -0
  145. package/apps/com/eden/files/src/index.tsx +9 -0
  146. package/apps/com/eden/files/src/styles.css +595 -0
  147. package/apps/com/eden/files/src/types.ts +20 -0
  148. package/apps/com/eden/files/src/utils.ts +44 -0
  149. package/apps/com/eden/files/tsconfig.json +27 -0
  150. package/apps/com/eden/files/vite.config.mts +23 -0
  151. package/apps/com/eden/settings/dist/assets/index-CTkJneTg.js +1 -0
  152. package/apps/com/eden/settings/dist/assets/index-GIMJANTM.css +1 -0
  153. package/apps/com/eden/settings/dist/index.html +13 -0
  154. package/apps/com/eden/settings/icon.svg +15 -0
  155. package/apps/com/eden/settings/index.html +12 -0
  156. package/apps/com/eden/settings/manifest.json +28 -0
  157. package/apps/com/eden/settings/node_modules/.bin/tsc +21 -0
  158. package/apps/com/eden/settings/node_modules/.bin/tsserver +21 -0
  159. package/apps/com/eden/settings/node_modules/.bin/vite +21 -0
  160. package/apps/com/eden/settings/package.json +21 -0
  161. package/apps/com/eden/settings/src/App.css +168 -0
  162. package/apps/com/eden/settings/src/App.tsx +301 -0
  163. package/apps/com/eden/settings/src/components/SettingInput.tsx +131 -0
  164. package/apps/com/eden/settings/src/index.tsx +9 -0
  165. package/apps/com/eden/settings/tsconfig.json +21 -0
  166. package/apps/com/eden/settings/vite.config.mts +22 -0
  167. package/apps/com/eden/toaster/README.md +89 -0
  168. package/apps/com/eden/toaster/dist/assets/index-8JMcmBCJ.css +1 -0
  169. package/apps/com/eden/toaster/dist/assets/index-C4cVyh7j.js +16 -0
  170. package/apps/com/eden/toaster/dist/index.html +16 -0
  171. package/apps/com/eden/toaster/index.html +16 -0
  172. package/apps/com/eden/toaster/manifest.json +28 -0
  173. package/apps/com/eden/toaster/node_modules/.bin/vite +21 -0
  174. package/apps/com/eden/toaster/package.json +15 -0
  175. package/apps/com/eden/toaster/src/styles.css +159 -0
  176. package/apps/com/eden/toaster/src/toaster.ts +470 -0
  177. package/apps/com/eden/toaster/tsconfig.json +28 -0
  178. package/apps/com/eden/toaster/vite.config.mts +18 -0
  179. package/apps/com/eden/webbrowser/.dev-manifest.json +5 -0
  180. package/apps/com/eden/webbrowser/icon.svg +20 -0
  181. package/apps/com/eden/webbrowser/index.html +141 -0
  182. package/apps/com/eden/webbrowser/manifest.json +23 -0
  183. package/apps/com/eden/webbrowser/node_modules/.bin/vite +21 -0
  184. package/apps/com/eden/webbrowser/node_modules/.vite/deps/_metadata.json +8 -0
  185. package/apps/com/eden/webbrowser/node_modules/.vite/deps/package.json +3 -0
  186. package/apps/com/eden/webbrowser/package.json +13 -0
  187. package/apps/com/eden/webbrowser/vite.config.mts +11 -0
  188. package/dist/Eden.d.ts +40 -0
  189. package/dist/Eden.d.ts.map +1 -0
  190. package/dist/Eden.js +186 -0
  191. package/dist/Eden.js.map +1 -0
  192. package/dist/SystemHandler.d.ts +11 -0
  193. package/dist/SystemHandler.d.ts.map +1 -0
  194. package/dist/SystemHandler.js +53 -0
  195. package/dist/SystemHandler.js.map +1 -0
  196. package/dist/app-frame/frame-injector.js +19 -0
  197. package/dist/app-frame/frame-injector.js.map +7 -0
  198. package/dist/app-frame/frame.css +186 -0
  199. package/dist/app-runtime/app-preload.js +2 -0
  200. package/dist/app-runtime/app-preload.js.map +7 -0
  201. package/dist/app-runtime/backend-preload.js +2 -0
  202. package/dist/app-runtime/backend-preload.js.map +7 -0
  203. package/dist/appbus/AppChannelHandler.d.ts +65 -0
  204. package/dist/appbus/AppChannelHandler.d.ts.map +1 -0
  205. package/dist/appbus/AppChannelHandler.js +120 -0
  206. package/dist/appbus/AppChannelHandler.js.map +1 -0
  207. package/dist/appbus/AppChannelManager.d.ts +80 -0
  208. package/dist/appbus/AppChannelManager.d.ts.map +1 -0
  209. package/dist/appbus/AppChannelManager.js +312 -0
  210. package/dist/appbus/AppChannelManager.js.map +1 -0
  211. package/dist/appbus/index.d.ts +2 -0
  212. package/dist/appbus/index.d.ts.map +1 -0
  213. package/dist/appbus/index.js +18 -0
  214. package/dist/appbus/index.js.map +1 -0
  215. package/dist/db/DbHandler.d.ts +119 -0
  216. package/dist/db/DbHandler.d.ts.map +1 -0
  217. package/dist/db/DbHandler.js +204 -0
  218. package/dist/db/DbHandler.js.map +1 -0
  219. package/dist/db/DbManager.d.ts +49 -0
  220. package/dist/db/DbManager.d.ts.map +1 -0
  221. package/dist/db/DbManager.js +172 -0
  222. package/dist/db/DbManager.js.map +1 -0
  223. package/dist/db/index.d.ts +3 -0
  224. package/dist/db/index.d.ts.map +1 -0
  225. package/dist/db/index.js +8 -0
  226. package/dist/db/index.js.map +1 -0
  227. package/dist/edencss/eden-tokens.css +1 -0
  228. package/dist/edencss/eden.css +1 -0
  229. package/dist/file-open/FileOpenHandler.d.ts +59 -0
  230. package/dist/file-open/FileOpenHandler.d.ts.map +1 -0
  231. package/dist/file-open/FileOpenHandler.js +122 -0
  232. package/dist/file-open/FileOpenHandler.js.map +1 -0
  233. package/dist/file-open/FileOpenManager.d.ts +91 -0
  234. package/dist/file-open/FileOpenManager.d.ts.map +1 -0
  235. package/dist/file-open/FileOpenManager.js +411 -0
  236. package/dist/file-open/FileOpenManager.js.map +1 -0
  237. package/dist/file-open/index.d.ts +3 -0
  238. package/dist/file-open/index.d.ts.map +1 -0
  239. package/dist/file-open/index.js +8 -0
  240. package/dist/file-open/index.js.map +1 -0
  241. package/dist/filesystem/FilesystemHandler.d.ts +65 -0
  242. package/dist/filesystem/FilesystemHandler.d.ts.map +1 -0
  243. package/dist/filesystem/FilesystemHandler.js +134 -0
  244. package/dist/filesystem/FilesystemHandler.js.map +1 -0
  245. package/dist/filesystem/FilesystemManager.d.ts +70 -0
  246. package/dist/filesystem/FilesystemManager.d.ts.map +1 -0
  247. package/dist/filesystem/FilesystemManager.js +236 -0
  248. package/dist/filesystem/FilesystemManager.js.map +1 -0
  249. package/dist/filesystem/index.d.ts +3 -0
  250. package/dist/filesystem/index.d.ts.map +1 -0
  251. package/dist/filesystem/index.js +8 -0
  252. package/dist/filesystem/index.js.map +1 -0
  253. package/dist/foundation/foundation-preload.js +15 -0
  254. package/dist/foundation/foundation.css +40 -0
  255. package/dist/foundation/foundation.html +22 -0
  256. package/dist/foundation/foundation.js +69 -0
  257. package/dist/hotreload-config.d.ts +8 -0
  258. package/dist/hotreload-config.d.ts.map +1 -0
  259. package/dist/hotreload-config.js +73 -0
  260. package/dist/hotreload-config.js.map +1 -0
  261. package/dist/index.d.ts +7 -0
  262. package/dist/index.d.ts.map +1 -0
  263. package/dist/index.js +20 -0
  264. package/dist/index.js.map +1 -0
  265. package/dist/ipc/CommandDecorators.d.ts +72 -0
  266. package/dist/ipc/CommandDecorators.d.ts.map +1 -0
  267. package/dist/ipc/CommandDecorators.js +49 -0
  268. package/dist/ipc/CommandDecorators.js.map +1 -0
  269. package/dist/ipc/CommandRegistry.d.ts +77 -0
  270. package/dist/ipc/CommandRegistry.d.ts.map +1 -0
  271. package/dist/ipc/CommandRegistry.js +175 -0
  272. package/dist/ipc/CommandRegistry.js.map +1 -0
  273. package/dist/ipc/EdenEmitter.d.ts +54 -0
  274. package/dist/ipc/EdenEmitter.d.ts.map +1 -0
  275. package/dist/ipc/EdenEmitter.js +81 -0
  276. package/dist/ipc/EdenEmitter.js.map +1 -0
  277. package/dist/ipc/EventHandler.d.ts +21 -0
  278. package/dist/ipc/EventHandler.d.ts.map +1 -0
  279. package/dist/ipc/EventHandler.js +87 -0
  280. package/dist/ipc/EventHandler.js.map +1 -0
  281. package/dist/ipc/EventSubscriberManager.d.ts +67 -0
  282. package/dist/ipc/EventSubscriberManager.d.ts.map +1 -0
  283. package/dist/ipc/EventSubscriberManager.js +204 -0
  284. package/dist/ipc/EventSubscriberManager.js.map +1 -0
  285. package/dist/ipc/IPCBridge.d.ts +60 -0
  286. package/dist/ipc/IPCBridge.d.ts.map +1 -0
  287. package/dist/ipc/IPCBridge.js +186 -0
  288. package/dist/ipc/IPCBridge.js.map +1 -0
  289. package/dist/ipc/PermissionRegistry.d.ts +52 -0
  290. package/dist/ipc/PermissionRegistry.d.ts.map +1 -0
  291. package/dist/ipc/PermissionRegistry.js +120 -0
  292. package/dist/ipc/PermissionRegistry.js.map +1 -0
  293. package/dist/ipc/index.d.ts +7 -0
  294. package/dist/ipc/index.d.ts.map +1 -0
  295. package/dist/ipc/index.js +23 -0
  296. package/dist/ipc/index.js.map +1 -0
  297. package/dist/main.d.ts +2 -0
  298. package/dist/main.d.ts.map +1 -0
  299. package/dist/main.js +15 -0
  300. package/dist/main.js.map +1 -0
  301. package/dist/notification/NotificationHandler.d.ts +16 -0
  302. package/dist/notification/NotificationHandler.d.ts.map +1 -0
  303. package/dist/notification/NotificationHandler.js +39 -0
  304. package/dist/notification/NotificationHandler.js.map +1 -0
  305. package/dist/notification/NotificationManager.d.ts +32 -0
  306. package/dist/notification/NotificationManager.d.ts.map +1 -0
  307. package/dist/notification/NotificationManager.js +66 -0
  308. package/dist/notification/NotificationManager.js.map +1 -0
  309. package/dist/notification/index.d.ts +3 -0
  310. package/dist/notification/index.d.ts.map +1 -0
  311. package/dist/notification/index.js +19 -0
  312. package/dist/notification/index.js.map +1 -0
  313. package/dist/package-manager/PackageHandler.d.ts +50 -0
  314. package/dist/package-manager/PackageHandler.d.ts.map +1 -0
  315. package/dist/package-manager/PackageHandler.js +107 -0
  316. package/dist/package-manager/PackageHandler.js.map +1 -0
  317. package/dist/package-manager/PackageManager.d.ts +73 -0
  318. package/dist/package-manager/PackageManager.d.ts.map +1 -0
  319. package/dist/package-manager/PackageManager.js +373 -0
  320. package/dist/package-manager/PackageManager.js.map +1 -0
  321. package/dist/package-manager/index.d.ts +3 -0
  322. package/dist/package-manager/index.d.ts.map +1 -0
  323. package/dist/package-manager/index.js +8 -0
  324. package/dist/package-manager/index.js.map +1 -0
  325. package/dist/process-manager/AutostartManager.d.ts +15 -0
  326. package/dist/process-manager/AutostartManager.d.ts.map +1 -0
  327. package/dist/process-manager/AutostartManager.js +56 -0
  328. package/dist/process-manager/AutostartManager.js.map +1 -0
  329. package/dist/process-manager/BackendManager.d.ts +63 -0
  330. package/dist/process-manager/BackendManager.d.ts.map +1 -0
  331. package/dist/process-manager/BackendManager.js +272 -0
  332. package/dist/process-manager/BackendManager.js.map +1 -0
  333. package/dist/process-manager/ProcessHandler.d.ts +29 -0
  334. package/dist/process-manager/ProcessHandler.d.ts.map +1 -0
  335. package/dist/process-manager/ProcessHandler.js +66 -0
  336. package/dist/process-manager/ProcessHandler.js.map +1 -0
  337. package/dist/process-manager/ProcessManager.d.ts +94 -0
  338. package/dist/process-manager/ProcessManager.d.ts.map +1 -0
  339. package/dist/process-manager/ProcessManager.js +286 -0
  340. package/dist/process-manager/ProcessManager.js.map +1 -0
  341. package/dist/process-manager/index.d.ts +5 -0
  342. package/dist/process-manager/index.d.ts.map +1 -0
  343. package/dist/process-manager/index.js +12 -0
  344. package/dist/process-manager/index.js.map +1 -0
  345. package/dist/settings/EdenSettings.d.ts +8 -0
  346. package/dist/settings/EdenSettings.d.ts.map +1 -0
  347. package/dist/settings/EdenSettings.js +148 -0
  348. package/dist/settings/EdenSettings.js.map +1 -0
  349. package/dist/settings/SettingsHandler.d.ts +117 -0
  350. package/dist/settings/SettingsHandler.d.ts.map +1 -0
  351. package/dist/settings/SettingsHandler.js +199 -0
  352. package/dist/settings/SettingsHandler.js.map +1 -0
  353. package/dist/settings/SettingsManager.d.ts +64 -0
  354. package/dist/settings/SettingsManager.d.ts.map +1 -0
  355. package/dist/settings/SettingsManager.js +221 -0
  356. package/dist/settings/SettingsManager.js.map +1 -0
  357. package/dist/settings/index.d.ts +4 -0
  358. package/dist/settings/index.d.ts.map +1 -0
  359. package/dist/settings/index.js +11 -0
  360. package/dist/settings/index.js.map +1 -0
  361. package/dist/utils/cachedFileReader.d.ts +46 -0
  362. package/dist/utils/cachedFileReader.d.ts.map +1 -0
  363. package/dist/utils/cachedFileReader.js +100 -0
  364. package/dist/utils/cachedFileReader.js.map +1 -0
  365. package/dist/view-manager/DevToolsManager.d.ts +29 -0
  366. package/dist/view-manager/DevToolsManager.d.ts.map +1 -0
  367. package/dist/view-manager/DevToolsManager.js +88 -0
  368. package/dist/view-manager/DevToolsManager.js.map +1 -0
  369. package/dist/view-manager/FloatingWindowController.d.ts +44 -0
  370. package/dist/view-manager/FloatingWindowController.d.ts.map +1 -0
  371. package/dist/view-manager/FloatingWindowController.js +124 -0
  372. package/dist/view-manager/FloatingWindowController.js.map +1 -0
  373. package/dist/view-manager/LayoutCalculator.d.ts +49 -0
  374. package/dist/view-manager/LayoutCalculator.d.ts.map +1 -0
  375. package/dist/view-manager/LayoutCalculator.js +94 -0
  376. package/dist/view-manager/LayoutCalculator.js.map +1 -0
  377. package/dist/view-manager/MouseTracker.d.ts +65 -0
  378. package/dist/view-manager/MouseTracker.d.ts.map +1 -0
  379. package/dist/view-manager/MouseTracker.js +114 -0
  380. package/dist/view-manager/MouseTracker.js.map +1 -0
  381. package/dist/view-manager/TilingManager.d.ts +61 -0
  382. package/dist/view-manager/TilingManager.d.ts.map +1 -0
  383. package/dist/view-manager/TilingManager.js +142 -0
  384. package/dist/view-manager/TilingManager.js.map +1 -0
  385. package/dist/view-manager/ViewCreator.d.ts +72 -0
  386. package/dist/view-manager/ViewCreator.d.ts.map +1 -0
  387. package/dist/view-manager/ViewCreator.js +277 -0
  388. package/dist/view-manager/ViewCreator.js.map +1 -0
  389. package/dist/view-manager/ViewHandler.d.ts +112 -0
  390. package/dist/view-manager/ViewHandler.d.ts.map +1 -0
  391. package/dist/view-manager/ViewHandler.js +307 -0
  392. package/dist/view-manager/ViewHandler.js.map +1 -0
  393. package/dist/view-manager/ViewLifecycle.d.ts +66 -0
  394. package/dist/view-manager/ViewLifecycle.d.ts.map +1 -0
  395. package/dist/view-manager/ViewLifecycle.js +142 -0
  396. package/dist/view-manager/ViewLifecycle.js.map +1 -0
  397. package/dist/view-manager/ViewManager.d.ts +112 -0
  398. package/dist/view-manager/ViewManager.d.ts.map +1 -0
  399. package/dist/view-manager/ViewManager.js +422 -0
  400. package/dist/view-manager/ViewManager.js.map +1 -0
  401. package/dist/view-manager/index.d.ts +11 -0
  402. package/dist/view-manager/index.d.ts.map +1 -0
  403. package/dist/view-manager/index.js +23 -0
  404. package/dist/view-manager/index.js.map +1 -0
  405. package/dist/view-manager/types.d.ts +24 -0
  406. package/dist/view-manager/types.d.ts.map +1 -0
  407. package/dist/view-manager/types.js +11 -0
  408. package/dist/view-manager/types.js.map +1 -0
  409. package/edencss/README.md +214 -0
  410. package/edencss/components/badges.css +180 -0
  411. package/edencss/components/buttons.css +221 -0
  412. package/edencss/components/cards.css +201 -0
  413. package/edencss/components/inputs.css +424 -0
  414. package/edencss/components/lists.css +242 -0
  415. package/edencss/components/modals.css +207 -0
  416. package/edencss/components/progress.css +186 -0
  417. package/edencss/components/sidebar.css +232 -0
  418. package/edencss/components/tabs.css +189 -0
  419. package/edencss/eden.css +16 -0
  420. package/edencss/index.ts +11 -0
  421. package/edencss/style-dictionary.config.mjs +75 -0
  422. package/edencss/tokens-pink.json +163 -0
  423. package/edencss/tokens.css +121 -0
  424. package/edencss/tokens.d.ts +111 -0
  425. package/edencss/tokens.json +369 -0
  426. package/edencss/tokens.ts +125 -0
  427. package/edencss/utilities.css +423 -0
  428. package/foundation/foundation-preload.js +15 -0
  429. package/foundation/foundation.css +40 -0
  430. package/foundation/foundation.html +22 -0
  431. package/foundation/foundation.js +69 -0
  432. package/package.json +55 -0
@@ -0,0 +1 @@
1
+ :root{--eden-color-bg-primary:linear-gradient(135deg,#060b1a 0%,#111b33 45%,#1d2e57 100%);--eden-color-bg-secondary:linear-gradient(135deg,#1d2e57 0%,#354b86 50%,#6797f5 100%);--eden-color-bg-glass-light:#ffffff0a;--eden-color-bg-glass-medium:#ffffff14;--eden-color-bg-glass-strong:#12182a8c;--eden-color-bg-overlay:#080c189e;--eden-color-bg-dark:#0000000a;--eden-color-surface-primary:#1e1e2e;--eden-color-surface-secondary:#2d2d44;--eden-color-surface-tertiary:#3d3d5c;--eden-color-surface-elevated:#ffffff0f;--eden-color-surface-hover:#ffffff1f;--eden-color-surface-active:#ffffff2e;--eden-color-text-primary:#eff4fff5;--eden-color-text-secondary:#eaeaeaf2;--eden-color-text-tertiary:#bdbdbde6;--eden-color-text-muted:#fff9;--eden-color-text-inverse:#1a1a1a;--eden-color-text-on-dark:#fff;--eden-color-accent-primary:#4a9eff;--eden-color-accent-primary-hover:#5ca8ff;--eden-color-accent-primary-active:#3b8ee8;--eden-color-accent-blue:#52a3ff;--eden-color-accent-blue-dark:#367bff;--eden-color-accent-purple:#667eea;--eden-color-accent-purple-light:#7c92f0;--eden-color-success:#51cf66;--eden-color-success-hover:#69db7c;--eden-color-danger:#ff3b30;--eden-color-danger-hover:#ff6b6b;--eden-color-danger-bg:#ff3b301a;--eden-color-warning:#ffd93d;--eden-color-info:#4dabf7;--eden-color-border-light:#ffffff0f;--eden-color-border-medium:#ffffff1f;--eden-color-border-dark:#0000001a;--eden-color-border-separator:#ffffff2e;--eden-space-xs:4px;--eden-space-sm:8px;--eden-space-md:16px;--eden-space-lg:24px;--eden-space-xl:36px;--eden-space-2xl:48px;--eden-space-3xl:64px;--eden-radius-xs:6px;--eden-radius-sm:10px;--eden-radius-md:14px;--eden-radius-lg:18px;--eden-radius-xl:20px;--eden-radius-2xl:28px;--eden-radius-round:50%;--eden-shadow-xs:0 1px 3px #0000004d;--eden-shadow-sm:0 2px 6px #00000080;--eden-shadow-md:0 8px 20px #00000047;--eden-shadow-lg:0 10px 30px #0000004d;--eden-shadow-xl:0 20px 60px #0000004d;--eden-shadow-2xl:0 28px 80px #00000073;--eden-shadow-inner:inset 0 1px 3px #0003;--eden-glass-light:blur(10px)saturate(120%);--eden-glass-medium:blur(18px)saturate(140%);--eden-glass-strong:blur(26px)saturate(160%);--eden-glass-ultra:blur(34px)saturate(170%);--eden-font-family-base:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;--eden-font-family-mono:"SF Mono",Monaco,"Cascadia Code","Roboto Mono",Consolas,"Courier New",monospace;--eden-font-size-xs:10px;--eden-font-size-sm:11px;--eden-font-size-base:13px;--eden-font-size-md:14px;--eden-font-size-lg:16px;--eden-font-size-xl:18px;--eden-font-size-2xl:24px;--eden-font-size-3xl:32px;--eden-font-size-4xl:48px;--eden-font-weight-normal:400;--eden-font-weight-medium:500;--eden-font-weight-semibold:600;--eden-font-weight-bold:700;--eden-font-line-height-tight:1.2;--eden-font-line-height-normal:1.5;--eden-font-line-height-relaxed:1.75;--eden-font-letter-spacing-tight:-.6px;--eden-font-letter-spacing-normal:-.2px;--eden-font-letter-spacing-wide:.1px;--eden-transition-fast:.15s ease;--eden-transition-base:.2s cubic-bezier(.4,0,.2,1);--eden-transition-smooth:.3s cubic-bezier(.4,0,.2,1);--eden-transition-bounce:.5s cubic-bezier(.68,-.55,.265,1.55);--eden-transition-ease-in:cubic-bezier(.4,0,1,1);--eden-transition-ease-out:cubic-bezier(0,0,.2,1);--eden-transition-ease-in-out:cubic-bezier(.4,0,.2,1);--eden-z-base:0;--eden-z-dropdown:100;--eden-z-sticky:200;--eden-z-overlay:1000;--eden-z-modal:2000;--eden-z-popover:2001;--eden-z-tooltip:3000;--eden-layout-dock-height:72px;--eden-layout-icon-size-sm:24px;--eden-layout-icon-size-md:40px;--eden-layout-icon-size-lg:64px;--eden-layout-icon-size-xl:88px;--eden-duration-instant:.1s;--eden-duration-fast:.15s;--eden-duration-normal:.22s;--eden-duration-slow:.32s;--eden-duration-slower:.5s}.eden-glass-light{background:var(--eden-color-bg-glass-light);backdrop-filter:var(--eden-glass-light)}.eden-glass-medium{background:var(--eden-color-bg-glass-medium);backdrop-filter:var(--eden-glass-medium)}.eden-glass-strong{background:var(--eden-color-bg-glass-strong);backdrop-filter:var(--eden-glass-strong)}.eden-glass-ultra{backdrop-filter:var(--eden-glass-ultra)}.eden-shadow-xs{box-shadow:var(--eden-shadow-xs)}.eden-shadow-sm{box-shadow:var(--eden-shadow-sm)}.eden-shadow-md{box-shadow:var(--eden-shadow-md)}.eden-shadow-lg{box-shadow:var(--eden-shadow-lg)}.eden-shadow-xl{box-shadow:var(--eden-shadow-xl)}.eden-shadow-2xl{box-shadow:var(--eden-shadow-2xl)}.eden-shadow-inner{box-shadow:var(--eden-shadow-inner)}.eden-surface{background:var(--eden-surface-primary);color:var(--eden-text-primary)}.eden-surface-secondary{background:var(--eden-surface-secondary);color:var(--eden-text-primary)}.eden-surface-elevated{background:var(--eden-surface-elevated);color:var(--eden-text-primary)}.eden-text-primary{color:var(--eden-text-primary)}.eden-text-secondary{color:var(--eden-text-secondary)}.eden-text-tertiary{color:var(--eden-text-tertiary)}.eden-text-muted{color:var(--eden-text-muted)}.eden-text-xs{font-size:var(--eden-font-size-xs)}.eden-text-sm{font-size:var(--eden-font-size-sm)}.eden-text-base{font-size:var(--eden-font-size-base)}.eden-text-md{font-size:var(--eden-font-size-md)}.eden-text-lg{font-size:var(--eden-font-size-lg)}.eden-text-xl{font-size:var(--eden-font-size-xl)}.eden-text-2xl{font-size:var(--eden-font-size-2xl)}.eden-text-3xl{font-size:var(--eden-font-size-3xl)}.eden-font-medium{font-weight:var(--eden-font-weight-medium)}.eden-font-semibold{font-weight:var(--eden-font-weight-semibold)}.eden-font-bold{font-weight:var(--eden-font-weight-bold)}.eden-m-xs{margin:var(--eden-space-xs)}.eden-m-sm{margin:var(--eden-space-sm)}.eden-m-md{margin:var(--eden-space-md)}.eden-m-lg{margin:var(--eden-space-lg)}.eden-m-xl{margin:var(--eden-space-xl)}.eden-p-xs{padding:var(--eden-space-xs)}.eden-p-sm{padding:var(--eden-space-sm)}.eden-p-md{padding:var(--eden-space-md)}.eden-p-lg{padding:var(--eden-space-lg)}.eden-p-xl{padding:var(--eden-space-xl)}.eden-gap-xs{gap:var(--eden-space-xs)}.eden-gap-sm{gap:var(--eden-space-sm)}.eden-gap-md{gap:var(--eden-space-md)}.eden-gap-lg{gap:var(--eden-space-lg)}.eden-gap-xl{gap:var(--eden-space-xl)}.eden-flex{display:flex}.eden-flex-col{flex-direction:column;display:flex}.eden-flex-center{justify-content:center;align-items:center;display:flex}.eden-flex-between{justify-content:space-between;align-items:center;display:flex}.eden-grid{display:grid}.eden-grid-2{grid-template-columns:repeat(2,1fr)}.eden-grid-3{grid-template-columns:repeat(3,1fr)}.eden-grid-4{grid-template-columns:repeat(4,1fr)}.eden-rounded-xs{border-radius:var(--eden-radius-xs)}.eden-rounded-sm{border-radius:var(--eden-radius-sm)}.eden-rounded-md{border-radius:var(--eden-radius-md)}.eden-rounded-lg{border-radius:var(--eden-radius-lg)}.eden-rounded-xl{border-radius:var(--eden-radius-xl)}.eden-rounded-2xl{border-radius:var(--eden-radius-2xl)}.eden-rounded-full{border-radius:var(--eden-radius-round)}.eden-transition{transition:all var(--eden-transition-base)}.eden-transition-fast{transition:all var(--eden-transition-fast)}.eden-transition-smooth{transition:all var(--eden-transition-smooth)}.eden-interactive{cursor:pointer;transition:all var(--eden-transition-base)}.eden-interactive:hover{box-shadow:var(--eden-shadow-lg);transform:translateY(-2px)}.eden-interactive:active{box-shadow:var(--eden-shadow-md);transform:translateY(0)}.eden-scrollbar::-webkit-scrollbar{width:8px;height:8px}.eden-scrollbar::-webkit-scrollbar-track{background:var(--eden-color-bg-glass-light);border-radius:var(--eden-radius-xs)}.eden-scrollbar::-webkit-scrollbar-thumb{background:var(--eden-color-border-separator);border-radius:var(--eden-radius-xs)}.eden-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--eden-color-surface-hover)}*{scrollbar-width:thin;scrollbar-color:var(--eden-color-border-separator)var(--eden-color-bg-glass-light)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--eden-color-bg-glass-light);border-radius:var(--eden-radius-xs)}::-webkit-scrollbar-thumb{background:var(--eden-color-border-separator);border-radius:var(--eden-radius-xs)}::-webkit-scrollbar-thumb:hover{background:var(--eden-color-surface-hover)}.eden-overlay{background:var(--eden-bg-overlay);backdrop-filter:var(--eden-glass-strong);z-index:var(--eden-z-overlay);position:fixed;inset:0}@keyframes eden-fade-in{0%{opacity:0}to{opacity:1}}@keyframes eden-fade-out{0%{opacity:1}to{opacity:0}}@keyframes eden-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes eden-slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes eden-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes eden-scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.eden-animate-fade-in{animation:eden-fade-in var(--eden-duration-normal)var(--eden-ease-out)}.eden-animate-slide-up{animation:eden-slide-up var(--eden-duration-slow)var(--eden-ease-out)}.eden-animate-scale-in{animation:eden-scale-in var(--eden-duration-normal)var(--eden-ease-out)}.eden-btn{font-family:var(--eden-font-family-base);font-size:var(--eden-font-size-md);font-weight:var(--eden-font-weight-medium);padding:var(--eden-space-md);border-radius:var(--eden-radius-md);border:1px solid var(--eden-color-border-light);cursor:pointer;transition:all var(--eden-transition-base);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-medium);box-shadow:var(--eden-shadow-sm);color:var(--eden-color-text-primary);justify-content:center;align-items:center;gap:var(--eden-space-sm);user-select:none;outline:none;display:inline-flex}.eden-btn:hover{background:var(--eden-color-bg-glass-strong);-webkit-backdrop-filter:var(--eden-glass-strong);border-color:var(--eden-color-border-medium);box-shadow:var(--eden-shadow-md);transform:translateY(-1px)}.eden-btn:active{box-shadow:var(--eden-shadow-sm);transform:translateY(0)}.eden-btn:focus-visible{outline:2px solid var(--eden-color-accent-primary);outline-offset:2px}.eden-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.eden-btn-primary{background:linear-gradient(135deg,var(--eden-color-accent-blue),var(--eden-color-accent-blue-dark));color:#fff;box-shadow:var(--eden-shadow-md);font-weight:var(--eden-font-weight-semibold);border-color:#0000}.eden-btn-primary:hover{filter:brightness(1.15);box-shadow:var(--eden-shadow-lg);border-color:#0000}.eden-btn-secondary{background:var(--eden-color-surface-tertiary);border-color:var(--eden-color-border-medium)}.eden-btn-secondary:hover{background:var(--eden-color-surface-hover)}.eden-btn-success{background:var(--eden-color-success);color:#fff;font-weight:var(--eden-font-weight-semibold);border-color:#0000}.eden-btn-success:hover{background:var(--eden-color-success-hover);box-shadow:var(--eden-shadow-lg)}.eden-btn-danger{background:var(--eden-color-danger);color:#fff;font-weight:var(--eden-font-weight-semibold);border-color:#0000}.eden-btn-danger:hover{background:var(--eden-color-danger-hover);box-shadow:var(--eden-shadow-lg)}.eden-btn-ghost{box-shadow:none;background:0 0;border-color:#0000}.eden-btn-ghost:hover{background:var(--eden-color-bg-glass-light);border-color:var(--eden-color-border-light)}.eden-btn-outline{border-color:var(--eden-color-border-medium);background:0 0}.eden-btn-outline:hover{background:var(--eden-color-bg-glass-light);border-color:var(--eden-color-accent-primary)}.eden-btn-xs{font-size:var(--eden-font-size-xs);padding:var(--eden-space-xs);border-radius:var(--eden-radius-xs)}.eden-btn-sm{font-size:var(--eden-font-size-sm);padding:var(--eden-space-sm);border-radius:var(--eden-radius-sm)}.eden-btn-md{font-size:var(--eden-font-size-md);padding:var(--eden-space-md);border-radius:var(--eden-radius-md)}.eden-btn-lg{font-size:var(--eden-font-size-lg);padding:var(--eden-space-lg);border-radius:var(--eden-radius-lg)}.eden-btn-xl{font-size:var(--eden-font-size-xl);padding:var(--eden-space-xl);border-radius:var(--eden-radius-xl)}.eden-btn-square{aspect-ratio:1}.eden-btn-pill{border-radius:999px}.eden-btn-group{gap:0;display:inline-flex}.eden-btn-group .eden-btn{border-radius:0}.eden-btn-group .eden-btn:first-child{border-top-left-radius:var(--eden-radius-md);border-bottom-left-radius:var(--eden-radius-md)}.eden-btn-group .eden-btn:last-child{border-top-right-radius:var(--eden-radius-md);border-bottom-right-radius:var(--eden-radius-md)}.eden-btn-group .eden-btn:not(:last-child){border-right:none}.eden-fab{bottom:var(--eden-space-2xl);right:var(--eden-space-2xl);border-radius:var(--eden-radius-round);background:linear-gradient(135deg,var(--eden-color-accent-blue),var(--eden-color-accent-blue-dark));width:56px;height:56px;box-shadow:var(--eden-shadow-2xl);cursor:pointer;transition:all var(--eden-transition-base);z-index:var(--eden-z-sticky);border:none;justify-content:center;align-items:center;display:flex;position:fixed}.eden-fab:hover{box-shadow:var(--eden-shadow-xl);transform:scale(1.1)}.eden-fab:active{transform:scale(1)}.eden-input{font-family:var(--eden-font-family-base);font-size:var(--eden-font-size-md);padding:var(--eden-space-md)var(--eden-space-lg);border-radius:var(--eden-radius-md);border:1px solid var(--eden-color-border-light);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-light);color:var(--eden-color-text-primary);transition:all var(--eden-transition-base);outline:none;width:100%}.eden-input::placeholder{color:var(--eden-color-text-muted)}.eden-input:hover{border-color:var(--eden-color-border-medium);background:var(--eden-color-bg-glass-strong)}.eden-input:focus{border-color:var(--eden-color-accent-primary);background:var(--eden-color-bg-glass-strong);box-shadow:0 0 0 3px #4a9eff26}.eden-input:disabled{opacity:.5;cursor:not-allowed}.eden-input-sm{font-size:var(--eden-font-size-sm);padding:var(--eden-space-sm)var(--eden-space-md);border-radius:var(--eden-radius-sm)}.eden-input-lg{font-size:var(--eden-font-size-lg);padding:var(--eden-space-lg)var(--eden-space-xl);border-radius:var(--eden-radius-lg)}.eden-textarea{font-family:var(--eden-font-family-base);font-size:var(--eden-font-size-md);padding:var(--eden-space-md)var(--eden-space-lg);border-radius:var(--eden-radius-md);border:1px solid var(--eden-color-border-light);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-light);color:var(--eden-color-text-primary);transition:all var(--eden-transition-base);resize:vertical;outline:none;width:100%;min-height:100px}.eden-textarea::placeholder{color:var(--eden-color-text-muted)}.eden-textarea:hover{border-color:var(--eden-color-border-medium);background:var(--eden-color-bg-glass-strong)}.eden-textarea:focus{border-color:var(--eden-color-accent-primary);background:var(--eden-color-bg-glass-strong);box-shadow:0 0 0 3px #4a9eff26}.eden-select{font-family:var(--eden-font-family-base);font-size:var(--eden-font-size-md);padding:var(--eden-space-md)var(--eden-space-md);padding-right:var(--eden-space-2xl);border-radius:var(--eden-radius-md);border:1px solid var(--eden-color-border-light);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-light);color:var(--eden-color-text-primary);transition:all var(--eden-transition-base);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23eff4ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--eden-space-md)center;outline:none;width:100%}.eden-select:hover{border-color:var(--eden-color-border-medium);background-color:var(--eden-color-bg-glass-strong)}.eden-select:focus{border-color:var(--eden-color-accent-primary);box-shadow:0 0 0 3px #4a9eff26}.eden-checkbox{appearance:none;border-radius:var(--eden-radius-xs);border:2px solid var(--eden-color-border-medium);background:var(--eden-color-bg-glass-medium);width:20px;height:20px;-webkit-backdrop-filter:var(--eden-glass-light);cursor:pointer;transition:all var(--eden-transition-base);flex-shrink:0;position:relative}.eden-checkbox:hover{border-color:var(--eden-color-accent-primary);background:var(--eden-color-bg-glass-strong)}.eden-checkbox:checked{background:var(--eden-color-accent-primary);border-color:var(--eden-color-accent-primary)}.eden-checkbox:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:2px;left:5px;transform:rotate(45deg)}.eden-checkbox:focus-visible{outline:2px solid var(--eden-color-accent-primary);outline-offset:2px}.eden-radio{appearance:none;border-radius:var(--eden-radius-round);border:2px solid var(--eden-color-border-medium);background:var(--eden-color-bg-glass-medium);width:20px;height:20px;-webkit-backdrop-filter:var(--eden-glass-light);cursor:pointer;transition:all var(--eden-transition-base);flex-shrink:0;position:relative}.eden-radio:hover{border-color:var(--eden-color-accent-primary);background:var(--eden-color-bg-glass-strong)}.eden-radio:checked{border-color:var(--eden-color-accent-primary);background:var(--eden-color-accent-primary)}.eden-radio:checked:after{content:"";background:#fff;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.eden-radio:focus-visible{outline:2px solid var(--eden-color-accent-primary);outline-offset:2px}.eden-toggle{appearance:none;border:2px solid var(--eden-color-border-medium);background:var(--eden-color-bg-glass-medium);width:48px;height:24px;-webkit-backdrop-filter:var(--eden-glass-light);cursor:pointer;transition:all var(--eden-transition-base);border-radius:999px;flex-shrink:0;position:relative}.eden-toggle:after{content:"";background:var(--eden-color-text-secondary);width:16px;height:16px;transition:all var(--eden-transition-base);box-shadow:var(--eden-shadow-sm);border-radius:50%;position:absolute;top:2px;left:2px}.eden-toggle:hover{border-color:var(--eden-color-accent-primary)}.eden-toggle:checked{background:var(--eden-color-accent-primary);border-color:var(--eden-color-accent-primary)}.eden-toggle:checked:after{background:#fff;left:26px}.eden-toggle:focus-visible{outline:2px solid var(--eden-color-accent-primary);outline-offset:2px}.eden-slider{appearance:none;background:var(--eden-color-bg-glass-medium);width:100%;height:6px;-webkit-backdrop-filter:var(--eden-glass-light);cursor:pointer;border-radius:999px;outline:none}.eden-slider::-webkit-slider-thumb{appearance:none;background:var(--eden-color-accent-primary);width:20px;height:20px;box-shadow:var(--eden-shadow-md);cursor:pointer;transition:all var(--eden-transition-base);border-radius:50%}.eden-slider::-webkit-slider-thumb:hover{box-shadow:var(--eden-shadow-lg);transform:scale(1.15)}.eden-slider::-moz-range-thumb{background:var(--eden-color-accent-primary);width:20px;height:20px;box-shadow:var(--eden-shadow-md);cursor:pointer;transition:all var(--eden-transition-base);border:none;border-radius:50%}.eden-slider::-moz-range-thumb:hover{box-shadow:var(--eden-shadow-lg);transform:scale(1.15)}.eden-form-group{gap:var(--eden-space-sm);margin-bottom:var(--eden-space-lg);flex-direction:column;display:flex}.eden-form-label{font-size:var(--eden-font-size-sm);font-weight:var(--eden-font-weight-medium);color:var(--eden-color-text-secondary);letter-spacing:var(--eden-font-letter-spacing-wide);text-transform:uppercase}.eden-form-help{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-muted)}.eden-form-error{font-size:var(--eden-font-size-sm);color:var(--eden-color-danger)}.eden-range{align-items:center;gap:var(--eden-space-sm);min-width:200px;display:flex}.eden-range input[type=range],.eden-range-input{background:var(--eden-color-bg-glass-medium);cursor:pointer;appearance:none;border-radius:2px;flex:1;height:4px}.eden-range input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--eden-color-accent-primary);cursor:pointer;width:16px;height:16px;transition:transform var(--eden-transition-base);border-radius:50%}.eden-range-input::-webkit-slider-thumb{appearance:none;background:var(--eden-color-accent-primary);cursor:pointer;width:16px;height:16px;transition:transform var(--eden-transition-base);border-radius:50%}.eden-range input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}.eden-range-input::-webkit-slider-thumb:hover{transform:scale(1.15)}.eden-range-value{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-muted);text-align:right;min-width:40px;font-family:var(--eden-font-mono)}.eden-radio-group{gap:var(--eden-space-sm);flex-direction:column;display:flex}.eden-radio-group-horizontal{flex-flow:wrap}.eden-radio-option{align-items:center;gap:var(--eden-space-sm);cursor:pointer;display:flex}.eden-radio-option-label{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-primary)}.eden-checkbox-group{gap:var(--eden-space-sm);flex-direction:column;display:flex}.eden-checkbox-option{align-items:center;gap:var(--eden-space-sm);cursor:pointer;display:flex}.eden-checkbox-option-label{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-primary)}.eden-card{border-radius:var(--eden-radius-lg);padding:var(--eden-space-lg);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-medium);border:1px solid var(--eden-color-border-light);box-shadow:var(--eden-shadow-md);color:var(--eden-color-text-primary);transition:all var(--eden-transition-base)}.eden-card:hover{box-shadow:var(--eden-shadow-lg);border-color:var(--eden-color-border-medium)}.eden-card-glass{border-radius:var(--eden-radius-2xl);padding:var(--eden-space-xl);background:var(--eden-color-bg-glass-strong);-webkit-backdrop-filter:var(--eden-glass-ultra);border:1px solid var(--eden-color-border-light);box-shadow:var(--eden-shadow-2xl);color:var(--eden-color-text-primary)}.eden-card-elevated{background:var(--eden-color-surface-elevated);box-shadow:var(--eden-shadow-xl)}.eden-card-elevated:hover{box-shadow:var(--eden-shadow-2xl);transform:translateY(-2px)}.eden-card-interactive{cursor:pointer;user-select:none}.eden-card-interactive:hover{border-color:var(--eden-color-accent-primary);transform:translateY(-2px)}.eden-card-interactive:active{box-shadow:var(--eden-shadow-md);transform:translateY(0)}.eden-card-header{padding:var(--eden-space-lg);padding-bottom:var(--eden-space-md);border-bottom:1px solid var(--eden-color-border-light)}.eden-card-title{font-size:var(--eden-font-size-xl);font-weight:var(--eden-font-weight-semibold);color:var(--eden-color-text-primary);margin:0}.eden-card-subtitle{font-size:var(--eden-font-size-md);color:var(--eden-color-text-secondary);margin:var(--eden-space-xs)0 0 0}.eden-card-body{padding:var(--eden-space-lg)}.eden-card-footer{padding:var(--eden-space-lg);padding-top:var(--eden-space-md);border-top:1px solid var(--eden-color-border-light);justify-content:flex-end;align-items:center;gap:var(--eden-space-md);display:flex}.eden-card-sm{padding:var(--eden-space-md);border-radius:var(--eden-radius-md)}.eden-card-lg{padding:var(--eden-space-2xl);border-radius:var(--eden-radius-2xl)}.eden-card-image{border-radius:var(--eden-radius-lg);width:100%;height:auto;margin-bottom:var(--eden-space-md);object-fit:cover}.eden-card-image-top{border-radius:var(--eden-radius-lg)var(--eden-radius-lg)0 0;margin-bottom:0}.eden-info-card{align-items:center;gap:var(--eden-space-md);padding:var(--eden-space-md);border-radius:var(--eden-radius-md);background:var(--eden-color-bg-glass-light);-webkit-backdrop-filter:var(--eden-glass-light);border:1px solid var(--eden-color-border-light);display:flex}.eden-info-card-icon{border-radius:var(--eden-radius-md);background:var(--eden-color-accent-primary);color:#fff;width:40px;height:40px;font-size:var(--eden-font-size-xl);flex-shrink:0;justify-content:center;align-items:center;display:flex}.eden-info-card-content{flex:1}.eden-info-card-title{font-weight:var(--eden-font-weight-semibold);color:var(--eden-color-text-primary);margin:0 0 var(--eden-space-xs)0}.eden-info-card-description{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-secondary);margin:0}.eden-stats-card{text-align:center;padding:var(--eden-space-xl)}.eden-stats-value{font-size:var(--eden-font-size-4xl);font-weight:var(--eden-font-weight-bold);color:var(--eden-color-accent-primary);margin:0 0 var(--eden-space-sm)0;line-height:1}.eden-stats-label{font-size:var(--eden-font-size-md);color:var(--eden-color-text-secondary);text-transform:uppercase;letter-spacing:var(--eden-font-letter-spacing-wide)}.eden-card-grid{gap:var(--eden-space-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.eden-modal-overlay{z-index:var(--eden-z-modal);background:var(--eden-color-bg-overlay);-webkit-backdrop-filter:var(--eden-glass-strong);padding:var(--eden-space-2xl);animation:eden-fade-in var(--eden-duration-normal)var(--eden-transition-ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.eden-modal{border-radius:var(--eden-radius-2xl);background:var(--eden-color-bg-glass-strong);width:100%;max-width:500px;max-height:90vh;-webkit-backdrop-filter:var(--eden-glass-ultra);border:1px solid var(--eden-color-border-medium);box-shadow:var(--eden-shadow-2xl);animation:eden-scale-in var(--eden-duration-normal)var(--eden-transition-ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.eden-modal-lg{max-width:800px}.eden-modal-sm{max-width:400px}.eden-modal-full{max-width:95vw;max-height:95vh}.eden-modal-header{padding:var(--eden-space-xl);padding-bottom:var(--eden-space-lg);border-bottom:1px solid var(--eden-color-border-light);justify-content:space-between;align-items:center;gap:var(--eden-space-md);display:flex}.eden-modal-title{font-size:var(--eden-font-size-2xl);font-weight:var(--eden-font-weight-semibold);color:var(--eden-color-text-primary);margin:0}.eden-modal-close{border-radius:var(--eden-radius-md);background:var(--eden-color-bg-glass-light);width:32px;height:32px;color:var(--eden-color-text-secondary);cursor:pointer;transition:all var(--eden-transition-base);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.eden-modal-close:hover{background:var(--eden-color-surface-hover);color:var(--eden-color-text-primary)}.eden-modal-body{padding:var(--eden-space-xl);color:var(--eden-color-text-secondary);flex:1;overflow-y:auto}.eden-modal-footer{padding:var(--eden-space-xl);padding-top:var(--eden-space-lg);border-top:1px solid var(--eden-color-border-light);justify-content:flex-end;align-items:center;gap:var(--eden-space-md);display:flex}.eden-alert-modal{text-align:center;padding:var(--eden-space-2xl)}.eden-alert-icon{width:64px;height:64px;margin:0 auto var(--eden-space-lg)auto;border-radius:var(--eden-radius-round);font-size:var(--eden-font-size-3xl);justify-content:center;align-items:center;display:flex}.eden-alert-icon-info{color:var(--eden-color-info);background:#4dabf733}.eden-alert-icon-success{color:var(--eden-color-success);background:#51cf6633}.eden-alert-icon-warning{color:var(--eden-color-warning);background:#ffd93d33}.eden-alert-icon-danger{color:var(--eden-color-danger);background:#ff3b3033}.eden-tooltip{z-index:var(--eden-z-tooltip);padding:var(--eden-space-sm)var(--eden-space-md);border-radius:var(--eden-radius-sm);background:var(--eden-color-surface-secondary);-webkit-backdrop-filter:var(--eden-glass-strong);border:1px solid var(--eden-color-border-light);box-shadow:var(--eden-shadow-lg);font-size:var(--eden-font-size-sm);color:var(--eden-color-text-primary);white-space:nowrap;pointer-events:none;animation:eden-fade-in var(--eden-duration-fast)var(--eden-transition-ease-out);position:absolute}.eden-popover{z-index:var(--eden-z-popover);border-radius:var(--eden-radius-lg);min-width:200px;max-width:400px;padding:var(--eden-space-lg);background:var(--eden-color-bg-glass-strong);-webkit-backdrop-filter:var(--eden-glass-ultra);border:1px solid var(--eden-color-border-medium);box-shadow:var(--eden-shadow-xl);color:var(--eden-color-text-primary);animation:eden-scale-in var(--eden-duration-fast)var(--eden-transition-ease-out);position:absolute}.eden-popover-title{font-weight:var(--eden-font-weight-semibold);margin:0 0 var(--eden-space-sm)0}.eden-popover-content{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-secondary)}.eden-badge{padding:var(--eden-space-xs)var(--eden-space-sm);border-radius:var(--eden-radius-sm);font-size:var(--eden-font-size-xs);font-weight:var(--eden-font-weight-semibold);text-transform:uppercase;letter-spacing:var(--eden-font-letter-spacing-wide);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-light);border:1px solid var(--eden-color-border-light);color:var(--eden-color-text-secondary);justify-content:center;align-items:center;display:inline-flex}.eden-badge-primary{border-color:var(--eden-color-accent-primary);color:var(--eden-color-accent-primary);background:#4a9eff33}.eden-badge-success{border-color:var(--eden-color-success);color:var(--eden-color-success);background:#51cf6633}.eden-badge-danger{border-color:var(--eden-color-danger);color:var(--eden-color-danger);background:#ff3b3033}.eden-badge-warning{border-color:var(--eden-color-warning);color:var(--eden-color-warning);background:#ffd93d33}.eden-badge-info{border-color:var(--eden-color-info);color:var(--eden-color-info);background:#4dabf733}.eden-badge-sm{padding:2px var(--eden-space-xs);font-size:9px}.eden-badge-lg{font-size:var(--eden-font-size-sm);padding:var(--eden-space-sm)var(--eden-space-md)}.eden-badge-dot{border-radius:var(--eden-radius-round);border:none;width:8px;height:8px;padding:0}.eden-badge-dot-animated{animation:2s infinite eden-pulse}@keyframes eden-pulse{0%,to{opacity:1}50%{opacity:.5}}.eden-tag{align-items:center;gap:var(--eden-space-xs);padding:var(--eden-space-sm)var(--eden-space-md);border-radius:var(--eden-radius-md);font-size:var(--eden-font-size-sm);font-weight:var(--eden-font-weight-medium);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-medium);border:1px solid var(--eden-color-border-light);color:var(--eden-color-text-primary);transition:all var(--eden-transition-base);display:inline-flex}.eden-tag:hover{border-color:var(--eden-color-border-medium);background:var(--eden-color-bg-glass-strong)}.eden-tag-close{border-radius:var(--eden-radius-xs);width:16px;height:16px;color:var(--eden-color-text-muted);cursor:pointer;transition:all var(--eden-transition-fast);margin-left:var(--eden-space-xs);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:12px;display:flex}.eden-tag-close:hover{background:var(--eden-color-surface-hover);color:var(--eden-color-text-primary)}.eden-tag-group{gap:var(--eden-space-sm);flex-wrap:wrap;display:flex}.eden-notification-badge{min-width:18px;height:18px;padding:0 var(--eden-space-xs);background:var(--eden-color-danger);border:2px solid var(--eden-color-surface-primary);font-size:10px;font-weight:var(--eden-font-weight-bold);color:#fff;animation:eden-badge-pop var(--eden-duration-normal)var(--eden-transition-ease-out);border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute;top:-4px;right:-4px}@keyframes eden-badge-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.eden-progress{background:var(--eden-color-bg-glass-medium);width:100%;height:8px;-webkit-backdrop-filter:var(--eden-glass-light);border:1px solid var(--eden-color-border-light);border-radius:999px;position:relative;overflow:hidden}.eden-progress-bar{background:linear-gradient(90deg,var(--eden-color-accent-blue),var(--eden-color-accent-blue-dark));height:100%;transition:width var(--eden-duration-slow)var(--eden-transition-ease-out);border-radius:999px;box-shadow:0 0 10px #52a3ff80}.eden-progress-bar-success{background:linear-gradient(90deg,var(--eden-color-success),var(--eden-color-success-hover));box-shadow:0 0 10px #51cf6680}.eden-progress-bar-danger{background:linear-gradient(90deg,var(--eden-color-danger),var(--eden-color-danger-hover));box-shadow:0 0 10px #ff3b3080}.eden-progress-bar-warning{background:var(--eden-color-warning);box-shadow:0 0 10px #ffd93d80}.eden-progress-animated .eden-progress-bar{background-size:200% 100%;animation:2s infinite eden-progress-shimmer}@keyframes eden-progress-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.eden-progress-sm{height:4px}.eden-progress-lg{height:12px}.eden-progress-xl{height:16px}.eden-progress-circle{justify-content:center;align-items:center;width:80px;height:80px;display:inline-flex;position:relative}.eden-progress-circle-svg{width:100%;height:100%;transform:rotate(-90deg)}.eden-progress-circle-bg{fill:none;stroke:var(--eden-color-bg-glass-medium);stroke-width:4px}.eden-progress-circle-bar{fill:none;stroke:var(--eden-color-accent-primary);stroke-width:4px;stroke-linecap:round;transition:stroke-dashoffset var(--eden-duration-slow)var(--eden-transition-ease-out)}.eden-progress-circle-text{font-size:var(--eden-font-size-lg);font-weight:var(--eden-font-weight-semibold);color:var(--eden-color-text-primary);position:absolute}.eden-spinner{border:3px solid var(--eden-color-bg-glass-medium);border-top-color:var(--eden-color-accent-primary);border-radius:var(--eden-radius-round);width:40px;height:40px;animation:.8s linear infinite eden-spin}@keyframes eden-spin{to{transform:rotate(360deg)}}.eden-spinner-sm{border-width:2px;width:20px;height:20px}.eden-spinner-lg{border-width:4px;width:60px;height:60px}.eden-skeleton{background:var(--eden-color-bg-glass-medium);border-radius:var(--eden-radius-md);position:relative;overflow:hidden}.eden-skeleton:after{content:"";background:linear-gradient(90deg,transparent,var(--eden-color-surface-hover),transparent);animation:1.5s infinite eden-skeleton-shimmer;position:absolute;inset:0}@keyframes eden-skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.eden-skeleton-text{width:100%;height:1em}.eden-skeleton-title{width:70%;height:2em}.eden-skeleton-avatar{border-radius:var(--eden-radius-round);width:40px;height:40px}.eden-skeleton-button{width:120px;height:40px}.eden-list{border-radius:var(--eden-radius-lg);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-medium);border:1px solid var(--eden-color-border-light);box-shadow:var(--eden-shadow-md);margin:0;padding:0;list-style:none;overflow:hidden}.eden-list-item{padding:var(--eden-space-md)var(--eden-space-lg);border-bottom:1px solid var(--eden-color-border-light);transition:all var(--eden-transition-base);color:var(--eden-color-text-primary);align-items:center;gap:var(--eden-space-md);display:flex}.eden-list-item:last-child{border-bottom:none}.eden-list-item:hover{background:var(--eden-color-surface-hover)}.eden-list-item-active{background:var(--eden-color-surface-active);border-left:3px solid var(--eden-color-accent-primary);padding-left:calc(var(--eden-space-lg) - 3px)}.eden-list-item-interactive{cursor:pointer;user-select:none}.eden-list-item-disabled{opacity:.5;cursor:not-allowed}.eden-list-item-disabled:hover{background:0 0}.eden-list-item-icon{width:24px;height:24px;color:var(--eden-color-accent-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.eden-list-item-content{gap:var(--eden-space-xs);flex-direction:column;flex:1;display:flex}.eden-list-item-title{font-weight:var(--eden-font-weight-medium);color:var(--eden-color-text-primary)}.eden-list-item-description{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-secondary)}.eden-list-item-meta{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-muted);flex-shrink:0}.eden-menu{padding:var(--eden-space-sm);border-radius:var(--eden-radius-lg);background:var(--eden-color-bg-glass-strong);-webkit-backdrop-filter:var(--eden-glass-ultra);border:1px solid var(--eden-color-border-medium);box-shadow:var(--eden-shadow-xl);min-width:200px;margin:0;list-style:none}.eden-menu-item{padding:var(--eden-space-sm)var(--eden-space-md);border-radius:var(--eden-radius-sm);cursor:pointer;transition:all var(--eden-transition-fast);color:var(--eden-color-text-primary);align-items:center;gap:var(--eden-space-sm);font-size:var(--eden-font-size-md);user-select:none;display:flex}.eden-menu-item:hover{background:var(--eden-color-surface-hover)}.eden-menu-item-active{background:var(--eden-color-surface-active);color:var(--eden-color-accent-primary)}.eden-menu-divider{background:var(--eden-color-border-light);height:1px;margin:var(--eden-space-sm)0}.eden-menu-title{padding:var(--eden-space-sm)var(--eden-space-md);font-size:var(--eden-font-size-xs);font-weight:var(--eden-font-weight-semibold);color:var(--eden-color-text-muted);text-transform:uppercase;letter-spacing:var(--eden-font-letter-spacing-wide)}.eden-dropdown{display:inline-block;position:relative}.eden-dropdown-menu{top:calc(100% + var(--eden-space-sm));z-index:var(--eden-z-dropdown);animation:eden-fade-in var(--eden-duration-fast)var(--eden-transition-ease-out);position:absolute;left:0}.eden-dropdown-menu-right{left:auto;right:0}.eden-steps{align-items:center;gap:var(--eden-space-md);padding:var(--eden-space-lg);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-medium);border-radius:var(--eden-radius-lg);border:1px solid var(--eden-color-border-light);display:flex}.eden-step{align-items:center;gap:var(--eden-space-sm);flex:1;display:flex;position:relative}.eden-step:after{content:"";left:calc(100% + var(--eden-space-sm));width:var(--eden-space-md);background:var(--eden-color-border-light);height:2px;position:absolute}.eden-step:last-child:after{display:none}.eden-step-number{border-radius:var(--eden-radius-round);background:var(--eden-color-bg-glass-light);border:2px solid var(--eden-color-border-medium);width:32px;height:32px;font-weight:var(--eden-font-weight-semibold);color:var(--eden-color-text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.eden-step-active .eden-step-number{background:var(--eden-color-accent-primary);border-color:var(--eden-color-accent-primary);color:#fff}.eden-step-completed .eden-step-number{background:var(--eden-color-success);border-color:var(--eden-color-success);color:#fff}.eden-step-label{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-secondary)}.eden-step-active .eden-step-label{color:var(--eden-color-text-primary);font-weight:var(--eden-font-weight-medium)}.eden-tabs{width:100%}.eden-tab-list{gap:var(--eden-space-xs);padding:var(--eden-space-xs);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-medium);border-radius:var(--eden-radius-lg);border:1px solid var(--eden-color-border-light);scrollbar-width:none;display:flex;overflow-x:auto}.eden-tab-list::-webkit-scrollbar{display:none}.eden-tab{padding:var(--eden-space-sm)var(--eden-space-lg);border-radius:var(--eden-radius-md);color:var(--eden-color-text-secondary);font-size:var(--eden-font-size-md);font-weight:var(--eden-font-weight-medium);cursor:pointer;transition:all var(--eden-transition-base);user-select:none;white-space:nowrap;background:0 0;border:none;outline:none;flex-shrink:0}.eden-tab:hover{background:var(--eden-color-bg-glass-light);color:var(--eden-color-text-primary)}.eden-tab-active{background:var(--eden-color-surface-elevated);color:var(--eden-color-text-primary);box-shadow:var(--eden-shadow-sm)}.eden-tab:focus-visible{outline:2px solid var(--eden-color-accent-primary);outline-offset:2px}.eden-tab:disabled{opacity:.5;cursor:not-allowed}.eden-tab-panels{padding:var(--eden-space-lg)}.eden-tab-panel{animation:eden-fade-in var(--eden-duration-normal)var(--eden-transition-ease-out);display:none}.eden-tab-panel-active{display:block}.eden-tab-list-underline{border:none;border-bottom:1px solid var(--eden-color-border-light);gap:var(--eden-space-lg);background:0 0;border-radius:0;padding:0}.eden-tab-underline{padding:var(--eden-space-md)0;border-radius:0;position:relative}.eden-tab-underline:after{content:"";height:2px;transition:background var(--eden-transition-base);background:0 0;position:absolute;bottom:-1px;left:0;right:0}.eden-tab-underline:hover:after{background:var(--eden-color-border-medium)}.eden-tab-underline.eden-tab-active:after{background:var(--eden-color-accent-primary)}.eden-tab-list-pills{gap:var(--eden-space-sm);background:0 0;border:none;padding:0}.eden-tab-pill{border-radius:var(--eden-radius-lg);background:var(--eden-color-bg-glass-medium);-webkit-backdrop-filter:var(--eden-glass-light);border:1px solid var(--eden-color-border-light)}.eden-tab-pill:hover{background:var(--eden-color-bg-glass-strong);border-color:var(--eden-color-border-medium)}.eden-tab-pill.eden-tab-active{background:linear-gradient(135deg,var(--eden-color-accent-blue),var(--eden-color-accent-blue-dark));color:#fff;border-color:#0000}.eden-tabs-vertical{gap:var(--eden-space-lg);display:flex}.eden-tab-list-vertical{flex-direction:column;flex-shrink:0;width:200px}.eden-tab-list-vertical .eden-tab{text-align:left;justify-content:flex-start;width:100%}.eden-tab-with-icon{align-items:center;gap:var(--eden-space-sm);display:flex}.eden-tab-icon{justify-content:center;align-items:center;width:18px;height:18px;display:flex}.eden-tab-badge{margin-left:var(--eden-space-xs);padding:2px var(--eden-space-xs);border-radius:var(--eden-radius-xs);background:var(--eden-color-danger);color:#fff;font-size:10px;font-weight:var(--eden-font-weight-bold)}.eden-sidebar{background:var(--eden-color-bg-glass-strong);width:280px;min-width:280px;max-height:100%;-webkit-backdrop-filter:var(--eden-glass-strong);border:1px solid var(--eden-color-border-light);border-radius:var(--eden-radius-xl);box-shadow:var(--eden-shadow-lg);flex-direction:column;display:flex;overflow:hidden}.eden-sidebar-compact{width:240px;min-width:240px}.eden-sidebar-wide{width:320px;min-width:320px}.eden-sidebar-header{padding:var(--eden-space-lg);border-bottom:1px solid var(--eden-color-border-light)}.eden-sidebar-header h2,.eden-sidebar-header-title{font-size:var(--eden-font-size-lg);font-weight:var(--eden-font-weight-semibold);color:var(--eden-color-text-primary);margin:0 0 var(--eden-space-sm)0}.eden-sidebar-header-subtitle{font-size:var(--eden-font-size-sm);color:var(--eden-color-text-muted);margin-top:var(--eden-space-xs)}.eden-sidebar-section{padding:var(--eden-space-md)}.eden-sidebar-section-scrollable{flex-direction:column;flex:1;display:flex;overflow:hidden}.eden-sidebar-section-title{font-size:var(--eden-font-size-xs);font-weight:var(--eden-font-weight-semibold);color:var(--eden-color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--eden-space-sm);padding:0 var(--eden-space-sm)}.eden-sidebar-divider{background:var(--eden-color-border-light);height:1px;margin:0 var(--eden-space-md)}.eden-sidebar-items{gap:var(--eden-space-xs);flex-direction:column;display:flex}.eden-sidebar-items-scrollable{flex:1;overflow-y:auto}.eden-sidebar-item{align-items:center;gap:var(--eden-space-md);padding:var(--eden-space-md);border-radius:var(--eden-radius-md);cursor:pointer;transition:all var(--eden-transition-base);color:var(--eden-color-text-secondary);user-select:none;display:flex}.eden-sidebar-item:hover{background:var(--eden-color-bg-glass-medium);color:var(--eden-color-text-primary)}.eden-sidebar-item-selected{background:var(--eden-color-surface-active);border:1px solid var(--eden-color-accent-primary);color:var(--eden-color-text-primary)}.eden-sidebar-item-disabled{opacity:.5;cursor:default}.eden-sidebar-item-disabled:hover{color:var(--eden-color-text-secondary);background:0 0}.eden-sidebar-item-icon{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:16px;display:flex}.eden-sidebar-item-icon img{border-radius:var(--eden-radius-sm);object-fit:contain;width:24px;height:24px}.eden-sidebar-item-icon-lg{width:32px;height:32px;font-size:20px}.eden-sidebar-item-icon-lg img{width:32px;height:32px}.eden-sidebar-item-text{font-size:var(--eden-font-size-sm);font-weight:var(--eden-font-weight-medium);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.eden-sidebar-item-meta{font-size:var(--eden-font-size-xs);color:var(--eden-color-text-muted);background:var(--eden-color-bg-glass-medium);padding:var(--eden-space-xs)var(--eden-space-sm);border-radius:var(--eden-radius-full);flex-shrink:0}.eden-sidebar-item-details{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.eden-sidebar-item-title{font-size:var(--eden-font-size-sm);font-weight:var(--eden-font-weight-medium);color:var(--eden-color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.eden-sidebar-item-subtitle{font-size:var(--eden-font-size-xs);color:var(--eden-color-text-muted);font-family:var(--eden-font-mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.eden-sidebar-search{width:100%;padding:var(--eden-space-sm)var(--eden-space-md);background:var(--eden-color-bg-glass-medium);border:1px solid var(--eden-color-border-light);border-radius:var(--eden-radius-md);color:var(--eden-color-text-primary);font-size:var(--eden-font-size-sm);transition:all var(--eden-transition-base);outline:none}.eden-sidebar-search:focus{border-color:var(--eden-color-accent-primary);box-shadow:0 0 0 2px #6366f11a}.eden-sidebar-search::placeholder{color:var(--eden-color-text-muted)}.eden-sidebar-footer{padding:var(--eden-space-md);border-top:1px solid var(--eden-color-border-light)}.eden-sidebar-item{animation:.2s ease-out eden-fade-in}
@@ -0,0 +1,59 @@
1
+ import { FileOpenManager } from "./FileOpenManager";
2
+ import type { FileOpenResult, FileHandlerInfo } from "@edenapp/types";
3
+ /**
4
+ * FileOpenHandler
5
+ *
6
+ * Command endpoints for file opening functionality.
7
+ */
8
+ export declare class FileOpenHandler {
9
+ private manager;
10
+ constructor(manager: FileOpenManager);
11
+ /**
12
+ * Open a file with its default handler
13
+ */
14
+ handleOpen(args: {
15
+ path: string;
16
+ }): Promise<FileOpenResult>;
17
+ /**
18
+ * Open a file with a specific app
19
+ */
20
+ handleOpenWith(args: {
21
+ path: string;
22
+ appId: string;
23
+ }): Promise<FileOpenResult>;
24
+ /**
25
+ * Get the default handler app for a file extension
26
+ */
27
+ handleGetHandler(args: {
28
+ extension: string;
29
+ }): Promise<{
30
+ appId: string | undefined;
31
+ }>;
32
+ /**
33
+ * Set user preference for a file extension's default handler
34
+ */
35
+ handleSetDefaultHandler(args: {
36
+ extension: string;
37
+ appId: string;
38
+ }): Promise<void>;
39
+ /**
40
+ * Remove user preference for a file extension (revert to default)
41
+ */
42
+ handleRemoveDefaultHandler(args: {
43
+ extension: string;
44
+ }): Promise<void>;
45
+ /**
46
+ * Get all apps that can handle a specific file extension
47
+ */
48
+ handleGetSupportedHandlers(args: {
49
+ extension: string;
50
+ }): Promise<FileHandlerInfo[]>;
51
+ /**
52
+ * Get all file type associations
53
+ */
54
+ handleGetAssociations(args: Record<string, never>): Promise<Record<string, {
55
+ default: string | undefined;
56
+ userOverride: string | undefined;
57
+ }>>;
58
+ }
59
+ //# sourceMappingURL=FileOpenHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileOpenHandler.d.ts","sourceRoot":"","sources":["../../src/file-open/FileOpenHandler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtE;;;;GAIG;AACH,qBACa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAAkB;gBAErB,OAAO,EAAE,eAAe;IAIpC;;OAEG;IAEG,UAAU,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAKjE;;OAEG;IAEG,cAAc,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAKpF;;OAEG;IAEG,gBAAgB,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IAM3F;;OAEG;IAEG,uBAAuB,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxF;;OAEG;IAEG,0BAA0B,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5E;;OAEG;IAEG,0BAA0B,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAKzF;;OAEG;IAEG,qBAAqB,CACzB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAC1B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;CAG9F"}
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.FileOpenHandler = void 0;
13
+ const ipc_1 = require("../ipc");
14
+ const FileOpenManager_1 = require("./FileOpenManager");
15
+ /**
16
+ * FileOpenHandler
17
+ *
18
+ * Command endpoints for file opening functionality.
19
+ */
20
+ let FileOpenHandler = class FileOpenHandler {
21
+ manager;
22
+ constructor(manager) {
23
+ this.manager = manager;
24
+ }
25
+ /**
26
+ * Open a file with its default handler
27
+ */
28
+ async handleOpen(args) {
29
+ const { path } = args;
30
+ return this.manager.openFile(path);
31
+ }
32
+ /**
33
+ * Open a file with a specific app
34
+ */
35
+ async handleOpenWith(args) {
36
+ const { path, appId } = args;
37
+ return this.manager.openFileWith(path, appId);
38
+ }
39
+ /**
40
+ * Get the default handler app for a file extension
41
+ */
42
+ async handleGetHandler(args) {
43
+ const { extension } = args;
44
+ const appId = this.manager.getHandlerForExtension(extension);
45
+ return { appId };
46
+ }
47
+ /**
48
+ * Set user preference for a file extension's default handler
49
+ */
50
+ async handleSetDefaultHandler(args) {
51
+ const { extension, appId } = args;
52
+ await this.manager.setDefaultHandler(extension, appId);
53
+ }
54
+ /**
55
+ * Remove user preference for a file extension (revert to default)
56
+ */
57
+ async handleRemoveDefaultHandler(args) {
58
+ const { extension } = args;
59
+ await this.manager.removeDefaultHandler(extension);
60
+ }
61
+ /**
62
+ * Get all apps that can handle a specific file extension
63
+ */
64
+ async handleGetSupportedHandlers(args) {
65
+ const { extension } = args;
66
+ return this.manager.getSupportedHandlers(extension);
67
+ }
68
+ /**
69
+ * Get all file type associations
70
+ */
71
+ async handleGetAssociations(args) {
72
+ return this.manager.getAllAssociations();
73
+ }
74
+ };
75
+ exports.FileOpenHandler = FileOpenHandler;
76
+ __decorate([
77
+ (0, ipc_1.EdenHandler)("open"),
78
+ __metadata("design:type", Function),
79
+ __metadata("design:paramtypes", [Object]),
80
+ __metadata("design:returntype", Promise)
81
+ ], FileOpenHandler.prototype, "handleOpen", null);
82
+ __decorate([
83
+ (0, ipc_1.EdenHandler)("open-with"),
84
+ __metadata("design:type", Function),
85
+ __metadata("design:paramtypes", [Object]),
86
+ __metadata("design:returntype", Promise)
87
+ ], FileOpenHandler.prototype, "handleOpenWith", null);
88
+ __decorate([
89
+ (0, ipc_1.EdenHandler)("get-handler"),
90
+ __metadata("design:type", Function),
91
+ __metadata("design:paramtypes", [Object]),
92
+ __metadata("design:returntype", Promise)
93
+ ], FileOpenHandler.prototype, "handleGetHandler", null);
94
+ __decorate([
95
+ (0, ipc_1.EdenHandler)("set-default-handler"),
96
+ __metadata("design:type", Function),
97
+ __metadata("design:paramtypes", [Object]),
98
+ __metadata("design:returntype", Promise)
99
+ ], FileOpenHandler.prototype, "handleSetDefaultHandler", null);
100
+ __decorate([
101
+ (0, ipc_1.EdenHandler)("remove-default-handler"),
102
+ __metadata("design:type", Function),
103
+ __metadata("design:paramtypes", [Object]),
104
+ __metadata("design:returntype", Promise)
105
+ ], FileOpenHandler.prototype, "handleRemoveDefaultHandler", null);
106
+ __decorate([
107
+ (0, ipc_1.EdenHandler)("get-supported-handlers"),
108
+ __metadata("design:type", Function),
109
+ __metadata("design:paramtypes", [Object]),
110
+ __metadata("design:returntype", Promise)
111
+ ], FileOpenHandler.prototype, "handleGetSupportedHandlers", null);
112
+ __decorate([
113
+ (0, ipc_1.EdenHandler)("get-associations"),
114
+ __metadata("design:type", Function),
115
+ __metadata("design:paramtypes", [Object]),
116
+ __metadata("design:returntype", Promise)
117
+ ], FileOpenHandler.prototype, "handleGetAssociations", null);
118
+ exports.FileOpenHandler = FileOpenHandler = __decorate([
119
+ (0, ipc_1.EdenNamespace)("file"),
120
+ __metadata("design:paramtypes", [FileOpenManager_1.FileOpenManager])
121
+ ], FileOpenHandler);
122
+ //# sourceMappingURL=FileOpenHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileOpenHandler.js","sourceRoot":"","sources":["../../src/file-open/FileOpenHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAAoD;AACpD,uDAAoD;AAGpD;;;;GAIG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAe;IAClB,OAAO,CAAkB;IAEjC,YAAY,OAAwB;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IAEG,AAAN,KAAK,CAAC,UAAU,CAAC,IAAsB;QACrC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IAEG,AAAN,KAAK,CAAC,cAAc,CAAC,IAAqC;QACxD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IAEG,AAAN,KAAK,CAAC,gBAAgB,CAAC,IAA2B;QAChD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAC7D,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IAED;;OAEG;IAEG,AAAN,KAAK,CAAC,uBAAuB,CAAC,IAA0C;QACtE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAClC,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IAEG,AAAN,KAAK,CAAC,0BAA0B,CAAC,IAA2B;QAC1D,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,MAAM,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IAEG,AAAN,KAAK,CAAC,0BAA0B,CAAC,IAA2B;QAC1D,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IAEG,AAAN,KAAK,CAAC,qBAAqB,CACzB,IAA2B;QAE3B,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAC3C,CAAC;CACF,CAAA;AAvEY,0CAAe;AAWpB;IADL,IAAA,iBAAW,EAAC,MAAM,CAAC;;;;iDAInB;AAMK;IADL,IAAA,iBAAW,EAAC,WAAW,CAAC;;;;qDAIxB;AAMK;IADL,IAAA,iBAAW,EAAC,aAAa,CAAC;;;;uDAK1B;AAMK;IADL,IAAA,iBAAW,EAAC,qBAAqB,CAAC;;;;8DAIlC;AAMK;IADL,IAAA,iBAAW,EAAC,wBAAwB,CAAC;;;;iEAIrC;AAMK;IADL,IAAA,iBAAW,EAAC,wBAAwB,CAAC;;;;iEAIrC;AAMK;IADL,IAAA,iBAAW,EAAC,kBAAkB,CAAC;;;;4DAK/B;0BAtEU,eAAe;IAD3B,IAAA,mBAAa,EAAC,MAAM,CAAC;qCAIC,iCAAe;GAHzB,eAAe,CAuE3B"}
@@ -0,0 +1,91 @@
1
+ import { PackageManager } from "../package-manager";
2
+ import { ProcessManager } from "../process-manager";
3
+ import { ViewManager } from "../view-manager";
4
+ import { FilesystemManager } from "../filesystem";
5
+ import { IPCBridge, CommandRegistry, EdenEmitter } from "../ipc";
6
+ import type { FileOpenResult, FileHandlerInfo } from "@edenapp/types";
7
+ /**
8
+ * Events emitted by the FileOpenManager
9
+ */
10
+ interface FileNamespaceEvents {
11
+ opened: {
12
+ path: string;
13
+ isDirectory: boolean;
14
+ appId: string;
15
+ };
16
+ }
17
+ /**
18
+ * FileOpenManager
19
+ *
20
+ * Manages file type associations and handles opening files with appropriate applications.
21
+ */
22
+ export declare class FileOpenManager extends EdenEmitter<FileNamespaceEvents> {
23
+ private packageManager;
24
+ private processManager;
25
+ private viewManager;
26
+ private fsManager;
27
+ private userDirectory;
28
+ private preferencesPath;
29
+ private fileOpenHandler;
30
+ private defaultRegistry;
31
+ private userPreferences;
32
+ private static readonly DIRECTORY_KEY;
33
+ constructor(userDirectory: string, packageManager: PackageManager, processManager: ProcessManager, viewManager: ViewManager, fsManager: FilesystemManager, ipcBridge: IPCBridge, commandRegistry: CommandRegistry);
34
+ /**
35
+ * Initialize with user preferences loaded from disk
36
+ */
37
+ initialize(): Promise<void>;
38
+ /**
39
+ * Set up built-in default handlers
40
+ */
41
+ private initializeDefaultRegistry;
42
+ /**
43
+ * Load user preferences from disk
44
+ */
45
+ private loadUserPreferences;
46
+ /**
47
+ * Save user preferences to disk
48
+ */
49
+ private saveUserPreferences;
50
+ /**
51
+ * Get the file extension from a path (lowercase, without dot)
52
+ */
53
+ private getExtension;
54
+ /**
55
+ * Get the handler app ID for a file path
56
+ */
57
+ getHandler(filePath: string, isDirectory?: boolean): string | undefined;
58
+ /**
59
+ * Get handler for a specific extension
60
+ */
61
+ getHandlerForExtension(extension: string): string | undefined;
62
+ /**
63
+ * Set user preference for a file extension
64
+ */
65
+ setDefaultHandler(extension: string, appId: string): Promise<void>;
66
+ /**
67
+ * Remove user preference for a file extension (revert to default)
68
+ */
69
+ removeDefaultHandler(extension: string): Promise<void>;
70
+ /**
71
+ * Get all apps that can handle a specific extension
72
+ */
73
+ getSupportedHandlers(extension: string): FileHandlerInfo[];
74
+ /**
75
+ * Get all file type associations
76
+ */
77
+ getAllAssociations(): Record<string, {
78
+ default: string | undefined;
79
+ userOverride: string | undefined;
80
+ }>;
81
+ /**
82
+ * Open a file with its default handler
83
+ */
84
+ openFile(filePath: string): Promise<FileOpenResult>;
85
+ /**
86
+ * Open a file with a specific app
87
+ */
88
+ openFileWith(filePath: string, appId: string): Promise<FileOpenResult>;
89
+ }
90
+ export {};
91
+ //# sourceMappingURL=FileOpenManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileOpenManager.d.ts","sourceRoot":"","sources":["../../src/file-open/FileOpenManager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAiB,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEhF,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtE;;GAEG;AACH,UAAU,mBAAmB;IAC3B,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/D;AAED;;;;GAIG;AACH,qBAGa,eAAgB,SAAQ,WAAW,CAAC,mBAAmB,CAAC;IAgBzC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,cAAc;IACzB,OAAO,CAAC,WAAW;IACb,OAAO,CAAC,SAAS;IAlB9C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,eAAe,CAAkB;IAGzC,OAAO,CAAC,eAAe,CAAkC;IAGzD,OAAO,CAAC,eAAe,CAAkC;IAGzD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAmB;gBAG7B,aAAa,EAAE,MAAM,EACd,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,EACjC,WAAW,EAAE,WAAW,EAClB,SAAS,EAAE,iBAAiB,EAC5C,SAAS,EAAE,SAAS,EACd,eAAe,EAAE,eAAe;IAa3D;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAOjC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAqEjC;;OAEG;YACW,mBAAmB;IAWjC;;OAEG;YACW,mBAAmB;IAMjC;;OAEG;IACH,OAAO,CAAC,YAAY;IAKpB;;OAEG;IACH,UAAU,CACR,QAAQ,EAAE,MAAM,EAChB,WAAW,GAAE,OAAe,GAC3B,MAAM,GAAG,SAAS;IAcrB;;OAEG;IACH,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAY7D;;OAEG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxE;;OAEG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5D;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,EAAE;IAqC1D;;OAEG;IACH,kBAAkB,IAAI,MAAM,CAC1B,MAAM,EACN;QAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAClE;IA2BD;;OAEG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA6DzD;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;CA8C7E"}