@qingmingmu/components 0.1.0-beta.0
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/LICENSE +21 -0
- package/README.md +128 -0
- package/es/components/app-layout/index.cjs +14 -0
- package/es/components/app-layout/index.d.cts +10 -0
- package/es/components/app-layout/index.d.mts +8 -0
- package/es/components/app-layout/index.d.ts +10 -0
- package/es/components/app-layout/index.mjs +8 -0
- package/es/components/app-layout/style/index.js +4 -0
- package/es/components/app-layout/style.css +36 -0
- package/es/components/badge/index.cjs +13 -0
- package/es/components/badge/index.d.cts +10 -0
- package/es/components/badge/index.d.mts +8 -0
- package/es/components/badge/index.d.ts +10 -0
- package/es/components/badge/index.mjs +8 -0
- package/es/components/badge/style/index.js +2 -0
- package/es/components/badge/style.css +36 -0
- package/es/components/breadcrumb/index.cjs +16 -0
- package/es/components/breadcrumb/index.d.cts +10 -0
- package/es/components/breadcrumb/index.d.mts +8 -0
- package/es/components/breadcrumb/index.d.ts +10 -0
- package/es/components/breadcrumb/index.mjs +8 -0
- package/es/components/breadcrumb/style/index.js +4 -0
- package/es/components/breadcrumb/style.css +43 -0
- package/es/components/button/index.cjs +14 -0
- package/es/components/button/index.d.cts +10 -0
- package/es/components/button/index.d.mts +10 -0
- package/es/components/button/index.d.ts +10 -0
- package/es/components/button/index.mjs +10 -0
- package/es/components/button/style/index.js +4 -0
- package/es/components/button/style.css +185 -0
- package/es/components/checkbox/index.cjs +18 -0
- package/es/components/checkbox/index.d.cts +8 -0
- package/es/components/checkbox/index.d.mts +8 -0
- package/es/components/checkbox/index.d.ts +8 -0
- package/es/components/checkbox/index.mjs +8 -0
- package/es/components/checkbox/style/index.js +4 -0
- package/es/components/checkbox/style.css +538 -0
- package/es/components/date-picker/index.cjs +22 -0
- package/es/components/date-picker/index.d.cts +13 -0
- package/es/components/date-picker/index.d.mts +11 -0
- package/es/components/date-picker/index.d.ts +13 -0
- package/es/components/date-picker/index.mjs +11 -0
- package/es/components/date-picker/style/index.js +4 -0
- package/es/components/date-picker/style.css +221 -0
- package/es/components/dialog/index.cjs +278 -0
- package/es/components/dialog/index.d.cts +133 -0
- package/es/components/dialog/index.d.mts +131 -0
- package/es/components/dialog/index.d.ts +133 -0
- package/es/components/dialog/index.mjs +269 -0
- package/es/components/dialog/style/index.js +4 -0
- package/es/components/dialog/style.css +157 -0
- package/es/components/divider/index.cjs +13 -0
- package/es/components/divider/index.d.cts +10 -0
- package/es/components/divider/index.d.mts +8 -0
- package/es/components/divider/index.d.ts +10 -0
- package/es/components/divider/index.mjs +8 -0
- package/es/components/divider/style/index.js +2 -0
- package/es/components/divider/style.css +49 -0
- package/es/components/drawer/index.cjs +18 -0
- package/es/components/drawer/index.d.cts +13 -0
- package/es/components/drawer/index.d.mts +11 -0
- package/es/components/drawer/index.d.ts +13 -0
- package/es/components/drawer/index.mjs +11 -0
- package/es/components/drawer/style/index.js +4 -0
- package/es/components/drawer/style.css +126 -0
- package/es/components/dropdown/index.cjs +19 -0
- package/es/components/dropdown/index.d.cts +11 -0
- package/es/components/dropdown/index.d.mts +9 -0
- package/es/components/dropdown/index.d.ts +11 -0
- package/es/components/dropdown/index.mjs +9 -0
- package/es/components/dropdown/style/index.js +4 -0
- package/es/components/dropdown/style.css +50 -0
- package/es/components/empty/index.cjs +15 -0
- package/es/components/empty/index.d.cts +12 -0
- package/es/components/empty/index.d.mts +10 -0
- package/es/components/empty/index.d.ts +12 -0
- package/es/components/empty/index.mjs +10 -0
- package/es/components/empty/style/index.js +4 -0
- package/es/components/empty/style.css +30 -0
- package/es/components/form/index.cjs +22 -0
- package/es/components/form/index.d.cts +10 -0
- package/es/components/form/index.d.mts +8 -0
- package/es/components/form/index.d.ts +10 -0
- package/es/components/form/index.mjs +8 -0
- package/es/components/form/style/index.js +4 -0
- package/es/components/form/style.css +70 -0
- package/es/components/grid/index.cjs +20 -0
- package/es/components/grid/index.d.cts +10 -0
- package/es/components/grid/index.d.mts +8 -0
- package/es/components/grid/index.d.ts +10 -0
- package/es/components/grid/index.mjs +8 -0
- package/es/components/grid/style/index.js +2 -0
- package/es/components/grid/style.css +45 -0
- package/es/components/icon/index.cjs +14 -0
- package/es/components/icon/index.d.cts +11 -0
- package/es/components/icon/index.d.mts +9 -0
- package/es/components/icon/index.d.ts +11 -0
- package/es/components/icon/index.mjs +9 -0
- package/es/components/icon/style/index.js +2 -0
- package/es/components/icon/style.css +437 -0
- package/es/components/input/index.cjs +18 -0
- package/es/components/input/index.d.cts +12 -0
- package/es/components/input/index.d.mts +10 -0
- package/es/components/input/index.d.ts +12 -0
- package/es/components/input/index.mjs +10 -0
- package/es/components/input/style/index.js +4 -0
- package/es/components/input/style.css +108 -0
- package/es/components/layout/index.cjs +13 -0
- package/es/components/layout/index.d.cts +10 -0
- package/es/components/layout/index.d.mts +8 -0
- package/es/components/layout/index.d.ts +10 -0
- package/es/components/layout/index.mjs +8 -0
- package/es/components/layout/style/index.js +2 -0
- package/es/components/layout/style.css +54 -0
- package/es/components/link/index.cjs +13 -0
- package/es/components/link/index.d.cts +10 -0
- package/es/components/link/index.d.mts +8 -0
- package/es/components/link/index.d.ts +10 -0
- package/es/components/link/index.mjs +8 -0
- package/es/components/link/style/index.js +2 -0
- package/es/components/link/style.css +39 -0
- package/es/components/list/index.cjs +13 -0
- package/es/components/list/index.d.cts +10 -0
- package/es/components/list/index.d.mts +8 -0
- package/es/components/list/index.d.ts +10 -0
- package/es/components/list/index.mjs +8 -0
- package/es/components/list/style/index.js +4 -0
- package/es/components/list/style.css +33 -0
- package/es/components/menu/index.cjs +18 -0
- package/es/components/menu/index.d.cts +12 -0
- package/es/components/menu/index.d.mts +10 -0
- package/es/components/menu/index.d.ts +12 -0
- package/es/components/menu/index.mjs +10 -0
- package/es/components/menu/style/index.js +4 -0
- package/es/components/menu/style.css +148 -0
- package/es/components/message/index.cjs +236 -0
- package/es/components/message/index.d.cts +92 -0
- package/es/components/message/index.d.mts +92 -0
- package/es/components/message/index.d.ts +92 -0
- package/es/components/message/index.mjs +232 -0
- package/es/components/message/style/index.js +4 -0
- package/es/components/message/style.css +121 -0
- package/es/components/notification/index.cjs +288 -0
- package/es/components/notification/index.d.cts +90 -0
- package/es/components/notification/index.d.mts +90 -0
- package/es/components/notification/index.d.ts +90 -0
- package/es/components/notification/index.mjs +284 -0
- package/es/components/notification/style/index.js +4 -0
- package/es/components/notification/style.css +191 -0
- package/es/components/pagination/index.cjs +16 -0
- package/es/components/pagination/index.d.cts +12 -0
- package/es/components/pagination/index.d.mts +10 -0
- package/es/components/pagination/index.d.ts +12 -0
- package/es/components/pagination/index.mjs +10 -0
- package/es/components/pagination/style/index.js +4 -0
- package/es/components/pagination/style.css +112 -0
- package/es/components/popover/index.cjs +17 -0
- package/es/components/popover/index.d.cts +11 -0
- package/es/components/popover/index.d.mts +9 -0
- package/es/components/popover/index.d.ts +11 -0
- package/es/components/popover/index.mjs +9 -0
- package/es/components/popover/style/index.js +4 -0
- package/es/components/popover/style.css +111 -0
- package/es/components/progress/index.cjs +15 -0
- package/es/components/progress/index.d.cts +10 -0
- package/es/components/progress/index.d.mts +8 -0
- package/es/components/progress/index.d.ts +10 -0
- package/es/components/progress/index.mjs +8 -0
- package/es/components/progress/style/index.js +4 -0
- package/es/components/progress/style.css +72 -0
- package/es/components/radio/index.cjs +20 -0
- package/es/components/radio/index.d.cts +8 -0
- package/es/components/radio/index.d.mts +8 -0
- package/es/components/radio/index.d.ts +8 -0
- package/es/components/radio/index.mjs +8 -0
- package/es/components/radio/style/index.js +4 -0
- package/es/components/radio/style.css +109 -0
- package/es/components/row/index.cjs +21 -0
- package/es/components/row/index.d.cts +287 -0
- package/es/components/row/index.d.mts +285 -0
- package/es/components/row/index.d.ts +287 -0
- package/es/components/row/index.mjs +3 -0
- package/es/components/row/style/index.js +2 -0
- package/es/components/row/style.css +2 -0
- package/es/components/select/index.cjs +20 -0
- package/es/components/select/index.d.cts +13 -0
- package/es/components/select/index.d.mts +11 -0
- package/es/components/select/index.d.ts +13 -0
- package/es/components/select/index.mjs +11 -0
- package/es/components/select/style/index.js +4 -0
- package/es/components/select/style.css +210 -0
- package/es/components/skeleton/index.cjs +13 -0
- package/es/components/skeleton/index.d.cts +10 -0
- package/es/components/skeleton/index.d.mts +8 -0
- package/es/components/skeleton/index.d.ts +10 -0
- package/es/components/skeleton/index.mjs +8 -0
- package/es/components/skeleton/style/index.js +4 -0
- package/es/components/skeleton/style.css +41 -0
- package/es/components/slider/index.cjs +18 -0
- package/es/components/slider/index.d.cts +10 -0
- package/es/components/slider/index.d.mts +8 -0
- package/es/components/slider/index.d.ts +10 -0
- package/es/components/slider/index.mjs +8 -0
- package/es/components/slider/style/index.js +4 -0
- package/es/components/slider/style.css +131 -0
- package/es/components/space/index.cjs +13 -0
- package/es/components/space/index.d.cts +10 -0
- package/es/components/space/index.d.mts +8 -0
- package/es/components/space/index.d.ts +10 -0
- package/es/components/space/index.mjs +8 -0
- package/es/components/space/style/index.js +2 -0
- package/es/components/space/style.css +38 -0
- package/es/components/splitter/index.cjs +15 -0
- package/es/components/splitter/index.d.cts +10 -0
- package/es/components/splitter/index.d.mts +8 -0
- package/es/components/splitter/index.d.ts +10 -0
- package/es/components/splitter/index.mjs +8 -0
- package/es/components/splitter/style/index.js +2 -0
- package/es/components/splitter/style.css +53 -0
- package/es/components/statistic/index.cjs +14 -0
- package/es/components/statistic/index.d.cts +10 -0
- package/es/components/statistic/index.d.mts +8 -0
- package/es/components/statistic/index.d.ts +10 -0
- package/es/components/statistic/index.mjs +8 -0
- package/es/components/statistic/style/index.js +4 -0
- package/es/components/statistic/style.css +30 -0
- package/es/components/steps/index.cjs +18 -0
- package/es/components/steps/index.d.cts +12 -0
- package/es/components/steps/index.d.mts +10 -0
- package/es/components/steps/index.d.ts +12 -0
- package/es/components/steps/index.mjs +10 -0
- package/es/components/steps/style/index.js +4 -0
- package/es/components/steps/style.css +123 -0
- package/es/components/switch/index.cjs +16 -0
- package/es/components/switch/index.d.cts +12 -0
- package/es/components/switch/index.d.mts +10 -0
- package/es/components/switch/index.d.ts +12 -0
- package/es/components/switch/index.mjs +10 -0
- package/es/components/switch/style/index.js +4 -0
- package/es/components/switch/style.css +128 -0
- package/es/components/table/index.cjs +15 -0
- package/es/components/table/index.d.cts +10 -0
- package/es/components/table/index.d.mts +8 -0
- package/es/components/table/index.d.ts +10 -0
- package/es/components/table/index.mjs +8 -0
- package/es/components/table/style/index.js +4 -0
- package/es/components/table/style.css +52 -0
- package/es/components/tabs/index.cjs +17 -0
- package/es/components/tabs/index.d.cts +12 -0
- package/es/components/tabs/index.d.mts +10 -0
- package/es/components/tabs/index.d.ts +12 -0
- package/es/components/tabs/index.mjs +10 -0
- package/es/components/tabs/style/index.js +4 -0
- package/es/components/tabs/style.css +123 -0
- package/es/components/tag/index.cjs +15 -0
- package/es/components/tag/index.d.cts +12 -0
- package/es/components/tag/index.d.mts +10 -0
- package/es/components/tag/index.d.ts +12 -0
- package/es/components/tag/index.mjs +10 -0
- package/es/components/tag/style/index.js +2 -0
- package/es/components/tag/style.css +160 -0
- package/es/components/theme-toggle/index.cjs +16 -0
- package/es/components/theme-toggle/index.d.cts +13 -0
- package/es/components/theme-toggle/index.d.mts +11 -0
- package/es/components/theme-toggle/index.d.ts +13 -0
- package/es/components/theme-toggle/index.mjs +11 -0
- package/es/components/theme-toggle/style/index.js +4 -0
- package/es/components/theme-toggle/style.css +35 -0
- package/es/components/title-bar/index.cjs +16 -0
- package/es/components/title-bar/index.d.cts +13 -0
- package/es/components/title-bar/index.d.mts +11 -0
- package/es/components/title-bar/index.d.ts +13 -0
- package/es/components/title-bar/index.mjs +11 -0
- package/es/components/title-bar/style/index.js +4 -0
- package/es/components/title-bar/style.css +46 -0
- package/es/components/tooltip/index.cjs +15 -0
- package/es/components/tooltip/index.d.cts +11 -0
- package/es/components/tooltip/index.d.mts +9 -0
- package/es/components/tooltip/index.d.ts +11 -0
- package/es/components/tooltip/index.mjs +9 -0
- package/es/components/tooltip/style/index.js +4 -0
- package/es/components/tooltip/style.css +71 -0
- package/es/components/tree/index.cjs +16 -0
- package/es/components/tree/index.d.cts +12 -0
- package/es/components/tree/index.d.mts +10 -0
- package/es/components/tree/index.d.ts +12 -0
- package/es/components/tree/index.mjs +10 -0
- package/es/components/tree/style/index.js +4 -0
- package/es/components/tree/style.css +62 -0
- package/es/components/window-controls/index.cjs +15 -0
- package/es/components/window-controls/index.d.cts +12 -0
- package/es/components/window-controls/index.d.mts +10 -0
- package/es/components/window-controls/index.d.ts +12 -0
- package/es/components/window-controls/index.mjs +10 -0
- package/es/components/window-controls/style/index.js +4 -0
- package/es/components/window-controls/style.css +35 -0
- package/es/index.cjs +221 -0
- package/es/index.d.cts +47 -0
- package/es/index.d.mts +47 -0
- package/es/index.d.ts +47 -0
- package/es/index.mjs +49 -0
- package/es/package.json +3 -0
- package/es/shared/components.1AjWnZ2u.cjs +557 -0
- package/es/shared/components.1J_ThqaI.d.cts +95 -0
- package/es/shared/components.3dqa2hsp.d.mts +132 -0
- package/es/shared/components.4UjasbrA.d.cts +51 -0
- package/es/shared/components.4UjasbrA.d.mts +51 -0
- package/es/shared/components.4UjasbrA.d.ts +51 -0
- package/es/shared/components.4lt7h-GW.d.ts +86 -0
- package/es/shared/components.54wxKDZE.mjs +156 -0
- package/es/shared/components.6EXCNxk1.cjs +160 -0
- package/es/shared/components.7VJcWbB3.mjs +61 -0
- package/es/shared/components.7wOMpfjy.d.mts +166 -0
- package/es/shared/components.B-epy07L.d.mts +586 -0
- package/es/shared/components.B0eSL1OS.d.cts +73 -0
- package/es/shared/components.B1zwpYHQ.d.cts +439 -0
- package/es/shared/components.B2Ry54jj.d.ts +272 -0
- package/es/shared/components.B4MHkqZP.d.ts +329 -0
- package/es/shared/components.B4xRhtj-.mjs +60 -0
- package/es/shared/components.B5WOm7ey.mjs +126 -0
- package/es/shared/components.B7BmMQPX.d.mts +97 -0
- package/es/shared/components.B7T7B9Ys.d.mts +73 -0
- package/es/shared/components.B8lNpbQ9.cjs +134 -0
- package/es/shared/components.BChm7h4j.d.ts +75 -0
- package/es/shared/components.BDSFrwdm.d.cts +166 -0
- package/es/shared/components.BEYwGpEo.d.ts +586 -0
- package/es/shared/components.BF2nXG8Y.cjs +64 -0
- package/es/shared/components.BG88vlnG.d.ts +159 -0
- package/es/shared/components.BGcESMXM.d.cts +192 -0
- package/es/shared/components.BGw_jYqb.d.cts +67 -0
- package/es/shared/components.BHiG-Upg.d.mts +359 -0
- package/es/shared/components.BIm7FYRN.d.ts +99 -0
- package/es/shared/components.BJSrGDgZ.d.mts +328 -0
- package/es/shared/components.BJz4u6YX.d.ts +359 -0
- package/es/shared/components.BL34tX_n.mjs +338 -0
- package/es/shared/components.BMUce5Uz.cjs +226 -0
- package/es/shared/components.BNXBaiBD.d.mts +269 -0
- package/es/shared/components.BPdCwk8C.d.ts +272 -0
- package/es/shared/components.BPsETG85.mjs +287 -0
- package/es/shared/components.BQFq0PXl.d.ts +298 -0
- package/es/shared/components.BR0HfmAS.d.mts +97 -0
- package/es/shared/components.BRHYPvpL.mjs +76 -0
- package/es/shared/components.BRK5jSxk.d.mts +192 -0
- package/es/shared/components.BUx4k59U.cjs +332 -0
- package/es/shared/components.BW1vukk6.mjs +135 -0
- package/es/shared/components.BWaRX3BY.d.ts +70 -0
- package/es/shared/components.BWrJKYmt.d.ts +338 -0
- package/es/shared/components.BZZxSpn4.d.mts +338 -0
- package/es/shared/components.BZeq4M6i.cjs +83 -0
- package/es/shared/components.B_aXqCE8.d.cts +34 -0
- package/es/shared/components.B_aXqCE8.d.mts +34 -0
- package/es/shared/components.B_aXqCE8.d.ts +34 -0
- package/es/shared/components.BaUizHWz.mjs +270 -0
- package/es/shared/components.Bar0M_1T.d.ts +132 -0
- package/es/shared/components.BcnhVfkA.d.cts +208 -0
- package/es/shared/components.Be0We_QJ.mjs +79 -0
- package/es/shared/components.BhK__sZJ.d.ts +67 -0
- package/es/shared/components.Bjw8eqP-.d.mts +327 -0
- package/es/shared/components.BkakIO1C.cjs +70 -0
- package/es/shared/components.BldJxPSz.cjs +80 -0
- package/es/shared/components.Bm5Cu9W3.mjs +358 -0
- package/es/shared/components.BmII0Zi4.d.cts +109 -0
- package/es/shared/components.Bn206h5z.d.cts +329 -0
- package/es/shared/components.Bo3WVnTy.d.ts +223 -0
- package/es/shared/components.BrbmPZbT.mjs +297 -0
- package/es/shared/components.BwmjBLGS.d.mts +126 -0
- package/es/shared/components.BxBfOAnD.d.cts +359 -0
- package/es/shared/components.BxOtwzkp.cjs +349 -0
- package/es/shared/components.By4TdR07.d.ts +327 -0
- package/es/shared/components.BzO68qwA.d.mts +95 -0
- package/es/shared/components.BzcvYRS3.d.mts +109 -0
- package/es/shared/components.BzhHVs0e.d.cts +338 -0
- package/es/shared/components.C183F57T.mjs +128 -0
- package/es/shared/components.C1PQgace.mjs +96 -0
- package/es/shared/components.C2qFTFYw.cjs +322 -0
- package/es/shared/components.C6sLxXPo.d.ts +96 -0
- package/es/shared/components.C8Nxn3Ut.d.mts +272 -0
- package/es/shared/components.C9TEQ_29.cjs +385 -0
- package/es/shared/components.C9WJVmII.mjs +71 -0
- package/es/shared/components.CAVYcOKF.cjs +132 -0
- package/es/shared/components.CBELcqkf.cjs +182 -0
- package/es/shared/components.CDS8XKPo.d.ts +257 -0
- package/es/shared/components.CDifg15S.cjs +292 -0
- package/es/shared/components.CF8Mj5bD.cjs +370 -0
- package/es/shared/components.CF_GZPuV.cjs +64 -0
- package/es/shared/components.CFfTemQ4.cjs +74 -0
- package/es/shared/components.CIjY6ZtZ.d.ts +499 -0
- package/es/shared/components.CJqqdhuY.d.cts +86 -0
- package/es/shared/components.CKbZKaMO.mjs +221 -0
- package/es/shared/components.CLBPin--.cjs +306 -0
- package/es/shared/components.CMtYH41Z.mjs +326 -0
- package/es/shared/components.CPjbxzIv.mjs +381 -0
- package/es/shared/components.CRZMSxSQ.mjs +77 -0
- package/es/shared/components.CRtd1JMp.cjs +86 -0
- package/es/shared/components.CTP-w8Dp.d.mts +85 -0
- package/es/shared/components.CUxPJ0rN.cjs +177 -0
- package/es/shared/components.CYrhfnMH.d.mts +439 -0
- package/es/shared/components.CZspoBJZ.mjs +314 -0
- package/es/shared/components.CaILt5c4.d.mts +288 -0
- package/es/shared/components.CerI7DmE.d.ts +192 -0
- package/es/shared/components.Cg0qdMDr.d.mts +272 -0
- package/es/shared/components.CgZUcq5d.d.mts +70 -0
- package/es/shared/components.ChFQqcD8.d.cts +99 -0
- package/es/shared/components.ChHlRGOd.d.mts +257 -0
- package/es/shared/components.ChaKATXZ.d.cts +132 -0
- package/es/shared/components.CjJ96MaL.d.cts +586 -0
- package/es/shared/components.CkYdyZh6.d.ts +97 -0
- package/es/shared/components.Cl7hvWLa.d.ts +208 -0
- package/es/shared/components.ClxGCZuy.cjs +67 -0
- package/es/shared/components.CmUTe-Bu.d.cts +314 -0
- package/es/shared/components.Cp1Zsk-X.mjs +231 -0
- package/es/shared/components.CpHuJl8N.cjs +109 -0
- package/es/shared/components.CqRoc5Cb.d.mts +298 -0
- package/es/shared/components.Ct1bqR7L.d.cts +82 -0
- package/es/shared/components.CtUfYC-G.cjs +256 -0
- package/es/shared/components.CtZrM_rh.mjs +58 -0
- package/es/shared/components.CwRwwkrw.mjs +397 -0
- package/es/shared/components.CxFKLC0I.mjs +68 -0
- package/es/shared/components.CxIEbUM8.d.cts +319 -0
- package/es/shared/components.CxuO1-ev.d.cts +272 -0
- package/es/shared/components.CyCDH-Vb.mjs +281 -0
- package/es/shared/components.D02eI26A.d.cts +257 -0
- package/es/shared/components.D0MDcB1D.cjs +276 -0
- package/es/shared/components.D2M7cpo2.d.cts +126 -0
- package/es/shared/components.D3HPYZ31.d.mts +223 -0
- package/es/shared/components.D3on6_fI.mjs +83 -0
- package/es/shared/components.D48GdgdJ.d.mts +208 -0
- package/es/shared/components.D4C1x9UP.cjs +318 -0
- package/es/shared/components.D4HPwnpE.mjs +363 -0
- package/es/shared/components.D4Yu07Ov.mjs +251 -0
- package/es/shared/components.D5-DJd7f.d.cts +328 -0
- package/es/shared/components.D7KK6ZxT.d.mts +67 -0
- package/es/shared/components.D8Ht88FR.mjs +100 -0
- package/es/shared/components.DB4_ULYr.cjs +405 -0
- package/es/shared/components.DCH8muDL.d.cts +75 -0
- package/es/shared/components.DCuPins-.d.mts +96 -0
- package/es/shared/components.DD-6M8N-.d.ts +314 -0
- package/es/shared/components.DDslVxoU.d.mts +86 -0
- package/es/shared/components.DEs15eJe.cjs +687 -0
- package/es/shared/components.DEwy484E.mjs +67 -0
- package/es/shared/components.DFar9ZQj.cjs +285 -0
- package/es/shared/components.DG3K9DCE.d.ts +439 -0
- package/es/shared/components.DG96RpCG.d.cts +288 -0
- package/es/shared/components.DHIKrYhN.d.ts +95 -0
- package/es/shared/components.DHeLTopf.d.mts +143 -0
- package/es/shared/components.DJ0m5kYN.mjs +548 -0
- package/es/shared/components.DJlTQabT.cjs +103 -0
- package/es/shared/components.DKtogC94.mjs +212 -0
- package/es/shared/components.DLVoUYPv.d.ts +328 -0
- package/es/shared/components.DLjhu3mO.cjs +53 -0
- package/es/shared/components.DNZ8j6Sz.d.cts +269 -0
- package/es/shared/components.DOWndnHb.d.ts +82 -0
- package/es/shared/components.DPGfB1k8.d.cts +223 -0
- package/es/shared/components.DScCDEoT.d.cts +97 -0
- package/es/shared/components.DUidQ77e.cjs +11 -0
- package/es/shared/components.Danqf6j7.d.cts +272 -0
- package/es/shared/components.DclwYyRy.mjs +50 -0
- package/es/shared/components.DdczIXhc.d.mts +82 -0
- package/es/shared/components.De49eXQJ.d.cts +97 -0
- package/es/shared/components.Dfe4D-8g.d.mts +99 -0
- package/es/shared/components.DiS0nfa_.d.mts +314 -0
- package/es/shared/components.DlTJ-jbM.cjs +235 -0
- package/es/shared/components.DnCclrOD.d.cts +70 -0
- package/es/shared/components.DnW9eqJM.cjs +79 -0
- package/es/shared/components.DoInWOkI.d.cts +85 -0
- package/es/shared/components.DpN4r8M6.d.ts +85 -0
- package/es/shared/components.DqdBSuxX.mjs +175 -0
- package/es/shared/components.DtZ1M9RX.d.mts +159 -0
- package/es/shared/components.DuT8IQV_.cjs +71 -0
- package/es/shared/components.Dy6mSGFp.d.ts +97 -0
- package/es/shared/components.Dy9SYm12.d.ts +73 -0
- package/es/shared/components.Dz2FXew2.cjs +371 -0
- package/es/shared/components.FNPonG8w.d.ts +269 -0
- package/es/shared/components.FkGOusVh.d.cts +143 -0
- package/es/shared/components.Mnb2AHkq.d.cts +298 -0
- package/es/shared/components.NdJ3_JnU.d.cts +499 -0
- package/es/shared/components.OJRSZE6i.d.cts +9 -0
- package/es/shared/components.OJRSZE6i.d.mts +9 -0
- package/es/shared/components.OJRSZE6i.d.ts +9 -0
- package/es/shared/components.P8ob4csG.d.mts +499 -0
- package/es/shared/components.PG8w8Qmv.mjs +64 -0
- package/es/shared/components.SHnZTfnN.d.ts +143 -0
- package/es/shared/components.VbnCY-yZ.cjs +58 -0
- package/es/shared/components.Xb8fQVYs.d.ts +109 -0
- package/es/shared/components.aCfs5Zx4.mjs +106 -0
- package/es/shared/components.aEHtkYll.mjs +176 -0
- package/es/shared/components.b0j47s07.d.ts +288 -0
- package/es/shared/components.b5GjJzDh.d.cts +96 -0
- package/es/shared/components.dIJZSGar.d.mts +329 -0
- package/es/shared/components.dk3Zmpq5.cjs +61 -0
- package/es/shared/components.e6NGwmyk.mjs +680 -0
- package/es/shared/components.l2LF8U7V.mjs +55 -0
- package/es/shared/components.ls2ruUoQ.cjs +140 -0
- package/es/shared/components.pAb-8zT2.mjs +316 -0
- package/es/shared/components.pcqpp-6-.mjs +9 -0
- package/es/shared/components.qRljarsw.d.cts +159 -0
- package/es/shared/components.r5I_hKLX.cjs +222 -0
- package/es/shared/components.rFCN7LCl.d.mts +75 -0
- package/es/shared/components.tMYsd3jV.d.ts +126 -0
- package/es/shared/components.tM_tp13v.d.mts +319 -0
- package/es/shared/components.uyAvjCWL.d.cts +327 -0
- package/es/shared/components.v_RwCQEf.d.ts +166 -0
- package/es/shared/components.w4bSE8TV.cjs +99 -0
- package/es/shared/components.x9BKOa3W.d.ts +319 -0
- package/package.json +72 -0
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
2
|
+
.qm-date-picker {
|
|
3
|
+
position: relative;
|
|
4
|
+
box-sizing: border-box;
|
|
5
|
+
display: inline-block;
|
|
6
|
+
width: 240px;
|
|
7
|
+
}
|
|
8
|
+
.qm-date-picker__trigger {
|
|
9
|
+
position: relative;
|
|
10
|
+
box-sizing: border-box;
|
|
11
|
+
display: flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
height: var(--qm-date-picker-height);
|
|
14
|
+
padding: var(--qm-date-picker-padding);
|
|
15
|
+
color: var(--qm-date-picker-foreground);
|
|
16
|
+
cursor: pointer;
|
|
17
|
+
background-color: var(--qm-date-picker-bg);
|
|
18
|
+
border: 1px solid var(--qm-date-picker-border);
|
|
19
|
+
border-radius: var(--qm-date-picker-border-radius);
|
|
20
|
+
transition: border-color var(--qm-date-picker-transition) ease, box-shadow var(--qm-date-picker-transition) ease;
|
|
21
|
+
}
|
|
22
|
+
.qm-date-picker__trigger:hover:not(.qm-date-picker--disabled) {
|
|
23
|
+
border-color: var(--qm-date-picker-focus-border);
|
|
24
|
+
}
|
|
25
|
+
.qm-date-picker__trigger:focus-within {
|
|
26
|
+
border-color: var(--qm-date-picker-focus-border);
|
|
27
|
+
box-shadow: var(--qm-date-picker-focus-ring);
|
|
28
|
+
}
|
|
29
|
+
.qm-date-picker__trigger--open {
|
|
30
|
+
border-color: var(--qm-date-picker-focus-border);
|
|
31
|
+
box-shadow: var(--qm-date-picker-focus-ring);
|
|
32
|
+
}
|
|
33
|
+
.qm-date-picker__input {
|
|
34
|
+
flex: 1;
|
|
35
|
+
min-width: 0;
|
|
36
|
+
height: 100%;
|
|
37
|
+
padding: 0;
|
|
38
|
+
font-size: var(--qm-date-picker-cell-font-size);
|
|
39
|
+
color: var(--qm-date-picker-foreground);
|
|
40
|
+
cursor: pointer;
|
|
41
|
+
outline: none;
|
|
42
|
+
background: transparent;
|
|
43
|
+
border: none;
|
|
44
|
+
}
|
|
45
|
+
.qm-date-picker__input::placeholder {
|
|
46
|
+
color: var(--qm-date-picker-placeholder);
|
|
47
|
+
}
|
|
48
|
+
.qm-date-picker__input:disabled {
|
|
49
|
+
cursor: not-allowed;
|
|
50
|
+
}
|
|
51
|
+
.qm-date-picker__clear {
|
|
52
|
+
display: inline-flex;
|
|
53
|
+
align-items: center;
|
|
54
|
+
justify-content: center;
|
|
55
|
+
padding: 0;
|
|
56
|
+
color: var(--qm-date-picker-placeholder);
|
|
57
|
+
cursor: pointer;
|
|
58
|
+
background: transparent;
|
|
59
|
+
border: none;
|
|
60
|
+
border-radius: var(--qm-date-picker-border-radius);
|
|
61
|
+
/* 统一走 QmIcon:颜色随按钮,保持原 2.5 线宽 */
|
|
62
|
+
}
|
|
63
|
+
.qm-date-picker__clear .qm-icon {
|
|
64
|
+
color: inherit;
|
|
65
|
+
--qm-icon-stroke-width: 2.5;
|
|
66
|
+
}
|
|
67
|
+
.qm-date-picker__clear:hover {
|
|
68
|
+
color: var(--qm-date-picker-foreground);
|
|
69
|
+
}
|
|
70
|
+
.qm-date-picker__icon {
|
|
71
|
+
display: inline-flex;
|
|
72
|
+
align-items: center;
|
|
73
|
+
justify-content: center;
|
|
74
|
+
margin-left: 4px;
|
|
75
|
+
color: var(--qm-date-picker-placeholder);
|
|
76
|
+
pointer-events: none;
|
|
77
|
+
}
|
|
78
|
+
.qm-date-picker__icon .qm-icon {
|
|
79
|
+
color: inherit;
|
|
80
|
+
}
|
|
81
|
+
.qm-date-picker__panel {
|
|
82
|
+
z-index: var(--qm-date-picker-panel-z-index);
|
|
83
|
+
box-sizing: border-box;
|
|
84
|
+
width: 280px;
|
|
85
|
+
padding: 8px;
|
|
86
|
+
color: var(--qm-date-picker-foreground);
|
|
87
|
+
background-color: var(--qm-date-picker-panel-bg);
|
|
88
|
+
border: 1px solid var(--qm-date-picker-panel-border);
|
|
89
|
+
border-radius: var(--qm-date-picker-panel-border-radius);
|
|
90
|
+
box-shadow: var(--qm-date-picker-panel-shadow);
|
|
91
|
+
}
|
|
92
|
+
.qm-date-picker__header {
|
|
93
|
+
display: flex;
|
|
94
|
+
align-items: center;
|
|
95
|
+
justify-content: space-between;
|
|
96
|
+
padding: var(--qm-date-picker-header-padding);
|
|
97
|
+
}
|
|
98
|
+
.qm-date-picker__title {
|
|
99
|
+
font-size: var(--qm-date-picker-header-font-size);
|
|
100
|
+
font-weight: var(--qm-date-picker-header-font-weight);
|
|
101
|
+
color: var(--qm-date-picker-foreground);
|
|
102
|
+
}
|
|
103
|
+
.qm-date-picker__nav {
|
|
104
|
+
display: inline-flex;
|
|
105
|
+
align-items: center;
|
|
106
|
+
justify-content: center;
|
|
107
|
+
width: 24px;
|
|
108
|
+
height: 24px;
|
|
109
|
+
padding: 0;
|
|
110
|
+
color: var(--qm-date-picker-foreground);
|
|
111
|
+
cursor: pointer;
|
|
112
|
+
background: transparent;
|
|
113
|
+
border: none;
|
|
114
|
+
border-radius: var(--qm-date-picker-border-radius);
|
|
115
|
+
transition: background-color var(--qm-date-picker-transition) ease;
|
|
116
|
+
/* 统一走 QmIcon:颜色随按钮 */
|
|
117
|
+
}
|
|
118
|
+
.qm-date-picker__nav .qm-icon {
|
|
119
|
+
color: inherit;
|
|
120
|
+
}
|
|
121
|
+
.qm-date-picker__nav:hover {
|
|
122
|
+
background-color: var(--qm-date-picker-cell-hover-bg);
|
|
123
|
+
}
|
|
124
|
+
.qm-date-picker__nav:focus-visible {
|
|
125
|
+
outline: none;
|
|
126
|
+
box-shadow: var(--qm-date-picker-focus-ring);
|
|
127
|
+
}
|
|
128
|
+
.qm-date-picker__weekdays {
|
|
129
|
+
display: grid;
|
|
130
|
+
grid-template-columns: repeat(7, 1fr);
|
|
131
|
+
padding-bottom: 4px;
|
|
132
|
+
}
|
|
133
|
+
.qm-date-picker__weekday {
|
|
134
|
+
display: flex;
|
|
135
|
+
align-items: center;
|
|
136
|
+
justify-content: center;
|
|
137
|
+
height: var(--qm-date-picker-cell-size);
|
|
138
|
+
font-size: var(--qm-date-picker-cell-font-size);
|
|
139
|
+
color: var(--qm-date-picker-placeholder);
|
|
140
|
+
}
|
|
141
|
+
.qm-date-picker__row {
|
|
142
|
+
display: grid;
|
|
143
|
+
grid-template-columns: repeat(7, 1fr);
|
|
144
|
+
}
|
|
145
|
+
.qm-date-picker__cell {
|
|
146
|
+
box-sizing: border-box;
|
|
147
|
+
display: flex;
|
|
148
|
+
align-items: center;
|
|
149
|
+
justify-content: center;
|
|
150
|
+
width: var(--qm-date-picker-cell-size);
|
|
151
|
+
height: var(--qm-date-picker-cell-size);
|
|
152
|
+
padding: 0;
|
|
153
|
+
margin: 0 auto;
|
|
154
|
+
font-size: var(--qm-date-picker-cell-font-size);
|
|
155
|
+
color: var(--qm-date-picker-foreground);
|
|
156
|
+
cursor: pointer;
|
|
157
|
+
background: transparent;
|
|
158
|
+
border: none;
|
|
159
|
+
border-radius: var(--qm-date-picker-border-radius);
|
|
160
|
+
transition: background-color var(--qm-date-picker-transition) ease, color var(--qm-date-picker-transition) ease;
|
|
161
|
+
}
|
|
162
|
+
.qm-date-picker__cell:hover:not(:disabled) {
|
|
163
|
+
background-color: var(--qm-date-picker-cell-hover-bg);
|
|
164
|
+
}
|
|
165
|
+
.qm-date-picker__cell:focus-visible {
|
|
166
|
+
outline: none;
|
|
167
|
+
box-shadow: var(--qm-date-picker-focus-ring);
|
|
168
|
+
}
|
|
169
|
+
.qm-date-picker__cell--other {
|
|
170
|
+
color: var(--qm-date-picker-cell-other-color);
|
|
171
|
+
}
|
|
172
|
+
.qm-date-picker__cell--today {
|
|
173
|
+
font-weight: var(--qm-date-picker-header-font-weight);
|
|
174
|
+
color: var(--qm-date-picker-cell-active-bg);
|
|
175
|
+
}
|
|
176
|
+
.qm-date-picker__cell--highlight {
|
|
177
|
+
box-shadow: inset 0 0 0 2px var(--qm-date-picker-focus-border);
|
|
178
|
+
}
|
|
179
|
+
.qm-date-picker__cell--selected {
|
|
180
|
+
color: var(--qm-date-picker-cell-active-color);
|
|
181
|
+
background-color: var(--qm-date-picker-cell-active-bg);
|
|
182
|
+
}
|
|
183
|
+
.qm-date-picker__cell--disabled {
|
|
184
|
+
color: var(--qm-date-picker-disabled-color);
|
|
185
|
+
cursor: not-allowed;
|
|
186
|
+
background-color: var(--qm-date-picker-disabled-bg);
|
|
187
|
+
}
|
|
188
|
+
.qm-date-picker__footer {
|
|
189
|
+
display: flex;
|
|
190
|
+
justify-content: flex-end;
|
|
191
|
+
padding-top: 4px;
|
|
192
|
+
margin-top: 4px;
|
|
193
|
+
border-top: 1px solid var(--qm-date-picker-panel-border);
|
|
194
|
+
}
|
|
195
|
+
.qm-date-picker__today {
|
|
196
|
+
padding: 4px 8px;
|
|
197
|
+
font-size: var(--qm-date-picker-cell-font-size);
|
|
198
|
+
color: var(--qm-date-picker-cell-active-bg);
|
|
199
|
+
cursor: pointer;
|
|
200
|
+
background: transparent;
|
|
201
|
+
border: none;
|
|
202
|
+
border-radius: var(--qm-date-picker-border-radius);
|
|
203
|
+
transition: background-color var(--qm-date-picker-transition) ease;
|
|
204
|
+
}
|
|
205
|
+
.qm-date-picker__today:hover:not(:disabled) {
|
|
206
|
+
background-color: var(--qm-date-picker-cell-hover-bg);
|
|
207
|
+
}
|
|
208
|
+
.qm-date-picker__today:disabled {
|
|
209
|
+
color: var(--qm-date-picker-disabled-color);
|
|
210
|
+
cursor: not-allowed;
|
|
211
|
+
}
|
|
212
|
+
.qm-date-picker--disabled .qm-date-picker__trigger {
|
|
213
|
+
cursor: not-allowed;
|
|
214
|
+
background-color: var(--qm-date-picker-disabled-bg);
|
|
215
|
+
border-color: var(--qm-date-picker-border);
|
|
216
|
+
box-shadow: none;
|
|
217
|
+
}
|
|
218
|
+
.qm-date-picker--disabled .qm-date-picker__input,
|
|
219
|
+
.qm-date-picker--disabled .qm-date-picker__icon {
|
|
220
|
+
color: var(--qm-date-picker-disabled-color);
|
|
221
|
+
}
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const vue = require('vue');
|
|
6
|
+
const icon = require('../../shared/components.CRtd1JMp.cjs');
|
|
7
|
+
const useDialog = require('../../shared/components.CAVYcOKF.cjs');
|
|
8
|
+
const exportHelper = require('../../shared/components.DUidQ77e.cjs');
|
|
9
|
+
require('@qingmingmu/icons');
|
|
10
|
+
|
|
11
|
+
const dialogProps = {
|
|
12
|
+
/** 受控 v-model:是否显示 */
|
|
13
|
+
modelValue: { type: Boolean, default: false },
|
|
14
|
+
/** 标题(也可用 header 插槽) */
|
|
15
|
+
title: { type: String, default: "" },
|
|
16
|
+
/** 尺寸:small / medium / large */
|
|
17
|
+
size: { type: String, default: "medium" },
|
|
18
|
+
/** 自定义宽度(覆盖 size),如 '500px' / '80%' */
|
|
19
|
+
width: { type: String, default: "" },
|
|
20
|
+
/** 点击遮罩是否关闭 */
|
|
21
|
+
closeOnClickOverlay: { type: Boolean, default: true },
|
|
22
|
+
/** 按 Esc 是否关闭 */
|
|
23
|
+
closeOnEsc: { type: Boolean, default: true },
|
|
24
|
+
/** Teleport 目标,默认 body */
|
|
25
|
+
appendTo: { type: String, default: "body" },
|
|
26
|
+
/** 是否显示关闭按钮 */
|
|
27
|
+
showClose: { type: Boolean, default: true },
|
|
28
|
+
/** 关闭时销毁子元素(v-if 控制) */
|
|
29
|
+
destroyOnClose: { type: Boolean, default: false },
|
|
30
|
+
/** 是否显示遮罩 */
|
|
31
|
+
modal: { type: Boolean, default: true }
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
35
|
+
...{ name: "QmDialog" },
|
|
36
|
+
__name: "dialog",
|
|
37
|
+
props: dialogProps,
|
|
38
|
+
emits: ["update:modelValue", "open", "close"],
|
|
39
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
40
|
+
__expose();
|
|
41
|
+
const props = __props;
|
|
42
|
+
const emit = __emit;
|
|
43
|
+
const uid = vue.useId();
|
|
44
|
+
const titleId = `qm-dialog-title-${uid}`;
|
|
45
|
+
const mounted = vue.ref(false);
|
|
46
|
+
const panelRef = vue.ref(null);
|
|
47
|
+
let mouseDownInside = false;
|
|
48
|
+
const visible = vue.computed(() => props.modelValue);
|
|
49
|
+
const widthStyle = vue.computed(() => props.width ? { width: props.width } : void 0);
|
|
50
|
+
const { close, handleKeydown, trap, dispose } = useDialog.useDialog({
|
|
51
|
+
modelValue: visible,
|
|
52
|
+
closeOnEsc: vue.computed(() => props.closeOnEsc),
|
|
53
|
+
panelRef,
|
|
54
|
+
emitClose: (reason) => {
|
|
55
|
+
emit("update:modelValue", false);
|
|
56
|
+
emit("close", reason);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
function handleAfterLeave() {
|
|
60
|
+
unlock();
|
|
61
|
+
}
|
|
62
|
+
let finalized = false;
|
|
63
|
+
function unlock() {
|
|
64
|
+
if (finalized)
|
|
65
|
+
return;
|
|
66
|
+
finalized = true;
|
|
67
|
+
dispose();
|
|
68
|
+
trap.restore();
|
|
69
|
+
}
|
|
70
|
+
function handleOverlayMouseDown(event) {
|
|
71
|
+
mouseDownInside = panelRef.value?.contains(event.target) ?? false;
|
|
72
|
+
}
|
|
73
|
+
function handleOverlayClick(event) {
|
|
74
|
+
if (mouseDownInside)
|
|
75
|
+
return;
|
|
76
|
+
if (props.closeOnClickOverlay && event.target === event.currentTarget)
|
|
77
|
+
close("overlay");
|
|
78
|
+
}
|
|
79
|
+
function handleOpen() {
|
|
80
|
+
emit("open");
|
|
81
|
+
}
|
|
82
|
+
vue.onMounted(() => {
|
|
83
|
+
mounted.value = true;
|
|
84
|
+
if (visible.value) {
|
|
85
|
+
useDialog.lockBodyScroll();
|
|
86
|
+
trap.record();
|
|
87
|
+
vue.nextTick(() => trap.focusFirst());
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
vue.onBeforeUnmount(() => {
|
|
91
|
+
unlock();
|
|
92
|
+
});
|
|
93
|
+
vue.watch(
|
|
94
|
+
visible,
|
|
95
|
+
(val) => {
|
|
96
|
+
if (val) {
|
|
97
|
+
finalized = false;
|
|
98
|
+
handleOpen();
|
|
99
|
+
} else {
|
|
100
|
+
unlock();
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
{ immediate: true }
|
|
104
|
+
);
|
|
105
|
+
const __returned__ = { props, emit, uid, titleId, mounted, panelRef, get mouseDownInside() {
|
|
106
|
+
return mouseDownInside;
|
|
107
|
+
}, set mouseDownInside(v) {
|
|
108
|
+
mouseDownInside = v;
|
|
109
|
+
}, visible, widthStyle, close, handleKeydown, trap, dispose, handleAfterLeave, get finalized() {
|
|
110
|
+
return finalized;
|
|
111
|
+
}, set finalized(v) {
|
|
112
|
+
finalized = v;
|
|
113
|
+
}, unlock, handleOverlayMouseDown, handleOverlayClick, handleOpen, get QmIcon() {
|
|
114
|
+
return icon.Icon;
|
|
115
|
+
} };
|
|
116
|
+
Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
|
|
117
|
+
return __returned__;
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
const _hoisted_1 = ["aria-labelledby", "aria-label"];
|
|
122
|
+
const _hoisted_2 = { class: "qm-dialog__header" };
|
|
123
|
+
const _hoisted_3 = { class: "qm-dialog__body" };
|
|
124
|
+
const _hoisted_4 = {
|
|
125
|
+
key: 0,
|
|
126
|
+
class: "qm-dialog__footer"
|
|
127
|
+
};
|
|
128
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
129
|
+
return vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
130
|
+
to: _ctx.appendTo,
|
|
131
|
+
disabled: !$setup.mounted
|
|
132
|
+
}, [vue.createVNode(vue.Transition, {
|
|
133
|
+
name: "qm-dialog",
|
|
134
|
+
onAfterLeave: $setup.handleAfterLeave
|
|
135
|
+
}, {
|
|
136
|
+
default: vue.withCtx(() => [$setup.visible ? (vue.openBlock(), vue.createElementBlock(
|
|
137
|
+
"div",
|
|
138
|
+
{
|
|
139
|
+
key: 0,
|
|
140
|
+
class: vue.normalizeClass(["qm-dialog-overlay", { "qm-dialog-overlay--transparent": !_ctx.modal }]),
|
|
141
|
+
onMousedown: $setup.handleOverlayMouseDown,
|
|
142
|
+
onClick: $setup.handleOverlayClick,
|
|
143
|
+
onKeydown: _cache[1] || (_cache[1] = (...args) => $setup.handleKeydown && $setup.handleKeydown(...args))
|
|
144
|
+
},
|
|
145
|
+
[vue.createElementVNode("div", {
|
|
146
|
+
ref: "panelRef",
|
|
147
|
+
class: vue.normalizeClass(["qm-dialog", [`qm-dialog--${_ctx.size}`]]),
|
|
148
|
+
style: vue.normalizeStyle($setup.widthStyle),
|
|
149
|
+
role: "dialog",
|
|
150
|
+
"aria-modal": "true",
|
|
151
|
+
"aria-labelledby": _ctx.title ? $setup.titleId : undefined,
|
|
152
|
+
"aria-label": _ctx.title ? undefined : "对话框",
|
|
153
|
+
tabindex: "-1"
|
|
154
|
+
}, [
|
|
155
|
+
vue.createElementVNode("header", _hoisted_2, [vue.renderSlot(_ctx.$slots, "header", { title: _ctx.title }, () => [_ctx.title ? (vue.openBlock(), vue.createElementBlock(
|
|
156
|
+
"h2",
|
|
157
|
+
{
|
|
158
|
+
key: 0,
|
|
159
|
+
id: $setup.titleId,
|
|
160
|
+
class: "qm-dialog__title"
|
|
161
|
+
},
|
|
162
|
+
vue.toDisplayString(_ctx.title),
|
|
163
|
+
1
|
|
164
|
+
/* TEXT */
|
|
165
|
+
)) : vue.createCommentVNode("v-if", true)]), _ctx.showClose ? (vue.openBlock(), vue.createElementBlock("button", {
|
|
166
|
+
key: 0,
|
|
167
|
+
type: "button",
|
|
168
|
+
class: "qm-dialog__close",
|
|
169
|
+
"aria-label": "关闭",
|
|
170
|
+
onClick: _cache[0] || (_cache[0] = ($event) => $setup.close("close-btn"))
|
|
171
|
+
}, [vue.createVNode($setup["QmIcon"], {
|
|
172
|
+
name: "close",
|
|
173
|
+
class: "qm-dialog__close-icon",
|
|
174
|
+
style: { "font-size": "14px" }
|
|
175
|
+
})])) : vue.createCommentVNode("v-if", true)]),
|
|
176
|
+
vue.createElementVNode("div", _hoisted_3, [vue.renderSlot(_ctx.$slots, "default")]),
|
|
177
|
+
_ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("footer", _hoisted_4, [vue.renderSlot(_ctx.$slots, "footer", { close: $setup.close })])) : vue.createCommentVNode("v-if", true)
|
|
178
|
+
], 14, _hoisted_1)],
|
|
179
|
+
34
|
|
180
|
+
/* CLASS, NEED_HYDRATION */
|
|
181
|
+
)) : vue.createCommentVNode("v-if", true)]),
|
|
182
|
+
_: 3
|
|
183
|
+
})], 8, ["to", "disabled"]);
|
|
184
|
+
}
|
|
185
|
+
const Dialog = /*#__PURE__*/ exportHelper._export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "F:\\软件开发\\青冥组件系统\\packages\\components\\src\\components\\dialog\\dialog.vue"]]);
|
|
186
|
+
|
|
187
|
+
function openDialog(options = {}) {
|
|
188
|
+
const {
|
|
189
|
+
title = "",
|
|
190
|
+
content = "",
|
|
191
|
+
size = "medium",
|
|
192
|
+
width = "",
|
|
193
|
+
okText = "\u786E\u5B9A",
|
|
194
|
+
cancelText = "\u53D6\u6D88",
|
|
195
|
+
showCancel = true,
|
|
196
|
+
closeOnClickOverlay = true,
|
|
197
|
+
closeOnEsc = true
|
|
198
|
+
} = options;
|
|
199
|
+
return new Promise((resolve) => {
|
|
200
|
+
const container = document.createElement("div");
|
|
201
|
+
document.body.appendChild(container);
|
|
202
|
+
const state = vue.reactive({ modelValue: true });
|
|
203
|
+
let settled = false;
|
|
204
|
+
const settle = (reason) => {
|
|
205
|
+
if (settled)
|
|
206
|
+
return;
|
|
207
|
+
settled = true;
|
|
208
|
+
state.modelValue = false;
|
|
209
|
+
resolve(reason);
|
|
210
|
+
};
|
|
211
|
+
const app = vue.createApp({
|
|
212
|
+
render() {
|
|
213
|
+
return vue.h(
|
|
214
|
+
Dialog,
|
|
215
|
+
{
|
|
216
|
+
"modelValue": state.modelValue,
|
|
217
|
+
title,
|
|
218
|
+
size,
|
|
219
|
+
width,
|
|
220
|
+
closeOnClickOverlay,
|
|
221
|
+
closeOnEsc,
|
|
222
|
+
"onUpdate:modelValue": (v) => {
|
|
223
|
+
state.modelValue = v;
|
|
224
|
+
},
|
|
225
|
+
"onClose": (reason) => {
|
|
226
|
+
settle(reason);
|
|
227
|
+
}
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
default: () => vue.h("p", null, content),
|
|
231
|
+
footer: () => [
|
|
232
|
+
showCancel ? vue.h(
|
|
233
|
+
"button",
|
|
234
|
+
{
|
|
235
|
+
class: "qm-dialog__imperative-btn",
|
|
236
|
+
onClick: () => settle("cancel")
|
|
237
|
+
},
|
|
238
|
+
cancelText
|
|
239
|
+
) : null,
|
|
240
|
+
vue.h(
|
|
241
|
+
"button",
|
|
242
|
+
{
|
|
243
|
+
class: "qm-dialog__imperative-btn qm-dialog__imperative-btn--primary",
|
|
244
|
+
onClick: () => settle("ok")
|
|
245
|
+
},
|
|
246
|
+
okText
|
|
247
|
+
)
|
|
248
|
+
]
|
|
249
|
+
}
|
|
250
|
+
);
|
|
251
|
+
}
|
|
252
|
+
});
|
|
253
|
+
app.mount(container);
|
|
254
|
+
const stop = vue.watch(
|
|
255
|
+
() => state.modelValue,
|
|
256
|
+
async (visible) => {
|
|
257
|
+
if (visible)
|
|
258
|
+
return;
|
|
259
|
+
stop();
|
|
260
|
+
await vue.nextTick();
|
|
261
|
+
setTimeout(() => {
|
|
262
|
+
app.unmount();
|
|
263
|
+
container.remove();
|
|
264
|
+
}, 300);
|
|
265
|
+
}
|
|
266
|
+
);
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
const QmDialogNamespace = Object.assign(Dialog, { open: openDialog });
|
|
271
|
+
|
|
272
|
+
exports.createFocusTrap = useDialog.createFocusTrap;
|
|
273
|
+
exports.getFocusable = useDialog.getFocusable;
|
|
274
|
+
exports.lockBodyScroll = useDialog.lockBodyScroll;
|
|
275
|
+
exports.unlockBodyScroll = useDialog.unlockBodyScroll;
|
|
276
|
+
exports.default = QmDialogNamespace;
|
|
277
|
+
exports.dialogProps = dialogProps;
|
|
278
|
+
exports.openDialog = openDialog;
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import * as vue from 'vue';
|
|
2
|
+
import { PropType } from 'vue';
|
|
3
|
+
export { c as createFocusTrap, g as getFocusable, l as lockBodyScroll, u as unlockBodyScroll } from '../../shared/components.B_aXqCE8.cjs';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* QmDialog 组件类型定义(组件体系设计 §6.4:类型先行)
|
|
7
|
+
* 03-T2:受控 v-model 开合 / 模态遮罩 / 尺寸 / 可访问性完整
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/** 关闭原因契约(task-02 §4:便于业务区分) */
|
|
11
|
+
type DialogCloseReason = 'esc' | 'overlay' | 'close-btn' | 'ok' | 'cancel';
|
|
12
|
+
/** 对话框尺寸(§6.3:small | medium | large) */
|
|
13
|
+
type DialogSize = 'small' | 'medium' | 'large';
|
|
14
|
+
/** props 声明 */
|
|
15
|
+
declare const dialogProps: {
|
|
16
|
+
/** 受控 v-model:是否显示 */
|
|
17
|
+
readonly modelValue: {
|
|
18
|
+
readonly type: BooleanConstructor;
|
|
19
|
+
readonly default: false;
|
|
20
|
+
};
|
|
21
|
+
/** 标题(也可用 header 插槽) */
|
|
22
|
+
readonly title: {
|
|
23
|
+
readonly type: StringConstructor;
|
|
24
|
+
readonly default: "";
|
|
25
|
+
};
|
|
26
|
+
/** 尺寸:small / medium / large */
|
|
27
|
+
readonly size: {
|
|
28
|
+
readonly type: PropType<DialogSize>;
|
|
29
|
+
readonly default: "medium";
|
|
30
|
+
};
|
|
31
|
+
/** 自定义宽度(覆盖 size),如 '500px' / '80%' */
|
|
32
|
+
readonly width: {
|
|
33
|
+
readonly type: StringConstructor;
|
|
34
|
+
readonly default: "";
|
|
35
|
+
};
|
|
36
|
+
/** 点击遮罩是否关闭 */
|
|
37
|
+
readonly closeOnClickOverlay: {
|
|
38
|
+
readonly type: BooleanConstructor;
|
|
39
|
+
readonly default: true;
|
|
40
|
+
};
|
|
41
|
+
/** 按 Esc 是否关闭 */
|
|
42
|
+
readonly closeOnEsc: {
|
|
43
|
+
readonly type: BooleanConstructor;
|
|
44
|
+
readonly default: true;
|
|
45
|
+
};
|
|
46
|
+
/** Teleport 目标,默认 body */
|
|
47
|
+
readonly appendTo: {
|
|
48
|
+
readonly type: StringConstructor;
|
|
49
|
+
readonly default: "body";
|
|
50
|
+
};
|
|
51
|
+
/** 是否显示关闭按钮 */
|
|
52
|
+
readonly showClose: {
|
|
53
|
+
readonly type: BooleanConstructor;
|
|
54
|
+
readonly default: true;
|
|
55
|
+
};
|
|
56
|
+
/** 关闭时销毁子元素(v-if 控制) */
|
|
57
|
+
readonly destroyOnClose: {
|
|
58
|
+
readonly type: BooleanConstructor;
|
|
59
|
+
readonly default: false;
|
|
60
|
+
};
|
|
61
|
+
/** 是否显示遮罩 */
|
|
62
|
+
readonly modal: {
|
|
63
|
+
readonly type: BooleanConstructor;
|
|
64
|
+
readonly default: true;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
/** emits 声明 */
|
|
68
|
+
interface DialogEmits {
|
|
69
|
+
'update:modelValue': [value: boolean];
|
|
70
|
+
'open': [];
|
|
71
|
+
'close': [reason: DialogCloseReason];
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* QmDialog.open 命令式打开(03-T4 §3.5)
|
|
76
|
+
*
|
|
77
|
+
* 契约:
|
|
78
|
+
* const reason = await openDialog({ title: '删除确认', content: '...' })
|
|
79
|
+
* // reason: 'esc' | 'overlay' | 'close-btn' | 'ok' | 'cancel'
|
|
80
|
+
*
|
|
81
|
+
* 实现:
|
|
82
|
+
* - 复用受控 QmDialog 组件渲染(焦点陷阱/遮罩/滚动锁定/关闭原因全部复用 03-T2);
|
|
83
|
+
* - 动态挂载到 body:createApp 挂到独立容器,关闭离开动画完成后卸载应用、移除容器(无泄漏);
|
|
84
|
+
* - 默认渲染「取消 / 确定」底部按钮,点击分别以 cancel / ok 原因 resolve。
|
|
85
|
+
*/
|
|
86
|
+
|
|
87
|
+
/** openDialog 入参 */
|
|
88
|
+
interface OpenDialogOptions {
|
|
89
|
+
/** 标题 */
|
|
90
|
+
title?: string;
|
|
91
|
+
/** 正文(纯文本) */
|
|
92
|
+
content?: string;
|
|
93
|
+
/** 尺寸 */
|
|
94
|
+
size?: DialogSize;
|
|
95
|
+
/** 自定义宽度 */
|
|
96
|
+
width?: string;
|
|
97
|
+
/** 确定按钮文案,默认「确定」 */
|
|
98
|
+
okText?: string;
|
|
99
|
+
/** 取消按钮文案,默认「取消」 */
|
|
100
|
+
cancelText?: string;
|
|
101
|
+
/** 是否显示取消按钮,默认 true */
|
|
102
|
+
showCancel?: boolean;
|
|
103
|
+
/** 点击遮罩是否关闭,默认 true */
|
|
104
|
+
closeOnClickOverlay?: boolean;
|
|
105
|
+
/** Esc 是否关闭,默认 true */
|
|
106
|
+
closeOnEsc?: boolean;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* 命令式打开对话框。
|
|
110
|
+
* @returns Promise,resolve 为关闭原因
|
|
111
|
+
*/
|
|
112
|
+
declare function openDialog(options?: OpenDialogOptions): Promise<DialogCloseReason>;
|
|
113
|
+
|
|
114
|
+
declare const QmDialogNamespace: {
|
|
115
|
+
new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<Readonly<Record<string, unknown>>, Record<string, unknown>, unknown, vue.ComputedOptions, vue.MethodOptions, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, vue.PublicProps, {}, true, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
|
|
116
|
+
P: {};
|
|
117
|
+
B: {};
|
|
118
|
+
D: {};
|
|
119
|
+
C: {};
|
|
120
|
+
M: {};
|
|
121
|
+
Defaults: {};
|
|
122
|
+
}, Readonly<Record<string, unknown>>, Record<string, unknown>, {}, vue.ComputedOptions, vue.MethodOptions, {}>;
|
|
123
|
+
__isFragment?: never;
|
|
124
|
+
__isTeleport?: never;
|
|
125
|
+
__isSuspense?: never;
|
|
126
|
+
} & vue.ComponentOptionsBase<Readonly<Record<string, unknown>>, Record<string, unknown>, unknown, vue.ComputedOptions, vue.MethodOptions, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, {}, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
|
127
|
+
open: typeof openDialog;
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
// @ts-ignore
|
|
131
|
+
export = QmDialogNamespace;
|
|
132
|
+
export { dialogProps, openDialog };
|
|
133
|
+
export type { DialogCloseReason, DialogEmits, DialogSize, OpenDialogOptions };
|