@fde-desktop/fde-core 0.4.9 → 0.4.11

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 (186) hide show
  1. package/dist/{AppEmptyState-Bxpit0JV.js → AppEmptyState-Boej96TB.js} +1 -1
  2. package/dist/AppEmptyState-CLc00OOG.cjs +1 -0
  3. package/dist/AppIcon-C8vHUVcb.cjs +1 -0
  4. package/dist/AppIcon-mtEoyzOb.js +22 -0
  5. package/dist/AppMenuBar-CAlkNHjj.cjs +1 -0
  6. package/dist/AppMenuBar-DmSfQRXU.js +197 -0
  7. package/dist/CalendarApp-DOmjWbpl.js +10 -0
  8. package/dist/CalendarApp-Z0bCCYsK.cjs +1 -0
  9. package/dist/ColorPicker-CQRRwY-y.cjs +1 -0
  10. package/dist/ColorPicker-WCeD3Wjf.js +35 -0
  11. package/dist/CreateItemApp-BkFFFdX1.cjs +1 -0
  12. package/dist/CreateItemApp-DR8Y4bwo.js +202 -0
  13. package/dist/DeviceInfoApp-BXQ9uOwF.cjs +1 -0
  14. package/dist/DeviceInfoApp-I63mJRWy.js +195 -0
  15. package/dist/DownloadProgress-CkTGTf0z.cjs +1 -0
  16. package/dist/DownloadProgress-DnVASsv5.js +39 -0
  17. package/dist/FilePickerApp-By6-vbag.cjs +1 -0
  18. package/dist/FilePickerApp-ClHuhm6Z.js +390 -0
  19. package/dist/FilesApp-BC4UPNuw.cjs +1 -0
  20. package/dist/FilesApp-D8MqvC5X.js +210 -0
  21. package/dist/ImageViewerApp-B1niWF75.cjs +1 -0
  22. package/dist/{ImageViewerApp-BaLP3gkO.js → ImageViewerApp-iojtyFEf.js} +5 -5
  23. package/dist/{ImageViewerMenuBar-CabGSi9r.js → ImageViewerMenuBar-BIsUokxV.js} +2 -2
  24. package/dist/ImageViewerMenuBar-BgzgSF3v.cjs +1 -0
  25. package/dist/MenuEditApp-BHptoJbz.cjs +1 -0
  26. package/dist/{MenuEditApp-BTRppYnD.js → MenuEditApp-CJUbJaqh.js} +138 -143
  27. package/dist/MenuEditMenuBar-CCOSPAUe.cjs +1 -0
  28. package/dist/{MenuEditMenuBar-x1IQrHP2.js → MenuEditMenuBar-DnCL-kaZ.js} +3 -3
  29. package/dist/NotesApp-BmQIBtJ2.cjs +1 -0
  30. package/dist/{NotesApp-CQe7UfBC.js → NotesApp-DJ2dGt4-.js} +5 -5
  31. package/dist/NotesMenuBar-BzojwMtH.cjs +1 -0
  32. package/dist/{NotesMenuBar-VhpIe68v.js → NotesMenuBar-DILZTjnT.js} +3 -3
  33. package/dist/{PdfApp-DL_R9-Nc.js → PdfApp-IjY_GtnW.js} +3 -3
  34. package/dist/PdfApp-krW8UI97.cjs +1 -0
  35. package/dist/{PdfMenuBar-DZCLSOpR.js → PdfMenuBar-Bd5MTZcZ.js} +1 -1
  36. package/dist/PdfMenuBar-DWD0Qa3F.cjs +1 -0
  37. package/dist/SettingsApp-BE22l5UP.cjs +1 -0
  38. package/dist/SettingsApp-BTFtTFY_.js +1228 -0
  39. package/dist/SettingsMenuBar-CZE2evG2.cjs +1 -0
  40. package/dist/{SettingsMenuBar-YWiJHaxq.js → SettingsMenuBar-ktC0viTd.js} +3 -3
  41. package/dist/UploaderApp-CbypD538.js +263 -0
  42. package/dist/UploaderApp-D_qD3O70.cjs +1 -0
  43. package/dist/{VscIcon-DBfVnArE.js → VscIcon-AEENjKOE.js} +1 -1
  44. package/dist/VscIcon-BYb_Soyy.cjs +1 -0
  45. package/dist/buildBreadcrumbs-Ccd8i11b.cjs +1 -0
  46. package/dist/buildBreadcrumbs-noWhu8os.js +45 -0
  47. package/dist/{desktopStore-F8bgLqFl.js → desktopStore-8cSZlj7s.js} +407 -477
  48. package/dist/desktopStore-C1jR6Fdb.cjs +1 -0
  49. package/dist/imageViewerStore-Dfylg59V.cjs +1 -0
  50. package/dist/index.cjs +1 -1
  51. package/dist/index.css +1 -1
  52. package/dist/index.d.ts +16 -6
  53. package/dist/index.js +1646 -1960
  54. package/dist/menuEditStore-CYwtfD6H.cjs +1 -0
  55. package/dist/notesStore-CrWTO6oB.cjs +1 -0
  56. package/dist/settingsAppStore-DuYZNeFf.cjs +1 -0
  57. package/dist/useAdaptiveDimensions-3Lz4X0Tc.cjs +1 -0
  58. package/dist/{useAdaptiveDimensions-AVDc_qPa.js → useAdaptiveDimensions-DxNLJ7R5.js} +1 -1
  59. package/dist/{useCloseInterceptor-BZd3VILp.js → useCloseInterceptor-CIxhOZx1.js} +1 -1
  60. package/dist/useCloseInterceptor-CdX-09Ib.cjs +1 -0
  61. package/dist/useDynamicIcon-CK6SjEv5.cjs +1 -0
  62. package/dist/useOpenApp-D-FOY88T.cjs +1 -0
  63. package/dist/{useOpenApp-CBIm7Gzl.js → useOpenApp-DkZLFFCH.js} +51 -67
  64. package/dist/{useResolvedUrl-DQpLqOoL.js → useResolvedUrl-B6x4xy0x.js} +1 -2
  65. package/dist/useResolvedUrl-Bb39DpVy.cjs +1 -0
  66. package/package.json +2 -1
  67. package/dist/AccordionChevron-DxpOyInK.js +0 -26
  68. package/dist/AccordionChevron-kn5kSrEc.cjs +0 -1
  69. package/dist/ActionIcon-Drh4p6Fv.js +0 -145
  70. package/dist/ActionIcon-alk2zZD6.cjs +0 -1
  71. package/dist/AppEmptyState-BWCUbf-B.cjs +0 -1
  72. package/dist/AppIcon-BU7a3ZNH.cjs +0 -1
  73. package/dist/AppIcon-XumS3bIG.js +0 -80
  74. package/dist/AppMenuBar-B9U0n1Vv.cjs +0 -1
  75. package/dist/AppMenuBar-CnIEVjr8.js +0 -2049
  76. package/dist/Box-DSKR_qaa.js +0 -1579
  77. package/dist/Box-zW6Twge8.cjs +0 -1
  78. package/dist/Button-DMlnrqyx.cjs +0 -1
  79. package/dist/Button-wTOTQKxF.js +0 -178
  80. package/dist/CalendarApp-B_e1B1Yn.cjs +0 -1
  81. package/dist/CalendarApp-C-l9D6nd.cjs +0 -1
  82. package/dist/CalendarApp-D0ftTCTG.js +0 -1399
  83. package/dist/Center-CmxXB9ql.js +0 -25
  84. package/dist/Center-DKUE2pER.cjs +0 -1
  85. package/dist/CheckIcon-CZhtJD1O.cjs +0 -1
  86. package/dist/CheckIcon-N5qBqXQJ.js +0 -25
  87. package/dist/CodeServerApp-BOoGwZ7r.cjs +0 -1
  88. package/dist/CodeServerApp-Be3I5EGg.cjs +0 -1
  89. package/dist/CodeServerApp-DW18EZxa.js +0 -150
  90. package/dist/ColorPicker-BCNqi02x.js +0 -997
  91. package/dist/ColorPicker-BrDE7tMO.cjs +0 -1
  92. package/dist/CreateItemApp-B12M1E_1.cjs +0 -1
  93. package/dist/CreateItemApp-TAAprby3.js +0 -400
  94. package/dist/CreateItemApp-ePB6ujNl.cjs +0 -1
  95. package/dist/DeviceInfoApp-BMF18BGo.cjs +0 -1
  96. package/dist/DeviceInfoApp-DRy0H3aT.cjs +0 -1
  97. package/dist/DeviceInfoApp-lgpwkeRR.js +0 -223
  98. package/dist/DownloadProgress-EoyCaD5O.js +0 -174
  99. package/dist/DownloadProgress-VNdj22U8.cjs +0 -1
  100. package/dist/FileIcon-7JaSR3Gn.js +0 -89
  101. package/dist/FileIcon-CIXopWLv.cjs +0 -1
  102. package/dist/FilePickerApp-DaMgEqKh.js +0 -409
  103. package/dist/FilePickerApp-DjmuSFqa.cjs +0 -1
  104. package/dist/FilesApp-Bp7wfrBZ.cjs +0 -1
  105. package/dist/FilesApp-BpJJRKhi.cjs +0 -1
  106. package/dist/FilesApp-Cj94QG5o.js +0 -225
  107. package/dist/Group-CtBJSfCo.js +0 -48
  108. package/dist/Group-Dsrf6lEK.cjs +0 -1
  109. package/dist/ImageViewerApp-DlHGeB3S.cjs +0 -1
  110. package/dist/ImageViewerApp-DoXd_Swu.cjs +0 -1
  111. package/dist/ImageViewerMenuBar-SAI7UNz7.cjs +0 -1
  112. package/dist/ImageViewerMenuBar-_Jr29gii.cjs +0 -1
  113. package/dist/MenuEditApp-BJjlPTOa.cjs +0 -1
  114. package/dist/MenuEditApp-JPsGT-S3.cjs +0 -1
  115. package/dist/MenuEditMenuBar-BydGkqMw.cjs +0 -1
  116. package/dist/MenuEditMenuBar-DptlwVPQ.cjs +0 -1
  117. package/dist/NotesApp-BOcRGO7w.cjs +0 -1
  118. package/dist/NotesApp-OL07JXRE.cjs +0 -1
  119. package/dist/NotesMenuBar-BSI_2Y7p.cjs +0 -1
  120. package/dist/NotesMenuBar-Df6aW85J.cjs +0 -1
  121. package/dist/Paper-BX_9odR6.js +0 -30
  122. package/dist/Paper-D8-BaBx2.cjs +0 -1
  123. package/dist/PdfApp-CNEbty5v.cjs +0 -1
  124. package/dist/PdfApp-CVv3ZCaM.cjs +0 -1
  125. package/dist/PdfMenuBar--E6kDyrT.cjs +0 -1
  126. package/dist/PdfMenuBar-Dj5cJUkg.cjs +0 -1
  127. package/dist/SettingsApp-BlmHuAjT.js +0 -1831
  128. package/dist/SettingsApp-CNvIgf5B.cjs +0 -1
  129. package/dist/SettingsApp-DWxanNE4.cjs +0 -1
  130. package/dist/SettingsMenuBar-CBoOBCfx.cjs +0 -1
  131. package/dist/SettingsMenuBar-DQooFkZN.cjs +0 -1
  132. package/dist/Slider-BUiHxjKO.cjs +0 -1
  133. package/dist/Slider-t-NcD60t.js +0 -1176
  134. package/dist/Stack-Bp1Ek2Gp.js +0 -34
  135. package/dist/Stack-D4jAiRfc.cjs +0 -1
  136. package/dist/StorybookApp-CDLV_kja.cjs +0 -1
  137. package/dist/StorybookApp-DKwlPCmo.js +0 -10
  138. package/dist/TerminalApp-BCB7i1lR.cjs +0 -1
  139. package/dist/TerminalApp-BYc_gHLe.js +0 -326
  140. package/dist/TerminalApp-Dviz6aP2.cjs +0 -1
  141. package/dist/TerminalMenuBar-D5tPmgR_.js +0 -113
  142. package/dist/TerminalMenuBar-DNshPmCa.cjs +0 -1
  143. package/dist/TerminalMenuBar-HzMSR7XP.cjs +0 -1
  144. package/dist/TextInput-C-JtGWn1.js +0 -981
  145. package/dist/TextInput-CrsmcOip.cjs +0 -1
  146. package/dist/Tooltip-D5Cd9wtz.cjs +0 -1
  147. package/dist/Tooltip-DOeIvhrO.js +0 -1142
  148. package/dist/UnstyledButton-DGaG-e_G.js +0 -25
  149. package/dist/UnstyledButton-DX2pTahr.cjs +0 -1
  150. package/dist/UploaderApp-C6xA5Rrf2.cjs +0 -1
  151. package/dist/UploaderApp-DnHIRxB_.cjs +0 -1
  152. package/dist/UploaderApp-qBfpukR_.js +0 -488
  153. package/dist/VscIcon-CcMdrFoJ.cjs +0 -1
  154. package/dist/create-safe-context-Bboj0GWC.cjs +0 -1
  155. package/dist/create-safe-context-XT2cxc14.js +0 -12
  156. package/dist/desktopStore-CZoA9VHO.cjs +0 -1
  157. package/dist/getRuntime-BFK0-8R1.cjs +0 -1
  158. package/dist/getRuntime-DAPqFH2W.js +0 -63
  159. package/dist/imageViewerStore-BB_tssZR.cjs +0 -1
  160. package/dist/is-element-Bu_JY8Qy.js +0 -7
  161. package/dist/is-element-CdV0xajp.cjs +0 -1
  162. package/dist/menuEditStore-CTeM_dns.cjs +0 -1
  163. package/dist/notesStore-BCEl1D_v.cjs +0 -1
  164. package/dist/settingsAppStore-CMBc13VU.cjs +0 -1
  165. package/dist/terminalStore-IWdf4Mm6.js +0 -30
  166. package/dist/terminalStore-iIuyodfK.cjs +0 -1
  167. package/dist/use-merged-ref-BT8_u6vW.js +0 -25
  168. package/dist/use-merged-ref-n9Gw9LNn.cjs +0 -1
  169. package/dist/use-resolved-styles-api-8OXE2oRq.cjs +0 -1
  170. package/dist/use-resolved-styles-api-DNUlJJZf.js +0 -21
  171. package/dist/use-uncontrolled-A4hm9ATM.js +0 -23
  172. package/dist/use-uncontrolled-DDJVQiM_.cjs +0 -1
  173. package/dist/useAdaptiveDimensions-CfITBJ_m.cjs +0 -1
  174. package/dist/useCloseInterceptor-yntBEzNc.cjs +0 -1
  175. package/dist/useDynamicIcon-DJ_il30E.cjs +0 -1
  176. package/dist/useOpenApp-DW4x79Zg.cjs +0 -1
  177. package/dist/useResolvedUrl-BkMPM1fM.cjs +0 -1
  178. /package/dist/{Colors-zP2AFgU3.cjs → Colors-CNJbU7oq.cjs} +0 -0
  179. /package/dist/{Colors-ClnDxnyA.js → Colors-CuABn2W4.js} +0 -0
  180. /package/dist/{imageViewerStore-C5kWz0o7.js → imageViewerStore-COrD02Zu.js} +0 -0
  181. /package/dist/{menuEditStore-Cj1zAwxQ.js → menuEditStore-CxsgLiQu.js} +0 -0
  182. /package/dist/{notesStore-BPyRTHEc.js → notesStore-Dgah46U5.js} +0 -0
  183. /package/dist/{settingsAppStore-BDQ3ts1y.js → settingsAppStore-DHZhi6Rl.js} +0 -0
  184. /package/dist/{useDynamicIcon-Bf0t2foA.js → useDynamicIcon-_wGeWu-b.js} +0 -0
  185. /package/dist/{useMenuBarUtils-nmu9yehT.js → useMenuBarUtils-ChAfI7OA.js} +0 -0
  186. /package/dist/{useMenuBarUtils-nJIPJGIQ.cjs → useMenuBarUtils-DAap0ukp.cjs} +0 -0
