@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
package/dist/index.d.ts
CHANGED
|
@@ -1,2019 +1,2258 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import i18n from 'i18next';
|
|
5
|
-
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
declare
|
|
112
|
-
|
|
113
|
-
declare
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
interface
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
};
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
'
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
}
|
|
494
|
-
|
|
495
|
-
declare
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
declare
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
}
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
declare
|
|
550
|
-
|
|
551
|
-
declare
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
declare
|
|
759
|
-
|
|
760
|
-
declare
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
declare
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
declare
|
|
809
|
-
|
|
810
|
-
declare
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
declare
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
}
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
declare
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
declare
|
|
916
|
-
|
|
917
|
-
interface
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
declare
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
}
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
declare
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
declare
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
declare
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
declare
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
declare const
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
declare
|
|
1062
|
-
|
|
1063
|
-
declare
|
|
1064
|
-
|
|
1065
|
-
declare function
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
declare
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
declare const
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
error
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
|
|
1420
|
-
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
declare
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
declare
|
|
1545
|
-
|
|
1546
|
-
declare function
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
declare const
|
|
1563
|
-
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
declare const
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
|
|
1621
|
-
|
|
1622
|
-
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
declare
|
|
1630
|
-
|
|
1631
|
-
type
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
declare
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
1696
|
-
declare
|
|
1697
|
-
|
|
1698
|
-
declare
|
|
1699
|
-
|
|
1700
|
-
declare
|
|
1701
|
-
|
|
1702
|
-
declare function
|
|
1703
|
-
|
|
1704
|
-
declare
|
|
1705
|
-
|
|
1706
|
-
|
|
1707
|
-
|
|
1708
|
-
declare
|
|
1709
|
-
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
declare const
|
|
1748
|
-
|
|
1749
|
-
declare const
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
declare const
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
declare
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
declare
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
};
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
declare
|
|
1819
|
-
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
declare const
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
declare
|
|
1872
|
-
|
|
1873
|
-
declare const
|
|
1874
|
-
|
|
1875
|
-
declare const
|
|
1876
|
-
|
|
1877
|
-
declare
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
}
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
|
|
2017
|
-
|
|
2018
|
-
|
|
2019
|
-
|
|
1
|
+
import { default as default_2 } from 'react';
|
|
2
|
+
import { FC } from 'react';
|
|
3
|
+
import { FetchStatus } from '@tanstack/react-query';
|
|
4
|
+
import { default as i18n } from 'i18next';
|
|
5
|
+
import { IconBaseProps } from 'react-icons';
|
|
6
|
+
import { IconType } from 'react-icons';
|
|
7
|
+
import { LazyExoticComponent } from 'react';
|
|
8
|
+
import { MantineThemeOverride } from '@mantine/core';
|
|
9
|
+
import { MouseEvent as MouseEvent_2 } from 'react';
|
|
10
|
+
import { NamedExoticComponent } from 'react';
|
|
11
|
+
import { PersistOptions } from 'zustand/middleware';
|
|
12
|
+
import { QueryObserverResult } from '@tanstack/react-query';
|
|
13
|
+
import { ReactElement } from 'react';
|
|
14
|
+
import { ReactNode } from 'react';
|
|
15
|
+
import { RefetchOptions } from '@tanstack/react-query';
|
|
16
|
+
import { RefObject } from 'react';
|
|
17
|
+
import { StoreApi } from 'zustand';
|
|
18
|
+
import { TargetAndTransition } from 'framer-motion';
|
|
19
|
+
import { Transition } from 'framer-motion';
|
|
20
|
+
import { UseBoundStore } from 'zustand';
|
|
21
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
22
|
+
import { Variants } from 'framer-motion';
|
|
23
|
+
|
|
24
|
+
export declare interface AdaptiveDimensions {
|
|
25
|
+
defaultWidth: number;
|
|
26
|
+
defaultHeight: number;
|
|
27
|
+
minWidth: number;
|
|
28
|
+
minHeight: number;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export declare const ANIMATION_DURATION = 0.3;
|
|
32
|
+
|
|
33
|
+
export declare const APP_ID_TO_TRANSLATION_KEY: Record<string, string>;
|
|
34
|
+
|
|
35
|
+
export declare const APP_IDS: {
|
|
36
|
+
readonly WELCOME: "welcome";
|
|
37
|
+
readonly NOTEPAD: "notepad";
|
|
38
|
+
readonly UPLOADER: "uploader";
|
|
39
|
+
readonly FILES: "files";
|
|
40
|
+
readonly SETTINGS: "settings";
|
|
41
|
+
readonly PDF: "pdf";
|
|
42
|
+
readonly CALENDAR: "calendar";
|
|
43
|
+
readonly STORYBOOK: "storybook";
|
|
44
|
+
readonly LINKEDIN: "linkedin";
|
|
45
|
+
readonly GITHUB: "github";
|
|
46
|
+
readonly IMAGE_VIEWER: "image-viewer";
|
|
47
|
+
readonly DOS_EMULATOR: "dos-emulator";
|
|
48
|
+
readonly DOOM: "doom";
|
|
49
|
+
readonly TERMINAL: "terminal";
|
|
50
|
+
readonly CODE_SERVER: "code-server";
|
|
51
|
+
readonly DEVICE_INFO: "device-info";
|
|
52
|
+
readonly MENUEDIT: "menuedit";
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export declare const APP_VERSION: string;
|
|
56
|
+
|
|
57
|
+
export declare type AppComponent = FC<WindowContentProps>;
|
|
58
|
+
|
|
59
|
+
declare type AppComponent_2 = FC<WindowContentProps>;
|
|
60
|
+
|
|
61
|
+
export declare const AppEmptyState: FC<AppEmptyStateProps>;
|
|
62
|
+
|
|
63
|
+
declare interface AppEmptyStateProps {
|
|
64
|
+
label?: string;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Appends a dirty-indicator element to menu items if dirty.
|
|
69
|
+
* Returns a new array when dirty (immutable), or the original array when not dirty.
|
|
70
|
+
*
|
|
71
|
+
* @param items - The array of menu elements
|
|
72
|
+
* @param isDirty - Whether there are unsaved changes
|
|
73
|
+
* @returns The same array if not dirty, or a new array with dirty-indicator appended
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* const items: AppMenuElement[] = [
|
|
77
|
+
* { type: 'menu', label: 'File', items: [...] }
|
|
78
|
+
* ];
|
|
79
|
+
*
|
|
80
|
+
* return appendDirtyIndicator(items, isDirty);
|
|
81
|
+
*/
|
|
82
|
+
export declare function appendDirtyIndicator(items: AppMenuElement[], isDirty: boolean): AppMenuElement[];
|
|
83
|
+
|
|
84
|
+
export declare interface AppEntry {
|
|
85
|
+
id: string;
|
|
86
|
+
name: string;
|
|
87
|
+
icon: string;
|
|
88
|
+
fcIcon?: string;
|
|
89
|
+
iconUrl?: string;
|
|
90
|
+
iconColor?: string;
|
|
91
|
+
defaultWidth?: number;
|
|
92
|
+
defaultHeight?: number;
|
|
93
|
+
minWidth?: number | false;
|
|
94
|
+
minHeight?: number | false;
|
|
95
|
+
canMaximize?: boolean;
|
|
96
|
+
alwaysOnTop?: boolean;
|
|
97
|
+
autoLoad?: {
|
|
98
|
+
url: string;
|
|
99
|
+
name?: string;
|
|
100
|
+
};
|
|
101
|
+
hasContextMenu?: boolean;
|
|
102
|
+
singleWindow?: boolean;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export declare interface AppFileHandler {
|
|
106
|
+
appId: string;
|
|
107
|
+
mimeTypes: string[] | ((mimeType: string) => boolean);
|
|
108
|
+
transformContentData: (node: FileNode) => Record<string, unknown>;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export declare const AppIcon: FC<AppIconProps>;
|
|
112
|
+
|
|
113
|
+
declare interface AppIconProps {
|
|
114
|
+
fcIcon?: string;
|
|
115
|
+
fallback?: string;
|
|
116
|
+
iconUrl?: string;
|
|
117
|
+
size?: number;
|
|
118
|
+
color?: string;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export declare type AppId = (typeof APP_IDS)[keyof typeof APP_IDS];
|
|
122
|
+
|
|
123
|
+
declare type AppLoader = () => Promise<unknown>;
|
|
124
|
+
|
|
125
|
+
export declare const AppLoading: FC<AppLoadingProps>;
|
|
126
|
+
|
|
127
|
+
export declare interface AppLoadingProps {
|
|
128
|
+
message?: string;
|
|
129
|
+
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
export declare const AppMenuBar: FC<AppMenuBarProps>;
|
|
133
|
+
|
|
134
|
+
declare interface AppMenuBarProps {
|
|
135
|
+
elements: AppMenuElement[];
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
declare interface AppMenuCombobox {
|
|
139
|
+
type: 'combobox';
|
|
140
|
+
label?: string;
|
|
141
|
+
options: string[];
|
|
142
|
+
value: string;
|
|
143
|
+
onChange: (value: string) => void;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
declare interface AppMenuDirtyIndicator {
|
|
147
|
+
type: 'dirty-indicator';
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
declare interface AppMenuDropdown {
|
|
151
|
+
type: 'menu';
|
|
152
|
+
label: string;
|
|
153
|
+
icon?: string;
|
|
154
|
+
items: MenuItem[];
|
|
155
|
+
rightSection?: ReactNode;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
export declare type AppMenuElement = AppMenuDropdown | AppMenuCombobox | AppMenuSwitch | AppMenuSlider | AppMenuTextInput | AppMenuNumberInput | AppMenuSelect | AppMenuDirtyIndicator;
|
|
159
|
+
|
|
160
|
+
declare interface AppMenuNumberInput {
|
|
161
|
+
type: 'number-input';
|
|
162
|
+
label?: string;
|
|
163
|
+
value: number;
|
|
164
|
+
onChange: (value: number) => void;
|
|
165
|
+
min?: number;
|
|
166
|
+
max?: number;
|
|
167
|
+
step?: number;
|
|
168
|
+
placeholder?: string;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
declare interface AppMenuSelect {
|
|
172
|
+
type: 'select';
|
|
173
|
+
label?: string;
|
|
174
|
+
options: {
|
|
175
|
+
value: string;
|
|
176
|
+
label: string;
|
|
177
|
+
}[];
|
|
178
|
+
value: string;
|
|
179
|
+
onChange: (value: string) => void;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
declare interface AppMenuSlider {
|
|
183
|
+
type: 'slider';
|
|
184
|
+
label?: string;
|
|
185
|
+
min: number;
|
|
186
|
+
max: number;
|
|
187
|
+
value: number;
|
|
188
|
+
onChange: (value: number) => void;
|
|
189
|
+
marks?: {
|
|
190
|
+
value: number;
|
|
191
|
+
label?: string;
|
|
192
|
+
}[];
|
|
193
|
+
labelFormat?: (value: number) => string;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
declare interface AppMenuSwitch {
|
|
197
|
+
type: 'switch';
|
|
198
|
+
label: string;
|
|
199
|
+
checked: boolean;
|
|
200
|
+
onChange: (value: boolean) => void;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
declare interface AppMenuTextInput {
|
|
204
|
+
type: 'text-input';
|
|
205
|
+
placeholder?: string;
|
|
206
|
+
value: string;
|
|
207
|
+
onChange: (value: string) => void;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
export declare interface AppReadyContextValue {
|
|
211
|
+
notifyReady: (contentData?: Record<string, unknown>) => void;
|
|
212
|
+
getContentData: () => Record<string, unknown> | undefined;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
export declare const AppReadyProvider: FC<{
|
|
216
|
+
children: ReactNode;
|
|
217
|
+
}>;
|
|
218
|
+
|
|
219
|
+
declare type AppRegisteredCallback = (manifest: CustomAppManifest) => void;
|
|
220
|
+
|
|
221
|
+
export declare interface AppRegistration {
|
|
222
|
+
component: AppComponent_2;
|
|
223
|
+
buildMenuBar?: MenuBarBuilder;
|
|
224
|
+
MenuBarComponent?: MenuBarComponent;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
export declare interface AppRegistryEntry {
|
|
228
|
+
component?: AppComponent;
|
|
229
|
+
loader?: () => Promise<{
|
|
230
|
+
default: AppComponent;
|
|
231
|
+
}>;
|
|
232
|
+
menuBarLoader?: () => Promise<{
|
|
233
|
+
default: MenuBarComponent;
|
|
234
|
+
}>;
|
|
235
|
+
buildMenuBar?: MenuBarBuilder;
|
|
236
|
+
MenuBarComponent?: MenuBarComponent;
|
|
237
|
+
isLazy?: boolean;
|
|
238
|
+
appName?: string;
|
|
239
|
+
singleWindow?: boolean;
|
|
240
|
+
defaultWidth?: number;
|
|
241
|
+
defaultHeight?: number;
|
|
242
|
+
minWidth?: number | false;
|
|
243
|
+
minHeight?: number | false;
|
|
244
|
+
canMaximize?: boolean;
|
|
245
|
+
alwaysOnTop?: boolean;
|
|
246
|
+
icon?: string;
|
|
247
|
+
fcIcon?: string;
|
|
248
|
+
iconUrl?: string;
|
|
249
|
+
iconColor?: string;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
declare type AppReloadCallback = (appId: string) => void;
|
|
253
|
+
|
|
254
|
+
export declare const APPS: AppEntry[];
|
|
255
|
+
|
|
256
|
+
export declare interface AppsManifest {
|
|
257
|
+
version: string;
|
|
258
|
+
generated: string;
|
|
259
|
+
apps: CustomAppManifest[];
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
declare interface AppTempMemoryState {
|
|
263
|
+
snapshots: Record<string, unknown>;
|
|
264
|
+
setSnapshot: (appId: string, snapshot: unknown) => void;
|
|
265
|
+
getSnapshot: (appId: string) => unknown | null;
|
|
266
|
+
clearSnapshot: (appId: string) => void;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
declare type AppUnregisteredCallback = (appId: string) => void;
|
|
270
|
+
|
|
271
|
+
export declare const AVAILABLE_FONTS: {
|
|
272
|
+
value: string;
|
|
273
|
+
label: string;
|
|
274
|
+
stack: string;
|
|
275
|
+
}[];
|
|
276
|
+
|
|
277
|
+
export declare type Breadcrumb = {
|
|
278
|
+
id: string | null;
|
|
279
|
+
name: string;
|
|
280
|
+
};
|
|
281
|
+
|
|
282
|
+
export declare type Breakpoint = (typeof BREAKPOINTS)[keyof typeof BREAKPOINTS];
|
|
283
|
+
|
|
284
|
+
export declare const BREAKPOINTS: {
|
|
285
|
+
readonly MOBILE: 768;
|
|
286
|
+
readonly TABLET: 1024;
|
|
287
|
+
readonly DESKTOP: 1280;
|
|
288
|
+
};
|
|
289
|
+
|
|
290
|
+
export declare const buildBreadcrumbs: (currentFolderId: string | null, fsNodes: FSNode[]) => Breadcrumb[];
|
|
291
|
+
|
|
292
|
+
export declare const CalendarApp: FC<WindowContentProps>;
|
|
293
|
+
|
|
294
|
+
export declare const CalendarAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
295
|
+
|
|
296
|
+
export declare const centerWindowPosition: (viewportWidth: number, viewportHeight: number, windowWidth: number, windowHeight: number) => {
|
|
297
|
+
x: number;
|
|
298
|
+
y: number;
|
|
299
|
+
};
|
|
300
|
+
|
|
301
|
+
export declare function checkHMREndpointExists(): Promise<boolean>;
|
|
302
|
+
|
|
303
|
+
export declare function clearBrowserData(options?: ClearBrowserDataOptions): Promise<void>;
|
|
304
|
+
|
|
305
|
+
export declare interface ClearBrowserDataOptions {
|
|
306
|
+
keepIndexedDB?: boolean;
|
|
307
|
+
keepServiceWorker?: boolean;
|
|
308
|
+
keepLocalStorage?: boolean;
|
|
309
|
+
keepSessionStorage?: boolean;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
export declare function clearManifestCache(): void;
|
|
313
|
+
|
|
314
|
+
export declare type ClipboardAction = 'copy' | 'cut' | null;
|
|
315
|
+
|
|
316
|
+
export declare interface ClipboardState {
|
|
317
|
+
content: FSNode[];
|
|
318
|
+
action: ClipboardAction;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
declare interface CloseModalActions {
|
|
322
|
+
openModal: (windowId: string, onSave: () => void, onDiscard: () => void) => void;
|
|
323
|
+
closeModal: () => void;
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
declare interface CloseModalState {
|
|
327
|
+
isOpen: boolean;
|
|
328
|
+
windowId: string | null;
|
|
329
|
+
onSave: (() => void) | null;
|
|
330
|
+
onDiscard: (() => void) | null;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
export declare const CollapsibleSection: FC<CollapsibleSectionProps>;
|
|
334
|
+
|
|
335
|
+
declare interface CollapsibleSectionProps {
|
|
336
|
+
title: string;
|
|
337
|
+
fcIcon?: string;
|
|
338
|
+
expanded: boolean;
|
|
339
|
+
onToggle: () => void;
|
|
340
|
+
children: ReactNode;
|
|
341
|
+
className?: string;
|
|
342
|
+
'aria-label'?: string;
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
export declare const ColorPicker: FC<ColorPickerProps>;
|
|
346
|
+
|
|
347
|
+
declare interface ColorPickerProps {
|
|
348
|
+
value: string;
|
|
349
|
+
onChange: (color: string) => void;
|
|
350
|
+
error?: string;
|
|
351
|
+
disabled?: boolean;
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
export declare const ContextMenu: FC<DesktopContextMenuProps>;
|
|
355
|
+
|
|
356
|
+
export declare const ContextMenuAnchor: FC<MenuPosition>;
|
|
357
|
+
|
|
358
|
+
export declare function convertToAppEntry(manifest: CustomAppManifest): Partial<AppEntry>;
|
|
359
|
+
|
|
360
|
+
export declare const CORE_APP_IDS: string[];
|
|
361
|
+
|
|
362
|
+
export declare const CORE_APPS: AppEntry[];
|
|
363
|
+
|
|
364
|
+
export declare const CORE_REGISTRY: Record<string, AppRegistryEntry>;
|
|
365
|
+
|
|
366
|
+
export declare const createDesktopIcon: (input: DesktopIconInput) => DesktopIconEntity;
|
|
367
|
+
|
|
368
|
+
export declare const createEaseIn: (duration: number) => Transition;
|
|
369
|
+
|
|
370
|
+
export declare const createEaseOut: (duration: number) => Transition;
|
|
371
|
+
|
|
372
|
+
export declare const createFile: (name: string, content: string, parentId?: string | null, mimeType?: string, url?: string) => FileNode;
|
|
373
|
+
|
|
374
|
+
export declare const createFolder: (name: string, parentId?: string | null, options?: CreateFolderOptions) => FolderNode;
|
|
375
|
+
|
|
376
|
+
export declare interface CreateFolderOptions {
|
|
377
|
+
iconName?: string;
|
|
378
|
+
iconColor?: string;
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
export declare const CreateItemApp: FC<WindowContentProps>;
|
|
382
|
+
|
|
383
|
+
export declare const CreateItemAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
384
|
+
|
|
385
|
+
export declare const CreateItemContextMenu: FC<CreateItemContextMenuProps>;
|
|
386
|
+
|
|
387
|
+
declare interface CreateItemContextMenuProps {
|
|
388
|
+
owner: string;
|
|
389
|
+
parentId: string | null;
|
|
390
|
+
currentPath: string;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
export declare const createLauncherFolder: (input: LauncherFolderInput) => LauncherFolder;
|
|
394
|
+
|
|
395
|
+
export declare const createMaximizeTransition: (duration: number) => Transition;
|
|
396
|
+
|
|
397
|
+
export declare const createMinimizeVariant: (duration: number) => (deltaX: number, deltaY: number) => TargetAndTransition;
|
|
398
|
+
|
|
399
|
+
export declare const createPanelVariants: (duration: number) => {
|
|
400
|
+
initial: {
|
|
401
|
+
opacity: number;
|
|
402
|
+
y: number;
|
|
403
|
+
scale: number;
|
|
404
|
+
};
|
|
405
|
+
animate: {
|
|
406
|
+
opacity: number;
|
|
407
|
+
y: number;
|
|
408
|
+
scale: number;
|
|
409
|
+
transition: Transition;
|
|
410
|
+
};
|
|
411
|
+
exit: {
|
|
412
|
+
opacity: number;
|
|
413
|
+
y: number;
|
|
414
|
+
scale: number;
|
|
415
|
+
transition: Transition;
|
|
416
|
+
};
|
|
417
|
+
};
|
|
418
|
+
|
|
419
|
+
export declare const createPredefinedLauncherFolder: (input: Omit<LauncherFolderInput, "isPredefined">) => LauncherFolder;
|
|
420
|
+
|
|
421
|
+
export declare const createRestoreVariant: (duration: number) => (deltaX: number, deltaY: number) => TargetAndTransition;
|
|
422
|
+
|
|
423
|
+
export declare const createWindow: (input: WindowInput) => WindowEntity;
|
|
424
|
+
|
|
425
|
+
export declare const createWindowVariants: (duration: number) => Variants;
|
|
426
|
+
|
|
427
|
+
export declare const CUSTOM_APPS_FOLDER_ID = "launcher-folder-custom-apps";
|
|
428
|
+
|
|
429
|
+
export declare const CustomAppLoader: FC<CustomAppLoaderProps>;
|
|
430
|
+
|
|
431
|
+
declare interface CustomAppLoaderProps {
|
|
432
|
+
appId: string;
|
|
433
|
+
windowIcon?: string;
|
|
434
|
+
notifyReady?: WindowContentProps['notifyReady'];
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
export declare const CustomAppLoadingScreen: FC<CustomAppLoadingScreenProps>;
|
|
438
|
+
|
|
439
|
+
declare interface CustomAppLoadingScreenProps {
|
|
440
|
+
progress: LoadingProgress;
|
|
441
|
+
windowIcon?: string;
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
export declare interface CustomAppManifest {
|
|
445
|
+
id: string;
|
|
446
|
+
name: string;
|
|
447
|
+
version: string;
|
|
448
|
+
icon: string;
|
|
449
|
+
iconUrl?: string;
|
|
450
|
+
entry: string;
|
|
451
|
+
window: {
|
|
452
|
+
defaultWidth?: number;
|
|
453
|
+
defaultHeight?: number;
|
|
454
|
+
minWidth?: number | false;
|
|
455
|
+
minHeight?: number | false;
|
|
456
|
+
canMaximize?: boolean;
|
|
457
|
+
alwaysOnTop?: boolean;
|
|
458
|
+
singleWindow?: boolean;
|
|
459
|
+
};
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
export declare const CustomAppNotSupported: FC<CustomAppNotSupportedProps>;
|
|
463
|
+
|
|
464
|
+
declare interface CustomAppNotSupportedProps {
|
|
465
|
+
appId: string;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
export declare const CustomAppOffline: FC<CustomAppOfflineProps>;
|
|
469
|
+
|
|
470
|
+
declare interface CustomAppOfflineProps {
|
|
471
|
+
appId: string;
|
|
472
|
+
}
|
|
473
|
+
|
|
474
|
+
export declare interface CustomAppState {
|
|
475
|
+
mountedApps: Record<string, MountedAppState>;
|
|
476
|
+
registeredApps: Record<string, CustomAppManifest>;
|
|
477
|
+
hmrConnected: boolean;
|
|
478
|
+
hmrError: string | null;
|
|
479
|
+
devServerOffline: boolean;
|
|
480
|
+
hmrRetryCount: number;
|
|
481
|
+
setAppLoading: (appId: string) => void;
|
|
482
|
+
setAppLoaded: (appId: string) => void;
|
|
483
|
+
setAppReady: (appId: string, instance?: unknown) => void;
|
|
484
|
+
setAppError: (appId: string, error: string) => void;
|
|
485
|
+
clearApp: (appId: string) => void;
|
|
486
|
+
registerApp: (manifest: CustomAppManifest) => void;
|
|
487
|
+
unregisterApp: (appId: string) => void;
|
|
488
|
+
setHmrConnected: (connected: boolean) => void;
|
|
489
|
+
setHmrError: (error: string | null) => void;
|
|
490
|
+
setDevServerOffline: (offline: boolean) => void;
|
|
491
|
+
incrementHmrRetry: () => void;
|
|
492
|
+
resetHmrRetry: () => void;
|
|
493
|
+
}
|
|
494
|
+
|
|
495
|
+
export declare interface CustomThemeColors {
|
|
496
|
+
taskbar: string;
|
|
497
|
+
window: string;
|
|
498
|
+
accent: string;
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
export declare const DEFAULT_FDE_THEME: Record<ThemeMode, FdeTheme>;
|
|
502
|
+
|
|
503
|
+
export declare const DEFAULT_LANGUAGE: SupportedLanguage_3;
|
|
504
|
+
|
|
505
|
+
export declare const DEFAULT_LAUNCHER_FOLDERS: LauncherFolder[];
|
|
506
|
+
|
|
507
|
+
export declare const DEFAULT_THEME_COLORS: Record<ThemeMode, Theme>;
|
|
508
|
+
|
|
509
|
+
export declare const DEFAULT_VIEWPORT_HEIGHT: 800;
|
|
510
|
+
|
|
511
|
+
export declare const DEFAULT_VIEWPORT_WIDTH: 1280;
|
|
512
|
+
|
|
513
|
+
export declare const DEFAULT_WINDOW_DIMENSIONS: {
|
|
514
|
+
readonly defaultWidth: 800;
|
|
515
|
+
readonly defaultHeight: 600;
|
|
516
|
+
readonly minWidth: 640;
|
|
517
|
+
readonly minHeight: 480;
|
|
518
|
+
};
|
|
519
|
+
|
|
520
|
+
export declare class DefaultThemeProvider implements IThemeProvider {
|
|
521
|
+
private mode;
|
|
522
|
+
private customColors;
|
|
523
|
+
constructor(initialMode?: ThemeMode);
|
|
524
|
+
getTheme(): FdeTheme;
|
|
525
|
+
setMode(mode: ThemeMode): void;
|
|
526
|
+
setCustomColors(colors: CustomThemeColors | null): void;
|
|
527
|
+
toggle(): void;
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
export declare const Desktop: FC<DesktopProps>;
|
|
531
|
+
|
|
532
|
+
export declare const DESKTOP_APPS: AppId[];
|
|
533
|
+
|
|
534
|
+
export declare const DESKTOP_APPS_ORDER: string[];
|
|
535
|
+
|
|
536
|
+
export declare interface DesktopAreaProps {
|
|
537
|
+
children?: ReactNode;
|
|
538
|
+
onContextMenu?: (e: MouseEvent_2<HTMLDivElement>) => void;
|
|
539
|
+
}
|
|
540
|
+
|
|
541
|
+
export declare interface DesktopContextMenuProps {
|
|
542
|
+
opened: boolean;
|
|
543
|
+
position: MenuPosition;
|
|
544
|
+
onClose: () => void;
|
|
545
|
+
onOpenApp: (appId: string) => void;
|
|
546
|
+
onToggleTheme: () => void;
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
export declare const DesktopIcon: FC<DesktopIconProps>;
|
|
550
|
+
|
|
551
|
+
export declare interface DesktopIconEntity {
|
|
552
|
+
id: string;
|
|
553
|
+
name: string;
|
|
554
|
+
icon: string;
|
|
555
|
+
iconName?: string;
|
|
556
|
+
iconColor?: string;
|
|
557
|
+
x: number;
|
|
558
|
+
y: number;
|
|
559
|
+
appId: string;
|
|
560
|
+
nodeId?: string;
|
|
561
|
+
}
|
|
562
|
+
|
|
563
|
+
export declare type DesktopIconInput = Omit<DesktopIconEntity, 'id'>;
|
|
564
|
+
|
|
565
|
+
export declare interface DesktopIconProps {
|
|
566
|
+
icon: DesktopIconEntity;
|
|
567
|
+
onDoubleClick: (appId: string, nodeId?: string) => void;
|
|
568
|
+
onContextMenu: (e: React.MouseEvent, nodeId: string) => void;
|
|
569
|
+
}
|
|
570
|
+
|
|
571
|
+
export declare interface DesktopProps extends DesktopAreaProps {
|
|
572
|
+
wallpaper?: string;
|
|
573
|
+
backgroundColor?: string;
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
export declare type DesktopSortMode = 'default' | 'name-asc' | 'name-desc' | 'type';
|
|
577
|
+
|
|
578
|
+
declare type DesktopSortMode_2 = 'default' | 'name-asc' | 'name-desc' | 'type';
|
|
579
|
+
|
|
580
|
+
export declare interface DesktopState {
|
|
581
|
+
windows: WindowEntity[];
|
|
582
|
+
openWindow: (input: WindowInput) => void;
|
|
583
|
+
closeWindow: (id: string) => void;
|
|
584
|
+
minimizeWindow: (id: string) => void;
|
|
585
|
+
maximizeWindow: (id: string) => void;
|
|
586
|
+
restoreWindow: (id: string) => void;
|
|
587
|
+
focusWindow: (id: string) => void;
|
|
588
|
+
moveWindow: (id: string, x: number, y: number) => void;
|
|
589
|
+
resizeWindow: (id: string, width: number, height: number) => void;
|
|
590
|
+
icons: DesktopIconEntity[];
|
|
591
|
+
addIcon: (input: DesktopIconInput) => void;
|
|
592
|
+
removeIcon: (id: string) => void;
|
|
593
|
+
fsNodes: FSNode[];
|
|
594
|
+
desktopFolderId: string | null;
|
|
595
|
+
isFsReady: boolean;
|
|
596
|
+
createFile: (name: string, content: string, parentId: string | null, url?: string) => Promise<FileNode>;
|
|
597
|
+
createFolder: (name: string, parentId: string | null, iconName?: string, iconColor?: string) => Promise<FolderNode>;
|
|
598
|
+
initFs: () => Promise<void>;
|
|
599
|
+
updateFile: (id: string, content: string) => Promise<void>;
|
|
600
|
+
deleteNode: (id: string) => Promise<void>;
|
|
601
|
+
moveNode: (id: string, newParentId: string | null) => Promise<void>;
|
|
602
|
+
setFsNodes: (nodes: FSNode[]) => void;
|
|
603
|
+
syncIcons: () => void;
|
|
604
|
+
clipboard: ClipboardState;
|
|
605
|
+
copyToClipboard: (nodes: FSNode[]) => void;
|
|
606
|
+
cutToClipboard: (nodes: FSNode[]) => void;
|
|
607
|
+
clearClipboard: () => void;
|
|
608
|
+
contextMenu: {
|
|
609
|
+
x: number;
|
|
610
|
+
y: number;
|
|
611
|
+
owner: string | null;
|
|
612
|
+
targetNodeId?: string;
|
|
613
|
+
};
|
|
614
|
+
openContextMenu: (x: number, y: number, owner: string, targetNodeId?: string) => void;
|
|
615
|
+
closeContextMenu: () => void;
|
|
616
|
+
filesCurrentFolderId: string | null;
|
|
617
|
+
setFilesCurrentFolderId: (id: string | null) => void;
|
|
618
|
+
mergeSeed: (manifest: FsManifest) => Promise<void>;
|
|
619
|
+
mergeDesktopApps: (appIds: readonly string[]) => void;
|
|
620
|
+
reorderDesktopApps: (appIds: readonly string[]) => void;
|
|
621
|
+
notifications: NotificationItem[];
|
|
622
|
+
addNotification: (item: NotificationItem) => void;
|
|
623
|
+
removeNotification: (id: string) => void;
|
|
624
|
+
viewportWidth: number;
|
|
625
|
+
viewportHeight: number;
|
|
626
|
+
isViewportInitialized: boolean;
|
|
627
|
+
setViewportSize: (width: number, height: number) => void;
|
|
628
|
+
desktopSortMode: DesktopSortMode;
|
|
629
|
+
filesSortMode: DesktopSortMode;
|
|
630
|
+
setDesktopSortMode: (mode: DesktopSortMode) => void;
|
|
631
|
+
setFilesSortMode: (mode: DesktopSortMode) => void;
|
|
632
|
+
launcherFolders: LauncherFolder[];
|
|
633
|
+
setLauncherFolders: (folders: LauncherFolder[]) => void;
|
|
634
|
+
createLauncherFolder: (input: LauncherFolderInput) => LauncherFolder;
|
|
635
|
+
updateLauncherFolder: (id: string, updates: Partial<Omit<LauncherFolder, 'id' | 'isPredefined'>>) => void;
|
|
636
|
+
deleteLauncherFolder: (id: string) => void;
|
|
637
|
+
moveLauncherFolder: (id: string, newOrder: number) => void;
|
|
638
|
+
addAppToFolder: (appId: string, folderId: string) => void;
|
|
639
|
+
removeAppFromFolder: (appId: string, folderId: string) => void;
|
|
640
|
+
customApps: CustomAppManifest[];
|
|
641
|
+
setCustomApps: (apps: CustomAppManifest[]) => void;
|
|
642
|
+
handleCustomAppRegistered: (manifest: CustomAppManifest) => void;
|
|
643
|
+
handleCustomAppUnregistered: (appId: string) => void;
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
export declare interface DesktopTheme {
|
|
647
|
+
background: string;
|
|
648
|
+
iconSize: number;
|
|
649
|
+
iconSpacing: number;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
export declare interface DeviceInfo {
|
|
653
|
+
isMobile: boolean;
|
|
654
|
+
isTablet: boolean;
|
|
655
|
+
isDesktop: boolean;
|
|
656
|
+
isPortrait: boolean;
|
|
657
|
+
shouldShowWarning: boolean;
|
|
658
|
+
screenWidth: number;
|
|
659
|
+
screenHeight: number;
|
|
660
|
+
}
|
|
661
|
+
|
|
662
|
+
export declare const DeviceInfoApp: FC<WindowContentProps>;
|
|
663
|
+
|
|
664
|
+
export declare const DeviceInfoAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
665
|
+
|
|
666
|
+
export declare const DirtyIndicator: FC<DirtyIndicatorProps>;
|
|
667
|
+
|
|
668
|
+
declare interface DirtyIndicatorProps {
|
|
669
|
+
size?: number;
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
export declare class DockerFileSystemAdapter implements IFileSystem {
|
|
673
|
+
private nodes;
|
|
674
|
+
private pathToId;
|
|
675
|
+
private ready;
|
|
676
|
+
private rootFolderId;
|
|
677
|
+
private initPromise;
|
|
678
|
+
constructor();
|
|
679
|
+
initialize(): Promise<void>;
|
|
680
|
+
private doInitialize;
|
|
681
|
+
reinitialize(): Promise<void>;
|
|
682
|
+
isReady(): boolean;
|
|
683
|
+
isEmpty(): boolean;
|
|
684
|
+
getNode(id: string): FSNode | undefined;
|
|
685
|
+
getChildren(folderId: string): FSNode[];
|
|
686
|
+
getRootNodes(): FSNode[];
|
|
687
|
+
getAllNodes(): FSNode[];
|
|
688
|
+
createFile(name: string, content: string, parentId: string | null, url?: string): Promise<FileNode>;
|
|
689
|
+
createFolder(name: string, parentId: string | null, iconName?: string, iconColor?: string): Promise<FolderNode>;
|
|
690
|
+
updateFile(id: string, content: string): Promise<FileNode>;
|
|
691
|
+
move(id: string, newParentId: string | null): Promise<FSNode>;
|
|
692
|
+
delete(id: string): Promise<void>;
|
|
693
|
+
readFile(path: string): Promise<string>;
|
|
694
|
+
writeFile(path: string, content: string): Promise<void>;
|
|
695
|
+
saveBlob(blob: Blob): Promise<string>;
|
|
696
|
+
getBlob(url: string): Promise<Blob | null>;
|
|
697
|
+
toBlobUrl(url: string): Promise<string | null>;
|
|
698
|
+
getManifestSha(): Promise<string | null>;
|
|
699
|
+
saveManifestSha(_sha: string): Promise<void>;
|
|
700
|
+
seed(_manifest: FsManifest): Promise<void>;
|
|
701
|
+
mergeSeed(_manifest: FsManifest): Promise<void>;
|
|
702
|
+
clearAll(): Promise<void>;
|
|
703
|
+
private getMimeType;
|
|
704
|
+
private getPathFromId;
|
|
705
|
+
private deleteRecursive;
|
|
706
|
+
private syncFromEntries;
|
|
707
|
+
private fetchReaddir;
|
|
708
|
+
private writeFileToServer;
|
|
709
|
+
private createDirOnServer;
|
|
710
|
+
private deleteFromServer;
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
export declare const DownloadProgress: FC<DownloadProgressProps>;
|
|
714
|
+
|
|
715
|
+
declare interface DownloadProgressProps {
|
|
716
|
+
state: DownloadState;
|
|
717
|
+
ariaLabel?: string;
|
|
718
|
+
minDisplayTime?: number;
|
|
719
|
+
}
|
|
720
|
+
|
|
721
|
+
export declare interface DownloadState {
|
|
722
|
+
status: DownloadStatus;
|
|
723
|
+
loaded: number;
|
|
724
|
+
total: number | null;
|
|
725
|
+
percent: number | null;
|
|
726
|
+
error: string | null;
|
|
727
|
+
}
|
|
728
|
+
|
|
729
|
+
export declare type DownloadStatus = 'idle' | 'downloading' | 'done' | 'error';
|
|
730
|
+
|
|
731
|
+
declare interface DragDropContextValue {
|
|
732
|
+
activeItem: DragItemData | null;
|
|
733
|
+
overTarget: DropTarget | null;
|
|
734
|
+
}
|
|
735
|
+
|
|
736
|
+
export declare const DragDropProvider: FC<DragDropProviderProps>;
|
|
737
|
+
|
|
738
|
+
declare interface DragDropProviderProps {
|
|
739
|
+
children: ReactNode;
|
|
740
|
+
onDrop: (item: DragItemData, target: DropTarget) => void;
|
|
741
|
+
onCancel?: () => void;
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
declare interface DragItemData {
|
|
745
|
+
type: DragItemType;
|
|
746
|
+
id: string;
|
|
747
|
+
name: string;
|
|
748
|
+
sourceId: string;
|
|
749
|
+
sourceType: DropTargetType;
|
|
750
|
+
metadata?: {
|
|
751
|
+
fcIcon?: string;
|
|
752
|
+
iconUrl?: string;
|
|
753
|
+
icon?: string;
|
|
754
|
+
iconColor?: string;
|
|
755
|
+
};
|
|
756
|
+
}
|
|
757
|
+
|
|
758
|
+
declare type DragItemType = 'app' | 'file' | 'folder';
|
|
759
|
+
|
|
760
|
+
declare interface DropTarget {
|
|
761
|
+
type: DropTargetType;
|
|
762
|
+
id: string;
|
|
763
|
+
name: string;
|
|
764
|
+
accepts: DragItemType[];
|
|
765
|
+
}
|
|
766
|
+
|
|
767
|
+
export declare type DropTargetType = 'launcher-folder' | 'filesystem-folder' | 'desktop' | 'available-apps';
|
|
768
|
+
|
|
769
|
+
export declare const DynamicMenuBarRenderer: FC<DynamicMenuBarRendererProps>;
|
|
770
|
+
|
|
771
|
+
declare interface DynamicMenuBarRendererProps {
|
|
772
|
+
component?: MenuBarComponent;
|
|
773
|
+
windowId: string;
|
|
774
|
+
contentData: Record<string, unknown> | undefined;
|
|
775
|
+
onExit: () => void;
|
|
776
|
+
}
|
|
777
|
+
|
|
778
|
+
export declare const EASE_IN: Transition;
|
|
779
|
+
|
|
780
|
+
export declare const EASE_OUT: Transition;
|
|
781
|
+
|
|
782
|
+
export declare const ExternalLinkApp: FC<WindowContentProps & {
|
|
783
|
+
config: ExternalLinkAppConfig;
|
|
784
|
+
}>;
|
|
785
|
+
|
|
786
|
+
declare interface ExternalLinkAppConfig {
|
|
787
|
+
icon: string;
|
|
788
|
+
iconColor: string;
|
|
789
|
+
title: string;
|
|
790
|
+
url: string;
|
|
791
|
+
buttonLabel: string;
|
|
792
|
+
description?: string;
|
|
793
|
+
}
|
|
794
|
+
|
|
795
|
+
export declare const EXTRA_APP_IDS: string[];
|
|
796
|
+
|
|
797
|
+
export declare const EXTRA_APPS: AppEntry[];
|
|
798
|
+
|
|
799
|
+
export declare interface FdeContextValue {
|
|
800
|
+
fs: IFileSystem | null;
|
|
801
|
+
isReady: boolean;
|
|
802
|
+
error: Error | null;
|
|
803
|
+
theme: FdeTheme;
|
|
804
|
+
setThemeMode: (mode: ThemeMode) => void;
|
|
805
|
+
toggleTheme: () => void;
|
|
806
|
+
}
|
|
807
|
+
|
|
808
|
+
export declare function FdeDesktop({ children, fallback, theme, mantineTheme, fileSystem, initialMode, customApps, onError, defaultWallpaper, initialApp, prefetchLoaders, }: FdeDesktopProps): default_2.ReactElement;
|
|
809
|
+
|
|
810
|
+
export declare interface FdeDesktopAPI {
|
|
811
|
+
openApp: (appId: string, options?: OpenAppOptions) => void;
|
|
812
|
+
closeWindow: (windowId?: string) => void;
|
|
813
|
+
minimizeWindow: (windowId?: string) => void;
|
|
814
|
+
maximizeWindow: (windowId?: string) => void;
|
|
815
|
+
restoreWindow: (windowId?: string) => void;
|
|
816
|
+
focusWindow: (windowId?: string) => void;
|
|
817
|
+
openFile: (path: string, appId?: string) => void;
|
|
818
|
+
openFileDialog: (options?: FileDialogOptions) => Promise<string | null>;
|
|
819
|
+
saveFile: (content: string, options?: SaveDialogOptions) => Promise<boolean>;
|
|
820
|
+
saveFileDialog: (options?: SaveDialogOptions) => Promise<string | null>;
|
|
821
|
+
getTheme: () => Record<string, unknown>;
|
|
822
|
+
setTheme: (theme: Record<string, unknown>) => void;
|
|
823
|
+
showNotification: (options: NotificationOptions_2) => string;
|
|
824
|
+
hideNotification: (notificationId: string) => void;
|
|
825
|
+
getWindows: () => WindowEntity[];
|
|
826
|
+
getActiveWindow: () => WindowEntity | null;
|
|
827
|
+
getWindowById: (windowId: string) => WindowEntity | null;
|
|
828
|
+
fs: IFileSystem;
|
|
829
|
+
on: <T extends FdeEventType>(event: T, callback: (data: FdeEventPayloads[T]) => void) => () => void;
|
|
830
|
+
off: <T extends FdeEventType>(event: T, callback: (data: FdeEventPayloads[T]) => void) => void;
|
|
831
|
+
appReady: (appId: string) => void;
|
|
832
|
+
registerAppInstance: (appId: string, instance: unknown) => void;
|
|
833
|
+
}
|
|
834
|
+
|
|
835
|
+
export declare interface FdeDesktopProps {
|
|
836
|
+
children?: default_2.ReactNode;
|
|
837
|
+
fallback?: default_2.ReactNode;
|
|
838
|
+
theme?: PartialFdeTheme;
|
|
839
|
+
mantineTheme?: MantineThemeOverride;
|
|
840
|
+
fileSystem?: IFileSystem;
|
|
841
|
+
initialMode?: ThemeMode;
|
|
842
|
+
customApps?: Record<string, AppRegistryEntry>;
|
|
843
|
+
onError?: (error: Error) => void;
|
|
844
|
+
/** URL or import of the default wallpaper image */
|
|
845
|
+
defaultWallpaper?: string;
|
|
846
|
+
/** App ID to open on startup */
|
|
847
|
+
initialApp?: string;
|
|
848
|
+
/** Loaders to prefetch in the background after startup */
|
|
849
|
+
prefetchLoaders?: Array<{
|
|
850
|
+
id: string;
|
|
851
|
+
loader: () => Promise<unknown>;
|
|
852
|
+
}>;
|
|
853
|
+
}
|
|
854
|
+
|
|
855
|
+
export declare interface FdeEventPayloads {
|
|
856
|
+
'window-opened': {
|
|
857
|
+
windowId: string;
|
|
858
|
+
content: string;
|
|
859
|
+
};
|
|
860
|
+
'window-closed': {
|
|
861
|
+
windowId: string;
|
|
862
|
+
};
|
|
863
|
+
'window-focused': {
|
|
864
|
+
windowId: string;
|
|
865
|
+
};
|
|
866
|
+
'window-minimized': {
|
|
867
|
+
windowId: string;
|
|
868
|
+
};
|
|
869
|
+
'window-maximized': {
|
|
870
|
+
windowId: string;
|
|
871
|
+
};
|
|
872
|
+
'file-opened': {
|
|
873
|
+
path: string;
|
|
874
|
+
appId?: string;
|
|
875
|
+
};
|
|
876
|
+
'file-saved': {
|
|
877
|
+
path: string;
|
|
878
|
+
success: boolean;
|
|
879
|
+
};
|
|
880
|
+
'theme-changed': {
|
|
881
|
+
theme: string;
|
|
882
|
+
};
|
|
883
|
+
'notification-shown': {
|
|
884
|
+
notificationId: string;
|
|
885
|
+
};
|
|
886
|
+
}
|
|
887
|
+
|
|
888
|
+
export declare type FdeEventType = 'window-opened' | 'window-closed' | 'window-focused' | 'window-minimized' | 'window-maximized' | 'file-opened' | 'file-saved' | 'theme-changed' | 'notification-shown';
|
|
889
|
+
|
|
890
|
+
export declare function FdeProvider({ children, fileSystem, initialMode, theme, mantineTheme, fallback, onError, }: FdeProviderProps): default_2.ReactElement;
|
|
891
|
+
|
|
892
|
+
export declare interface FdeProviderProps {
|
|
893
|
+
children: default_2.ReactNode;
|
|
894
|
+
fileSystem: IFileSystem;
|
|
895
|
+
initialMode?: ThemeMode;
|
|
896
|
+
theme?: PartialFdeTheme;
|
|
897
|
+
mantineTheme?: MantineThemeOverride;
|
|
898
|
+
fallback?: default_2.ReactNode;
|
|
899
|
+
onError?: (error: Error) => void;
|
|
900
|
+
}
|
|
901
|
+
|
|
902
|
+
export declare interface FdeTheme {
|
|
903
|
+
mode: ThemeMode;
|
|
904
|
+
colors: {
|
|
905
|
+
desktop: string;
|
|
906
|
+
taskbar: string;
|
|
907
|
+
window: string;
|
|
908
|
+
accent: string;
|
|
909
|
+
};
|
|
910
|
+
window: WindowTheme;
|
|
911
|
+
taskbar: TaskbarTheme;
|
|
912
|
+
desktop: DesktopTheme;
|
|
913
|
+
}
|
|
914
|
+
|
|
915
|
+
export declare function fetchAppManifest(forceRefresh?: boolean): Promise<AppsManifest | null>;
|
|
916
|
+
|
|
917
|
+
export declare interface FileDialogOptions {
|
|
918
|
+
acceptedMimeTypes?: string[];
|
|
919
|
+
multiple?: boolean;
|
|
920
|
+
defaultPath?: string;
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
export declare const FileIcon: FC<FileIconProps>;
|
|
924
|
+
|
|
925
|
+
export declare interface FileIconProps {
|
|
926
|
+
type: 'file' | 'folder';
|
|
927
|
+
name?: string;
|
|
928
|
+
folderNode?: FolderNode;
|
|
929
|
+
fileNode?: FileNode;
|
|
930
|
+
size?: number;
|
|
931
|
+
iconName?: string;
|
|
932
|
+
}
|
|
933
|
+
|
|
934
|
+
export declare interface FileNode extends FileSystemNode {
|
|
935
|
+
type: 'file';
|
|
936
|
+
content: string;
|
|
937
|
+
mimeType?: string;
|
|
938
|
+
url?: string;
|
|
939
|
+
iconName?: string;
|
|
940
|
+
iconColor?: string;
|
|
941
|
+
}
|
|
942
|
+
|
|
943
|
+
export declare const FilePickerApp: FC<FilePickerAppProps>;
|
|
944
|
+
|
|
945
|
+
declare interface FilePickerAppProps {
|
|
946
|
+
acceptedMimeTypes?: string[];
|
|
947
|
+
onConfirm: (node: FileNode) => void;
|
|
948
|
+
onCancel: () => void;
|
|
949
|
+
}
|
|
950
|
+
|
|
951
|
+
export declare const FilePickerModal: FC<FilePickerModalProps>;
|
|
952
|
+
|
|
953
|
+
declare interface FilePickerModalProps extends FilePickerAppProps {
|
|
954
|
+
opened: boolean;
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
export declare const FilesApp: FC<WindowContentProps>;
|
|
958
|
+
|
|
959
|
+
export declare const FilesAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
960
|
+
|
|
961
|
+
export declare const fileSystem: IndexedDBFileSystem | DockerFileSystemAdapter;
|
|
962
|
+
|
|
963
|
+
export declare interface FileSystemNode {
|
|
964
|
+
id: string;
|
|
965
|
+
name: string;
|
|
966
|
+
type: FileSystemNodeType;
|
|
967
|
+
parentId: string | null;
|
|
968
|
+
createdAt: Date;
|
|
969
|
+
updatedAt: Date;
|
|
970
|
+
}
|
|
971
|
+
|
|
972
|
+
export declare type FileSystemNodeType = 'file' | 'folder';
|
|
973
|
+
|
|
974
|
+
export declare interface FolderNode extends FileSystemNode {
|
|
975
|
+
type: 'folder';
|
|
976
|
+
children: string[];
|
|
977
|
+
iconName?: string;
|
|
978
|
+
iconColor?: string;
|
|
979
|
+
}
|
|
980
|
+
|
|
981
|
+
export declare const FolderPicker: NamedExoticComponent<PickerModalProps>;
|
|
982
|
+
|
|
983
|
+
export declare const FONT_STACKS: Record<string, string>;
|
|
984
|
+
|
|
985
|
+
export declare interface FontDownloadProgress {
|
|
986
|
+
status: 'idle' | 'downloading' | 'done' | 'error';
|
|
987
|
+
loaded: number;
|
|
988
|
+
total: number | null;
|
|
989
|
+
percent: number | null;
|
|
990
|
+
error: string | null;
|
|
991
|
+
}
|
|
992
|
+
|
|
993
|
+
declare interface FontDownloadResult {
|
|
994
|
+
font: string;
|
|
995
|
+
success: boolean;
|
|
996
|
+
}
|
|
997
|
+
|
|
998
|
+
export declare function formatBytes(bytes: number): string;
|
|
999
|
+
|
|
1000
|
+
export declare interface FsManifest {
|
|
1001
|
+
folders: string[];
|
|
1002
|
+
files: FsManifestFile[];
|
|
1003
|
+
}
|
|
1004
|
+
|
|
1005
|
+
export declare interface FsManifestFile {
|
|
1006
|
+
name: string;
|
|
1007
|
+
folder: string;
|
|
1008
|
+
mimeType: string;
|
|
1009
|
+
url: string;
|
|
1010
|
+
}
|
|
1011
|
+
|
|
1012
|
+
export declare type FSNode = FileNode | FolderNode;
|
|
1013
|
+
|
|
1014
|
+
export declare function generateUUID(): string;
|
|
1015
|
+
|
|
1016
|
+
export declare function getAppComponent(content: string): AppComponent;
|
|
1017
|
+
|
|
1018
|
+
export declare function getAppIdForMime(mimeType: string | undefined): string;
|
|
1019
|
+
|
|
1020
|
+
export declare function getAppIdForMime(node: FileNode): {
|
|
1021
|
+
appId: string;
|
|
1022
|
+
contentData: Record<string, unknown>;
|
|
1023
|
+
} | null;
|
|
1024
|
+
|
|
1025
|
+
export declare function getAppName(content: string): string | undefined;
|
|
1026
|
+
|
|
1027
|
+
export declare function getBaseUrl(): string;
|
|
1028
|
+
|
|
1029
|
+
export declare function getCachedManifest(): AppsManifest | null;
|
|
1030
|
+
|
|
1031
|
+
export declare const getCloseInterceptor: (windowId: string) => (() => boolean) | undefined;
|
|
1032
|
+
|
|
1033
|
+
export declare function getCustomAppById(appId: string): Promise<CustomAppManifest | undefined>;
|
|
1034
|
+
|
|
1035
|
+
export declare function getCustomApps(): Promise<CustomAppManifest[]>;
|
|
1036
|
+
|
|
1037
|
+
export declare const getEnvironment: () => string;
|
|
1038
|
+
|
|
1039
|
+
export declare function getFdeApi(): FdeDesktopAPI;
|
|
1040
|
+
|
|
1041
|
+
export declare const getFileExtension: (name: string) => string;
|
|
1042
|
+
|
|
1043
|
+
export declare function getFourRandomColors(count?: number): string[];
|
|
1044
|
+
|
|
1045
|
+
export declare function getMenuBarBuilder(content: string): MenuBarBuilder | undefined;
|
|
1046
|
+
|
|
1047
|
+
export declare function getMenuBarComponent(content: string): MenuBarComponent | undefined;
|
|
1048
|
+
|
|
1049
|
+
export declare function getMimeTypeFromExtension(filename: string): string | undefined;
|
|
1050
|
+
|
|
1051
|
+
export declare const getPersistedThemeMode: () => ThemeMode | null;
|
|
1052
|
+
|
|
1053
|
+
export declare const getReleaseType: () => string;
|
|
1054
|
+
|
|
1055
|
+
export declare function getRuntime(): Runtime;
|
|
1056
|
+
|
|
1057
|
+
export declare const getVersionString: () => string;
|
|
1058
|
+
|
|
1059
|
+
export declare const GITHUB_LATEST_RELEASE_URL = "https://api.github.com/repos/frannunpal/frannunpal.github.io/releases/latest";
|
|
1060
|
+
|
|
1061
|
+
export declare const GITHUB_RELEASES_REPO = "frannunpal/frannunpal.github.io";
|
|
1062
|
+
|
|
1063
|
+
export declare const GOOGLE_FONTS_HREF: Record<string, string>;
|
|
1064
|
+
|
|
1065
|
+
export declare function hashBlob(blob: Blob): Promise<string>;
|
|
1066
|
+
|
|
1067
|
+
declare interface HMRCallbacks {
|
|
1068
|
+
onReload: AppReloadCallback;
|
|
1069
|
+
onRegistered?: AppRegisteredCallback;
|
|
1070
|
+
onUnregistered?: AppUnregisteredCallback;
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
export { i18n }
|
|
1074
|
+
|
|
1075
|
+
export declare const ICON_COLUMN_WIDTH = 80;
|
|
1076
|
+
|
|
1077
|
+
export declare const ICON_MARGIN = 20;
|
|
1078
|
+
|
|
1079
|
+
export declare const ICON_ROW_HEIGHT = 80;
|
|
1080
|
+
|
|
1081
|
+
export declare const IconColorPicker: FC<IconColorPickerProps>;
|
|
1082
|
+
|
|
1083
|
+
declare interface IconColorPickerProps {
|
|
1084
|
+
selectedIcon: string;
|
|
1085
|
+
selectedColor: string;
|
|
1086
|
+
onIconChange: (icon: string) => void;
|
|
1087
|
+
onColorChange: (color: string) => void;
|
|
1088
|
+
colorError?: string;
|
|
1089
|
+
}
|
|
1090
|
+
|
|
1091
|
+
declare type IconLibrary = 'fi' | 'fc' | 'vsc';
|
|
1092
|
+
|
|
1093
|
+
export declare interface IFileSystem {
|
|
1094
|
+
initialize(): Promise<void>;
|
|
1095
|
+
reinitialize(): Promise<void>;
|
|
1096
|
+
isReady(): boolean;
|
|
1097
|
+
isEmpty(): boolean;
|
|
1098
|
+
getNode(id: string): FSNode | undefined;
|
|
1099
|
+
getChildren(folderId: string): FSNode[];
|
|
1100
|
+
getRootNodes(): FSNode[];
|
|
1101
|
+
getAllNodes(): FSNode[];
|
|
1102
|
+
createFile(name: string, content: string, parentId: string | null, url?: string): Promise<FileNode>;
|
|
1103
|
+
createFolder(name: string, parentId: string | null, iconName?: string, iconColor?: string): Promise<FolderNode>;
|
|
1104
|
+
updateFile(id: string, content: string): Promise<FileNode>;
|
|
1105
|
+
move(id: string, newParentId: string | null): Promise<FSNode>;
|
|
1106
|
+
delete(id: string): Promise<void>;
|
|
1107
|
+
readFile(path: string): Promise<string>;
|
|
1108
|
+
writeFile(path: string, content: string): Promise<void>;
|
|
1109
|
+
saveBlob(blob: Blob): Promise<string>;
|
|
1110
|
+
/** url: `idb://{hash}` for IndexedDB, `/api/fs?action=file&path=...` for Docker */
|
|
1111
|
+
getBlob(url: string): Promise<Blob | null>;
|
|
1112
|
+
toBlobUrl(url: string): Promise<string | null>;
|
|
1113
|
+
seed(manifest: FsManifest): Promise<void>;
|
|
1114
|
+
mergeSeed(manifest: FsManifest): Promise<void>;
|
|
1115
|
+
getManifestSha(): Promise<string | null>;
|
|
1116
|
+
saveManifestSha(sha: string): Promise<void>;
|
|
1117
|
+
clearAll(): Promise<void>;
|
|
1118
|
+
}
|
|
1119
|
+
|
|
1120
|
+
export declare const IMAGE_MIME_TYPES: Set<string>;
|
|
1121
|
+
|
|
1122
|
+
export declare const ImageViewerApp: FC<WindowContentProps>;
|
|
1123
|
+
|
|
1124
|
+
export declare const ImageViewerAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
1125
|
+
|
|
1126
|
+
export declare const ImageViewerMenuBar: FC<MenuBarComponentProps>;
|
|
1127
|
+
|
|
1128
|
+
export declare const ImageViewerMenuBarLazy: MenuBarComponent;
|
|
1129
|
+
|
|
1130
|
+
export declare class IndexedDBFileSystem implements IFileSystem {
|
|
1131
|
+
private db;
|
|
1132
|
+
private nodes;
|
|
1133
|
+
private ready;
|
|
1134
|
+
private initPromise;
|
|
1135
|
+
private persistQueue;
|
|
1136
|
+
private persistScheduled;
|
|
1137
|
+
initialize(): Promise<void>;
|
|
1138
|
+
private doInitialize;
|
|
1139
|
+
private openDatabase;
|
|
1140
|
+
private loadNodes;
|
|
1141
|
+
private migrateFromLocalStorage;
|
|
1142
|
+
isReady(): boolean;
|
|
1143
|
+
reinitialize(): Promise<void>;
|
|
1144
|
+
private persistAllNodes;
|
|
1145
|
+
private schedulePersist;
|
|
1146
|
+
private flushPersistQueue;
|
|
1147
|
+
private persistNode;
|
|
1148
|
+
private deleteNodeFromPersist;
|
|
1149
|
+
saveBlob(blob: Blob): Promise<string>;
|
|
1150
|
+
getBlob(url: string): Promise<Blob | null>;
|
|
1151
|
+
toBlobUrl(url: string): Promise<string | null>;
|
|
1152
|
+
clearBlobs(): Promise<void>;
|
|
1153
|
+
readFile(_path: string): Promise<string>;
|
|
1154
|
+
writeFile(_path: string, _content: string): Promise<void>;
|
|
1155
|
+
getNode(id: string): FSNode | undefined;
|
|
1156
|
+
getChildren(folderId: string): FSNode[];
|
|
1157
|
+
getRootNodes(): FSNode[];
|
|
1158
|
+
getAllNodes(): FSNode[];
|
|
1159
|
+
isEmpty(): boolean;
|
|
1160
|
+
createFile(name: string, content: string, parentId: string | null, url?: string): Promise<FileNode>;
|
|
1161
|
+
createFolder(name: string, parentId: string | null, iconName?: string, iconColor?: string): Promise<FolderNode>;
|
|
1162
|
+
updateFile(id: string, content: string): Promise<FileNode>;
|
|
1163
|
+
move(id: string, newParentId: string | null): Promise<FSNode>;
|
|
1164
|
+
delete(id: string): Promise<void>;
|
|
1165
|
+
getManifestSha(): Promise<string | null>;
|
|
1166
|
+
saveManifestSha(sha: string): Promise<void>;
|
|
1167
|
+
clearAll(): Promise<void>;
|
|
1168
|
+
seed(manifest: FsManifest): Promise<void>;
|
|
1169
|
+
mergeSeed(manifest: FsManifest): Promise<void>;
|
|
1170
|
+
private buildFolderMapFromManifest;
|
|
1171
|
+
private addChildToFolder;
|
|
1172
|
+
private removeChildFromParent;
|
|
1173
|
+
private deleteRecursive;
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
export declare function initializeFdeApi(): void;
|
|
1177
|
+
|
|
1178
|
+
export declare function initRegistry(registry: Record<string, AppRegistryEntry>): void;
|
|
1179
|
+
|
|
1180
|
+
export declare const injectFontLink: (font: string) => void;
|
|
1181
|
+
|
|
1182
|
+
export declare function isBrowser(): boolean;
|
|
1183
|
+
|
|
1184
|
+
export declare function isCustomApp(appId: string): boolean;
|
|
1185
|
+
|
|
1186
|
+
export declare function isDev(): boolean;
|
|
1187
|
+
|
|
1188
|
+
export declare function isDocker(): boolean;
|
|
1189
|
+
|
|
1190
|
+
export declare function isElectron(): boolean;
|
|
1191
|
+
|
|
1192
|
+
export declare interface ISettingsState {
|
|
1193
|
+
wallpaper: string | null;
|
|
1194
|
+
wallpaperModule: string;
|
|
1195
|
+
launcherIcon: string;
|
|
1196
|
+
font: string;
|
|
1197
|
+
downloadedFonts: string[];
|
|
1198
|
+
fontSize: number;
|
|
1199
|
+
animationDuration: number;
|
|
1200
|
+
theme: FdeTheme;
|
|
1201
|
+
themeSetManually: boolean;
|
|
1202
|
+
customThemeColors: CustomThemeColors | null;
|
|
1203
|
+
language: SupportedLanguage;
|
|
1204
|
+
setWallpaper: (url: string | null) => void;
|
|
1205
|
+
setWallpaperModule: (module: string) => void;
|
|
1206
|
+
setLauncherIcon: (icon: string) => void;
|
|
1207
|
+
setFont: (font: string) => void;
|
|
1208
|
+
markFontDownloaded: (fontName: string) => void;
|
|
1209
|
+
setFontSize: (size: number) => void;
|
|
1210
|
+
setAnimationDuration: (duration: number) => void;
|
|
1211
|
+
setThemeMode: (mode: ThemeMode) => void;
|
|
1212
|
+
toggleTheme: () => void;
|
|
1213
|
+
setThemeAutomatic: () => void;
|
|
1214
|
+
applySystemTheme: (mode: ThemeMode) => void;
|
|
1215
|
+
setCustomThemeColors: (colors: CustomThemeColors | null) => void;
|
|
1216
|
+
setLanguage: (lang: SupportedLanguage) => void;
|
|
1217
|
+
}
|
|
1218
|
+
|
|
1219
|
+
export declare function isFdeApiInitialized(): boolean;
|
|
1220
|
+
|
|
1221
|
+
export declare function isLazyApp(content: string): boolean;
|
|
1222
|
+
|
|
1223
|
+
export declare const isNewerVersion: (latest: string, current: string) => boolean;
|
|
1224
|
+
|
|
1225
|
+
export declare interface IThemeProvider {
|
|
1226
|
+
getTheme(): FdeTheme;
|
|
1227
|
+
setMode(mode: ThemeMode): void;
|
|
1228
|
+
toggle(): void;
|
|
1229
|
+
setCustomColors(colors: CustomThemeColors | null): void;
|
|
1230
|
+
}
|
|
1231
|
+
|
|
1232
|
+
export declare interface IWindowManager {
|
|
1233
|
+
getAll(): WindowEntity[];
|
|
1234
|
+
getById(id: string): WindowEntity | undefined;
|
|
1235
|
+
open(input: WindowInput): WindowEntity;
|
|
1236
|
+
close(id: string): void;
|
|
1237
|
+
minimize(id: string): void;
|
|
1238
|
+
maximize(id: string): void;
|
|
1239
|
+
restore(id: string): void;
|
|
1240
|
+
focus(id: string): void;
|
|
1241
|
+
move(id: string, x: number, y: number): void;
|
|
1242
|
+
resize(id: string, width: number, height: number): void;
|
|
1243
|
+
loadWindows(windows: WindowEntity[]): void;
|
|
1244
|
+
}
|
|
1245
|
+
|
|
1246
|
+
export declare const LanguageFlag: FC<LanguageFlagProps>;
|
|
1247
|
+
|
|
1248
|
+
declare interface LanguageFlagProps {
|
|
1249
|
+
lang: SupportedLanguage_2;
|
|
1250
|
+
size?: number;
|
|
1251
|
+
}
|
|
1252
|
+
|
|
1253
|
+
export declare const LanguageSelector: FC;
|
|
1254
|
+
|
|
1255
|
+
export declare const Launcher: FC<LauncherProps>;
|
|
1256
|
+
|
|
1257
|
+
export declare interface LauncherFolder {
|
|
1258
|
+
id: string;
|
|
1259
|
+
name: string;
|
|
1260
|
+
fcIcon: string;
|
|
1261
|
+
appIds: string[];
|
|
1262
|
+
isExpanded: boolean;
|
|
1263
|
+
isPredefined: boolean;
|
|
1264
|
+
order: number;
|
|
1265
|
+
}
|
|
1266
|
+
|
|
1267
|
+
export declare interface LauncherFolderInput {
|
|
1268
|
+
name: string;
|
|
1269
|
+
fcIcon: string;
|
|
1270
|
+
appIds?: string[];
|
|
1271
|
+
isExpanded?: boolean;
|
|
1272
|
+
isPredefined?: boolean;
|
|
1273
|
+
order?: number;
|
|
1274
|
+
}
|
|
1275
|
+
|
|
1276
|
+
export declare interface LauncherProps {
|
|
1277
|
+
fcIcon?: string;
|
|
1278
|
+
onContextMenu?: (e: React.MouseEvent) => void;
|
|
1279
|
+
}
|
|
1280
|
+
|
|
1281
|
+
export declare interface LoadingProgress {
|
|
1282
|
+
state: LoadingState;
|
|
1283
|
+
progress: number;
|
|
1284
|
+
message?: string;
|
|
1285
|
+
appName?: string;
|
|
1286
|
+
error?: string;
|
|
1287
|
+
}
|
|
1288
|
+
|
|
1289
|
+
export declare type LoadingState = 'idle' | 'fetching' | 'compiling' | 'loading' | 'ready' | 'error';
|
|
1290
|
+
|
|
1291
|
+
export declare const maximizeTransition: Transition;
|
|
1292
|
+
|
|
1293
|
+
export declare type MenuBarBuilder = (window: WindowEntity) => AppMenuElement[] | undefined;
|
|
1294
|
+
|
|
1295
|
+
export declare type MenuBarComponent = FC<MenuBarComponentProps>;
|
|
1296
|
+
|
|
1297
|
+
export declare interface MenuBarComponentProps {
|
|
1298
|
+
windowId: string;
|
|
1299
|
+
onExit: () => void;
|
|
1300
|
+
contentData?: Record<string, unknown>;
|
|
1301
|
+
}
|
|
1302
|
+
|
|
1303
|
+
export declare const MenuEditApp: FC<WindowContentProps>;
|
|
1304
|
+
|
|
1305
|
+
export declare const MenuEditAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
1306
|
+
|
|
1307
|
+
export declare const MenuEditMenuBar: FC<MenuBarComponentProps>;
|
|
1308
|
+
|
|
1309
|
+
export declare const MenuEditMenuBarLazy: MenuBarComponent;
|
|
1310
|
+
|
|
1311
|
+
export declare type MenuItem = MenuItemAction | MenuItemDivider | MenuItemSlider;
|
|
1312
|
+
|
|
1313
|
+
declare interface MenuItemAction {
|
|
1314
|
+
type: 'item';
|
|
1315
|
+
label: string;
|
|
1316
|
+
icon?: string;
|
|
1317
|
+
onClick: () => void;
|
|
1318
|
+
disabled?: boolean;
|
|
1319
|
+
}
|
|
1320
|
+
|
|
1321
|
+
declare interface MenuItemDivider {
|
|
1322
|
+
type: 'divider';
|
|
1323
|
+
}
|
|
1324
|
+
|
|
1325
|
+
declare interface MenuItemSlider {
|
|
1326
|
+
type: 'slider';
|
|
1327
|
+
label?: string;
|
|
1328
|
+
min: number;
|
|
1329
|
+
max: number;
|
|
1330
|
+
value: number;
|
|
1331
|
+
onChange: (value: number) => void;
|
|
1332
|
+
labelFormat?: (value: number) => string;
|
|
1333
|
+
}
|
|
1334
|
+
|
|
1335
|
+
export declare interface MenuPosition {
|
|
1336
|
+
x: number;
|
|
1337
|
+
y: number;
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1340
|
+
export declare function mergeAppsWithCustomApps(staticApps: AppEntry[], customApps: CustomAppManifest[]): AppEntry[];
|
|
1341
|
+
|
|
1342
|
+
/**
|
|
1343
|
+
* Runs the complete storage migration
|
|
1344
|
+
*
|
|
1345
|
+
* @returns MigrationResult with details about what was migrated
|
|
1346
|
+
*/
|
|
1347
|
+
export declare function migrateStorage(): Promise<MigrationResult>;
|
|
1348
|
+
|
|
1349
|
+
/**
|
|
1350
|
+
* Storage Migration Utility
|
|
1351
|
+
*
|
|
1352
|
+
* Migrates legacy storage keys from 'fran-desktop' prefix to 'fde-desktop' prefix.
|
|
1353
|
+
* This migration is idempotent and safe to run multiple times.
|
|
1354
|
+
*
|
|
1355
|
+
* Migration includes:
|
|
1356
|
+
* - IndexedDB databases: fran-desktop-fs → fde-desktop-fs, fran-desktop-blobs → fde-desktop-blobs
|
|
1357
|
+
* - localStorage keys: fran-desktop:* → fde-desktop:*
|
|
1358
|
+
* - Zustand persist key: fran-desktop → fde-desktop
|
|
1359
|
+
*/
|
|
1360
|
+
declare interface MigrationResult {
|
|
1361
|
+
indexedDB: {
|
|
1362
|
+
fs: boolean;
|
|
1363
|
+
blobs: boolean;
|
|
1364
|
+
};
|
|
1365
|
+
localStorage: {
|
|
1366
|
+
keysMigrated: number;
|
|
1367
|
+
};
|
|
1368
|
+
version: number;
|
|
1369
|
+
}
|
|
1370
|
+
|
|
1371
|
+
export declare const minimizeVariant: (deltaX: number, deltaY: number) => TargetAndTransition;
|
|
1372
|
+
|
|
1373
|
+
export declare interface MountedAppState {
|
|
1374
|
+
isLoaded: boolean;
|
|
1375
|
+
isLoading: boolean;
|
|
1376
|
+
isReady: boolean;
|
|
1377
|
+
hasError: boolean;
|
|
1378
|
+
error?: string;
|
|
1379
|
+
mountedAt: number;
|
|
1380
|
+
instance?: unknown;
|
|
1381
|
+
}
|
|
1382
|
+
|
|
1383
|
+
export declare const NotesApp: FC<WindowContentProps>;
|
|
1384
|
+
|
|
1385
|
+
export declare const NotesAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
1386
|
+
|
|
1387
|
+
export declare const NotesMenuBar: FC<MenuBarComponentProps>;
|
|
1388
|
+
|
|
1389
|
+
export declare const NotesMenuBarLazy: MenuBarComponent;
|
|
1390
|
+
|
|
1391
|
+
export declare interface NotificationItem {
|
|
1392
|
+
id: string;
|
|
1393
|
+
title: string;
|
|
1394
|
+
message: string;
|
|
1395
|
+
onClose?: () => void;
|
|
1396
|
+
fcIcon?: string;
|
|
1397
|
+
}
|
|
1398
|
+
|
|
1399
|
+
declare interface NotificationOptions_2 {
|
|
1400
|
+
title: string;
|
|
1401
|
+
message: string;
|
|
1402
|
+
type?: 'info' | 'success' | 'warning' | 'error';
|
|
1403
|
+
duration?: number;
|
|
1404
|
+
}
|
|
1405
|
+
export { NotificationOptions_2 as NotificationOptions }
|
|
1406
|
+
|
|
1407
|
+
export declare interface OpenAppOptions {
|
|
1408
|
+
title?: string;
|
|
1409
|
+
icon?: string;
|
|
1410
|
+
contentData?: Record<string, unknown>;
|
|
1411
|
+
position?: {
|
|
1412
|
+
x?: number;
|
|
1413
|
+
y?: number;
|
|
1414
|
+
};
|
|
1415
|
+
size?: {
|
|
1416
|
+
width?: number;
|
|
1417
|
+
height?: number;
|
|
1418
|
+
};
|
|
1419
|
+
}
|
|
1420
|
+
|
|
1421
|
+
declare type OpenHookOptions = {
|
|
1422
|
+
contentData?: Record<string, unknown>;
|
|
1423
|
+
position?: {
|
|
1424
|
+
x: number;
|
|
1425
|
+
y: number;
|
|
1426
|
+
};
|
|
1427
|
+
};
|
|
1428
|
+
|
|
1429
|
+
export declare const openVariants: {
|
|
1430
|
+
readonly scale: {
|
|
1431
|
+
readonly hidden: {
|
|
1432
|
+
readonly opacity: 0;
|
|
1433
|
+
readonly scale: 0.92;
|
|
1434
|
+
readonly y: 12;
|
|
1435
|
+
};
|
|
1436
|
+
readonly visible: {
|
|
1437
|
+
readonly opacity: 1;
|
|
1438
|
+
readonly scale: 1;
|
|
1439
|
+
readonly y: 0;
|
|
1440
|
+
readonly transition: Transition;
|
|
1441
|
+
};
|
|
1442
|
+
};
|
|
1443
|
+
readonly slide: {
|
|
1444
|
+
readonly hidden: {
|
|
1445
|
+
readonly opacity: 0;
|
|
1446
|
+
readonly y: 40;
|
|
1447
|
+
};
|
|
1448
|
+
readonly visible: {
|
|
1449
|
+
readonly opacity: 1;
|
|
1450
|
+
readonly y: 0;
|
|
1451
|
+
readonly transition: Transition;
|
|
1452
|
+
};
|
|
1453
|
+
};
|
|
1454
|
+
readonly fade: {
|
|
1455
|
+
readonly hidden: {
|
|
1456
|
+
readonly opacity: 0;
|
|
1457
|
+
};
|
|
1458
|
+
readonly visible: {
|
|
1459
|
+
readonly opacity: 1;
|
|
1460
|
+
readonly transition: Transition;
|
|
1461
|
+
};
|
|
1462
|
+
};
|
|
1463
|
+
};
|
|
1464
|
+
|
|
1465
|
+
export declare const panelVariants: {
|
|
1466
|
+
initial: {
|
|
1467
|
+
opacity: number;
|
|
1468
|
+
y: number;
|
|
1469
|
+
scale: number;
|
|
1470
|
+
};
|
|
1471
|
+
animate: {
|
|
1472
|
+
opacity: number;
|
|
1473
|
+
y: number;
|
|
1474
|
+
scale: number;
|
|
1475
|
+
transition: Transition;
|
|
1476
|
+
};
|
|
1477
|
+
exit: {
|
|
1478
|
+
opacity: number;
|
|
1479
|
+
y: number;
|
|
1480
|
+
scale: number;
|
|
1481
|
+
transition: Transition;
|
|
1482
|
+
};
|
|
1483
|
+
};
|
|
1484
|
+
|
|
1485
|
+
export declare interface PartialFdeTheme {
|
|
1486
|
+
mode?: ThemeMode;
|
|
1487
|
+
colors?: Partial<FdeTheme['colors']>;
|
|
1488
|
+
window?: Partial<WindowTheme>;
|
|
1489
|
+
taskbar?: Partial<TaskbarTheme>;
|
|
1490
|
+
desktop?: Partial<DesktopTheme>;
|
|
1491
|
+
}
|
|
1492
|
+
|
|
1493
|
+
export declare const PdfApp: FC<WindowContentProps>;
|
|
1494
|
+
|
|
1495
|
+
export declare const PdfAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
1496
|
+
|
|
1497
|
+
export declare const PdfMenuBar: FC<MenuBarComponentProps>;
|
|
1498
|
+
|
|
1499
|
+
export declare const PdfMenuBarLazy: MenuBarComponent;
|
|
1500
|
+
|
|
1501
|
+
declare interface PickerModalProps {
|
|
1502
|
+
opened: boolean;
|
|
1503
|
+
children: ReactNode;
|
|
1504
|
+
ariaLabelKey: string;
|
|
1505
|
+
ariaLabelNs?: string;
|
|
1506
|
+
}
|
|
1507
|
+
|
|
1508
|
+
export declare const PREDEFINED_LAUNCHER_FOLDERS: LauncherFolder[];
|
|
1509
|
+
|
|
1510
|
+
export declare function prefetchApps(apps: Array<{
|
|
1511
|
+
id: string;
|
|
1512
|
+
loader: AppLoader;
|
|
1513
|
+
}>): void;
|
|
1514
|
+
|
|
1515
|
+
export declare const PRESET_COLORS: string[];
|
|
1516
|
+
|
|
1517
|
+
export declare const PRESET_ICONS: string[];
|
|
1518
|
+
|
|
1519
|
+
export declare const PROFILE: {
|
|
1520
|
+
name: string;
|
|
1521
|
+
title: string;
|
|
1522
|
+
email: string;
|
|
1523
|
+
phone: string;
|
|
1524
|
+
location: string;
|
|
1525
|
+
linkedin: string;
|
|
1526
|
+
github: string;
|
|
1527
|
+
cvUrls: {
|
|
1528
|
+
en: string;
|
|
1529
|
+
es: string;
|
|
1530
|
+
};
|
|
1531
|
+
};
|
|
1532
|
+
|
|
1533
|
+
export declare const randomWindowPosition: () => {
|
|
1534
|
+
x: number;
|
|
1535
|
+
y: number;
|
|
1536
|
+
};
|
|
1537
|
+
|
|
1538
|
+
export declare const registerAppFileHandler: (handler: AppFileHandler) => void;
|
|
1539
|
+
|
|
1540
|
+
export declare const registerCloseInterceptor: (windowId: string, interceptor: () => boolean) => void;
|
|
1541
|
+
|
|
1542
|
+
export declare function registerComponents(entries: Record<string, AppRegistryEntry>): void;
|
|
1543
|
+
|
|
1544
|
+
export declare function registerCustomApps(apps: AppEntry[]): void;
|
|
1545
|
+
|
|
1546
|
+
export declare function registerDesktopApps(appIds: string[]): void;
|
|
1547
|
+
|
|
1548
|
+
declare interface RegistryContextValue {
|
|
1549
|
+
register: (id: string, rect: DOMRect) => void;
|
|
1550
|
+
unregister: (id: string) => void;
|
|
1551
|
+
getRect: (id: string) => DOMRect | undefined;
|
|
1552
|
+
}
|
|
1553
|
+
|
|
1554
|
+
export declare function removeFromManifestCache(appId: string): void;
|
|
1555
|
+
|
|
1556
|
+
export declare function resetBaseUrlCache(): void;
|
|
1557
|
+
|
|
1558
|
+
export declare const resetFileSystem: () => void;
|
|
1559
|
+
|
|
1560
|
+
/* Excluded from this release type: resetHMRState */
|
|
1561
|
+
|
|
1562
|
+
export declare const resetWindowManager: () => void;
|
|
1563
|
+
|
|
1564
|
+
export declare function resolveFileUrl(url: string, signal?: AbortSignal): Promise<string>;
|
|
1565
|
+
|
|
1566
|
+
export declare function resolveUrl(relativeUrl: string): string;
|
|
1567
|
+
|
|
1568
|
+
export declare const restoreVariant: (deltaX: number, deltaY: number) => TargetAndTransition;
|
|
1569
|
+
|
|
1570
|
+
declare type Runtime = 'browser' | 'docker' | 'electron';
|
|
1571
|
+
|
|
1572
|
+
export declare interface SaveDialogOptions {
|
|
1573
|
+
defaultName?: string;
|
|
1574
|
+
defaultPath?: string;
|
|
1575
|
+
acceptedMimeTypes?: string[];
|
|
1576
|
+
}
|
|
1577
|
+
|
|
1578
|
+
export declare function setApiBaseUrl(url: string): void;
|
|
1579
|
+
|
|
1580
|
+
export declare function setTestBaseUrl(url: string | null): void;
|
|
1581
|
+
|
|
1582
|
+
export declare const SETTINGS_SECTIONS: SettingsSection[];
|
|
1583
|
+
|
|
1584
|
+
export declare const SettingsApp: FC<WindowContentProps>;
|
|
1585
|
+
|
|
1586
|
+
export declare const SettingsAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
1587
|
+
|
|
1588
|
+
export declare const SettingsMenuBar: FC<MenuBarComponentProps>;
|
|
1589
|
+
|
|
1590
|
+
export declare const SettingsMenuBarLazy: MenuBarComponent;
|
|
1591
|
+
|
|
1592
|
+
export declare interface SettingsSection {
|
|
1593
|
+
id: 'wallpaper' | 'appearance' | 'launcher' | 'font' | 'language' | 'reset';
|
|
1594
|
+
label: string;
|
|
1595
|
+
fcIcon: string;
|
|
1596
|
+
description: string;
|
|
1597
|
+
}
|
|
1598
|
+
|
|
1599
|
+
export declare const SettingsSectionComponent: FC<SettingsSectionProps>;
|
|
1600
|
+
|
|
1601
|
+
declare interface SettingsSectionProps {
|
|
1602
|
+
title: string;
|
|
1603
|
+
description?: string;
|
|
1604
|
+
children: ReactNode;
|
|
1605
|
+
}
|
|
1606
|
+
|
|
1607
|
+
export declare function sortDesktopIcons(icons: DesktopIconEntity[], desktopAppsOrder?: readonly string[]): DesktopIconEntity[];
|
|
1608
|
+
|
|
1609
|
+
export declare const sortDesktopIconsByMode: (icons: DesktopIconEntity[], mode: DesktopSortMode_2) => DesktopIconEntity[];
|
|
1610
|
+
|
|
1611
|
+
export declare const sortNodes: (nodes: FSNode[]) => FSNode[];
|
|
1612
|
+
|
|
1613
|
+
export declare const sortNodesByMode: (nodes: FSNode[], mode: DesktopSortMode_2) => FSNode[];
|
|
1614
|
+
|
|
1615
|
+
export declare type SortOption = (typeof SortOptions)[keyof typeof SortOptions];
|
|
1616
|
+
|
|
1617
|
+
export declare const SortOptions: {
|
|
1618
|
+
readonly BY_TYPE: "byType";
|
|
1619
|
+
readonly BY_NAME: "byName";
|
|
1620
|
+
readonly BY_DATE: "byDate";
|
|
1621
|
+
};
|
|
1622
|
+
|
|
1623
|
+
export declare const StorybookApp: FC<WindowContentProps>;
|
|
1624
|
+
|
|
1625
|
+
export declare const SUPPORTED_LANGUAGES: readonly ["en", "es"];
|
|
1626
|
+
|
|
1627
|
+
declare const SUPPORTED_LANGUAGES_2: readonly ["en", "es"];
|
|
1628
|
+
|
|
1629
|
+
export declare type SupportedLanguage = 'en' | 'es';
|
|
1630
|
+
|
|
1631
|
+
declare type SupportedLanguage_2 = (typeof SUPPORTED_LANGUAGES_2)[number];
|
|
1632
|
+
|
|
1633
|
+
declare type SupportedLanguage_3 = (typeof SUPPORTED_LANGUAGES)[number];
|
|
1634
|
+
|
|
1635
|
+
export declare function syncWithServer(currentRegisteredApps: Record<string, CustomAppManifest>): Promise<{
|
|
1636
|
+
added: CustomAppManifest[];
|
|
1637
|
+
removed: string[];
|
|
1638
|
+
manifest: AppsManifest | null;
|
|
1639
|
+
}>;
|
|
1640
|
+
|
|
1641
|
+
export declare const Taskbar: FC<TaskbarProps>;
|
|
1642
|
+
|
|
1643
|
+
export declare const TASKBAR_HEIGHT = 48;
|
|
1644
|
+
|
|
1645
|
+
export declare const TaskbarContextMenu: FC<TaskbarContextMenuProps>;
|
|
1646
|
+
|
|
1647
|
+
export declare interface TaskbarContextMenuProps {
|
|
1648
|
+
windowMenuOpened: boolean;
|
|
1649
|
+
panelMenuOpened: boolean;
|
|
1650
|
+
launcherMenuOpened: boolean;
|
|
1651
|
+
menuPosition: MenuPosition;
|
|
1652
|
+
targetWindowId: string | null;
|
|
1653
|
+
targetWindowState: string | null;
|
|
1654
|
+
onCloseWindow: (id: string) => void;
|
|
1655
|
+
onMinimizeWindow: (id: string) => void;
|
|
1656
|
+
onMaximizeWindow: (id: string) => void;
|
|
1657
|
+
onRestoreWindow: (id: string) => void;
|
|
1658
|
+
onClose: () => void;
|
|
1659
|
+
}
|
|
1660
|
+
|
|
1661
|
+
export declare type TaskbarMenuType = 'window' | 'panel' | 'launcher' | null;
|
|
1662
|
+
|
|
1663
|
+
declare interface TaskbarProps {
|
|
1664
|
+
calendarSlot?: ReactNode;
|
|
1665
|
+
}
|
|
1666
|
+
|
|
1667
|
+
export declare interface TaskbarTheme {
|
|
1668
|
+
height: number;
|
|
1669
|
+
position: 'bottom' | 'top';
|
|
1670
|
+
background: string;
|
|
1671
|
+
blur: boolean;
|
|
1672
|
+
}
|
|
1673
|
+
|
|
1674
|
+
export declare const TEXT_MIME_TYPES: Set<string>;
|
|
1675
|
+
|
|
1676
|
+
export declare interface Theme {
|
|
1677
|
+
mode: ThemeMode;
|
|
1678
|
+
desktop: string;
|
|
1679
|
+
taskbar: string;
|
|
1680
|
+
window: string;
|
|
1681
|
+
accent: string;
|
|
1682
|
+
}
|
|
1683
|
+
|
|
1684
|
+
export declare type ThemeMode = 'light' | 'dark';
|
|
1685
|
+
|
|
1686
|
+
export declare function ThemeProvider({ children, initialMode, mode: externalMode, theme, }: ThemeProviderProps): default_2.ReactElement;
|
|
1687
|
+
|
|
1688
|
+
export declare interface ThemeProviderProps {
|
|
1689
|
+
children: default_2.ReactNode;
|
|
1690
|
+
initialMode?: ThemeMode;
|
|
1691
|
+
/** External mode override - when provided, syncs internal state with this value */
|
|
1692
|
+
mode?: ThemeMode;
|
|
1693
|
+
theme?: PartialFdeTheme;
|
|
1694
|
+
}
|
|
1695
|
+
|
|
1696
|
+
export declare const toMantineTheme: (theme: Theme) => MantineThemeOverride;
|
|
1697
|
+
|
|
1698
|
+
export declare const unregisterCloseInterceptor: (windowId: string) => void;
|
|
1699
|
+
|
|
1700
|
+
export declare const updateLauncherFolder: (folder: LauncherFolder, updates: Partial<Omit<LauncherFolder, "id" | "isPredefined">>) => LauncherFolder;
|
|
1701
|
+
|
|
1702
|
+
export declare function updateManifestCache(manifest: CustomAppManifest): void;
|
|
1703
|
+
|
|
1704
|
+
export declare const UploaderApp: FC<WindowContentProps>;
|
|
1705
|
+
|
|
1706
|
+
export declare const UploaderAppLazy: LazyExoticComponent<FC<WindowContentProps>>;
|
|
1707
|
+
|
|
1708
|
+
export declare function useAdaptiveDimensions(): AdaptiveDimensions;
|
|
1709
|
+
|
|
1710
|
+
export declare const useAnimationDuration: () => {
|
|
1711
|
+
duration: number;
|
|
1712
|
+
windowVariants: Variants;
|
|
1713
|
+
panelVariants: {
|
|
1714
|
+
initial: {
|
|
1715
|
+
opacity: number;
|
|
1716
|
+
y: number;
|
|
1717
|
+
scale: number;
|
|
1718
|
+
};
|
|
1719
|
+
animate: {
|
|
1720
|
+
opacity: number;
|
|
1721
|
+
y: number;
|
|
1722
|
+
scale: number;
|
|
1723
|
+
transition: Transition;
|
|
1724
|
+
};
|
|
1725
|
+
exit: {
|
|
1726
|
+
opacity: number;
|
|
1727
|
+
y: number;
|
|
1728
|
+
scale: number;
|
|
1729
|
+
transition: Transition;
|
|
1730
|
+
};
|
|
1731
|
+
};
|
|
1732
|
+
minimizeVariant: (deltaX: number, deltaY: number) => TargetAndTransition;
|
|
1733
|
+
restoreVariant: (deltaX: number, deltaY: number) => TargetAndTransition;
|
|
1734
|
+
maximizeTransition: Transition;
|
|
1735
|
+
easeIn: Transition;
|
|
1736
|
+
easeOut: Transition;
|
|
1737
|
+
};
|
|
1738
|
+
|
|
1739
|
+
/**
|
|
1740
|
+
* Applies the currently selected font stack to the document root.
|
|
1741
|
+
* Also re-injects <link> tags for all previously downloaded fonts on mount.
|
|
1742
|
+
*/
|
|
1743
|
+
export declare const useApplyFont: () => void;
|
|
1744
|
+
|
|
1745
|
+
export declare function useAppName(appId: string | undefined): string;
|
|
1746
|
+
|
|
1747
|
+
export declare const useAppReady: () => AppReadyContextValue;
|
|
1748
|
+
|
|
1749
|
+
export declare const useAppTempMemoryStore: UseBoundStore<Omit<StoreApi<AppTempMemoryState>, "setState" | "persist"> & {
|
|
1750
|
+
setState(partial: AppTempMemoryState | Partial<AppTempMemoryState> | ((state: AppTempMemoryState) => AppTempMemoryState | Partial<AppTempMemoryState>), replace?: false | undefined): unknown;
|
|
1751
|
+
setState(state: AppTempMemoryState | ((state: AppTempMemoryState) => AppTempMemoryState), replace: true): unknown;
|
|
1752
|
+
persist: {
|
|
1753
|
+
setOptions: (options: Partial<PersistOptions<AppTempMemoryState, unknown, unknown>>) => void;
|
|
1754
|
+
clearStorage: () => void;
|
|
1755
|
+
rehydrate: () => Promise<void> | void;
|
|
1756
|
+
hasHydrated: () => boolean;
|
|
1757
|
+
onHydrate: (fn: (state: AppTempMemoryState) => void) => () => void;
|
|
1758
|
+
onFinishHydration: (fn: (state: AppTempMemoryState) => void) => () => void;
|
|
1759
|
+
getOptions: () => Partial<PersistOptions<AppTempMemoryState, unknown, unknown>>;
|
|
1760
|
+
};
|
|
1761
|
+
}>;
|
|
1762
|
+
|
|
1763
|
+
export declare const useAppUpdate: () => void;
|
|
1764
|
+
|
|
1765
|
+
export declare const useClock: () => string;
|
|
1766
|
+
|
|
1767
|
+
export declare function useCloseInterceptor({ isDirtyGetter, windowId, onDiscard, onSave, }: UseCloseInterceptorOptions): void;
|
|
1768
|
+
|
|
1769
|
+
export declare interface UseCloseInterceptorOptions {
|
|
1770
|
+
isDirtyGetter: () => boolean;
|
|
1771
|
+
windowId?: string;
|
|
1772
|
+
onDiscard?: () => void;
|
|
1773
|
+
onSave?: () => void;
|
|
1774
|
+
}
|
|
1775
|
+
|
|
1776
|
+
export declare const useCloseModalStore: UseBoundStore<StoreApi<CloseModalState & CloseModalActions>>;
|
|
1777
|
+
|
|
1778
|
+
export declare function useCollapsible(initialExpanded?: Set<string>): {
|
|
1779
|
+
expanded: Set<string>;
|
|
1780
|
+
toggle: (id: string) => void;
|
|
1781
|
+
expand: (id: string) => void;
|
|
1782
|
+
collapse: (id: string) => void;
|
|
1783
|
+
expandAll: (ids: string[]) => void;
|
|
1784
|
+
collapseAll: () => void;
|
|
1785
|
+
reset: () => void;
|
|
1786
|
+
isExpanded: (id: string) => boolean;
|
|
1787
|
+
};
|
|
1788
|
+
|
|
1789
|
+
export declare const useContextMenu: (offsetY?: number, appId?: string) => UseContextMenuReturn;
|
|
1790
|
+
|
|
1791
|
+
declare interface UseContextMenuReturn {
|
|
1792
|
+
opened: boolean;
|
|
1793
|
+
position: MenuPosition;
|
|
1794
|
+
open: (e: MouseEvent_2, offsetY?: number) => void;
|
|
1795
|
+
close: () => void;
|
|
1796
|
+
}
|
|
1797
|
+
|
|
1798
|
+
export declare function useCustomAppHMR(callbacksArg: HMRCallbacks): void;
|
|
1799
|
+
|
|
1800
|
+
export declare function useCustomAppLifecycle(): void;
|
|
1801
|
+
|
|
1802
|
+
export declare const useCustomAppStore: UseBoundStore<StoreApi<CustomAppState>>;
|
|
1803
|
+
|
|
1804
|
+
export declare const useDesktopStore: UseBoundStore<Omit<StoreApi<DesktopState>, "setState" | "persist"> & {
|
|
1805
|
+
setState(partial: DesktopState | Partial<DesktopState> | ((state: DesktopState) => DesktopState | Partial<DesktopState>), replace?: false | undefined): unknown;
|
|
1806
|
+
setState(state: DesktopState | ((state: DesktopState) => DesktopState), replace: true): unknown;
|
|
1807
|
+
persist: {
|
|
1808
|
+
setOptions: (options: Partial<PersistOptions<DesktopState, unknown, unknown>>) => void;
|
|
1809
|
+
clearStorage: () => void;
|
|
1810
|
+
rehydrate: () => Promise<void> | void;
|
|
1811
|
+
hasHydrated: () => boolean;
|
|
1812
|
+
onHydrate: (fn: (state: DesktopState) => void) => () => void;
|
|
1813
|
+
onFinishHydration: (fn: (state: DesktopState) => void) => () => void;
|
|
1814
|
+
getOptions: () => Partial<PersistOptions<DesktopState, unknown, unknown>>;
|
|
1815
|
+
};
|
|
1816
|
+
}>;
|
|
1817
|
+
|
|
1818
|
+
export declare function useDeviceDetection(): DeviceInfo;
|
|
1819
|
+
|
|
1820
|
+
export declare const useDownload: () => UseDownloadReturn;
|
|
1821
|
+
|
|
1822
|
+
export declare interface UseDownloadReturn extends DownloadState {
|
|
1823
|
+
download: (url: string) => Promise<string | null>;
|
|
1824
|
+
reset: () => void;
|
|
1825
|
+
}
|
|
1826
|
+
|
|
1827
|
+
export declare function useDragDropState(): DragDropContextValue;
|
|
1828
|
+
|
|
1829
|
+
export declare function useDraggableItem(options: UseDraggableItemOptions): UseDraggableItemReturn;
|
|
1830
|
+
|
|
1831
|
+
declare interface UseDraggableItemOptions {
|
|
1832
|
+
item: DragItemData;
|
|
1833
|
+
disabled?: boolean;
|
|
1834
|
+
}
|
|
1835
|
+
|
|
1836
|
+
declare interface UseDraggableItemReturn {
|
|
1837
|
+
attributes: React.HTMLAttributes<HTMLElement>;
|
|
1838
|
+
listeners: Record<string, unknown> | undefined;
|
|
1839
|
+
setNodeRef: (node: HTMLElement | null) => void;
|
|
1840
|
+
isDragging: boolean;
|
|
1841
|
+
transform: {
|
|
1842
|
+
x: number;
|
|
1843
|
+
y: number;
|
|
1844
|
+
} | null;
|
|
1845
|
+
style: React.CSSProperties;
|
|
1846
|
+
}
|
|
1847
|
+
|
|
1848
|
+
export declare function useDroppableArea(options: UseDroppableAreaOptions): UseDroppableAreaReturn;
|
|
1849
|
+
|
|
1850
|
+
declare interface UseDroppableAreaOptions {
|
|
1851
|
+
target: DropTarget;
|
|
1852
|
+
disabled?: boolean;
|
|
1853
|
+
}
|
|
1854
|
+
|
|
1855
|
+
declare interface UseDroppableAreaReturn {
|
|
1856
|
+
setNodeRef: (node: HTMLElement | null) => void;
|
|
1857
|
+
isOver: boolean;
|
|
1858
|
+
active: DragItemData | null;
|
|
1859
|
+
}
|
|
1860
|
+
|
|
1861
|
+
export declare const useDynamicIcon: (name: string, library: IconLibrary) => IconType | null;
|
|
1862
|
+
|
|
1863
|
+
export declare const useDynamicIconElement: (name: string, library: IconLibrary, props?: IconBaseProps) => ReactElement | null;
|
|
1864
|
+
|
|
1865
|
+
export declare const useFcIcon: (name: string) => IconType | null;
|
|
1866
|
+
|
|
1867
|
+
export declare const useFcIconElement: (name: string, props?: IconBaseProps) => ReactElement | null;
|
|
1868
|
+
|
|
1869
|
+
export declare function useFdeApi(): FdeDesktopAPI | null;
|
|
1870
|
+
|
|
1871
|
+
export declare function useFdeContext(): FdeContextValue;
|
|
1872
|
+
|
|
1873
|
+
export declare const useFiIcon: (name: string) => IconType | null;
|
|
1874
|
+
|
|
1875
|
+
export declare const useFiIconElement: (name: string, props?: IconBaseProps) => ReactElement | null;
|
|
1876
|
+
|
|
1877
|
+
export declare function useFolderName(folder: {
|
|
1878
|
+
id: string;
|
|
1879
|
+
name: string;
|
|
1880
|
+
isPredefined: boolean;
|
|
1881
|
+
}): string;
|
|
1882
|
+
|
|
1883
|
+
export declare const useFontDownload: (font: string | null) => {
|
|
1884
|
+
progress: FontDownloadProgress;
|
|
1885
|
+
isDownloaded: boolean;
|
|
1886
|
+
reset: () => void;
|
|
1887
|
+
data: FontDownloadResult;
|
|
1888
|
+
error: Error;
|
|
1889
|
+
isError: true;
|
|
1890
|
+
isPending: false;
|
|
1891
|
+
isLoading: false;
|
|
1892
|
+
isLoadingError: false;
|
|
1893
|
+
isRefetchError: true;
|
|
1894
|
+
isSuccess: false;
|
|
1895
|
+
isPlaceholderData: false;
|
|
1896
|
+
status: "error";
|
|
1897
|
+
dataUpdatedAt: number;
|
|
1898
|
+
errorUpdatedAt: number;
|
|
1899
|
+
failureCount: number;
|
|
1900
|
+
failureReason: Error | null;
|
|
1901
|
+
errorUpdateCount: number;
|
|
1902
|
+
isFetched: boolean;
|
|
1903
|
+
isFetchedAfterMount: boolean;
|
|
1904
|
+
isFetching: boolean;
|
|
1905
|
+
isInitialLoading: boolean;
|
|
1906
|
+
isPaused: boolean;
|
|
1907
|
+
isRefetching: boolean;
|
|
1908
|
+
isStale: boolean;
|
|
1909
|
+
isEnabled: boolean;
|
|
1910
|
+
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<FontDownloadResult, Error>>;
|
|
1911
|
+
fetchStatus: FetchStatus;
|
|
1912
|
+
promise: Promise<FontDownloadResult>;
|
|
1913
|
+
} | {
|
|
1914
|
+
progress: FontDownloadProgress;
|
|
1915
|
+
isDownloaded: boolean;
|
|
1916
|
+
reset: () => void;
|
|
1917
|
+
data: FontDownloadResult;
|
|
1918
|
+
error: null;
|
|
1919
|
+
isError: false;
|
|
1920
|
+
isPending: false;
|
|
1921
|
+
isLoading: false;
|
|
1922
|
+
isLoadingError: false;
|
|
1923
|
+
isRefetchError: false;
|
|
1924
|
+
isSuccess: true;
|
|
1925
|
+
isPlaceholderData: false;
|
|
1926
|
+
status: "success";
|
|
1927
|
+
dataUpdatedAt: number;
|
|
1928
|
+
errorUpdatedAt: number;
|
|
1929
|
+
failureCount: number;
|
|
1930
|
+
failureReason: Error | null;
|
|
1931
|
+
errorUpdateCount: number;
|
|
1932
|
+
isFetched: boolean;
|
|
1933
|
+
isFetchedAfterMount: boolean;
|
|
1934
|
+
isFetching: boolean;
|
|
1935
|
+
isInitialLoading: boolean;
|
|
1936
|
+
isPaused: boolean;
|
|
1937
|
+
isRefetching: boolean;
|
|
1938
|
+
isStale: boolean;
|
|
1939
|
+
isEnabled: boolean;
|
|
1940
|
+
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<FontDownloadResult, Error>>;
|
|
1941
|
+
fetchStatus: FetchStatus;
|
|
1942
|
+
promise: Promise<FontDownloadResult>;
|
|
1943
|
+
} | {
|
|
1944
|
+
progress: FontDownloadProgress;
|
|
1945
|
+
isDownloaded: boolean;
|
|
1946
|
+
reset: () => void;
|
|
1947
|
+
data: undefined;
|
|
1948
|
+
error: Error;
|
|
1949
|
+
isError: true;
|
|
1950
|
+
isPending: false;
|
|
1951
|
+
isLoading: false;
|
|
1952
|
+
isLoadingError: true;
|
|
1953
|
+
isRefetchError: false;
|
|
1954
|
+
isSuccess: false;
|
|
1955
|
+
isPlaceholderData: false;
|
|
1956
|
+
status: "error";
|
|
1957
|
+
dataUpdatedAt: number;
|
|
1958
|
+
errorUpdatedAt: number;
|
|
1959
|
+
failureCount: number;
|
|
1960
|
+
failureReason: Error | null;
|
|
1961
|
+
errorUpdateCount: number;
|
|
1962
|
+
isFetched: boolean;
|
|
1963
|
+
isFetchedAfterMount: boolean;
|
|
1964
|
+
isFetching: boolean;
|
|
1965
|
+
isInitialLoading: boolean;
|
|
1966
|
+
isPaused: boolean;
|
|
1967
|
+
isRefetching: boolean;
|
|
1968
|
+
isStale: boolean;
|
|
1969
|
+
isEnabled: boolean;
|
|
1970
|
+
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<FontDownloadResult, Error>>;
|
|
1971
|
+
fetchStatus: FetchStatus;
|
|
1972
|
+
promise: Promise<FontDownloadResult>;
|
|
1973
|
+
} | {
|
|
1974
|
+
progress: FontDownloadProgress;
|
|
1975
|
+
isDownloaded: boolean;
|
|
1976
|
+
reset: () => void;
|
|
1977
|
+
data: undefined;
|
|
1978
|
+
error: null;
|
|
1979
|
+
isError: false;
|
|
1980
|
+
isPending: true;
|
|
1981
|
+
isLoading: true;
|
|
1982
|
+
isLoadingError: false;
|
|
1983
|
+
isRefetchError: false;
|
|
1984
|
+
isSuccess: false;
|
|
1985
|
+
isPlaceholderData: false;
|
|
1986
|
+
status: "pending";
|
|
1987
|
+
dataUpdatedAt: number;
|
|
1988
|
+
errorUpdatedAt: number;
|
|
1989
|
+
failureCount: number;
|
|
1990
|
+
failureReason: Error | null;
|
|
1991
|
+
errorUpdateCount: number;
|
|
1992
|
+
isFetched: boolean;
|
|
1993
|
+
isFetchedAfterMount: boolean;
|
|
1994
|
+
isFetching: boolean;
|
|
1995
|
+
isInitialLoading: boolean;
|
|
1996
|
+
isPaused: boolean;
|
|
1997
|
+
isRefetching: boolean;
|
|
1998
|
+
isStale: boolean;
|
|
1999
|
+
isEnabled: boolean;
|
|
2000
|
+
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<FontDownloadResult, Error>>;
|
|
2001
|
+
fetchStatus: FetchStatus;
|
|
2002
|
+
promise: Promise<FontDownloadResult>;
|
|
2003
|
+
} | {
|
|
2004
|
+
progress: FontDownloadProgress;
|
|
2005
|
+
isDownloaded: boolean;
|
|
2006
|
+
reset: () => void;
|
|
2007
|
+
data: undefined;
|
|
2008
|
+
error: null;
|
|
2009
|
+
isError: false;
|
|
2010
|
+
isPending: true;
|
|
2011
|
+
isLoadingError: false;
|
|
2012
|
+
isRefetchError: false;
|
|
2013
|
+
isSuccess: false;
|
|
2014
|
+
isPlaceholderData: false;
|
|
2015
|
+
status: "pending";
|
|
2016
|
+
dataUpdatedAt: number;
|
|
2017
|
+
errorUpdatedAt: number;
|
|
2018
|
+
failureCount: number;
|
|
2019
|
+
failureReason: Error | null;
|
|
2020
|
+
errorUpdateCount: number;
|
|
2021
|
+
isFetched: boolean;
|
|
2022
|
+
isFetchedAfterMount: boolean;
|
|
2023
|
+
isFetching: boolean;
|
|
2024
|
+
isLoading: boolean;
|
|
2025
|
+
isInitialLoading: boolean;
|
|
2026
|
+
isPaused: boolean;
|
|
2027
|
+
isRefetching: boolean;
|
|
2028
|
+
isStale: boolean;
|
|
2029
|
+
isEnabled: boolean;
|
|
2030
|
+
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<FontDownloadResult, Error>>;
|
|
2031
|
+
fetchStatus: FetchStatus;
|
|
2032
|
+
promise: Promise<FontDownloadResult>;
|
|
2033
|
+
} | {
|
|
2034
|
+
progress: FontDownloadProgress;
|
|
2035
|
+
isDownloaded: boolean;
|
|
2036
|
+
reset: () => void;
|
|
2037
|
+
data: FontDownloadResult;
|
|
2038
|
+
isError: false;
|
|
2039
|
+
error: null;
|
|
2040
|
+
isPending: false;
|
|
2041
|
+
isLoading: false;
|
|
2042
|
+
isLoadingError: false;
|
|
2043
|
+
isRefetchError: false;
|
|
2044
|
+
isSuccess: true;
|
|
2045
|
+
isPlaceholderData: true;
|
|
2046
|
+
status: "success";
|
|
2047
|
+
dataUpdatedAt: number;
|
|
2048
|
+
errorUpdatedAt: number;
|
|
2049
|
+
failureCount: number;
|
|
2050
|
+
failureReason: Error | null;
|
|
2051
|
+
errorUpdateCount: number;
|
|
2052
|
+
isFetched: boolean;
|
|
2053
|
+
isFetchedAfterMount: boolean;
|
|
2054
|
+
isFetching: boolean;
|
|
2055
|
+
isInitialLoading: boolean;
|
|
2056
|
+
isPaused: boolean;
|
|
2057
|
+
isRefetching: boolean;
|
|
2058
|
+
isStale: boolean;
|
|
2059
|
+
isEnabled: boolean;
|
|
2060
|
+
refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<FontDownloadResult, Error>>;
|
|
2061
|
+
fetchStatus: FetchStatus;
|
|
2062
|
+
promise: Promise<FontDownloadResult>;
|
|
2063
|
+
};
|
|
2064
|
+
|
|
2065
|
+
export declare function useIsDirty<T>({ snapshotRef, getCurrentState, initialSnapshot, onChange, appId, }: UseIsDirtyOptions<T>): {
|
|
2066
|
+
isDirty: boolean;
|
|
2067
|
+
takeSnapshot: () => void;
|
|
2068
|
+
reset: () => void;
|
|
2069
|
+
};
|
|
2070
|
+
|
|
2071
|
+
export declare interface UseIsDirtyOptions<T> {
|
|
2072
|
+
/** Mutable ref that holds the snapshot (used internally). */
|
|
2073
|
+
snapshotRef: React.MutableRefObject<T | null>;
|
|
2074
|
+
/** Function that returns the current state of the app. */
|
|
2075
|
+
getCurrentState: () => T;
|
|
2076
|
+
/** Optional initial snapshot – used when no stored snapshot exists. */
|
|
2077
|
+
initialSnapshot?: T;
|
|
2078
|
+
/** Optional callback invoked when the dirty flag changes. */
|
|
2079
|
+
onChange?: (isDirty: boolean) => void;
|
|
2080
|
+
/** Unique identifier for the app – used to persist the snapshot in the global store. */
|
|
2081
|
+
appId?: string;
|
|
2082
|
+
}
|
|
2083
|
+
|
|
2084
|
+
export declare function useLanguageSync(): void;
|
|
2085
|
+
|
|
2086
|
+
export declare const useNotifications: () => {
|
|
2087
|
+
notifications: NotificationItem[];
|
|
2088
|
+
notify: (title: string, message: string, options?: {
|
|
2089
|
+
fcIcon?: string;
|
|
2090
|
+
onClose?: () => void;
|
|
2091
|
+
}) => string;
|
|
2092
|
+
dismiss: (id: string) => void;
|
|
2093
|
+
addNotification: (item: NotificationItem) => void;
|
|
2094
|
+
removeNotification: (id: string) => void;
|
|
2095
|
+
};
|
|
2096
|
+
|
|
2097
|
+
export declare const useOpenApp: () => (appId: string, { contentData, position }?: OpenHookOptions) => void;
|
|
2098
|
+
|
|
2099
|
+
export declare function useResolvedUrl(url: string | undefined): string | undefined;
|
|
2100
|
+
|
|
2101
|
+
export declare function useSearchFilter<T>(items: T[], searchQuery: string, getSearchableText: (item: T) => string | string[]): T[];
|
|
2102
|
+
|
|
2103
|
+
export declare const useSettingsStore: UseBoundStore<Omit<StoreApi<ISettingsState>, "setState" | "persist"> & {
|
|
2104
|
+
setState(partial: ISettingsState | Partial<ISettingsState> | ((state: ISettingsState) => ISettingsState | Partial<ISettingsState>), replace?: false | undefined): unknown;
|
|
2105
|
+
setState(state: ISettingsState | ((state: ISettingsState) => ISettingsState), replace: true): unknown;
|
|
2106
|
+
persist: {
|
|
2107
|
+
setOptions: (options: Partial<PersistOptions<ISettingsState, unknown, unknown>>) => void;
|
|
2108
|
+
clearStorage: () => void;
|
|
2109
|
+
rehydrate: () => Promise<void> | void;
|
|
2110
|
+
hasHydrated: () => boolean;
|
|
2111
|
+
onHydrate: (fn: (state: ISettingsState) => void) => () => void;
|
|
2112
|
+
onFinishHydration: (fn: (state: ISettingsState) => void) => () => void;
|
|
2113
|
+
getOptions: () => Partial<PersistOptions<ISettingsState, unknown, unknown>>;
|
|
2114
|
+
};
|
|
2115
|
+
}>;
|
|
2116
|
+
|
|
2117
|
+
export declare const useSystemTheme: () => void;
|
|
2118
|
+
|
|
2119
|
+
export declare const useTaskbarContextMenu: () => UseTaskbarContextMenuReturn;
|
|
2120
|
+
|
|
2121
|
+
declare interface UseTaskbarContextMenuReturn {
|
|
2122
|
+
activeMenu: TaskbarMenuType;
|
|
2123
|
+
position: MenuPosition;
|
|
2124
|
+
targetWindowId: string | null;
|
|
2125
|
+
windowMenuOpened: boolean;
|
|
2126
|
+
panelMenuOpened: boolean;
|
|
2127
|
+
launcherMenuOpened: boolean;
|
|
2128
|
+
openWindowMenu: (e: React.MouseEvent, windowId: string) => void;
|
|
2129
|
+
openPanelMenu: (e: React.MouseEvent) => void;
|
|
2130
|
+
openLauncherMenu: (e: React.MouseEvent) => void;
|
|
2131
|
+
closeMenu: () => void;
|
|
2132
|
+
}
|
|
2133
|
+
|
|
2134
|
+
export declare const useTaskbarHeight: (opened: boolean) => {
|
|
2135
|
+
menuRef: RefObject<HTMLDivElement | null>;
|
|
2136
|
+
menuHeight: number;
|
|
2137
|
+
};
|
|
2138
|
+
|
|
2139
|
+
export declare function useTheme(): FdeTheme;
|
|
2140
|
+
|
|
2141
|
+
export declare function useThemeContext(): IThemeProvider;
|
|
2142
|
+
|
|
2143
|
+
export declare const useVscIcon: (name: string) => IconType | null;
|
|
2144
|
+
|
|
2145
|
+
export declare const useVscIconElement: (name: string, props?: IconBaseProps) => ReactElement | null;
|
|
2146
|
+
|
|
2147
|
+
export declare const useWindowButtonRegistry: () => RegistryContextValue;
|
|
2148
|
+
|
|
2149
|
+
export { uuidv4 }
|
|
2150
|
+
|
|
2151
|
+
export declare const VscIcon: FC<VscIconProps>;
|
|
2152
|
+
|
|
2153
|
+
declare interface VscIconProps {
|
|
2154
|
+
name: string;
|
|
2155
|
+
size?: number;
|
|
2156
|
+
color?: string;
|
|
2157
|
+
}
|
|
2158
|
+
|
|
2159
|
+
export declare function waitForContainer(containerId: string, timeout?: number): Promise<HTMLElement>;
|
|
2160
|
+
|
|
2161
|
+
declare const Window_2: FC<WindowProps>;
|
|
2162
|
+
export { Window_2 as Window }
|
|
2163
|
+
|
|
2164
|
+
export declare const WindowButtonRegistryProvider: FC<{
|
|
2165
|
+
children: ReactNode;
|
|
2166
|
+
}>;
|
|
2167
|
+
|
|
2168
|
+
export declare interface WindowContentProps {
|
|
2169
|
+
window?: WindowEntity;
|
|
2170
|
+
notifyReady?: (contentData?: Record<string, unknown>) => void;
|
|
2171
|
+
}
|
|
2172
|
+
|
|
2173
|
+
export declare interface WindowEntity {
|
|
2174
|
+
id: string;
|
|
2175
|
+
title: string;
|
|
2176
|
+
content: string;
|
|
2177
|
+
x: number;
|
|
2178
|
+
y: number;
|
|
2179
|
+
width: number;
|
|
2180
|
+
height: number;
|
|
2181
|
+
minWidth?: number;
|
|
2182
|
+
minHeight?: number;
|
|
2183
|
+
isOpen: boolean;
|
|
2184
|
+
state: WindowState;
|
|
2185
|
+
zIndex: number;
|
|
2186
|
+
icon?: string;
|
|
2187
|
+
fcIcon?: string;
|
|
2188
|
+
iconUrl?: string;
|
|
2189
|
+
iconColor?: string;
|
|
2190
|
+
canMaximize?: boolean;
|
|
2191
|
+
alwaysOnTop?: boolean;
|
|
2192
|
+
contentData?: Record<string, unknown>;
|
|
2193
|
+
closeInterceptor?: () => boolean;
|
|
2194
|
+
}
|
|
2195
|
+
|
|
2196
|
+
export declare type WindowInput<T = Record<string, unknown>> = {
|
|
2197
|
+
title: string;
|
|
2198
|
+
content: string;
|
|
2199
|
+
x: number;
|
|
2200
|
+
y: number;
|
|
2201
|
+
width: number;
|
|
2202
|
+
height: number;
|
|
2203
|
+
minWidth?: number;
|
|
2204
|
+
minHeight?: number;
|
|
2205
|
+
icon?: string;
|
|
2206
|
+
fcIcon?: string;
|
|
2207
|
+
iconUrl?: string;
|
|
2208
|
+
iconColor?: string;
|
|
2209
|
+
canMaximize?: boolean;
|
|
2210
|
+
alwaysOnTop?: boolean;
|
|
2211
|
+
contentData?: T;
|
|
2212
|
+
};
|
|
2213
|
+
|
|
2214
|
+
export declare interface WindowLoading extends LoadingProgress {
|
|
2215
|
+
windowId: string;
|
|
2216
|
+
}
|
|
2217
|
+
|
|
2218
|
+
export declare class WindowManagerAdapter implements IWindowManager {
|
|
2219
|
+
private windows;
|
|
2220
|
+
private nextZIndex;
|
|
2221
|
+
private assignZIndex;
|
|
2222
|
+
reset(): void;
|
|
2223
|
+
loadWindows(windows: WindowEntity[]): void;
|
|
2224
|
+
getAll(): WindowEntity[];
|
|
2225
|
+
getById(id: string): WindowEntity | undefined;
|
|
2226
|
+
open(input: WindowInput): WindowEntity;
|
|
2227
|
+
close(id: string): void;
|
|
2228
|
+
minimize(id: string): void;
|
|
2229
|
+
maximize(id: string): void;
|
|
2230
|
+
restore(id: string): void;
|
|
2231
|
+
focus(id: string): void;
|
|
2232
|
+
move(id: string, x: number, y: number): void;
|
|
2233
|
+
resize(id: string, width: number, height: number): void;
|
|
2234
|
+
private updateWindow;
|
|
2235
|
+
}
|
|
2236
|
+
|
|
2237
|
+
export declare interface WindowProps {
|
|
2238
|
+
window: WindowEntity;
|
|
2239
|
+
menuBar?: AppMenuElement[];
|
|
2240
|
+
children?: ReactNode;
|
|
2241
|
+
closeInterceptor?: () => boolean;
|
|
2242
|
+
}
|
|
2243
|
+
|
|
2244
|
+
export declare type WindowState = 'normal' | 'minimized' | 'maximized';
|
|
2245
|
+
|
|
2246
|
+
export declare interface WindowTheme {
|
|
2247
|
+
borderRadius: string;
|
|
2248
|
+
headerHeight: number;
|
|
2249
|
+
minWidth: number;
|
|
2250
|
+
minHeight: number;
|
|
2251
|
+
defaultWidth: number;
|
|
2252
|
+
defaultHeight: number;
|
|
2253
|
+
shadow: string;
|
|
2254
|
+
}
|
|
2255
|
+
|
|
2256
|
+
export declare const windowVariants: Variants;
|
|
2257
|
+
|
|
2258
|
+
export { }
|