@fde-desktop/fde-core 0.4.7 → 0.4.9
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.
- package/dist/AccordionChevron-DxpOyInK.js +26 -0
- package/dist/AccordionChevron-kn5kSrEc.cjs +1 -0
- package/dist/ActionIcon-Drh4p6Fv.js +145 -0
- package/dist/ActionIcon-alk2zZD6.cjs +1 -0
- package/dist/AppEmptyState-BWCUbf-B.cjs +1 -0
- package/dist/AppEmptyState-Bxpit0JV.js +49 -0
- package/dist/AppIcon-BU7a3ZNH.cjs +1 -0
- package/dist/AppIcon-XumS3bIG.js +80 -0
- package/dist/AppMenuBar-B9U0n1Vv.cjs +1 -0
- package/dist/AppMenuBar-CnIEVjr8.js +2049 -0
- package/dist/Box-DSKR_qaa.js +1579 -0
- package/dist/Box-zW6Twge8.cjs +1 -0
- package/dist/Button-DMlnrqyx.cjs +1 -0
- package/dist/Button-wTOTQKxF.js +178 -0
- package/dist/CalendarApp-B_e1B1Yn.cjs +1 -0
- package/dist/CalendarApp-C-l9D6nd.cjs +1 -0
- package/dist/CalendarApp-D0ftTCTG.js +1399 -0
- package/dist/Center-CmxXB9ql.js +25 -0
- package/dist/Center-DKUE2pER.cjs +1 -0
- package/dist/CheckIcon-CZhtJD1O.cjs +1 -0
- package/dist/CheckIcon-N5qBqXQJ.js +25 -0
- package/dist/CodeServerApp-BOoGwZ7r.cjs +1 -0
- package/dist/CodeServerApp-Be3I5EGg.cjs +1 -0
- package/dist/CodeServerApp-DW18EZxa.js +150 -0
- package/dist/ColorPicker-BCNqi02x.js +997 -0
- package/dist/ColorPicker-BrDE7tMO.cjs +1 -0
- package/dist/Colors-ClnDxnyA.js +15 -0
- package/dist/Colors-zP2AFgU3.cjs +1 -0
- package/dist/CreateItemApp-B12M1E_1.cjs +1 -0
- package/dist/CreateItemApp-TAAprby3.js +400 -0
- package/dist/CreateItemApp-ePB6ujNl.cjs +1 -0
- package/dist/DeviceInfoApp-BMF18BGo.cjs +1 -0
- package/dist/DeviceInfoApp-DRy0H3aT.cjs +1 -0
- package/dist/DeviceInfoApp-lgpwkeRR.js +223 -0
- package/dist/DownloadProgress-EoyCaD5O.js +174 -0
- package/dist/DownloadProgress-VNdj22U8.cjs +1 -0
- package/dist/FileIcon-7JaSR3Gn.js +89 -0
- package/dist/FileIcon-CIXopWLv.cjs +1 -0
- package/dist/FilePickerApp-DaMgEqKh.js +409 -0
- package/dist/FilePickerApp-DjmuSFqa.cjs +1 -0
- package/dist/FilesApp-Bp7wfrBZ.cjs +1 -0
- package/dist/FilesApp-BpJJRKhi.cjs +1 -0
- package/dist/FilesApp-Cj94QG5o.js +225 -0
- package/dist/Group-CtBJSfCo.js +48 -0
- package/dist/Group-Dsrf6lEK.cjs +1 -0
- package/dist/ImageViewerApp-BaLP3gkO.js +69 -0
- package/dist/ImageViewerApp-DlHGeB3S.cjs +1 -0
- package/dist/ImageViewerApp-DoXd_Swu.cjs +1 -0
- package/dist/ImageViewerMenuBar-CabGSi9r.js +87 -0
- package/dist/ImageViewerMenuBar-SAI7UNz7.cjs +1 -0
- package/dist/ImageViewerMenuBar-_Jr29gii.cjs +1 -0
- package/dist/MenuEditApp-BJjlPTOa.cjs +1 -0
- package/dist/MenuEditApp-BTRppYnD.js +497 -0
- package/dist/MenuEditApp-JPsGT-S3.cjs +1 -0
- package/dist/MenuEditMenuBar-BydGkqMw.cjs +1 -0
- package/dist/MenuEditMenuBar-DptlwVPQ.cjs +1 -0
- package/dist/MenuEditMenuBar-x1IQrHP2.js +60 -0
- package/dist/NotesApp-BOcRGO7w.cjs +1 -0
- package/dist/NotesApp-CQe7UfBC.js +364 -0
- package/dist/NotesApp-OL07JXRE.cjs +1 -0
- package/dist/NotesMenuBar-BSI_2Y7p.cjs +1 -0
- package/dist/NotesMenuBar-Df6aW85J.cjs +1 -0
- package/dist/NotesMenuBar-VhpIe68v.js +62 -0
- package/dist/Paper-BX_9odR6.js +30 -0
- package/dist/Paper-D8-BaBx2.cjs +1 -0
- package/dist/PdfApp-CNEbty5v.cjs +1 -0
- package/dist/PdfApp-CVv3ZCaM.cjs +1 -0
- package/dist/PdfApp-DL_R9-Nc.js +39 -0
- package/dist/PdfMenuBar--E6kDyrT.cjs +1 -0
- package/dist/PdfMenuBar-DZCLSOpR.js +39 -0
- package/dist/PdfMenuBar-Dj5cJUkg.cjs +1 -0
- package/dist/SettingsApp-BlmHuAjT.js +1831 -0
- package/dist/SettingsApp-CNvIgf5B.cjs +1 -0
- package/dist/SettingsApp-DWxanNE4.cjs +1 -0
- package/dist/SettingsMenuBar-CBoOBCfx.cjs +1 -0
- package/dist/SettingsMenuBar-DQooFkZN.cjs +1 -0
- package/dist/SettingsMenuBar-YWiJHaxq.js +42 -0
- package/dist/Slider-BUiHxjKO.cjs +1 -0
- package/dist/Slider-t-NcD60t.js +1176 -0
- package/dist/Stack-Bp1Ek2Gp.js +34 -0
- package/dist/Stack-D4jAiRfc.cjs +1 -0
- package/dist/StorybookApp-CDLV_kja.cjs +1 -0
- package/dist/StorybookApp-DKwlPCmo.js +10 -0
- package/dist/TerminalApp-BCB7i1lR.cjs +1 -0
- package/dist/TerminalApp-BYc_gHLe.js +326 -0
- package/dist/TerminalApp-Dviz6aP2.cjs +1 -0
- package/dist/TerminalMenuBar-D5tPmgR_.js +113 -0
- package/dist/TerminalMenuBar-DNshPmCa.cjs +1 -0
- package/dist/TerminalMenuBar-HzMSR7XP.cjs +1 -0
- package/dist/TextInput-C-JtGWn1.js +981 -0
- package/dist/TextInput-CrsmcOip.cjs +1 -0
- package/dist/Tooltip-D5Cd9wtz.cjs +1 -0
- package/dist/Tooltip-DOeIvhrO.js +1142 -0
- package/dist/UnstyledButton-DGaG-e_G.js +25 -0
- package/dist/UnstyledButton-DX2pTahr.cjs +1 -0
- package/dist/UploaderApp-C6xA5Rrf2.cjs +1 -0
- package/dist/UploaderApp-DnHIRxB_.cjs +1 -0
- package/dist/UploaderApp-qBfpukR_.js +488 -0
- package/dist/VscIcon-CcMdrFoJ.cjs +1 -0
- package/dist/VscIcon-DBfVnArE.js +8 -0
- package/dist/create-safe-context-Bboj0GWC.cjs +1 -0
- package/dist/create-safe-context-XT2cxc14.js +12 -0
- package/dist/desktopStore-CZoA9VHO.cjs +1 -0
- package/dist/desktopStore-F8bgLqFl.js +1768 -0
- package/dist/getRuntime-BFK0-8R1.cjs +1 -0
- package/dist/getRuntime-DAPqFH2W.js +63 -0
- package/dist/imageViewerStore-BB_tssZR.cjs +1 -0
- package/dist/imageViewerStore-C5kWz0o7.js +50 -0
- package/dist/index.cjs +1 -5642
- package/dist/index.css +2 -9192
- package/dist/index.d.ts +2258 -2019
- package/dist/index.js +4826 -4798
- package/dist/is-element-Bu_JY8Qy.js +7 -0
- package/dist/is-element-CdV0xajp.cjs +1 -0
- package/dist/menuEditStore-CTeM_dns.cjs +1 -0
- package/dist/menuEditStore-Cj1zAwxQ.js +38 -0
- package/dist/notesStore-BCEl1D_v.cjs +1 -0
- package/dist/notesStore-BPyRTHEc.js +36 -0
- package/dist/rolldown-runtime-CAFD8bLK.js +11 -0
- package/dist/settingsAppStore-BDQ3ts1y.js +29 -0
- package/dist/settingsAppStore-CMBc13VU.cjs +1 -0
- package/dist/terminalStore-IWdf4Mm6.js +30 -0
- package/dist/terminalStore-iIuyodfK.cjs +1 -0
- package/dist/use-merged-ref-BT8_u6vW.js +25 -0
- package/dist/use-merged-ref-n9Gw9LNn.cjs +1 -0
- package/dist/use-resolved-styles-api-8OXE2oRq.cjs +1 -0
- package/dist/use-resolved-styles-api-DNUlJJZf.js +21 -0
- package/dist/use-uncontrolled-A4hm9ATM.js +23 -0
- package/dist/use-uncontrolled-DDJVQiM_.cjs +1 -0
- package/dist/useAdaptiveDimensions-AVDc_qPa.js +40 -0
- package/dist/useAdaptiveDimensions-CfITBJ_m.cjs +1 -0
- package/dist/useCloseInterceptor-BZd3VILp.js +51 -0
- package/dist/useCloseInterceptor-yntBEzNc.cjs +1 -0
- package/dist/useDynamicIcon-Bf0t2foA.js +22 -0
- package/dist/useDynamicIcon-DJ_il30E.cjs +1 -0
- package/dist/useMenuBarUtils-nJIPJGIQ.cjs +1 -0
- package/dist/useMenuBarUtils-nmu9yehT.js +6 -0
- package/dist/useOpenApp-CBIm7Gzl.js +279 -0
- package/dist/useOpenApp-DW4x79Zg.cjs +1 -0
- package/dist/useResolvedUrl-BkMPM1fM.cjs +1 -0
- package/dist/useResolvedUrl-DQpLqOoL.js +30 -0
- package/package.json +7 -3
- package/dist/CalendarApp-CHLUCAI7.css +0 -744
- package/dist/CalendarApp-K7ZOUZ6C.js +0 -2
- package/dist/CalendarApp-OTGEERSS.cjs +0 -8
- package/dist/CodeServerApp-5KZGO7HL.css +0 -75
- package/dist/CodeServerApp-LUZFCQBI.js +0 -3
- package/dist/CodeServerApp-P3TMJPLY.cjs +0 -9
- package/dist/CreateItemApp-ESQ42VHH.js +0 -8
- package/dist/CreateItemApp-PQB5GTFG.css +0 -107
- package/dist/CreateItemApp-RFE3REWZ.cjs +0 -14
- package/dist/DeviceInfoApp-XNIS6ZY6.js +0 -5
- package/dist/DeviceInfoApp-ZNLQNOKI.cjs +0 -11
- package/dist/DeviceInfoApp-ZSMRSITP.css +0 -7
- package/dist/FilesApp-4GEU64QN.js +0 -8
- package/dist/FilesApp-E6L5W3T2.css +0 -1817
- package/dist/FilesApp-QSLB5IWR.cjs +0 -14
- package/dist/ImageViewerApp-N2Q7E7WZ.css +0 -215
- package/dist/ImageViewerApp-NCVDKLB3.js +0 -11
- package/dist/ImageViewerApp-QB373H5Z.cjs +0 -17
- package/dist/ImageViewerMenuBar-I3TFKQPS.cjs +0 -14
- package/dist/ImageViewerMenuBar-TV5C6TM2.js +0 -5
- package/dist/ImageViewerMenuBar-XLK4LIHW.css +0 -56
- package/dist/MenuEditApp-5EFYAPFC.cjs +0 -15
- package/dist/MenuEditApp-V5XOPIHX.js +0 -9
- package/dist/MenuEditApp-YA6HSAMJ.css +0 -94
- package/dist/MenuEditMenuBar-7VHMZNRM.css +0 -56
- package/dist/MenuEditMenuBar-GF6L4PGZ.cjs +0 -15
- package/dist/MenuEditMenuBar-IUXFPZE5.js +0 -6
- package/dist/NotesApp-2YNT7Y3D.js +0 -10
- package/dist/NotesApp-IAEE7YHU.cjs +0 -16
- package/dist/NotesApp-TQ6IHDNX.css +0 -302
- package/dist/NotesMenuBar-25LKN3SE.cjs +0 -15
- package/dist/NotesMenuBar-MXLOX7OT.css +0 -56
- package/dist/NotesMenuBar-SRV3AIAL.js +0 -6
- package/dist/PdfApp-67XIX6AM.js +0 -10
- package/dist/PdfApp-BUIC5U5H.css +0 -206
- package/dist/PdfApp-GZ6RHTBR.cjs +0 -16
- package/dist/PdfMenuBar-NLZC6JHS.js +0 -4
- package/dist/PdfMenuBar-QUM72EE4.css +0 -56
- package/dist/PdfMenuBar-WBRTKMLN.cjs +0 -13
- package/dist/SettingsApp-BPLMGPNK.cjs +0 -20
- package/dist/SettingsApp-JVOSEFH3.css +0 -283
- package/dist/SettingsApp-LUDIXCYY.js +0 -14
- package/dist/SettingsMenuBar-5CBSSMVM.css +0 -56
- package/dist/SettingsMenuBar-VLT6TTCM.js +0 -6
- package/dist/SettingsMenuBar-Y5QEXDEO.cjs +0 -15
- package/dist/StorybookApp-NQ244BER.css +0 -7
- package/dist/StorybookApp-NZDV4X3Y.js +0 -1
- package/dist/StorybookApp-VF3KIMU3.cjs +0 -7
- package/dist/TerminalApp-CDGWRBFJ.cjs +0 -10
- package/dist/TerminalApp-EAATMIMX.css +0 -77
- package/dist/TerminalApp-GCKJCM55.js +0 -4
- package/dist/TerminalMenuBar-3J26O26Q.css +0 -56
- package/dist/TerminalMenuBar-7BH7MGNJ.cjs +0 -14
- package/dist/TerminalMenuBar-7JAEQUZ4.js +0 -5
- package/dist/UploaderApp-6KV3TGCT.css +0 -1817
- package/dist/UploaderApp-FJC2J4I5.js +0 -10
- package/dist/UploaderApp-HLXJYJZQ.cjs +0 -16
- package/dist/chunk-2PSTHGTD.cjs +0 -42
- package/dist/chunk-2RQX7QBP.cjs +0 -148
- package/dist/chunk-43W6UDUZ.cjs +0 -19
- package/dist/chunk-4E45FBAH.js +0 -223
- package/dist/chunk-4E4U2A25.cjs +0 -237
- package/dist/chunk-4QHX7CMN.cjs +0 -38
- package/dist/chunk-4XURSNM4.js +0 -43
- package/dist/chunk-4ZCRYHL6.js +0 -407
- package/dist/chunk-5C6IQE42.cjs +0 -35
- package/dist/chunk-5HUYQDQF.js +0 -36
- package/dist/chunk-5NOHYJNH.js +0 -84
- package/dist/chunk-5QFZW6HW.js +0 -2241
- package/dist/chunk-5YH6AKEO.js +0 -146
- package/dist/chunk-756GPSPM.js +0 -283
- package/dist/chunk-7WUYUTPN.js +0 -2293
- package/dist/chunk-7XCMBW64.js +0 -162
- package/dist/chunk-7Y7HB7FB.cjs +0 -53
- package/dist/chunk-ABIAPZ6S.cjs +0 -45
- package/dist/chunk-ACHGJKCI.cjs +0 -286
- package/dist/chunk-BQCD5RAF.cjs +0 -48
- package/dist/chunk-BQL3YXMV.js +0 -17429
- package/dist/chunk-C3XER4N3.js +0 -442
- package/dist/chunk-C6BEZNAM.cjs +0 -45
- package/dist/chunk-CILU6BWC.cjs +0 -548
- package/dist/chunk-CV5PUHAE.cjs +0 -86
- package/dist/chunk-D5MVFFID.js +0 -42
- package/dist/chunk-D7R55WWT.js +0 -1601
- package/dist/chunk-DFYDUXWP.cjs +0 -34
- package/dist/chunk-DWP2SYF7.js +0 -55
- package/dist/chunk-E55VXNLK.cjs +0 -17498
- package/dist/chunk-E5FW77FG.js +0 -77
- package/dist/chunk-EAELL43F.js +0 -42
- package/dist/chunk-EX5V2ZTU.js +0 -40
- package/dist/chunk-FD7QZCTN.cjs +0 -2329
- package/dist/chunk-FH4ILMKF.js +0 -38
- package/dist/chunk-FRHBM2U7.js +0 -33
- package/dist/chunk-FX2TPX3L.cjs +0 -45
- package/dist/chunk-GPXNLTPI.cjs +0 -451
- package/dist/chunk-GRYCUBJZ.js +0 -9
- package/dist/chunk-HPHHS7FJ.cjs +0 -49
- package/dist/chunk-HWHBSAUC.js +0 -40
- package/dist/chunk-IDHP3R4I.js +0 -31
- package/dist/chunk-IHWGT3DL.js +0 -86
- package/dist/chunk-JEBKLIMU.cjs +0 -123
- package/dist/chunk-KDZLBI6F.cjs +0 -324
- package/dist/chunk-KQHICFX3.js +0 -121
- package/dist/chunk-LMJE6V4N.cjs +0 -42
- package/dist/chunk-MCHPDWVH.js +0 -444
- package/dist/chunk-MVDGM5Y4.js +0 -68
- package/dist/chunk-N36HBL53.cjs +0 -165
- package/dist/chunk-NV5GNFA3.js +0 -541
- package/dist/chunk-NVEGEK3N.js +0 -31
- package/dist/chunk-OJIDKDKF.js +0 -68
- package/dist/chunk-PGGNSLM7.js +0 -215
- package/dist/chunk-PKPQA5NR.js +0 -15
- package/dist/chunk-PNDBLFJW.cjs +0 -50
- package/dist/chunk-Q3WA72BF.cjs +0 -70
- package/dist/chunk-RDIDAZ3S.cjs +0 -9
- package/dist/chunk-RGJPRXYY.js +0 -48
- package/dist/chunk-RPSYXORB.cjs +0 -219
- package/dist/chunk-RQ6OZRUW.cjs +0 -41
- package/dist/chunk-SBE4SZAN.cjs +0 -226
- package/dist/chunk-TAFNCDUI.js +0 -234
- package/dist/chunk-TFIDSENE.cjs +0 -88
- package/dist/chunk-TGWMOHAO.js +0 -17
- package/dist/chunk-UA6XSTW6.js +0 -48
- package/dist/chunk-UIQCTAVM.cjs +0 -59
- package/dist/chunk-UKYESVDS.cjs +0 -50
- package/dist/chunk-V4N255NL.cjs +0 -2309
- package/dist/chunk-VO6KXO2I.js +0 -32
- package/dist/chunk-WXSTSC3D.cjs +0 -83
- package/dist/chunk-XSK7BWYO.js +0 -47
- package/dist/chunk-XVAPJ4PP.cjs +0 -449
- package/dist/chunk-XVASHRCE.cjs +0 -70
- package/dist/chunk-XYSMVQQD.cjs +0 -1608
- package/dist/chunk-YAIWI4Z5.js +0 -7
- package/dist/chunk-YGYOLDKR.js +0 -280
- package/dist/chunk-YP2PLNOF.cjs +0 -34
- package/dist/chunk-YSOLW4FS.cjs +0 -11
- package/dist/chunk-YY6OUR2U.js +0 -44
- package/dist/chunk-YZWS7FDT.cjs +0 -409
- package/dist/chunk-Z5YGWL65.cjs +0 -39
- package/dist/chunk-ZHNDXNL4.js +0 -45
- package/dist/chunk-ZX3EDZ5C.cjs +0 -17
- package/dist/index.d.cts +0 -2019
|
@@ -0,0 +1,1831 @@
|
|
|
1
|
+
import { t as e } from "./rolldown-runtime-CAFD8bLK.js";
|
|
2
|
+
import { A as t, D as n, I as r, M as i, O as a, S as o, c as s, d as c, i as l, l as u, n as d, o as f, r as p, t as m, x as h } from "./Box-DSKR_qaa.js";
|
|
3
|
+
import { n as g, t as _ } from "./ColorPicker-BCNqi02x.js";
|
|
4
|
+
import { o as v, t as y } from "./Tooltip-DOeIvhrO.js";
|
|
5
|
+
import { t as b } from "./use-uncontrolled-A4hm9ATM.js";
|
|
6
|
+
import { i as x, l as S, p as C, t as w, u as T } from "./TextInput-C-JtGWn1.js";
|
|
7
|
+
import { a as E, i as D, n as ee, o as O, t as k } from "./Slider-t-NcD60t.js";
|
|
8
|
+
import { r as te } from "./use-merged-ref-BT8_u6vW.js";
|
|
9
|
+
import { i as A, r as ne, t as j } from "./DownloadProgress-EoyCaD5O.js";
|
|
10
|
+
import { t as M } from "./UnstyledButton-DGaG-e_G.js";
|
|
11
|
+
import { t as N } from "./Paper-BX_9odR6.js";
|
|
12
|
+
import { t as P } from "./Group-CtBJSfCo.js";
|
|
13
|
+
import { i as F, o as I } from "./getRuntime-DAPqFH2W.js";
|
|
14
|
+
import { t as L } from "./Button-wTOTQKxF.js";
|
|
15
|
+
import { n as re, t as R } from "./AppIcon-XumS3bIG.js";
|
|
16
|
+
import { t as z } from "./Stack-Bp1Ek2Gp.js";
|
|
17
|
+
import { o as ie } from "./desktopStore-F8bgLqFl.js";
|
|
18
|
+
import { i as ae } from "./useCloseInterceptor-BZd3VILp.js";
|
|
19
|
+
import { t as oe } from "./useResolvedUrl-DQpLqOoL.js";
|
|
20
|
+
import { n as se } from "./FilePickerApp-DaMgEqKh.js";
|
|
21
|
+
import { t as ce } from "./Colors-ClnDxnyA.js";
|
|
22
|
+
import { n as B } from "./settingsAppStore-BDQ3ts1y.js";
|
|
23
|
+
import { createContext as le, createElement as ue, use as V, useCallback as H, useDeferredValue as de, useEffect as U, useRef as W, useState as G } from "react";
|
|
24
|
+
import { jsx as K, jsxs as q } from "react/jsx-runtime";
|
|
25
|
+
import { create as fe } from "zustand";
|
|
26
|
+
import { createJSONStorage as pe, persist as me } from "zustand/middleware";
|
|
27
|
+
import { useTranslation as J } from "react-i18next";
|
|
28
|
+
import { useQuery as he, useQueryClient as ge } from "@tanstack/react-query";
|
|
29
|
+
//#region ../../node_modules/.bun/@mantine+hooks@9.0.0+b1ab299f0a400331/node_modules/@mantine/hooks/esm/utils/shallow-equal/shallow-equal.mjs
|
|
30
|
+
function _e(e, t) {
|
|
31
|
+
if (e === t || Number.isNaN(e) && Number.isNaN(t)) return !0;
|
|
32
|
+
if (!(e instanceof Object) || !(t instanceof Object)) return !1;
|
|
33
|
+
let n = Object.keys(e), { length: r } = n;
|
|
34
|
+
if (r !== Object.keys(t).length) return !1;
|
|
35
|
+
for (let i = 0; i < r; i += 1) {
|
|
36
|
+
let r = n[i];
|
|
37
|
+
if (!(r in t) || e[r] !== t[r] && !(Number.isNaN(e[r]) && Number.isNaN(t[r]))) return !1;
|
|
38
|
+
}
|
|
39
|
+
return !0;
|
|
40
|
+
}
|
|
41
|
+
//#endregion
|
|
42
|
+
//#region ../../node_modules/.bun/@mantine+hooks@9.0.0+b1ab299f0a400331/node_modules/@mantine/hooks/esm/use-shallow-effect/use-shallow-effect.mjs
|
|
43
|
+
function ve(e, t) {
|
|
44
|
+
if (!e || !t) return !1;
|
|
45
|
+
if (e === t) return !0;
|
|
46
|
+
if (e.length !== t.length) return !1;
|
|
47
|
+
for (let n = 0; n < e.length; n += 1) if (!_e(e[n], t[n])) return !1;
|
|
48
|
+
return !0;
|
|
49
|
+
}
|
|
50
|
+
function ye(e) {
|
|
51
|
+
let t = W([]), n = W(0);
|
|
52
|
+
return ve(t.current, e) || (t.current = e, n.current += 1), [n.current];
|
|
53
|
+
}
|
|
54
|
+
function be(e, t) {
|
|
55
|
+
U(e, ye(t));
|
|
56
|
+
}
|
|
57
|
+
//#endregion
|
|
58
|
+
//#region ../../node_modules/.bun/@mantine+hooks@9.0.0+b1ab299f0a400331/node_modules/@mantine/hooks/esm/use-timeout/use-timeout.mjs
|
|
59
|
+
function xe(e, t, n = { autoInvoke: !1 }) {
|
|
60
|
+
let r = W(null), i = H((...n) => {
|
|
61
|
+
r.current ||= window.setTimeout(() => {
|
|
62
|
+
e(n), r.current = null;
|
|
63
|
+
}, t);
|
|
64
|
+
}, [t]), a = H(() => {
|
|
65
|
+
r.current &&= (window.clearTimeout(r.current), null);
|
|
66
|
+
}, []);
|
|
67
|
+
return U(() => (n.autoInvoke && i(), a), [a, i]), {
|
|
68
|
+
start: i,
|
|
69
|
+
clear: a
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
//#endregion
|
|
73
|
+
//#region ../../node_modules/.bun/@mantine+hooks@9.0.0+b1ab299f0a400331/node_modules/@mantine/hooks/esm/use-mutation-observer/use-mutation-observer.mjs
|
|
74
|
+
function Se(e, t, n) {
|
|
75
|
+
let r = W(null);
|
|
76
|
+
U(() => {
|
|
77
|
+
r.current &&= (r.current.disconnect(), null);
|
|
78
|
+
let i = typeof n == "function" ? n() : n;
|
|
79
|
+
return i && (r.current = new MutationObserver(e), r.current.observe(i, t)), () => {
|
|
80
|
+
r.current &&= (r.current.disconnect(), null);
|
|
81
|
+
};
|
|
82
|
+
}, [
|
|
83
|
+
e,
|
|
84
|
+
t,
|
|
85
|
+
n
|
|
86
|
+
]);
|
|
87
|
+
}
|
|
88
|
+
//#endregion
|
|
89
|
+
//#region ../../node_modules/.bun/@mantine+hooks@9.0.0+b1ab299f0a400331/node_modules/@mantine/hooks/esm/use-mounted/use-mounted.mjs
|
|
90
|
+
function Ce() {
|
|
91
|
+
let [e, t] = G(!1);
|
|
92
|
+
return U(() => t(!0), []), e;
|
|
93
|
+
}
|
|
94
|
+
//#endregion
|
|
95
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/core/utils/get-env/get-env.mjs
|
|
96
|
+
function we() {
|
|
97
|
+
return typeof process < "u" && process.env, "development";
|
|
98
|
+
}
|
|
99
|
+
//#endregion
|
|
100
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/core/utils/primitive/primitive.mjs
|
|
101
|
+
function Te(e) {
|
|
102
|
+
return typeof e == "string" || typeof e == "number" || typeof e == "boolean" || typeof e == "bigint";
|
|
103
|
+
}
|
|
104
|
+
//#endregion
|
|
105
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/FloatingIndicator/use-floating-indicator.mjs
|
|
106
|
+
function Ee(e, t) {
|
|
107
|
+
if (!t || !e) return !1;
|
|
108
|
+
let n = t.parentNode;
|
|
109
|
+
for (; n != null;) {
|
|
110
|
+
if (n === e) return !0;
|
|
111
|
+
n = n.parentNode;
|
|
112
|
+
}
|
|
113
|
+
return !1;
|
|
114
|
+
}
|
|
115
|
+
function De({ target: e, parent: t, ref: n, displayAfterTransitionEnd: r, onTransitionStart: i, onTransitionEnd: a }) {
|
|
116
|
+
let o = W(-1), s = W(e), [c, l] = G(!1), [u, d] = G(typeof r == "boolean" ? r : !1), f = () => {
|
|
117
|
+
if (!e || !t || !n.current) return;
|
|
118
|
+
let r = e.getBoundingClientRect(), i = t.getBoundingClientRect(), a = window.getComputedStyle(e), o = window.getComputedStyle(t), s = O(a.borderTopWidth) + O(o.borderTopWidth), c = O(a.borderLeftWidth) + O(o.borderLeftWidth), l = {
|
|
119
|
+
top: r.top - i.top - s,
|
|
120
|
+
left: r.left - i.left - c,
|
|
121
|
+
width: r.width,
|
|
122
|
+
height: r.height
|
|
123
|
+
};
|
|
124
|
+
n.current.style.transform = `translateY(${l.top}px) translateX(${l.left}px)`, n.current.style.width = `${l.width}px`, n.current.style.height = `${l.height}px`;
|
|
125
|
+
}, p = () => {
|
|
126
|
+
window.clearTimeout(o.current), n.current && (n.current.style.transitionDuration = "0ms"), f(), o.current = window.setTimeout(() => {
|
|
127
|
+
n.current && (n.current.style.transitionDuration = "");
|
|
128
|
+
}, 30);
|
|
129
|
+
}, m = W(null), h = W(null);
|
|
130
|
+
return U(() => {
|
|
131
|
+
if (c && s.current !== e && i && i(), s.current = e, f(), e) return m.current = new ResizeObserver(p), m.current.observe(e), t && (h.current = new ResizeObserver(p), h.current.observe(t)), () => {
|
|
132
|
+
m.current?.disconnect(), h.current?.disconnect();
|
|
133
|
+
};
|
|
134
|
+
}, [t, e]), U(() => {
|
|
135
|
+
if (t) {
|
|
136
|
+
let e = (e) => {
|
|
137
|
+
Ee(e.target, t) && (p(), d(!1));
|
|
138
|
+
};
|
|
139
|
+
return t.addEventListener("transitionend", e), () => {
|
|
140
|
+
t.removeEventListener("transitionend", e);
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
}, [t]), U(() => {
|
|
144
|
+
if (n.current && a) {
|
|
145
|
+
let e = (e) => {
|
|
146
|
+
e.propertyName === "transform" && a();
|
|
147
|
+
};
|
|
148
|
+
return n.current.addEventListener("transitionend", e), () => {
|
|
149
|
+
n.current?.removeEventListener("transitionend", e);
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
}, [a]), xe(() => {
|
|
153
|
+
we() !== "test" && l(!0);
|
|
154
|
+
}, 20, { autoInvoke: !0 }), Se((e) => {
|
|
155
|
+
e.forEach((e) => {
|
|
156
|
+
e.type === "attributes" && e.attributeName === "dir" && p();
|
|
157
|
+
});
|
|
158
|
+
}, {
|
|
159
|
+
attributes: !0,
|
|
160
|
+
attributeFilter: ["dir"]
|
|
161
|
+
}, () => document.documentElement), {
|
|
162
|
+
initialized: c,
|
|
163
|
+
hidden: u
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
//#endregion
|
|
167
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/FloatingIndicator/FloatingIndicator.module.mjs
|
|
168
|
+
var Oe = { root: "m_96b553a6" }, ke = n((e, { transitionDuration: t }, { shouldReduceMotion: n }) => {
|
|
169
|
+
let r = e.respectReducedMotion && n ? "0ms" : typeof t == "number" ? `${t}ms` : t || "150ms";
|
|
170
|
+
return { root: { "--transition-duration": r } };
|
|
171
|
+
}), Ae = p((e) => {
|
|
172
|
+
let t = u("FloatingIndicator", null, e), { classNames: n, className: r, style: i, styles: a, unstyled: o, vars: c, target: l, parent: d, transitionDuration: f, mod: p, displayAfterTransitionEnd: h, onTransitionStart: g, onTransitionEnd: _, attributes: v, ref: y, ...b } = t, x = s({
|
|
173
|
+
name: "FloatingIndicator",
|
|
174
|
+
classes: Oe,
|
|
175
|
+
props: t,
|
|
176
|
+
className: r,
|
|
177
|
+
style: i,
|
|
178
|
+
classNames: n,
|
|
179
|
+
styles: a,
|
|
180
|
+
unstyled: o,
|
|
181
|
+
attributes: v,
|
|
182
|
+
vars: c,
|
|
183
|
+
varsResolver: ke,
|
|
184
|
+
stylesCtx: { shouldReduceMotion: S() }
|
|
185
|
+
}), C = W(null), { initialized: w, hidden: T } = De({
|
|
186
|
+
target: l,
|
|
187
|
+
parent: d,
|
|
188
|
+
ref: C,
|
|
189
|
+
displayAfterTransitionEnd: h,
|
|
190
|
+
onTransitionStart: g,
|
|
191
|
+
onTransitionEnd: _
|
|
192
|
+
}), E = te(y, C);
|
|
193
|
+
return !l || !d ? null : /* @__PURE__ */ K(m, {
|
|
194
|
+
ref: E,
|
|
195
|
+
mod: [{
|
|
196
|
+
initialized: w,
|
|
197
|
+
hidden: T
|
|
198
|
+
}, p],
|
|
199
|
+
...x("root"),
|
|
200
|
+
...b
|
|
201
|
+
});
|
|
202
|
+
});
|
|
203
|
+
Ae.displayName = "@mantine/core/FloatingIndicator", Ae.classes = Oe, Ae.varsResolver = ke;
|
|
204
|
+
//#endregion
|
|
205
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/Badge/Badge.module.mjs
|
|
206
|
+
var je = {
|
|
207
|
+
root: "m_347db0ec",
|
|
208
|
+
"root--dot": "m_fbd81e3d",
|
|
209
|
+
label: "m_5add502a",
|
|
210
|
+
section: "m_91fdda9b"
|
|
211
|
+
}, Me = n((e, { radius: n, color: r, gradient: a, variant: o, size: s, autoContrast: c, circle: l }) => {
|
|
212
|
+
let u = e.variantColorResolver({
|
|
213
|
+
color: r || e.primaryColor,
|
|
214
|
+
theme: e,
|
|
215
|
+
gradient: a,
|
|
216
|
+
variant: o || "filled",
|
|
217
|
+
autoContrast: c
|
|
218
|
+
});
|
|
219
|
+
return { root: {
|
|
220
|
+
"--badge-height": i(s, "badge-height"),
|
|
221
|
+
"--badge-padding-x": i(s, "badge-padding-x"),
|
|
222
|
+
"--badge-fz": i(s, "badge-fz"),
|
|
223
|
+
"--badge-radius": l || n === void 0 ? void 0 : t(n),
|
|
224
|
+
"--badge-bg": r || o ? u.background : void 0,
|
|
225
|
+
"--badge-color": r || o ? u.color : void 0,
|
|
226
|
+
"--badge-bd": r || o ? u.border : void 0,
|
|
227
|
+
"--badge-dot-color": o === "dot" ? h(r, e) : void 0
|
|
228
|
+
} };
|
|
229
|
+
}), Ne = d((e) => {
|
|
230
|
+
let t = u("Badge", null, e), { classNames: n, className: r, style: i, styles: a, unstyled: o, vars: c, radius: l, color: d, gradient: f, leftSection: p, rightSection: h, children: g, variant: _, fullWidth: v, autoContrast: y, circle: b, mod: x, attributes: S, ...C } = t, w = s({
|
|
231
|
+
name: "Badge",
|
|
232
|
+
props: t,
|
|
233
|
+
classes: je,
|
|
234
|
+
className: r,
|
|
235
|
+
style: i,
|
|
236
|
+
classNames: n,
|
|
237
|
+
styles: a,
|
|
238
|
+
unstyled: o,
|
|
239
|
+
attributes: S,
|
|
240
|
+
vars: c,
|
|
241
|
+
varsResolver: Me
|
|
242
|
+
});
|
|
243
|
+
return /* @__PURE__ */ q(m, {
|
|
244
|
+
variant: _,
|
|
245
|
+
mod: [{
|
|
246
|
+
block: v,
|
|
247
|
+
circle: b,
|
|
248
|
+
"with-right-section": !!h,
|
|
249
|
+
"with-left-section": !!p
|
|
250
|
+
}, x],
|
|
251
|
+
...w("root", { variant: _ }),
|
|
252
|
+
...C,
|
|
253
|
+
children: [
|
|
254
|
+
p && /* @__PURE__ */ K("span", {
|
|
255
|
+
...w("section"),
|
|
256
|
+
"data-position": "left",
|
|
257
|
+
children: p
|
|
258
|
+
}),
|
|
259
|
+
/* @__PURE__ */ K("span", {
|
|
260
|
+
...w("label"),
|
|
261
|
+
children: g
|
|
262
|
+
}),
|
|
263
|
+
h && /* @__PURE__ */ K("span", {
|
|
264
|
+
...w("section"),
|
|
265
|
+
"data-position": "right",
|
|
266
|
+
children: h
|
|
267
|
+
})
|
|
268
|
+
]
|
|
269
|
+
});
|
|
270
|
+
});
|
|
271
|
+
Ne.classes = je, Ne.varsResolver = Me, Ne.displayName = "@mantine/core/Badge";
|
|
272
|
+
//#endregion
|
|
273
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/Radio/RadioGroup/RadioGroup.mjs
|
|
274
|
+
var Pe = le(null), Fe = l(((e) => {
|
|
275
|
+
let { value: t, defaultValue: n, onChange: r, size: i, wrapperProps: a, children: o, name: s, readOnly: c, disabled: l, ...d } = u("RadioGroup", null, e), f = T(s), [p, m] = b({
|
|
276
|
+
value: t,
|
|
277
|
+
defaultValue: n,
|
|
278
|
+
finalValue: "",
|
|
279
|
+
onChange: r
|
|
280
|
+
});
|
|
281
|
+
return /* @__PURE__ */ K(Pe, {
|
|
282
|
+
value: {
|
|
283
|
+
value: p,
|
|
284
|
+
onChange: (e) => !c && m(typeof e == "string" ? e : e.currentTarget.value),
|
|
285
|
+
size: i,
|
|
286
|
+
name: f,
|
|
287
|
+
disabled: l
|
|
288
|
+
},
|
|
289
|
+
children: /* @__PURE__ */ K(x.Wrapper, {
|
|
290
|
+
size: i,
|
|
291
|
+
...a,
|
|
292
|
+
...d,
|
|
293
|
+
labelElement: "div",
|
|
294
|
+
__staticSelector: "RadioGroup",
|
|
295
|
+
children: /* @__PURE__ */ K(D, {
|
|
296
|
+
role: "radiogroup",
|
|
297
|
+
children: o
|
|
298
|
+
})
|
|
299
|
+
})
|
|
300
|
+
});
|
|
301
|
+
}));
|
|
302
|
+
Fe.classes = x.Wrapper.classes, Fe.displayName = "@mantine/core/RadioGroup";
|
|
303
|
+
//#endregion
|
|
304
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/Radio/RadioCard/RadioCard.module.mjs
|
|
305
|
+
var Ie = { card: "m_9dc8ae12" }, Le = le(null), Re = { withBorder: !0 }, ze = n((e, { radius: n }) => ({ card: { "--card-radius": t(n) } })), Be = p((e) => {
|
|
306
|
+
let t = u("RadioCard", Re, e), { classNames: n, className: r, style: i, styles: a, unstyled: o, vars: c, checked: l, mod: d, withBorder: f, value: p, onClick: m, name: h, onKeyDown: g, attributes: _, ...y } = t, b = s({
|
|
307
|
+
name: "RadioCard",
|
|
308
|
+
classes: Ie,
|
|
309
|
+
props: t,
|
|
310
|
+
className: r,
|
|
311
|
+
style: i,
|
|
312
|
+
classNames: n,
|
|
313
|
+
styles: a,
|
|
314
|
+
unstyled: o,
|
|
315
|
+
attributes: _,
|
|
316
|
+
vars: c,
|
|
317
|
+
varsResolver: ze,
|
|
318
|
+
rootSelector: "card"
|
|
319
|
+
}), { dir: x } = v(), S = V(Pe), C = typeof l == "boolean" ? l : S?.value === p || !1, w = h || S?.name, T = (e) => {
|
|
320
|
+
if (g?.(e), w && [
|
|
321
|
+
"ArrowDown",
|
|
322
|
+
"ArrowUp",
|
|
323
|
+
"ArrowLeft",
|
|
324
|
+
"ArrowRight"
|
|
325
|
+
].includes(e.nativeEvent.code)) {
|
|
326
|
+
e.preventDefault();
|
|
327
|
+
let t = Array.from(document.querySelectorAll(`[role="radio"][name="${w}"]`)), n = t.findIndex((t) => t === e.target), r = n + 1 >= t.length ? 0 : n + 1, i = n - 1 < 0 ? t.length - 1 : n - 1;
|
|
328
|
+
e.nativeEvent.code === "ArrowDown" && (t[r].focus(), t[r].click()), e.nativeEvent.code === "ArrowUp" && (t[i].focus(), t[i].click()), e.nativeEvent.code === "ArrowLeft" && (t[x === "ltr" ? i : r].focus(), t[x === "ltr" ? i : r].click()), e.nativeEvent.code === "ArrowRight" && (t[x === "ltr" ? r : i].focus(), t[x === "ltr" ? r : i].click());
|
|
329
|
+
}
|
|
330
|
+
};
|
|
331
|
+
return /* @__PURE__ */ K(Le, {
|
|
332
|
+
value: { checked: C },
|
|
333
|
+
children: /* @__PURE__ */ K(M, {
|
|
334
|
+
mod: [{
|
|
335
|
+
"with-border": f,
|
|
336
|
+
checked: C
|
|
337
|
+
}, d],
|
|
338
|
+
...b("card"),
|
|
339
|
+
...y,
|
|
340
|
+
role: "radio",
|
|
341
|
+
"aria-checked": C,
|
|
342
|
+
name: w,
|
|
343
|
+
onClick: (e) => {
|
|
344
|
+
m?.(e), S?.onChange(p || "");
|
|
345
|
+
},
|
|
346
|
+
onKeyDown: T
|
|
347
|
+
})
|
|
348
|
+
});
|
|
349
|
+
});
|
|
350
|
+
Be.displayName = "@mantine/core/RadioCard", Be.classes = Ie, Be.varsResolver = ze;
|
|
351
|
+
//#endregion
|
|
352
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/Radio/RadioIcon.mjs
|
|
353
|
+
function Ve({ size: e, style: t, ...n }) {
|
|
354
|
+
return /* @__PURE__ */ K("svg", {
|
|
355
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
356
|
+
fill: "none",
|
|
357
|
+
viewBox: "0 0 5 5",
|
|
358
|
+
style: {
|
|
359
|
+
width: r(e),
|
|
360
|
+
height: r(e),
|
|
361
|
+
...t
|
|
362
|
+
},
|
|
363
|
+
"aria-hidden": !0,
|
|
364
|
+
...n,
|
|
365
|
+
children: /* @__PURE__ */ K("circle", {
|
|
366
|
+
cx: "2.5",
|
|
367
|
+
cy: "2.5",
|
|
368
|
+
r: "2.5",
|
|
369
|
+
fill: "currentColor"
|
|
370
|
+
})
|
|
371
|
+
});
|
|
372
|
+
}
|
|
373
|
+
//#endregion
|
|
374
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/Radio/RadioIndicator/RadioIndicator.module.mjs
|
|
375
|
+
var He = {
|
|
376
|
+
indicator: "m_717d7ff6",
|
|
377
|
+
icon: "m_3e4da632",
|
|
378
|
+
"indicator--outline": "m_2980836c"
|
|
379
|
+
}, Ue = { icon: Ve }, We = n((e, { radius: n, color: r, size: a, iconColor: s, variant: c, autoContrast: l }) => {
|
|
380
|
+
let u = o({
|
|
381
|
+
color: r || e.primaryColor,
|
|
382
|
+
theme: e
|
|
383
|
+
}), d = u.isThemeColor && u.shade === void 0 ? `var(--mantine-color-${u.color}-outline)` : u.color;
|
|
384
|
+
return { indicator: {
|
|
385
|
+
"--radio-size": i(a, "radio-size"),
|
|
386
|
+
"--radio-radius": n === void 0 ? void 0 : t(n),
|
|
387
|
+
"--radio-color": c === "outline" ? d : h(r, e),
|
|
388
|
+
"--radio-icon-size": i(a, "radio-icon-size"),
|
|
389
|
+
"--radio-icon-color": s ? h(s, e) : ne(l, e) ? A({
|
|
390
|
+
color: r,
|
|
391
|
+
theme: e,
|
|
392
|
+
autoContrast: l
|
|
393
|
+
}) : void 0
|
|
394
|
+
} };
|
|
395
|
+
}), Ge = p((e) => {
|
|
396
|
+
let t = u("RadioIndicator", Ue, e), { classNames: n, className: r, style: i, styles: a, unstyled: o, vars: c, icon: l, radius: d, color: f, iconColor: p, autoContrast: h, checked: g, mod: _, variant: v, disabled: y, attributes: b, ...x } = t, S = s({
|
|
397
|
+
name: "RadioIndicator",
|
|
398
|
+
classes: He,
|
|
399
|
+
props: t,
|
|
400
|
+
className: r,
|
|
401
|
+
style: i,
|
|
402
|
+
classNames: n,
|
|
403
|
+
styles: a,
|
|
404
|
+
unstyled: o,
|
|
405
|
+
attributes: b,
|
|
406
|
+
vars: c,
|
|
407
|
+
varsResolver: We,
|
|
408
|
+
rootSelector: "indicator"
|
|
409
|
+
}), C = V(Le), w = typeof g == "boolean" ? g : C?.checked || !1;
|
|
410
|
+
return /* @__PURE__ */ K(m, {
|
|
411
|
+
...S("indicator", { variant: v }),
|
|
412
|
+
variant: v,
|
|
413
|
+
mod: [{
|
|
414
|
+
checked: w,
|
|
415
|
+
disabled: y
|
|
416
|
+
}, _],
|
|
417
|
+
...x,
|
|
418
|
+
children: /* @__PURE__ */ K(l, { ...S("icon") })
|
|
419
|
+
});
|
|
420
|
+
});
|
|
421
|
+
Ge.displayName = "@mantine/core/RadioIndicator", Ge.classes = He, Ge.varsResolver = We;
|
|
422
|
+
//#endregion
|
|
423
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/Radio/Radio.module.mjs
|
|
424
|
+
var Ke = {
|
|
425
|
+
root: "m_f3f1af94",
|
|
426
|
+
inner: "m_89c4f5e4",
|
|
427
|
+
icon: "m_f3ed6b2b",
|
|
428
|
+
radio: "m_8a3dbb89",
|
|
429
|
+
"radio--outline": "m_1bfe9d39"
|
|
430
|
+
}, qe = {
|
|
431
|
+
labelPosition: "right",
|
|
432
|
+
withErrorStyles: !0
|
|
433
|
+
}, Je = n((e, { size: n, radius: r, color: a, iconColor: s, variant: c, autoContrast: l }) => {
|
|
434
|
+
let u = o({
|
|
435
|
+
color: a || e.primaryColor,
|
|
436
|
+
theme: e
|
|
437
|
+
}), d = u.isThemeColor && u.shade === void 0 ? `var(--mantine-color-${u.color}-outline)` : u.color;
|
|
438
|
+
return { root: {
|
|
439
|
+
"--radio-size": i(n, "radio-size"),
|
|
440
|
+
"--radio-radius": r === void 0 ? void 0 : t(r),
|
|
441
|
+
"--radio-color": c === "outline" ? d : h(a, e),
|
|
442
|
+
"--radio-icon-color": s ? h(s, e) : ne(l, e) ? A({
|
|
443
|
+
color: a,
|
|
444
|
+
theme: e,
|
|
445
|
+
autoContrast: l
|
|
446
|
+
}) : void 0,
|
|
447
|
+
"--radio-icon-size": i(n, "radio-icon-size")
|
|
448
|
+
} };
|
|
449
|
+
}), Y = p((e) => {
|
|
450
|
+
let t = u("Radio", qe, e), { classNames: n, className: r, style: i, styles: a, unstyled: o, vars: c, id: l, size: d, label: p, labelPosition: h, description: g, error: _, radius: v, color: y, variant: b, disabled: x, wrapperProps: S, icon: C = Ve, rootRef: w, iconColor: E, onChange: D, mod: O, attributes: k, withErrorStyles: te, checked: A, ...ne } = t, j = s({
|
|
451
|
+
name: "Radio",
|
|
452
|
+
classes: Ke,
|
|
453
|
+
props: t,
|
|
454
|
+
className: r,
|
|
455
|
+
style: i,
|
|
456
|
+
classNames: n,
|
|
457
|
+
styles: a,
|
|
458
|
+
unstyled: o,
|
|
459
|
+
attributes: k,
|
|
460
|
+
vars: c,
|
|
461
|
+
varsResolver: Je
|
|
462
|
+
}), M = V(Pe), N = M?.size ?? d, P = t.size ? d : N, { styleProps: F, rest: I } = f(ne), L = T(l), re = M ? M.value === I.value : void 0, R = {
|
|
463
|
+
checked: re ?? A,
|
|
464
|
+
name: I.name ?? M?.name,
|
|
465
|
+
onChange: (e) => {
|
|
466
|
+
M?.onChange(e), D?.(e);
|
|
467
|
+
},
|
|
468
|
+
disabled: M?.disabled ?? x
|
|
469
|
+
};
|
|
470
|
+
return /* @__PURE__ */ K(ee, {
|
|
471
|
+
...j("root"),
|
|
472
|
+
__staticSelector: "Radio",
|
|
473
|
+
__stylesApiProps: t,
|
|
474
|
+
id: L,
|
|
475
|
+
size: P,
|
|
476
|
+
labelPosition: h,
|
|
477
|
+
label: p,
|
|
478
|
+
description: g,
|
|
479
|
+
error: _,
|
|
480
|
+
disabled: R.disabled,
|
|
481
|
+
classNames: n,
|
|
482
|
+
styles: a,
|
|
483
|
+
unstyled: o,
|
|
484
|
+
"data-checked": (re ?? A) || void 0,
|
|
485
|
+
variant: b,
|
|
486
|
+
ref: w,
|
|
487
|
+
mod: O,
|
|
488
|
+
attributes: k,
|
|
489
|
+
...F,
|
|
490
|
+
...S,
|
|
491
|
+
children: /* @__PURE__ */ q(m, {
|
|
492
|
+
...j("inner"),
|
|
493
|
+
mod: { "label-position": h },
|
|
494
|
+
children: [/* @__PURE__ */ K(m, {
|
|
495
|
+
...j("radio", {
|
|
496
|
+
focusable: !0,
|
|
497
|
+
variant: b
|
|
498
|
+
}),
|
|
499
|
+
...I,
|
|
500
|
+
...R,
|
|
501
|
+
component: "input",
|
|
502
|
+
mod: {
|
|
503
|
+
error: !!_,
|
|
504
|
+
"with-error-styles": te
|
|
505
|
+
},
|
|
506
|
+
id: L,
|
|
507
|
+
type: "radio"
|
|
508
|
+
}), /* @__PURE__ */ K(C, {
|
|
509
|
+
...j("icon"),
|
|
510
|
+
"aria-hidden": !0
|
|
511
|
+
})]
|
|
512
|
+
})
|
|
513
|
+
});
|
|
514
|
+
});
|
|
515
|
+
Y.classes = Ke, Y.varsResolver = Je, Y.displayName = "@mantine/core/Radio", Y.Group = Fe, Y.Card = Be, Y.Indicator = Ge;
|
|
516
|
+
//#endregion
|
|
517
|
+
//#region ../../node_modules/.bun/@mantine+core@9.0.0+9dd69a0af178a974/node_modules/@mantine/core/esm/components/SegmentedControl/SegmentedControl.module.mjs
|
|
518
|
+
var Ye = {
|
|
519
|
+
root: "m_cf365364",
|
|
520
|
+
indicator: "m_9e182ccd",
|
|
521
|
+
label: "m_1738fcb2",
|
|
522
|
+
input: "m_1714d588",
|
|
523
|
+
control: "m_69686b9b",
|
|
524
|
+
innerLabel: "m_78882f40"
|
|
525
|
+
}, Xe = { withItemsBorders: !0 }, Ze = n((e, { radius: n, color: r, transitionDuration: o, size: s, transitionTimingFunction: c }) => ({ root: {
|
|
526
|
+
"--sc-radius": n === void 0 ? void 0 : t(n),
|
|
527
|
+
"--sc-color": r ? h(r, e) : void 0,
|
|
528
|
+
"--sc-shadow": r ? void 0 : "var(--mantine-shadow-xs)",
|
|
529
|
+
"--sc-transition-duration": o === void 0 ? void 0 : `${o}ms`,
|
|
530
|
+
"--sc-transition-timing-function": c,
|
|
531
|
+
"--sc-padding": i(s, "sc-padding"),
|
|
532
|
+
"--sc-font-size": a(s)
|
|
533
|
+
} })), Qe = l((e) => {
|
|
534
|
+
let t = u("SegmentedControl", Xe, e), { classNames: n, className: r, style: i, styles: a, unstyled: o, vars: l, data: d, value: f, defaultValue: p, onChange: h, size: g, name: _, disabled: v, readOnly: y, fullWidth: x, orientation: S, radius: w, color: E, transitionDuration: D, transitionTimingFunction: ee, variant: O, autoContrast: k, withItemsBorders: ne, mod: j, attributes: M, ref: N, ...P } = t, F = s({
|
|
535
|
+
name: "SegmentedControl",
|
|
536
|
+
props: t,
|
|
537
|
+
classes: Ye,
|
|
538
|
+
className: r,
|
|
539
|
+
style: i,
|
|
540
|
+
classNames: n,
|
|
541
|
+
styles: a,
|
|
542
|
+
unstyled: o,
|
|
543
|
+
attributes: M,
|
|
544
|
+
vars: l,
|
|
545
|
+
varsResolver: Ze
|
|
546
|
+
}), I = c(), L = d.map((e) => Te(e) ? {
|
|
547
|
+
label: `${e}`,
|
|
548
|
+
value: e
|
|
549
|
+
} : e), re = Ce(), [R, z] = G(C()), [ie, ae] = G(null), [oe, se] = G({}), ce = (e, t) => {
|
|
550
|
+
oe[t] = e, se(oe);
|
|
551
|
+
}, [B, le] = b({
|
|
552
|
+
value: f,
|
|
553
|
+
defaultValue: p,
|
|
554
|
+
finalValue: Array.isArray(d) ? L.find((e) => !e.disabled)?.value ?? d[0]?.value ?? null : null,
|
|
555
|
+
onChange: h
|
|
556
|
+
}), V = T(_), H = L.map((e) => /* @__PURE__ */ ue(m, {
|
|
557
|
+
...F("control"),
|
|
558
|
+
mod: {
|
|
559
|
+
active: B === e.value,
|
|
560
|
+
orientation: S
|
|
561
|
+
},
|
|
562
|
+
key: `${e.value}`
|
|
563
|
+
}, /* @__PURE__ */ ue("input", {
|
|
564
|
+
...F("input"),
|
|
565
|
+
disabled: v || e.disabled,
|
|
566
|
+
type: "radio",
|
|
567
|
+
name: V,
|
|
568
|
+
value: `${e.value}`,
|
|
569
|
+
id: `${V}-${e.value}`,
|
|
570
|
+
checked: B === e.value,
|
|
571
|
+
onChange: () => !y && le(e.value),
|
|
572
|
+
"data-focus-ring": I.focusRing,
|
|
573
|
+
key: `${e.value}-input`
|
|
574
|
+
}), /* @__PURE__ */ ue(m, {
|
|
575
|
+
component: "label",
|
|
576
|
+
...F("label"),
|
|
577
|
+
mod: {
|
|
578
|
+
active: B === e.value && !(v || e.disabled),
|
|
579
|
+
disabled: v || e.disabled,
|
|
580
|
+
"read-only": y
|
|
581
|
+
},
|
|
582
|
+
htmlFor: `${V}-${e.value}`,
|
|
583
|
+
ref: (t) => ce(t, `${e.value}`),
|
|
584
|
+
__vars: { "--sc-label-color": E === void 0 ? void 0 : A({
|
|
585
|
+
color: E,
|
|
586
|
+
theme: I,
|
|
587
|
+
autoContrast: k
|
|
588
|
+
}) },
|
|
589
|
+
key: `${e.value}-label`
|
|
590
|
+
}, /* @__PURE__ */ K("span", {
|
|
591
|
+
...F("innerLabel"),
|
|
592
|
+
children: e.label
|
|
593
|
+
})))), de = te(N, (e) => ae(e));
|
|
594
|
+
return be(() => {
|
|
595
|
+
z(C());
|
|
596
|
+
}, [d.length]), d.length === 0 ? null : /* @__PURE__ */ q(m, {
|
|
597
|
+
...F("root"),
|
|
598
|
+
variant: O,
|
|
599
|
+
size: g,
|
|
600
|
+
ref: de,
|
|
601
|
+
mod: [{
|
|
602
|
+
"full-width": x,
|
|
603
|
+
orientation: S,
|
|
604
|
+
initialized: re,
|
|
605
|
+
"with-items-borders": ne
|
|
606
|
+
}, j],
|
|
607
|
+
...P,
|
|
608
|
+
role: "radiogroup",
|
|
609
|
+
"data-disabled": v,
|
|
610
|
+
children: [B !== void 0 && /* @__PURE__ */ K(Ae, {
|
|
611
|
+
target: oe[`${B}`],
|
|
612
|
+
parent: ie,
|
|
613
|
+
component: "span",
|
|
614
|
+
transitionDuration: "var(--sc-transition-duration)",
|
|
615
|
+
...F("indicator")
|
|
616
|
+
}, R), H]
|
|
617
|
+
});
|
|
618
|
+
});
|
|
619
|
+
Qe.classes = Ye, Qe.varsResolver = Ze, Qe.displayName = "@mantine/core/SegmentedControl";
|
|
620
|
+
//#endregion
|
|
621
|
+
//#region src/infrastructure/adapters/DefaultThemeProvider.ts
|
|
622
|
+
var $e = {
|
|
623
|
+
mode: "light",
|
|
624
|
+
colors: {
|
|
625
|
+
desktop: "#f0f4f8",
|
|
626
|
+
taskbar: "rgba(255, 255, 255, 0.9)",
|
|
627
|
+
window: "#ffffff",
|
|
628
|
+
accent: "#339af0"
|
|
629
|
+
},
|
|
630
|
+
window: {
|
|
631
|
+
borderRadius: "8px",
|
|
632
|
+
headerHeight: 40,
|
|
633
|
+
minWidth: 400,
|
|
634
|
+
minHeight: 300,
|
|
635
|
+
defaultWidth: 800,
|
|
636
|
+
defaultHeight: 600,
|
|
637
|
+
shadow: "0 8px 32px rgba(0, 0, 0, 0.2)"
|
|
638
|
+
},
|
|
639
|
+
taskbar: {
|
|
640
|
+
height: 48,
|
|
641
|
+
position: "bottom",
|
|
642
|
+
background: "rgba(0, 0, 0, 0.8)",
|
|
643
|
+
blur: !0
|
|
644
|
+
},
|
|
645
|
+
desktop: {
|
|
646
|
+
background: "linear-gradient(135deg, #667eea 0%, #764ba2 100%)",
|
|
647
|
+
iconSize: 64,
|
|
648
|
+
iconSpacing: 16
|
|
649
|
+
}
|
|
650
|
+
}, et = {
|
|
651
|
+
mode: "dark",
|
|
652
|
+
colors: {
|
|
653
|
+
desktop: "#1a1b1e",
|
|
654
|
+
taskbar: "rgba(26, 27, 30, 0.9)",
|
|
655
|
+
window: "#25262b",
|
|
656
|
+
accent: "#4dabf7"
|
|
657
|
+
},
|
|
658
|
+
window: {
|
|
659
|
+
borderRadius: "8px",
|
|
660
|
+
headerHeight: 40,
|
|
661
|
+
minWidth: 400,
|
|
662
|
+
minHeight: 300,
|
|
663
|
+
defaultWidth: 800,
|
|
664
|
+
defaultHeight: 600,
|
|
665
|
+
shadow: "0 8px 32px rgba(0, 0, 0, 0.2)"
|
|
666
|
+
},
|
|
667
|
+
taskbar: {
|
|
668
|
+
height: 48,
|
|
669
|
+
position: "bottom",
|
|
670
|
+
background: "rgba(0, 0, 0, 0.8)",
|
|
671
|
+
blur: !0
|
|
672
|
+
},
|
|
673
|
+
desktop: {
|
|
674
|
+
background: "linear-gradient(135deg, #1a1b1e 0%, #2d1f3d 100%)",
|
|
675
|
+
iconSize: 64,
|
|
676
|
+
iconSpacing: 16
|
|
677
|
+
}
|
|
678
|
+
}, tt = class {
|
|
679
|
+
mode;
|
|
680
|
+
customColors = null;
|
|
681
|
+
constructor(e = "light") {
|
|
682
|
+
this.mode = e;
|
|
683
|
+
}
|
|
684
|
+
getTheme() {
|
|
685
|
+
let e = this.mode === "light" ? $e : et;
|
|
686
|
+
return this.customColors ? {
|
|
687
|
+
...e,
|
|
688
|
+
colors: {
|
|
689
|
+
...e.colors,
|
|
690
|
+
taskbar: this.customColors.taskbar,
|
|
691
|
+
window: this.customColors.window,
|
|
692
|
+
accent: this.customColors.accent
|
|
693
|
+
}
|
|
694
|
+
} : e;
|
|
695
|
+
}
|
|
696
|
+
setMode(e) {
|
|
697
|
+
this.mode = e;
|
|
698
|
+
}
|
|
699
|
+
setCustomColors(e) {
|
|
700
|
+
this.customColors = e;
|
|
701
|
+
}
|
|
702
|
+
toggle() {
|
|
703
|
+
this.mode = this.mode === "light" ? "dark" : "light";
|
|
704
|
+
}
|
|
705
|
+
}, nt = ["en", "es"], rt = "en", it = () => {
|
|
706
|
+
try {
|
|
707
|
+
let e = localStorage.getItem("fde-desktop:settings"), t = localStorage.getItem("fran-desktop:settings");
|
|
708
|
+
return JSON.parse(e ?? t ?? "{}")?.state?.theme?.mode ?? null;
|
|
709
|
+
} catch {
|
|
710
|
+
return null;
|
|
711
|
+
}
|
|
712
|
+
}, at = it(), ot = () => {
|
|
713
|
+
if (typeof navigator > "u" || !navigator.language) return rt;
|
|
714
|
+
let e = navigator.language.split("-")[0];
|
|
715
|
+
return nt.includes(e) ? e : rt;
|
|
716
|
+
}, st = (() => {
|
|
717
|
+
try {
|
|
718
|
+
let e = localStorage.getItem("fde-desktop:settings"), t = localStorage.getItem("fran-desktop:settings"), n = JSON.parse(e ?? t ?? "{}")?.state?.language;
|
|
719
|
+
return n && nt.includes(n) ? n : ot();
|
|
720
|
+
} catch {
|
|
721
|
+
return ot();
|
|
722
|
+
}
|
|
723
|
+
})(), ct = typeof window < "u" && window.matchMedia?.("(prefers-color-scheme: dark)").matches ? "dark" : "light", X = new tt(at ?? ct), Z = fe()(me((e) => ({
|
|
724
|
+
wallpaper: null,
|
|
725
|
+
wallpaperModule: "default",
|
|
726
|
+
launcherIcon: "FcElectronics",
|
|
727
|
+
font: "system-ui",
|
|
728
|
+
downloadedFonts: [],
|
|
729
|
+
fontSize: 14,
|
|
730
|
+
animationDuration: .3,
|
|
731
|
+
theme: X.getTheme(),
|
|
732
|
+
themeSetManually: at !== null,
|
|
733
|
+
customThemeColors: null,
|
|
734
|
+
language: st,
|
|
735
|
+
setWallpaper: (t) => e({ wallpaper: t }),
|
|
736
|
+
setWallpaperModule: (t) => e({ wallpaperModule: t }),
|
|
737
|
+
setLauncherIcon: (t) => e({ launcherIcon: t }),
|
|
738
|
+
setFont: (t) => e({ font: t }),
|
|
739
|
+
markFontDownloaded: (t) => e((e) => ({ downloadedFonts: e.downloadedFonts.includes(t) ? e.downloadedFonts : [...e.downloadedFonts, t] })),
|
|
740
|
+
setFontSize: (t) => e({ fontSize: t }),
|
|
741
|
+
setAnimationDuration: (t) => e({ animationDuration: t }),
|
|
742
|
+
setThemeMode: (t) => {
|
|
743
|
+
X.setMode(t), e({
|
|
744
|
+
theme: X.getTheme(),
|
|
745
|
+
themeSetManually: !0
|
|
746
|
+
});
|
|
747
|
+
},
|
|
748
|
+
toggleTheme: () => {
|
|
749
|
+
X.toggle(), e({
|
|
750
|
+
theme: X.getTheme(),
|
|
751
|
+
themeSetManually: !0
|
|
752
|
+
});
|
|
753
|
+
},
|
|
754
|
+
setThemeAutomatic: () => e({ themeSetManually: !1 }),
|
|
755
|
+
applySystemTheme: (t) => {
|
|
756
|
+
X.setMode(t), e({ theme: X.getTheme() });
|
|
757
|
+
},
|
|
758
|
+
setCustomThemeColors: (t) => {
|
|
759
|
+
e({ customThemeColors: t });
|
|
760
|
+
},
|
|
761
|
+
setLanguage: (t) => e({ language: t })
|
|
762
|
+
}), {
|
|
763
|
+
name: "fde-desktop:settings",
|
|
764
|
+
storage: pe(() => localStorage)
|
|
765
|
+
})), lt = {
|
|
766
|
+
container: "_container_a0fjd_1",
|
|
767
|
+
flag: "_flag_a0fjd_8"
|
|
768
|
+
}, ut = {
|
|
769
|
+
en: /* @__PURE__ */ q("svg", {
|
|
770
|
+
viewBox: "0 0 60 40",
|
|
771
|
+
className: lt.flag,
|
|
772
|
+
children: [
|
|
773
|
+
/* @__PURE__ */ K("rect", {
|
|
774
|
+
fill: "#012169",
|
|
775
|
+
width: "60",
|
|
776
|
+
height: "40"
|
|
777
|
+
}),
|
|
778
|
+
/* @__PURE__ */ K("path", {
|
|
779
|
+
d: "M0,0 L60,40 M60,0 L0,40",
|
|
780
|
+
stroke: "#fff",
|
|
781
|
+
strokeWidth: "6"
|
|
782
|
+
}),
|
|
783
|
+
/* @__PURE__ */ K("path", {
|
|
784
|
+
d: "M0,0 L60,40 M60,0 L0,40",
|
|
785
|
+
stroke: "#C8102E",
|
|
786
|
+
strokeWidth: "4"
|
|
787
|
+
}),
|
|
788
|
+
/* @__PURE__ */ K("path", {
|
|
789
|
+
d: "M30,0 V40 M0,20 H60",
|
|
790
|
+
stroke: "#fff",
|
|
791
|
+
strokeWidth: "10"
|
|
792
|
+
}),
|
|
793
|
+
/* @__PURE__ */ K("path", {
|
|
794
|
+
d: "M30,0 V40 M0,20 H60",
|
|
795
|
+
stroke: "#C8102E",
|
|
796
|
+
strokeWidth: "6"
|
|
797
|
+
})
|
|
798
|
+
]
|
|
799
|
+
}),
|
|
800
|
+
es: /* @__PURE__ */ q("svg", {
|
|
801
|
+
viewBox: "0 0 60 40",
|
|
802
|
+
className: lt.flag,
|
|
803
|
+
children: [/* @__PURE__ */ K("rect", {
|
|
804
|
+
fill: "#C60B1E",
|
|
805
|
+
width: "60",
|
|
806
|
+
height: "40"
|
|
807
|
+
}), /* @__PURE__ */ K("rect", {
|
|
808
|
+
fill: "#FFC400",
|
|
809
|
+
y: "10",
|
|
810
|
+
width: "60",
|
|
811
|
+
height: "20"
|
|
812
|
+
})]
|
|
813
|
+
})
|
|
814
|
+
}, dt = ({ lang: e, size: t = 20 }) => /* @__PURE__ */ K("div", {
|
|
815
|
+
style: {
|
|
816
|
+
width: t * 1.5,
|
|
817
|
+
height: t
|
|
818
|
+
},
|
|
819
|
+
className: lt.container,
|
|
820
|
+
"aria-label": e === "en" ? "English" : "Español",
|
|
821
|
+
"data-testid": `flag-${e}`,
|
|
822
|
+
children: ut[e]
|
|
823
|
+
}), ft = [
|
|
824
|
+
{
|
|
825
|
+
value: "system-ui",
|
|
826
|
+
label: "System Default",
|
|
827
|
+
stack: "system-ui, Avenir, Helvetica, Arial, sans-serif"
|
|
828
|
+
},
|
|
829
|
+
{
|
|
830
|
+
value: "Courier New",
|
|
831
|
+
label: "Courier New",
|
|
832
|
+
stack: "\"Courier New\", monospace"
|
|
833
|
+
},
|
|
834
|
+
{
|
|
835
|
+
value: "Source Code Pro",
|
|
836
|
+
label: "Source Code Pro",
|
|
837
|
+
stack: "\"Source Code Pro\", monospace"
|
|
838
|
+
},
|
|
839
|
+
{
|
|
840
|
+
value: "Open Sans",
|
|
841
|
+
label: "Open Sans",
|
|
842
|
+
stack: "\"Open Sans\", monospace"
|
|
843
|
+
}
|
|
844
|
+
], pt = Object.fromEntries(ft.map((e) => [e.value, e.stack])), Q = {
|
|
845
|
+
"Source Code Pro": "https://fonts.googleapis.com/css2?family=Source+Code+Pro&display=swap",
|
|
846
|
+
"Open Sans": "https://fonts.googleapis.com/css2?family=Open+Sans&display=swap"
|
|
847
|
+
}, mt = [
|
|
848
|
+
{
|
|
849
|
+
id: "wallpaper",
|
|
850
|
+
label: "Wallpaper",
|
|
851
|
+
fcIcon: "FcPicture",
|
|
852
|
+
description: "Change the desktop background image."
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
id: "appearance",
|
|
856
|
+
label: "Appearance",
|
|
857
|
+
fcIcon: "FcBinoculars",
|
|
858
|
+
description: "Switch between light and dark mode."
|
|
859
|
+
},
|
|
860
|
+
{
|
|
861
|
+
id: "launcher",
|
|
862
|
+
label: "Launcher",
|
|
863
|
+
fcIcon: "FcElectronics",
|
|
864
|
+
description: "Choose the launcher button icon."
|
|
865
|
+
},
|
|
866
|
+
{
|
|
867
|
+
id: "font",
|
|
868
|
+
label: "Font",
|
|
869
|
+
fcIcon: "FcEditImage",
|
|
870
|
+
description: "Select the system font family."
|
|
871
|
+
},
|
|
872
|
+
{
|
|
873
|
+
id: "language",
|
|
874
|
+
label: "Language",
|
|
875
|
+
fcIcon: "FcGlobe",
|
|
876
|
+
description: "Choose your preferred language."
|
|
877
|
+
},
|
|
878
|
+
{
|
|
879
|
+
id: "reset",
|
|
880
|
+
label: "Reset to Default",
|
|
881
|
+
fcIcon: "FcDisclaimer",
|
|
882
|
+
description: "Reset all settings and data to defaults."
|
|
883
|
+
}
|
|
884
|
+
], ht = ({ title: e, description: t, children: n }) => /* @__PURE__ */ q(z, {
|
|
885
|
+
gap: "md",
|
|
886
|
+
p: "md",
|
|
887
|
+
children: [
|
|
888
|
+
/* @__PURE__ */ K(I, {
|
|
889
|
+
fw: 600,
|
|
890
|
+
size: "lg",
|
|
891
|
+
children: e
|
|
892
|
+
}),
|
|
893
|
+
t && /* @__PURE__ */ K(I, {
|
|
894
|
+
size: "sm",
|
|
895
|
+
c: "dimmed",
|
|
896
|
+
children: t
|
|
897
|
+
}),
|
|
898
|
+
n
|
|
899
|
+
]
|
|
900
|
+
}), gt = "/Images/wallpaper.jpg", _t = () => {
|
|
901
|
+
let { t: e } = J("settings"), t = Z((e) => e.wallpaper), n = Z((e) => e.wallpaperModule), r = Z((e) => e.setWallpaper), i = Z((e) => e.setWallpaperModule), [a, o] = G(""), [s, c] = G(!1), l = W(null), u = oe(t ?? void 0) ?? gt, d = H((e) => {
|
|
902
|
+
let t = e.target.files?.[0];
|
|
903
|
+
if (!t) return;
|
|
904
|
+
let n = new FileReader();
|
|
905
|
+
n.onload = (e) => {
|
|
906
|
+
let t = e.target?.result;
|
|
907
|
+
typeof t == "string" && r(t);
|
|
908
|
+
}, n.readAsDataURL(t);
|
|
909
|
+
}, [r]), f = H(() => {
|
|
910
|
+
let e = a.trim();
|
|
911
|
+
e && r(e);
|
|
912
|
+
}, [a, r]), p = H(() => {
|
|
913
|
+
r(null), o("");
|
|
914
|
+
}, [r]), m = H((e) => {
|
|
915
|
+
let t = e.url ? e.url.startsWith("idb://") ? e.url : `/${e.url}` : null;
|
|
916
|
+
t && r(t), c(!1);
|
|
917
|
+
}, [r]);
|
|
918
|
+
return /* @__PURE__ */ q(ht, {
|
|
919
|
+
title: e("wallpaper.title"),
|
|
920
|
+
children: [
|
|
921
|
+
/* @__PURE__ */ K("div", { children: /* @__PURE__ */ K(Qe, {
|
|
922
|
+
value: n,
|
|
923
|
+
onChange: i,
|
|
924
|
+
data: [{
|
|
925
|
+
value: "default",
|
|
926
|
+
label: e("wallpaper.staticImage")
|
|
927
|
+
}],
|
|
928
|
+
fullWidth: !0
|
|
929
|
+
}) }),
|
|
930
|
+
/* @__PURE__ */ K("img", {
|
|
931
|
+
src: u,
|
|
932
|
+
alt: e("wallpaper.wallpaperPreview"),
|
|
933
|
+
style: {
|
|
934
|
+
width: "100%",
|
|
935
|
+
height: 180,
|
|
936
|
+
objectFit: "cover",
|
|
937
|
+
borderRadius: 8
|
|
938
|
+
}
|
|
939
|
+
}),
|
|
940
|
+
/* @__PURE__ */ q(P, { children: [
|
|
941
|
+
/* @__PURE__ */ K("input", {
|
|
942
|
+
ref: l,
|
|
943
|
+
type: "file",
|
|
944
|
+
accept: "image/*",
|
|
945
|
+
style: { display: "none" },
|
|
946
|
+
onChange: d,
|
|
947
|
+
"aria-label": e("wallpaper.uploadAria", { defaultValue: "Upload wallpaper file" })
|
|
948
|
+
}),
|
|
949
|
+
/* @__PURE__ */ K(L, {
|
|
950
|
+
variant: "light",
|
|
951
|
+
onClick: () => c(!0),
|
|
952
|
+
children: e("wallpaper.chooseFromImages")
|
|
953
|
+
}),
|
|
954
|
+
/* @__PURE__ */ K(L, {
|
|
955
|
+
variant: "light",
|
|
956
|
+
onClick: () => l.current?.click(),
|
|
957
|
+
children: e("wallpaper.uploadFromDisk")
|
|
958
|
+
}),
|
|
959
|
+
/* @__PURE__ */ K(L, {
|
|
960
|
+
variant: "subtle",
|
|
961
|
+
color: "red",
|
|
962
|
+
onClick: p,
|
|
963
|
+
children: e("wallpaper.resetToDefault")
|
|
964
|
+
})
|
|
965
|
+
] }),
|
|
966
|
+
/* @__PURE__ */ q(P, {
|
|
967
|
+
align: "flex-end",
|
|
968
|
+
children: [/* @__PURE__ */ K(w, {
|
|
969
|
+
label: e("wallpaper.orEnterUrl"),
|
|
970
|
+
placeholder: "https://example.com/image.jpg",
|
|
971
|
+
value: a,
|
|
972
|
+
onChange: (e) => o(e.currentTarget.value),
|
|
973
|
+
style: { flex: 1 }
|
|
974
|
+
}), /* @__PURE__ */ K(L, {
|
|
975
|
+
onClick: f,
|
|
976
|
+
disabled: !a.trim(),
|
|
977
|
+
children: e("common:actions.apply")
|
|
978
|
+
})]
|
|
979
|
+
}),
|
|
980
|
+
/* @__PURE__ */ K(se, {
|
|
981
|
+
opened: s,
|
|
982
|
+
acceptedMimeTypes: ["image/*"],
|
|
983
|
+
onConfirm: m,
|
|
984
|
+
onCancel: () => c(!1)
|
|
985
|
+
})
|
|
986
|
+
]
|
|
987
|
+
});
|
|
988
|
+
}, vt = () => {
|
|
989
|
+
let { t: e } = J("settings"), t = Z((e) => e.theme.mode), n = Z((e) => e.themeSetManually), r = Z((e) => e.customThemeColors), i = Z((e) => e.animationDuration), a = Z((e) => e.setThemeMode), o = Z((e) => e.setThemeAutomatic), s = Z((e) => e.setCustomThemeColors), c = Z((e) => e.setAnimationDuration), l = r ? "custom" : n ? t : "system", u = H((e) => {
|
|
990
|
+
e === "system" ? (o(), s(null)) : e === "custom" ? s({
|
|
991
|
+
taskbar: "#339af0",
|
|
992
|
+
window: "#ffffff",
|
|
993
|
+
accent: "#339af0"
|
|
994
|
+
}) : (a(e), s(null));
|
|
995
|
+
}, [
|
|
996
|
+
a,
|
|
997
|
+
o,
|
|
998
|
+
s
|
|
999
|
+
]), d = H((e) => (t) => {
|
|
1000
|
+
r && s({
|
|
1001
|
+
...r,
|
|
1002
|
+
[e]: t
|
|
1003
|
+
});
|
|
1004
|
+
}, [r, s]), f = H((e) => {
|
|
1005
|
+
c(e);
|
|
1006
|
+
}, [c]), p = l === "custom";
|
|
1007
|
+
return /* @__PURE__ */ q(z, {
|
|
1008
|
+
gap: "md",
|
|
1009
|
+
p: "md",
|
|
1010
|
+
children: [
|
|
1011
|
+
/* @__PURE__ */ K(I, {
|
|
1012
|
+
fw: 600,
|
|
1013
|
+
size: "lg",
|
|
1014
|
+
children: e("appearance.title")
|
|
1015
|
+
}),
|
|
1016
|
+
/* @__PURE__ */ K(I, {
|
|
1017
|
+
size: "sm",
|
|
1018
|
+
c: "dimmed",
|
|
1019
|
+
children: e("appearance.description")
|
|
1020
|
+
}),
|
|
1021
|
+
/* @__PURE__ */ K(Qe, {
|
|
1022
|
+
value: l,
|
|
1023
|
+
onChange: u,
|
|
1024
|
+
data: [
|
|
1025
|
+
{
|
|
1026
|
+
label: e("common:theme.light"),
|
|
1027
|
+
value: "light"
|
|
1028
|
+
},
|
|
1029
|
+
{
|
|
1030
|
+
label: e("common:theme.dark"),
|
|
1031
|
+
value: "dark"
|
|
1032
|
+
},
|
|
1033
|
+
{
|
|
1034
|
+
label: e("common:theme.system"),
|
|
1035
|
+
value: "system"
|
|
1036
|
+
},
|
|
1037
|
+
{
|
|
1038
|
+
label: e("common:theme.custom"),
|
|
1039
|
+
value: "custom"
|
|
1040
|
+
}
|
|
1041
|
+
],
|
|
1042
|
+
"aria-label": e("appearance.themeMode", { defaultValue: "Theme mode" })
|
|
1043
|
+
}),
|
|
1044
|
+
/* @__PURE__ */ q(z, {
|
|
1045
|
+
gap: "sm",
|
|
1046
|
+
mt: "md",
|
|
1047
|
+
children: [
|
|
1048
|
+
/* @__PURE__ */ q(m, { children: [/* @__PURE__ */ K(I, {
|
|
1049
|
+
size: "sm",
|
|
1050
|
+
fw: 500,
|
|
1051
|
+
mb: "xs",
|
|
1052
|
+
c: p ? "dark" : void 0,
|
|
1053
|
+
children: e("appearance.taskbar")
|
|
1054
|
+
}), /* @__PURE__ */ K(_, {
|
|
1055
|
+
value: r?.taskbar ?? "#339af0",
|
|
1056
|
+
onChange: d("taskbar"),
|
|
1057
|
+
disabled: !p
|
|
1058
|
+
})] }),
|
|
1059
|
+
/* @__PURE__ */ q(m, { children: [/* @__PURE__ */ K(I, {
|
|
1060
|
+
size: "sm",
|
|
1061
|
+
fw: 500,
|
|
1062
|
+
mb: "xs",
|
|
1063
|
+
c: p ? "dark" : void 0,
|
|
1064
|
+
children: e("appearance.window")
|
|
1065
|
+
}), /* @__PURE__ */ K(_, {
|
|
1066
|
+
value: r?.window ?? "#ffffff",
|
|
1067
|
+
onChange: d("window"),
|
|
1068
|
+
disabled: !p
|
|
1069
|
+
})] }),
|
|
1070
|
+
/* @__PURE__ */ q(m, { children: [/* @__PURE__ */ K(I, {
|
|
1071
|
+
size: "sm",
|
|
1072
|
+
fw: 500,
|
|
1073
|
+
mb: "xs",
|
|
1074
|
+
c: p ? "dark" : void 0,
|
|
1075
|
+
children: e("appearance.accent")
|
|
1076
|
+
}), /* @__PURE__ */ K(_, {
|
|
1077
|
+
value: r?.accent ?? "#339af0",
|
|
1078
|
+
onChange: d("accent"),
|
|
1079
|
+
disabled: !p
|
|
1080
|
+
})] })
|
|
1081
|
+
]
|
|
1082
|
+
}),
|
|
1083
|
+
/* @__PURE__ */ q(m, {
|
|
1084
|
+
mt: "md",
|
|
1085
|
+
children: [
|
|
1086
|
+
/* @__PURE__ */ K(I, {
|
|
1087
|
+
size: "sm",
|
|
1088
|
+
fw: 500,
|
|
1089
|
+
mb: "xs",
|
|
1090
|
+
children: e("appearance.animationDuration")
|
|
1091
|
+
}),
|
|
1092
|
+
/* @__PURE__ */ K(I, {
|
|
1093
|
+
size: "xs",
|
|
1094
|
+
c: "dimmed",
|
|
1095
|
+
mb: "sm",
|
|
1096
|
+
children: e("appearance.animationDescription")
|
|
1097
|
+
}),
|
|
1098
|
+
/* @__PURE__ */ q(P, {
|
|
1099
|
+
align: "center",
|
|
1100
|
+
gap: "md",
|
|
1101
|
+
children: [/* @__PURE__ */ K(k, {
|
|
1102
|
+
value: i,
|
|
1103
|
+
onChange: f,
|
|
1104
|
+
min: .1,
|
|
1105
|
+
max: 1,
|
|
1106
|
+
step: .1,
|
|
1107
|
+
style: { flex: 1 },
|
|
1108
|
+
marks: [
|
|
1109
|
+
{
|
|
1110
|
+
value: .1,
|
|
1111
|
+
label: "0.1s"
|
|
1112
|
+
},
|
|
1113
|
+
{
|
|
1114
|
+
value: .5,
|
|
1115
|
+
label: "0.5s"
|
|
1116
|
+
},
|
|
1117
|
+
{
|
|
1118
|
+
value: 1,
|
|
1119
|
+
label: "1.0s"
|
|
1120
|
+
}
|
|
1121
|
+
],
|
|
1122
|
+
"aria-label": e("appearance.animationDuration")
|
|
1123
|
+
}), /* @__PURE__ */ q(I, {
|
|
1124
|
+
size: "sm",
|
|
1125
|
+
fw: 500,
|
|
1126
|
+
style: { minWidth: 40 },
|
|
1127
|
+
children: [i.toFixed(1), "s"]
|
|
1128
|
+
})]
|
|
1129
|
+
})
|
|
1130
|
+
]
|
|
1131
|
+
})
|
|
1132
|
+
]
|
|
1133
|
+
});
|
|
1134
|
+
}, yt = () => {
|
|
1135
|
+
let e = Z((e) => e.launcherIcon), t = Z((e) => e.setLauncherIcon), [n, r] = G([]), [i, a] = G(""), o = de(i);
|
|
1136
|
+
U(() => {
|
|
1137
|
+
import("react-icons/fc").then((e) => {
|
|
1138
|
+
r(Object.keys(e).filter((e) => e.startsWith("Fc")).sort());
|
|
1139
|
+
});
|
|
1140
|
+
}, []);
|
|
1141
|
+
let s = o ? n.filter((e) => e.toLowerCase().includes(o.toLowerCase())) : n, c = H((e) => {
|
|
1142
|
+
t(e);
|
|
1143
|
+
}, [t]);
|
|
1144
|
+
return /* @__PURE__ */ q(ht, {
|
|
1145
|
+
title: "Launcher Icon",
|
|
1146
|
+
description: `Selected: ${e}`,
|
|
1147
|
+
children: [/* @__PURE__ */ K(w, {
|
|
1148
|
+
placeholder: "Search icons...",
|
|
1149
|
+
value: i,
|
|
1150
|
+
onChange: (e) => a(e.currentTarget.value),
|
|
1151
|
+
"aria-label": "Search icons"
|
|
1152
|
+
}), /* @__PURE__ */ K(E, {
|
|
1153
|
+
style: {
|
|
1154
|
+
flex: 1,
|
|
1155
|
+
height: 300
|
|
1156
|
+
},
|
|
1157
|
+
children: /* @__PURE__ */ K(g, {
|
|
1158
|
+
cols: 8,
|
|
1159
|
+
spacing: 4,
|
|
1160
|
+
children: s.map((t) => /* @__PURE__ */ K(y, {
|
|
1161
|
+
label: t,
|
|
1162
|
+
withArrow: !0,
|
|
1163
|
+
openDelay: 400,
|
|
1164
|
+
children: /* @__PURE__ */ K(M, {
|
|
1165
|
+
onClick: () => c(t),
|
|
1166
|
+
"aria-label": t,
|
|
1167
|
+
"aria-pressed": t === e,
|
|
1168
|
+
style: {
|
|
1169
|
+
padding: 6,
|
|
1170
|
+
borderRadius: 6,
|
|
1171
|
+
background: t === e ? "var(--mantine-primary-color-light)" : "transparent",
|
|
1172
|
+
display: "flex",
|
|
1173
|
+
alignItems: "center",
|
|
1174
|
+
justifyContent: "center"
|
|
1175
|
+
},
|
|
1176
|
+
children: /* @__PURE__ */ K(R, {
|
|
1177
|
+
fcIcon: t,
|
|
1178
|
+
size: 24
|
|
1179
|
+
})
|
|
1180
|
+
})
|
|
1181
|
+
}, t))
|
|
1182
|
+
})
|
|
1183
|
+
})]
|
|
1184
|
+
});
|
|
1185
|
+
}, bt = (e) => {
|
|
1186
|
+
let t = Q[e];
|
|
1187
|
+
if (!t || document.head.querySelector(`link[data-font="${e}"]`)) return;
|
|
1188
|
+
let n = document.createElement("link");
|
|
1189
|
+
n.rel = "stylesheet", n.href = t, n.setAttribute("data-font", e), document.head.appendChild(n);
|
|
1190
|
+
}, xt = async (e) => {
|
|
1191
|
+
let t = Q[e];
|
|
1192
|
+
if (!t) throw Error(`Font "${e}" not found in Google Fonts`);
|
|
1193
|
+
let n = await fetch(t);
|
|
1194
|
+
if (!n.ok) throw Error(`Failed to download font: HTTP ${n.status}`);
|
|
1195
|
+
return await n.text(), bt(e), {
|
|
1196
|
+
font: e,
|
|
1197
|
+
success: !0
|
|
1198
|
+
};
|
|
1199
|
+
}, St = (e) => {
|
|
1200
|
+
let t = ge(), n = Z((e) => e.markFontDownloaded), r = Z((e) => e.downloadedFonts), i = e ? r.includes(e) : !1, a = e && !i && Q[e], o = he({
|
|
1201
|
+
queryKey: ["font", e ?? ""],
|
|
1202
|
+
queryFn: async ({ queryKey: e }) => {
|
|
1203
|
+
let [, t] = e;
|
|
1204
|
+
if (!t || !Q[t]) throw Error(`Font "${t}" not available`);
|
|
1205
|
+
let r = await xt(t);
|
|
1206
|
+
return r.success && n(t), r;
|
|
1207
|
+
},
|
|
1208
|
+
enabled: !!a,
|
|
1209
|
+
staleTime: Infinity,
|
|
1210
|
+
gcTime: Infinity,
|
|
1211
|
+
retry: !1
|
|
1212
|
+
}), s = o.isFetching ? {
|
|
1213
|
+
status: "downloading",
|
|
1214
|
+
loaded: 0,
|
|
1215
|
+
total: null,
|
|
1216
|
+
percent: null,
|
|
1217
|
+
error: null
|
|
1218
|
+
} : o.isError ? {
|
|
1219
|
+
status: "error",
|
|
1220
|
+
loaded: 0,
|
|
1221
|
+
total: null,
|
|
1222
|
+
percent: null,
|
|
1223
|
+
error: o.error?.message ?? "Unknown error"
|
|
1224
|
+
} : o.isSuccess ? {
|
|
1225
|
+
status: "done",
|
|
1226
|
+
loaded: 0,
|
|
1227
|
+
total: 0,
|
|
1228
|
+
percent: 100,
|
|
1229
|
+
error: null
|
|
1230
|
+
} : {
|
|
1231
|
+
status: "idle",
|
|
1232
|
+
loaded: 0,
|
|
1233
|
+
total: null,
|
|
1234
|
+
percent: null,
|
|
1235
|
+
error: null
|
|
1236
|
+
}, c = () => {
|
|
1237
|
+
e && t.removeQueries({ queryKey: ["font", e] });
|
|
1238
|
+
};
|
|
1239
|
+
return {
|
|
1240
|
+
...o,
|
|
1241
|
+
progress: s,
|
|
1242
|
+
isDownloaded: i,
|
|
1243
|
+
reset: c
|
|
1244
|
+
};
|
|
1245
|
+
}, Ct = ce[1], wt = ({ status: e, error: t, onDownload: n }) => {
|
|
1246
|
+
let { t: r } = J("settings");
|
|
1247
|
+
return t ? /* @__PURE__ */ K(Ne, {
|
|
1248
|
+
color: Ct,
|
|
1249
|
+
variant: "filled",
|
|
1250
|
+
size: "sm",
|
|
1251
|
+
"aria-label": `Download error: ${t}`,
|
|
1252
|
+
children: r("common:status.error")
|
|
1253
|
+
}) : /* @__PURE__ */ K(L, {
|
|
1254
|
+
size: "xs",
|
|
1255
|
+
variant: "light",
|
|
1256
|
+
onClick: n,
|
|
1257
|
+
loading: e === "downloading",
|
|
1258
|
+
"aria-label": r("font.download"),
|
|
1259
|
+
children: r("font.download")
|
|
1260
|
+
});
|
|
1261
|
+
}, Tt = () => {
|
|
1262
|
+
let { t: e } = J("settings"), t = Z((e) => e.font), n = Z((e) => e.setFont), r = Z((e) => e.fontSize), i = Z((e) => e.setFontSize), a = Z((e) => e.downloadedFonts), o = Z((e) => e.markFontDownloaded), [s, c] = G(null), l = St(s);
|
|
1263
|
+
U(() => {
|
|
1264
|
+
l.isSuccess && l.data?.success && s && (a.includes(s) || o(s));
|
|
1265
|
+
}, [
|
|
1266
|
+
l.isSuccess,
|
|
1267
|
+
l.data,
|
|
1268
|
+
s,
|
|
1269
|
+
a,
|
|
1270
|
+
o
|
|
1271
|
+
]);
|
|
1272
|
+
let u = H((e) => {
|
|
1273
|
+
c(e);
|
|
1274
|
+
}, []), d = (e) => a.includes(e) ? "done" : s === e ? l.progress.status : "idle", f = (e) => s === e ? l.progress.error : null, p = H((e) => {
|
|
1275
|
+
let t = e.trim();
|
|
1276
|
+
t && (Q[t] = `https://fonts.googleapis.com/css2?family=${t.replace(/\s+/g, "+")}&display=swap`, c(t));
|
|
1277
|
+
}, []), m = ft.map((e) => e.value), h = a.filter((e) => !m.includes(e));
|
|
1278
|
+
return /* @__PURE__ */ q(z, {
|
|
1279
|
+
gap: "md",
|
|
1280
|
+
p: "md",
|
|
1281
|
+
children: [
|
|
1282
|
+
/* @__PURE__ */ K(I, {
|
|
1283
|
+
fw: 600,
|
|
1284
|
+
size: "lg",
|
|
1285
|
+
children: e("font.title")
|
|
1286
|
+
}),
|
|
1287
|
+
/* @__PURE__ */ K(I, {
|
|
1288
|
+
size: "sm",
|
|
1289
|
+
c: "dimmed",
|
|
1290
|
+
children: e("font.description")
|
|
1291
|
+
}),
|
|
1292
|
+
/* @__PURE__ */ K(Y.Group, {
|
|
1293
|
+
value: t,
|
|
1294
|
+
onChange: n,
|
|
1295
|
+
"aria-label": e("font.selectionAria", { defaultValue: "Font selection" }),
|
|
1296
|
+
children: /* @__PURE__ */ q(z, {
|
|
1297
|
+
gap: "xs",
|
|
1298
|
+
children: [ft.map((e) => {
|
|
1299
|
+
let t = !!Q[e.value], n = a.includes(e.value), r = d(e.value), i = f(e.value), o = !t || n || r === "done";
|
|
1300
|
+
return /* @__PURE__ */ K(N, {
|
|
1301
|
+
p: "sm",
|
|
1302
|
+
withBorder: !0,
|
|
1303
|
+
radius: "md",
|
|
1304
|
+
children: /* @__PURE__ */ q(z, {
|
|
1305
|
+
gap: "xs",
|
|
1306
|
+
children: [/* @__PURE__ */ q(P, {
|
|
1307
|
+
justify: "space-between",
|
|
1308
|
+
children: [/* @__PURE__ */ K(Y, {
|
|
1309
|
+
value: e.value,
|
|
1310
|
+
label: e.label,
|
|
1311
|
+
"aria-label": e.label,
|
|
1312
|
+
disabled: !o
|
|
1313
|
+
}), /* @__PURE__ */ q(P, {
|
|
1314
|
+
gap: "xs",
|
|
1315
|
+
align: "center",
|
|
1316
|
+
children: [o && /* @__PURE__ */ K(I, {
|
|
1317
|
+
size: "sm",
|
|
1318
|
+
c: "dimmed",
|
|
1319
|
+
style: { fontFamily: e.stack },
|
|
1320
|
+
children: "AaBbCcDd"
|
|
1321
|
+
}), t && /* @__PURE__ */ K(wt, {
|
|
1322
|
+
fontLabel: e.label,
|
|
1323
|
+
status: r,
|
|
1324
|
+
error: i,
|
|
1325
|
+
onDownload: () => u(e.value),
|
|
1326
|
+
isDownloaded: n
|
|
1327
|
+
})]
|
|
1328
|
+
})]
|
|
1329
|
+
}), t && r === "downloading" && /* @__PURE__ */ K(j, { state: l.progress })]
|
|
1330
|
+
})
|
|
1331
|
+
}, e.value);
|
|
1332
|
+
}), h.map((e) => /* @__PURE__ */ K(N, {
|
|
1333
|
+
p: "sm",
|
|
1334
|
+
withBorder: !0,
|
|
1335
|
+
radius: "md",
|
|
1336
|
+
children: /* @__PURE__ */ q(P, {
|
|
1337
|
+
justify: "space-between",
|
|
1338
|
+
children: [/* @__PURE__ */ K(Y, {
|
|
1339
|
+
value: e,
|
|
1340
|
+
label: e,
|
|
1341
|
+
"aria-label": e
|
|
1342
|
+
}), /* @__PURE__ */ K(I, {
|
|
1343
|
+
size: "sm",
|
|
1344
|
+
c: "dimmed",
|
|
1345
|
+
style: { fontFamily: `"${e}"` },
|
|
1346
|
+
children: "AaBbCcDd"
|
|
1347
|
+
})]
|
|
1348
|
+
})
|
|
1349
|
+
}, e))]
|
|
1350
|
+
})
|
|
1351
|
+
}),
|
|
1352
|
+
/* @__PURE__ */ K(N, {
|
|
1353
|
+
p: "sm",
|
|
1354
|
+
withBorder: !0,
|
|
1355
|
+
radius: "md",
|
|
1356
|
+
children: /* @__PURE__ */ q(z, {
|
|
1357
|
+
gap: "xs",
|
|
1358
|
+
children: [/* @__PURE__ */ q(P, {
|
|
1359
|
+
justify: "space-between",
|
|
1360
|
+
children: [/* @__PURE__ */ K(I, {
|
|
1361
|
+
size: "sm",
|
|
1362
|
+
fw: 500,
|
|
1363
|
+
children: e("font.fontSize")
|
|
1364
|
+
}), /* @__PURE__ */ q(I, {
|
|
1365
|
+
size: "sm",
|
|
1366
|
+
c: "dimmed",
|
|
1367
|
+
children: [r, "px"]
|
|
1368
|
+
})]
|
|
1369
|
+
}), /* @__PURE__ */ K(k, {
|
|
1370
|
+
value: r,
|
|
1371
|
+
onChange: i,
|
|
1372
|
+
min: 10,
|
|
1373
|
+
max: 24,
|
|
1374
|
+
step: 1,
|
|
1375
|
+
marks: [
|
|
1376
|
+
{ value: 10 },
|
|
1377
|
+
{ value: 14 },
|
|
1378
|
+
{ value: 18 },
|
|
1379
|
+
{ value: 20 },
|
|
1380
|
+
{ value: 24 }
|
|
1381
|
+
],
|
|
1382
|
+
"aria-label": e("font.fontSizeAria", { defaultValue: "Font size" })
|
|
1383
|
+
})]
|
|
1384
|
+
})
|
|
1385
|
+
}),
|
|
1386
|
+
/* @__PURE__ */ K(Et, {
|
|
1387
|
+
onDownload: p,
|
|
1388
|
+
activeDownload: s,
|
|
1389
|
+
fontDownload: l
|
|
1390
|
+
})
|
|
1391
|
+
]
|
|
1392
|
+
});
|
|
1393
|
+
}, Et = ({ onDownload: e, activeDownload: t, fontDownload: n }) => {
|
|
1394
|
+
let { t: r } = J("settings"), [i, a] = G(""), o = t === i.trim(), s = o ? n.progress.status : "idle", c = o && n.progress.status === "error", l = H((e) => {
|
|
1395
|
+
a(e), c && n.reset?.();
|
|
1396
|
+
}, [c, n]), u = H(() => {
|
|
1397
|
+
e(i);
|
|
1398
|
+
}, [i, e]), d = o && s === "done";
|
|
1399
|
+
return /* @__PURE__ */ K(N, {
|
|
1400
|
+
p: "sm",
|
|
1401
|
+
withBorder: !0,
|
|
1402
|
+
radius: "md",
|
|
1403
|
+
children: /* @__PURE__ */ q(z, {
|
|
1404
|
+
gap: "xs",
|
|
1405
|
+
children: [
|
|
1406
|
+
/* @__PURE__ */ q(I, {
|
|
1407
|
+
size: "sm",
|
|
1408
|
+
fw: 500,
|
|
1409
|
+
children: [
|
|
1410
|
+
r("font.downloadByName"),
|
|
1411
|
+
" ",
|
|
1412
|
+
/* @__PURE__ */ K("a", {
|
|
1413
|
+
href: "https://fonts.google.com/",
|
|
1414
|
+
target: "_blank",
|
|
1415
|
+
rel: "noreferrer",
|
|
1416
|
+
children: r("font.fromGoogleFonts")
|
|
1417
|
+
})
|
|
1418
|
+
]
|
|
1419
|
+
}),
|
|
1420
|
+
/* @__PURE__ */ q(P, {
|
|
1421
|
+
gap: "xs",
|
|
1422
|
+
align: "flex-start",
|
|
1423
|
+
children: [/* @__PURE__ */ K(w, {
|
|
1424
|
+
placeholder: r("font.namePlaceholder", { defaultValue: "e.g. Open Sans" }),
|
|
1425
|
+
value: i,
|
|
1426
|
+
onChange: (e) => l(e.currentTarget.value),
|
|
1427
|
+
style: { flex: 1 },
|
|
1428
|
+
"aria-label": r("font.customNameAria", { defaultValue: "Custom font name" }),
|
|
1429
|
+
error: c ? r("font.downloadError") : void 0
|
|
1430
|
+
}), /* @__PURE__ */ K(L, {
|
|
1431
|
+
onClick: u,
|
|
1432
|
+
disabled: !i.trim() || s === "downloading",
|
|
1433
|
+
loading: s === "downloading",
|
|
1434
|
+
"aria-label": r("font.downloadCustomAria", { defaultValue: "Download custom font" }),
|
|
1435
|
+
style: { marginTop: c ? 0 : void 0 },
|
|
1436
|
+
children: r("font.download")
|
|
1437
|
+
})]
|
|
1438
|
+
}),
|
|
1439
|
+
s === "downloading" && /* @__PURE__ */ K(j, { state: n.progress }),
|
|
1440
|
+
d && /* @__PURE__ */ K(I, {
|
|
1441
|
+
size: "xs",
|
|
1442
|
+
c: "dimmed",
|
|
1443
|
+
children: r("font.downloadSuccess")
|
|
1444
|
+
})
|
|
1445
|
+
]
|
|
1446
|
+
})
|
|
1447
|
+
});
|
|
1448
|
+
}, Dt = ["en", "es"], Ot = "en", kt = {
|
|
1449
|
+
en: "English",
|
|
1450
|
+
es: "Español"
|
|
1451
|
+
}, At = () => {
|
|
1452
|
+
let { t: e } = J("settings"), t = Z((e) => e.language), n = Z((e) => e.setLanguage), r = H((e) => {
|
|
1453
|
+
n(e);
|
|
1454
|
+
}, [n]);
|
|
1455
|
+
return /* @__PURE__ */ K(ht, {
|
|
1456
|
+
title: e("language.title"),
|
|
1457
|
+
description: e("language.description"),
|
|
1458
|
+
children: /* @__PURE__ */ K(z, {
|
|
1459
|
+
gap: "xs",
|
|
1460
|
+
children: Dt.map((e) => /* @__PURE__ */ K(M, {
|
|
1461
|
+
onClick: () => r(e),
|
|
1462
|
+
"aria-label": kt[e],
|
|
1463
|
+
"aria-pressed": e === t,
|
|
1464
|
+
style: {
|
|
1465
|
+
padding: "12px 16px",
|
|
1466
|
+
borderRadius: 8,
|
|
1467
|
+
width: "100%",
|
|
1468
|
+
background: e === t ? "var(--mantine-primary-color-light)" : "transparent",
|
|
1469
|
+
border: e === t ? "1px solid var(--mantine-primary-color-filled)" : "1px solid transparent",
|
|
1470
|
+
transition: "all 0.15s ease",
|
|
1471
|
+
cursor: "pointer"
|
|
1472
|
+
},
|
|
1473
|
+
children: /* @__PURE__ */ q(P, {
|
|
1474
|
+
gap: "sm",
|
|
1475
|
+
children: [/* @__PURE__ */ K(dt, {
|
|
1476
|
+
lang: e,
|
|
1477
|
+
size: 24
|
|
1478
|
+
}), /* @__PURE__ */ K(I, {
|
|
1479
|
+
fw: e === t ? 600 : 400,
|
|
1480
|
+
children: kt[e]
|
|
1481
|
+
})]
|
|
1482
|
+
})
|
|
1483
|
+
}, e))
|
|
1484
|
+
})
|
|
1485
|
+
});
|
|
1486
|
+
};
|
|
1487
|
+
//#endregion
|
|
1488
|
+
//#region src/utils/clearBrowserData.ts
|
|
1489
|
+
async function jt(e) {
|
|
1490
|
+
let t = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : void 0;
|
|
1491
|
+
if (t) {
|
|
1492
|
+
if (!e?.keepServiceWorker && "serviceWorker" in t.navigator) {
|
|
1493
|
+
let e = await t.navigator.serviceWorker.getRegistrations();
|
|
1494
|
+
for (let t of e) await t.unregister();
|
|
1495
|
+
}
|
|
1496
|
+
if ("caches" in t) {
|
|
1497
|
+
let e = await t.caches.keys();
|
|
1498
|
+
for (let n of e) await t.caches.delete(n);
|
|
1499
|
+
}
|
|
1500
|
+
if (!e?.keepIndexedDB && "indexedDB" in t) {
|
|
1501
|
+
let e = await t.indexedDB.databases();
|
|
1502
|
+
for (let n of e) n.name && t.indexedDB.deleteDatabase(n.name);
|
|
1503
|
+
}
|
|
1504
|
+
!e?.keepLocalStorage && "localStorage" in t && t.localStorage.clear(), !e?.keepSessionStorage && "sessionStorage" in t && t.sessionStorage.clear();
|
|
1505
|
+
}
|
|
1506
|
+
}
|
|
1507
|
+
//#endregion
|
|
1508
|
+
//#region src/utils/resetDockerWorkspace.ts
|
|
1509
|
+
async function Mt() {
|
|
1510
|
+
F() && (await fetch("/api/fs/reset", { method: "POST" }), await fetch("/api/fs/seed", { method: "POST" }));
|
|
1511
|
+
}
|
|
1512
|
+
//#endregion
|
|
1513
|
+
//#region src/components/Apps/SettingsApp/sections/ResetSettings.tsx
|
|
1514
|
+
var Nt = () => {
|
|
1515
|
+
let { t: e } = J("settings"), [t, n] = G(!1), r = H(() => {
|
|
1516
|
+
n(!0);
|
|
1517
|
+
}, []), i = H(() => {
|
|
1518
|
+
n(!1);
|
|
1519
|
+
}, []), a = H(async () => {
|
|
1520
|
+
await Mt(), await jt(), window.location.reload();
|
|
1521
|
+
}, []), o = H(async () => {
|
|
1522
|
+
await Mt(), await jt({ keepIndexedDB: !0 }), window.location.reload();
|
|
1523
|
+
}, []);
|
|
1524
|
+
return /* @__PURE__ */ q(ht, {
|
|
1525
|
+
title: e("reset.title"),
|
|
1526
|
+
description: e("reset.description"),
|
|
1527
|
+
children: [/* @__PURE__ */ K(L, {
|
|
1528
|
+
color: "red",
|
|
1529
|
+
onClick: r,
|
|
1530
|
+
style: { alignSelf: "flex-start" },
|
|
1531
|
+
children: e("reset.resetButton")
|
|
1532
|
+
}), t && /* @__PURE__ */ K(m, {
|
|
1533
|
+
style: {
|
|
1534
|
+
position: "fixed",
|
|
1535
|
+
top: 0,
|
|
1536
|
+
left: 0,
|
|
1537
|
+
right: 0,
|
|
1538
|
+
bottom: 0,
|
|
1539
|
+
background: "rgba(0,0,0,0.5)",
|
|
1540
|
+
display: "flex",
|
|
1541
|
+
alignItems: "center",
|
|
1542
|
+
justifyContent: "center",
|
|
1543
|
+
zIndex: 1e3
|
|
1544
|
+
},
|
|
1545
|
+
role: "dialog",
|
|
1546
|
+
"aria-label": "Confirm reset",
|
|
1547
|
+
children: /* @__PURE__ */ K(m, {
|
|
1548
|
+
style: {
|
|
1549
|
+
background: "var(--mantine-color-default)",
|
|
1550
|
+
borderRadius: 8,
|
|
1551
|
+
padding: 24,
|
|
1552
|
+
maxWidth: 400,
|
|
1553
|
+
width: "100%"
|
|
1554
|
+
},
|
|
1555
|
+
children: /* @__PURE__ */ q(z, {
|
|
1556
|
+
gap: "md",
|
|
1557
|
+
children: [
|
|
1558
|
+
/* @__PURE__ */ K(I, {
|
|
1559
|
+
fw: 600,
|
|
1560
|
+
size: "lg",
|
|
1561
|
+
ta: "center",
|
|
1562
|
+
children: e("reset.modalTitle")
|
|
1563
|
+
}),
|
|
1564
|
+
/* @__PURE__ */ K(I, {
|
|
1565
|
+
size: "sm",
|
|
1566
|
+
c: "dimmed",
|
|
1567
|
+
ta: "center",
|
|
1568
|
+
children: e("reset.modalDescription")
|
|
1569
|
+
}),
|
|
1570
|
+
/* @__PURE__ */ q(P, {
|
|
1571
|
+
justify: "center",
|
|
1572
|
+
gap: "xs",
|
|
1573
|
+
mt: "md",
|
|
1574
|
+
children: [
|
|
1575
|
+
/* @__PURE__ */ K(L, {
|
|
1576
|
+
variant: "default",
|
|
1577
|
+
onClick: i,
|
|
1578
|
+
children: e("reset.goBack")
|
|
1579
|
+
}),
|
|
1580
|
+
/* @__PURE__ */ K(L, {
|
|
1581
|
+
color: "blue",
|
|
1582
|
+
onClick: o,
|
|
1583
|
+
children: e("reset.keepFiles")
|
|
1584
|
+
}),
|
|
1585
|
+
/* @__PURE__ */ K(L, {
|
|
1586
|
+
color: "red",
|
|
1587
|
+
onClick: a,
|
|
1588
|
+
children: e("reset.burnEverything")
|
|
1589
|
+
})
|
|
1590
|
+
]
|
|
1591
|
+
})
|
|
1592
|
+
]
|
|
1593
|
+
})
|
|
1594
|
+
})
|
|
1595
|
+
})]
|
|
1596
|
+
});
|
|
1597
|
+
}, $ = {
|
|
1598
|
+
root: "_root_77epl_1",
|
|
1599
|
+
sidebar: "_sidebar_77epl_8",
|
|
1600
|
+
navItem: "_navItem_77epl_16",
|
|
1601
|
+
content: "_content_77epl_41",
|
|
1602
|
+
overviewPadding: "_overviewPadding_77epl_47",
|
|
1603
|
+
sectionCard: "_sectionCard_77epl_51",
|
|
1604
|
+
toolbar: "_toolbar_77epl_60",
|
|
1605
|
+
dirtyIndicator: "_dirtyIndicator_77epl_70",
|
|
1606
|
+
versionFooter: "_versionFooter_77epl_77"
|
|
1607
|
+
}, Pt = {
|
|
1608
|
+
name: "Francisco Núñez Palomares",
|
|
1609
|
+
title: "Fullstack Developer & DevOps",
|
|
1610
|
+
email: "frannunpal@gmail.com",
|
|
1611
|
+
phone: "+34 600 275 210",
|
|
1612
|
+
location: "Spain",
|
|
1613
|
+
linkedin: "https://www.linkedin.com/in/francisco-núñez-palomares-74a484171/",
|
|
1614
|
+
github: "https://github.com/frannunpal",
|
|
1615
|
+
cvUrls: {
|
|
1616
|
+
en: "Desktop/CV_2026_English.pdf",
|
|
1617
|
+
es: "Desktop/CV 2026.pdf"
|
|
1618
|
+
}
|
|
1619
|
+
}, Ft = /* @__PURE__ */ e({ default: () => zt }), It = "0.4.0", Lt = () => It, Rt = {
|
|
1620
|
+
wallpaper: _t,
|
|
1621
|
+
appearance: vt,
|
|
1622
|
+
launcher: yt,
|
|
1623
|
+
font: Tt,
|
|
1624
|
+
language: At,
|
|
1625
|
+
reset: Nt
|
|
1626
|
+
}, zt = ({ window: e, notifyReady: t }) => {
|
|
1627
|
+
let { t: n } = J("settings"), [r, i] = G(null), [a, o] = G(!1), s = ie((e) => e.windows), c = e?.id ?? s.find((e) => e.content === "settings")?.id, l = Z((e) => e.wallpaper), u = Z((e) => e.wallpaperModule), d = Z((e) => e.theme), f = Z((e) => e.font), p = Z((e) => e.fontSize), m = Z((e) => e.launcherIcon), h = Z((e) => e.customThemeColors), _ = Z((e) => e.animationDuration), v = Z((e) => e.setWallpaper), y = Z((e) => e.setWallpaperModule), b = Z((e) => e.setFont), x = Z((e) => e.setFontSize), S = Z((e) => e.setLauncherIcon), C = Z((e) => e.setThemeMode), w = Z((e) => e.setCustomThemeColors), T = Z((e) => e.setThemeAutomatic), E = Z((e) => e.setAnimationDuration), D = W(null);
|
|
1628
|
+
U(() => {
|
|
1629
|
+
D.current === null && (D.current = {
|
|
1630
|
+
wallpaper: l,
|
|
1631
|
+
wallpaperModule: u,
|
|
1632
|
+
themeMode: d.mode,
|
|
1633
|
+
font: f,
|
|
1634
|
+
fontSize: p,
|
|
1635
|
+
launcherIcon: m,
|
|
1636
|
+
customThemeColors: h,
|
|
1637
|
+
animationDuration: _
|
|
1638
|
+
});
|
|
1639
|
+
}, [
|
|
1640
|
+
l,
|
|
1641
|
+
u,
|
|
1642
|
+
d.mode,
|
|
1643
|
+
f,
|
|
1644
|
+
p,
|
|
1645
|
+
m,
|
|
1646
|
+
h,
|
|
1647
|
+
_
|
|
1648
|
+
]), U(() => {
|
|
1649
|
+
if (!D.current) return;
|
|
1650
|
+
let e = {
|
|
1651
|
+
wallpaper: l,
|
|
1652
|
+
wallpaperModule: u,
|
|
1653
|
+
themeMode: d.mode,
|
|
1654
|
+
font: f,
|
|
1655
|
+
fontSize: p,
|
|
1656
|
+
launcherIcon: m,
|
|
1657
|
+
customThemeColors: h,
|
|
1658
|
+
animationDuration: _
|
|
1659
|
+
};
|
|
1660
|
+
o(JSON.stringify(e) !== JSON.stringify(D.current));
|
|
1661
|
+
}, [
|
|
1662
|
+
l,
|
|
1663
|
+
u,
|
|
1664
|
+
d.mode,
|
|
1665
|
+
f,
|
|
1666
|
+
p,
|
|
1667
|
+
m,
|
|
1668
|
+
h,
|
|
1669
|
+
_
|
|
1670
|
+
]);
|
|
1671
|
+
let ee = H(() => {
|
|
1672
|
+
let e = D.current;
|
|
1673
|
+
e && (v(e.wallpaper), y(e.wallpaperModule), b(e.font), x(e.fontSize), S(e.launcherIcon), E(e.animationDuration), e.customThemeColors ? w(e.customThemeColors) : (w(null), T()), C(e.themeMode), o(!1));
|
|
1674
|
+
}, [
|
|
1675
|
+
v,
|
|
1676
|
+
y,
|
|
1677
|
+
b,
|
|
1678
|
+
x,
|
|
1679
|
+
S,
|
|
1680
|
+
E,
|
|
1681
|
+
C,
|
|
1682
|
+
w,
|
|
1683
|
+
T
|
|
1684
|
+
]);
|
|
1685
|
+
U(() => {
|
|
1686
|
+
c && B.getState().reset(c);
|
|
1687
|
+
}, [c]), U(() => {
|
|
1688
|
+
c && B.getState().setIsDirty(c, a);
|
|
1689
|
+
}, [c, a]), U(() => {
|
|
1690
|
+
t?.({
|
|
1691
|
+
...e?.contentData ?? {},
|
|
1692
|
+
discard: ee
|
|
1693
|
+
});
|
|
1694
|
+
}, [
|
|
1695
|
+
e,
|
|
1696
|
+
t,
|
|
1697
|
+
ee
|
|
1698
|
+
]), ae({
|
|
1699
|
+
isDirtyGetter: H(() => {
|
|
1700
|
+
if (!D.current) return !1;
|
|
1701
|
+
let e = {
|
|
1702
|
+
wallpaper: Z.getState().wallpaper,
|
|
1703
|
+
wallpaperModule: Z.getState().wallpaperModule,
|
|
1704
|
+
themeMode: Z.getState().theme.mode,
|
|
1705
|
+
font: Z.getState().font,
|
|
1706
|
+
fontSize: Z.getState().fontSize,
|
|
1707
|
+
launcherIcon: Z.getState().launcherIcon,
|
|
1708
|
+
customThemeColors: Z.getState().customThemeColors,
|
|
1709
|
+
animationDuration: Z.getState().animationDuration
|
|
1710
|
+
};
|
|
1711
|
+
return JSON.stringify(e) !== JSON.stringify(D.current);
|
|
1712
|
+
}, []),
|
|
1713
|
+
windowId: c,
|
|
1714
|
+
onDiscard: ee,
|
|
1715
|
+
onSave: () => {}
|
|
1716
|
+
});
|
|
1717
|
+
let O = H((e) => {
|
|
1718
|
+
i(e);
|
|
1719
|
+
}, []), k = H(() => {
|
|
1720
|
+
i(null);
|
|
1721
|
+
}, []), te = H(() => {
|
|
1722
|
+
globalThis.location.href = `mailto:${Pt.email}`;
|
|
1723
|
+
}, []), A = r ? Rt[r] : null;
|
|
1724
|
+
return /* @__PURE__ */ q("div", {
|
|
1725
|
+
className: $.root,
|
|
1726
|
+
children: [/* @__PURE__ */ K("aside", {
|
|
1727
|
+
className: $.sidebar,
|
|
1728
|
+
children: /* @__PURE__ */ q("nav", {
|
|
1729
|
+
"aria-label": "Settings sections",
|
|
1730
|
+
children: [/* @__PURE__ */ q("button", {
|
|
1731
|
+
className: $.navItem,
|
|
1732
|
+
"data-active": r === null || void 0,
|
|
1733
|
+
onClick: k,
|
|
1734
|
+
"aria-label": "All Settings",
|
|
1735
|
+
"aria-current": r === null ? "page" : void 0,
|
|
1736
|
+
children: [/* @__PURE__ */ K(R, {
|
|
1737
|
+
fcIcon: "FcList",
|
|
1738
|
+
size: 16
|
|
1739
|
+
}), /* @__PURE__ */ K(I, {
|
|
1740
|
+
size: "xs",
|
|
1741
|
+
ml: 6,
|
|
1742
|
+
truncate: !0,
|
|
1743
|
+
children: n("all")
|
|
1744
|
+
})]
|
|
1745
|
+
}), mt.map((e) => /* @__PURE__ */ q("button", {
|
|
1746
|
+
className: $.navItem,
|
|
1747
|
+
"data-active": r === e.id || void 0,
|
|
1748
|
+
onClick: () => O(e.id),
|
|
1749
|
+
"aria-label": e.label,
|
|
1750
|
+
"aria-current": r === e.id ? "page" : void 0,
|
|
1751
|
+
children: [/* @__PURE__ */ K(R, {
|
|
1752
|
+
fcIcon: e.fcIcon,
|
|
1753
|
+
size: 16
|
|
1754
|
+
}), /* @__PURE__ */ K(I, {
|
|
1755
|
+
size: "xs",
|
|
1756
|
+
ml: 6,
|
|
1757
|
+
truncate: !0,
|
|
1758
|
+
children: n(`sections.${e.id}.label`)
|
|
1759
|
+
})]
|
|
1760
|
+
}, e.id))]
|
|
1761
|
+
})
|
|
1762
|
+
}), /* @__PURE__ */ K("main", {
|
|
1763
|
+
className: $.content,
|
|
1764
|
+
children: A ? /* @__PURE__ */ K(A, {}) : /* @__PURE__ */ q(z, {
|
|
1765
|
+
className: $.overviewPadding,
|
|
1766
|
+
h: "100%",
|
|
1767
|
+
justify: "space-between",
|
|
1768
|
+
gap: 0,
|
|
1769
|
+
children: [
|
|
1770
|
+
/* @__PURE__ */ q("div", { children: [/* @__PURE__ */ K(I, {
|
|
1771
|
+
fw: 500,
|
|
1772
|
+
mb: "md",
|
|
1773
|
+
size: "sm",
|
|
1774
|
+
c: "dimmed",
|
|
1775
|
+
children: n("all")
|
|
1776
|
+
}), /* @__PURE__ */ K(g, {
|
|
1777
|
+
cols: 2,
|
|
1778
|
+
spacing: "sm",
|
|
1779
|
+
children: mt.map((e) => /* @__PURE__ */ K(re, {
|
|
1780
|
+
withBorder: !0,
|
|
1781
|
+
padding: "md",
|
|
1782
|
+
radius: "md",
|
|
1783
|
+
className: $.sectionCard,
|
|
1784
|
+
onClick: () => O(e.id),
|
|
1785
|
+
role: "button",
|
|
1786
|
+
"aria-label": `Open ${e.label} settings`,
|
|
1787
|
+
children: /* @__PURE__ */ q(z, {
|
|
1788
|
+
gap: 6,
|
|
1789
|
+
align: "flex-start",
|
|
1790
|
+
children: [
|
|
1791
|
+
/* @__PURE__ */ K(R, {
|
|
1792
|
+
fcIcon: e.fcIcon,
|
|
1793
|
+
size: 28
|
|
1794
|
+
}),
|
|
1795
|
+
/* @__PURE__ */ K(I, {
|
|
1796
|
+
size: "sm",
|
|
1797
|
+
fw: 500,
|
|
1798
|
+
children: n(`sections.${e.id}.label`)
|
|
1799
|
+
}),
|
|
1800
|
+
/* @__PURE__ */ K(I, {
|
|
1801
|
+
size: "xs",
|
|
1802
|
+
c: "dimmed",
|
|
1803
|
+
children: n(`sections.${e.id}.description`)
|
|
1804
|
+
})
|
|
1805
|
+
]
|
|
1806
|
+
})
|
|
1807
|
+
}, e.id))
|
|
1808
|
+
})] }),
|
|
1809
|
+
/* @__PURE__ */ K(L, {
|
|
1810
|
+
gradient: {
|
|
1811
|
+
from: "blue",
|
|
1812
|
+
to: "cyan",
|
|
1813
|
+
deg: 90
|
|
1814
|
+
},
|
|
1815
|
+
onClick: te,
|
|
1816
|
+
children: "FDE: Fran Desktop Environment"
|
|
1817
|
+
}),
|
|
1818
|
+
/* @__PURE__ */ K(I, {
|
|
1819
|
+
size: "xs",
|
|
1820
|
+
c: "dimmed",
|
|
1821
|
+
ta: "center",
|
|
1822
|
+
className: $.versionFooter,
|
|
1823
|
+
children: Lt()
|
|
1824
|
+
})
|
|
1825
|
+
]
|
|
1826
|
+
})
|
|
1827
|
+
})]
|
|
1828
|
+
});
|
|
1829
|
+
};
|
|
1830
|
+
//#endregion
|
|
1831
|
+
export { tt as _, Ot as a, bt as c, ft as d, pt as f, Z as g, it as h, jt as i, ht as l, dt as m, Ft as n, Dt as o, Q as p, Pt as r, St as s, zt as t, mt as u };
|