classicy 0.5.2 → 0.5.5
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/index.js +2 -0
- package/package.json +41 -6
- package/.babelrc +0 -11
- package/assets/img/PlatinumClickLaunch.png +0 -0
- package/assets/img/android-icon-144x144.png +0 -0
- package/assets/img/android-icon-192x192.png +0 -0
- package/assets/img/android-icon-36x36.png +0 -0
- package/assets/img/android-icon-48x48.png +0 -0
- package/assets/img/android-icon-72x72.png +0 -0
- package/assets/img/android-icon-96x96.png +0 -0
- package/assets/img/apple-touch-icon-114x114.png +0 -0
- package/assets/img/apple-touch-icon-120x120.png +0 -0
- package/assets/img/apple-touch-icon-144x144.png +0 -0
- package/assets/img/apple-touch-icon-152x152.png +0 -0
- package/assets/img/apple-touch-icon-180x180.png +0 -0
- package/assets/img/apple-touch-icon-192x192.png +0 -0
- package/assets/img/apple-touch-icon-57x57.png +0 -0
- package/assets/img/apple-touch-icon-60x60.png +0 -0
- package/assets/img/apple-touch-icon-72x72.png +0 -0
- package/assets/img/apple-touch-icon-76x76.png +0 -0
- package/assets/img/apple-touch-icon.png +0 -0
- package/assets/img/apps/quicktime/sample-picture.jpg +0 -0
- package/assets/img/icon-16x16.png +0 -0
- package/assets/img/icon-32x32.png +0 -0
- package/assets/img/icon-96x96.png +0 -0
- package/assets/img/icons/applications/epg/cc.png +0 -0
- package/assets/img/icons/applications/epg/channels/bbc.png +0 -0
- package/assets/img/icons/applications/epg/channels/cbs.png +0 -0
- package/assets/img/icons/applications/epg/channels/cctv3.png +0 -0
- package/assets/img/icons/applications/epg/channels/cnn.png +0 -0
- package/assets/img/icons/applications/epg/channels/galavision.png +0 -0
- package/assets/img/icons/applications/epg/channels/newsworld.png +0 -0
- package/assets/img/icons/applications/epg/channels/nhk.png +0 -0
- package/assets/img/icons/applications/epg/channels/wjla.png +0 -0
- package/assets/img/icons/applications/epg/channels/wordlnet.jpg +0 -0
- package/assets/img/icons/applications/epg/channels/wrc.png +0 -0
- package/assets/img/icons/applications/epg/channels/wttg.png +0 -0
- package/assets/img/icons/applications/epg/channels/wusa.png +0 -0
- package/assets/img/icons/applications/epg/esp.png +0 -0
- package/assets/img/icons/applications/epg/mpaa-g.png +0 -0
- package/assets/img/icons/applications/epg/mpaa-nc17.png +0 -0
- package/assets/img/icons/applications/epg/mpaa-pg.png +0 -0
- package/assets/img/icons/applications/epg/mpaa-pg13.png +0 -0
- package/assets/img/icons/applications/epg/mpaa-r.png +0 -0
- package/assets/img/icons/applications/epg/mpaa-unrated.png +0 -0
- package/assets/img/icons/applications/epg/tv-14.png +0 -0
- package/assets/img/icons/applications/epg/tv-g.png +0 -0
- package/assets/img/icons/applications/epg/tv-ma.png +0 -0
- package/assets/img/icons/applications/epg/tv-pg.png +0 -0
- package/assets/img/icons/applications/epg/tv-y.png +0 -0
- package/assets/img/icons/applications/epg/tv-y7.png +0 -0
- package/assets/img/icons/applications/epg/tv.png +0 -0
- package/assets/img/icons/applications/internet-explorer/app.png +0 -0
- package/assets/img/icons/applications/internet-explorer/document-warn.png +0 -0
- package/assets/img/icons/applications/internet-explorer/document.png +0 -0
- package/assets/img/icons/applications/internet-explorer/downloading-file-animated.png +0 -0
- package/assets/img/icons/applications/internet-explorer/downloading-file.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/1128.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/1131.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/128.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/129.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/131.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/132.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/133.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/134.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/135.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/136.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/137.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/138.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/139.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/140.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/152.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/153.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/154.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/155.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/156.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/157.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/158.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/159.MovieDocumentIcon.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2128.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2129.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2130.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2131.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2134.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2135.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2140.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2141.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2142.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2143.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2144.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2145.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2146.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2147.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2148.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2149.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2151.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2152.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/2153.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/23001.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/258.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/3001.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/4000.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/4001.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/4002.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/4003.png +0 -0
- package/assets/img/icons/applications/internet-explorer/ics8/4004.png +0 -0
- package/assets/img/icons/applications/internet-explorer/loader-animated.png +0 -0
- package/assets/img/icons/applications/internet-explorer/loader.png +0 -0
- package/assets/img/icons/applications/news/app.png +0 -0
- package/assets/img/icons/applications/register-with-apple/app.png +0 -0
- package/assets/img/icons/applications/setup-assistant/setup-assistant.png +0 -0
- package/assets/img/icons/applications/stickies/app.png +0 -0
- package/assets/img/icons/applications/stickies/control_button_sprites.png +0 -0
- package/assets/img/icons/applications/stickies/notes.png +0 -0
- package/assets/img/icons/applications/stickies/stack.png +0 -0
- package/assets/img/icons/applications/stuffit/app.png +0 -0
- package/assets/img/icons/applications/stuffit/compressing.png +0 -0
- package/assets/img/icons/applications/stuffit/file.png +0 -0
- package/assets/img/icons/applications/system-profiler/app.png +0 -0
- package/assets/img/icons/applications/textedit/app.png +0 -0
- package/assets/img/icons/control-panels/appearance-manager/app.png +0 -0
- package/assets/img/icons/control-panels/appearance-manager/background-center.png +0 -0
- package/assets/img/icons/control-panels/appearance-manager/background-fill.png +0 -0
- package/assets/img/icons/control-panels/appearance-manager/background-scale.png +0 -0
- package/assets/img/icons/control-panels/appearance-manager/background-tile.png +0 -0
- package/assets/img/icons/control-panels/appearance-manager/file.png +0 -0
- package/assets/img/icons/control-panels/appearance-manager/platinum.png +0 -0
- package/assets/img/icons/control-panels/appearance-manager/preferences.png +0 -0
- package/assets/img/icons/control-panels/date-time-manager/date-time-manager.png +0 -0
- package/assets/img/icons/control-panels/keyboard/app.png +0 -0
- package/assets/img/icons/control-panels/location/app.png +0 -0
- package/assets/img/icons/control-panels/location/map.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/app.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/extension.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/preferences.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/sound-33.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/sound-66.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/sound-mute.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/sound-off.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/sound-on.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/stt.png +0 -0
- package/assets/img/icons/control-panels/sound-manager/tts.png +0 -0
- package/assets/img/icons/system/apple-black-on-white.png +0 -0
- package/assets/img/icons/system/apple-white-on-black.png +0 -0
- package/assets/img/icons/system/apple.png +0 -0
- package/assets/img/icons/system/big-switch-off.png +0 -0
- package/assets/img/icons/system/big-switch-on.png +0 -0
- package/assets/img/icons/system/bomb.svg +0 -7
- package/assets/img/icons/system/clipboard.png +0 -0
- package/assets/img/icons/system/colors/extension.png +0 -0
- package/assets/img/icons/system/colors/picker-cmyk.png +0 -0
- package/assets/img/icons/system/colors/picker-crayon.png +0 -0
- package/assets/img/icons/system/colors/picker-hex.png +0 -0
- package/assets/img/icons/system/colors/picker-hls.png +0 -0
- package/assets/img/icons/system/colors/picker-hsv.png +0 -0
- package/assets/img/icons/system/colors/picker-rgb.png +0 -0
- package/assets/img/icons/system/comport1.png +0 -0
- package/assets/img/icons/system/comport2.png +0 -0
- package/assets/img/icons/system/desktop/desktop.png +0 -0
- package/assets/img/icons/system/desktop/trash-empty.png +0 -0
- package/assets/img/icons/system/desktop/trash-full.png +0 -0
- package/assets/img/icons/system/display/brightness.png +0 -0
- package/assets/img/icons/system/display/contrast.png +0 -0
- package/assets/img/icons/system/drives/cdrom.png +0 -0
- package/assets/img/icons/system/drives/disk.png +0 -0
- package/assets/img/icons/system/drives/drive-external.png +0 -0
- package/assets/img/icons/system/drives/dvd-audio.png +0 -0
- package/assets/img/icons/system/drives/dvd-video.png +0 -0
- package/assets/img/icons/system/drives/dvd.png +0 -0
- package/assets/img/icons/system/drives/floppy-mac.png +0 -0
- package/assets/img/icons/system/drives/floppy-pc.png +0 -0
- package/assets/img/icons/system/drives/floppy.png +0 -0
- package/assets/img/icons/system/drives/internet-drive.png +0 -0
- package/assets/img/icons/system/drives/network-drive.png +0 -0
- package/assets/img/icons/system/drives/raid.png +0 -0
- package/assets/img/icons/system/drives/rom.png +0 -0
- package/assets/img/icons/system/error.png +0 -0
- package/assets/img/icons/system/extension.png +0 -0
- package/assets/img/icons/system/files/129 2.png +0 -0
- package/assets/img/icons/system/files/129 4.png +0 -0
- package/assets/img/icons/system/files/229.png +0 -0
- package/assets/img/icons/system/files/232.Messages.png +0 -0
- package/assets/img/icons/system/files/application.png +0 -0
- package/assets/img/icons/system/files/document.png +0 -0
- package/assets/img/icons/system/files/edition.png +0 -0
- package/assets/img/icons/system/files/file-invisible.png +0 -0
- package/assets/img/icons/system/files/file-pc.png +0 -0
- package/assets/img/icons/system/files/file-text.png +0 -0
- package/assets/img/icons/system/files/file.png +0 -0
- package/assets/img/icons/system/files/internationalization.png +0 -0
- package/assets/img/icons/system/files/note.png +0 -0
- package/assets/img/icons/system/files/photo.png +0 -0
- package/assets/img/icons/system/files/preferences.png +0 -0
- package/assets/img/icons/system/files/script.png +0 -0
- package/assets/img/icons/system/files/settings-sync.png +0 -0
- package/assets/img/icons/system/files/slideshow.png +0 -0
- package/assets/img/icons/system/files/sound.png +0 -0
- package/assets/img/icons/system/files/stationary-black.png +0 -0
- package/assets/img/icons/system/folders/apple_menu_item.png +0 -0
- package/assets/img/icons/system/folders/application_support.png +0 -0
- package/assets/img/icons/system/folders/applications.png +0 -0
- package/assets/img/icons/system/folders/assistant.png +0 -0
- package/assets/img/icons/system/folders/colorsync_profiles.png +0 -0
- package/assets/img/icons/system/folders/compressed.png +0 -0
- package/assets/img/icons/system/folders/contextual_menu_items.png +0 -0
- package/assets/img/icons/system/folders/control_panels.png +0 -0
- package/assets/img/icons/system/folders/control_strip.png +0 -0
- package/assets/img/icons/system/folders/directory.png +0 -0
- package/assets/img/icons/system/folders/extensions.png +0 -0
- package/assets/img/icons/system/folders/extras.png +0 -0
- package/assets/img/icons/system/folders/favorites.png +0 -0
- package/assets/img/icons/system/folders/folder-apple.png +0 -0
- package/assets/img/icons/system/folders/folder-extensions.png +0 -0
- package/assets/img/icons/system/folders/folder-flip.png +0 -0
- package/assets/img/icons/system/folders/folder-fonts.png +0 -0
- package/assets/img/icons/system/folders/folder-ldap.png +0 -0
- package/assets/img/icons/system/folders/folder-preferences.png +0 -0
- package/assets/img/icons/system/folders/folder-printers.png +0 -0
- package/assets/img/icons/system/folders/folder-system-protected.png +0 -0
- package/assets/img/icons/system/folders/folder-system.png +0 -0
- package/assets/img/icons/system/folders/fonts.png +0 -0
- package/assets/img/icons/system/folders/help.png +0 -0
- package/assets/img/icons/system/folders/internet.png +0 -0
- package/assets/img/icons/system/folders/internet_search_sites.png +0 -0
- package/assets/img/icons/system/folders/language_and_region.png +0 -0
- package/assets/img/icons/system/folders/preferences.png +0 -0
- package/assets/img/icons/system/folders/recent_documents.png +0 -0
- package/assets/img/icons/system/folders/scripts.png +0 -0
- package/assets/img/icons/system/folders/startup_items.png +0 -0
- package/assets/img/icons/system/folders/suitcase-system.png +0 -0
- package/assets/img/icons/system/folders/suitcase.png +0 -0
- package/assets/img/icons/system/folders/suitecase-system.png +0 -0
- package/assets/img/icons/system/folders/system.png +0 -0
- package/assets/img/icons/system/folders/text_encodings.png +0 -0
- package/assets/img/icons/system/folders/utilities.png +0 -0
- package/assets/img/icons/system/help.png +0 -0
- package/assets/img/icons/system/info.png +0 -0
- package/assets/img/icons/system/internet.png +0 -0
- package/assets/img/icons/system/mac-classic.png +0 -0
- package/assets/img/icons/system/mac-wink.png +0 -0
- package/assets/img/icons/system/mac.png +0 -0
- package/assets/img/icons/system/macos.png +0 -0
- package/assets/img/icons/system/macos.svg +0 -12
- package/assets/img/icons/system/network/chooser.png +0 -0
- package/assets/img/icons/system/network/controlpanel-internet.png +0 -0
- package/assets/img/icons/system/network/crypto.png +0 -0
- package/assets/img/icons/system/network/file-server.png +0 -0
- package/assets/img/icons/system/network/globe-animated.png +0 -0
- package/assets/img/icons/system/network/globe.png +0 -0
- package/assets/img/icons/system/network/internet-config.png +0 -0
- package/assets/img/icons/system/network/internet-services.png +0 -0
- package/assets/img/icons/system/network/internet.png +0 -0
- package/assets/img/icons/system/network/ldap-directory.png +0 -0
- package/assets/img/icons/system/network/modem.png +0 -0
- package/assets/img/icons/system/network/network-local.png +0 -0
- package/assets/img/icons/system/network/network-public.png +0 -0
- package/assets/img/icons/system/network/ssl-invalid.png +0 -0
- package/assets/img/icons/system/network/ssl-web.png +0 -0
- package/assets/img/icons/system/network/ssl.png +0 -0
- package/assets/img/icons/system/network/terminal.png +0 -0
- package/assets/img/icons/system/network/usenet.png +0 -0
- package/assets/img/icons/system/network/user-directory.png +0 -0
- package/assets/img/icons/system/pig.png +0 -0
- package/assets/img/icons/system/printer.png +0 -0
- package/assets/img/icons/system/question.png +0 -0
- package/assets/img/icons/system/quicktime/CC.png +0 -0
- package/assets/img/icons/system/quicktime/backward-button.svg +0 -1
- package/assets/img/icons/system/quicktime/control-panel.png +0 -0
- package/assets/img/icons/system/quicktime/extension.png +0 -0
- package/assets/img/icons/system/quicktime/forward-button.svg +0 -1
- package/assets/img/icons/system/quicktime/fullscreen-button.svg +0 -1
- package/assets/img/icons/system/quicktime/movie-stationary.png +0 -0
- package/assets/img/icons/system/quicktime/movie.png +0 -0
- package/assets/img/icons/system/quicktime/pause-button.svg +0 -1
- package/assets/img/icons/system/quicktime/play-button.svg +0 -22
- package/assets/img/icons/system/quicktime/player.png +0 -0
- package/assets/img/icons/system/quicktime/splash.png +0 -0
- package/assets/img/icons/system/quicktime/thumb-slider.svg +0 -1
- package/assets/img/icons/system/quicktime/volume-slider.svg +0 -8
- package/assets/img/icons/system/rich-text-editor/menubar/align-center-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/align-center-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/align-center-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/align-left-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/align-left-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/align-left-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/align-right-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/align-right-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/align-right-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/bold-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/bold-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/bold-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/caps-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/caps-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/caps-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/indent-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/indent-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/italic-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/italic-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/italic-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/ordered-list-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/ordered-list-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/ordered-list-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/outdent-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/outdent-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/rule-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/rule-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/search.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/underline-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/underline-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/underline-off.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/unordered-list-active.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/unordered-list-depressed.png +0 -0
- package/assets/img/icons/system/rich-text-editor/menubar/unordered-list-off.png +0 -0
- package/assets/img/icons/system/security/id.png +0 -0
- package/assets/img/icons/system/security/key.png +0 -0
- package/assets/img/icons/system/sherlock/search-data.png +0 -0
- package/assets/img/icons/system/sherlock/search-files.png +0 -0
- package/assets/img/icons/system/sherlock/search.png +0 -0
- package/assets/img/icons/system/sherlock/sherlock.png +0 -0
- package/assets/img/icons/system/shockwave.png +0 -0
- package/assets/img/icons/system/system-resources.png +0 -0
- package/assets/img/icons/system/tags/colors/aqua.png +0 -0
- package/assets/img/icons/system/tags/colors/black.png +0 -0
- package/assets/img/icons/system/tags/colors/blue.png +0 -0
- package/assets/img/icons/system/tags/colors/fuchsia.png +0 -0
- package/assets/img/icons/system/tags/colors/gray.png +0 -0
- package/assets/img/icons/system/tags/colors/green.png +0 -0
- package/assets/img/icons/system/tags/colors/lime.png +0 -0
- package/assets/img/icons/system/tags/colors/maroon.png +0 -0
- package/assets/img/icons/system/tags/colors/navy.png +0 -0
- package/assets/img/icons/system/tags/colors/olive.png +0 -0
- package/assets/img/icons/system/tags/colors/purple.png +0 -0
- package/assets/img/icons/system/tags/colors/red.png +0 -0
- package/assets/img/icons/system/tags/colors/silver.png +0 -0
- package/assets/img/icons/system/tags/colors/teal.png +0 -0
- package/assets/img/icons/system/tags/colors/white.png +0 -0
- package/assets/img/icons/system/tags/colors/yellow.png +0 -0
- package/assets/img/icons/system/warn.png +0 -0
- package/assets/img/icons/system/windows.png +0 -0
- package/assets/img/ms-icon-144x144.png +0 -0
- package/assets/img/ms-icon-150x150.png +0 -0
- package/assets/img/ms-icon-310x310.png +0 -0
- package/assets/img/ms-icon-70x70.png +0 -0
- package/assets/img/ui/cursors/cursor-add.png +0 -0
- package/assets/img/ui/cursors/cursor-eyedropper.png +0 -0
- package/assets/img/ui/cursors/cursor-hand-counting.png +0 -0
- package/assets/img/ui/cursors/cursor-hand.png +0 -0
- package/assets/img/ui/cursors/cursor-highlight.png +0 -0
- package/assets/img/ui/cursors/cursor-menu.png +0 -0
- package/assets/img/ui/cursors/cursor-plus.png +0 -0
- package/assets/img/ui/cursors/cursor-resize-l.png +0 -0
- package/assets/img/ui/cursors/cursor-resize-lr.png +0 -0
- package/assets/img/ui/cursors/cursor-resize-r.png +0 -0
- package/assets/img/ui/cursors/cursor-rom.png +0 -0
- package/assets/img/ui/cursors/cursor-shortcut.png +0 -0
- package/assets/img/ui/cursors/cursor-spin.png +0 -0
- package/assets/img/ui/cursors/cursor-watch.png +0 -0
- package/assets/img/ui/cursors/cusor-precision.png +0 -0
- package/assets/img/ui/halftone-large.png +0 -0
- package/assets/img/ui/halftone-small.png +0 -0
- package/assets/img/ui/menu-dropdown-arrow-up.svg +0 -13
- package/assets/img/ui/menu-dropdown-arrows.svg +0 -1
- package/assets/img/ui/stripe.svg +0 -8
- package/assets/img/ui/tab.svg +0 -5
- package/assets/img/wallpapers/azul_dark.png +0 -0
- package/assets/img/wallpapers/azul_extra_light.png +0 -0
- package/assets/img/wallpapers/azul_light.png +0 -0
- package/assets/img/wallpapers/bondi.png +0 -0
- package/assets/img/wallpapers/bondi_dark.png +0 -0
- package/assets/img/wallpapers/bondi_extra_dark.png +0 -0
- package/assets/img/wallpapers/bondi_light.png +0 -0
- package/assets/img/wallpapers/bondi_medium.png +0 -0
- package/assets/img/wallpapers/bossanova_bondi.png +0 -0
- package/assets/img/wallpapers/bossanova_poppy.png +0 -0
- package/assets/img/wallpapers/bossanova_poppy_2.png +0 -0
- package/assets/img/wallpapers/bubbles_bondi.png +0 -0
- package/assets/img/wallpapers/bubbles_poppy.png +0 -0
- package/assets/img/wallpapers/candy_bar.png +0 -0
- package/assets/img/wallpapers/candy_bar_azul.png +0 -0
- package/assets/img/wallpapers/candy_bar_pistachio.png +0 -0
- package/assets/img/wallpapers/candy_bar_sunny.png +0 -0
- package/assets/img/wallpapers/default.jpg +0 -0
- package/assets/img/wallpapers/default.png +0 -0
- package/assets/img/wallpapers/diagonals_bondi.png +0 -0
- package/assets/img/wallpapers/diagonals_bondi_dark.png +0 -0
- package/assets/img/wallpapers/diagonals_poppy.png +0 -0
- package/assets/img/wallpapers/flat_peanuts.png +0 -0
- package/assets/img/wallpapers/flat_peanuts_poppy.png +0 -0
- package/assets/img/wallpapers/french_blue_dark.png +0 -0
- package/assets/img/wallpapers/french_blue_light.png +0 -0
- package/assets/img/wallpapers/macos.png +0 -0
- package/assets/img/wallpapers/peanuts_azul.png +0 -0
- package/assets/img/wallpapers/peanuts_pistachio.png +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/capsule.jpg +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/capsule_azul.jpg +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/capsule_pistachio.jpg +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/tub.jpg +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/tub_azul.jpg +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/tub_bondi.jpg +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/ufo_1.jpg +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/ufo_2.jpg +0 -0
- package/assets/img/wallpapers/photos/3d_graphics/ufo_3.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_1.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_10.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_11.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_12.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_13.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_14.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_15.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_2.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_3.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_4.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_5.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_6.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_7.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_8.jpg +0 -0
- package/assets/img/wallpapers/photos/convergency/convergence_9.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/blue_flowers.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/cactus.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/golden_poppy.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/red_cyclamens.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/red_tulips.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/rose.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/spider_lily.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/waterdrops_on_leaf.jpg +0 -0
- package/assets/img/wallpapers/photos/foliage/yellow_tulips.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/beach.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/clouds.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/french_alps.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/ganges_river.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/golden_gate_at_dusk.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/mono_lake.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/palace_on_lake_in_jaipur.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/rain_god_mesa.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/refuge-col_de_la_grasse-alps.jpg +0 -0
- package/assets/img/wallpapers/photos/landscapes/zabriskie_point.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/acropolis.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/beach_on_ko_samui.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/birds_in_flight.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/cancun_sunset.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/cliffs_of_moher.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/fish_eagle.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/galway_bay.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/glacier_national_park.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/highway_395.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/hong_kong_at_night.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/islamorada_sunrise.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/lily_pad.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/long_island_sound.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/mac_os_background.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/midsummer_night.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/moraine_lake.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/oasis_in_baja.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/red_clouds.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/toronto_skyline.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/tuolumne_meadows.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/yosemite_valley.jpg +0 -0
- package/assets/img/wallpapers/photos/nostalgia/yucatan.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/alpine_granite.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/bicycles.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/bottles.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/burmese_claypots.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/burning_candle.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/chairs.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/faucet_handle.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/neon.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/salt_shaker_top.jpg +0 -0
- package/assets/img/wallpapers/photos/objects/shamus.jpg +0 -0
- package/assets/img/wallpapers/photos/structures/gate.jpg +0 -0
- package/assets/img/wallpapers/photos/structures/gate_lock.jpg +0 -0
- package/assets/img/wallpapers/photos/structures/glass_door_knob.jpg +0 -0
- package/assets/img/wallpapers/photos/structures/padlock.jpg +0 -0
- package/assets/img/wallpapers/photos/structures/rusty_lock.jpg +0 -0
- package/assets/img/wallpapers/photos/structures/shutters.jpg +0 -0
- package/assets/img/wallpapers/photos/structures/stone_wall.jpg +0 -0
- package/assets/img/wallpapers/photos/structures/wall_of_stones.jpg +0 -0
- package/assets/img/wallpapers/pistachio_dark.png +0 -0
- package/assets/img/wallpapers/pistachio_light.png +0 -0
- package/assets/img/wallpapers/pistachio_medium.png +0 -0
- package/assets/img/wallpapers/poppy.png +0 -0
- package/assets/img/wallpapers/poppy_dark.png +0 -0
- package/assets/img/wallpapers/poppy_light.png +0 -0
- package/assets/img/wallpapers/poppy_medium.png +0 -0
- package/assets/img/wallpapers/rio_azul.png +0 -0
- package/assets/img/wallpapers/rio_pistachio.png +0 -0
- package/assets/img/wallpapers/ripple_azul.png +0 -0
- package/assets/img/wallpapers/ripple_bondi.png +0 -0
- package/assets/img/wallpapers/ripple_poppy.png +0 -0
- package/assets/img/wallpapers/sunny.png +0 -0
- package/assets/img/wallpapers/sunny_dark.png +0 -0
- package/assets/img/wallpapers/sunny_light.png +0 -0
- package/assets/img/wallpapers/waves_azul.png +0 -0
- package/assets/img/wallpapers/waves_bondi.png +0 -0
- package/assets/img/wallpapers/waves_sunny.png +0 -0
- package/assets/sounds/platinum/platinum.ac3 +0 -0
- package/assets/sounds/platinum/platinum.json +0 -174
- package/assets/sounds/platinum/platinum.m4a +0 -0
- package/assets/sounds/platinum/platinum.mp3 +0 -0
- package/assets/sounds/platinum/platinum.ogg +0 -0
- package/platinum.json +0 -174
- package/resources/sounds/platinum/ClassicyAlertBonk.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyAlertGrowl.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyAlertIndigo.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyAlertQuack.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyAlertSosumi.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyAlertTabitha.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyAlertWildEep.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyBeep.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyBoot.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyButtonClickDown.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyButtonClickUp.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyClick.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyEmailMailError.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyEmailMailSent.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyEmailNewMail.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyEmailNoMail.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyInputRadioClickDown.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyInputRadioClickUp.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyMenuClose.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyMenuItemClick.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyMenuItemHover.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyMenuOpen.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyTabClick.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyTabClickDown.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyTabClickUp.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyThump.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowClose.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowCollapse.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowControlClickDown.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowControlClickUp.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowExpand.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowFocus.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowMoveIdle.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowMoveMoving.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowMoveStop.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowOpen.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowResizeIdle.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowResizeResizing.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowResizeStop.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowZoomMaximize.mp3 +0 -0
- package/resources/sounds/platinum/ClassicyWindowZoomMinimize.mp3 +0 -0
- package/scripts/build_sprites.sh +0 -15
- package/src/App.tsx +0 -16
- package/src/SystemFolder/ControlPanels/AppManager/ClassicyAppManager.ts +0 -327
- package/src/SystemFolder/ControlPanels/AppManager/ClassicyAppManagerContext.tsx +0 -47
- package/src/SystemFolder/ControlPanels/AppearanceManager/ClassicyAppearance.ts +0 -165
- package/src/SystemFolder/ControlPanels/AppearanceManager/ClassicyAppearanceManager.tsx +0 -420
- package/src/SystemFolder/ControlPanels/AppearanceManager/ClassicyColors.ts +0 -10
- package/src/SystemFolder/ControlPanels/AppearanceManager/ClassicySize.ts +0 -24
- package/src/SystemFolder/ControlPanels/AppearanceManager/styles/appearance.scss +0 -182
- package/src/SystemFolder/ControlPanels/AppearanceManager/styles/assets.scss +0 -13
- package/src/SystemFolder/ControlPanels/AppearanceManager/styles/fonts.scss +0 -90
- package/src/SystemFolder/ControlPanels/AppearanceManager/styles/scrollbars.scss +0 -296
- package/src/SystemFolder/ControlPanels/AppearanceManager/styles/themes.json +0 -1430
- package/src/SystemFolder/ControlPanels/ClassicyControlPanels.tsx +0 -16
- package/src/SystemFolder/ControlPanels/DateAndTimeManager/ClassicyDateAndTimeManager.tsx +0 -304
- package/src/SystemFolder/ControlPanels/SoundManager/ClassicySoundManager.scss +0 -18
- package/src/SystemFolder/ControlPanels/SoundManager/ClassicySoundManager.tsx +0 -159
- package/src/SystemFolder/ControlPanels/SoundManager/ClassicySoundManagerContext.tsx +0 -196
- package/src/SystemFolder/ControlPanels/SoundManager/ClassicySoundManagerLabels.json +0 -182
- package/src/SystemFolder/Finder/Finder.tsx +0 -232
- package/src/SystemFolder/Finder/FinderContext.tsx +0 -47
- package/src/SystemFolder/QuickTime/MoviePlayer/MoviePlayer.tsx +0 -139
- package/src/SystemFolder/QuickTime/MoviePlayer/MoviePlayerContext.tsx +0 -69
- package/src/SystemFolder/QuickTime/PictureViewer/PictureViewer.tsx +0 -130
- package/src/SystemFolder/QuickTime/PictureViewer/PictureViewerContext.tsx +0 -72
- package/src/SystemFolder/SystemResources/AboutWindow/ClassicyAboutWindow.scss +0 -10
- package/src/SystemFolder/SystemResources/AboutWindow/ClassicyAboutWindow.tsx +0 -47
- package/src/SystemFolder/SystemResources/App/ClassicyApp.tsx +0 -131
- package/src/SystemFolder/SystemResources/App/ClassicyAppUtils.tsx +0 -25
- package/src/SystemFolder/SystemResources/Boot/ClassicyBoot.scss +0 -9
- package/src/SystemFolder/SystemResources/Boot/ClassicyBoot.tsx +0 -11
- package/src/SystemFolder/SystemResources/Button/ClassicyButton.scss +0 -57
- package/src/SystemFolder/SystemResources/Button/ClassicyButton.tsx +0 -50
- package/src/SystemFolder/SystemResources/Checkbox/ClassicyCheckbox.scss +0 -90
- package/src/SystemFolder/SystemResources/Checkbox/ClassicyCheckbox.tsx +0 -54
- package/src/SystemFolder/SystemResources/ContextualMenu/ClassicyContextualMenu.scss +0 -11
- package/src/SystemFolder/SystemResources/ContextualMenu/ClassicyContextualMenu.tsx +0 -25
- package/src/SystemFolder/SystemResources/ControlGroup/ClassicyControlGroup.scss +0 -22
- package/src/SystemFolder/SystemResources/ControlGroup/ClassicyControlGroup.tsx +0 -27
- package/src/SystemFolder/SystemResources/ControlLabel/ClassicyControlLabel.scss +0 -28
- package/src/SystemFolder/SystemResources/ControlLabel/ClassicyControlLabel.tsx +0 -99
- package/src/SystemFolder/SystemResources/DatePicker/ClassicyDatePicker.scss +0 -50
- package/src/SystemFolder/SystemResources/DatePicker/ClassicyDatePicker.tsx +0 -191
- package/src/SystemFolder/SystemResources/DatePicker/ClassicyDatePickerUtils.tsx +0 -22
- package/src/SystemFolder/SystemResources/Desktop/ClassicyDesktop.scss +0 -52
- package/src/SystemFolder/SystemResources/Desktop/ClassicyDesktop.tsx +0 -209
- package/src/SystemFolder/SystemResources/Desktop/ClassicyDesktopIcon.scss +0 -115
- package/src/SystemFolder/SystemResources/Desktop/ClassicyDesktopIcon.tsx +0 -177
- package/src/SystemFolder/SystemResources/Desktop/ClassicyDesktopIconContext.tsx +0 -178
- package/src/SystemFolder/SystemResources/Desktop/ClassicyDesktopManager.tsx +0 -161
- package/src/SystemFolder/SystemResources/Desktop/ClassicyDesktopWindowManagerContext.tsx +0 -211
- package/src/SystemFolder/SystemResources/Desktop/MenuBar/ClassicyDesktopMenuBar.scss +0 -76
- package/src/SystemFolder/SystemResources/Desktop/MenuBar/ClassicyDesktopMenuBar.tsx +0 -74
- package/src/SystemFolder/SystemResources/Desktop/MenuBar/Widgets/Sound/ClassicyDesktopMenuWidgetSound.scss +0 -16
- package/src/SystemFolder/SystemResources/Desktop/MenuBar/Widgets/Sound/ClassicyDesktopMenuWidgetSound.tsx +0 -60
- package/src/SystemFolder/SystemResources/Desktop/MenuBar/Widgets/Time/ClassicyDesktopMenuWidgetTime.scss +0 -27
- package/src/SystemFolder/SystemResources/Desktop/MenuBar/Widgets/Time/ClassicyDesktopMenuWidgetTime.tsx +0 -138
- package/src/SystemFolder/SystemResources/Disclosure/ClassicyDisclosure.scss +0 -88
- package/src/SystemFolder/SystemResources/Disclosure/ClassicyDisclosure.tsx +0 -80
- package/src/SystemFolder/SystemResources/File/ClassicyFileBrowser.tsx +0 -56
- package/src/SystemFolder/SystemResources/File/ClassicyFileBrowserUtils.ts +0 -47
- package/src/SystemFolder/SystemResources/File/ClassicyFileBrowserViewIcons.tsx +0 -97
- package/src/SystemFolder/SystemResources/File/ClassicyFileBrowserViewTable.scss +0 -92
- package/src/SystemFolder/SystemResources/File/ClassicyFileBrowserViewTable.tsx +0 -230
- package/src/SystemFolder/SystemResources/File/ClassicyFileSystem.ts +0 -338
- package/src/SystemFolder/SystemResources/File/ClassicyFileSystemModel.ts +0 -62
- package/src/SystemFolder/SystemResources/File/DefaultClassicyFileSystem.ts +0 -111
- package/src/SystemFolder/SystemResources/Icon/ClassicyIcon.scss +0 -119
- package/src/SystemFolder/SystemResources/Icon/ClassicyIcon.tsx +0 -107
- package/src/SystemFolder/SystemResources/Input/ClassicyInput.scss +0 -38
- package/src/SystemFolder/SystemResources/Input/ClassicyInput.tsx +0 -51
- package/src/SystemFolder/SystemResources/Menu/ClassicyMenu.scss +0 -187
- package/src/SystemFolder/SystemResources/Menu/ClassicyMenu.tsx +0 -119
- package/src/SystemFolder/SystemResources/PopUpMenu/ClassicyPopUpMenu.scss +0 -122
- package/src/SystemFolder/SystemResources/PopUpMenu/ClassicyPopUpMenu.tsx +0 -59
- package/src/SystemFolder/SystemResources/ProgressBar/ClassicyProgressBar.scss +0 -70
- package/src/SystemFolder/SystemResources/ProgressBar/ClassicyProgressBar.tsx +0 -29
- package/src/SystemFolder/SystemResources/QuickTime/QuickTimeMovieEmbed.scss +0 -217
- package/src/SystemFolder/SystemResources/QuickTime/QuickTimeMovieEmbed.tsx +0 -310
- package/src/SystemFolder/SystemResources/QuickTime/QuickTimeUtils.ts +0 -27
- package/src/SystemFolder/SystemResources/QuickTime/thumb-slider.svg +0 -1
- package/src/SystemFolder/SystemResources/QuickTime/volume-slider.svg +0 -8
- package/src/SystemFolder/SystemResources/RadioInput/ClassicyRadioInput.scss +0 -125
- package/src/SystemFolder/SystemResources/RadioInput/ClassicyRadioInput.tsx +0 -95
- package/src/SystemFolder/SystemResources/RichTextEditor/ClassicyRichTextEditor.scss +0 -52
- package/src/SystemFolder/SystemResources/RichTextEditor/ClassicyRichTextEditor.tsx +0 -52
- package/src/SystemFolder/SystemResources/Tabs/ClassicyTabs.scss +0 -59
- package/src/SystemFolder/SystemResources/Tabs/ClassicyTabs.tsx +0 -69
- package/src/SystemFolder/SystemResources/Tabs/tab.svg +0 -4
- package/src/SystemFolder/SystemResources/TextEditor/ClassicyTextEditor.scss +0 -18
- package/src/SystemFolder/SystemResources/TextEditor/ClassicyTextEditor.tsx +0 -14
- package/src/SystemFolder/SystemResources/TimePicker/ClassicyTimePicker.scss +0 -53
- package/src/SystemFolder/SystemResources/TimePicker/ClassicyTimePicker.tsx +0 -221
- package/src/SystemFolder/SystemResources/Window/ClassicyWindow.scss +0 -377
- package/src/SystemFolder/SystemResources/Window/ClassicyWindow.tsx +0 -512
- package/src/SystemFolder/SystemResources/Window/ClassicyWindowContext.ts +0 -19
- package/src/custom.d.ts +0 -9
- package/src/index.html +0 -15
- package/src/index.scss +0 -0
- package/src/index.tsx +0 -11
- package/tsconfig.json +0 -31
- package/webpack.config.ts +0 -95
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
import {capitalizeFirst, iconImageByType} from '@/SystemFolder/SystemResources/File/ClassicyFileBrowserUtils'
|
|
2
|
-
import './ClassicyFileBrowserViewTable.scss'
|
|
3
|
-
import {ClassicyFileSystem} from '@/SystemFolder/SystemResources/File/ClassicyFileSystem'
|
|
4
|
-
import {ClassicyFileSystemEntryMetadata} from '@/SystemFolder/SystemResources/File/ClassicyFileSystemModel'
|
|
5
|
-
import {createColumnHelper, flexRender, getCoreRowModel, getSortedRowModel, useReactTable,} from '@tanstack/react-table'
|
|
6
|
-
import classNames from 'classnames'
|
|
7
|
-
import {json} from "node:stream/consumers";
|
|
8
|
-
import React, {RefObject, useMemo, useState} from 'react'
|
|
9
|
-
import arrowUpIcon from 'img/ui/menu-dropdown-arrow-up.svg'
|
|
10
|
-
|
|
11
|
-
type ClassicyFileBrowserViewTableProps = {
|
|
12
|
-
fs: ClassicyFileSystem
|
|
13
|
-
path: string
|
|
14
|
-
appId: string
|
|
15
|
-
iconSize?: number
|
|
16
|
-
dirOnClickFunc?: any
|
|
17
|
-
fileOnClickFunc?: any
|
|
18
|
-
holderRef?: RefObject<HTMLDivElement | null>
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
type ColumnSort = {
|
|
22
|
-
id: string
|
|
23
|
-
desc: boolean
|
|
24
|
-
}
|
|
25
|
-
type SortingState = ColumnSort[]
|
|
26
|
-
|
|
27
|
-
export const ClassicyFileBrowserViewTable: React.FC<ClassicyFileBrowserViewTableProps> = ({
|
|
28
|
-
fs,
|
|
29
|
-
path,
|
|
30
|
-
iconSize = 64,
|
|
31
|
-
appId,
|
|
32
|
-
dirOnClickFunc = () => {
|
|
33
|
-
},
|
|
34
|
-
fileOnClickFunc = () => {
|
|
35
|
-
},
|
|
36
|
-
}) => {
|
|
37
|
-
const [selectedRow, setSelectedRow] = useState<string>()
|
|
38
|
-
const [sorting, setSorting] = useState<SortingState>([{id: '_name', desc: false}])
|
|
39
|
-
|
|
40
|
-
const openFileOrFolder = (properties: ClassicyFileSystemEntryMetadata, path: string, filename: string) => {
|
|
41
|
-
switch (properties['_type']) {
|
|
42
|
-
case 'directory': {
|
|
43
|
-
return dirOnClickFunc(path + ':' + filename)
|
|
44
|
-
}
|
|
45
|
-
case 'file': {
|
|
46
|
-
return fileOnClickFunc(path + ':' + filename)
|
|
47
|
-
}
|
|
48
|
-
default: {
|
|
49
|
-
return () => {
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
const fileList = useMemo<ClassicyFileSystemEntryMetadata[]>(() => {
|
|
56
|
-
const a: [string, ClassicyFileSystemEntryMetadata][] = Object.entries(fs.filterByType(path, ['file', 'directory']))
|
|
57
|
-
const directoryListing = a.map(([d, e]) => {
|
|
58
|
-
let g = e
|
|
59
|
-
g['_name'] = d
|
|
60
|
-
g['_path'] = path + ':' + d
|
|
61
|
-
return g
|
|
62
|
-
})
|
|
63
|
-
|
|
64
|
-
return Object.entries(directoryListing).map((entry, index) => {
|
|
65
|
-
let filteredValues = {} as Record<string, any>
|
|
66
|
-
const filteredKeyArray: [string, string][] = Object.entries(entry[1]).filter((key) => key[0].startsWith('_'))
|
|
67
|
-
for (const [key, value] of filteredKeyArray) {
|
|
68
|
-
filteredValues[key] = value
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return filteredValues as ClassicyFileSystemEntryMetadata
|
|
72
|
-
})
|
|
73
|
-
}, [path, fs])
|
|
74
|
-
|
|
75
|
-
const columnHelper = createColumnHelper<ClassicyFileSystemEntryMetadata>()
|
|
76
|
-
|
|
77
|
-
const columns = useMemo(
|
|
78
|
-
() => [
|
|
79
|
-
columnHelper.accessor((row) => row._name, {
|
|
80
|
-
id: '_name',
|
|
81
|
-
cell: (info) => (
|
|
82
|
-
<div className={"classicyFileBrowserViewTableRowContainer"}>
|
|
83
|
-
<img
|
|
84
|
-
src={info.row.original['_icon'] || iconImageByType(info.row.original['_type'])}
|
|
85
|
-
width={iconSize}
|
|
86
|
-
alt={info.row.original['_path']}
|
|
87
|
-
className={"classicyFileBrowserViewTableRowIcon"}
|
|
88
|
-
/>
|
|
89
|
-
<span className={"classicyFileBrowserViewTableRowIconLabel"}>
|
|
90
|
-
{info.getValue()}
|
|
91
|
-
</span>
|
|
92
|
-
</div>
|
|
93
|
-
),
|
|
94
|
-
header: () => <span>Filename</span>,
|
|
95
|
-
enableResizing: true,
|
|
96
|
-
}),
|
|
97
|
-
columnHelper.accessor((row) => row._type, {
|
|
98
|
-
id: '_type',
|
|
99
|
-
cell: (info) => <span>{capitalizeFirst(info.getValue())}</span>,
|
|
100
|
-
header: () => <span>File Type</span>,
|
|
101
|
-
enableResizing: true,
|
|
102
|
-
}),
|
|
103
|
-
columnHelper.accessor((row) => row._size, {
|
|
104
|
-
id: '_size',
|
|
105
|
-
cell: (info) =>
|
|
106
|
-
<span>{info.getValue() != undefined ? (fs.formatSize(info.getValue() ?? 0)) : ""}</span>,
|
|
107
|
-
header: () => <span>Size</span>,
|
|
108
|
-
enableResizing: true,
|
|
109
|
-
}),
|
|
110
|
-
],
|
|
111
|
-
[]
|
|
112
|
-
)
|
|
113
|
-
|
|
114
|
-
const table = useReactTable({
|
|
115
|
-
data: fileList,
|
|
116
|
-
columns,
|
|
117
|
-
getCoreRowModel: getCoreRowModel(),
|
|
118
|
-
getSortedRowModel: getSortedRowModel(),
|
|
119
|
-
state: {
|
|
120
|
-
sorting,
|
|
121
|
-
},
|
|
122
|
-
onSortingChange: setSorting,
|
|
123
|
-
columnResizeMode: 'onChange',
|
|
124
|
-
})
|
|
125
|
-
|
|
126
|
-
return (
|
|
127
|
-
<div
|
|
128
|
-
key={appId + '_filebrowser_' + path}
|
|
129
|
-
className={"classicyFileBrowserViewTableContainer"}
|
|
130
|
-
>
|
|
131
|
-
<table style={{}} className={"classicyFileBrowserViewTable"}>
|
|
132
|
-
<thead className={classNames("classicyFileBrowserViewTableHeader")}>
|
|
133
|
-
{table.getHeaderGroups().map((headerGroup) => (
|
|
134
|
-
<tr
|
|
135
|
-
key={headerGroup.id}
|
|
136
|
-
className={"classicyFileBrowserViewTableColumnHeaderGroup"}
|
|
137
|
-
>
|
|
138
|
-
{headerGroup.headers.map((header) => (
|
|
139
|
-
<th
|
|
140
|
-
key={header.id}
|
|
141
|
-
align={'left'}
|
|
142
|
-
className={classNames(
|
|
143
|
-
"classicyFileBrowserViewTableColumnHeader",
|
|
144
|
-
header.column.getIsResizing() ? 'isResizing' : '',
|
|
145
|
-
header.id == sorting[0].id
|
|
146
|
-
? "classicyFileBrowserViewTableColumnHeaderSelected"
|
|
147
|
-
: ''
|
|
148
|
-
)}
|
|
149
|
-
style={{
|
|
150
|
-
width: header.id === '_icon' ? iconSize : 'auto',
|
|
151
|
-
}}
|
|
152
|
-
onClick={(e) => {
|
|
153
|
-
if (
|
|
154
|
-
header.column.getIsSorted() == false ||
|
|
155
|
-
header.column.getIsSorted() == 'desc'
|
|
156
|
-
) {
|
|
157
|
-
header.column.toggleSorting(false, false)
|
|
158
|
-
} else {
|
|
159
|
-
header.column.toggleSorting(true, false)
|
|
160
|
-
}
|
|
161
|
-
}}
|
|
162
|
-
>
|
|
163
|
-
{!header.isPlaceholder &&
|
|
164
|
-
flexRender(header.column.columnDef.header, header.getContext())}
|
|
165
|
-
{header.id == sorting[0].id && (
|
|
166
|
-
<img
|
|
167
|
-
src={`${arrowUpIcon}`}
|
|
168
|
-
height={'50%'}
|
|
169
|
-
style={{
|
|
170
|
-
margin: '0 var(--window-padding-size)',
|
|
171
|
-
transform: `rotate(${sorting[0].desc === true ? '0deg' : '180deg'})`,
|
|
172
|
-
}}
|
|
173
|
-
/>
|
|
174
|
-
)}
|
|
175
|
-
{header.column.getCanResize() && (
|
|
176
|
-
<div
|
|
177
|
-
onMouseDown={header.getResizeHandler()}
|
|
178
|
-
onTouchStart={header.getResizeHandler()}
|
|
179
|
-
className={classNames(
|
|
180
|
-
"resizer",
|
|
181
|
-
header.column.getIsResizing()
|
|
182
|
-
? "isResizing"
|
|
183
|
-
: ''
|
|
184
|
-
)}
|
|
185
|
-
></div>
|
|
186
|
-
)}
|
|
187
|
-
</th>
|
|
188
|
-
))}
|
|
189
|
-
</tr>
|
|
190
|
-
))}
|
|
191
|
-
</thead>
|
|
192
|
-
<tbody className={"classicyFileBrowserViewTableContent"}>
|
|
193
|
-
{table.getRowModel().rows.map((row) => (
|
|
194
|
-
<tr
|
|
195
|
-
key={row.id}
|
|
196
|
-
className={classNames(
|
|
197
|
-
"classicyFileBrowserViewTableRow",
|
|
198
|
-
selectedRow === row.id
|
|
199
|
-
? "classicyFileBrowserViewTableRowSelected"
|
|
200
|
-
: null
|
|
201
|
-
)}
|
|
202
|
-
onDoubleClick={() => openFileOrFolder(row.original, path, (row.original._name ?? ""))}
|
|
203
|
-
onClick={() => setSelectedRow(row.id)}
|
|
204
|
-
>
|
|
205
|
-
{row.getVisibleCells().map((cell) => (
|
|
206
|
-
<td key={cell.id} style={{width: cell.column.getSize(), margin: 0, padding: 0}}>
|
|
207
|
-
{flexRender(cell.column.columnDef.cell, cell.getContext())}
|
|
208
|
-
</td>
|
|
209
|
-
))}
|
|
210
|
-
</tr>
|
|
211
|
-
))}
|
|
212
|
-
</tbody>
|
|
213
|
-
<tfoot>
|
|
214
|
-
{table.getFooterGroups().map((footerGroup) => (
|
|
215
|
-
<tr key={footerGroup.id}>
|
|
216
|
-
{footerGroup.headers.map((header) => (
|
|
217
|
-
<th key={header.id}>
|
|
218
|
-
{header.isPlaceholder
|
|
219
|
-
? null
|
|
220
|
-
: flexRender(header.column.columnDef.footer, header.getContext())}
|
|
221
|
-
</th>
|
|
222
|
-
))}
|
|
223
|
-
</tr>
|
|
224
|
-
))}
|
|
225
|
-
</tfoot>
|
|
226
|
-
</table>
|
|
227
|
-
<div className="h-4"/>
|
|
228
|
-
</div>
|
|
229
|
-
)
|
|
230
|
-
}
|
|
@@ -1,338 +0,0 @@
|
|
|
1
|
-
import { sha512 } from 'sha512-crypt-ts'
|
|
2
|
-
import { DefaultFSContent } from '@/SystemFolder/SystemResources/File/DefaultClassicyFileSystem'
|
|
3
|
-
import {
|
|
4
|
-
ClassicyFileSystemEntry,
|
|
5
|
-
ClassicyFileSystemEntryFileType,
|
|
6
|
-
ClassicyFileSystemEntryMetadata,
|
|
7
|
-
} from '@/SystemFolder/SystemResources/File/ClassicyFileSystemModel'
|
|
8
|
-
import directoryIcon from 'img/icons/system/folders/directory.png'
|
|
9
|
-
|
|
10
|
-
export type ClassicyPathOrFileSystemEntry = string | ClassicyFileSystemEntry
|
|
11
|
-
|
|
12
|
-
export class ClassicyFileSystem {
|
|
13
|
-
storageKey: string
|
|
14
|
-
fs: ClassicyFileSystemEntry
|
|
15
|
-
separator: string
|
|
16
|
-
|
|
17
|
-
constructor(storageKey: string = 'classicyStorage', defaultFS: any = DefaultFSContent, separator: string = ':') {
|
|
18
|
-
this.storageKey = storageKey
|
|
19
|
-
this.fs = defaultFS
|
|
20
|
-
|
|
21
|
-
const retrieved = localStorage.getItem(this.storageKey)
|
|
22
|
-
if (typeof window !== 'undefined' && retrieved) {
|
|
23
|
-
const parsed = JSON.parse(retrieved)
|
|
24
|
-
if (parsed) {
|
|
25
|
-
this.fs = parsed
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
this.separator = separator
|
|
30
|
-
localStorage.setItem(this.storageKey, this.snapshot())
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
load(data: string) {
|
|
34
|
-
this.fs = JSON.parse(data) as ClassicyFileSystemEntry
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
snapshot(): string {
|
|
38
|
-
return JSON.stringify(this.fs, null, 2)
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
pathArray = (path: string) => {
|
|
42
|
-
return [...path.split(this.separator)].filter((v) => v !== '')
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
resolve(path: string): ClassicyFileSystemEntry {
|
|
46
|
-
return this.pathArray(path).reduce((prev, curr) => prev?.[curr], this.fs)
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
formatSize(bytes: number, measure: 'bits' | 'bytes' = 'bytes', decimals: number = 2): string {
|
|
50
|
-
if (!+bytes) {
|
|
51
|
-
return '0 ' + measure
|
|
52
|
-
}
|
|
53
|
-
const sizes =
|
|
54
|
-
measure === 'bits'
|
|
55
|
-
? ['Bits', 'Kb', 'Mb', 'Gb', 'Tb', 'Pb', 'Eb', 'Zb', 'Yb']
|
|
56
|
-
: ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']
|
|
57
|
-
|
|
58
|
-
const i = Math.floor(Math.log(bytes) / Math.log(1024))
|
|
59
|
-
bytes = measure === 'bits' ? bytes * 8 : bytes
|
|
60
|
-
|
|
61
|
-
return `${parseFloat((bytes / Math.pow(1024, i)).toFixed(Math.max(0, decimals)))} ${sizes[i]}`
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
filterMetadata(content: ClassicyFileSystemEntry, mode: 'only' | 'remove' = 'remove') {
|
|
65
|
-
let items = {} as ClassicyFileSystemEntry
|
|
66
|
-
|
|
67
|
-
Object.entries(content).forEach(([key, value]) => {
|
|
68
|
-
switch (mode) {
|
|
69
|
-
case 'only': {
|
|
70
|
-
if (key.startsWith('_')) {
|
|
71
|
-
items[key] = value
|
|
72
|
-
}
|
|
73
|
-
break
|
|
74
|
-
}
|
|
75
|
-
default: {
|
|
76
|
-
if (!key.startsWith('_')) {
|
|
77
|
-
items[key] = value
|
|
78
|
-
}
|
|
79
|
-
break
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
})
|
|
83
|
-
return items
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
filterByType(
|
|
87
|
-
path: string,
|
|
88
|
-
byType: string | string[] = ['file', 'directory'],
|
|
89
|
-
showInvisible: boolean = true
|
|
90
|
-
): ClassicyFileSystemEntry {
|
|
91
|
-
let filteredItems = {} as ClassicyFileSystemEntry
|
|
92
|
-
if (!this.resolve(path)) return filteredItems
|
|
93
|
-
Object.entries(this.resolve(path)).forEach(([b, a]) => {
|
|
94
|
-
if (a['_invisible'] === true && !showInvisible) {
|
|
95
|
-
return
|
|
96
|
-
}
|
|
97
|
-
if (byType.includes(a['_type'])) {
|
|
98
|
-
filteredItems[b] = a
|
|
99
|
-
}
|
|
100
|
-
})
|
|
101
|
-
return filteredItems
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
statFile(path: string): ClassicyFileSystemEntry {
|
|
105
|
-
let item = this.resolve(path)
|
|
106
|
-
item['_size'] = this.size(path)
|
|
107
|
-
return item
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
size(path: ClassicyPathOrFileSystemEntry): number {
|
|
111
|
-
if (typeof path === 'string') {
|
|
112
|
-
const contents = this.readFile(path)
|
|
113
|
-
if (contents != undefined) {
|
|
114
|
-
return new Blob(contents.split('')).size
|
|
115
|
-
}
|
|
116
|
-
} else if ('_data' in path) {
|
|
117
|
-
return new Blob((path['_data'] as string).split('')).size
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
return -1
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
hash(path: ClassicyPathOrFileSystemEntry): string | undefined {
|
|
124
|
-
if (typeof path === 'string') {
|
|
125
|
-
const contents = this.readFile(path)
|
|
126
|
-
if (contents == undefined) {
|
|
127
|
-
return
|
|
128
|
-
}
|
|
129
|
-
return sha512.crypt(contents, '')
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
if ('_data' in path) {
|
|
133
|
-
return sha512.crypt(path['_data'], '')
|
|
134
|
-
}
|
|
135
|
-
return
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
readFile(path: ClassicyPathOrFileSystemEntry): string | undefined {
|
|
139
|
-
if (typeof path === 'string') {
|
|
140
|
-
let item: ClassicyFileSystemEntry = this.resolve(path)
|
|
141
|
-
return this.readFile(item)
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
if ('_data' in path) {
|
|
145
|
-
return path['_data'] as string
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
return
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
writeFile(path: string, data: string, metaData?: ClassicyFileSystemEntryMetadata) {
|
|
152
|
-
const updateObjProp = (obj: Record<string, any>, value: string, propPath: string) => {
|
|
153
|
-
const [head, ...rest] = propPath.split(':')
|
|
154
|
-
|
|
155
|
-
rest.length ? updateObjProp(obj[head], value, rest.join(':')) : (obj[head] = value)
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
let directoryPath = path.split(':')
|
|
159
|
-
if (!this.resolve(directoryPath.join(':'))) {
|
|
160
|
-
this.mkDir(directoryPath.join(':'))
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
return updateObjProp(this.fs, data, path)
|
|
164
|
-
|
|
165
|
-
// let directoryPath = path.split(':')
|
|
166
|
-
// const filename = directoryPath.pop()
|
|
167
|
-
// if (!this.resolve(directoryPath.join(':'))) {
|
|
168
|
-
// this.mkDir(directoryPath.join(':'))
|
|
169
|
-
// }
|
|
170
|
-
//
|
|
171
|
-
// let pathArray = []
|
|
172
|
-
// let cs: ClassicyFileSystemEntry
|
|
173
|
-
// return directoryPath.map((p) => {
|
|
174
|
-
// pathArray.push(p)
|
|
175
|
-
//
|
|
176
|
-
// const dir = this.resolve(directoryPath.join(':'))
|
|
177
|
-
// cs[p] = dir
|
|
178
|
-
// return dir
|
|
179
|
-
// })
|
|
180
|
-
//
|
|
181
|
-
// let newDirectoryObject = metaData
|
|
182
|
-
// ? metaData
|
|
183
|
-
// : {
|
|
184
|
-
// _type: 'file',
|
|
185
|
-
// _icon: `/img/icons/system/files/file.png`,
|
|
186
|
-
// }
|
|
187
|
-
//
|
|
188
|
-
// newDirectoryObject['_data'] = data
|
|
189
|
-
//
|
|
190
|
-
// let current
|
|
191
|
-
// let reference = current
|
|
192
|
-
// const parts: string[] = this.pathArray(path)
|
|
193
|
-
//
|
|
194
|
-
// for (let i = parts.length - 1; i >= 0; i--) {
|
|
195
|
-
// reference = current
|
|
196
|
-
// current = i === 0 ? {} : newDirectoryObject
|
|
197
|
-
// current[parts[i]] =
|
|
198
|
-
// i === parts.length - 1 ? newDirectoryObject : reference
|
|
199
|
-
// }
|
|
200
|
-
//
|
|
201
|
-
// this.fs = this.deepMerge(current, this.fs)
|
|
202
|
-
// }
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
rmDir(path: string) {
|
|
206
|
-
return this.deletePropertyPath(this.fs, path)
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
mkDir(path: string) {
|
|
210
|
-
const parts: string[] = this.pathArray(path)
|
|
211
|
-
|
|
212
|
-
const newDirectoryObject = () => {
|
|
213
|
-
return {
|
|
214
|
-
_type: 'directory',
|
|
215
|
-
_icon: directoryIcon,
|
|
216
|
-
} as ClassicyFileSystemEntry
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
let current = {} as ClassicyFileSystemEntry
|
|
220
|
-
let reference
|
|
221
|
-
|
|
222
|
-
for (let i = parts.length - 1; i >= 0; i--) {
|
|
223
|
-
reference = current
|
|
224
|
-
current = i === 0 ? {} as ClassicyFileSystemEntry : newDirectoryObject()
|
|
225
|
-
current[parts[i]] = i === parts.length - 1 ? newDirectoryObject() : reference
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
this.fs = this.deepMerge(current, this.fs)
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
calculateSizeDir(path: ClassicyPathOrFileSystemEntry | string): number {
|
|
232
|
-
const gatherSizes = (entry: ClassicyFileSystemEntry, field: string, value: string): any[] => {
|
|
233
|
-
let results: string[] = []
|
|
234
|
-
for (const key in entry) {
|
|
235
|
-
if (key === field && entry[key] === value) {
|
|
236
|
-
results.push(String(this.size(entry)))
|
|
237
|
-
} else if (typeof entry[key] === 'object' && entry[key] !== null) {
|
|
238
|
-
results = results.concat(gatherSizes(entry[key] as ClassicyFileSystemEntry, field, value))
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
return results
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
if (typeof path === 'string') {
|
|
245
|
-
path = this.resolve(path)
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
return gatherSizes(path, '_type', 'file').reduce((a, c) => a + +c, 0)
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
countVisibleFiles(path: string): number {
|
|
252
|
-
const visibleFiles: boolean[] = Object.entries(this.filterMetadata(this.resolve(path)))
|
|
253
|
-
.map(([_, b]) => {
|
|
254
|
-
return !b['_invisible']
|
|
255
|
-
})
|
|
256
|
-
.filter(function (element) {
|
|
257
|
-
return element || undefined
|
|
258
|
-
})
|
|
259
|
-
return visibleFiles.length
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
countInvisibleFilesInDir(path: string): number {
|
|
263
|
-
const invisibleFiles: boolean[] = Object.entries(this.filterMetadata(this.resolve(path)))
|
|
264
|
-
.map(([a, b]) => {
|
|
265
|
-
return b['_invisible']
|
|
266
|
-
})
|
|
267
|
-
.filter(function (element) {
|
|
268
|
-
return element === false
|
|
269
|
-
})
|
|
270
|
-
return invisibleFiles.length
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
statDir(path: string): ClassicyFileSystemEntry | undefined {
|
|
274
|
-
let current: ClassicyFileSystemEntry = this.resolve(path)
|
|
275
|
-
if (!current) {
|
|
276
|
-
return
|
|
277
|
-
}
|
|
278
|
-
let metaData = this.filterMetadata(current, 'only')
|
|
279
|
-
|
|
280
|
-
let name = path.split(this.separator).slice(-1)
|
|
281
|
-
|
|
282
|
-
let returnValue: ClassicyFileSystemEntry = {
|
|
283
|
-
_count: this.countVisibleFiles(path),
|
|
284
|
-
_countHidden: this.countInvisibleFilesInDir(path),
|
|
285
|
-
_name: name[0],
|
|
286
|
-
_path: path,
|
|
287
|
-
_size: this.calculateSizeDir(current),
|
|
288
|
-
_type: ClassicyFileSystemEntryFileType.Directory,
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
Object.entries(metaData).forEach(([key, value]) => {
|
|
292
|
-
returnValue[key] = value
|
|
293
|
-
})
|
|
294
|
-
|
|
295
|
-
return returnValue
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
private deepMerge(source: ClassicyFileSystemEntry, target: ClassicyFileSystemEntry): ClassicyFileSystemEntry {
|
|
299
|
-
Object.keys(target).forEach((key) => {
|
|
300
|
-
const sourceKeyIsObject = source[key] instanceof Object
|
|
301
|
-
const targetKeyIsObject = target[key] instanceof Object
|
|
302
|
-
|
|
303
|
-
if (sourceKeyIsObject && targetKeyIsObject) {
|
|
304
|
-
const sourceKeyIsArray = source[key] instanceof Array
|
|
305
|
-
const targetKeyIsArray = target[key] instanceof Array
|
|
306
|
-
|
|
307
|
-
if (sourceKeyIsArray && targetKeyIsArray) {
|
|
308
|
-
source[key] = Array.from(new Set(source[key].concat(target[key])))
|
|
309
|
-
} else if (!sourceKeyIsArray && !targetKeyIsArray) {
|
|
310
|
-
this.deepMerge(source[key], target[key])
|
|
311
|
-
} else {
|
|
312
|
-
source[key] = target[key]
|
|
313
|
-
}
|
|
314
|
-
} else {
|
|
315
|
-
source[key] = target[key]
|
|
316
|
-
}
|
|
317
|
-
})
|
|
318
|
-
return source
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
private deletePropertyPath(fileSystem: ClassicyFileSystemEntry, path: string): ClassicyFileSystemEntry | undefined {
|
|
322
|
-
const pathToArray = path.split(':')
|
|
323
|
-
|
|
324
|
-
for (let i = 0; i < pathToArray.length - 1; i++) {
|
|
325
|
-
fileSystem = fileSystem[pathToArray[i]]
|
|
326
|
-
if (typeof fileSystem === 'undefined') {
|
|
327
|
-
return
|
|
328
|
-
}
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
const updatedPath = pathToArray.pop()
|
|
332
|
-
if (updatedPath) {
|
|
333
|
-
delete fileSystem[updatedPath]
|
|
334
|
-
}
|
|
335
|
-
|
|
336
|
-
return fileSystem
|
|
337
|
-
}
|
|
338
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { ReactNode } from 'react'
|
|
2
|
-
|
|
3
|
-
export enum ClassicyFileSystemEntryFileType {
|
|
4
|
-
File = 'file',
|
|
5
|
-
Shortcut = 'shortcut',
|
|
6
|
-
AppShortcut = 'app_shortcut',
|
|
7
|
-
Drive = 'drive',
|
|
8
|
-
Directory = 'directory',
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export type ClassicyFileSystemEntryMetadata = {
|
|
12
|
-
// The type of file
|
|
13
|
-
_type: ClassicyFileSystemEntryFileType
|
|
14
|
-
_mimeType?: string
|
|
15
|
-
|
|
16
|
-
// The Creator and Format are used to determine which application to open the file with.
|
|
17
|
-
_creator?: string
|
|
18
|
-
_format?: string
|
|
19
|
-
|
|
20
|
-
// Standard fields
|
|
21
|
-
_label?: string
|
|
22
|
-
_comments?: string
|
|
23
|
-
|
|
24
|
-
// The URL if the file is a 'shortcut' type
|
|
25
|
-
_url?: string
|
|
26
|
-
|
|
27
|
-
// Icon data
|
|
28
|
-
_icon?: string
|
|
29
|
-
_badge?: ReactNode
|
|
30
|
-
|
|
31
|
-
// Modification data
|
|
32
|
-
_createdOn?: Date
|
|
33
|
-
_modifiedOn?: Date
|
|
34
|
-
_versions?: ClassicyFileSystemEntry[]
|
|
35
|
-
|
|
36
|
-
// Entry Settings
|
|
37
|
-
_readOnly?: boolean // The file cannot be modified. It's name can be changed.
|
|
38
|
-
_nameLocked?: boolean // If true, the name cannot be changed.
|
|
39
|
-
_trashed?: boolean // If true, this entry is in the trash and will not show, except in the Trash.
|
|
40
|
-
_system?: boolean // The file is a system file and cannot be modified. It is also marked with an additional icon.
|
|
41
|
-
_invisible?: boolean // The file is not normally visible, but can be accessed by apps.
|
|
42
|
-
|
|
43
|
-
// Folders
|
|
44
|
-
// Used for stat-ing directories
|
|
45
|
-
_count?: number
|
|
46
|
-
_countHidden?: number
|
|
47
|
-
_path?: string
|
|
48
|
-
|
|
49
|
-
// Files
|
|
50
|
-
// The contents of the file.
|
|
51
|
-
_data?: any
|
|
52
|
-
|
|
53
|
-
// Used for stat-ing directories and files.
|
|
54
|
-
_size?: number
|
|
55
|
-
|
|
56
|
-
// Optional useful field for storing the name.
|
|
57
|
-
_name?: string
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
export type ClassicyFileSystemEntry = {
|
|
61
|
-
[entry: string]: any
|
|
62
|
-
} & ClassicyFileSystemEntryMetadata
|