@@ -1,4 +1,4 @@
1
- import { t as e } from "./Colors-ClnDxnyA.js";
1
+ import { t as e } from "./Colors-CuABn2W4.js";
2
2
  import { useEffect as t, useState as n } from "react";
3
3
  import { jsx as r, jsxs as i } from "react/jsx-runtime";
4
4
  import { motion as a } from "framer-motion";
@@ -0,0 +1 @@
1
+ require(`./NotesApp-BmQIBtJ2.cjs`);const e=require(`./Colors-CNJbU7oq.cjs`);let t=require(`react`),n=require(`react/jsx-runtime`),r=require(`framer-motion`);var i={root:`_root_19u7b_1`,container:`_container_19u7b_10`,item:`_item_19u7b_23`,label:`_label_19u7b_29`};function a(t=4){return[...e.t].sort(()=>Math.random()-.5).slice(0,t)}var o=a(),s={type:`spring`,damping:20,stiffness:300};function c(e){return[...e].sort(()=>Math.random()-.5)}var l=({label:e=`Work In Progress`})=>{let[a,l]=(0,t.useState)(o);return(0,t.useEffect)(()=>{let e=setTimeout(()=>l(e=>c(e)),1e3);return()=>clearTimeout(e)},[a]),(0,n.jsxs)(`div`,{className:i.root,"data-testid":`app-empty-state`,children:[(0,n.jsx)(`ul`,{className:i.container,children:a.map(e=>(0,n.jsx)(r.motion.li,{layout:!0,transition:s,className:i.item,style:{backgroundColor:e}},e))}),(0,n.jsx)(`p`,{className:i.label,children:e})]})};Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
@@ -0,0 +1 @@
1
+ require(`./NotesApp-BmQIBtJ2.cjs`);const e=require(`./desktopStore-C1jR6Fdb.cjs`),t=require(`./useDynamicIcon-CK6SjEv5.cjs`);let n=require(`react/jsx-runtime`);var r=({fcIcon:r,fallback:i,iconUrl:a,size:o=20,color:s})=>{let c=r?.startsWith(`Fi`),l=r?.startsWith(`Vsc`),u=t.i(!c&&!l?r??``:``,{size:o}),d=t.o(c?r??``:``,{size:o,color:s}),f=t.c(l?r??``:``,{size:o});return a?(0,n.jsx)(`img`,{src:e.g(a),alt:``,width:o,height:o,style:{objectFit:`contain`}}):c&&d?d:l&&f?f:u||(i?(0,n.jsx)(`span`,{"aria-hidden":`true`,children:i}):null)};Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return r}});
@@ -0,0 +1,22 @@
1
+ import { g as e } from "./desktopStore-8cSZlj7s.js";
2
+ import { c as t, i as n, o as r } from "./useDynamicIcon-_wGeWu-b.js";
3
+ import { jsx as i } from "react/jsx-runtime";
4
+ //#region src/components/Shared/AppIcon.tsx
5
+ var a = ({ fcIcon: a, fallback: o, iconUrl: s, size: c = 20, color: l }) => {
6
+ let u = a?.startsWith("Fi"), d = a?.startsWith("Vsc"), f = n(!u && !d ? a ?? "" : "", { size: c }), p = r(u ? a ?? "" : "", {
7
+ size: c,
8
+ color: l
9
+ }), m = t(d ? a ?? "" : "", { size: c });
10
+ return s ? /* @__PURE__ */ i("img", {
11
+ src: e(s),
12
+ alt: "",
13
+ width: c,
14
+ height: c,
15
+ style: { objectFit: "contain" }
16
+ }) : u && p ? p : d && m ? m : f || (o ? /* @__PURE__ */ i("span", {
17
+ "aria-hidden": "true",
18
+ children: o
19
+ }) : null);
20
+ };
21
+ //#endregion
22
+ export { a as t };
@@ -0,0 +1 @@
1
+ require(`./NotesApp-BmQIBtJ2.cjs`);const e=require(`./useDynamicIcon-CK6SjEv5.cjs`);let t=require(`react`),n=require(`react/jsx-runtime`),r=require(`@mantine/core`);var i=({size:t=16})=>(0,n.jsx)(`span`,{style:{color:`orange`,fontWeight:`bold`,marginLeft:`8px`,display:`flex`,alignItems:`center`},title:`Unsaved changes`,children:e.i(`FcSynchronize`,{size:t})}),a={root:`_root_1aqog_1`,menuTrigger:`_menuTrigger_1aqog_19`,element:`_element_1aqog_37`,sliderLabel:`_sliderLabel_1aqog_44`,select:`_select_1aqog_50`,textInput:`_textInput_1aqog_51`,numberInput:`_numberInput_1aqog_52`,slider:`_slider_1aqog_44`},o={size:16,style:{display:`block`}},s=({name:t})=>e.i(t,o),c=({label:i,icon:c,items:l,rightSection:u})=>{let[d,f]=(0,t.useState)(!1);return(0,n.jsxs)(r.Menu,{opened:d,onClose:()=>f(!1),withinPortal:!0,keepMounted:!0,closeOnItemClick:!0,closeOnEscape:!0,closeOnClickOutside:!0,position:`bottom-start`,children:[(0,n.jsx)(r.Menu.Target,{children:(0,n.jsxs)(`button`,{className:a.menuTrigger,onClick:()=>f(e=>!e),children:[c&&(0,n.jsx)(()=>e.i(c??``,o),{}),(0,n.jsx)(`span`,{children:i}),u&&(0,n.jsx)(`span`,{style:{marginLeft:`auto`},children:u})]})}),(0,n.jsx)(r.Menu.Dropdown,{children:l.map((e,t)=>e.type===`divider`?(0,n.jsx)(r.Menu.Divider,{},t):e.type===`slider`?(0,n.jsx)(r.Menu.Item,{closeMenuOnClick:!1,children:(0,n.jsxs)(`div`,{style:{minWidth:120},children:[e.label&&(0,n.jsx)(`div`,{style:{marginBottom:4},children:e.label}),(0,n.jsx)(r.Slider,{min:e.min,max:e.max,value:e.value,onChange:e.onChange,size:`sm`})]})},t):(0,n.jsx)(r.Menu.Item,{disabled:e.disabled,onClick:e.onClick,leftSection:e.icon?(0,n.jsx)(s,{name:e.icon}):void 0,children:e.label},t))})]})},l=({elements:e})=>{let[o,s]=(0,t.useState)({}),l=(e,t)=>{s(n=>({...n,[e]:{...n[e]??{isHovered:!1,isDragging:!1},...t}}))};return(0,n.jsx)(`div`,{className:a.root,role:`menubar`,"aria-label":`Application menu`,children:e.map((e,t)=>{switch(e.type){case`menu`:return(0,n.jsx)(c,{label:e.label,icon:e.icon,items:e.items,rightSection:e.rightSection},t);case`combobox`:return(0,n.jsx)(`div`,{className:a.element,children:(0,n.jsx)(r.Select,{data:e.options,value:e.value,onChange:t=>t&&e.onChange(t),placeholder:e.label,size:`sm`,className:a.select,comboboxProps:{withinPortal:!0}})},t);case`switch`:return(0,n.jsx)(`div`,{className:a.element,children:(0,n.jsx)(r.Switch,{label:e.label,checked:e.checked,onChange:t=>e.onChange(t.currentTarget.checked),size:`sm`})},t);case`slider`:{let i=o[t]??{isHovered:!1,isDragging:!1},s=i.isHovered||i.isDragging;return(0,n.jsx)(r.Tooltip,{label:(e.labelFormat??(e=>String(e)))(e.value),position:`bottom`,withArrow:!0,opened:s,children:(0,n.jsxs)(`div`,{className:a.element,onMouseEnter:()=>l(t,{isHovered:!0}),onMouseLeave:()=>l(t,{isHovered:!1}),children:[e.label&&(0,n.jsx)(`span`,{className:a.sliderLabel,children:e.label}),(0,n.jsx)(r.Slider,{min:e.min,max:e.max,value:e.value,onChange:n=>{e.onChange(n),l(t,{isDragging:!0})},onChangeEnd:n=>{e.onChange(n),l(t,{isDragging:!1})},size:`sm`,className:a.slider,marks:e.marks})]})},t)}case`text-input`:return(0,n.jsx)(`div`,{className:a.element,children:(0,n.jsx)(r.TextInput,{placeholder:e.placeholder,value:e.value,onChange:t=>e.onChange(t.currentTarget.value),size:`sm`,className:a.textInput})},t);case`number-input`:return(0,n.jsx)(`div`,{className:a.element,children:(0,n.jsx)(r.NumberInput,{label:e.label,value:e.value,onChange:t=>e.onChange(typeof t==`number`?t:0),min:e.min,max:e.max,step:e.step??1,placeholder:e.placeholder,size:`sm`,className:a.numberInput})},t);case`select`:return(0,n.jsx)(`div`,{className:a.element,children:(0,n.jsx)(r.Select,{label:e.label,data:e.options,value:e.value,onChange:t=>t&&e.onChange(t),size:`sm`,className:a.select,comboboxProps:{withinPortal:!0}})},t);case`dirty-indicator`:return(0,n.jsx)(`span`,{style:{marginLeft:`auto`},children:(0,n.jsx)(i,{})},t)}})})};Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
@@ -0,0 +1,197 @@
1
+ import { i as e } from "./useDynamicIcon-_wGeWu-b.js";
2
+ import { useState as t } from "react";
3
+ import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
+ import { Menu as i, NumberInput as a, Select as o, Slider as s, Switch as c, TextInput as l, Tooltip as u } from "@mantine/core";
5
+ //#region src/components/Shared/DirtyIndicator/DirtyIndicator.tsx
6
+ var d = ({ size: t = 16 }) => /* @__PURE__ */ n("span", {
7
+ style: {
8
+ color: "orange",
9
+ fontWeight: "bold",
10
+ marginLeft: "8px",
11
+ display: "flex",
12
+ alignItems: "center"
13
+ },
14
+ title: "Unsaved changes",
15
+ children: e("FcSynchronize", { size: t })
16
+ }), f = {
17
+ root: "_root_1aqog_1",
18
+ menuTrigger: "_menuTrigger_1aqog_19",
19
+ element: "_element_1aqog_37",
20
+ sliderLabel: "_sliderLabel_1aqog_44",
21
+ select: "_select_1aqog_50",
22
+ textInput: "_textInput_1aqog_51",
23
+ numberInput: "_numberInput_1aqog_52",
24
+ slider: "_slider_1aqog_44"
25
+ }, p = {
26
+ size: 16,
27
+ style: { display: "block" }
28
+ }, m = ({ name: t }) => e(t, p), h = ({ label: a, icon: o, items: c, rightSection: l }) => {
29
+ let [u, d] = t(!1);
30
+ return /* @__PURE__ */ r(i, {
31
+ opened: u,
32
+ onClose: () => d(!1),
33
+ withinPortal: !0,
34
+ keepMounted: !0,
35
+ closeOnItemClick: !0,
36
+ closeOnEscape: !0,
37
+ closeOnClickOutside: !0,
38
+ position: "bottom-start",
39
+ children: [/* @__PURE__ */ n(i.Target, { children: /* @__PURE__ */ r("button", {
40
+ className: f.menuTrigger,
41
+ onClick: () => d((e) => !e),
42
+ children: [
43
+ o && /* @__PURE__ */ n(() => e(o ?? "", p), {}),
44
+ /* @__PURE__ */ n("span", { children: a }),
45
+ l && /* @__PURE__ */ n("span", {
46
+ style: { marginLeft: "auto" },
47
+ children: l
48
+ })
49
+ ]
50
+ }) }), /* @__PURE__ */ n(i.Dropdown, { children: c.map((e, t) => e.type === "divider" ? /* @__PURE__ */ n(i.Divider, {}, t) : e.type === "slider" ? /* @__PURE__ */ n(i.Item, {
51
+ closeMenuOnClick: !1,
52
+ children: /* @__PURE__ */ r("div", {
53
+ style: { minWidth: 120 },
54
+ children: [e.label && /* @__PURE__ */ n("div", {
55
+ style: { marginBottom: 4 },
56
+ children: e.label
57
+ }), /* @__PURE__ */ n(s, {
58
+ min: e.min,
59
+ max: e.max,
60
+ value: e.value,
61
+ onChange: e.onChange,
62
+ size: "sm"
63
+ })]
64
+ })
65
+ }, t) : /* @__PURE__ */ n(i.Item, {
66
+ disabled: e.disabled,
67
+ onClick: e.onClick,
68
+ leftSection: e.icon ? /* @__PURE__ */ n(m, { name: e.icon }) : void 0,
69
+ children: e.label
70
+ }, t)) })]
71
+ });
72
+ }, g = ({ elements: e }) => {
73
+ let [i, p] = t({}), m = (e, t) => {
74
+ p((n) => ({
75
+ ...n,
76
+ [e]: {
77
+ ...n[e] ?? {
78
+ isHovered: !1,
79
+ isDragging: !1
80
+ },
81
+ ...t
82
+ }
83
+ }));
84
+ };
85
+ return /* @__PURE__ */ n("div", {
86
+ className: f.root,
87
+ role: "menubar",
88
+ "aria-label": "Application menu",
89
+ children: e.map((e, t) => {
90
+ switch (e.type) {
91
+ case "menu": return /* @__PURE__ */ n(h, {
92
+ label: e.label,
93
+ icon: e.icon,
94
+ items: e.items,
95
+ rightSection: e.rightSection
96
+ }, t);
97
+ case "combobox": return /* @__PURE__ */ n("div", {
98
+ className: f.element,
99
+ children: /* @__PURE__ */ n(o, {
100
+ data: e.options,
101
+ value: e.value,
102
+ onChange: (t) => t && e.onChange(t),
103
+ placeholder: e.label,
104
+ size: "sm",
105
+ className: f.select,
106
+ comboboxProps: { withinPortal: !0 }
107
+ })
108
+ }, t);
109
+ case "switch": return /* @__PURE__ */ n("div", {
110
+ className: f.element,
111
+ children: /* @__PURE__ */ n(c, {
112
+ label: e.label,
113
+ checked: e.checked,
114
+ onChange: (t) => e.onChange(t.currentTarget.checked),
115
+ size: "sm"
116
+ })
117
+ }, t);
118
+ case "slider": {
119
+ let a = i[t] ?? {
120
+ isHovered: !1,
121
+ isDragging: !1
122
+ }, o = a.isHovered || a.isDragging;
123
+ return /* @__PURE__ */ n(u, {
124
+ label: (e.labelFormat ?? ((e) => String(e)))(e.value),
125
+ position: "bottom",
126
+ withArrow: !0,
127
+ opened: o,
128
+ children: /* @__PURE__ */ r("div", {
129
+ className: f.element,
130
+ onMouseEnter: () => m(t, { isHovered: !0 }),
131
+ onMouseLeave: () => m(t, { isHovered: !1 }),
132
+ children: [e.label && /* @__PURE__ */ n("span", {
133
+ className: f.sliderLabel,
134
+ children: e.label
135
+ }), /* @__PURE__ */ n(s, {
136
+ min: e.min,
137
+ max: e.max,
138
+ value: e.value,
139
+ onChange: (n) => {
140
+ e.onChange(n), m(t, { isDragging: !0 });
141
+ },
142
+ onChangeEnd: (n) => {
143
+ e.onChange(n), m(t, { isDragging: !1 });
144
+ },
145
+ size: "sm",
146
+ className: f.slider,
147
+ marks: e.marks
148
+ })]
149
+ })
150
+ }, t);
151
+ }
152
+ case "text-input": return /* @__PURE__ */ n("div", {
153
+ className: f.element,
154
+ children: /* @__PURE__ */ n(l, {
155
+ placeholder: e.placeholder,
156
+ value: e.value,
157
+ onChange: (t) => e.onChange(t.currentTarget.value),
158
+ size: "sm",
159
+ className: f.textInput
160
+ })
161
+ }, t);
162
+ case "number-input": return /* @__PURE__ */ n("div", {
163
+ className: f.element,
164
+ children: /* @__PURE__ */ n(a, {
165
+ label: e.label,
166
+ value: e.value,
167
+ onChange: (t) => e.onChange(typeof t == "number" ? t : 0),
168
+ min: e.min,
169
+ max: e.max,
170
+ step: e.step ?? 1,
171
+ placeholder: e.placeholder,
172
+ size: "sm",
173
+ className: f.numberInput
174
+ })
175
+ }, t);
176
+ case "select": return /* @__PURE__ */ n("div", {
177
+ className: f.element,
178
+ children: /* @__PURE__ */ n(o, {
179
+ label: e.label,
180
+ data: e.options,
181
+ value: e.value,
182
+ onChange: (t) => t && e.onChange(t),
183
+ size: "sm",
184
+ className: f.select,
185
+ comboboxProps: { withinPortal: !0 }
186
+ })
187
+ }, t);
188
+ case "dirty-indicator": return /* @__PURE__ */ n("span", {
189
+ style: { marginLeft: "auto" },
190
+ children: /* @__PURE__ */ n(d, {})
191
+ }, t);
192
+ }
193
+ })
194
+ });
195
+ };
196
+ //#endregion
197
+ export { d as n, g as t };
@@ -0,0 +1,10 @@
1
+ import { t as e } from "./rolldown-runtime-CAFD8bLK.js";
2
+ import "@mantine/dates/styles.css";
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ import { Calendar as n } from "@mantine/dates";
5
+ var r = { root: "_root_43uio_1" }, i = /* @__PURE__ */ e({ default: () => a }), a = () => /* @__PURE__ */ t("div", {
6
+ className: r.root,
7
+ children: /* @__PURE__ */ t(n, {})
8
+ });
9
+ //#endregion
10
+ export { i as n, a as t };
@@ -0,0 +1 @@
1
+ const e=require(`./NotesApp-BmQIBtJ2.cjs`);require(`@mantine/dates/styles.css`);let t=require(`react/jsx-runtime`),n=require(`@mantine/dates`);var r={root:`_root_43uio_1`},i=e.i({default:()=>a}),a=()=>(0,t.jsx)(`div`,{className:r.root,children:(0,t.jsx)(n.Calendar,{})});Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
@@ -0,0 +1 @@
1
+ require(`./NotesApp-BmQIBtJ2.cjs`);const e=require(`./Colors-CNJbU7oq.cjs`);let t=require(`react/jsx-runtime`),n=require(`@mantine/core`);var r={root:`_root_18r9b_1`,colorRow:`_colorRow_18r9b_7`,colorSwatch:`_colorSwatch_18r9b_13`,colorInput:`_colorInput_18r9b_38`},i=({value:i,onChange:a,error:o,disabled:s=!1})=>(0,t.jsxs)(`div`,{className:r.root,children:[(0,t.jsx)(`div`,{className:r.colorRow,children:e.t.map(e=>(0,t.jsx)(n.UnstyledButton,{className:r.colorSwatch,"data-selected":i===e||void 0,"data-disabled":s||void 0,style:{background:e},onClick:()=>!s&&a(e),"aria-label":`Color ${e}`,"aria-pressed":i===e,disabled:s},e))}),(0,t.jsx)(n.ColorInput,{value:i,onChange:a,placeholder:`Custom color`,size:`xs`,className:r.colorInput,"aria-label":`Custom color picker`,error:o,disabled:s})]});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
@@ -0,0 +1,35 @@
1
+ import { t as e } from "./Colors-CuABn2W4.js";
2
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
3
+ import { ColorInput as r, UnstyledButton as i } from "@mantine/core";
4
+ var a = {
5
+ root: "_root_18r9b_1",
6
+ colorRow: "_colorRow_18r9b_7",
7
+ colorSwatch: "_colorSwatch_18r9b_13",
8
+ colorInput: "_colorInput_18r9b_38"
9
+ }, o = ({ value: o, onChange: s, error: c, disabled: l = !1 }) => /* @__PURE__ */ n("div", {
10
+ className: a.root,
11
+ children: [/* @__PURE__ */ t("div", {
12
+ className: a.colorRow,
13
+ children: e.map((e) => /* @__PURE__ */ t(i, {
14
+ className: a.colorSwatch,
15
+ "data-selected": o === e || void 0,
16
+ "data-disabled": l || void 0,
17
+ style: { background: e },
18
+ onClick: () => !l && s(e),
19
+ "aria-label": `Color ${e}`,
20
+ "aria-pressed": o === e,
21
+ disabled: l
22
+ }, e))
23
+ }), /* @__PURE__ */ t(r, {
24
+ value: o,
25
+ onChange: s,
26
+ placeholder: "Custom color",
27
+ size: "xs",
28
+ className: a.colorInput,
29
+ "aria-label": "Custom color picker",
30
+ error: c,
31
+ disabled: l
32
+ })]
33
+ });
34
+ //#endregion
35
+ export { o as t };
@@ -0,0 +1 @@
1
+ const e=require(`./NotesApp-BmQIBtJ2.cjs`),t=require(`./desktopStore-C1jR6Fdb.cjs`),n=require(`./useDynamicIcon-CK6SjEv5.cjs`),r=require(`./VscIcon-BYb_Soyy.cjs`),i=require(`./ColorPicker-CQRRwY-y.cjs`);let a=require(`react`),o=require(`react/jsx-runtime`),s=require(`@mantine/core`);var c={root:`_root_1jzye_1`,iconGrid:`_iconGrid_1jzye_7`,iconButton:`_iconButton_1jzye_11`},l=[`VscFolder`,`VscFolderOpened`,`VscHome`,`VscServer`,`VscDatabase`,`VscBook`,`VscMail`,`VscGithub`,`VscCloud`,`VscLock`,`VscSettingsGear`,`VscStar`,`VscHeart`,`VscMusic`,`VscCamera`,`VscArchive`],u=({selectedIcon:e,selectedColor:t,onIconChange:n,onColorChange:a,colorError:u})=>(0,o.jsxs)(`div`,{className:c.root,children:[(0,o.jsx)(s.SimpleGrid,{cols:8,spacing:4,className:c.iconGrid,children:l.map(i=>{let a=e===i;return(0,o.jsx)(s.Tooltip,{label:i,openDelay:500,children:(0,o.jsx)(s.UnstyledButton,{className:c.iconButton,"data-selected":a||void 0,onClick:()=>n(i),"aria-label":i,"aria-pressed":a,children:(0,o.jsx)(r.t,{name:i,size:20,color:t})})},i)})}),(0,o.jsx)(i.t,{value:t,onChange:a,error:u})]}),d={content:`_content_ej839_1`,header:`_header_ej839_8`,nameRow:`_nameRow_ej839_13`,iconPreview:`_iconPreview_ej839_19`,nameInput:`_nameInput_ej839_30`,collapseToggle:`_collapseToggle_ej839_34`,pickerWrapper:`_pickerWrapper_ej839_46`},f=e.i({default:()=>w}),p=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/,m=e=>p.test(e),h={size:14,style:{display:`block`}},g=({open:e})=>n.i(e?`FcCollapse`:`FcExpand`,h),_=()=>n.i(`FcCancel`,h),v=()=>n.i(`FcCheckmark`,h),y=`VscFolder`,b=`#228be6`,x=`New File`,S=`New Folder`,C=36,w=({window:e})=>{let r=e,i=r?.contentData?.mode??`folder`,c=r?.contentData?.parentId??null,l=r?.contentData?.currentPath??`/home`,[f,p]=(0,a.useState)(i===`folder`?S:x),[h,w]=(0,a.useState)(y),[T,E]=(0,a.useState)(b),[D,O]=(0,a.useState)(r?.contentData?.iconPickerOpen??!1),k=(0,a.useRef)(null),A=t.o(e=>e.closeWindow),j=t.o(e=>e.resizeWindow),M=t.o(e=>e.createFile),N=t.o(e=>e.createFolder),P=t.o(e=>e.addNotification),F=t.o(e=>e.fsNodes),I=t.o(e=>e.windows.find(e=>e.id===r?.id)?.width??400),L=F.some(e=>e.parentId===c&&e.type===i&&e.name===f.trim()),R=i===`folder`&&D&&!m(T),z=f.trim().length>0&&!L&&!R;(0,a.useEffect)(()=>{if(!r?.id||!k.current)return;let e=k.current,t=new ResizeObserver(()=>{j(r.id,I,e.scrollHeight+C)});return t.observe(e),()=>t.disconnect()},[r,I,j]);let B=()=>{if(!z)return;let e=f.trim(),t=c??null,n=h,a=T;A(r.id),i===`folder`?N(e,t,n,a).catch(e=>{console.error(`Failed to create folder:`,e),P({id:`create-folder-error-${Date.now()}`,title:`Error`,message:`Failed to create folder: ${e instanceof Error?e.message:`Unknown error`}`,fcIcon:`FcHighPriority`})}):M(e,``,t).catch(e=>{console.error(`Failed to create file:`,e),P({id:`create-file-error-${Date.now()}`,title:`Error`,message:`Failed to create file: ${e instanceof Error?e.message:`Unknown error`}`,fcIcon:`FcHighPriority`})})},V=()=>{A(r.id)},H=n.c(h,{size:40,color:T});return(0,o.jsxs)(`div`,{ref:k,className:d.root,children:[(0,o.jsx)(`div`,{className:d.header,children:(0,o.jsxs)(s.Text,{fw:600,size:`sm`,children:[i===`folder`?`Create new folder`:`Create new file`,` in `,l,`:`]})}),(0,o.jsxs)(`div`,{className:d.content,children:[(0,o.jsxs)(`div`,{className:d.nameRow,children:[i===`folder`&&H&&(0,o.jsx)(`div`,{className:d.iconPreview,"aria-hidden":`true`,children:H}),(0,o.jsx)(s.TextInput,{value:f,onChange:e=>p(e.currentTarget.value),onKeyDown:e=>e.key===`Enter`&&B(),error:L?`There is already a ${i} with that name`:void 0,rightSection:f?(0,o.jsx)(s.ActionIcon,{variant:`transparent`,size:`sm`,onClick:()=>p(``),"aria-label":`Clear name`,children:(0,o.jsx)(_,{})}):null,autoFocus:!0,className:d.nameInput,"aria-label":`Item name`})]}),i===`folder`&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(s.UnstyledButton,{className:d.collapseToggle,onClick:()=>O(e=>!e),"aria-expanded":D,children:[(0,o.jsx)(g,{open:D}),(0,o.jsx)(s.Text,{size:`sm`,ml:6,children:`Choose custom icon or color`})]}),(0,o.jsx)(s.Collapse,{expanded:D,children:(0,o.jsx)(`div`,{className:d.pickerWrapper,children:(0,o.jsx)(u,{selectedIcon:h,selectedColor:T,onIconChange:w,onColorChange:E,colorError:R?`Enter a valid hex color (e.g. #ff0000)`:void 0})})}),(0,o.jsx)(s.Text,{size:`xs`,c:`dimmed`,mt:4,children:`You can change the icon later in folder properties.`})]}),(0,o.jsxs)(s.Group,{justify:`flex-end`,mt:`md`,children:[(0,o.jsx)(s.Button,{variant:`default`,size:`sm`,onClick:V,leftSection:(0,o.jsx)(_,{}),children:`Cancel`}),(0,o.jsx)(s.Button,{size:`sm`,onClick:B,leftSection:(0,o.jsx)(v,{}),disabled:!z,children:`OK`})]})]})]})};Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return w}});
@@ -0,0 +1,202 @@
1
+ import { t as e } from "./rolldown-runtime-CAFD8bLK.js";
2
+ import { o as t } from "./desktopStore-8cSZlj7s.js";
3
+ import { c as n, i as r } from "./useDynamicIcon-_wGeWu-b.js";
4
+ import { t as i } from "./VscIcon-AEENjKOE.js";
5
+ import { t as a } from "./ColorPicker-WCeD3Wjf.js";
6
+ import { useEffect as o, useRef as s, useState as c } from "react";
7
+ import { Fragment as l, jsx as u, jsxs as d } from "react/jsx-runtime";
8
+ import { ActionIcon as f, Button as p, Collapse as m, Group as h, SimpleGrid as g, Text as _, TextInput as v, Tooltip as y, UnstyledButton as b } from "@mantine/core";
9
+ var x = {
10
+ root: "_root_1jzye_1",
11
+ iconGrid: "_iconGrid_1jzye_7",
12
+ iconButton: "_iconButton_1jzye_11"
13
+ }, S = [
14
+ "VscFolder",
15
+ "VscFolderOpened",
16
+ "VscHome",
17
+ "VscServer",
18
+ "VscDatabase",
19
+ "VscBook",
20
+ "VscMail",
21
+ "VscGithub",
22
+ "VscCloud",
23
+ "VscLock",
24
+ "VscSettingsGear",
25
+ "VscStar",
26
+ "VscHeart",
27
+ "VscMusic",
28
+ "VscCamera",
29
+ "VscArchive"
30
+ ], C = ({ selectedIcon: e, selectedColor: t, onIconChange: n, onColorChange: r, colorError: o }) => /* @__PURE__ */ d("div", {
31
+ className: x.root,
32
+ children: [/* @__PURE__ */ u(g, {
33
+ cols: 8,
34
+ spacing: 4,
35
+ className: x.iconGrid,
36
+ children: S.map((r) => {
37
+ let a = e === r;
38
+ return /* @__PURE__ */ u(y, {
39
+ label: r,
40
+ openDelay: 500,
41
+ children: /* @__PURE__ */ u(b, {
42
+ className: x.iconButton,
43
+ "data-selected": a || void 0,
44
+ onClick: () => n(r),
45
+ "aria-label": r,
46
+ "aria-pressed": a,
47
+ children: /* @__PURE__ */ u(i, {
48
+ name: r,
49
+ size: 20,
50
+ color: t
51
+ })
52
+ })
53
+ }, r);
54
+ })
55
+ }), /* @__PURE__ */ u(a, {
56
+ value: t,
57
+ onChange: r,
58
+ error: o
59
+ })]
60
+ }), w = {
61
+ content: "_content_ej839_1",
62
+ header: "_header_ej839_8",
63
+ nameRow: "_nameRow_ej839_13",
64
+ iconPreview: "_iconPreview_ej839_19",
65
+ nameInput: "_nameInput_ej839_30",
66
+ collapseToggle: "_collapseToggle_ej839_34",
67
+ pickerWrapper: "_pickerWrapper_ej839_46"
68
+ }, T = /* @__PURE__ */ e({ default: () => L }), E = /^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/, D = (e) => E.test(e), O = {
69
+ size: 14,
70
+ style: { display: "block" }
71
+ }, k = ({ open: e }) => r(e ? "FcCollapse" : "FcExpand", O), A = () => r("FcCancel", O), j = () => r("FcCheckmark", O), M = "VscFolder", N = "#228be6", P = "New File", F = "New Folder", I = 36, L = ({ window: e }) => {
72
+ let r = e, i = r?.contentData?.mode ?? "folder", a = r?.contentData?.parentId ?? null, g = r?.contentData?.currentPath ?? "/home", [y, x] = c(i === "folder" ? F : P), [S, T] = c(M), [E, O] = c(N), [L, R] = c(r?.contentData?.iconPickerOpen ?? !1), z = s(null), B = t((e) => e.closeWindow), V = t((e) => e.resizeWindow), H = t((e) => e.createFile), U = t((e) => e.createFolder), W = t((e) => e.addNotification), G = t((e) => e.fsNodes), K = t((e) => e.windows.find((e) => e.id === r?.id)?.width ?? 400), q = G.some((e) => e.parentId === a && e.type === i && e.name === y.trim()), J = i === "folder" && L && !D(E), Y = y.trim().length > 0 && !q && !J;
73
+ o(() => {
74
+ if (!r?.id || !z.current) return;
75
+ let e = z.current, t = new ResizeObserver(() => {
76
+ V(r.id, K, e.scrollHeight + I);
77
+ });
78
+ return t.observe(e), () => t.disconnect();
79
+ }, [
80
+ r,
81
+ K,
82
+ V
83
+ ]);
84
+ let X = () => {
85
+ if (!Y) return;
86
+ let e = y.trim(), t = a ?? null, n = S, o = E;
87
+ B(r.id), i === "folder" ? U(e, t, n, o).catch((e) => {
88
+ console.error("Failed to create folder:", e), W({
89
+ id: `create-folder-error-${Date.now()}`,
90
+ title: "Error",
91
+ message: `Failed to create folder: ${e instanceof Error ? e.message : "Unknown error"}`,
92
+ fcIcon: "FcHighPriority"
93
+ });
94
+ }) : H(e, "", t).catch((e) => {
95
+ console.error("Failed to create file:", e), W({
96
+ id: `create-file-error-${Date.now()}`,
97
+ title: "Error",
98
+ message: `Failed to create file: ${e instanceof Error ? e.message : "Unknown error"}`,
99
+ fcIcon: "FcHighPriority"
100
+ });
101
+ });
102
+ }, Z = () => {
103
+ B(r.id);
104
+ }, Q = n(S, {
105
+ size: 40,
106
+ color: E
107
+ });
108
+ return /* @__PURE__ */ d("div", {
109
+ ref: z,
110
+ className: w.root,
111
+ children: [/* @__PURE__ */ u("div", {
112
+ className: w.header,
113
+ children: /* @__PURE__ */ d(_, {
114
+ fw: 600,
115
+ size: "sm",
116
+ children: [
117
+ i === "folder" ? "Create new folder" : "Create new file",
118
+ " in ",
119
+ g,
120
+ ":"
121
+ ]
122
+ })
123
+ }), /* @__PURE__ */ d("div", {
124
+ className: w.content,
125
+ children: [
126
+ /* @__PURE__ */ d("div", {
127
+ className: w.nameRow,
128
+ children: [i === "folder" && Q && /* @__PURE__ */ u("div", {
129
+ className: w.iconPreview,
130
+ "aria-hidden": "true",
131
+ children: Q
132
+ }), /* @__PURE__ */ u(v, {
133
+ value: y,
134
+ onChange: (e) => x(e.currentTarget.value),
135
+ onKeyDown: (e) => e.key === "Enter" && X(),
136
+ error: q ? `There is already a ${i} with that name` : void 0,
137
+ rightSection: y ? /* @__PURE__ */ u(f, {
138
+ variant: "transparent",
139
+ size: "sm",
140
+ onClick: () => x(""),
141
+ "aria-label": "Clear name",
142
+ children: /* @__PURE__ */ u(A, {})
143
+ }) : null,
144
+ autoFocus: !0,
145
+ className: w.nameInput,
146
+ "aria-label": "Item name"
147
+ })]
148
+ }),
149
+ i === "folder" && /* @__PURE__ */ d(l, { children: [
150
+ /* @__PURE__ */ d(b, {
151
+ className: w.collapseToggle,
152
+ onClick: () => R((e) => !e),
153
+ "aria-expanded": L,
154
+ children: [/* @__PURE__ */ u(k, { open: L }), /* @__PURE__ */ u(_, {
155
+ size: "sm",
156
+ ml: 6,
157
+ children: "Choose custom icon or color"
158
+ })]
159
+ }),
160
+ /* @__PURE__ */ u(m, {
161
+ expanded: L,
162
+ children: /* @__PURE__ */ u("div", {
163
+ className: w.pickerWrapper,
164
+ children: /* @__PURE__ */ u(C, {
165
+ selectedIcon: S,
166
+ selectedColor: E,
167
+ onIconChange: T,
168
+ onColorChange: O,
169
+ colorError: J ? "Enter a valid hex color (e.g. #ff0000)" : void 0
170
+ })
171
+ })
172
+ }),
173
+ /* @__PURE__ */ u(_, {
174
+ size: "xs",
175
+ c: "dimmed",
176
+ mt: 4,
177
+ children: "You can change the icon later in folder properties."
178
+ })
179
+ ] }),
180
+ /* @__PURE__ */ d(h, {
181
+ justify: "flex-end",
182
+ mt: "md",
183
+ children: [/* @__PURE__ */ u(p, {
184
+ variant: "default",
185
+ size: "sm",
186
+ onClick: Z,
187
+ leftSection: /* @__PURE__ */ u(A, {}),
188
+ children: "Cancel"
189
+ }), /* @__PURE__ */ u(p, {
190
+ size: "sm",
191
+ onClick: X,
192
+ leftSection: /* @__PURE__ */ u(j, {}),
193
+ disabled: !Y,
194
+ children: "OK"
195
+ })]
196
+ })
197
+ ]
198
+ })]
199
+ });
200
+ };
201
+ //#endregion
202
+ export { S as i, T as n, C as r, L as t };
@@ -0,0 +1 @@
1
+ const e=require(`./NotesApp-BmQIBtJ2.cjs`),t=require(`./desktopStore-C1jR6Fdb.cjs`),n=require(`./useAdaptiveDimensions-3Lz4X0Tc.cjs`);let r=require(`react`),i=require(`react/jsx-runtime`),a=require(`@mantine/core`);var o=()=>{let e=window.innerWidth,n=window.matchMedia(`(pointer: coarse)`).matches;return e<t.p.MOBILE||n},s=()=>{let e=window.innerWidth;return e>=t.p.MOBILE&&e<t.p.TABLET},c=()=>window.innerWidth>=t.p.TABLET,l=()=>screen.orientation?screen.orientation.type.includes(`portrait`):window.innerHeight>window.innerWidth;function u(){let[e,t]=(0,r.useState)(()=>({isMobile:o(),isTablet:s(),isDesktop:c(),isPortrait:l(),shouldShowWarning:o()&&l(),screenWidth:window.innerWidth,screenHeight:window.innerHeight})),n=(0,r.useCallback)(()=>{let e=o(),n=l();t({isMobile:e,isTablet:s(),isDesktop:c(),isPortrait:n,shouldShowWarning:e&&n,screenWidth:window.innerWidth,screenHeight:window.innerHeight})},[]);return(0,r.useEffect)(()=>(window.addEventListener(`resize`,n),screen.orientation?.addEventListener?.(`change`,n),()=>{window.removeEventListener(`resize`,n),screen.orientation?.removeEventListener?.(`change`,n)}),[n]),e}var d={container:`_container_1o4i3_1`},f=e.i({default:()=>p}),p=({window:e,notifyReady:o})=>{let s=u(),c=n.t(),l=t.o(e=>e.viewportWidth),f=t.o(e=>e.viewportHeight),p=t.o(e=>e.setViewportSize);return(0,r.useEffect)(()=>{o?.({})},[o]),(0,r.useEffect)(()=>{let e=()=>{p(window.innerWidth,window.innerHeight)};return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[p]),(0,i.jsxs)(`div`,{className:d.container,"data-windowid":e?.id,children:[(0,i.jsx)(a.Paper,{p:`sm`,shadow:`sm`,withBorder:!0,children:(0,i.jsxs)(a.Stack,{gap:`xs`,children:[(0,i.jsx)(a.Text,{fw:`bold`,size:`sm`,children:`Runtime Environment`}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`isDocker:`}),` `,String(t.G())]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`isDev:`}),` `,String(t.W())]})]})}),(0,i.jsx)(a.Paper,{p:`sm`,shadow:`sm`,withBorder:!0,mt:`sm`,children:(0,i.jsxs)(a.Stack,{gap:`xs`,children:[(0,i.jsx)(a.Text,{fw:`bold`,size:`sm`,children:`Device Detection`}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`isMobile:`}),` `,String(s.isMobile)]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`isTablet:`}),` `,String(s.isTablet)]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`isDesktop:`}),` `,String(s.isDesktop)]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`isPortrait:`}),` `,String(s.isPortrait)]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`shouldShowWarning:`}),` `,String(s.shouldShowWarning)]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`viewportWidth:`}),` `,l,`px`]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`viewportHeight:`}),` `,f,`px`]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`defaultWidth:`}),` `,c.defaultWidth,`px`]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`defaultHeight:`}),` `,c.defaultHeight,`px`]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`minWidth:`}),` `,c.minWidth,`px`]}),(0,i.jsxs)(a.Text,{size:`xs`,children:[(0,i.jsx)(a.Code,{children:`minHeight:`}),` `,c.minHeight,`px`]})]})})]})};Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return p}});