@kne/react-modal 0.1.10 → 0.1.11
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/README.md +1 -1
- package/dist/index.css +20 -1
- package/dist/index.css.map +1 -1
- package/dist/index.js +84 -121
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +83 -120
- package/dist/index.modern.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
### 描述
|
|
4
4
|
|
|
5
|
-
基于 antd 的 React 弹层组件,提供 Modal/Drawer、useModal/useDrawer/useConfirmModal、共用 TabsLayout/ScrollRegion 布局与 createModalRender/createDrawerRender
|
|
5
|
+
基于 antd 的 React 弹层组件,提供 Modal/Drawer、useModal/useDrawer/useConfirmModal、共用 TabsLayout/ScrollRegion 布局与 createModalRender/createDrawerRender支持 SimpleBar 与移动端适配。
|
|
6
6
|
|
|
7
7
|
### 关键词
|
|
8
8
|
|
package/dist/index.css
CHANGED
|
@@ -296,9 +296,12 @@
|
|
|
296
296
|
.kne-react-modal_kkILR.kne-react-modal_LtgJz .kne-react-modal_W-QFz {
|
|
297
297
|
flex: 1 1 auto;
|
|
298
298
|
min-height: 0;
|
|
299
|
+
height: auto !important;
|
|
300
|
+
max-height: none !important;
|
|
299
301
|
}
|
|
300
302
|
.kne-react-modal_kkILR.kne-react-modal_LtgJz .kne-react-modal_meVfy {
|
|
301
303
|
flex: none;
|
|
304
|
+
margin-top: auto;
|
|
302
305
|
}
|
|
303
306
|
|
|
304
307
|
.kne-react-modal_tG9MF {
|
|
@@ -842,6 +845,21 @@
|
|
|
842
845
|
max-height: 100%;
|
|
843
846
|
}
|
|
844
847
|
|
|
848
|
+
.kne-react-modal_G-qXe.ant-drawer {
|
|
849
|
+
display: block;
|
|
850
|
+
inset: 0 !important;
|
|
851
|
+
width: var(--kne-viewport-width, 100vw) !important;
|
|
852
|
+
height: var(--kne-viewport-height, 100vh) !important;
|
|
853
|
+
max-height: var(--kne-viewport-height, 100vh) !important;
|
|
854
|
+
box-sizing: border-box;
|
|
855
|
+
overflow: hidden !important;
|
|
856
|
+
overscroll-behavior: none;
|
|
857
|
+
touch-action: none;
|
|
858
|
+
}
|
|
859
|
+
.kne-react-modal_G-qXe.ant-drawer .ant-drawer-content-wrapper,
|
|
860
|
+
.kne-react-modal_G-qXe.ant-drawer .ant-drawer-content {
|
|
861
|
+
touch-action: auto;
|
|
862
|
+
}
|
|
845
863
|
.kne-react-modal_G-qXe.ant-drawer .ant-drawer-content {
|
|
846
864
|
width: 100%;
|
|
847
865
|
max-width: 100%;
|
|
@@ -851,9 +869,10 @@
|
|
|
851
869
|
}
|
|
852
870
|
.kne-react-modal_G-qXe.ant-drawer.kne-is-boundary {
|
|
853
871
|
position: absolute !important;
|
|
854
|
-
inset: 0 !important;
|
|
855
872
|
width: 100% !important;
|
|
856
873
|
height: 100% !important;
|
|
874
|
+
min-height: 100% !important;
|
|
875
|
+
max-height: 100% !important;
|
|
857
876
|
}
|
|
858
877
|
.kne-react-modal_G-qXe.ant-drawer.kne-is-viewport {
|
|
859
878
|
position: fixed !important;
|
package/dist/index.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["layouts.module.scss","style.module.scss","drawer.module.scss","confirmModal.module.scss"],"names":[],"mappings":"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EE,gCAAgC;EAChC,kCAAkC;AACpC;AACA;EACE,2BAA2B;AAC7B;;AAEA;;EAEE,aAAa;EACb,uBAAuB;EACvB,QAAQ;AACV;;AAEA;EACE,cAAc;EACd,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,aAAa;EACb,cAAc;AAChB;;AAEA;EACE,eAAe;AACjB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;;AAEA;EACE,OAAO;EACP,YAAY;EACZ,cAAc;EACd,iBAAiB;EACjB,eAAe;EACf,iBAAiB;AACnB;;AAEA;EACE,OAAO;EACP,YAAY;EACZ,0BAA0B;EAC1B,eAAe;EACf,iBAAiB;AACnB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,uBAAuB;EACvB,mBAAmB;EACnB,kBAAkB;EAClB,QAAQ;AACV;AACA;EACE,QAAQ;AACV;AACA;EACE,kBAAkB;AACpB;AACA;EACE,eAAe;AACjB;AACA;EACE,cAAc;EACd,eAAe;EACf,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,WAAW;EACX,YAAY;EACZ,aAAa;AACf;AACA;EACE,eAAe;AACjB;AACA;EACE,eAAe;EACf,iBAAiB;AACnB;;AAEA;EACE;;IAEE,QAAQ;EACV;EACA;IACE,2CAA2C;EAC7C;EACA;IACE,8FAA8F;IAC9F,kGAAkG;EACpG;EACA;IACE,uBAAuB;EACzB;EACA;IACE,mBAAmB;EACrB;EACA;IACE,mBAAmB;IACnB,wBAAwB;IACxB,oBAAoB;IACpB,WAAW;IACX,gBAAgB;IAChB,SAAS;EACX;EACA;IACE,OAAO;IACP,WAAW;IACX,iCAAiC;IACjC,YAAY;EACd;EACA;IACE,uBAAuB;IACvB,mBAAmB;IACnB,kBAAkB;EACpB;EACA;IACE,kBAAkB;EACpB;EACA;IACE,eAAe;EACjB;EACA;IACE,cAAc;IACd,eAAe;IACf,iBAAiB;IACjB,kBAAkB;EACpB;EACA;IACE,WAAW;IACX,YAAY;IACZ,aAAa;EACf;EACA;IACE,eAAe;EACjB;AACF","file":"index.css","sourcesContent":[".modal-tabs-layout:global(.ant-tabs) {\n height: var(--kne-modal-content-height);\n max-height: var(--kne-modal-content-height);\n flex: 1 1 0%;\n min-height: 0;\n width: 100%;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n box-sizing: border-box;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav) {\n flex: none;\n height: var(--kne-modal-close-align-height, 48px);\n margin: 0;\n padding: 0 86px 0 24px;\n align-items: center;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav)::before {\n border-bottom-color: #f0f0f0;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav) :global(.ant-tabs-nav-wrap) {\n align-self: stretch;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav) :global(.ant-tabs-tab) {\n margin: 0 28px 0 0;\n padding: 0;\n font-weight: 600;\n display: inline-flex;\n align-items: center;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav) :global(.ant-tabs-tab) :global(.ant-tabs-tab-btn) {\n padding: 0;\n line-height: var(--kne-modal-close-align-height, 48px);\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-body-holder) {\n flex: 1 1 0% !important;\n height: 0 !important;\n min-height: 0;\n overflow: hidden;\n}\n.modal-tabs-layout:global(.ant-tabs) :global(.ant-tabs-body) {\n height: 100%;\n min-height: 0;\n overflow: hidden;\n}\n.modal-tabs-layout:global(.ant-tabs) :global(.ant-tabs-content) {\n height: 100%;\n min-height: 0;\n overflow: hidden;\n outline: none;\n}\n.modal-tabs-layout:global(.ant-tabs) :global(.ant-tabs-content-hidden) {\n display: none;\n}\n\n.modal-columns-layout {\n display: flex;\n flex-direction: row;\n height: 100%;\n max-height: 100%;\n min-height: 0;\n width: 100%;\n overflow: hidden;\n box-sizing: border-box;\n}\n\n.modal-columns-layout__col {\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n.modal-columns-layout__col:not(:first-child) {\n border-left: 1px solid #f0f0f0;\n}\n\n.modal-columns-layout__col:first-child :global(.modal-scroll-region) {\n background: #fafafa;\n}\n.modal-columns-layout__col:first-child :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fafafa;\n}\n.modal-columns-layout__col:first-child :global(.modal-scroll-region) :global(.modal-scroll-region-sticky) {\n background: #fafafa;\n}\n\n.modal-columns-layout__col:last-child :global(.modal-scroll-region) {\n background: #fff;\n}\n.modal-columns-layout__col:last-child :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fff;\n}\n\n.modal-columns-layout__col:only-child :global(.modal-scroll-region) {\n background: #fff;\n}\n.modal-columns-layout__col:only-child :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fff;\n}\n\n.modal-scroll-region {\n height: 100%;\n max-height: 100%;\n min-height: 0;\n box-sizing: border-box;\n}\n.modal-scroll-region :global(.simplebar-wrapper),\n.modal-scroll-region :global(.simplebar-mask),\n.modal-scroll-region :global(.simplebar-offset) {\n height: 100%;\n min-height: 0;\n}\n.modal-scroll-region :global(.simplebar-content-wrapper) {\n height: 100%;\n min-height: 0;\n}\n\n.modal-scroll-region-inner {\n box-sizing: border-box;\n min-height: 100%;\n}\n\n.modal-scroll-region.is-inset .modal-scroll-region-inner {\n padding: 16px 20px;\n}\n\n:global(.modal-scroll-region-sticky) {\n position: sticky;\n top: 0;\n z-index: 1;\n padding: 12px 16px 10px;\n background: #fff;\n border-bottom: 1px solid #f0f0f0;\n}\n\n:global(.react-modal-splitter.ant-splitter) {\n height: 100% !important;\n max-height: 100%;\n min-height: 0;\n overflow: hidden;\n box-sizing: border-box;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel) {\n min-height: 0;\n overflow: hidden;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:first-child) :global(.modal-scroll-region) {\n background: #fafafa;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:first-child) :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fafafa;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:first-child) :global(.modal-scroll-region) :global(.modal-scroll-region-sticky) {\n background: #fafafa;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:last-child) :global(.modal-scroll-region) {\n background: #fff;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:last-child) :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fff;\n}\n\n:global(.react-modal-steps-form) :global(.modal-body-inner) {\n min-width: 0;\n max-width: 100%;\n overflow-x: hidden;\n}\n:global(.react-modal-steps-form) :global(.simplebar-content-wrapper),\n:global(.react-modal-steps-form) :global(.simplebar-content) {\n overflow-x: hidden !important;\n}\n:global(.react-modal-steps-form) :global(.kne-form-steps.ant-steps-horizontal) {\n padding-inline: 0 !important;\n width: 100%;\n max-width: 100%;\n box-sizing: border-box;\n}","@charset \"UTF-8\";\n.kne-responsive-boundary {\n position: relative;\n}\n\n.kne-responsive-scroll {\n overflow: auto;\n}\n\n:root {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.kne-responsive-boundary {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.modal {\n --kne-modal-viewport-height: var(--kne-viewport-height, 100vh);\n --kne-modal-viewport-width: var(--kne-viewport-width, 100vw);\n --kne-modal-title-height: 48px;\n --kne-modal-footer-height: 58px;\n --kne-modal-viewport-gutter: 120px;\n --kne-modal-body-padding-vertical: 48px;\n --kne-modal-body-padding-horizontal: 48px;\n --kne-modal-body-min-height: 394px;\n --kne-modal-body-height: calc(var(--kne-modal-viewport-height) - var(--kne-modal-title-height) - var(--kne-modal-footer-height) - var(--kne-modal-viewport-gutter));\n --kne-modal-body-max-height: var(--kne-modal-body-height);\n --kne-modal-content-height: calc(var(--kne-modal-body-height) - var(--kne-modal-body-padding-vertical));\n --kne-modal-content-min-height: calc(var(--kne-modal-body-min-height) - var(--kne-modal-body-padding-vertical));\n --kne-modal-content-width: calc(100% - var(--kne-modal-body-padding-horizontal));\n}\n.modal.small {\n --kne-modal-body-min-height: 252px;\n}\n.modal.large .modal-body-inner {\n min-width: 1000px;\n}\n.modal.is-mobile {\n --kne-modal-viewport-gutter: 0px;\n --kne-modal-body-padding-vertical: 24px;\n --kne-modal-body-padding-horizontal: 24px;\n max-width: 100% !important;\n width: 100% !important;\n height: 100% !important;\n max-height: 100% !important;\n margin: 0 !important;\n top: 0 !important;\n padding-bottom: 0 !important;\n}\n.modal.is-mobile.large .modal-body-inner {\n min-width: 0;\n}\n.modal .modal-container {\n padding: 0;\n border-radius: 8px;\n /* 无 footer 时 body 贴底,需裁切子层直角才能露出底部圆角 */\n overflow: hidden;\n}\n.modal .modal-container.is-mobile {\n border-radius: 0 !important;\n height: 100% !important;\n max-height: 100% !important;\n overflow: hidden !important;\n box-sizing: border-box;\n padding: 0 !important;\n}\n\n.modal-antd-header,\n.modal-antd-footer {\n display: none;\n}\n\n.modal-antd-body {\n padding: 0;\n}\n.modal-antd-body.is-mobile {\n height: 100%;\n max-height: 100%;\n overflow: hidden;\n}\n\n.modal-outer {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n.modal-outer.no-title {\n --kne-modal-title-height: 0px;\n /* 无 title 时关闭按钮仍按标题栏高度垂直居中(如 Tabs 顶栏) */\n --kne-modal-close-align-height: 48px;\n}\n.modal-outer.no-footer {\n --kne-modal-footer-height: 0px;\n}\n.modal-outer.no-padding {\n --kne-modal-body-padding-vertical: 0px;\n --kne-modal-body-padding-horizontal: 0px;\n}\n.modal-outer.is-mobile {\n width: 100%;\n height: var(--kne-modal-viewport-height);\n max-height: var(--kne-modal-viewport-height);\n min-height: var(--kne-modal-viewport-height);\n overflow: hidden;\n}\n.modal-outer.is-mobile .modal-title {\n flex: none;\n}\n.modal-outer.is-mobile .modal-body {\n flex: 1 1 auto;\n min-height: 0;\n}\n.modal-outer.is-mobile .modal-footer {\n flex: none;\n}\n\n.modal-title {\n flex: none;\n height: var(--kne-modal-title-height);\n display: flex;\n align-items: center;\n color: var(--font-color, rgba(0, 0, 0, 0.88));\n font-size: 16px;\n font-weight: 700;\n line-height: 1.2;\n padding: 0 48px 0 24px;\n margin-bottom: 0;\n box-sizing: border-box;\n}\n\n.modal-body {\n flex: 1 1 auto;\n min-height: 0;\n min-height: var(--kne-modal-body-min-height);\n max-height: var(--kne-modal-body-max-height);\n height: var(--kne-modal-body-height);\n box-sizing: border-box;\n}\n.modal-body.body-scroll-off {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n --kne-modal-content-height: 100%;\n --kne-modal-content-min-height: 0px;\n}\n.modal-body.body-scroll-off .modal-body-inner {\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n max-height: 100%;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n\n.modal-body-inner {\n padding: calc(var(--kne-modal-body-padding-vertical) / 2) calc(var(--kne-modal-body-padding-horizontal) / 2);\n min-height: var(--kne-modal-content-height);\n width: 100%;\n max-width: 100%;\n box-sizing: border-box;\n}\n.modal-body-inner.no-padding {\n padding: 0;\n}\n\n.modal-footer {\n flex: none;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px 24px 24px;\n box-sizing: border-box;\n}\n.modal-footer.is-mobile {\n justify-content: center;\n border-top: 1px solid var(--bg-color-grey-3, #f0f0f0);\n}\n.modal-footer {\n /* footerButtons=[] + 宿主 footer(如 FormModal Submit/Cancel) */\n}\n.modal-footer.is-mobile.is-embedded-footer .modal-footer-extra {\n flex: 1 1 100%;\n width: 100%;\n display: flex;\n justify-content: center;\n /* form-info ModalFooter:外层 Flex space-between → 移动端居中 */\n}\n.modal-footer.is-mobile.is-embedded-footer .modal-footer-extra > :global(.ant-flex) {\n width: auto;\n max-width: 100%;\n justify-content: center !important;\n}\n.modal-footer.is-mobile.is-embedded-footer .modal-footer-extra > :global(.ant-flex) > :global(div:first-child:empty) {\n display: none;\n}\n\n.modal-footer-extra {\n flex: 1 1 auto;\n min-width: 0;\n}\n\n.modal-footer-actions {\n flex: none;\n min-width: 0;\n}\n\n.modal-close {\n position: absolute;\n top: calc((var(--kne-modal-close-align-height, var(--kne-modal-title-height, 48px)) - 22px) / 2);\n inset-inline-end: 17px;\n z-index: 1010;\n padding: 0;\n color: var(--font-color-grey, rgba(0, 0, 0, 0.45));\n flex-shrink: 0;\n}\n.modal-close:global(.ant-btn.ant-btn-icon-only.ant-btn-text) {\n width: 22px;\n height: 22px;\n}\n\n.modal-host {\n position: absolute;\n width: 0;\n height: 0;\n overflow: hidden;\n pointer-events: none;\n}\n\n.modal-form-host :global(.ant-modal-body) :global(.react-form--inner) {\n display: flex;\n flex-direction: column;\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n}\n.modal-form-host :global(.ant-modal-body) :global(.react-form--inner) > :global(.ant-flex) {\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n}\n.modal-form-host .modal-outer {\n width: 100%;\n min-width: 0;\n}\n\n:global(.ant-modal-root) .modal-wrap:global(.ant-modal-wrap) {\n overflow: hidden;\n /* useModal 走 modal.info(),antd 会给内容包 .ant-modal-confirm-paragraph 并扣 12px 宽 */\n}\n:global(.ant-modal-root) .modal-wrap:global(.ant-modal-wrap) :global(.ant-modal-confirm-paragraph) {\n max-width: 100% !important;\n}\n\n/* 测试用:明显压低 body 可用高度,便于验证滚动与居中 */\n.modal:global(.kne-modal-height-limited) {\n --kne-modal-viewport-gutter: 360px;\n --kne-modal-body-max-height: 420px;\n --kne-modal-body-height: min(420px, calc(var(--kne-modal-viewport-height) - var(--kne-modal-title-height) - var(--kne-modal-footer-height) - var(--kne-modal-viewport-gutter)));\n --kne-modal-content-height: calc(var(--kne-modal-body-height) - var(--kne-modal-body-padding-vertical));\n}\n\n.modal-wrap-centered:global(.ant-modal-wrap) {\n display: flex;\n align-items: center !important;\n justify-content: center;\n min-height: var(--kne-viewport-height, 100vh);\n max-height: var(--kne-viewport-height, 100vh);\n padding: 16px;\n box-sizing: border-box;\n overflow: hidden;\n}\n.modal-wrap-centered:global(.ant-modal-wrap)::before {\n display: none !important;\n}\n.modal-wrap-centered:global(.ant-modal-wrap) :global(.ant-modal) {\n top: auto !important;\n display: block;\n padding-bottom: 0 !important;\n margin: 0 auto;\n vertical-align: initial;\n}\n.modal-wrap-centered:global(.ant-modal-wrap):global(.kne-is-boundary) {\n position: absolute !important;\n inset: 0 !important;\n width: 100% !important;\n height: 100% !important;\n min-height: 100% !important;\n max-height: 100% !important;\n}\n.modal-wrap-centered:global(.ant-modal-wrap):global(.kne-is-viewport) {\n position: fixed !important;\n}\n\n.modal-wrap-fullscreen:global(.ant-modal-wrap) {\n display: block;\n inset: 0 !important;\n width: var(--kne-viewport-width, 100vw) !important;\n height: var(--kne-viewport-height, 100vh) !important;\n max-height: var(--kne-viewport-height, 100vh) !important;\n padding: 0 !important;\n box-sizing: border-box;\n overflow: hidden !important;\n overscroll-behavior: none;\n touch-action: none;\n text-align: start;\n}\n.modal-wrap-fullscreen:global(.ant-modal-wrap)::before {\n display: none !important;\n content: none !important;\n}\n.modal-wrap-fullscreen:global(.ant-modal-wrap) :global(.ant-modal) {\n top: 0 !important;\n width: 100% !important;\n max-width: 100% !important;\n height: 100% !important;\n max-height: 100% !important;\n padding-bottom: 0 !important;\n margin: 0 !important;\n vertical-align: initial;\n touch-action: auto;\n}\n.modal-wrap-fullscreen:global(.ant-modal-wrap):global(.kne-is-boundary) {\n position: absolute !important;\n width: 100% !important;\n height: 100% !important;\n min-height: 100% !important;\n max-height: 100% !important;\n}\n.modal-wrap-fullscreen:global(.ant-modal-wrap):global(.kne-is-viewport) {\n position: fixed !important;\n}\n\n.modal-mask-fullscreen:global(.kne-is-boundary) {\n position: absolute !important;\n inset: 0 !important;\n}\n.modal-mask-fullscreen:global(.kne-is-viewport) {\n position: fixed !important;\n}\n\n@container kne-responsive (max-width: 768px) {\n .modal-body-inner:not(.no-padding) {\n --kne-modal-body-padding-vertical: 24px;\n --kne-modal-body-padding-horizontal: 24px;\n }\n .modal-title {\n padding: 0 40px 0 16px;\n }\n .modal-footer {\n padding: 12px 16px 16px;\n border-top: 1px solid var(--bg-color-grey-3, #f0f0f0);\n }\n}","@charset \"UTF-8\";\n.kne-responsive-boundary {\n position: relative;\n}\n\n.kne-responsive-scroll {\n overflow: auto;\n}\n\n:root {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.kne-responsive-boundary {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.drawer :global(.ant-drawer-body) {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n padding: 0;\n height: 100%;\n}\n.drawer {\n --kne-drawer-viewport-height: var(--kne-viewport-height, 100vh);\n --kne-drawer-viewport-width: var(--kne-viewport-width, 100vw);\n --kne-drawer-title-height: 48px;\n /* 12 top + ~32 btn + 24 bottom + 1 border-top;须与真实 footer 一致,避免 SimpleBar calc 顶裁底部 padding */\n --kne-drawer-footer-height: 69px;\n --kne-drawer-viewport-gutter: 0px;\n --kne-drawer-body-padding-vertical: 48px;\n --kne-drawer-body-padding-horizontal: 48px;\n --kne-drawer-body-min-height: 200px;\n --kne-drawer-body-height: calc(var(--kne-drawer-viewport-height) - var(--kne-drawer-title-height) - var(--kne-drawer-footer-height) - var(--kne-drawer-viewport-gutter));\n --kne-drawer-body-max-height: var(--kne-drawer-body-height);\n --kne-drawer-content-height: calc(var(--kne-drawer-body-height) - var(--kne-drawer-body-padding-vertical));\n --kne-drawer-content-min-height: calc(var(--kne-drawer-body-min-height) - var(--kne-drawer-body-padding-vertical));\n --kne-drawer-content-width: calc(100% - var(--kne-drawer-body-padding-horizontal));\n}\n.drawer.small {\n --kne-drawer-body-min-height: 180px;\n}\n.drawer.is-mobile {\n --kne-drawer-viewport-gutter: 0px;\n --kne-drawer-body-padding-vertical: 24px;\n --kne-drawer-body-padding-horizontal: 24px;\n width: 100%;\n max-width: 100%;\n min-width: 0;\n box-sizing: border-box;\n}\n.drawer.is-mobile.large .drawer-body-inner {\n min-width: 0;\n}\n.drawer.large .drawer-body-inner {\n min-width: 0;\n}\n.drawer:global(.ant-drawer-left) :global(.ant-drawer-content-wrapper), .drawer:global(.ant-drawer-right) :global(.ant-drawer-content-wrapper) {\n height: 100%;\n top: 0;\n bottom: 0;\n}\n.drawer:global(.ant-drawer-left) :global(.ant-drawer-content), .drawer:global(.ant-drawer-right) :global(.ant-drawer-content) {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.drawer-antd-header,\n.drawer-antd-footer {\n display: none;\n}\n\n.drawer-antd-body {\n padding: 0;\n flex: 1 1 auto;\n min-height: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n.drawer-antd-body.is-mobile {\n height: 100%;\n max-height: 100%;\n}\n\n.drawer-outer {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n overflow: hidden;\n --kne-modal-content-height: var(--kne-drawer-content-height);\n --kne-modal-content-min-height: var(--kne-drawer-content-min-height);\n --kne-modal-close-align-height: var(--kne-drawer-close-align-height, 48px);\n}\n.drawer-outer :global(.modal-footer) {\n flex: none;\n}\n.drawer-outer.no-title {\n --kne-drawer-title-height: 0px;\n --kne-drawer-close-align-height: 48px;\n}\n.drawer-outer.no-footer {\n --kne-drawer-footer-height: 0px;\n}\n.drawer-outer.no-padding {\n --kne-drawer-body-padding-vertical: 0px;\n --kne-drawer-body-padding-horizontal: 0px;\n}\n.drawer-outer.is-mobile {\n width: 100%;\n height: var(--kne-drawer-viewport-height);\n max-height: var(--kne-drawer-viewport-height);\n min-height: var(--kne-drawer-viewport-height);\n overflow: hidden;\n}\n.drawer-outer.is-mobile .drawer-title {\n flex: none;\n}\n.drawer-outer.is-mobile .drawer-body {\n flex: 1 1 auto;\n min-height: 0;\n}\n.drawer-outer.is-mobile :global(.modal-footer) {\n flex: none;\n}\n\n.drawer-title {\n flex: none;\n height: var(--kne-drawer-title-height);\n display: flex;\n align-items: center;\n color: var(--font-color, rgba(0, 0, 0, 0.88));\n font-size: 16px;\n font-weight: 700;\n line-height: 1.2;\n padding: 0 48px 0 24px;\n margin-bottom: 0;\n box-sizing: border-box;\n border-bottom: 1px solid var(--bg-color-grey-3, #f0f0f0);\n}\n\n.drawer-body {\n flex: 1 1 auto;\n min-height: 0;\n min-height: var(--kne-drawer-body-min-height);\n max-height: var(--kne-drawer-body-max-height);\n height: var(--kne-drawer-body-height);\n box-sizing: border-box;\n}\n.drawer-body.body-scroll-off {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n flex: 1 1 auto;\n min-height: 0;\n height: auto;\n max-height: none;\n --kne-drawer-content-height: 100%;\n --kne-drawer-content-min-height: 0px;\n --kne-modal-content-height: 100%;\n --kne-modal-content-min-height: 0px;\n}\n.drawer-body.body-scroll-off .drawer-body-inner {\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n max-height: 100%;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n\n.drawer-body-inner {\n padding: calc(var(--kne-drawer-body-padding-vertical) / 2) calc(var(--kne-drawer-body-padding-horizontal) / 2);\n min-height: var(--kne-drawer-content-height);\n width: 100%;\n max-width: 100%;\n box-sizing: border-box;\n}\n.drawer-body-inner.no-padding {\n padding: 0;\n}\n\n.drawer-outer :global(.modal-footer) {\n border-top: 1px solid var(--bg-color-grey-3, #f0f0f0);\n}\n\n.drawer-outer.is-mobile :global(.modal-footer.is-mobile.is-embedded-footer) .modal-footer-extra {\n flex: 1 1 100%;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n.drawer-outer.is-mobile :global(.modal-footer.is-mobile.is-embedded-footer) .modal-footer-extra > :global(.ant-flex) {\n width: auto;\n max-width: 100%;\n justify-content: center !important;\n}\n.drawer-outer.is-mobile :global(.modal-footer.is-mobile.is-embedded-footer) .modal-footer-extra > :global(.ant-flex) > :global(div:first-child:empty) {\n display: none;\n}\n\n.drawer-close {\n position: absolute;\n top: calc((var(--kne-drawer-close-align-height, var(--kne-drawer-title-height, 48px)) - 22px) / 2);\n inset-inline-end: 17px;\n z-index: 1010;\n padding: 0;\n color: var(--font-color-grey, rgba(0, 0, 0, 0.45));\n flex-shrink: 0;\n}\n.drawer-close:global(.ant-btn.ant-btn-icon-only.ant-btn-text) {\n width: 22px;\n height: 22px;\n}\n\n.drawer-host {\n position: absolute;\n width: 0;\n height: 0;\n overflow: hidden;\n pointer-events: none;\n}\n\n.drawer-host-render :global(.ant-drawer-content-wrapper) :global(.react-form),\n.drawer-host-render :global(.ant-drawer-content-wrapper) :global(.react-form--inner) {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n width: 100%;\n}\n.drawer-host-render :global(.ant-drawer-content-wrapper) :global(.info-page) {\n display: flex;\n flex-direction: column;\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n}\n\n.drawer-panel-host {\n display: flex;\n flex-direction: column;\n width: 100%;\n min-width: 0;\n min-height: 0;\n flex: 1 1 auto;\n height: 100%;\n}\n\n.drawer-panel-body {\n display: flex;\n flex-direction: column;\n width: 100%;\n min-width: 0;\n min-height: 0;\n flex: 1 1 auto;\n height: 100%;\n}\n\n.drawer-form-host :global(.ant-drawer-body) :global(.react-form--inner) {\n display: flex;\n flex-direction: column;\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n}\n.drawer-form-host :global(.ant-drawer-body) :global(.react-form--inner) > :global(.ant-flex) {\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n}\n.drawer-form-host .drawer-panel-host,\n.drawer-form-host .drawer-panel-body,\n.drawer-form-host .drawer-outer {\n width: 100%;\n min-width: 0;\n}\n\n.drawer-wrapper-mobile:global(.ant-drawer-content-wrapper) {\n width: var(--kne-viewport-width, 100vw) !important;\n max-width: 100%;\n}\n\n.drawer-wrapper-mobile-vertical:global(.ant-drawer-content-wrapper) {\n height: var(--kne-viewport-height, 100vh) !important;\n max-height: 100%;\n}\n\n.drawer-root-mobile:global(.ant-drawer) :global(.ant-drawer-content) {\n width: 100%;\n max-width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n.drawer-root-mobile:global(.ant-drawer):global(.kne-is-boundary) {\n position: absolute !important;\n inset: 0 !important;\n width: 100% !important;\n height: 100% !important;\n}\n.drawer-root-mobile:global(.ant-drawer):global(.kne-is-viewport) {\n position: fixed !important;\n}\n\n:global(.ant-drawer-mask.kne-is-boundary) {\n position: absolute !important;\n inset: 0 !important;\n width: 100% !important;\n height: 100% !important;\n}\n\n:global(.ant-drawer-mask.kne-is-viewport) {\n position: fixed !important;\n inset: 0 !important;\n}\n\n@container kne-responsive (max-width: 768px) {\n .drawer {\n /* 移动端 footer: 12 + ~32 + 16 + 1 border */\n --kne-drawer-footer-height: 61px;\n }\n .drawer-body-inner:not(.no-padding) {\n --kne-drawer-body-padding-vertical: 24px;\n --kne-drawer-body-padding-horizontal: 24px;\n }\n .drawer-title {\n padding: 0 40px 0 16px;\n }\n .drawer-outer :global(.modal-footer.is-mobile) {\n padding: 12px 16px 16px;\n }\n}",".kne-responsive-boundary {\n position: relative;\n}\n\n.kne-responsive-scroll {\n overflow: auto;\n}\n\n:root {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.kne-responsive-boundary {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.confirm-modal-wrap :global .ant-modal-confirm .ant-modal-confirm-body .ant-modal-confirm-title + .ant-modal-confirm-content {\n max-width: 100% !important;\n}\n.confirm-modal-wrap :global .ant-modal-confirm-body-wrapper {\n min-height: 96px;\n display: flex;\n flex-direction: column;\n}\n.confirm-modal-wrap :global .ant-modal-content {\n border-radius: 8px;\n max-width: 400px;\n box-sizing: border-box;\n}\n.confirm-modal-wrap :global .ant-modal-confirm-btns {\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n flex: 1;\n gap: 8px;\n}\n.confirm-modal-wrap.is-mobile {\n --kne-confirm-modal-mobile-max-width: 400px;\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-content {\n width: min(var(--kne-confirm-modal-mobile-max-width), var(--kne-viewport-width, 100vw) - 32px);\n max-width: min(var(--kne-confirm-modal-mobile-max-width), var(--kne-viewport-width, 100vw) - 32px);\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-confirm-body {\n padding: 20px 20px 12px;\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-confirm-title {\n margin-bottom: 16px;\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-confirm-btns {\n flex-direction: row;\n justify-content: stretch;\n align-items: stretch;\n width: 100%;\n margin-top: 16px;\n gap: 12px;\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-confirm-btns .ant-btn {\n flex: 1;\n width: auto;\n margin-inline-start: 0 !important;\n height: 40px;\n}\n.confirm-modal-wrap.is-danger {\n --color-warning: #d14343;\n}\n.confirm-modal-wrap.is-danger :global .ant-popover-buttons .ant-btn-primary,\n.confirm-modal-wrap.is-danger :global .ant-modal-confirm-btns .ant-btn-primary {\n background: var(--color-warning);\n border-color: var(--color-warning);\n}\n.confirm-modal-wrap.is-danger .title-icon {\n color: var(--color-warning);\n}\n\n.titleRow,\n.contentRow {\n display: flex;\n align-items: flex-start;\n gap: 6px;\n}\n\n.titleIcon {\n flex-shrink: 0;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 20px;\n height: 20px;\n margin-top: 0;\n line-height: 1;\n}\n\n.title-icon {\n font-size: 16px;\n}\n.title-icon-confirm {\n color: #1677ff;\n}\n.title-icon-info {\n color: #1677ff;\n}\n.title-icon-success {\n color: #52c41a;\n}\n.title-icon-warning {\n color: #faad14;\n}\n.title-icon-error {\n color: #ff4d4f;\n}\n\n.titleText {\n flex: 1;\n min-width: 0;\n color: #222222;\n font-weight: bold;\n font-size: 14px;\n line-height: 20px;\n}\n\n.contentText {\n flex: 1;\n min-width: 0;\n color: rgba(0, 0, 0, 0.65);\n font-size: 14px;\n line-height: 20px;\n}\n\n.contentRow.has-title.has-icon .contentText {\n padding-left: 26px;\n}\n\n.is-mobile-block.contentRow.has-title.has-icon .contentText {\n padding-left: 32px;\n}\n\n.is-mobile-block.titleRow {\n justify-content: center;\n align-items: center;\n margin-bottom: 4px;\n gap: 8px;\n}\n.is-mobile-block.contentRow {\n gap: 8px;\n}\n.is-mobile-block.contentRow.has-title .contentText {\n text-align: center;\n}\n.is-mobile-block.contentRow.has-title.has-icon .contentText {\n padding-left: 0;\n}\n.is-mobile-block .titleText {\n flex: 0 1 auto;\n font-size: 16px;\n line-height: 24px;\n text-align: center;\n}\n.is-mobile-block .titleIcon {\n width: 24px;\n height: 24px;\n margin-top: 0;\n}\n.is-mobile-block .title-icon {\n font-size: 24px;\n}\n.is-mobile-block .contentText {\n font-size: 14px;\n line-height: 22px;\n}\n\n@container kne-responsive (max-width: 768px) {\n .titleRow,\n .contentRow {\n gap: 8px;\n }\n .confirm-modal-wrap {\n --kne-confirm-modal-mobile-max-width: 400px;\n }\n .confirm-modal-wrap :global .ant-modal-content {\n width: min(var(--kne-confirm-modal-mobile-max-width), var(--kne-viewport-width, 100vw) - 32px);\n max-width: min(var(--kne-confirm-modal-mobile-max-width), var(--kne-viewport-width, 100vw) - 32px);\n }\n .confirm-modal-wrap :global .ant-modal-confirm-body {\n padding: 20px 20px 12px;\n }\n .confirm-modal-wrap :global .ant-modal-confirm-title {\n margin-bottom: 16px;\n }\n .confirm-modal-wrap :global .ant-modal-confirm-btns {\n flex-direction: row;\n justify-content: stretch;\n align-items: stretch;\n width: 100%;\n margin-top: 16px;\n gap: 12px;\n }\n .confirm-modal-wrap :global .ant-modal-confirm-btns .ant-btn {\n flex: 1;\n width: auto;\n margin-inline-start: 0 !important;\n height: 40px;\n }\n .titleRow {\n justify-content: center;\n align-items: center;\n margin-bottom: 4px;\n }\n .contentRow.has-title .contentText {\n text-align: center;\n }\n .contentRow.has-title.has-icon .contentText {\n padding-left: 0;\n }\n .titleText {\n flex: 0 1 auto;\n font-size: 16px;\n line-height: 24px;\n text-align: center;\n }\n .titleIcon {\n width: 24px;\n height: 24px;\n margin-top: 0;\n }\n .title-icon {\n font-size: 24px;\n }\n}"]}
|
|
1
|
+
{"version":3,"sources":["layouts.module.scss","style.module.scss","drawer.module.scss","confirmModal.module.scss"],"names":[],"mappings":"AAAA;EACE,uCAAuC;EACvC,2CAA2C;EAC3C,YAAY;EACZ,aAAa;EACb,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,gBAAgB;EAChB,sBAAsB;AACxB;AACA;EACE,UAAU;EACV,iDAAiD;EACjD,SAAS;EACT,sBAAsB;EACtB,mBAAmB;AACrB;AACA;EACE,4BAA4B;AAC9B;AACA;EACE,mBAAmB;AACrB;AACA;EACE,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,oBAAoB;EACpB,mBAAmB;AACrB;AACA;EACE,UAAU;EACV,sDAAsD;AACxD;AACA;EACE,uBAAuB;EACvB,oBAAoB;EACpB,aAAa;EACb,gBAAgB;AAClB;AACA;EACE,YAAY;EACZ,aAAa;EACb,gBAAgB;AAClB;AACA;EACE,YAAY;EACZ,aAAa;EACb,gBAAgB;EAChB,aAAa;AACf;AACA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;EAChB,aAAa;EACb,WAAW;EACX,gBAAgB;EAChB,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,gBAAgB;EAChB,aAAa;EACb,sBAAsB;AACxB;AACA;EACE,8BAA8B;AAChC;;AAEA;EACE,mBAAmB;AACrB;AACA;EACE,mBAAmB;AACrB;AACA;EACE,mBAAmB;AACrB;;AAEA;EACE,gBAAgB;AAClB;AACA;EACE,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;AAClB;AACA;EACE,gBAAgB;AAClB;;AAEA;EACE,YAAY;EACZ,gBAAgB;EAChB,aAAa;EACb,sBAAsB;AACxB;AACA;;;EAGE,YAAY;EACZ,aAAa;AACf;AACA;EACE,YAAY;EACZ,aAAa;AACf;;AAEA;EACE,sBAAsB;EACtB,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,gBAAgB;EAChB,MAAM;EACN,UAAU;EACV,uBAAuB;EACvB,gBAAgB;EAChB,gCAAgC;AAClC;;AAEA;EACE,uBAAuB;EACvB,gBAAgB;EAChB,aAAa;EACb,gBAAgB;EAChB,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,gBAAgB;AAClB;AACA;EACE,mBAAmB;AACrB;AACA;EACE,mBAAmB;AACrB;AACA;EACE,mBAAmB;AACrB;AACA;EACE,gBAAgB;AAClB;AACA;EACE,gBAAgB;AAClB;;AAEA;EACE,YAAY;EACZ,eAAe;EACf,kBAAkB;AACpB;AACA;;EAEE,6BAA6B;AAC/B;AACA;EACE,4BAA4B;EAC5B,WAAW;EACX,eAAe;EACf,sBAAsB;AACxB;AClLA,gBAAgB;AAChB;EACE,kBAAkB;AACpB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,2BAA2B;EAC3B,6BAA6B;EAC7B,iCAAiC;EACjC,iCAAiC;AACnC;;AAEA;EACE,2BAA2B;EAC3B,6BAA6B;EAC7B,iCAAiC;EACjC,iCAAiC;AACnC;;AAEA;EACE,8DAA8D;EAC9D,4DAA4D;EAC5D,8BAA8B;EAC9B,+BAA+B;EAC/B,kCAAkC;EAClC,uCAAuC;EACvC,yCAAyC;EACzC,kCAAkC;EAClC,mKAAmK;EACnK,yDAAyD;EACzD,uGAAuG;EACvG,+GAA+G;EAC/G,gFAAgF;AAClF;AACA;EACE,kCAAkC;AACpC;AACA;EACE,iBAAiB;AACnB;AACA;EACE,gCAAgC;EAChC,uCAAuC;EACvC,yCAAyC;EACzC,0BAA0B;EAC1B,sBAAsB;EACtB,uBAAuB;EACvB,2BAA2B;EAC3B,oBAAoB;EACpB,iBAAiB;EACjB,4BAA4B;AAC9B;AACA;EACE,YAAY;AACd;AACA;EACE,UAAU;EACV,kBAAkB;EAClB,uCAAuC;EACvC,gBAAgB;AAClB;AACA;EACE,2BAA2B;EAC3B,uBAAuB;EACvB,2BAA2B;EAC3B,2BAA2B;EAC3B,sBAAsB;EACtB,qBAAqB;AACvB;;AAEA;;EAEE,aAAa;AACf;;AAEA;EACE,UAAU;AACZ;AACA;EACE,YAAY;EACZ,gBAAgB;EAChB,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,sBAAsB;EACtB,sBAAsB;AACxB;AACA;EACE,6BAA6B;EAC7B,wCAAwC;EACxC,oCAAoC;AACtC;AACA;EACE,8BAA8B;AAChC;AACA;EACE,sCAAsC;EACtC,wCAAwC;AAC1C;AACA;EACE,WAAW;EACX,wCAAwC;EACxC,4CAA4C;EAC5C,4CAA4C;EAC5C,gBAAgB;AAClB;AACA;EACE,UAAU;AACZ;AACA;EACE,cAAc;EACd,aAAa;EACb,uBAAuB;EACvB,2BAA2B;AAC7B;AACA;EACE,UAAU;EACV,gBAAgB;AAClB;;AAEA;EACE,UAAU;EACV,qCAAqC;EACrC,aAAa;EACb,mBAAmB;EACnB,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,gBAAgB;EAChB,sBAAsB;AACxB;;AAEA;EACE,cAAc;EACd,aAAa;EACb,4CAA4C;EAC5C,4CAA4C;EAC5C,oCAAoC;EACpC,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;EAChB,gCAAgC;EAChC,mCAAmC;AACrC;AACA;EACE,cAAc;EACd,aAAa;EACb,YAAY;EACZ,gBAAgB;EAChB,gBAAgB;EAChB,aAAa;EACb,sBAAsB;EACtB,sBAAsB;AACxB;;AAEA;EACE,4GAA4G;EAC5G,2CAA2C;EAC3C,WAAW;EACX,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,UAAU;AACZ;;AAEA;EACE,UAAU;EACV,aAAa;EACb,mBAAmB;EACnB,SAAS;EACT,uBAAuB;EACvB,sBAAsB;AACxB;AACA;EACE,uBAAuB;EACvB,qDAAqD;AACvD;AACA;EACE,4DAA4D;AAC9D;AACA;EACE,cAAc;EACd,WAAW;EACX,aAAa;EACb,uBAAuB;EACvB,wDAAwD;AAC1D;AACA;EACE,WAAW;EACX,eAAe;EACf,kCAAkC;AACpC;AACA;EACE,aAAa;AACf;;AAEA;EACE,cAAc;EACd,YAAY;AACd;;AAEA;EACE,UAAU;EACV,YAAY;AACd;;AAEA;EACE,kBAAkB;EAClB,gGAAgG;EAChG,sBAAsB;EACtB,aAAa;EACb,UAAU;EACV,kDAAkD;EAClD,cAAc;AAChB;AACA;EACE,WAAW;EACX,YAAY;AACd;;AAEA;EACE,kBAAkB;EAClB,QAAQ;EACR,SAAS;EACT,gBAAgB;EAChB,oBAAoB;AACtB;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,cAAc;EACd,aAAa;EACb,WAAW;AACb;AACA;EACE,cAAc;EACd,aAAa;EACb,WAAW;AACb;AACA;EACE,WAAW;EACX,YAAY;AACd;;AAEA;EACE,gBAAgB;EAChB,8EAA8E;AAChF;AACA;EACE,0BAA0B;AAC5B;;AAEA,iCAAiC;AACjC;EACE,kCAAkC;EAClC,kCAAkC;EAClC,+KAA+K;EAC/K,uGAAuG;AACzG;;AAEA;EACE,aAAa;EACb,8BAA8B;EAC9B,uBAAuB;EACvB,6CAA6C;EAC7C,6CAA6C;EAC7C,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,oBAAoB;EACpB,cAAc;EACd,4BAA4B;EAC5B,cAAc;EACd,uBAAuB;AACzB;AACA;EACE,6BAA6B;EAC7B,mBAAmB;EACnB,sBAAsB;EACtB,uBAAuB;EACvB,2BAA2B;EAC3B,2BAA2B;AAC7B;AACA;EACE,0BAA0B;AAC5B;;AAEA;EACE,cAAc;EACd,mBAAmB;EACnB,kDAAkD;EAClD,oDAAoD;EACpD,wDAAwD;EACxD,qBAAqB;EACrB,sBAAsB;EACtB,2BAA2B;EAC3B,yBAAyB;EACzB,kBAAkB;EAClB,iBAAiB;AACnB;AACA;EACE,wBAAwB;EACxB,wBAAwB;AAC1B;AACA;EACE,iBAAiB;EACjB,sBAAsB;EACtB,0BAA0B;EAC1B,uBAAuB;EACvB,2BAA2B;EAC3B,4BAA4B;EAC5B,oBAAoB;EACpB,uBAAuB;EACvB,kBAAkB;AACpB;AACA;EACE,6BAA6B;EAC7B,sBAAsB;EACtB,uBAAuB;EACvB,2BAA2B;EAC3B,2BAA2B;AAC7B;AACA;EACE,0BAA0B;AAC5B;;AAEA;EACE,6BAA6B;EAC7B,mBAAmB;AACrB;AACA;EACE,0BAA0B;AAC5B;;AAEA;EACE;IACE,uCAAuC;IACvC,yCAAyC;EAC3C;EACA;IACE,sBAAsB;EACxB;EACA;IACE,uBAAuB;IACvB,qDAAqD;EACvD;AACF;AC7WA,gBAAgB;AAChB;EACE,kBAAkB;AACpB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,2BAA2B;EAC3B,6BAA6B;EAC7B,iCAAiC;EACjC,iCAAiC;AACnC;;AAEA;EACE,2BAA2B;EAC3B,6BAA6B;EAC7B,iCAAiC;EACjC,iCAAiC;AACnC;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;EAChB,UAAU;EACV,YAAY;AACd;AACA;EACE,+DAA+D;EAC/D,6DAA6D;EAC7D,+BAA+B;EAC/B,8FAA8F;EAC9F,gCAAgC;EAChC,iCAAiC;EACjC,wCAAwC;EACxC,0CAA0C;EAC1C,mCAAmC;EACnC,wKAAwK;EACxK,2DAA2D;EAC3D,0GAA0G;EAC1G,kHAAkH;EAClH,kFAAkF;AACpF;AACA;EACE,mCAAmC;AACrC;AACA;EACE,iCAAiC;EACjC,wCAAwC;EACxC,0CAA0C;EAC1C,WAAW;EACX,eAAe;EACf,YAAY;EACZ,sBAAsB;AACxB;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;EACZ,MAAM;EACN,SAAS;AACX;AACA;EACE,YAAY;EACZ,aAAa;EACb,sBAAsB;AACxB;;AAEA;;EAEE,aAAa;AACf;;AAEA;EACE,UAAU;EACV,cAAc;EACd,aAAa;EACb,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB;AACA;EACE,YAAY;EACZ,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,sBAAsB;EACtB,sBAAsB;EACtB,cAAc;EACd,aAAa;EACb,YAAY;EACZ,gBAAgB;EAChB,4DAA4D;EAC5D,oEAAoE;EACpE,0EAA0E;AAC5E;AACA;EACE,UAAU;AACZ;AACA;EACE,8BAA8B;EAC9B,qCAAqC;AACvC;AACA;EACE,+BAA+B;AACjC;AACA;EACE,uCAAuC;EACvC,yCAAyC;AAC3C;AACA;EACE,WAAW;EACX,yCAAyC;EACzC,6CAA6C;EAC7C,6CAA6C;EAC7C,gBAAgB;AAClB;AACA;EACE,UAAU;AACZ;AACA;EACE,cAAc;EACd,aAAa;AACf;AACA;EACE,UAAU;AACZ;;AAEA;EACE,UAAU;EACV,sCAAsC;EACtC,aAAa;EACb,mBAAmB;EACnB,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,gBAAgB;EAChB,sBAAsB;EACtB,wDAAwD;AAC1D;;AAEA;EACE,cAAc;EACd,aAAa;EACb,6CAA6C;EAC7C,6CAA6C;EAC7C,qCAAqC;EACrC,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;EAChB,cAAc;EACd,aAAa;EACb,YAAY;EACZ,gBAAgB;EAChB,iCAAiC;EACjC,oCAAoC;EACpC,gCAAgC;EAChC,mCAAmC;AACrC;AACA;EACE,cAAc;EACd,aAAa;EACb,YAAY;EACZ,gBAAgB;EAChB,gBAAgB;EAChB,aAAa;EACb,sBAAsB;EACtB,sBAAsB;AACxB;;AAEA;EACE,8GAA8G;EAC9G,4CAA4C;EAC5C,WAAW;EACX,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,UAAU;AACZ;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,cAAc;EACd,WAAW;EACX,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,WAAW;EACX,eAAe;EACf,kCAAkC;AACpC;AACA;EACE,aAAa;AACf;;AAEA;EACE,kBAAkB;EAClB,kGAAkG;EAClG,sBAAsB;EACtB,aAAa;EACb,UAAU;EACV,kDAAkD;EAClD,cAAc;AAChB;AACA;EACE,WAAW;EACX,YAAY;AACd;;AAEA;EACE,kBAAkB;EAClB,QAAQ;EACR,SAAS;EACT,gBAAgB;EAChB,oBAAoB;AACtB;;AAEA;;EAEE,aAAa;EACb,sBAAsB;EACtB,YAAY;EACZ,aAAa;EACb,WAAW;AACb;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,cAAc;EACd,aAAa;EACb,YAAY;AACd;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,WAAW;EACX,YAAY;EACZ,aAAa;EACb,cAAc;EACd,YAAY;AACd;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,WAAW;EACX,YAAY;EACZ,aAAa;EACb,cAAc;EACd,YAAY;AACd;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,cAAc;EACd,aAAa;EACb,WAAW;AACb;AACA;EACE,cAAc;EACd,aAAa;EACb,WAAW;AACb;AACA;;;EAGE,WAAW;EACX,YAAY;AACd;;AAEA;EACE,kDAAkD;EAClD,eAAe;AACjB;;AAEA;EACE,oDAAoD;EACpD,gBAAgB;AAClB;;AAEA;EACE,cAAc;EACd,mBAAmB;EACnB,kDAAkD;EAClD,oDAAoD;EACpD,wDAAwD;EACxD,sBAAsB;EACtB,2BAA2B;EAC3B,yBAAyB;EACzB,kBAAkB;AACpB;AACA;;EAEE,kBAAkB;AACpB;AACA;EACE,WAAW;EACX,eAAe;EACf,YAAY;EACZ,aAAa;EACb,sBAAsB;AACxB;AACA;EACE,6BAA6B;EAC7B,sBAAsB;EACtB,uBAAuB;EACvB,2BAA2B;EAC3B,2BAA2B;AAC7B;AACA;EACE,0BAA0B;AAC5B;;AAEA;EACE,6BAA6B;EAC7B,mBAAmB;EACnB,sBAAsB;EACtB,uBAAuB;AACzB;;AAEA;EACE,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE;IACE,yCAAyC;IACzC,gCAAgC;EAClC;EACA;IACE,wCAAwC;IACxC,0CAA0C;EAC5C;EACA;IACE,sBAAsB;EACxB;EACA;IACE,uBAAuB;EACzB;AACF;AC1WA;EACE,kBAAkB;AACpB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,2BAA2B;EAC3B,6BAA6B;EAC7B,iCAAiC;EACjC,iCAAiC;AACnC;;AAEA;EACE,2BAA2B;EAC3B,6BAA6B;EAC7B,iCAAiC;EACjC,iCAAiC;AACnC;;AAEA;EACE,0BAA0B;AAC5B;AACA;EACE,gBAAgB;EAChB,aAAa;EACb,sBAAsB;AACxB;AACA;EACE,kBAAkB;EAClB,gBAAgB;EAChB,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,yBAAyB;EACzB,qBAAqB;EACrB,OAAO;EACP,QAAQ;AACV;AACA;EACE,2CAA2C;AAC7C;AACA;EACE,8FAA8F;EAC9F,kGAAkG;AACpG;AACA;EACE,uBAAuB;AACzB;AACA;EACE,mBAAmB;AACrB;AACA;EACE,mBAAmB;EACnB,wBAAwB;EACxB,oBAAoB;EACpB,WAAW;EACX,gBAAgB;EAChB,SAAS;AACX;AACA;EACE,OAAO;EACP,WAAW;EACX,iCAAiC;EACjC,YAAY;AACd;AACA;EACE,wBAAwB;AAC1B;AACA;;EAEE,gCAAgC;EAChC,kCAAkC;AACpC;AACA;EACE,2BAA2B;AAC7B;;AAEA;;EAEE,aAAa;EACb,uBAAuB;EACvB,QAAQ;AACV;;AAEA;EACE,cAAc;EACd,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,aAAa;EACb,cAAc;AAChB;;AAEA;EACE,eAAe;AACjB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;;AAEA;EACE,OAAO;EACP,YAAY;EACZ,cAAc;EACd,iBAAiB;EACjB,eAAe;EACf,iBAAiB;AACnB;;AAEA;EACE,OAAO;EACP,YAAY;EACZ,0BAA0B;EAC1B,eAAe;EACf,iBAAiB;AACnB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,uBAAuB;EACvB,mBAAmB;EACnB,kBAAkB;EAClB,QAAQ;AACV;AACA;EACE,QAAQ;AACV;AACA;EACE,kBAAkB;AACpB;AACA;EACE,eAAe;AACjB;AACA;EACE,cAAc;EACd,eAAe;EACf,iBAAiB;EACjB,kBAAkB;AACpB;AACA;EACE,WAAW;EACX,YAAY;EACZ,aAAa;AACf;AACA;EACE,eAAe;AACjB;AACA;EACE,eAAe;EACf,iBAAiB;AACnB;;AAEA;EACE;;IAEE,QAAQ;EACV;EACA;IACE,2CAA2C;EAC7C;EACA;IACE,8FAA8F;IAC9F,kGAAkG;EACpG;EACA;IACE,uBAAuB;EACzB;EACA;IACE,mBAAmB;EACrB;EACA;IACE,mBAAmB;IACnB,wBAAwB;IACxB,oBAAoB;IACpB,WAAW;IACX,gBAAgB;IAChB,SAAS;EACX;EACA;IACE,OAAO;IACP,WAAW;IACX,iCAAiC;IACjC,YAAY;EACd;EACA;IACE,uBAAuB;IACvB,mBAAmB;IACnB,kBAAkB;EACpB;EACA;IACE,kBAAkB;EACpB;EACA;IACE,eAAe;EACjB;EACA;IACE,cAAc;IACd,eAAe;IACf,iBAAiB;IACjB,kBAAkB;EACpB;EACA;IACE,WAAW;IACX,YAAY;IACZ,aAAa;EACf;EACA;IACE,eAAe;EACjB;AACF","file":"index.css","sourcesContent":[".modal-tabs-layout:global(.ant-tabs) {\n height: var(--kne-modal-content-height);\n max-height: var(--kne-modal-content-height);\n flex: 1 1 0%;\n min-height: 0;\n width: 100%;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n box-sizing: border-box;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav) {\n flex: none;\n height: var(--kne-modal-close-align-height, 48px);\n margin: 0;\n padding: 0 86px 0 24px;\n align-items: center;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav)::before {\n border-bottom-color: #f0f0f0;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav) :global(.ant-tabs-nav-wrap) {\n align-self: stretch;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav) :global(.ant-tabs-tab) {\n margin: 0 28px 0 0;\n padding: 0;\n font-weight: 600;\n display: inline-flex;\n align-items: center;\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-nav) :global(.ant-tabs-tab) :global(.ant-tabs-tab-btn) {\n padding: 0;\n line-height: var(--kne-modal-close-align-height, 48px);\n}\n.modal-tabs-layout:global(.ant-tabs) > :global(.ant-tabs-body-holder) {\n flex: 1 1 0% !important;\n height: 0 !important;\n min-height: 0;\n overflow: hidden;\n}\n.modal-tabs-layout:global(.ant-tabs) :global(.ant-tabs-body) {\n height: 100%;\n min-height: 0;\n overflow: hidden;\n}\n.modal-tabs-layout:global(.ant-tabs) :global(.ant-tabs-content) {\n height: 100%;\n min-height: 0;\n overflow: hidden;\n outline: none;\n}\n.modal-tabs-layout:global(.ant-tabs) :global(.ant-tabs-content-hidden) {\n display: none;\n}\n\n.modal-columns-layout {\n display: flex;\n flex-direction: row;\n height: 100%;\n max-height: 100%;\n min-height: 0;\n width: 100%;\n overflow: hidden;\n box-sizing: border-box;\n}\n\n.modal-columns-layout__col {\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n.modal-columns-layout__col:not(:first-child) {\n border-left: 1px solid #f0f0f0;\n}\n\n.modal-columns-layout__col:first-child :global(.modal-scroll-region) {\n background: #fafafa;\n}\n.modal-columns-layout__col:first-child :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fafafa;\n}\n.modal-columns-layout__col:first-child :global(.modal-scroll-region) :global(.modal-scroll-region-sticky) {\n background: #fafafa;\n}\n\n.modal-columns-layout__col:last-child :global(.modal-scroll-region) {\n background: #fff;\n}\n.modal-columns-layout__col:last-child :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fff;\n}\n\n.modal-columns-layout__col:only-child :global(.modal-scroll-region) {\n background: #fff;\n}\n.modal-columns-layout__col:only-child :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fff;\n}\n\n.modal-scroll-region {\n height: 100%;\n max-height: 100%;\n min-height: 0;\n box-sizing: border-box;\n}\n.modal-scroll-region :global(.simplebar-wrapper),\n.modal-scroll-region :global(.simplebar-mask),\n.modal-scroll-region :global(.simplebar-offset) {\n height: 100%;\n min-height: 0;\n}\n.modal-scroll-region :global(.simplebar-content-wrapper) {\n height: 100%;\n min-height: 0;\n}\n\n.modal-scroll-region-inner {\n box-sizing: border-box;\n min-height: 100%;\n}\n\n.modal-scroll-region.is-inset .modal-scroll-region-inner {\n padding: 16px 20px;\n}\n\n:global(.modal-scroll-region-sticky) {\n position: sticky;\n top: 0;\n z-index: 1;\n padding: 12px 16px 10px;\n background: #fff;\n border-bottom: 1px solid #f0f0f0;\n}\n\n:global(.react-modal-splitter.ant-splitter) {\n height: 100% !important;\n max-height: 100%;\n min-height: 0;\n overflow: hidden;\n box-sizing: border-box;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel) {\n min-height: 0;\n overflow: hidden;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:first-child) :global(.modal-scroll-region) {\n background: #fafafa;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:first-child) :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fafafa;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:first-child) :global(.modal-scroll-region) :global(.modal-scroll-region-sticky) {\n background: #fafafa;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:last-child) :global(.modal-scroll-region) {\n background: #fff;\n}\n:global(.react-modal-splitter.ant-splitter) :global(.ant-splitter-panel:last-child) :global(.modal-scroll-region) :global(.simplebar-content) {\n background: #fff;\n}\n\n:global(.react-modal-steps-form) :global(.modal-body-inner) {\n min-width: 0;\n max-width: 100%;\n overflow-x: hidden;\n}\n:global(.react-modal-steps-form) :global(.simplebar-content-wrapper),\n:global(.react-modal-steps-form) :global(.simplebar-content) {\n overflow-x: hidden !important;\n}\n:global(.react-modal-steps-form) :global(.kne-form-steps.ant-steps-horizontal) {\n padding-inline: 0 !important;\n width: 100%;\n max-width: 100%;\n box-sizing: border-box;\n}","@charset \"UTF-8\";\n.kne-responsive-boundary {\n position: relative;\n}\n\n.kne-responsive-scroll {\n overflow: auto;\n}\n\n:root {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.kne-responsive-boundary {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.modal {\n --kne-modal-viewport-height: var(--kne-viewport-height, 100vh);\n --kne-modal-viewport-width: var(--kne-viewport-width, 100vw);\n --kne-modal-title-height: 48px;\n --kne-modal-footer-height: 58px;\n --kne-modal-viewport-gutter: 120px;\n --kne-modal-body-padding-vertical: 48px;\n --kne-modal-body-padding-horizontal: 48px;\n --kne-modal-body-min-height: 394px;\n --kne-modal-body-height: calc(var(--kne-modal-viewport-height) - var(--kne-modal-title-height) - var(--kne-modal-footer-height) - var(--kne-modal-viewport-gutter));\n --kne-modal-body-max-height: var(--kne-modal-body-height);\n --kne-modal-content-height: calc(var(--kne-modal-body-height) - var(--kne-modal-body-padding-vertical));\n --kne-modal-content-min-height: calc(var(--kne-modal-body-min-height) - var(--kne-modal-body-padding-vertical));\n --kne-modal-content-width: calc(100% - var(--kne-modal-body-padding-horizontal));\n}\n.modal.small {\n --kne-modal-body-min-height: 252px;\n}\n.modal.large .modal-body-inner {\n min-width: 1000px;\n}\n.modal.is-mobile {\n --kne-modal-viewport-gutter: 0px;\n --kne-modal-body-padding-vertical: 24px;\n --kne-modal-body-padding-horizontal: 24px;\n max-width: 100% !important;\n width: 100% !important;\n height: 100% !important;\n max-height: 100% !important;\n margin: 0 !important;\n top: 0 !important;\n padding-bottom: 0 !important;\n}\n.modal.is-mobile.large .modal-body-inner {\n min-width: 0;\n}\n.modal .modal-container {\n padding: 0;\n border-radius: 8px;\n /* 无 footer 时 body 贴底,需裁切子层直角才能露出底部圆角 */\n overflow: hidden;\n}\n.modal .modal-container.is-mobile {\n border-radius: 0 !important;\n height: 100% !important;\n max-height: 100% !important;\n overflow: hidden !important;\n box-sizing: border-box;\n padding: 0 !important;\n}\n\n.modal-antd-header,\n.modal-antd-footer {\n display: none;\n}\n\n.modal-antd-body {\n padding: 0;\n}\n.modal-antd-body.is-mobile {\n height: 100%;\n max-height: 100%;\n overflow: hidden;\n}\n\n.modal-outer {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n.modal-outer.no-title {\n --kne-modal-title-height: 0px;\n /* 无 title 时关闭按钮仍按标题栏高度垂直居中(如 Tabs 顶栏) */\n --kne-modal-close-align-height: 48px;\n}\n.modal-outer.no-footer {\n --kne-modal-footer-height: 0px;\n}\n.modal-outer.no-padding {\n --kne-modal-body-padding-vertical: 0px;\n --kne-modal-body-padding-horizontal: 0px;\n}\n.modal-outer.is-mobile {\n width: 100%;\n height: var(--kne-modal-viewport-height);\n max-height: var(--kne-modal-viewport-height);\n min-height: var(--kne-modal-viewport-height);\n overflow: hidden;\n}\n.modal-outer.is-mobile .modal-title {\n flex: none;\n}\n.modal-outer.is-mobile .modal-body {\n flex: 1 1 auto;\n min-height: 0;\n height: auto !important;\n max-height: none !important;\n}\n.modal-outer.is-mobile .modal-footer {\n flex: none;\n margin-top: auto;\n}\n\n.modal-title {\n flex: none;\n height: var(--kne-modal-title-height);\n display: flex;\n align-items: center;\n color: var(--font-color, rgba(0, 0, 0, 0.88));\n font-size: 16px;\n font-weight: 700;\n line-height: 1.2;\n padding: 0 48px 0 24px;\n margin-bottom: 0;\n box-sizing: border-box;\n}\n\n.modal-body {\n flex: 1 1 auto;\n min-height: 0;\n min-height: var(--kne-modal-body-min-height);\n max-height: var(--kne-modal-body-max-height);\n height: var(--kne-modal-body-height);\n box-sizing: border-box;\n}\n.modal-body.body-scroll-off {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n --kne-modal-content-height: 100%;\n --kne-modal-content-min-height: 0px;\n}\n.modal-body.body-scroll-off .modal-body-inner {\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n max-height: 100%;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n\n.modal-body-inner {\n padding: calc(var(--kne-modal-body-padding-vertical) / 2) calc(var(--kne-modal-body-padding-horizontal) / 2);\n min-height: var(--kne-modal-content-height);\n width: 100%;\n max-width: 100%;\n box-sizing: border-box;\n}\n.modal-body-inner.no-padding {\n padding: 0;\n}\n\n.modal-footer {\n flex: none;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px 24px 24px;\n box-sizing: border-box;\n}\n.modal-footer.is-mobile {\n justify-content: center;\n border-top: 1px solid var(--bg-color-grey-3, #f0f0f0);\n}\n.modal-footer {\n /* footerButtons=[] + 宿主 footer(如 FormModal Submit/Cancel) */\n}\n.modal-footer.is-mobile.is-embedded-footer .modal-footer-extra {\n flex: 1 1 100%;\n width: 100%;\n display: flex;\n justify-content: center;\n /* form-info ModalFooter:外层 Flex space-between → 移动端居中 */\n}\n.modal-footer.is-mobile.is-embedded-footer .modal-footer-extra > :global(.ant-flex) {\n width: auto;\n max-width: 100%;\n justify-content: center !important;\n}\n.modal-footer.is-mobile.is-embedded-footer .modal-footer-extra > :global(.ant-flex) > :global(div:first-child:empty) {\n display: none;\n}\n\n.modal-footer-extra {\n flex: 1 1 auto;\n min-width: 0;\n}\n\n.modal-footer-actions {\n flex: none;\n min-width: 0;\n}\n\n.modal-close {\n position: absolute;\n top: calc((var(--kne-modal-close-align-height, var(--kne-modal-title-height, 48px)) - 22px) / 2);\n inset-inline-end: 17px;\n z-index: 1010;\n padding: 0;\n color: var(--font-color-grey, rgba(0, 0, 0, 0.45));\n flex-shrink: 0;\n}\n.modal-close:global(.ant-btn.ant-btn-icon-only.ant-btn-text) {\n width: 22px;\n height: 22px;\n}\n\n.modal-host {\n position: absolute;\n width: 0;\n height: 0;\n overflow: hidden;\n pointer-events: none;\n}\n\n.modal-form-host :global(.ant-modal-body) :global(.react-form--inner) {\n display: flex;\n flex-direction: column;\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n}\n.modal-form-host :global(.ant-modal-body) :global(.react-form--inner) > :global(.ant-flex) {\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n}\n.modal-form-host .modal-outer {\n width: 100%;\n min-width: 0;\n}\n\n:global(.ant-modal-root) .modal-wrap:global(.ant-modal-wrap) {\n overflow: hidden;\n /* useModal 走 modal.info(),antd 会给内容包 .ant-modal-confirm-paragraph 并扣 12px 宽 */\n}\n:global(.ant-modal-root) .modal-wrap:global(.ant-modal-wrap) :global(.ant-modal-confirm-paragraph) {\n max-width: 100% !important;\n}\n\n/* 测试用:明显压低 body 可用高度,便于验证滚动与居中 */\n.modal:global(.kne-modal-height-limited) {\n --kne-modal-viewport-gutter: 360px;\n --kne-modal-body-max-height: 420px;\n --kne-modal-body-height: min(420px, calc(var(--kne-modal-viewport-height) - var(--kne-modal-title-height) - var(--kne-modal-footer-height) - var(--kne-modal-viewport-gutter)));\n --kne-modal-content-height: calc(var(--kne-modal-body-height) - var(--kne-modal-body-padding-vertical));\n}\n\n.modal-wrap-centered:global(.ant-modal-wrap) {\n display: flex;\n align-items: center !important;\n justify-content: center;\n min-height: var(--kne-viewport-height, 100vh);\n max-height: var(--kne-viewport-height, 100vh);\n padding: 16px;\n box-sizing: border-box;\n overflow: hidden;\n}\n.modal-wrap-centered:global(.ant-modal-wrap)::before {\n display: none !important;\n}\n.modal-wrap-centered:global(.ant-modal-wrap) :global(.ant-modal) {\n top: auto !important;\n display: block;\n padding-bottom: 0 !important;\n margin: 0 auto;\n vertical-align: initial;\n}\n.modal-wrap-centered:global(.ant-modal-wrap):global(.kne-is-boundary) {\n position: absolute !important;\n inset: 0 !important;\n width: 100% !important;\n height: 100% !important;\n min-height: 100% !important;\n max-height: 100% !important;\n}\n.modal-wrap-centered:global(.ant-modal-wrap):global(.kne-is-viewport) {\n position: fixed !important;\n}\n\n.modal-wrap-fullscreen:global(.ant-modal-wrap) {\n display: block;\n inset: 0 !important;\n width: var(--kne-viewport-width, 100vw) !important;\n height: var(--kne-viewport-height, 100vh) !important;\n max-height: var(--kne-viewport-height, 100vh) !important;\n padding: 0 !important;\n box-sizing: border-box;\n overflow: hidden !important;\n overscroll-behavior: none;\n touch-action: none;\n text-align: start;\n}\n.modal-wrap-fullscreen:global(.ant-modal-wrap)::before {\n display: none !important;\n content: none !important;\n}\n.modal-wrap-fullscreen:global(.ant-modal-wrap) :global(.ant-modal) {\n top: 0 !important;\n width: 100% !important;\n max-width: 100% !important;\n height: 100% !important;\n max-height: 100% !important;\n padding-bottom: 0 !important;\n margin: 0 !important;\n vertical-align: initial;\n touch-action: auto;\n}\n.modal-wrap-fullscreen:global(.ant-modal-wrap):global(.kne-is-boundary) {\n position: absolute !important;\n width: 100% !important;\n height: 100% !important;\n min-height: 100% !important;\n max-height: 100% !important;\n}\n.modal-wrap-fullscreen:global(.ant-modal-wrap):global(.kne-is-viewport) {\n position: fixed !important;\n}\n\n.modal-mask-fullscreen:global(.kne-is-boundary) {\n position: absolute !important;\n inset: 0 !important;\n}\n.modal-mask-fullscreen:global(.kne-is-viewport) {\n position: fixed !important;\n}\n\n@container kne-responsive (max-width: 768px) {\n .modal-body-inner:not(.no-padding) {\n --kne-modal-body-padding-vertical: 24px;\n --kne-modal-body-padding-horizontal: 24px;\n }\n .modal-title {\n padding: 0 40px 0 16px;\n }\n .modal-footer {\n padding: 12px 16px 16px;\n border-top: 1px solid var(--bg-color-grey-3, #f0f0f0);\n }\n}","@charset \"UTF-8\";\n.kne-responsive-boundary {\n position: relative;\n}\n\n.kne-responsive-scroll {\n overflow: auto;\n}\n\n:root {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.kne-responsive-boundary {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.drawer :global(.ant-drawer-body) {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n padding: 0;\n height: 100%;\n}\n.drawer {\n --kne-drawer-viewport-height: var(--kne-viewport-height, 100vh);\n --kne-drawer-viewport-width: var(--kne-viewport-width, 100vw);\n --kne-drawer-title-height: 48px;\n /* 12 top + ~32 btn + 24 bottom + 1 border-top;须与真实 footer 一致,避免 SimpleBar calc 顶裁底部 padding */\n --kne-drawer-footer-height: 69px;\n --kne-drawer-viewport-gutter: 0px;\n --kne-drawer-body-padding-vertical: 48px;\n --kne-drawer-body-padding-horizontal: 48px;\n --kne-drawer-body-min-height: 200px;\n --kne-drawer-body-height: calc(var(--kne-drawer-viewport-height) - var(--kne-drawer-title-height) - var(--kne-drawer-footer-height) - var(--kne-drawer-viewport-gutter));\n --kne-drawer-body-max-height: var(--kne-drawer-body-height);\n --kne-drawer-content-height: calc(var(--kne-drawer-body-height) - var(--kne-drawer-body-padding-vertical));\n --kne-drawer-content-min-height: calc(var(--kne-drawer-body-min-height) - var(--kne-drawer-body-padding-vertical));\n --kne-drawer-content-width: calc(100% - var(--kne-drawer-body-padding-horizontal));\n}\n.drawer.small {\n --kne-drawer-body-min-height: 180px;\n}\n.drawer.is-mobile {\n --kne-drawer-viewport-gutter: 0px;\n --kne-drawer-body-padding-vertical: 24px;\n --kne-drawer-body-padding-horizontal: 24px;\n width: 100%;\n max-width: 100%;\n min-width: 0;\n box-sizing: border-box;\n}\n.drawer.is-mobile.large .drawer-body-inner {\n min-width: 0;\n}\n.drawer.large .drawer-body-inner {\n min-width: 0;\n}\n.drawer:global(.ant-drawer-left) :global(.ant-drawer-content-wrapper), .drawer:global(.ant-drawer-right) :global(.ant-drawer-content-wrapper) {\n height: 100%;\n top: 0;\n bottom: 0;\n}\n.drawer:global(.ant-drawer-left) :global(.ant-drawer-content), .drawer:global(.ant-drawer-right) :global(.ant-drawer-content) {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.drawer-antd-header,\n.drawer-antd-footer {\n display: none;\n}\n\n.drawer-antd-body {\n padding: 0;\n flex: 1 1 auto;\n min-height: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n.drawer-antd-body.is-mobile {\n height: 100%;\n max-height: 100%;\n}\n\n.drawer-outer {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n overflow: hidden;\n --kne-modal-content-height: var(--kne-drawer-content-height);\n --kne-modal-content-min-height: var(--kne-drawer-content-min-height);\n --kne-modal-close-align-height: var(--kne-drawer-close-align-height, 48px);\n}\n.drawer-outer :global(.modal-footer) {\n flex: none;\n}\n.drawer-outer.no-title {\n --kne-drawer-title-height: 0px;\n --kne-drawer-close-align-height: 48px;\n}\n.drawer-outer.no-footer {\n --kne-drawer-footer-height: 0px;\n}\n.drawer-outer.no-padding {\n --kne-drawer-body-padding-vertical: 0px;\n --kne-drawer-body-padding-horizontal: 0px;\n}\n.drawer-outer.is-mobile {\n width: 100%;\n height: var(--kne-drawer-viewport-height);\n max-height: var(--kne-drawer-viewport-height);\n min-height: var(--kne-drawer-viewport-height);\n overflow: hidden;\n}\n.drawer-outer.is-mobile .drawer-title {\n flex: none;\n}\n.drawer-outer.is-mobile .drawer-body {\n flex: 1 1 auto;\n min-height: 0;\n}\n.drawer-outer.is-mobile :global(.modal-footer) {\n flex: none;\n}\n\n.drawer-title {\n flex: none;\n height: var(--kne-drawer-title-height);\n display: flex;\n align-items: center;\n color: var(--font-color, rgba(0, 0, 0, 0.88));\n font-size: 16px;\n font-weight: 700;\n line-height: 1.2;\n padding: 0 48px 0 24px;\n margin-bottom: 0;\n box-sizing: border-box;\n border-bottom: 1px solid var(--bg-color-grey-3, #f0f0f0);\n}\n\n.drawer-body {\n flex: 1 1 auto;\n min-height: 0;\n min-height: var(--kne-drawer-body-min-height);\n max-height: var(--kne-drawer-body-max-height);\n height: var(--kne-drawer-body-height);\n box-sizing: border-box;\n}\n.drawer-body.body-scroll-off {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n flex: 1 1 auto;\n min-height: 0;\n height: auto;\n max-height: none;\n --kne-drawer-content-height: 100%;\n --kne-drawer-content-min-height: 0px;\n --kne-modal-content-height: 100%;\n --kne-modal-content-min-height: 0px;\n}\n.drawer-body.body-scroll-off .drawer-body-inner {\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n max-height: 100%;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n\n.drawer-body-inner {\n padding: calc(var(--kne-drawer-body-padding-vertical) / 2) calc(var(--kne-drawer-body-padding-horizontal) / 2);\n min-height: var(--kne-drawer-content-height);\n width: 100%;\n max-width: 100%;\n box-sizing: border-box;\n}\n.drawer-body-inner.no-padding {\n padding: 0;\n}\n\n.drawer-outer :global(.modal-footer) {\n border-top: 1px solid var(--bg-color-grey-3, #f0f0f0);\n}\n\n.drawer-outer.is-mobile :global(.modal-footer.is-mobile.is-embedded-footer) .modal-footer-extra {\n flex: 1 1 100%;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n.drawer-outer.is-mobile :global(.modal-footer.is-mobile.is-embedded-footer) .modal-footer-extra > :global(.ant-flex) {\n width: auto;\n max-width: 100%;\n justify-content: center !important;\n}\n.drawer-outer.is-mobile :global(.modal-footer.is-mobile.is-embedded-footer) .modal-footer-extra > :global(.ant-flex) > :global(div:first-child:empty) {\n display: none;\n}\n\n.drawer-close {\n position: absolute;\n top: calc((var(--kne-drawer-close-align-height, var(--kne-drawer-title-height, 48px)) - 22px) / 2);\n inset-inline-end: 17px;\n z-index: 1010;\n padding: 0;\n color: var(--font-color-grey, rgba(0, 0, 0, 0.45));\n flex-shrink: 0;\n}\n.drawer-close:global(.ant-btn.ant-btn-icon-only.ant-btn-text) {\n width: 22px;\n height: 22px;\n}\n\n.drawer-host {\n position: absolute;\n width: 0;\n height: 0;\n overflow: hidden;\n pointer-events: none;\n}\n\n.drawer-host-render :global(.ant-drawer-content-wrapper) :global(.react-form),\n.drawer-host-render :global(.ant-drawer-content-wrapper) :global(.react-form--inner) {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n width: 100%;\n}\n.drawer-host-render :global(.ant-drawer-content-wrapper) :global(.info-page) {\n display: flex;\n flex-direction: column;\n flex: 1 1 auto;\n min-height: 0;\n height: 100%;\n}\n\n.drawer-panel-host {\n display: flex;\n flex-direction: column;\n width: 100%;\n min-width: 0;\n min-height: 0;\n flex: 1 1 auto;\n height: 100%;\n}\n\n.drawer-panel-body {\n display: flex;\n flex-direction: column;\n width: 100%;\n min-width: 0;\n min-height: 0;\n flex: 1 1 auto;\n height: 100%;\n}\n\n.drawer-form-host :global(.ant-drawer-body) :global(.react-form--inner) {\n display: flex;\n flex-direction: column;\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n}\n.drawer-form-host :global(.ant-drawer-body) :global(.react-form--inner) > :global(.ant-flex) {\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n}\n.drawer-form-host .drawer-panel-host,\n.drawer-form-host .drawer-panel-body,\n.drawer-form-host .drawer-outer {\n width: 100%;\n min-width: 0;\n}\n\n.drawer-wrapper-mobile:global(.ant-drawer-content-wrapper) {\n width: var(--kne-viewport-width, 100vw) !important;\n max-width: 100%;\n}\n\n.drawer-wrapper-mobile-vertical:global(.ant-drawer-content-wrapper) {\n height: var(--kne-viewport-height, 100vh) !important;\n max-height: 100%;\n}\n\n.drawer-root-mobile:global(.ant-drawer) {\n display: block;\n inset: 0 !important;\n width: var(--kne-viewport-width, 100vw) !important;\n height: var(--kne-viewport-height, 100vh) !important;\n max-height: var(--kne-viewport-height, 100vh) !important;\n box-sizing: border-box;\n overflow: hidden !important;\n overscroll-behavior: none;\n touch-action: none;\n}\n.drawer-root-mobile:global(.ant-drawer) :global(.ant-drawer-content-wrapper),\n.drawer-root-mobile:global(.ant-drawer) :global(.ant-drawer-content) {\n touch-action: auto;\n}\n.drawer-root-mobile:global(.ant-drawer) :global(.ant-drawer-content) {\n width: 100%;\n max-width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n.drawer-root-mobile:global(.ant-drawer):global(.kne-is-boundary) {\n position: absolute !important;\n width: 100% !important;\n height: 100% !important;\n min-height: 100% !important;\n max-height: 100% !important;\n}\n.drawer-root-mobile:global(.ant-drawer):global(.kne-is-viewport) {\n position: fixed !important;\n}\n\n:global(.ant-drawer-mask.kne-is-boundary) {\n position: absolute !important;\n inset: 0 !important;\n width: 100% !important;\n height: 100% !important;\n}\n\n:global(.ant-drawer-mask.kne-is-viewport) {\n position: fixed !important;\n inset: 0 !important;\n}\n\n@container kne-responsive (max-width: 768px) {\n .drawer {\n /* 移动端 footer: 12 + ~32 + 16 + 1 border */\n --kne-drawer-footer-height: 61px;\n }\n .drawer-body-inner:not(.no-padding) {\n --kne-drawer-body-padding-vertical: 24px;\n --kne-drawer-body-padding-horizontal: 24px;\n }\n .drawer-title {\n padding: 0 40px 0 16px;\n }\n .drawer-outer :global(.modal-footer.is-mobile) {\n padding: 12px 16px 16px;\n }\n}",".kne-responsive-boundary {\n position: relative;\n}\n\n.kne-responsive-scroll {\n overflow: auto;\n}\n\n:root {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.kne-responsive-boundary {\n --kne-viewport-width: 100vw;\n --kne-viewport-height: 100dvh;\n --kne-viewport-inline-size: 100vw;\n --kne-viewport-block-size: 100dvh;\n}\n\n.confirm-modal-wrap :global .ant-modal-confirm .ant-modal-confirm-body .ant-modal-confirm-title + .ant-modal-confirm-content {\n max-width: 100% !important;\n}\n.confirm-modal-wrap :global .ant-modal-confirm-body-wrapper {\n min-height: 96px;\n display: flex;\n flex-direction: column;\n}\n.confirm-modal-wrap :global .ant-modal-content {\n border-radius: 8px;\n max-width: 400px;\n box-sizing: border-box;\n}\n.confirm-modal-wrap :global .ant-modal-confirm-btns {\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n flex: 1;\n gap: 8px;\n}\n.confirm-modal-wrap.is-mobile {\n --kne-confirm-modal-mobile-max-width: 400px;\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-content {\n width: min(var(--kne-confirm-modal-mobile-max-width), var(--kne-viewport-width, 100vw) - 32px);\n max-width: min(var(--kne-confirm-modal-mobile-max-width), var(--kne-viewport-width, 100vw) - 32px);\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-confirm-body {\n padding: 20px 20px 12px;\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-confirm-title {\n margin-bottom: 16px;\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-confirm-btns {\n flex-direction: row;\n justify-content: stretch;\n align-items: stretch;\n width: 100%;\n margin-top: 16px;\n gap: 12px;\n}\n.confirm-modal-wrap.is-mobile :global .ant-modal-confirm-btns .ant-btn {\n flex: 1;\n width: auto;\n margin-inline-start: 0 !important;\n height: 40px;\n}\n.confirm-modal-wrap.is-danger {\n --color-warning: #d14343;\n}\n.confirm-modal-wrap.is-danger :global .ant-popover-buttons .ant-btn-primary,\n.confirm-modal-wrap.is-danger :global .ant-modal-confirm-btns .ant-btn-primary {\n background: var(--color-warning);\n border-color: var(--color-warning);\n}\n.confirm-modal-wrap.is-danger .title-icon {\n color: var(--color-warning);\n}\n\n.titleRow,\n.contentRow {\n display: flex;\n align-items: flex-start;\n gap: 6px;\n}\n\n.titleIcon {\n flex-shrink: 0;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 20px;\n height: 20px;\n margin-top: 0;\n line-height: 1;\n}\n\n.title-icon {\n font-size: 16px;\n}\n.title-icon-confirm {\n color: #1677ff;\n}\n.title-icon-info {\n color: #1677ff;\n}\n.title-icon-success {\n color: #52c41a;\n}\n.title-icon-warning {\n color: #faad14;\n}\n.title-icon-error {\n color: #ff4d4f;\n}\n\n.titleText {\n flex: 1;\n min-width: 0;\n color: #222222;\n font-weight: bold;\n font-size: 14px;\n line-height: 20px;\n}\n\n.contentText {\n flex: 1;\n min-width: 0;\n color: rgba(0, 0, 0, 0.65);\n font-size: 14px;\n line-height: 20px;\n}\n\n.contentRow.has-title.has-icon .contentText {\n padding-left: 26px;\n}\n\n.is-mobile-block.contentRow.has-title.has-icon .contentText {\n padding-left: 32px;\n}\n\n.is-mobile-block.titleRow {\n justify-content: center;\n align-items: center;\n margin-bottom: 4px;\n gap: 8px;\n}\n.is-mobile-block.contentRow {\n gap: 8px;\n}\n.is-mobile-block.contentRow.has-title .contentText {\n text-align: center;\n}\n.is-mobile-block.contentRow.has-title.has-icon .contentText {\n padding-left: 0;\n}\n.is-mobile-block .titleText {\n flex: 0 1 auto;\n font-size: 16px;\n line-height: 24px;\n text-align: center;\n}\n.is-mobile-block .titleIcon {\n width: 24px;\n height: 24px;\n margin-top: 0;\n}\n.is-mobile-block .title-icon {\n font-size: 24px;\n}\n.is-mobile-block .contentText {\n font-size: 14px;\n line-height: 22px;\n}\n\n@container kne-responsive (max-width: 768px) {\n .titleRow,\n .contentRow {\n gap: 8px;\n }\n .confirm-modal-wrap {\n --kne-confirm-modal-mobile-max-width: 400px;\n }\n .confirm-modal-wrap :global .ant-modal-content {\n width: min(var(--kne-confirm-modal-mobile-max-width), var(--kne-viewport-width, 100vw) - 32px);\n max-width: min(var(--kne-confirm-modal-mobile-max-width), var(--kne-viewport-width, 100vw) - 32px);\n }\n .confirm-modal-wrap :global .ant-modal-confirm-body {\n padding: 20px 20px 12px;\n }\n .confirm-modal-wrap :global .ant-modal-confirm-title {\n margin-bottom: 16px;\n }\n .confirm-modal-wrap :global .ant-modal-confirm-btns {\n flex-direction: row;\n justify-content: stretch;\n align-items: stretch;\n width: 100%;\n margin-top: 16px;\n gap: 12px;\n }\n .confirm-modal-wrap :global .ant-modal-confirm-btns .ant-btn {\n flex: 1;\n width: auto;\n margin-inline-start: 0 !important;\n height: 40px;\n }\n .titleRow {\n justify-content: center;\n align-items: center;\n margin-bottom: 4px;\n }\n .contentRow.has-title .contentText {\n text-align: center;\n }\n .contentRow.has-title.has-icon .contentText {\n padding-left: 0;\n }\n .titleText {\n flex: 0 1 auto;\n font-size: 16px;\n line-height: 24px;\n text-align: center;\n }\n .titleIcon {\n width: 24px;\n height: 24px;\n margin-top: 0;\n }\n .title-icon {\n font-size: 24px;\n }\n}"]}
|
package/dist/index.js
CHANGED
|
@@ -116,6 +116,54 @@ const Footer = ({
|
|
|
116
116
|
});
|
|
117
117
|
};
|
|
118
118
|
|
|
119
|
+
let parentScrollLockCount = 0;
|
|
120
|
+
let parentScrollLocked = [];
|
|
121
|
+
|
|
122
|
+
/** Modal / Drawer 共用:锁 body + layout scroll,避免背后页面滚动 */
|
|
123
|
+
const lockParentScroll = getScrollElement => {
|
|
124
|
+
parentScrollLockCount += 1;
|
|
125
|
+
if (parentScrollLockCount === 1) {
|
|
126
|
+
const targets = [document.body];
|
|
127
|
+
const scrollEl = typeof getScrollElement === 'function' ? getScrollElement() : null;
|
|
128
|
+
if (scrollEl && scrollEl !== document.body && !targets.includes(scrollEl)) {
|
|
129
|
+
targets.push(scrollEl);
|
|
130
|
+
}
|
|
131
|
+
parentScrollLocked = targets.map(el => {
|
|
132
|
+
const prev = {
|
|
133
|
+
overflow: el.style.overflow,
|
|
134
|
+
overscrollBehavior: el.style.overscrollBehavior
|
|
135
|
+
};
|
|
136
|
+
el.style.overflow = 'hidden';
|
|
137
|
+
el.style.overscrollBehavior = 'none';
|
|
138
|
+
return {
|
|
139
|
+
el,
|
|
140
|
+
prev
|
|
141
|
+
};
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
return () => {
|
|
145
|
+
parentScrollLockCount = Math.max(0, parentScrollLockCount - 1);
|
|
146
|
+
if (parentScrollLockCount === 0) {
|
|
147
|
+
parentScrollLocked.forEach(({
|
|
148
|
+
el,
|
|
149
|
+
prev
|
|
150
|
+
}) => {
|
|
151
|
+
el.style.overflow = prev.overflow;
|
|
152
|
+
el.style.overscrollBehavior = prev.overscrollBehavior;
|
|
153
|
+
});
|
|
154
|
+
parentScrollLocked = [];
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
};
|
|
158
|
+
const useLockParentScroll = (enabled, getScrollElement) => {
|
|
159
|
+
react.useEffect(() => {
|
|
160
|
+
if (!enabled) {
|
|
161
|
+
return undefined;
|
|
162
|
+
}
|
|
163
|
+
return lockParentScroll(getScrollElement);
|
|
164
|
+
}, [enabled, getScrollElement]);
|
|
165
|
+
};
|
|
166
|
+
|
|
119
167
|
const ModalLocaleRoot = withLocale(({
|
|
120
168
|
children
|
|
121
169
|
}) => children);
|
|
@@ -135,20 +183,10 @@ const wrapCustomGetContainer$2 = customGetContainer => {
|
|
|
135
183
|
return () => customGetContainer;
|
|
136
184
|
};
|
|
137
185
|
const VIEWPORT_EXAMPLE_SELECTORS$3 = ['.example-driver-device-scroll'];
|
|
138
|
-
const viewportPopupMountOptions$
|
|
186
|
+
const viewportPopupMountOptions$3 = {
|
|
139
187
|
cover: 'viewport',
|
|
140
188
|
exampleSelectors: VIEWPORT_EXAMPLE_SELECTORS$3
|
|
141
189
|
};
|
|
142
|
-
const findParentModalMountHost = node => {
|
|
143
|
-
if (!node || typeof node.closest !== 'function') {
|
|
144
|
-
return null;
|
|
145
|
-
}
|
|
146
|
-
const parentRoot = node.closest('.ant-modal-root');
|
|
147
|
-
if (!parentRoot) {
|
|
148
|
-
return null;
|
|
149
|
-
}
|
|
150
|
-
return parentRoot.parentElement || (typeof document !== 'undefined' ? document.body : null);
|
|
151
|
-
};
|
|
152
190
|
const resolveModalGetContainer = ({
|
|
153
191
|
customGetContainer,
|
|
154
192
|
getPopupContainer,
|
|
@@ -163,58 +201,13 @@ const resolveModalGetContainer = ({
|
|
|
163
201
|
}
|
|
164
202
|
}
|
|
165
203
|
const from = triggerNode || (typeof getHostNode === 'function' ? getHostNode() : null);
|
|
166
|
-
const nestedHost =
|
|
204
|
+
const nestedHost = responsiveUtils.hoistOutOfModalRoot(from);
|
|
167
205
|
if (nestedHost) {
|
|
168
206
|
return nestedHost;
|
|
169
207
|
}
|
|
170
208
|
return getPopupContainer(triggerNode);
|
|
171
209
|
};
|
|
172
210
|
};
|
|
173
|
-
let parentScrollLockCount$1 = 0;
|
|
174
|
-
let parentScrollLocked$1 = [];
|
|
175
|
-
const lockParentScroll$1 = getScrollElement => {
|
|
176
|
-
parentScrollLockCount$1 += 1;
|
|
177
|
-
if (parentScrollLockCount$1 === 1) {
|
|
178
|
-
const targets = [document.body];
|
|
179
|
-
const scrollEl = typeof getScrollElement === 'function' ? getScrollElement() : null;
|
|
180
|
-
if (scrollEl && scrollEl !== document.body && !targets.includes(scrollEl)) {
|
|
181
|
-
targets.push(scrollEl);
|
|
182
|
-
}
|
|
183
|
-
parentScrollLocked$1 = targets.map(el => {
|
|
184
|
-
const prev = {
|
|
185
|
-
overflow: el.style.overflow,
|
|
186
|
-
overscrollBehavior: el.style.overscrollBehavior
|
|
187
|
-
};
|
|
188
|
-
el.style.overflow = 'hidden';
|
|
189
|
-
el.style.overscrollBehavior = 'none';
|
|
190
|
-
return {
|
|
191
|
-
el,
|
|
192
|
-
prev
|
|
193
|
-
};
|
|
194
|
-
});
|
|
195
|
-
}
|
|
196
|
-
return () => {
|
|
197
|
-
parentScrollLockCount$1 = Math.max(0, parentScrollLockCount$1 - 1);
|
|
198
|
-
if (parentScrollLockCount$1 === 0) {
|
|
199
|
-
parentScrollLocked$1.forEach(({
|
|
200
|
-
el,
|
|
201
|
-
prev
|
|
202
|
-
}) => {
|
|
203
|
-
el.style.overflow = prev.overflow;
|
|
204
|
-
el.style.overscrollBehavior = prev.overscrollBehavior;
|
|
205
|
-
});
|
|
206
|
-
parentScrollLocked$1 = [];
|
|
207
|
-
}
|
|
208
|
-
};
|
|
209
|
-
};
|
|
210
|
-
const useLockParentScroll$1 = (enabled, getScrollElement) => {
|
|
211
|
-
react.useEffect(() => {
|
|
212
|
-
if (!enabled) {
|
|
213
|
-
return undefined;
|
|
214
|
-
}
|
|
215
|
-
return lockParentScroll$1(getScrollElement);
|
|
216
|
-
}, [enabled, getScrollElement]);
|
|
217
|
-
};
|
|
218
211
|
const sizeStyleVars$1 = (size, hasFooter) => {
|
|
219
212
|
const minBase = size === 'small' ? 300 : 500;
|
|
220
213
|
const chrome = 48 + (hasFooter ? 58 : 0);
|
|
@@ -260,6 +253,15 @@ const ModalOuter = ({
|
|
|
260
253
|
children: children
|
|
261
254
|
});
|
|
262
255
|
const bodyClassName = classnames__default["default"](modalStyle['modal-body'], 'modal-body');
|
|
256
|
+
// 移动端全屏:body 用 flex 吃满 title/footer 之间剩余高度,footer 才能贴底;
|
|
257
|
+
// 勿写死 --kne-modal-body-height(高度受限类会把该值压矮,footer 悬在中间)
|
|
258
|
+
const bodyStyle = isMobile ? {
|
|
259
|
+
flex: '1 1 auto',
|
|
260
|
+
minHeight: 0,
|
|
261
|
+
height: 'auto'
|
|
262
|
+
} : {
|
|
263
|
+
height: 'var(--kne-modal-body-height)'
|
|
264
|
+
};
|
|
263
265
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
264
266
|
className: classnames__default["default"](modalStyle['modal-outer'], 'modal-container', {
|
|
265
267
|
[modalStyle['is-mobile']]: isMobile,
|
|
@@ -282,12 +284,14 @@ const ModalOuter = ({
|
|
|
282
284
|
children: title
|
|
283
285
|
}) : null, bodyScroll !== false ? /*#__PURE__*/jsxRuntime.jsx(SimpleBar__default["default"], {
|
|
284
286
|
className: bodyClassName,
|
|
285
|
-
style:
|
|
286
|
-
height: 'var(--kne-modal-body-height)'
|
|
287
|
-
},
|
|
287
|
+
style: bodyStyle,
|
|
288
288
|
children: bodyInner
|
|
289
289
|
}) : /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
290
290
|
className: classnames__default["default"](bodyClassName, modalStyle['body-scroll-off']),
|
|
291
|
+
style: isMobile ? {
|
|
292
|
+
flex: '1 1 auto',
|
|
293
|
+
minHeight: 0
|
|
294
|
+
} : undefined,
|
|
291
295
|
children: bodyInner
|
|
292
296
|
}), footer === null && footerButtons === undefined ? null : /*#__PURE__*/jsxRuntime.jsx(Footer, {
|
|
293
297
|
footer: footer,
|
|
@@ -434,12 +438,12 @@ const Modal = withLocale(({
|
|
|
434
438
|
fixedModeClass,
|
|
435
439
|
getPopupContainer,
|
|
436
440
|
anchorRef
|
|
437
|
-
} = responsiveUtils.
|
|
438
|
-
...viewportPopupMountOptions$
|
|
441
|
+
} = responsiveUtils.usePopupMount({
|
|
442
|
+
...viewportPopupMountOptions$3,
|
|
439
443
|
getPopupContainer: wrapCustomGetContainer$2(getContainer)
|
|
440
444
|
});
|
|
441
445
|
const getScrollElement = responsiveUtils.useScrollElement();
|
|
442
|
-
useLockParentScroll
|
|
446
|
+
useLockParentScroll(!!open, getScrollElement);
|
|
443
447
|
const setAnchorRef = node => {
|
|
444
448
|
hostRef.current = node;
|
|
445
449
|
anchorRef(node);
|
|
@@ -475,7 +479,7 @@ const useModal = () => {
|
|
|
475
479
|
const {
|
|
476
480
|
resolveMount,
|
|
477
481
|
getPopupContainer
|
|
478
|
-
} = responsiveUtils.
|
|
482
|
+
} = responsiveUtils.usePopupMount(viewportPopupMountOptions$3);
|
|
479
483
|
const getScrollElement = responsiveUtils.useScrollElement();
|
|
480
484
|
return props => {
|
|
481
485
|
const anchor = typeof document !== 'undefined' ? document.activeElement : null;
|
|
@@ -483,7 +487,7 @@ const useModal = () => {
|
|
|
483
487
|
isMobile,
|
|
484
488
|
fixedModeClass
|
|
485
489
|
} = resolveMount(anchor);
|
|
486
|
-
const unlock = lockParentScroll
|
|
490
|
+
const unlock = lockParentScroll(getScrollElement);
|
|
487
491
|
const api = {};
|
|
488
492
|
const {
|
|
489
493
|
afterClose: userAfterClose,
|
|
@@ -554,8 +558,10 @@ const DrawerLocaleRoot = withLocale(({
|
|
|
554
558
|
children
|
|
555
559
|
}) => children);
|
|
556
560
|
const VIEWPORT_EXAMPLE_SELECTORS$2 = ['.example-driver-device-scroll'];
|
|
557
|
-
|
|
558
|
-
|
|
561
|
+
|
|
562
|
+
// 与 Modal 一致:真机挂 body+fixed;示例框 / container 模式仍走 boundary(usePopupMount 内判定)
|
|
563
|
+
const viewportPopupMountOptions$2 = {
|
|
564
|
+
cover: 'viewport',
|
|
559
565
|
exampleSelectors: VIEWPORT_EXAMPLE_SELECTORS$2
|
|
560
566
|
};
|
|
561
567
|
const renderWithOptions = (value, options) => {
|
|
@@ -605,51 +611,6 @@ const resolveDrawerGetContainer = ({
|
|
|
605
611
|
return getPopupContainer(triggerNode);
|
|
606
612
|
};
|
|
607
613
|
};
|
|
608
|
-
let parentScrollLockCount = 0;
|
|
609
|
-
let parentScrollLocked = [];
|
|
610
|
-
const lockParentScroll = getScrollElement => {
|
|
611
|
-
parentScrollLockCount += 1;
|
|
612
|
-
if (parentScrollLockCount === 1) {
|
|
613
|
-
const targets = [document.body];
|
|
614
|
-
const scrollEl = typeof getScrollElement === 'function' ? getScrollElement() : null;
|
|
615
|
-
if (scrollEl && scrollEl !== document.body && !targets.includes(scrollEl)) {
|
|
616
|
-
targets.push(scrollEl);
|
|
617
|
-
}
|
|
618
|
-
parentScrollLocked = targets.map(el => {
|
|
619
|
-
const prev = {
|
|
620
|
-
overflow: el.style.overflow,
|
|
621
|
-
overscrollBehavior: el.style.overscrollBehavior
|
|
622
|
-
};
|
|
623
|
-
el.style.overflow = 'hidden';
|
|
624
|
-
el.style.overscrollBehavior = 'none';
|
|
625
|
-
return {
|
|
626
|
-
el,
|
|
627
|
-
prev
|
|
628
|
-
};
|
|
629
|
-
});
|
|
630
|
-
}
|
|
631
|
-
return () => {
|
|
632
|
-
parentScrollLockCount = Math.max(0, parentScrollLockCount - 1);
|
|
633
|
-
if (parentScrollLockCount === 0) {
|
|
634
|
-
parentScrollLocked.forEach(({
|
|
635
|
-
el,
|
|
636
|
-
prev
|
|
637
|
-
}) => {
|
|
638
|
-
el.style.overflow = prev.overflow;
|
|
639
|
-
el.style.overscrollBehavior = prev.overscrollBehavior;
|
|
640
|
-
});
|
|
641
|
-
parentScrollLocked = [];
|
|
642
|
-
}
|
|
643
|
-
};
|
|
644
|
-
};
|
|
645
|
-
const useLockParentScroll = (enabled, getScrollElement) => {
|
|
646
|
-
react.useEffect(() => {
|
|
647
|
-
if (!enabled) {
|
|
648
|
-
return undefined;
|
|
649
|
-
}
|
|
650
|
-
return lockParentScroll(getScrollElement);
|
|
651
|
-
}, [enabled, getScrollElement]);
|
|
652
|
-
};
|
|
653
614
|
const sizeStyleVars = (size, hasFooter) => {
|
|
654
615
|
const minBase = size === 'small' ? 300 : 500;
|
|
655
616
|
const chrome = 48 + (hasFooter ? 69 : 0);
|
|
@@ -896,8 +857,8 @@ const Drawer = withLocale(({
|
|
|
896
857
|
fixedModeClass,
|
|
897
858
|
getPopupContainer,
|
|
898
859
|
anchorRef
|
|
899
|
-
} = responsiveUtils.
|
|
900
|
-
...
|
|
860
|
+
} = responsiveUtils.usePopupMount({
|
|
861
|
+
...viewportPopupMountOptions$2,
|
|
901
862
|
getPopupContainer: wrapCustomGetContainer$1(getContainer)
|
|
902
863
|
});
|
|
903
864
|
const getScrollElement = responsiveUtils.useScrollElement();
|
|
@@ -943,8 +904,10 @@ const usePatchElement = () => {
|
|
|
943
904
|
};
|
|
944
905
|
|
|
945
906
|
const VIEWPORT_EXAMPLE_SELECTORS$1 = ['.example-driver-device-scroll'];
|
|
946
|
-
|
|
947
|
-
|
|
907
|
+
|
|
908
|
+
// 与 Modal / Drawer 一致:真机 viewport;示例框 / container 仍 boundary
|
|
909
|
+
const viewportPopupMountOptions$1 = {
|
|
910
|
+
cover: 'viewport',
|
|
948
911
|
exampleSelectors: VIEWPORT_EXAMPLE_SELECTORS$1
|
|
949
912
|
};
|
|
950
913
|
const wrapCustomGetContainer = customGetContainer => {
|
|
@@ -970,8 +933,8 @@ const HookDrawer = /*#__PURE__*/react.forwardRef(({
|
|
|
970
933
|
const {
|
|
971
934
|
getPopupContainer,
|
|
972
935
|
anchorRef
|
|
973
|
-
} = responsiveUtils.
|
|
974
|
-
...
|
|
936
|
+
} = responsiveUtils.usePopupMount({
|
|
937
|
+
...viewportPopupMountOptions$1,
|
|
975
938
|
getPopupContainer: wrapCustomGetContainer(innerConfig.getContainer)
|
|
976
939
|
});
|
|
977
940
|
const close = () => {
|
|
@@ -1038,7 +1001,7 @@ const useDrawerHolder = () => {
|
|
|
1038
1001
|
const {
|
|
1039
1002
|
resolveMount,
|
|
1040
1003
|
getPopupContainer
|
|
1041
|
-
} = responsiveUtils.
|
|
1004
|
+
} = responsiveUtils.usePopupMount(viewportPopupMountOptions$1);
|
|
1042
1005
|
const getScrollElement = responsiveUtils.useScrollElement();
|
|
1043
1006
|
react.useEffect(() => {
|
|
1044
1007
|
if (actionQueue.length) {
|
|
@@ -1298,7 +1261,7 @@ const useConfirmModal = () => {
|
|
|
1298
1261
|
const {
|
|
1299
1262
|
resolveMount,
|
|
1300
1263
|
getPopupContainer
|
|
1301
|
-
} = responsiveUtils.
|
|
1264
|
+
} = responsiveUtils.usePopupMount(viewportPopupMountOptions);
|
|
1302
1265
|
const getScrollElement = responsiveUtils.useScrollElement();
|
|
1303
1266
|
return props => {
|
|
1304
1267
|
const anchor = typeof document !== 'undefined' ? document.activeElement : null;
|
|
@@ -1306,7 +1269,7 @@ const useConfirmModal = () => {
|
|
|
1306
1269
|
isMobile,
|
|
1307
1270
|
fixedModeClass
|
|
1308
1271
|
} = resolveMount(anchor);
|
|
1309
|
-
const unlock = lockParentScroll
|
|
1272
|
+
const unlock = lockParentScroll(getScrollElement);
|
|
1310
1273
|
const api = {};
|
|
1311
1274
|
const {
|
|
1312
1275
|
afterClose: userAfterClose,
|