From 8843ae4261df5b2a2c9eb969bdf714d764512105 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 28 Oct 2026 13:41:26 +0800 Subject: [PATCH] refactor(admin): unify sortable/draggable/repeater list UI - Add shared sortable-list.css, SORTABLE_LIST_ATTRS and AksSortHandle - Migrate schema sortable, selected order, inline/modal repeater, sorter, floating buttons, footer tabbar and ticket prereply lists to the shared design - Split AksField.vue (1885 -> 969 lines) into focused components/helpers - Remove dead AksArrayTable/AksRepeaterField and move-up/down helpers - Replace hardcoded colors and --n-* vars with --aksrt-color-* tokens Co-Authored-By: Claude Fable 5 --- .../components/floating/FloatBtnItemPanel.vue | 106 +- .../src/components/form/AksArrayTable.vue | 128 -- .../src/components/form/AksCompositeField.vue | 231 +++ assets/admin/src/components/form/AksField.vue | 1372 +++-------------- .../components/form/AksImageSelectField.vue | 100 ++ .../src/components/form/AksRepeaterField.vue | 185 --- .../components/form/AksRepeaterListModal.vue | 183 +++ .../src/components/form/AksSelectedOrder.vue | 53 + .../src/components/form/AksSortHandle.vue | 12 + .../src/components/form/AksSorterField.vue | 125 +- .../src/components/form/field-dependency.js | 18 + .../src/components/form/repeater-rows.js | 65 + .../src/components/form/sortable-options.js | 15 + .../components/form/useFieldRemoteOptions.js | 120 ++ assets/admin/src/main.js | 1 + .../pages/content/FloatingButtonsSettings.vue | 21 +- .../pages/content/FooterTabbarSettings.vue | 197 +-- .../partials/ticket/TicketPrereplyPanel.vue | 60 +- assets/admin/src/style.css | 10 + assets/admin/src/styles/sortable-list.css | 236 +++ 20 files changed, 1442 insertions(+), 1796 deletions(-) delete mode 100644 assets/admin/src/components/form/AksArrayTable.vue create mode 100644 assets/admin/src/components/form/AksCompositeField.vue create mode 100644 assets/admin/src/components/form/AksImageSelectField.vue delete mode 100644 assets/admin/src/components/form/AksRepeaterField.vue create mode 100644 assets/admin/src/components/form/AksRepeaterListModal.vue create mode 100644 assets/admin/src/components/form/AksSelectedOrder.vue create mode 100644 assets/admin/src/components/form/AksSortHandle.vue create mode 100644 assets/admin/src/components/form/field-dependency.js create mode 100644 assets/admin/src/components/form/repeater-rows.js create mode 100644 assets/admin/src/components/form/sortable-options.js create mode 100644 assets/admin/src/components/form/useFieldRemoteOptions.js create mode 100644 assets/admin/src/styles/sortable-list.css diff --git a/assets/admin/src/components/floating/FloatBtnItemPanel.vue b/assets/admin/src/components/floating/FloatBtnItemPanel.vue index e845450a..463ea418 100644 --- a/assets/admin/src/components/floating/FloatBtnItemPanel.vue +++ b/assets/admin/src/components/floating/FloatBtnItemPanel.vue @@ -1,23 +1,29 @@