From 9ea606b175e19834cf381624af246e8a92ad9ca5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A5=BF=E7=93=9C=C2=B0?= Date: Sun, 9 Aug 2026 00:33:21 +0800 Subject: [PATCH] init --- frontend-ui/docs/design-migration-matrix.md | 29 +- frontend-ui/package.json | 1 - frontend-ui/pnpm-lock.yaml | 390 ------ frontend-ui/src/components/calc/README | 1 - .../components/calc/action-dialog/index.vue | 207 ---- .../components/calc/autocomplete/index.vue | 250 ---- .../src/components/calc/button/index.vue | 120 -- .../src/components/calc/cascader/img/down.png | Bin 205 -> 0 bytes .../components/calc/cascader/img/img/down.png | Bin 205 -> 0 bytes .../calc/cascader/img/img/select_down.png | Bin 15796 -> 0 bytes .../cascader/img/img/select_down_clicked.png | Bin 400 -> 0 bytes .../cascader/img/img/select_down_disabled.png | Bin 15669 -> 0 bytes .../components/calc/cascader/img/img/up.png | Bin 215 -> 0 bytes .../calc/cascader/img/select_down.png | Bin 15796 -> 0 bytes .../calc/cascader/img/select_down_clicked.png | Bin 400 -> 0 bytes .../cascader/img/select_down_disabled.png | Bin 15669 -> 0 bytes .../src/components/calc/cascader/img/up.png | Bin 215 -> 0 bytes .../src/components/calc/cascader/index.vue | 277 ----- .../components/calc/checkbox-group/index.vue | 73 -- .../src/components/calc/checkbox/index.vue | 226 ---- .../src/components/calc/collapse/index.vue | 41 - .../src/components/calc/dialog/index.vue | 201 ---- .../src/components/calc/iconselect/index.vue | 257 ---- frontend-ui/src/components/calc/index.ts | 40 - .../src/components/calc/input/index.vue | 69 -- .../src/components/calc/item/index.vue | 4 - .../src/components/calc/loading/index.vue | 95 -- .../src/components/calc/menu/img/plus.svg | 1 - frontend-ui/src/components/calc/menu/menu.vue | 73 -- .../src/components/calc/option/index.vue | 4 - .../src/components/calc/pagination/index.vue | 97 -- .../src/components/calc/progress/index.vue | 51 - .../src/components/calc/select/img/down.png | Bin 205 -> 0 bytes .../calc/select/img/select_down.png | Bin 15796 -> 0 bytes .../calc/select/img/select_down_clicked.png | Bin 400 -> 0 bytes .../calc/select/img/select_down_disabled.png | Bin 15669 -> 0 bytes .../src/components/calc/select/img/up.png | Bin 215 -> 0 bytes .../src/components/calc/select/index.vue | 330 ------ .../src/components/calc/selection/index.vue | 5 - frontend-ui/src/components/calc/shared.ts | 3 - .../src/components/calc/slider/index.vue | 211 ---- frontend-ui/src/components/calc/tab/index.vue | 24 - .../src/components/calc/tabs/constants.ts | 5 - .../src/components/calc/tabs/index.vue | 141 --- .../src/components/calc/tooltip/index.vue | 28 - .../calc/tree/img/collapse_down.png | Bin 353 -> 0 bytes .../components/calc/tree/img/collapse_up.png | Bin 332 -> 0 bytes .../calc/tree/img/dictionary_line.png | Bin 1149 -> 0 bytes .../components/calc/tree/img/item_active.png | Bin 280 -> 0 bytes .../components/calc/tree/img/item_hover.png | Bin 322 -> 0 bytes .../src/components/calc/tree/index.vue | 105 -- frontend-ui/src/components/calc/tree/node.vue | 171 --- frontend-ui/src/components/calc/tree/types.ts | 10 - .../src/components/dnf/Avatar/List/index.vue | 32 +- .../src/components/dnf/Emblem/List/index.vue | 47 +- .../components/dnf/Equipment/Icon/index.vue | 72 +- .../components/dnf/Equipment/Info/index.vue | 164 ++- .../components/dnf/Equipment/List/index.vue | 78 +- .../components/dnf/Equipment/Oath/index.vue | 67 +- .../dnf/Equipment/PartSelect/index.vue | 82 +- .../dnf/Equipment/RaritySelect/index.vue | 86 +- .../dnf/Equipment/SuitInfo/index.vue | 136 ++- frontend-ui/src/components/hooks/dialog.ts | 13 +- .../src/components/ui/button/UiButton.vue | 13 + .../ui/command-input/UiCommandInput.vue | 420 +++++++ .../src/components/ui/command-input/index.ts | 2 + .../components/ui/data-table/UiDataTable.vue | 233 +++- .../components/ui/dialog/UiActionDialog.vue | 162 +++ .../components/ui/dialog/UiDialogContent.vue | 57 +- frontend-ui/src/components/ui/dialog/index.ts | 2 + .../ui/favorite-drawer/UiFavoriteDrawer.vue | 309 +++++ .../components/ui/favorite-drawer/index.ts | 2 + .../ui/notice-badge/UiLevelBadge.vue | 55 + .../ui/notice-badge/UiNoticeBadge.vue | 87 ++ .../src/components/ui/notice-badge/index.ts | 2 + .../src/components/ui/progress/UiProgress.vue | 23 +- .../ui/search-tree/UiSearchTree.vue | 413 +++++++ .../src/components/ui/search-tree/index.ts | 2 + .../settings-dropdown/UiSettingsDropdown.vue | 129 ++ .../UiSettingsDropdownItem.vue | 127 ++ .../components/ui/settings-dropdown/index.ts | 2 + .../ui/tree-select/UiTreeSelect.vue | 14 +- .../ui/utility-sheet/UiUtilitySheet.vue | 131 +++ .../src/components/ui/utility-sheet/index.ts | 1 + .../pages/Character/Config/ImportDialog.vue | 97 ++ .../src/pages/Character/Config/import.vue | 34 +- .../Character/Config/importDnfhelper.vue | 33 +- .../pages/Character/Config/importSkill.vue | 31 +- .../src/pages/Character/Equipment/Index.vue | 49 - .../Character/Equipment/components/Else.vue | 49 - .../Character/Equipment/components/Stone.vue | 97 -- .../Equipment/components/StoneUniversal.vue | 45 - .../Equipment/components/SubWeapon.vue | 47 - .../Character/Equipment/components/Suit.vue | 111 -- .../Equipment/components/Universal.vue | 43 - .../Character/Equipment/components/Weapon.vue | 45 - .../Character/EquipmentDictionary/Index.vue | 1047 ++++++++++------- .../components/LevelControls.vue | 116 ++ .../components/options.vue | 70 +- .../EquipmentDictionary/formatData.ts | 8 +- .../Character/Forge/components/Avatars.vue | 62 +- .../Character/Forge/components/Emblems.vue | 49 +- .../Character/Forge/components/Equipments.vue | 167 +-- .../Forge/components/ForgeSelect.vue | 81 ++ .../Forge/components/ForgeSlider.vue | 84 ++ .../Character/Forge/components/Jades.vue | 112 +- .../Character/Forge/components/Oaths.vue | 48 +- .../Character/Forge/components/Sundry.vue | 97 +- .../src/pages/Character/Forge/index.vue | 158 ++- frontend-ui/src/pages/Character/Index.vue | 268 ++++- .../src/pages/Character/Result/Index.vue | 130 +- .../Result/components/BufferSkill.vue | 534 +++++---- .../Character/Result/components/Info.vue | 485 +++++--- .../Character/Result/components/Skill.vue | 779 ++++++++---- .../Skill/components/SkillDetail/index.tsx | 57 +- .../Skill/components/SkillDetail/style.scss | 70 ++ .../Skill/components/SkillTree/index.tsx | 109 +- .../Skill/components/SkillTree/style.scss | 146 +++ .../components/SkillUP/SkillUpIconSelect.vue | 161 +++ .../Skill/components/SkillUP/index.tsx | 423 +++---- .../Skill/components/SkillUP/style.scss | 218 +++- .../Skill/components/SkillVP/index.tsx | 46 +- .../Skill/components/SkillVP/style.scss | 115 ++ .../src/pages/Character/Skill/index.vue | 176 ++- .../src/pages/ComponentCatalog/Index.vue | 179 ++- frontend-ui/src/pages/Dnfhelper/bind.vue | 32 +- frontend-ui/src/pages/Dnfhelper/list.vue | 53 +- frontend-ui/src/pages/Home/Index.vue | 5 +- frontend-ui/src/router/index.ts | 7 +- frontend-ui/src/style/app.scss | 9 +- frontend-ui/src/style/themes/dcalc.css | 84 ++ frontend-ui/src/style/themes/midnight.css | 88 ++ frontend-ui/src/style/tokens/primitives.css | 132 +++ 133 files changed, 7300 insertions(+), 6289 deletions(-) delete mode 100644 frontend-ui/src/components/calc/README delete mode 100644 frontend-ui/src/components/calc/action-dialog/index.vue delete mode 100644 frontend-ui/src/components/calc/autocomplete/index.vue delete mode 100644 frontend-ui/src/components/calc/button/index.vue delete mode 100644 frontend-ui/src/components/calc/cascader/img/down.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/img/down.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/img/select_down.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/img/select_down_clicked.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/img/select_down_disabled.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/img/up.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/select_down.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/select_down_clicked.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/select_down_disabled.png delete mode 100644 frontend-ui/src/components/calc/cascader/img/up.png delete mode 100644 frontend-ui/src/components/calc/cascader/index.vue delete mode 100644 frontend-ui/src/components/calc/checkbox-group/index.vue delete mode 100644 frontend-ui/src/components/calc/checkbox/index.vue delete mode 100644 frontend-ui/src/components/calc/collapse/index.vue delete mode 100644 frontend-ui/src/components/calc/dialog/index.vue delete mode 100644 frontend-ui/src/components/calc/iconselect/index.vue delete mode 100644 frontend-ui/src/components/calc/index.ts delete mode 100644 frontend-ui/src/components/calc/input/index.vue delete mode 100644 frontend-ui/src/components/calc/item/index.vue delete mode 100644 frontend-ui/src/components/calc/loading/index.vue delete mode 100644 frontend-ui/src/components/calc/menu/img/plus.svg delete mode 100644 frontend-ui/src/components/calc/menu/menu.vue delete mode 100644 frontend-ui/src/components/calc/option/index.vue delete mode 100644 frontend-ui/src/components/calc/pagination/index.vue delete mode 100644 frontend-ui/src/components/calc/progress/index.vue delete mode 100644 frontend-ui/src/components/calc/select/img/down.png delete mode 100644 frontend-ui/src/components/calc/select/img/select_down.png delete mode 100644 frontend-ui/src/components/calc/select/img/select_down_clicked.png delete mode 100644 frontend-ui/src/components/calc/select/img/select_down_disabled.png delete mode 100644 frontend-ui/src/components/calc/select/img/up.png delete mode 100644 frontend-ui/src/components/calc/select/index.vue delete mode 100644 frontend-ui/src/components/calc/selection/index.vue delete mode 100644 frontend-ui/src/components/calc/shared.ts delete mode 100644 frontend-ui/src/components/calc/slider/index.vue delete mode 100644 frontend-ui/src/components/calc/tab/index.vue delete mode 100644 frontend-ui/src/components/calc/tabs/constants.ts delete mode 100644 frontend-ui/src/components/calc/tabs/index.vue delete mode 100644 frontend-ui/src/components/calc/tooltip/index.vue delete mode 100644 frontend-ui/src/components/calc/tree/img/collapse_down.png delete mode 100644 frontend-ui/src/components/calc/tree/img/collapse_up.png delete mode 100644 frontend-ui/src/components/calc/tree/img/dictionary_line.png delete mode 100644 frontend-ui/src/components/calc/tree/img/item_active.png delete mode 100644 frontend-ui/src/components/calc/tree/img/item_hover.png delete mode 100644 frontend-ui/src/components/calc/tree/index.vue delete mode 100644 frontend-ui/src/components/calc/tree/node.vue delete mode 100644 frontend-ui/src/components/calc/tree/types.ts create mode 100644 frontend-ui/src/components/ui/command-input/UiCommandInput.vue create mode 100644 frontend-ui/src/components/ui/command-input/index.ts create mode 100644 frontend-ui/src/components/ui/dialog/UiActionDialog.vue create mode 100644 frontend-ui/src/components/ui/favorite-drawer/UiFavoriteDrawer.vue create mode 100644 frontend-ui/src/components/ui/favorite-drawer/index.ts create mode 100644 frontend-ui/src/components/ui/notice-badge/UiLevelBadge.vue create mode 100644 frontend-ui/src/components/ui/notice-badge/UiNoticeBadge.vue create mode 100644 frontend-ui/src/components/ui/notice-badge/index.ts create mode 100644 frontend-ui/src/components/ui/search-tree/UiSearchTree.vue create mode 100644 frontend-ui/src/components/ui/search-tree/index.ts create mode 100644 frontend-ui/src/components/ui/settings-dropdown/UiSettingsDropdown.vue create mode 100644 frontend-ui/src/components/ui/settings-dropdown/UiSettingsDropdownItem.vue create mode 100644 frontend-ui/src/components/ui/settings-dropdown/index.ts create mode 100644 frontend-ui/src/components/ui/utility-sheet/UiUtilitySheet.vue create mode 100644 frontend-ui/src/components/ui/utility-sheet/index.ts create mode 100644 frontend-ui/src/pages/Character/Config/ImportDialog.vue delete mode 100644 frontend-ui/src/pages/Character/Equipment/Index.vue delete mode 100644 frontend-ui/src/pages/Character/Equipment/components/Else.vue delete mode 100644 frontend-ui/src/pages/Character/Equipment/components/Stone.vue delete mode 100644 frontend-ui/src/pages/Character/Equipment/components/StoneUniversal.vue delete mode 100644 frontend-ui/src/pages/Character/Equipment/components/SubWeapon.vue delete mode 100644 frontend-ui/src/pages/Character/Equipment/components/Suit.vue delete mode 100644 frontend-ui/src/pages/Character/Equipment/components/Universal.vue delete mode 100644 frontend-ui/src/pages/Character/Equipment/components/Weapon.vue create mode 100644 frontend-ui/src/pages/Character/EquipmentDictionary/components/LevelControls.vue create mode 100644 frontend-ui/src/pages/Character/Forge/components/ForgeSelect.vue create mode 100644 frontend-ui/src/pages/Character/Forge/components/ForgeSlider.vue create mode 100644 frontend-ui/src/pages/Character/Skill/components/SkillUP/SkillUpIconSelect.vue diff --git a/frontend-ui/docs/design-migration-matrix.md b/frontend-ui/docs/design-migration-matrix.md index d3f5a560..015a960e 100644 --- a/frontend-ui/docs/design-migration-matrix.md +++ b/frontend-ui/docs/design-migration-matrix.md @@ -19,19 +19,19 @@ mean recreating the effect from screenshots. | ----------------------- | --------------------------------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------- | | `foundations`, `shared` | `style/tokens`, `style/themes`, shared UI contract | Migrated | Semantic color and overridable geometry contracts | | `button` | `ui/button` | Migrated | Preserved three-slice states; exposed density and width | -| `input` | `ui/input`, `ui/number-field` | Migrated | Removed forced inline width; normalized text metrics | +| `input` | `ui/input`, `ui/number-field`, `ui/command-input` | Migrated | Removed forced inline width; normalized text metrics; retained FastStep and command-prefix anatomy | | `form-controls` | `ui/checkbox`, `ui/radio-group`, `ui/switch`, `ui/rating` | Migrated | Tokenized state colors and aligned label/control anatomy | | `select` | `ui/select`, `ui/tree-select`, `ui/cascader` | Migrated | Flat, hierarchical and two-level responsive selection; TreeSelect preserves parent-toggle and rarity states | | `tabs` | `ui/tabs`, `ui/pagination` | Migrated | Animated list marker and compact result navigation | | `slider` | `ui/slider` | Migrated | Preserved the Reka coordinate system | -| `data-table` | `ui/data-table` | Migrated | Ported hover, selected and density behavior | -| `dialog` | `ui/dialog` | Migrated | Preserved the focused title effect and focus management | -| `menu` | `ui/dropdown-menu` | Migrated | Ported source menu spacing and state tokens | -| `rarity` | `ui/item-slot` | Migrated | Retained rarity presentation as data-semantic tokens | -| `autocomplete` | `ui/autocomplete` | Partial | Combobox is migrated; domain SearchTree remains deferred | -| `navigation` | `ui/navigation` | Migrated | Selectable navigation primitive with source assets | +| `data-table` | `ui/data-table`, `ui/progress` | Migrated | Added compact density, row eligibility, note/summary/footer rows, empty state and multi-marker progress | +| `dialog` | `ui/dialog`, `ui/utility-sheet` | Migrated | Kept WindowDialog and UtilitySheet as separate families while sharing focus-safe dialog chrome | +| `menu` | `ui/dropdown-menu`, `ui/settings-dropdown` | Migrated | Preserved the distinct compact-context and full settings-menu anatomies | +| `rarity` | `ui/item-slot`, `ui/notice-badge` | Migrated | Retained rarity data semantics plus the native Notice raster and independent Level badge family | +| `autocomplete` | `ui/autocomplete`, `ui/search-tree` | Migrated | Kept flat Combobox and toolbar-plus-tree search as separate reusable families | +| `navigation` | `ui/navigation`, `ui/favorite-drawer` | Migrated | Preserved selectable SettingsNav and removable, scrollable FavoriteDrawer composition | | `scrollbar` | `ui/scroll-area` | Migrated | Reusable Reka viewport/scrollbar composition | -| shared overlay help | `ui/popover`, rich `ui/tooltip` | Migrated | Portal z-index, collision and responsive width contract | +| shared overlay help | `ui/popover`, simple/rich `ui/tooltip` | Migrated | Portal z-index, collision and responsive width contracts for both tooltip anatomies | | `data-section` | `ui/data-section` | Migrated | Collapsible section and vertically centered data rows | | `shop-item-row` | `ui/shop-item-row` | Migrated | Ported source row structure and selectable states | | `complex-dialog` | `ui/dialog` + migrated primitives | Composition | Kept domain-independent by composing existing primitives | @@ -39,7 +39,8 @@ mean recreating the effect from screenshots. ## Legacy replacement order -Deferred: this component-library pass does not change business call sites. +Business replacement is now in progress. Each slice keeps its route, events, API calls and stored +values, and a legacy component is deleted only after repository-wide references reach zero. 1. Shared form controls and overlays used by DNF Helper and import dialogs. 2. Forge controls (`select`, `checkbox`, `slider`, tabs and panels). @@ -49,9 +50,9 @@ Deferred: this component-library pass does not change business call sites. ## Remaining gaps -- SearchTree/CommandInput still requires a domain-neutral data and filtering contract before it can - join `src/components/ui`. -- Complex product dialogs are compositions, not a claim that every business dialog has reached +- `SkillDamageDetail` and `ItemRow` remain domain compositions on top of `ui/data-table`; the + generic table contract now exposes the structural slots they require. +- Complex product dialogs remain compositions, not a claim that every business dialog has reached source-level visual parity. -- Existing `frontend` business call sites remain on their current components until each behavior - slice is migrated and browser-verified. +- Business call sites in the active routes are migrated, the superseded equipment page is removed, + and the repository-wide `components/calc` call-site check is now at zero. diff --git a/frontend-ui/package.json b/frontend-ui/package.json index 480ad07e..0d9a3b60 100644 --- a/frontend-ui/package.json +++ b/frontend-ui/package.json @@ -20,7 +20,6 @@ "axios": "^1.8.2", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", - "hoci": "^0.6.0", "pako": "^2.1.0", "pinia": "^4.0.2", "query-string": "^9.1.1", diff --git a/frontend-ui/pnpm-lock.yaml b/frontend-ui/pnpm-lock.yaml index a83af701..ebddca4d 100644 --- a/frontend-ui/pnpm-lock.yaml +++ b/frontend-ui/pnpm-lock.yaml @@ -20,9 +20,6 @@ importers: clsx: specifier: ^2.1.1 version: 2.1.1 - hoci: - specifier: ^0.6.0 - version: 0.6.0(@babel/parser@7.29.8)(@vueuse/core@14.4.0(vue@3.5.40(typescript@6.0.3)))(rollup@4.35.0)(vue@3.5.40(typescript@6.0.3)) pako: specifier: ^2.1.0 version: 2.1.0 @@ -102,9 +99,6 @@ importers: packages: - '@antfu/utils@0.7.10': - resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} - '@babel/code-frame@7.29.7': resolution: {integrity: sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==} engines: {node: '>=6.9.0'} @@ -272,23 +266,6 @@ packages: '@floating-ui/vue@1.1.11': resolution: {integrity: sha512-HzHKCNVxnGS35r9fCHBc3+uCnjw9IWIlCPL683cGgM9Kgj2BiAl8x1mS7vtvP6F9S/e/q4O6MApwSHj8hNLGfw==} - '@hoci/components@0.6.0': - resolution: {integrity: sha512-FKWh6JmV5iezDGdQq/UOQ6PfJNRzWfjrN6C6s8Q2QoQMJTC3wAQXJjsKP+OsO2tdizYA1NBBwfow4Oi2X6GZcg==} - peerDependencies: - '@vueuse/core': '>=9.0.0' - vue: ^3.0.0-0 - - '@hoci/core@0.6.0': - resolution: {integrity: sha512-lFV5gFNNzdH5cTmXHonKRaRKt0FDZX9kQ18xwWP89yoDAXrpXbRt5ZK8oQgqCHdWYtwDcVrAMZ+IZmhkCBiO6g==} - peerDependencies: - vue: ^3.0.0-0 - - '@hoci/shared@0.6.0': - resolution: {integrity: sha512-XreSiu+AFisDKorgugX8zjNEsv889U6SbbkTLPHlYIcLvSYk33TmwQ5jHpHe1RAE2KE2Xxn9fBqYRlOCAn8ujg==} - peerDependencies: - '@vueuse/core': '>=9.0.0' - vue: ^3.0.0-0 - '@internationalized/date@3.12.3': resolution: {integrity: sha512-fuLX+3ZKLsxI73y8b01EG/WjHb6gE6weCqlfawPO27kBWGMh9G1yH6Csv1uU7/cac9H2GHmOMt6CjmuQ1aia4Q==} @@ -325,18 +302,6 @@ packages: '@jridgewell/trace-mapping@0.3.31': resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - '@oxc-project/types@0.142.0': resolution: {integrity: sha512-7W+2q5AKQVU36fkaryontrHn3YDt1RyUYXatw9i5H8ocYe2sPKSFB6eS8WNPeRKiN1qAWWZUPm7gwFzJGrccqQ==} @@ -737,15 +702,6 @@ packages: '@rolldown/pluginutils@1.0.1': resolution: {integrity: sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==} - '@rollup/pluginutils@5.1.4': - resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - '@rollup/rollup-android-arm-eabi@4.35.0': resolution: {integrity: sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ==} cpu: [arm] @@ -957,9 +913,6 @@ packages: '@types/pako@2.0.3': resolution: {integrity: sha512-bq0hMV9opAcrmE0Byyo0fY3Ew4tgOevJmQ9grUhpXQhYfyLJ1Kqg3P33JT5fdbT2AjeAjR51zqqVjAL/HMkx7Q==} - '@types/web-bluetooth@0.0.15': - resolution: {integrity: sha512-w7hEHXnPMEZ+4nGKl/KDRVpxkwYxYExuHOYXyzIzCDzEZ9ZCGMAewulr9IqJu2LR4N37fcnb1XVeuZ09qgOxhA==} - '@types/web-bluetooth@0.0.21': resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==} @@ -1075,23 +1028,14 @@ packages: peerDependencies: vue: ^3.5.0 - '@vueuse/core@9.0.0': - resolution: {integrity: sha512-hMMc2ajuVknkL7Z39JdP9gFFND2OgnDTSS5mmuinWGAE1Vxy1AwDvTHm3+juyk+GzJjYRAktnBIPy7Fq53iOnw==} - '@vueuse/metadata@14.4.0': resolution: {integrity: sha512-swx/255R6JyHZFJhx845iz5CRWDZdCfvkZOpACWc5+c5WHcG24mv8gUT1WIdFQaHt6dq79rvILd9QnCWiyVm9g==} - '@vueuse/metadata@9.0.0': - resolution: {integrity: sha512-79YVIsAP1bbWm5GdQuG7jDVF/9uuExzhkO0Sd4/TLuSfzH2uZOrHvGwy+ZNJHjbyRn3uf56rKINWLJdBuTLSqQ==} - '@vueuse/shared@14.4.0': resolution: {integrity: sha512-JRgY90Sz8DDtPMsaDflvPMp9xYk69JZAmbuDvAquUVXKr2gEjqtzGNTTthLfckH0BzBqvnu31gb4a8TGLRe79g==} peerDependencies: vue: ^3.5.0 - '@vueuse/shared@9.0.0': - resolution: {integrity: sha512-WRCyr/wIz5e/2gR/+qFucbCUcGMyJKkQZAzlECl3e71ebQQ9X/w3aBWT9FbnogJX+DNZ/t3Pj+TqPbC7TH1Yog==} - acorn@8.14.1: resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==} engines: {node: '>=0.4.0'} @@ -1109,10 +1053,6 @@ packages: resolution: {integrity: sha512-kKvt3m4uwzqL0wlkPd09CmljPJGOZZ4D0fP65sqFSvPkMRKhNi+74MgIJ5QxE6SxqB4t4KyUFGg8+n5zjo6hew==} engines: {node: '>=22'} - anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} - aria-hidden@1.2.6: resolution: {integrity: sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==} engines: {node: '>=10'} @@ -1131,19 +1071,9 @@ packages: axios@1.8.2: resolution: {integrity: sha512-ls4GYBm5aig9vWx8AWDSGLpnpDQRtWAfrjU+EuytuODrFBkqesN2RkOQCBzrA1RQNHw1SmRMSDDDSwzNAYQ6Rg==} - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - binary-extensions@2.3.0: - resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} - engines: {node: '>=8'} - birpc@2.9.0: resolution: {integrity: sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==} - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -1160,10 +1090,6 @@ packages: caniuse-lite@1.0.30001702: resolution: {integrity: sha512-LoPe/D7zioC0REI5W73PeR1e1MLCipRGq/VkovJnd6Df+QVqT+vT33OXCp8QUd7kA7RZrHWxb1B36OQKI/0gOA==} - chokidar@3.6.0: - resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} - engines: {node: '>= 8.10.0'} - chokidar@5.0.0: resolution: {integrity: sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==} engines: {node: '>= 20.19.0'} @@ -1192,9 +1118,6 @@ packages: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} - csstype@3.1.3: - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - csstype@3.2.3: resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} @@ -1211,9 +1134,6 @@ packages: resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} engines: {node: '>=14.16'} - defu@6.1.4: - resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} - defu@6.1.7: resolution: {integrity: sha512-7z22QmUWiQ/2d0KkdYmANbRUVABpZ9SNYyH5vx6PZ+nE5bcC0l7uFvEfHlyld/HcGBFTL536ClDt3DEcSlEJAQ==} @@ -1282,13 +1202,6 @@ packages: exsolve@1.1.1: resolution: {integrity: sha512-9U/jZUgjnSGyntRr6y5Muu1MJcwFl6kPu7k8qLF0IMNfLqvw0NZ4nnVDq0RVoZ0RvCyumib4Ez3KYrVfilrw+g==} - fast-glob@3.3.3: - resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} - engines: {node: '>=8.6.0'} - - fastq@1.19.1: - resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} - fdir@6.5.0: resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} engines: {node: '>=12.0.0'} @@ -1339,10 +1252,6 @@ packages: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - gopd@1.2.0: resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} engines: {node: '>= 0.4'} @@ -1362,21 +1271,12 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} - hoci@0.6.0: - resolution: {integrity: sha512-PtSPRtQm5/OUKxSU8lVelhBc+3TVW2cB2hGlG9pfzQ0rbSBFgLHWSLImBgLZnau72wKOrMNjBxzprQ941+rTWw==} - peerDependencies: - vue: ^3.0.0 - hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} immutable@5.1.9: resolution: {integrity: sha512-m8nVez3rwrgmWxtLMt1ZYXB2Lv7OKYn/disyxAlSDYAlKSlFoPPfIAmAM/M5xqL4m4C/wAPw7S2/CNaUii1Hxg==} - is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -1560,10 +1460,6 @@ packages: resolution: {integrity: sha512-WkUDrojuJs0xkgGf2udWxa3yGBRxPtxUkB79i6aCZLRgc7PM8fZe9TosfPDcvEpQZbuFASnHYmRLBLUbmLOIIA==} engines: {node: '>= 12.0.0'} - local-pkg@0.5.1: - resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} - engines: {node: '>=14'} - local-pkg@1.2.1: resolution: {integrity: sha512-++gUqRDEvcnN6Zhqrr+y/CkVEHhlrR96vZn3nZZPYzMcBUyBtTKzB9NadClFIsIVSsu+3i9tfk/erqy9kAmt7Q==} engines: {node: '>=14'} @@ -1575,9 +1471,6 @@ packages: resolution: {integrity: sha512-CvkkH1i81zl7mmb94DsRiFeG9V2fR2JeuK8yDgS8oiZSFa++wWLEgZ5ufEOyLHbvSbD1gTRKv9NdX69Rnvr9JA==} engines: {node: '>=20.19.0'} - magic-string@0.30.17: - resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} - magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} @@ -1588,17 +1481,10 @@ packages: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} - maybe-types@0.2.0: - resolution: {integrity: sha512-4ul+RHPcxNznI+Ke6xUT2/mcQTl54fYUdRZQ3QNkQsC4USfAxXkPTh+wEOx4UBsXYg214867v2ZeirQDJT7uOA==} - memorystream@0.3.1: resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} engines: {node: '>= 0.10.0'} - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -1611,10 +1497,6 @@ packages: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} - minimatch@9.0.5: - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} - engines: {node: '>=16 || 14 >=14.17'} - mlly@1.7.4: resolution: {integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==} @@ -1638,10 +1520,6 @@ packages: node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} - normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - nostics@1.2.0: resolution: {integrity: sha512-FGqEfhQjrvo1lL8KFifdTQiNwwQHJxC1jtYE1Rc54qF/jxONUNL+kC9gS1krX8Q65PgrQ5fCqH/I4NhWBvdSqg==} @@ -1753,17 +1631,10 @@ packages: resolution: {integrity: sha512-MWkCOVIcJP9QSKU52Ngow6bsAWAPlPK2MludXvcrS2bGZSl+T1qX9MZvRIkqUIkGLJquMJHWfsT6eRqUpp4aWg==} engines: {node: '>=18'} - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - read-package-json-fast@6.0.0: resolution: {integrity: sha512-PNaGjoCnw9DBA2Kl8D+8po957z778q/HOPuY2u3Bkw/JO3eC8MDx7jn/PgMtSgpcBbs+6UOjDbwReGpXmRvs0g==} engines: {node: ^22.22.2 || ^24.15.0 || >=26.0.0} - readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - readdirp@5.0.0: resolution: {integrity: sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==} engines: {node: '>= 20.19.0'} @@ -1773,10 +1644,6 @@ packages: peerDependencies: vue: '>= 3.4.0' - reusify@1.1.0: - resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rolldown@1.2.2: resolution: {integrity: sha512-opwpo1tQBAcpSUJDt94B7hhLNGOKjCdE//XXjeLrnx9b83bjnw45tXdg1b09yEw/VLFBJGZpwRULMmOZo7ol+A==} engines: {node: ^20.19.0 || >=22.12.0} @@ -1787,9 +1654,6 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - sass@1.102.0: resolution: {integrity: sha512-NSOyTnaQF7rTAEOtI2fwb386vL+akyiQLBZu8Na7hXCb+umJy0GAqlcMIaqACZ6Z1VgTBS4K9PG6B3IdjHGJsw==} engines: {node: '>=20.19.0'} @@ -1850,13 +1714,6 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - tslx@0.1.1: - resolution: {integrity: sha512-MYh2I7iw8owRx3xFVq8DXp3JWoJ7G7oMA5uUrCwGvuOipV6w9XvlJKo3yVJMh75Y+5caIaYhCsUZ1WTnxQRk7A==} - - type-fest@4.38.0: - resolution: {integrity: sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==} - engines: {node: '>=16'} - typescript@6.0.3: resolution: {integrity: sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==} engines: {node: '>=14.17'} @@ -1899,19 +1756,6 @@ packages: resolution: {integrity: sha512-xVToRh2CTmLk2HnEG7ac4rl1MJTT3RFkpS8B++/SnB0kXvuaavD+n3m/vrzyWQOdJNSZQACnbz01pnppbwV5BA==} engines: {node: '>=20.19.0'} - unplugin-vue-components@0.27.5: - resolution: {integrity: sha512-m9j4goBeNwXyNN8oZHHxvIIYiG8FQ9UfmKWeNllpDvhU7btKNNELGPt+o3mckQKuPwrE7e0PvCsx+IWuDSD9Vg==} - engines: {node: '>=14'} - peerDependencies: - '@babel/parser': ^7.15.8 - '@nuxt/kit': ^3.2.2 - vue: 2 || 3 - peerDependenciesMeta: - '@babel/parser': - optional: true - '@nuxt/kit': - optional: true - unplugin-vue-components@32.1.0: resolution: {integrity: sha512-YiUkSxuRjab18XFOrX5VsIxXzccrfmHVGsGeJgSgklb829DQmCy9E4vvDUE4tuvZZdxyFJZX0Oc4TPnnxiiMyg==} engines: {node: '>=20.19.0'} @@ -1922,10 +1766,6 @@ packages: '@nuxt/kit': optional: true - unplugin@1.16.1: - resolution: {integrity: sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==} - engines: {node: '>=14.0.0'} - unplugin@3.3.0: resolution: {integrity: sha512-qa66K+crbfyE6JK10GjvbJeRrOsuC/JpbnHctfyp/i4oBTxWOzJfRZyDiOk1PtErMFRu8JhsU/wPvOdBNWe5Rg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -2077,9 +1917,6 @@ packages: snapshots: - '@antfu/utils@0.7.10': - optional: true - '@babel/code-frame@7.29.7': dependencies: '@babel/helper-validator-identifier': 7.29.7 @@ -2302,43 +2139,6 @@ snapshots: - '@vue/composition-api' - vue - '@hoci/components@0.6.0(@vueuse/core@14.4.0(vue@3.5.40(typescript@6.0.3)))(vue@3.5.40(typescript@6.0.3))': - dependencies: - '@hoci/core': 0.6.0(vue@3.5.40(typescript@6.0.3)) - '@hoci/shared': 0.6.0(@vueuse/core@14.4.0(vue@3.5.40(typescript@6.0.3)))(vue@3.5.40(typescript@6.0.3)) - '@vueuse/core': 14.4.0(vue@3.5.40(typescript@6.0.3)) - maybe-types: 0.2.0 - tslx: 0.1.1 - vue: 3.5.40(typescript@6.0.3) - transitivePeerDependencies: - - '@vue/composition-api' - - '@hoci/core@0.6.0(vue@3.5.40(typescript@6.0.3))': - dependencies: - '@hoci/shared': 0.6.0(@vueuse/core@9.0.0(vue@3.5.40(typescript@6.0.3)))(vue@3.5.40(typescript@6.0.3)) - '@vueuse/core': 9.0.0(vue@3.5.40(typescript@6.0.3)) - maybe-types: 0.2.0 - tslx: 0.1.1 - vue: 3.5.40(typescript@6.0.3) - transitivePeerDependencies: - - '@vue/composition-api' - - '@hoci/shared@0.6.0(@vueuse/core@14.4.0(vue@3.5.40(typescript@6.0.3)))(vue@3.5.40(typescript@6.0.3))': - dependencies: - '@vueuse/core': 14.4.0(vue@3.5.40(typescript@6.0.3)) - defu: 6.1.4 - maybe-types: 0.2.0 - type-fest: 4.38.0 - vue: 3.5.40(typescript@6.0.3) - - '@hoci/shared@0.6.0(@vueuse/core@9.0.0(vue@3.5.40(typescript@6.0.3)))(vue@3.5.40(typescript@6.0.3))': - dependencies: - '@vueuse/core': 9.0.0(vue@3.5.40(typescript@6.0.3)) - defu: 6.1.4 - maybe-types: 0.2.0 - type-fest: 4.38.0 - vue: 3.5.40(typescript@6.0.3) - '@internationalized/date@3.12.3': dependencies: '@swc/helpers': 0.5.23 @@ -2381,21 +2181,6 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@nodelib/fs.scandir@2.1.5': - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - optional: true - - '@nodelib/fs.stat@2.0.5': - optional: true - - '@nodelib/fs.walk@1.2.8': - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.19.1 - optional: true - '@oxc-project/types@0.142.0': {} '@oxfmt/binding-android-arm-eabi@0.62.0': @@ -2617,15 +2402,6 @@ snapshots: '@rolldown/pluginutils@1.0.1': {} - '@rollup/pluginutils@5.1.4(rollup@4.35.0)': - dependencies: - '@types/estree': 1.0.6 - estree-walker: 2.0.2 - picomatch: 4.0.2 - optionalDependencies: - rollup: 4.35.0 - optional: true - '@rollup/rollup-android-arm-eabi@4.35.0': optional: true @@ -2774,8 +2550,6 @@ snapshots: '@types/pako@2.0.3': {} - '@types/web-bluetooth@0.0.15': {} - '@types/web-bluetooth@0.0.21': {} '@vitejs/plugin-vue-jsx@5.1.6(vite@8.2.0(@types/node@26.1.2)(jiti@2.7.0)(sass@1.102.0)(yaml@2.9.0))(vue@3.5.40(typescript@6.0.3))': @@ -2951,31 +2725,12 @@ snapshots: '@vueuse/shared': 14.4.0(vue@3.5.40(typescript@6.0.3)) vue: 3.5.40(typescript@6.0.3) - '@vueuse/core@9.0.0(vue@3.5.40(typescript@6.0.3))': - dependencies: - '@types/web-bluetooth': 0.0.15 - '@vueuse/metadata': 9.0.0 - '@vueuse/shared': 9.0.0(vue@3.5.40(typescript@6.0.3)) - vue-demi: 0.14.10(vue@3.5.40(typescript@6.0.3)) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - '@vueuse/metadata@14.4.0': {} - '@vueuse/metadata@9.0.0': {} - '@vueuse/shared@14.4.0(vue@3.5.40(typescript@6.0.3))': dependencies: vue: 3.5.40(typescript@6.0.3) - '@vueuse/shared@9.0.0(vue@3.5.40(typescript@6.0.3))': - dependencies: - vue-demi: 0.14.10(vue@3.5.40(typescript@6.0.3)) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - acorn@8.14.1: {} acorn@8.18.0: {} @@ -2984,12 +2739,6 @@ snapshots: ansi-styles@7.0.0: {} - anymatch@3.1.3: - dependencies: - normalize-path: 3.0.0 - picomatch: 2.3.1 - optional: true - aria-hidden@1.2.6: dependencies: tslib: 2.8.1 @@ -3015,19 +2764,8 @@ snapshots: transitivePeerDependencies: - debug - balanced-match@1.0.2: - optional: true - - binary-extensions@2.3.0: - optional: true - birpc@2.9.0: {} - brace-expansion@2.0.1: - dependencies: - balanced-match: 1.0.2 - optional: true - braces@3.0.3: dependencies: fill-range: 7.1.1 @@ -3047,19 +2785,6 @@ snapshots: caniuse-lite@1.0.30001702: {} - chokidar@3.6.0: - dependencies: - anymatch: 3.1.3 - braces: 3.0.3 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - optional: true - chokidar@5.0.0: dependencies: readdirp: 5.0.0 @@ -3086,8 +2811,6 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 - csstype@3.1.3: {} - csstype@3.2.3: {} debug@4.4.0: @@ -3096,8 +2819,6 @@ snapshots: decode-uri-component@0.4.1: {} - defu@6.1.4: {} - defu@6.1.7: {} delayed-stream@1.0.0: {} @@ -3151,20 +2872,6 @@ snapshots: exsolve@1.1.1: {} - fast-glob@3.3.3: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.8 - optional: true - - fastq@1.19.1: - dependencies: - reusify: 1.1.0 - optional: true - fdir@6.5.0(picomatch@4.0.5): optionalDependencies: picomatch: 4.0.5 @@ -3210,11 +2917,6 @@ snapshots: dunder-proto: 1.0.1 es-object-atoms: 1.1.1 - glob-parent@5.1.2: - dependencies: - is-glob: 4.0.3 - optional: true - gopd@1.2.0: {} graceful-fs@4.2.11: {} @@ -3229,30 +2931,10 @@ snapshots: dependencies: function-bind: 1.1.2 - hoci@0.6.0(@babel/parser@7.29.8)(@vueuse/core@14.4.0(vue@3.5.40(typescript@6.0.3)))(rollup@4.35.0)(vue@3.5.40(typescript@6.0.3)): - dependencies: - '@hoci/components': 0.6.0(@vueuse/core@14.4.0(vue@3.5.40(typescript@6.0.3)))(vue@3.5.40(typescript@6.0.3)) - '@hoci/core': 0.6.0(vue@3.5.40(typescript@6.0.3)) - vue: 3.5.40(typescript@6.0.3) - optionalDependencies: - unplugin-vue-components: 0.27.5(@babel/parser@7.29.8)(rollup@4.35.0)(vue@3.5.40(typescript@6.0.3)) - transitivePeerDependencies: - - '@babel/parser' - - '@nuxt/kit' - - '@vue/composition-api' - - '@vueuse/core' - - rollup - - supports-color - hookable@5.5.3: {} immutable@5.1.9: {} - is-binary-path@2.1.0: - dependencies: - binary-extensions: 2.3.0 - optional: true - is-extglob@2.1.1: optional: true @@ -3378,12 +3060,6 @@ snapshots: lightningcss-win32-arm64-msvc: 1.33.0 lightningcss-win32-x64-msvc: 1.33.0 - local-pkg@0.5.1: - dependencies: - mlly: 1.7.4 - pkg-types: 1.3.1 - optional: true - local-pkg@1.2.1: dependencies: mlly: 1.7.4 @@ -3398,11 +3074,6 @@ snapshots: dependencies: magic-string: 0.30.21 - magic-string@0.30.17: - dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 - optional: true - magic-string@0.30.21: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 @@ -3413,13 +3084,8 @@ snapshots: math-intrinsics@1.1.0: {} - maybe-types@0.2.0: {} - memorystream@0.3.1: {} - merge2@1.4.1: - optional: true - micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -3432,11 +3098,6 @@ snapshots: dependencies: mime-db: 1.52.0 - minimatch@9.0.5: - dependencies: - brace-expansion: 2.0.1 - optional: true - mlly@1.7.4: dependencies: acorn: 8.14.1 @@ -3462,9 +3123,6 @@ snapshots: node-releases@2.0.19: {} - normalize-path@3.0.0: - optional: true - nostics@1.2.0: {} npm-normalize-package-bin@6.0.0: {} @@ -3587,19 +3245,11 @@ snapshots: filter-obj: 5.1.0 split-on-first: 3.0.0 - queue-microtask@1.2.3: - optional: true - read-package-json-fast@6.0.0: dependencies: json-parse-even-better-errors: 6.0.0 npm-normalize-package-bin: 6.0.0 - readdirp@3.6.0: - dependencies: - picomatch: 2.3.1 - optional: true - readdirp@5.0.0: {} reka-ui@2.10.1(vue@3.5.40(typescript@6.0.3)): @@ -3618,9 +3268,6 @@ snapshots: transitivePeerDependencies: - '@vue/composition-api' - reusify@1.1.0: - optional: true - rolldown@1.2.2: dependencies: '@oxc-project/types': 0.142.0 @@ -3667,11 +3314,6 @@ snapshots: fsevents: 2.3.3 optional: true - run-parallel@1.2.0: - dependencies: - queue-microtask: 1.2.3 - optional: true - sass@1.102.0: dependencies: chokidar: 5.0.0 @@ -3720,12 +3362,6 @@ snapshots: tslib@2.8.1: {} - tslx@0.1.1: - dependencies: - csstype: 3.1.3 - - type-fest@4.38.0: {} - typescript@6.0.3: {} ufo@1.5.4: {} @@ -3789,26 +3425,6 @@ snapshots: pathe: 2.0.3 picomatch: 4.0.5 - unplugin-vue-components@0.27.5(@babel/parser@7.29.8)(rollup@4.35.0)(vue@3.5.40(typescript@6.0.3)): - dependencies: - '@antfu/utils': 0.7.10 - '@rollup/pluginutils': 5.1.4(rollup@4.35.0) - chokidar: 3.6.0 - debug: 4.4.0 - fast-glob: 3.3.3 - local-pkg: 0.5.1 - magic-string: 0.30.17 - minimatch: 9.0.5 - mlly: 1.7.4 - unplugin: 1.16.1 - vue: 3.5.40(typescript@6.0.3) - optionalDependencies: - '@babel/parser': 7.29.8 - transitivePeerDependencies: - - rollup - - supports-color - optional: true - unplugin-vue-components@32.1.0(rolldown@1.2.2)(rollup@4.35.0)(vite@8.2.0(@types/node@26.1.2)(jiti@2.7.0)(sass@1.102.0)(yaml@2.9.0))(vue@3.5.40(typescript@6.0.3)): dependencies: chokidar: 5.0.0 @@ -3832,12 +3448,6 @@ snapshots: - vite - webpack - unplugin@1.16.1: - dependencies: - acorn: 8.14.1 - webpack-virtual-modules: 0.6.2 - optional: true - unplugin@3.3.0(rolldown@1.2.2)(rollup@4.35.0)(vite@8.2.0(@types/node@26.1.2)(jiti@2.7.0)(sass@1.102.0)(yaml@2.9.0)): dependencies: '@jridgewell/remapping': 2.3.5 diff --git a/frontend-ui/src/components/calc/README b/frontend-ui/src/components/calc/README deleted file mode 100644 index 2ad1d84e..00000000 --- a/frontend-ui/src/components/calc/README +++ /dev/null @@ -1 +0,0 @@ -DNF风格定制组件 diff --git a/frontend-ui/src/components/calc/action-dialog/index.vue b/frontend-ui/src/components/calc/action-dialog/index.vue deleted file mode 100644 index f390834b..00000000 --- a/frontend-ui/src/components/calc/action-dialog/index.vue +++ /dev/null @@ -1,207 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/autocomplete/index.vue b/frontend-ui/src/components/calc/autocomplete/index.vue deleted file mode 100644 index f3d3bd3b..00000000 --- a/frontend-ui/src/components/calc/autocomplete/index.vue +++ /dev/null @@ -1,250 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/button/index.vue b/frontend-ui/src/components/calc/button/index.vue deleted file mode 100644 index 1580c10f..00000000 --- a/frontend-ui/src/components/calc/button/index.vue +++ /dev/null @@ -1,120 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/cascader/img/down.png b/frontend-ui/src/components/calc/cascader/img/down.png deleted file mode 100644 index 4861b24fb85729c3a661f9edfe2e9b77f2b52205..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 205 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 Z+qLzKwIHy0Kb)1Xx4SQK@R3bV{{z~@6G{L8 diff --git a/frontend-ui/src/components/calc/cascader/img/img/up.png b/frontend-ui/src/components/calc/cascader/img/img/up.png deleted file mode 100644 index b017add4597b4e86fee9f67fc19efe15be18d722..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 215 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 Z+qLzKwIHy0Kb)1Xx4SQK@R3bV{{z~@6G{L8 diff --git a/frontend-ui/src/components/calc/cascader/img/up.png b/frontend-ui/src/components/calc/cascader/img/up.png deleted file mode 100644 index b017add4597b4e86fee9f67fc19efe15be18d722..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^+(69F!VDx22y1{S#^NA%Cx&(BWL^R}DgizruDZIq z3JMBpYN~Mo7W(@7np#@Y($e1cI^mwiM;GTA>uK0o7<@m-DFIZU=;`7Z!f`!0A~7c? zXJf;{+eeQc-Q9SQ#bc+0!3+z74I3m3Bn%iBCnWXqFa#}I7`(iVY2}Fv9s;JGo|&r{ zn -import { selectionEmits, selectionProps } from 'hoci' -import type { CSSProperties, PropType } from 'vue' -import { Teleport, Transition, computed, defineComponent, onDeactivated, ref, watch } from 'vue' - -import { onClickOutside, useVModel } from '@vueuse/core' -import { getElementZoom } from '@/utils/position' -interface ICascaderItem { - label: string - id?: string | number - value?: any - children?: ICascaderItem[] - onSelect?: () => void -} - -export default defineComponent({ - name: 'ICascader', - props: { - ...selectionProps, - disabled: { - type: Boolean, - default: false, - }, - width: { - type: Number, - default: 120, - }, - emptyLabel: { - type: String, - }, - highlight: { - type: String, - // warn remind - default: '', - }, - items: { - type: Array as PropType, - default: () => [], - }, - }, - emits: [...selectionEmits, 'select'], - setup(props, { emit }) { - const modelValue = useVModel(props, 'modelValue') - - const isOpen = ref(false) - const triggerRef = ref() - const selectRef = ref() - const dropdownRef = ref() - - watch(isOpen, onResize) - - function collapse() { - isOpen.value = !isOpen.value && !props.disabled - } - - // 下拉框位置 - const dropdownPosition = ref({ x: 0, y: 0, w: 0, z: 0 }) - // 下拉框位置 - const dropdownStyle = computed(() => { - if (dropdownPosition.value.z == 0) { - return { - left: `${dropdownPosition.value.x}px`, - top: `${dropdownPosition.value.y}px`, - width: `${dropdownPosition.value.w}px`, - } - } else { - return { - left: `${dropdownPosition.value.x}px`, - bottom: `${dropdownPosition.value.z}px`, - width: `${dropdownPosition.value.w}px`, - } - } - }) - - function onResize() { - if (triggerRef.value) { - const { width, height, left, top } = triggerRef.value.getBoundingClientRect() - const zoom = getElementZoom('body') - if (window.innerHeight - top > 160) { - dropdownPosition.value = { - w: width / zoom, - x: left / zoom, - y: (top + height + 2) / zoom, - z: 0, - } - } else { - dropdownPosition.value = { - w: width / zoom, - x: left / zoom, - z: (window.innerHeight - top + 2) / zoom, - y: 0, - } - } - } - } - - window.addEventListener('resize', onResize) - window.addEventListener('scroll', onResize) - - onDeactivated(() => { - window.removeEventListener('resize', onResize) - window.removeEventListener('scroll', onResize) - }) - - const selectItem = ref() - - function onSelect(item: ICascaderItem) { - if (!item.children?.length) { - isOpen.value = false - } - selectItem.value = item - emit('select', item.value) - } - - function loadNode(item: ICascaderItem) { - const value = props.modelValue ?? props.defaultValue - if ((selectItem.value == null || selectItem.value == undefined) && value == item.value) { - selectItem.value = item - } - } - - onClickOutside(triggerRef, () => (isOpen.value = false), { ignore: [dropdownRef] }) - - return () => { - return ( -
-
- {selectItem.value?.label} - -
- - - - - -
- ) - } - }, -}) - - - diff --git a/frontend-ui/src/components/calc/checkbox-group/index.vue b/frontend-ui/src/components/calc/checkbox-group/index.vue deleted file mode 100644 index 1010c06f..00000000 --- a/frontend-ui/src/components/calc/checkbox-group/index.vue +++ /dev/null @@ -1,73 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/checkbox/index.vue b/frontend-ui/src/components/calc/checkbox/index.vue deleted file mode 100644 index 9a52fed9..00000000 --- a/frontend-ui/src/components/calc/checkbox/index.vue +++ /dev/null @@ -1,226 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/collapse/index.vue b/frontend-ui/src/components/calc/collapse/index.vue deleted file mode 100644 index 0efe864e..00000000 --- a/frontend-ui/src/components/calc/collapse/index.vue +++ /dev/null @@ -1,41 +0,0 @@ - diff --git a/frontend-ui/src/components/calc/dialog/index.vue b/frontend-ui/src/components/calc/dialog/index.vue deleted file mode 100644 index 2f93db30..00000000 --- a/frontend-ui/src/components/calc/dialog/index.vue +++ /dev/null @@ -1,201 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/iconselect/index.vue b/frontend-ui/src/components/calc/iconselect/index.vue deleted file mode 100644 index 4d7baa66..00000000 --- a/frontend-ui/src/components/calc/iconselect/index.vue +++ /dev/null @@ -1,257 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/index.ts b/frontend-ui/src/components/calc/index.ts deleted file mode 100644 index 825c115d..00000000 --- a/frontend-ui/src/components/calc/index.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { App } from 'vue' -import Button from './button/index.vue' -import Tabs from './tabs/index.vue' -import Tab from './tab/index.vue' -import Select from './select/index.vue' -import Option from './option/index.vue' -import Menu from './menu/menu.vue' -import Checkbox from './checkbox/index.vue' -import Collapse from './collapse/index.vue' -import Dialog from './dialog/index.vue' -import Tooltip from './tooltip/index.vue' -import Iconselect from './iconselect/index.vue' -import Selection from './selection/index.vue' -import Slider from './slider/index.vue' - -export const components = { - Button, - Tabs, - Option, - Tab, - Select, - Menu, - Checkbox, - Collapse, - Dialog, - Tooltip, - Iconselect, - Selection, - Slider, -} - -export type CalcComponents = typeof components - -export function install(app: App) { - for (const [key, value] of Object.entries(components)) { - app.component(`calc-${key.toLocaleLowerCase()}`, value) - } -} - -export default components diff --git a/frontend-ui/src/components/calc/input/index.vue b/frontend-ui/src/components/calc/input/index.vue deleted file mode 100644 index 5331d7da..00000000 --- a/frontend-ui/src/components/calc/input/index.vue +++ /dev/null @@ -1,69 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/item/index.vue b/frontend-ui/src/components/calc/item/index.vue deleted file mode 100644 index 996d40aa..00000000 --- a/frontend-ui/src/components/calc/item/index.vue +++ /dev/null @@ -1,4 +0,0 @@ - diff --git a/frontend-ui/src/components/calc/loading/index.vue b/frontend-ui/src/components/calc/loading/index.vue deleted file mode 100644 index e93202ea..00000000 --- a/frontend-ui/src/components/calc/loading/index.vue +++ /dev/null @@ -1,95 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/menu/img/plus.svg b/frontend-ui/src/components/calc/menu/img/plus.svg deleted file mode 100644 index f92ba0fd..00000000 --- a/frontend-ui/src/components/calc/menu/img/plus.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/frontend-ui/src/components/calc/menu/menu.vue b/frontend-ui/src/components/calc/menu/menu.vue deleted file mode 100644 index ae79b322..00000000 --- a/frontend-ui/src/components/calc/menu/menu.vue +++ /dev/null @@ -1,73 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/option/index.vue b/frontend-ui/src/components/calc/option/index.vue deleted file mode 100644 index 996d40aa..00000000 --- a/frontend-ui/src/components/calc/option/index.vue +++ /dev/null @@ -1,4 +0,0 @@ - diff --git a/frontend-ui/src/components/calc/pagination/index.vue b/frontend-ui/src/components/calc/pagination/index.vue deleted file mode 100644 index f4aee767..00000000 --- a/frontend-ui/src/components/calc/pagination/index.vue +++ /dev/null @@ -1,97 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/progress/index.vue b/frontend-ui/src/components/calc/progress/index.vue deleted file mode 100644 index b465ba72..00000000 --- a/frontend-ui/src/components/calc/progress/index.vue +++ /dev/null @@ -1,51 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/select/img/down.png b/frontend-ui/src/components/calc/select/img/down.png deleted file mode 100644 index 4861b24fb85729c3a661f9edfe2e9b77f2b52205..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 205 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 Z+qLzKwIHy0Kb)1Xx4SQK@R3bV{{z~@6G{L8 diff --git a/frontend-ui/src/components/calc/select/img/up.png b/frontend-ui/src/components/calc/select/img/up.png deleted file mode 100644 index b017add4597b4e86fee9f67fc19efe15be18d722..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^+(69F!VDx22y1{S#^NA%Cx&(BWL^R}DgizruDZIq z3JMBpYN~Mo7W(@7np#@Y($e1cI^mwiM;GTA>uK0o7<@m-DFIZU=;`7Z!f`!0A~7c? zXJf;{+eeQc-Q9SQ#bc+0!3+z74I3m3Bn%iBCnWXqFa#}I7`(iVY2}Fv9s;JGo|&r{ zn -import { selectionEmits, selectionProps, useSelectionList } from 'hoci' -import type { CSSProperties, PropType } from 'vue' -import { - Teleport, - Transition, - computed, - defineComponent, - onDeactivated, - ref, - renderList, - renderSlot, - watch, -} from 'vue' - -import { onClickOutside, useVModel } from '@vueuse/core' -import { classPropType, labelPropType } from '@/components/hooks/types' -import { getElementZoom } from '@/utils/position' - -export default defineComponent({ - name: 'ISelect', - props: { - ...selectionProps, - disabled: { - type: Boolean, - default: false, - }, - width: { - type: Number, - default: 120, - }, - emptyLabel: { - type: labelPropType, - }, - highlight: { - type: String, - // warn remind - default: '', - }, - labelClass: { - type: String, - default: '', - }, - inputClass: { - type: classPropType, - default: '', - }, - appendTo: { - type: [Object, String] as PropType, - default() { - return 'body' - }, - }, - }, - emits: [...selectionEmits], - setup(props, context) { - const modelValue = useVModel(props, 'modelValue', context.emit, { passive: true }) - - const { renderItem } = useSelectionList(() => { - return { - ...props, - modelValue: modelValue.value, - itemClass: 'i-select-dropdown-item', - activeClass: 'active', - unactiveClass: 'unactive', - } - }, context) - - const isOpen = ref(false) - const triggerRef = ref() - const selectRef = ref() - const dropdownRef = ref() - - watch(isOpen, onResize) - - function collapse() { - isOpen.value = !isOpen.value && !props.disabled - } - - // 下拉框位置 - const dropdownPosition = ref({ x: 0, y: 0, w: 0, z: 0 }) - // 下拉框位置 - const dropdownStyle = computed(() => { - if (dropdownPosition.value.z == 0) { - return { - left: `${dropdownPosition.value.x}px`, - top: `${dropdownPosition.value.y}px`, - width: `${dropdownPosition.value.w}px`, - } - } else { - return { - left: `${dropdownPosition.value.x}px`, - bottom: `${dropdownPosition.value.z}px`, - width: `${dropdownPosition.value.w}px`, - } - } - }) - - function onResize() { - if (triggerRef.value) { - const { width, height, left, top } = triggerRef.value.getBoundingClientRect() - const zoom = getElementZoom(appendToRef.value) - if (window.innerHeight - top > 160) { - dropdownPosition.value = { - w: width / zoom, - x: left / zoom, - y: (top + height + 2) / zoom, - z: 0, - } - } else { - dropdownPosition.value = { - w: width / zoom, - x: left / zoom, - z: (window.innerHeight - top + 2) / zoom, - y: 0, - } - } - } - } - - const appendToRef = computed(() => { - return props.appendTo || 'body' - }) - - onClickOutside(triggerRef, () => (isOpen.value = false)) - - window.addEventListener('resize', onResize) - window.addEventListener('scroll', onResize) - - onDeactivated(() => { - window.removeEventListener('resize', onResize) - window.removeEventListener('scroll', onResize) - }) - - const { slots } = context - - function renderLabel() { - const children = renderItem() - if (children) { - if (!Array.isArray(children)) { - return {children} - } else if (children.length > 0) { - return ( - - {renderList(children, (item) => ( - {item} - ))} - - ) - } - } - const emptyLabel = - typeof props.emptyLabel == 'function' ? props.emptyLabel() : props.emptyLabel - return {emptyLabel} - } - - return () => { - return ( -
-
- {renderLabel()} - -
- - -
- {renderSlot(slots, 'default')} -
-
-
-
- ) - } - }, -}) - - - diff --git a/frontend-ui/src/components/calc/selection/index.vue b/frontend-ui/src/components/calc/selection/index.vue deleted file mode 100644 index 24b57370..00000000 --- a/frontend-ui/src/components/calc/selection/index.vue +++ /dev/null @@ -1,5 +0,0 @@ - diff --git a/frontend-ui/src/components/calc/shared.ts b/frontend-ui/src/components/calc/shared.ts deleted file mode 100644 index 879e13a8..00000000 --- a/frontend-ui/src/components/calc/shared.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type { InjectionKey } from 'vue' - -export const CHECKBOX_GROUP: InjectionKey = Symbol('checkbox-group') diff --git a/frontend-ui/src/components/calc/slider/index.vue b/frontend-ui/src/components/calc/slider/index.vue deleted file mode 100644 index a05249d6..00000000 --- a/frontend-ui/src/components/calc/slider/index.vue +++ /dev/null @@ -1,211 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/tab/index.vue b/frontend-ui/src/components/calc/tab/index.vue deleted file mode 100644 index 52393709..00000000 --- a/frontend-ui/src/components/calc/tab/index.vue +++ /dev/null @@ -1,24 +0,0 @@ - diff --git a/frontend-ui/src/components/calc/tabs/constants.ts b/frontend-ui/src/components/calc/tabs/constants.ts deleted file mode 100644 index 4577bcc1..00000000 --- a/frontend-ui/src/components/calc/tabs/constants.ts +++ /dev/null @@ -1,5 +0,0 @@ -export const AciveSymbol = Symbol('[i-tabs]active') - -export const AciveClassSymbol = Symbol('[i-tabs]active-class') - -export const ChangeActiveSymbol = Symbol('[i-tabs]change-active') diff --git a/frontend-ui/src/components/calc/tabs/index.vue b/frontend-ui/src/components/calc/tabs/index.vue deleted file mode 100644 index 8c2589e5..00000000 --- a/frontend-ui/src/components/calc/tabs/index.vue +++ /dev/null @@ -1,141 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/tooltip/index.vue b/frontend-ui/src/components/calc/tooltip/index.vue deleted file mode 100644 index c4f5578c..00000000 --- a/frontend-ui/src/components/calc/tooltip/index.vue +++ /dev/null @@ -1,28 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/tree/img/collapse_down.png b/frontend-ui/src/components/calc/tree/img/collapse_down.png deleted file mode 100644 index bba85eac3290d5a22007ac479fe05b29ced3980d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 353 zcmeAS@N?(olHy`uVBq!ia0vp^+#ogw8<4F3I>j1DF%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl}2EbxddW?uu%1=;hv^j11oz+>9kL!5lcgvr=_D?_c zu)Y4X`)I()m3J3taD{}n?phb>dpYL*&B?{;?SIWrZQ9fL-(Kyx->tLipKPux`34^; z?0HfD)mbF6Q!4L`BT$5EoKK!*M8ueiB0Z7s_`ectFYNoCdF-*T9Nb@0B^2TDRrCo&h!|((bItj&;?c@z4C`Jr|Z}TX;Nb w+R}R~Pd~YH@=;>X!d)?y=j|_OOa5j2HI37C%f#t=zz|^YboFyt=akR{06kQfeEHF6WJ5RiSE*BcQ zFjJ}|wte4wL!Rciv~OSToc#XV_|-1A+uN)pj(=n^uC99b}@ zTmwZ;e3prvrsx~2;<;%0Ok3OXP1QG6DA?yu7w&oNH}74(;PH(@u7ZaQTHgPzn%Vo< zZ(Dgbi{pY%GC<>>RdHS~eONiKZi#`x=H<`*^1{S7=x}e#JzO}4^UcehlfPbN`W*2< Zeofwm`|c4rxOI^`_aE(l3j|FL9?|Jgk%SA?0Q47g3A%!NGS;irL;?eqDc% znJZtne$UjXE0Vt-{yIBr)3mj1r3s}|gYw%%&m^!rM{upXzjjk;{$7oxiw^U(ZTRw6 zYWu$pv#u@oQTtp|UjBSaP~q9LXKj;DB+X9Lx|x!(I`X@)uyB0!-h1tS%Ri^@jgvQ( z;$1(b%683+ne1;8IK0D5x0-Itsy+9#$p3HM|Jv=h|K7+koB!?Gx3;%s(VAb~A`bGD z8B95w=00On7{f8E>YaP{mYRLp-pO)(@!cO8TI^mcuOH@0+i*E+>%T)n%Yvel+y4|7 z7e8Kg_0@?9ib4r@R!sTTY0xaolc>qsw)TnXXDujB)If|&9tC|8^6SF zT)jGV_0=q@cDCb zxQ)o=OZY160g<=uc}=B>BeqNAcdX=`h1 zq`-AYtiD>bGv?gv0}FYL*1-I^=4Q^WqeorynIe(gnQbDaH~Var@ChWlBlgCXb8~Zp z+%6FY3z4wZSMU7!vu8V_2p=#xLSiX&b*Nq3`&@=rguj7NsW}x z+Zj`~dGqGQA~zn_=ZAUiy`>EDrAWl5mv5eYXb)O>MEQ}pbcInXkFeI%p!MH7B;VY) zAHQJ=lQ&=egN~`^gM)(?J1zWRH~n<&oS8E#Hzk^AEv-`mXPrYKS=yE=J%UCKf;&S6) zK-SCOf}8H^ZFwnBvb1jRe_NKnw_CSqX5Vyr(0DZ4ZRwTQiLAyzWxIABJNA$9b=JF| U+~@wa1B(m>Pgg&ebxsLQ0FOWs0RR91 diff --git a/frontend-ui/src/components/calc/tree/img/item_active.png b/frontend-ui/src/components/calc/tree/img/item_active.png deleted file mode 100644 index 50d3f93efccad1d857c58308ad6f7f650cf605d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^JwVLI!3HG%?)dT+NHG=%xjQkeJ16rJ$YDu$^mSxl z*x1kgCy^D%=PdAuECy;g48n}Z^H-z*1=o7IIEF;HzrA^ov)Ms}Eiqa^N69zBx$ERv zzBel0MJDTAYN}*DpQ@U7jp;SMQ--4}M$GWJZpAu}r> R_ZiUP44$rjF6*2UngFjbZ>j(Q diff --git a/frontend-ui/src/components/calc/tree/img/item_hover.png b/frontend-ui/src/components/calc/tree/img/item_hover.png deleted file mode 100644 index 3c0e14840dade19dd0693a695e9d1c4d2b1bbab3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^kAPU1gAGXb-n*C$q!^2X+?^QKos)S9a~60+7BevL9R^{>ZfO);@=Yy&$@>F+^XJ_0y__7WVmkf!!=H7%?-t+An6{;Iqge5J z(<6I!^yw|$yyR^6))~9kE4roI&2e-0oGqShSRUYip7 -import { HiSelection, selectionProps } from 'hoci' -import { useVModel } from '@vueuse/core' -import type { PropType } from 'vue' -import { computed, defineComponent, renderList, watch } from 'vue' -import CalcTreeNode from './node.vue' -import type { TreeNode } from './types' -import { labelPropType, valuePropType } from '@/components/hooks/types' - -const Tree = defineComponent({ - name: 'CalcTree', - props: { - ...selectionProps, - modelValue: { - type: valuePropType, - default: () => null, - }, - activeItem: { - type: Object as PropType, - default: () => null, - }, - idKey: { - type: String, - default: 'id', - }, - label: { - type: labelPropType, - }, - data: { - type: Array as PropType, - default: () => [], - }, - depth: { - type: [Number, String] as PropType, - default: () => 0, - }, - depthStyle: { - type: Function as PropType<(depth: number) => string>, - }, - }, - emits: ['select', 'update:modelValue'], - setup(props, { emit }) { - const modelValue = useVModel(props, 'modelValue') - - function onSelect(item?: TreeNode) { - if (item) { - emit('select', item) - item.onSelect?.() - } - } - - function loadItem(total: TreeNode[], items: TreeNode[]) { - items?.forEach((item) => { - if (item.children) { - loadItem(total, item.children) - } - total.push(item) - }) - return total - } - - const children = computed(() => { - return loadItem([], props.data) - }) - - watch(modelValue, (val) => { - val = val ?? props.defaultValue - const item = children.value.find((item) => item.value === val) - onSelect(item) - }) - - return () => { - return ( - - {renderList(props.data, (item) => { - return ( - - ) - })} - - ) - } - }, -}) - -export default Tree - - - diff --git a/frontend-ui/src/components/calc/tree/node.vue b/frontend-ui/src/components/calc/tree/node.vue deleted file mode 100644 index d4f93e55..00000000 --- a/frontend-ui/src/components/calc/tree/node.vue +++ /dev/null @@ -1,171 +0,0 @@ - - - diff --git a/frontend-ui/src/components/calc/tree/types.ts b/frontend-ui/src/components/calc/tree/types.ts deleted file mode 100644 index bd4cf8a6..00000000 --- a/frontend-ui/src/components/calc/tree/types.ts +++ /dev/null @@ -1,10 +0,0 @@ -export interface TreeNode { - label: string - id?: string | number - value?: any - children?: TreeNode[] - onSelect?: () => void - [key: string]: any -} - -export interface TreeData {} diff --git a/frontend-ui/src/components/dnf/Avatar/List/index.vue b/frontend-ui/src/components/dnf/Avatar/List/index.vue index f90e74ec..d8266fc3 100644 --- a/frontend-ui/src/components/dnf/Avatar/List/index.vue +++ b/frontend-ui/src/components/dnf/Avatar/List/index.vue @@ -1,11 +1,7 @@