@delon/abc 12.4.0 → 13.0.0-beta.2
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/abc.d.ts +1 -0
- package/auto-focus/auto-focus.directive.d.ts +7 -2
- package/auto-focus/auto-focus.module.d.ts +5 -0
- package/auto-focus/autoFocus.d.ts +1 -0
- package/auto-focus/package.json +5 -6
- package/avatar-list/avatar-list-item.component.d.ts +7 -4
- package/avatar-list/avatar-list.component.d.ts +4 -1
- package/avatar-list/avatar-list.module.d.ts +9 -0
- package/avatar-list/avatarList.d.ts +1 -0
- package/avatar-list/package.json +5 -6
- package/avatar-list/style/index.less +6 -0
- package/count-down/count-down.component.d.ts +4 -1
- package/count-down/count-down.d.ts +1 -0
- package/count-down/count-down.module.d.ts +7 -0
- package/count-down/package.json +5 -6
- package/date-picker/date-picker.module.d.ts +9 -0
- package/date-picker/datePicker.d.ts +1 -1
- package/date-picker/package.json +5 -6
- package/date-picker/public_api.d.ts +1 -0
- package/date-picker/range-shortcut.component.d.ts +3 -0
- package/date-picker/range.directive.d.ts +3 -0
- package/down-file/down-file.directive.d.ts +5 -2
- package/down-file/down-file.module.d.ts +7 -0
- package/down-file/downFile.d.ts +1 -0
- package/down-file/package.json +5 -6
- package/ellipsis/ellipsis.component.d.ts +5 -2
- package/ellipsis/ellipsis.d.ts +1 -0
- package/ellipsis/ellipsis.module.d.ts +8 -0
- package/ellipsis/package.json +5 -6
- package/ellipsis/style/index.less +4 -0
- package/error-collect/error-collect.component.d.ts +3 -0
- package/error-collect/error-collect.module.d.ts +7 -0
- package/error-collect/errorCollect.d.ts +1 -0
- package/error-collect/package.json +5 -6
- package/error-collect/style/index.less +1 -0
- package/{esm2015/abc.js → esm2020/abc.mjs} +0 -0
- package/esm2020/auto-focus/auto-focus.directive.mjs +48 -0
- package/esm2020/auto-focus/auto-focus.module.mjs +17 -0
- package/{esm2015/auto-focus/autoFocus.js → esm2020/auto-focus/autoFocus.mjs} +0 -0
- package/{esm2015/auto-focus/index.js → esm2020/auto-focus/index.mjs} +0 -0
- package/esm2020/avatar-list/avatar-list-item.component.mjs +26 -0
- package/esm2020/avatar-list/avatar-list.component.mjs +89 -0
- package/esm2020/avatar-list/avatar-list.module.mjs +22 -0
- package/{esm2015/avatar-list/avatarList.js → esm2020/avatar-list/avatarList.mjs} +0 -0
- package/{esm2015/avatar-list/public_api.js → esm2020/avatar-list/public_api.mjs} +0 -0
- package/esm2020/count-down/count-down.component.mjs +45 -0
- package/{esm2015/count-down/count-down.js → esm2020/count-down/count-down.mjs} +0 -0
- package/esm2020/count-down/count-down.module.mjs +20 -0
- package/{esm2015/count-down/public_api.js → esm2020/count-down/public_api.mjs} +0 -0
- package/esm2020/date-picker/date-picker.module.mjs +22 -0
- package/esm2020/date-picker/datePicker.mjs +5 -0
- package/{esm2015/date-picker/public_api.js → esm2020/date-picker/public_api.mjs} +2 -1
- package/esm2020/date-picker/range-shortcut.component.mjs +40 -0
- package/esm2020/date-picker/range.directive.mjs +174 -0
- package/esm2020/down-file/down-file.directive.mjs +114 -0
- package/esm2020/down-file/down-file.module.mjs +20 -0
- package/{esm2015/down-file/downFile.js → esm2020/down-file/downFile.mjs} +0 -0
- package/{esm2015/down-file/public_api.js → esm2020/down-file/public_api.mjs} +0 -0
- package/esm2020/ellipsis/ellipsis.component.mjs +229 -0
- package/{esm2015/ellipsis/ellipsis.js → esm2020/ellipsis/ellipsis.mjs} +0 -0
- package/esm2020/ellipsis/ellipsis.module.mjs +21 -0
- package/{esm2015/ellipsis/public_api.js → esm2020/ellipsis/public_api.mjs} +0 -0
- package/esm2020/error-collect/error-collect.component.mjs +118 -0
- package/esm2020/error-collect/error-collect.module.mjs +20 -0
- package/{esm2015/error-collect/errorCollect.js → esm2020/error-collect/errorCollect.mjs} +0 -0
- package/{esm2015/error-collect/public_api.js → esm2020/error-collect/public_api.mjs} +0 -0
- package/esm2020/exception/exception.component.mjs +105 -0
- package/{esm2015/exception/exception.js → esm2020/exception/exception.mjs} +0 -0
- package/esm2020/exception/exception.module.mjs +23 -0
- package/{esm2015/exception/public_api.js → esm2020/exception/public_api.mjs} +0 -0
- package/esm2020/footer-toolbar/footer-toolbar.component.mjs +44 -0
- package/esm2020/footer-toolbar/footer-toolbar.module.mjs +21 -0
- package/{esm2015/footer-toolbar/footerToolbar.js → esm2020/footer-toolbar/footerToolbar.mjs} +0 -0
- package/{esm2015/footer-toolbar/public_api.js → esm2020/footer-toolbar/public_api.mjs} +0 -0
- package/esm2020/full-content/full-content-toggle.directive.mjs +24 -0
- package/esm2020/full-content/full-content.component.mjs +138 -0
- package/esm2020/full-content/full-content.module.mjs +20 -0
- package/esm2020/full-content/full-content.service.mjs +23 -0
- package/{esm2015/full-content/fullContent.js → esm2020/full-content/fullContent.mjs} +0 -0
- package/{esm2015/full-content/public_api.js → esm2020/full-content/public_api.mjs} +0 -0
- package/esm2020/global-footer/global-footer-item.component.mjs +30 -0
- package/esm2020/global-footer/global-footer.component.mjs +73 -0
- package/esm2020/global-footer/global-footer.module.mjs +21 -0
- package/{esm2015/global-footer/global-footer.types.js → esm2020/global-footer/global-footer.types.mjs} +0 -0
- package/{esm2015/global-footer/globalFooter.js → esm2020/global-footer/globalFooter.mjs} +0 -0
- package/{esm2015/global-footer/public_api.js → esm2020/global-footer/public_api.mjs} +0 -0
- package/esm2020/image/image.directive.mjs +146 -0
- package/{esm2015/image/image.js → esm2020/image/image.mjs} +0 -0
- package/esm2020/image/image.module.mjs +20 -0
- package/{esm2015/image/public_api.js → esm2020/image/public_api.mjs} +0 -0
- package/{esm2015/let/index.js → esm2020/let/index.mjs} +0 -0
- package/esm2020/let/let.directive.mjs +36 -0
- package/{esm2015/let/let.js → esm2020/let/let.mjs} +0 -0
- package/esm2020/let/let.module.mjs +17 -0
- package/esm2020/loading/loading.component.mjs +26 -0
- package/{esm2015/loading/loading.js → esm2020/loading/loading.mjs} +0 -0
- package/esm2020/loading/loading.module.mjs +24 -0
- package/esm2020/loading/loading.service.mjs +88 -0
- package/{esm2015/loading/loading.types.js → esm2020/loading/loading.types.mjs} +0 -0
- package/{esm2015/loading/public_api.js → esm2020/loading/public_api.mjs} +0 -0
- package/{esm2015/lodop/lodop.js → esm2020/lodop/lodop.mjs} +0 -0
- package/esm2020/lodop/lodop.module.mjs +12 -0
- package/esm2020/lodop/lodop.service.mjs +222 -0
- package/esm2020/lodop/lodop.types.mjs +2 -0
- package/{esm2015/lodop/public_api.js → esm2020/lodop/public_api.mjs} +0 -0
- package/esm2020/media/media.component.mjs +106 -0
- package/{esm2015/media/media.js → esm2020/media/media.mjs} +0 -0
- package/esm2020/media/media.module.mjs +19 -0
- package/esm2020/media/media.service.mjs +46 -0
- package/{esm2015/media/plyr.types.js → esm2020/media/plyr.types.mjs} +0 -0
- package/{esm2015/media/public_api.js → esm2020/media/public_api.mjs} +0 -0
- package/esm2020/notice-icon/notice-icon-tab.component.mjs +34 -0
- package/esm2020/notice-icon/notice-icon.component.mjs +80 -0
- package/esm2020/notice-icon/notice-icon.module.mjs +60 -0
- package/{esm2015/notice-icon/notice-icon.types.js → esm2020/notice-icon/notice-icon.types.mjs} +0 -0
- package/{esm2015/notice-icon/noticeIcon.js → esm2020/notice-icon/noticeIcon.mjs} +0 -0
- package/{esm2015/notice-icon/public_api.js → esm2020/notice-icon/public_api.mjs} +0 -0
- package/esm2020/onboarding/onboarding.component.mjs +134 -0
- package/{esm2015/onboarding/onboarding.js → esm2020/onboarding/onboarding.mjs} +0 -0
- package/esm2020/onboarding/onboarding.module.mjs +25 -0
- package/esm2020/onboarding/onboarding.service.mjs +185 -0
- package/{esm2015/onboarding/onboarding.types.js → esm2020/onboarding/onboarding.types.mjs} +0 -0
- package/{esm2015/onboarding/public_api.js → esm2020/onboarding/public_api.mjs} +0 -0
- package/esm2020/page-header/page-header.component.mjs +247 -0
- package/esm2020/page-header/page-header.module.mjs +24 -0
- package/{esm2015/page-header/pageHeader.js → esm2020/page-header/pageHeader.mjs} +0 -0
- package/{esm2015/page-header/public_api.js → esm2020/page-header/public_api.mjs} +0 -0
- package/esm2020/pdf/pdf.component.mjs +460 -0
- package/{esm2015/pdf/pdf.config.js → esm2020/pdf/pdf.config.mjs} +2 -2
- package/{esm2015/pdf/pdf.js → esm2020/pdf/pdf.mjs} +0 -0
- package/esm2020/pdf/pdf.module.mjs +20 -0
- package/{esm2015/pdf/pdf.types.js → esm2020/pdf/pdf.types.mjs} +0 -0
- package/{esm2015/pdf/public_api.js → esm2020/pdf/public_api.mjs} +0 -0
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/{esm2015/qr/public_api.js → esm2020/qr/public_api.mjs} +0 -0
- package/esm2020/qr/qr.component.mjs +136 -0
- package/{esm2015/qr/qr.config.js → esm2020/qr/qr.config.mjs} +2 -2
- package/{esm2015/qr/qr.js → esm2020/qr/qr.mjs} +0 -0
- package/esm2020/qr/qr.module.mjs +19 -0
- package/{esm2015/qr/qr.types.js → esm2020/qr/qr.types.mjs} +0 -0
- package/{esm2015/quick-menu/public_api.js → esm2020/quick-menu/public_api.mjs} +0 -0
- package/esm2020/quick-menu/quick-menu.component.mjs +89 -0
- package/esm2020/quick-menu/quick-menu.module.mjs +21 -0
- package/{esm2015/quick-menu/quickMenu.js → esm2020/quick-menu/quickMenu.mjs} +0 -0
- package/{esm2015/result/public_api.js → esm2020/result/public_api.mjs} +0 -0
- package/esm2020/result/result.component.mjs +61 -0
- package/{esm2015/result/result.js → esm2020/result/result.mjs} +0 -0
- package/esm2020/result/result.module.mjs +21 -0
- package/{esm2015/reuse-tab/lifecycle_hooks.js → esm2020/reuse-tab/lifecycle_hooks.mjs} +0 -0
- package/{esm2015/reuse-tab/public_api.js → esm2020/reuse-tab/public_api.mjs} +0 -0
- package/esm2020/reuse-tab/reuse-tab-context-menu.component.mjs +76 -0
- package/esm2020/reuse-tab/reuse-tab-context.component.mjs +33 -0
- package/esm2020/reuse-tab/reuse-tab-context.directive.mjs +35 -0
- package/esm2020/reuse-tab/reuse-tab-context.service.mjs +55 -0
- package/esm2020/reuse-tab/reuse-tab.component.mjs +318 -0
- package/{esm2015/reuse-tab/reuse-tab.interfaces.js → esm2020/reuse-tab/reuse-tab.interfaces.mjs} +0 -0
- package/esm2020/reuse-tab/reuse-tab.module.mjs +29 -0
- package/esm2020/reuse-tab/reuse-tab.service.mjs +533 -0
- package/{esm2015/reuse-tab/reuse-tab.strategy.js → esm2020/reuse-tab/reuse-tab.strategy.mjs} +0 -0
- package/{esm2015/reuse-tab/reuseTab.js → esm2020/reuse-tab/reuseTab.mjs} +0 -0
- package/{esm2015/se/edit.js → esm2020/se/edit.mjs} +0 -0
- package/esm2020/se/public_api.mjs +5 -0
- package/esm2020/se/se-container.component.mjs +173 -0
- package/esm2020/se/se.component.mjs +233 -0
- package/esm2020/se/se.module.mjs +23 -0
- package/{esm2015/se/se.types.js → esm2020/se/se.types.mjs} +0 -0
- package/{esm2015/sg/grid.js → esm2020/sg/grid.mjs} +0 -0
- package/{esm2015/sg/public_api.js → esm2020/sg/public_api.mjs} +0 -0
- package/esm2020/sg/sg-container.component.mjs +52 -0
- package/esm2020/sg/sg.component.mjs +67 -0
- package/esm2020/sg/sg.module.mjs +20 -0
- package/{esm2015/st/public_api.js → esm2020/st/public_api.mjs} +0 -0
- package/esm2020/st/st-column-source.mjs +470 -0
- package/esm2020/st/st-data-source.mjs +448 -0
- package/esm2020/st/st-export.mjs +89 -0
- package/esm2020/st/st-filter.component.mjs +262 -0
- package/esm2020/st/st-row.directive.mjs +45 -0
- package/esm2020/st/st-widget-host.directive.mjs +31 -0
- package/esm2020/st/st-widget.mjs +26 -0
- package/esm2020/st/st.component.mjs +969 -0
- package/{esm2015/st/st.config.js → esm2020/st/st.config.mjs} +0 -0
- package/esm2020/st/st.interfaces.mjs +2 -0
- package/esm2020/st/st.module.mjs +98 -0
- package/{esm2015/st/st.types.js → esm2020/st/st.types.mjs} +0 -0
- package/esm2020/st/table.mjs +5 -0
- package/esm2020/sv/public_api.mjs +5 -0
- package/esm2020/sv/sv-container.component.mjs +125 -0
- package/esm2020/sv/sv-value.component.mjs +44 -0
- package/esm2020/sv/sv.component.mjs +113 -0
- package/esm2020/sv/sv.module.mjs +25 -0
- package/{esm2015/sv/view.js → esm2020/sv/view.mjs} +0 -0
- package/{esm2015/tag-select/public_api.js → esm2020/tag-select/public_api.mjs} +0 -0
- package/esm2020/tag-select/tag-select.component.mjs +64 -0
- package/esm2020/tag-select/tag-select.module.mjs +21 -0
- package/{esm2015/tag-select/tagSelect.js → esm2020/tag-select/tagSelect.mjs} +0 -0
- package/{esm2015/xlsx/public_api.js → esm2020/xlsx/public_api.mjs} +0 -0
- package/esm2020/xlsx/xlsx.directive.mjs +27 -0
- package/{esm2015/xlsx/xlsx.js → esm2020/xlsx/xlsx.mjs} +0 -0
- package/esm2020/xlsx/xlsx.module.mjs +19 -0
- package/esm2020/xlsx/xlsx.service.mjs +128 -0
- package/{esm2015/xlsx/xlsx.types.js → esm2020/xlsx/xlsx.types.mjs} +0 -0
- package/{esm2015/zip/public_api.js → esm2020/zip/public_api.mjs} +0 -0
- package/{esm2015/zip/zip.js → esm2020/zip/zip.mjs} +0 -0
- package/esm2020/zip/zip.module.mjs +15 -0
- package/esm2020/zip/zip.service.mjs +114 -0
- package/{esm2015/zip/zip.types.js → esm2020/zip/zip.types.mjs} +0 -0
- package/exception/exception.component.d.ts +3 -0
- package/exception/exception.d.ts +1 -0
- package/exception/exception.module.d.ts +10 -0
- package/exception/package.json +5 -6
- package/exception/style/index.less +9 -0
- package/fesm2015/{abc.js → abc.mjs} +1 -1
- package/fesm2015/abc.mjs.map +1 -0
- package/fesm2015/autoFocus.mjs +69 -0
- package/fesm2015/autoFocus.mjs.map +1 -0
- package/fesm2015/avatarList.mjs +140 -0
- package/fesm2015/avatarList.mjs.map +1 -0
- package/fesm2015/count-down.mjs +69 -0
- package/fesm2015/count-down.mjs.map +1 -0
- package/fesm2015/{datePicker.js → datePicker.mjs} +63 -40
- package/fesm2015/datePicker.mjs.map +1 -0
- package/fesm2015/downFile.mjs +141 -0
- package/fesm2015/downFile.mjs.map +1 -0
- package/fesm2015/edit.mjs +443 -0
- package/fesm2015/edit.mjs.map +1 -0
- package/fesm2015/ellipsis.mjs +255 -0
- package/fesm2015/ellipsis.mjs.map +1 -0
- package/fesm2015/errorCollect.mjs +144 -0
- package/fesm2015/errorCollect.mjs.map +1 -0
- package/fesm2015/exception.mjs +135 -0
- package/fesm2015/exception.mjs.map +1 -0
- package/fesm2015/footerToolbar.mjs +70 -0
- package/fesm2015/footerToolbar.mjs.map +1 -0
- package/fesm2015/fullContent.mjs +202 -0
- package/fesm2015/fullContent.mjs.map +1 -0
- package/fesm2015/globalFooter.mjs +127 -0
- package/fesm2015/globalFooter.mjs.map +1 -0
- package/fesm2015/grid.mjs +139 -0
- package/fesm2015/grid.mjs.map +1 -0
- package/fesm2015/image.mjs +165 -0
- package/fesm2015/image.mjs.map +1 -0
- package/fesm2015/let.mjs +59 -0
- package/fesm2015/let.mjs.map +1 -0
- package/fesm2015/loading.mjs +140 -0
- package/fesm2015/loading.mjs.map +1 -0
- package/fesm2015/{lodop.js → lodop.mjs} +15 -15
- package/fesm2015/lodop.mjs.map +1 -0
- package/fesm2015/media.mjs +170 -0
- package/fesm2015/media.mjs.map +1 -0
- package/fesm2015/noticeIcon.mjs +173 -0
- package/fesm2015/noticeIcon.mjs.map +1 -0
- package/fesm2015/onboarding.mjs +335 -0
- package/fesm2015/onboarding.mjs.map +1 -0
- package/fesm2015/pageHeader.mjs +277 -0
- package/fesm2015/pageHeader.mjs.map +1 -0
- package/fesm2015/{pdf.js → pdf.mjs} +81 -54
- package/fesm2015/pdf.mjs.map +1 -0
- package/fesm2015/qr.mjs +171 -0
- package/fesm2015/qr.mjs.map +1 -0
- package/fesm2015/quickMenu.mjs +114 -0
- package/fesm2015/quickMenu.mjs.map +1 -0
- package/fesm2015/result.mjs +89 -0
- package/fesm2015/result.mjs.map +1 -0
- package/fesm2015/{reuseTab.js → reuseTab.mjs} +183 -160
- package/fesm2015/reuseTab.mjs.map +1 -0
- package/fesm2015/{table.js → table.mjs} +610 -492
- package/fesm2015/table.mjs.map +1 -0
- package/fesm2015/tagSelect.mjs +92 -0
- package/fesm2015/tagSelect.mjs.map +1 -0
- package/fesm2015/view.mjs +302 -0
- package/fesm2015/view.mjs.map +1 -0
- package/fesm2015/{xlsx.js → xlsx.mjs} +42 -42
- package/fesm2015/xlsx.mjs.map +1 -0
- package/fesm2015/{zip.js → zip.mjs} +35 -32
- package/fesm2015/zip.mjs.map +1 -0
- package/fesm2020/abc.mjs +7 -0
- package/fesm2020/abc.mjs.map +1 -0
- package/fesm2020/autoFocus.mjs +69 -0
- package/fesm2020/autoFocus.mjs.map +1 -0
- package/fesm2020/avatarList.mjs +137 -0
- package/fesm2020/avatarList.mjs.map +1 -0
- package/fesm2020/count-down.mjs +69 -0
- package/fesm2020/count-down.mjs.map +1 -0
- package/fesm2020/datePicker.mjs +236 -0
- package/fesm2020/datePicker.mjs.map +1 -0
- package/fesm2020/downFile.mjs +138 -0
- package/fesm2020/downFile.mjs.map +1 -0
- package/fesm2020/edit.mjs +436 -0
- package/fesm2020/edit.mjs.map +1 -0
- package/fesm2020/ellipsis.mjs +253 -0
- package/fesm2020/ellipsis.mjs.map +1 -0
- package/fesm2020/errorCollect.mjs +141 -0
- package/fesm2020/errorCollect.mjs.map +1 -0
- package/fesm2020/exception.mjs +132 -0
- package/fesm2020/exception.mjs.map +1 -0
- package/fesm2020/footerToolbar.mjs +68 -0
- package/fesm2020/footerToolbar.mjs.map +1 -0
- package/fesm2020/fullContent.mjs +199 -0
- package/fesm2020/fullContent.mjs.map +1 -0
- package/fesm2020/globalFooter.mjs +124 -0
- package/fesm2020/globalFooter.mjs.map +1 -0
- package/fesm2020/grid.mjs +137 -0
- package/fesm2020/grid.mjs.map +1 -0
- package/fesm2020/image.mjs +170 -0
- package/fesm2020/image.mjs.map +1 -0
- package/fesm2020/let.mjs +57 -0
- package/fesm2020/let.mjs.map +1 -0
- package/fesm2020/loading.mjs +138 -0
- package/fesm2020/loading.mjs.map +1 -0
- package/fesm2020/lodop.mjs +239 -0
- package/fesm2020/lodop.mjs.map +1 -0
- package/fesm2020/media.mjs +172 -0
- package/fesm2020/media.mjs.map +1 -0
- package/fesm2020/noticeIcon.mjs +173 -0
- package/fesm2020/noticeIcon.mjs.map +1 -0
- package/fesm2020/onboarding.mjs +343 -0
- package/fesm2020/onboarding.mjs.map +1 -0
- package/fesm2020/pageHeader.mjs +274 -0
- package/fesm2020/pageHeader.mjs.map +1 -0
- package/fesm2020/pdf.mjs +506 -0
- package/fesm2020/pdf.mjs.map +1 -0
- package/fesm2020/qr.mjs +171 -0
- package/fesm2020/qr.mjs.map +1 -0
- package/fesm2020/quickMenu.mjs +114 -0
- package/fesm2020/quickMenu.mjs.map +1 -0
- package/fesm2020/result.mjs +86 -0
- package/fesm2020/result.mjs.map +1 -0
- package/fesm2020/reuseTab.mjs +1106 -0
- package/fesm2020/reuseTab.mjs.map +1 -0
- package/fesm2020/table.mjs +2469 -0
- package/fesm2020/table.mjs.map +1 -0
- package/fesm2020/tagSelect.mjs +89 -0
- package/fesm2020/tagSelect.mjs.map +1 -0
- package/fesm2020/view.mjs +298 -0
- package/fesm2020/view.mjs.map +1 -0
- package/fesm2020/xlsx.mjs +175 -0
- package/fesm2020/xlsx.mjs.map +1 -0
- package/fesm2020/zip.mjs +134 -0
- package/fesm2020/zip.mjs.map +1 -0
- package/footer-toolbar/footer-toolbar.component.d.ts +4 -1
- package/footer-toolbar/footer-toolbar.module.d.ts +8 -0
- package/footer-toolbar/footerToolbar.d.ts +1 -0
- package/footer-toolbar/package.json +5 -6
- package/footer-toolbar/style/index.less +1 -0
- package/full-content/full-content-toggle.directive.d.ts +3 -0
- package/full-content/full-content.component.d.ts +6 -3
- package/full-content/full-content.module.d.ts +7 -0
- package/full-content/full-content.service.d.ts +3 -0
- package/full-content/fullContent.d.ts +1 -0
- package/full-content/package.json +5 -6
- package/full-content/style/index.less +1 -0
- package/global-footer/global-footer-item.component.d.ts +5 -2
- package/global-footer/global-footer.component.d.ts +3 -0
- package/global-footer/global-footer.module.d.ts +8 -0
- package/global-footer/globalFooter.d.ts +1 -0
- package/global-footer/package.json +5 -6
- package/global-footer/style/index.less +5 -0
- package/image/image.d.ts +1 -0
- package/image/image.directive.d.ts +4 -1
- package/image/image.module.d.ts +7 -0
- package/image/package.json +5 -6
- package/let/let.d.ts +1 -0
- package/let/let.directive.d.ts +3 -0
- package/let/let.module.d.ts +5 -0
- package/let/package.json +5 -6
- package/loading/loading.component.d.ts +3 -0
- package/loading/loading.d.ts +1 -0
- package/loading/loading.module.d.ts +10 -0
- package/loading/loading.service.d.ts +4 -1
- package/loading/package.json +5 -6
- package/loading/style/index.less +3 -0
- package/lodop/lodop.d.ts +1 -0
- package/lodop/lodop.module.d.ts +4 -0
- package/lodop/lodop.service.d.ts +3 -0
- package/lodop/lodop.types.d.ts +4 -0
- package/lodop/package.json +5 -6
- package/media/media.component.d.ts +4 -1
- package/media/media.d.ts +1 -0
- package/media/media.module.d.ts +6 -0
- package/media/media.service.d.ts +3 -0
- package/media/package.json +5 -6
- package/notice-icon/notice-icon-tab.component.d.ts +3 -0
- package/notice-icon/notice-icon.component.d.ts +4 -1
- package/notice-icon/notice-icon.module.d.ts +16 -0
- package/notice-icon/noticeIcon.d.ts +1 -0
- package/notice-icon/package.json +5 -6
- package/notice-icon/style/index.less +17 -0
- package/onboarding/onboarding.component.d.ts +4 -1
- package/onboarding/onboarding.d.ts +1 -0
- package/onboarding/onboarding.module.d.ts +11 -0
- package/onboarding/onboarding.service.d.ts +3 -0
- package/onboarding/package.json +5 -6
- package/onboarding/schema.json +1 -1
- package/onboarding/style/index.less +6 -0
- package/package.json +274 -14
- package/page-header/package.json +5 -6
- package/page-header/page-header.component.d.ts +4 -1
- package/page-header/page-header.module.d.ts +11 -0
- package/page-header/pageHeader.d.ts +1 -0
- package/page-header/style/index.less +10 -0
- package/page-header/style/rtl.less +3 -0
- package/pdf/package.json +5 -6
- package/pdf/pdf.component.d.ts +5 -2
- package/pdf/pdf.d.ts +1 -0
- package/pdf/pdf.module.d.ts +7 -0
- package/qr/package.json +5 -6
- package/qr/qr.component.d.ts +13 -10
- package/qr/qr.d.ts +1 -0
- package/qr/qr.module.d.ts +6 -0
- package/quick-menu/package.json +5 -6
- package/quick-menu/quick-menu.component.d.ts +6 -3
- package/quick-menu/quick-menu.module.d.ts +8 -0
- package/quick-menu/quickMenu.d.ts +1 -0
- package/quick-menu/style/index.less +2 -0
- package/result/package.json +5 -6
- package/result/result.component.d.ts +6 -3
- package/result/result.d.ts +1 -0
- package/result/result.module.d.ts +8 -0
- package/result/style/index.less +7 -0
- package/reuse-tab/package.json +5 -6
- package/reuse-tab/reuse-tab-context-menu.component.d.ts +3 -0
- package/reuse-tab/reuse-tab-context.component.d.ts +4 -1
- package/reuse-tab/reuse-tab-context.directive.d.ts +3 -0
- package/reuse-tab/reuse-tab-context.service.d.ts +4 -1
- package/reuse-tab/reuse-tab.component.d.ts +13 -10
- package/reuse-tab/reuse-tab.module.d.ts +15 -0
- package/reuse-tab/reuse-tab.service.d.ts +7 -4
- package/reuse-tab/reuseTab.d.ts +1 -0
- package/reuse-tab/style/index.less +4 -0
- package/se/edit.d.ts +1 -0
- package/se/package.json +5 -6
- package/se/public_api.d.ts +0 -1
- package/se/se-container.component.d.ts +18 -4
- package/se/se.component.d.ts +13 -8
- package/se/se.module.d.ts +10 -0
- package/se/style/index.less +2 -0
- package/sg/grid.d.ts +1 -0
- package/sg/package.json +5 -6
- package/sg/sg-container.component.d.ts +4 -1
- package/sg/sg.component.d.ts +4 -1
- package/sg/sg.module.d.ts +7 -0
- package/st/package.json +5 -6
- package/st/st-column-source.d.ts +4 -1
- package/st/st-data-source.d.ts +3 -0
- package/st/st-export.d.ts +3 -0
- package/st/st-filter.component.d.ts +3 -0
- package/st/st-row.directive.d.ts +7 -2
- package/st/st-widget-host.directive.d.ts +5 -3
- package/st/st-widget.d.ts +3 -0
- package/st/st.component.d.ts +40 -12
- package/st/st.interfaces.d.ts +2 -2
- package/st/st.module.d.ts +27 -0
- package/st/style/index.less +8 -0
- package/st/table.d.ts +1 -3
- package/sv/package.json +5 -6
- package/sv/public_api.d.ts +0 -1
- package/sv/style/index.less +8 -0
- package/sv/sv-container.component.d.ts +16 -3
- package/sv/sv-value.component.d.ts +3 -0
- package/sv/sv.component.d.ts +13 -10
- package/sv/sv.module.d.ts +12 -0
- package/sv/view.d.ts +1 -0
- package/tag-select/package.json +5 -6
- package/tag-select/style/index.less +4 -0
- package/tag-select/style/rtl.less +3 -0
- package/tag-select/tag-select.component.d.ts +3 -0
- package/tag-select/tag-select.module.d.ts +8 -0
- package/tag-select/tagSelect.d.ts +1 -0
- package/xlsx/package.json +5 -6
- package/xlsx/xlsx.d.ts +1 -0
- package/xlsx/xlsx.directive.d.ts +3 -0
- package/xlsx/xlsx.module.d.ts +6 -0
- package/xlsx/xlsx.service.d.ts +3 -0
- package/zip/package.json +5 -6
- package/zip/zip.d.ts +1 -0
- package/zip/zip.module.d.ts +5 -0
- package/zip/zip.service.d.ts +3 -0
- package/abc.metadata.json +0 -1
- package/auto-focus/autoFocus.metadata.json +0 -1
- package/avatar-list/avatarList.metadata.json +0 -1
- package/bundles/abc.umd.js +0 -19
- package/bundles/abc.umd.js.map +0 -1
- package/bundles/autoFocus.umd.js +0 -394
- package/bundles/autoFocus.umd.js.map +0 -1
- package/bundles/avatarList.umd.js +0 -465
- package/bundles/avatarList.umd.js.map +0 -1
- package/bundles/count-down.umd.js +0 -75
- package/bundles/count-down.umd.js.map +0 -1
- package/bundles/datePicker.umd.js +0 -552
- package/bundles/datePicker.umd.js.map +0 -1
- package/bundles/downFile.umd.js +0 -474
- package/bundles/downFile.umd.js.map +0 -1
- package/bundles/edit.umd.js +0 -776
- package/bundles/edit.umd.js.map +0 -1
- package/bundles/ellipsis.umd.js +0 -578
- package/bundles/ellipsis.umd.js.map +0 -1
- package/bundles/errorCollect.umd.js +0 -461
- package/bundles/errorCollect.umd.js.map +0 -1
- package/bundles/exception.umd.js +0 -150
- package/bundles/exception.umd.js.map +0 -1
- package/bundles/footerToolbar.umd.js +0 -401
- package/bundles/footerToolbar.umd.js.map +0 -1
- package/bundles/fullContent.umd.js +0 -550
- package/bundles/fullContent.umd.js.map +0 -1
- package/bundles/globalFooter.umd.js +0 -455
- package/bundles/globalFooter.umd.js.map +0 -1
- package/bundles/grid.umd.js +0 -470
- package/bundles/grid.umd.js.map +0 -1
- package/bundles/image.umd.js +0 -482
- package/bundles/image.umd.js.map +0 -1
- package/bundles/let.umd.js +0 -76
- package/bundles/let.umd.js.map +0 -1
- package/bundles/loading.umd.js +0 -181
- package/bundles/loading.umd.js.map +0 -1
- package/bundles/lodop.umd.js +0 -605
- package/bundles/lodop.umd.js.map +0 -1
- package/bundles/media.umd.js +0 -536
- package/bundles/media.umd.js.map +0 -1
- package/bundles/noticeIcon.umd.js +0 -468
- package/bundles/noticeIcon.umd.js.map +0 -1
- package/bundles/onboarding.umd.js +0 -370
- package/bundles/onboarding.umd.js.map +0 -1
- package/bundles/pageHeader.umd.js +0 -570
- package/bundles/pageHeader.umd.js.map +0 -1
- package/bundles/pdf.umd.js +0 -863
- package/bundles/pdf.umd.js.map +0 -1
- package/bundles/qr.umd.js +0 -491
- package/bundles/qr.umd.js.map +0 -1
- package/bundles/quickMenu.umd.js +0 -442
- package/bundles/quickMenu.umd.js.map +0 -1
- package/bundles/result.umd.js +0 -100
- package/bundles/result.umd.js.map +0 -1
- package/bundles/reuseTab.umd.js +0 -1522
- package/bundles/reuseTab.umd.js.map +0 -1
- package/bundles/table.umd.js +0 -2586
- package/bundles/table.umd.js.map +0 -1
- package/bundles/tagSelect.umd.js +0 -419
- package/bundles/tagSelect.umd.js.map +0 -1
- package/bundles/view.umd.js +0 -592
- package/bundles/view.umd.js.map +0 -1
- package/bundles/xlsx.umd.js +0 -529
- package/bundles/xlsx.umd.js.map +0 -1
- package/bundles/zip.umd.js +0 -482
- package/bundles/zip.umd.js.map +0 -1
- package/count-down/count-down.metadata.json +0 -1
- package/date-picker/datePicker.metadata.json +0 -1
- package/down-file/downFile.metadata.json +0 -1
- package/ellipsis/ellipsis.metadata.json +0 -1
- package/error-collect/errorCollect.metadata.json +0 -1
- package/esm2015/auto-focus/auto-focus.directive.js +0 -42
- package/esm2015/auto-focus/auto-focus.module.js +0 -12
- package/esm2015/avatar-list/avatar-list-item.component.js +0 -20
- package/esm2015/avatar-list/avatar-list.component.js +0 -89
- package/esm2015/avatar-list/avatar-list.module.js +0 -17
- package/esm2015/count-down/count-down.component.js +0 -36
- package/esm2015/count-down/count-down.module.js +0 -15
- package/esm2015/date-picker/date-picker.module.js +0 -17
- package/esm2015/date-picker/datePicker.js +0 -6
- package/esm2015/date-picker/range-shortcut.component.js +0 -26
- package/esm2015/date-picker/range.directive.js +0 -171
- package/esm2015/down-file/down-file.directive.js +0 -103
- package/esm2015/down-file/down-file.module.js +0 -15
- package/esm2015/ellipsis/ellipsis.component.js +0 -224
- package/esm2015/ellipsis/ellipsis.module.js +0 -16
- package/esm2015/error-collect/error-collect.component.js +0 -112
- package/esm2015/error-collect/error-collect.module.js +0 -15
- package/esm2015/exception/exception.component.js +0 -103
- package/esm2015/exception/exception.module.js +0 -18
- package/esm2015/footer-toolbar/footer-toolbar.component.js +0 -46
- package/esm2015/footer-toolbar/footer-toolbar.module.js +0 -16
- package/esm2015/full-content/full-content-toggle.directive.js +0 -23
- package/esm2015/full-content/full-content.component.js +0 -135
- package/esm2015/full-content/full-content.module.js +0 -15
- package/esm2015/full-content/full-content.service.js +0 -21
- package/esm2015/global-footer/global-footer-item.component.js +0 -24
- package/esm2015/global-footer/global-footer.component.js +0 -77
- package/esm2015/global-footer/global-footer.module.js +0 -16
- package/esm2015/image/image.directive.js +0 -133
- package/esm2015/image/image.module.js +0 -15
- package/esm2015/let/let.directive.js +0 -31
- package/esm2015/let/let.module.js +0 -12
- package/esm2015/loading/loading.component.js +0 -26
- package/esm2015/loading/loading.module.js +0 -19
- package/esm2015/loading/loading.service.js +0 -92
- package/esm2015/lodop/lodop.module.js +0 -7
- package/esm2015/lodop/lodop.service.js +0 -219
- package/esm2015/lodop/lodop.types.js +0 -2
- package/esm2015/media/media.component.js +0 -104
- package/esm2015/media/media.module.js +0 -14
- package/esm2015/media/media.service.js +0 -53
- package/esm2015/notice-icon/notice-icon-tab.component.js +0 -30
- package/esm2015/notice-icon/notice-icon.component.js +0 -74
- package/esm2015/notice-icon/notice-icon.module.js +0 -35
- package/esm2015/onboarding/onboarding.component.js +0 -130
- package/esm2015/onboarding/onboarding.module.js +0 -20
- package/esm2015/onboarding/onboarding.service.js +0 -178
- package/esm2015/page-header/page-header.component.js +0 -216
- package/esm2015/page-header/page-header.module.js +0 -19
- package/esm2015/pdf/pdf.component.js +0 -433
- package/esm2015/pdf/pdf.module.js +0 -15
- package/esm2015/qr/qr.component.js +0 -128
- package/esm2015/qr/qr.module.js +0 -14
- package/esm2015/quick-menu/quick-menu.component.js +0 -90
- package/esm2015/quick-menu/quick-menu.module.js +0 -16
- package/esm2015/result/result.component.js +0 -62
- package/esm2015/result/result.module.js +0 -16
- package/esm2015/reuse-tab/reuse-tab-context-menu.component.js +0 -74
- package/esm2015/reuse-tab/reuse-tab-context.component.js +0 -32
- package/esm2015/reuse-tab/reuse-tab-context.directive.js +0 -33
- package/esm2015/reuse-tab/reuse-tab-context.service.js +0 -53
- package/esm2015/reuse-tab/reuse-tab.component.js +0 -300
- package/esm2015/reuse-tab/reuse-tab.module.js +0 -24
- package/esm2015/reuse-tab/reuse-tab.service.js +0 -534
- package/esm2015/se/public_api.js +0 -6
- package/esm2015/se/se-container.component.js +0 -115
- package/esm2015/se/se-title.component.js +0 -40
- package/esm2015/se/se.component.js +0 -214
- package/esm2015/se/se.module.js +0 -19
- package/esm2015/sg/sg-container.component.js +0 -49
- package/esm2015/sg/sg.component.js +0 -65
- package/esm2015/sg/sg.module.js +0 -15
- package/esm2015/st/index.js +0 -2
- package/esm2015/st/st-column-source.js +0 -428
- package/esm2015/st/st-data-source.js +0 -429
- package/esm2015/st/st-export.js +0 -90
- package/esm2015/st/st-filter.component.js +0 -149
- package/esm2015/st/st-row.directive.js +0 -40
- package/esm2015/st/st-td.component.js +0 -232
- package/esm2015/st/st-widget-host.directive.js +0 -34
- package/esm2015/st/st-widget.js +0 -24
- package/esm2015/st/st.component.js +0 -784
- package/esm2015/st/st.interfaces.js +0 -2
- package/esm2015/st/st.module.js +0 -56
- package/esm2015/st/table.js +0 -8
- package/esm2015/sv/public_api.js +0 -6
- package/esm2015/sv/sv-container.component.js +0 -63
- package/esm2015/sv/sv-title.component.js +0 -40
- package/esm2015/sv/sv-value.component.js +0 -32
- package/esm2015/sv/sv.component.js +0 -105
- package/esm2015/sv/sv.module.js +0 -21
- package/esm2015/tag-select/tag-select.component.js +0 -70
- package/esm2015/tag-select/tag-select.module.js +0 -16
- package/esm2015/xlsx/xlsx.directive.js +0 -26
- package/esm2015/xlsx/xlsx.module.js +0 -14
- package/esm2015/xlsx/xlsx.service.js +0 -129
- package/esm2015/zip/zip.module.js +0 -10
- package/esm2015/zip/zip.service.js +0 -115
- package/exception/exception.metadata.json +0 -1
- package/fesm2015/abc.js.map +0 -1
- package/fesm2015/autoFocus.js +0 -59
- package/fesm2015/autoFocus.js.map +0 -1
- package/fesm2015/avatarList.js +0 -128
- package/fesm2015/avatarList.js.map +0 -1
- package/fesm2015/count-down.js +0 -56
- package/fesm2015/count-down.js.map +0 -1
- package/fesm2015/datePicker.js.map +0 -1
- package/fesm2015/downFile.js +0 -122
- package/fesm2015/downFile.js.map +0 -1
- package/fesm2015/edit.js +0 -396
- package/fesm2015/edit.js.map +0 -1
- package/fesm2015/ellipsis.js +0 -244
- package/fesm2015/ellipsis.js.map +0 -1
- package/fesm2015/errorCollect.js +0 -131
- package/fesm2015/errorCollect.js.map +0 -1
- package/fesm2015/exception.js +0 -125
- package/fesm2015/exception.js.map +0 -1
- package/fesm2015/footerToolbar.js +0 -66
- package/fesm2015/footerToolbar.js.map +0 -1
- package/fesm2015/fullContent.js +0 -191
- package/fesm2015/fullContent.js.map +0 -1
- package/fesm2015/globalFooter.js +0 -118
- package/fesm2015/globalFooter.js.map +0 -1
- package/fesm2015/grid.js +0 -129
- package/fesm2015/grid.js.map +0 -1
- package/fesm2015/image.js +0 -152
- package/fesm2015/image.js.map +0 -1
- package/fesm2015/let.js +0 -48
- package/fesm2015/let.js.map +0 -1
- package/fesm2015/loading.js +0 -138
- package/fesm2015/loading.js.map +0 -1
- package/fesm2015/lodop.js.map +0 -1
- package/fesm2015/media.js +0 -174
- package/fesm2015/media.js.map +0 -1
- package/fesm2015/noticeIcon.js +0 -141
- package/fesm2015/noticeIcon.js.map +0 -1
- package/fesm2015/onboarding.js +0 -328
- package/fesm2015/onboarding.js.map +0 -1
- package/fesm2015/pageHeader.js +0 -239
- package/fesm2015/pageHeader.js.map +0 -1
- package/fesm2015/pdf.js.map +0 -1
- package/fesm2015/qr.js +0 -159
- package/fesm2015/qr.js.map +0 -1
- package/fesm2015/quickMenu.js +0 -111
- package/fesm2015/quickMenu.js.map +0 -1
- package/fesm2015/result.js +0 -83
- package/fesm2015/result.js.map +0 -1
- package/fesm2015/reuseTab.js.map +0 -1
- package/fesm2015/table.js.map +0 -1
- package/fesm2015/tagSelect.js +0 -90
- package/fesm2015/tagSelect.js.map +0 -1
- package/fesm2015/view.js +0 -256
- package/fesm2015/view.js.map +0 -1
- package/fesm2015/xlsx.js.map +0 -1
- package/fesm2015/zip.js.map +0 -1
- package/footer-toolbar/footerToolbar.metadata.json +0 -1
- package/full-content/fullContent.metadata.json +0 -1
- package/global-footer/globalFooter.metadata.json +0 -1
- package/image/image.metadata.json +0 -1
- package/let/let.metadata.json +0 -1
- package/loading/loading.metadata.json +0 -1
- package/lodop/lodop.metadata.json +0 -1
- package/media/media.metadata.json +0 -1
- package/notice-icon/noticeIcon.metadata.json +0 -1
- package/onboarding/onboarding.metadata.json +0 -1
- package/page-header/pageHeader.metadata.json +0 -1
- package/pdf/pdf.metadata.json +0 -1
- package/qr/qr.metadata.json +0 -1
- package/quick-menu/quickMenu.metadata.json +0 -1
- package/result/result.metadata.json +0 -1
- package/reuse-tab/reuseTab.metadata.json +0 -1
- package/se/edit.metadata.json +0 -1
- package/se/se-title.component.d.ts +0 -10
- package/sg/grid.metadata.json +0 -1
- package/st/index.d.ts +0 -1
- package/st/st-td.component.d.ts +0 -27
- package/st/table.metadata.json +0 -1
- package/sv/sv-title.component.d.ts +0 -10
- package/sv/view.metadata.json +0 -1
- package/tag-select/tagSelect.metadata.json +0 -1
- package/xlsx/xlsx.metadata.json +0 -1
- package/zip/zip.metadata.json +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.mjs","sources":["../../../../packages/abc/se/se-container.component.ts","../../../../packages/abc/se/se.component.ts","../../../../packages/abc/se/se.component.html","../../../../packages/abc/se/se.module.ts","../../../../packages/abc/se/se.types.ts","../../../../packages/abc/se/edit.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Host,\n Input,\n OnInit,\n Optional,\n Renderer2,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport type { REP_TYPE } from '@delon/theme';\nimport { AlainConfigService } from '@delon/util/config';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput, toNumber } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { SEErrorRefresh, SELayout } from './se.types';\n\n@Component({\n selector: 'se-container, [se-container]',\n exportAs: 'seContainer',\n template: `\n <div se-title *ngIf=\"title\">\n <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n </div>\n <ng-content></ng-content>\n `,\n host: {\n '[class.ant-row]': `true`,\n '[class.se__container]': `true`,\n '[class.se__horizontal]': `nzLayout === 'horizontal'`,\n '[class.se__vertical]': `nzLayout === 'vertical'`,\n '[class.se__inline]': `nzLayout === 'inline'`,\n '[class.se__compact]': `size === 'compact'`,\n '[style.margin-left.px]': `margin`,\n '[style.margin-right.px]': `margin`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SEContainerComponent {\n static ngAcceptInputType_gutter: NumberInput;\n static ngAcceptInputType_col: NumberInput;\n static ngAcceptInputType_colInCon: NumberInput;\n static ngAcceptInputType_labelWidth: NumberInput;\n static ngAcceptInputType_firstVisual: BooleanInput;\n static ngAcceptInputType_ingoreDirty: BooleanInput;\n static ngAcceptInputType_line: BooleanInput;\n static ngAcceptInputType_noColon: BooleanInput;\n\n private errorNotify$ = new BehaviorSubject<SEErrorRefresh>(null as NzSafeAny);\n @Input('se-container') @InputNumber(null) colInCon?: REP_TYPE;\n @Input() @InputNumber(null) col!: REP_TYPE;\n @Input() @InputNumber(null) labelWidth!: number;\n @Input() @InputBoolean() noColon = false;\n @Input() title?: string | TemplateRef<void> | null;\n\n @Input()\n get gutter(): number {\n return this.nzLayout === 'horizontal' ? this._gutter : 0;\n }\n set gutter(value: number) {\n this._gutter = toNumber(value);\n }\n private _gutter!: number;\n\n @Input()\n get nzLayout(): SELayout {\n return this._nzLayout;\n }\n set nzLayout(value: SELayout) {\n this._nzLayout = value;\n if (value === 'inline') {\n this.size = 'compact';\n }\n }\n private _nzLayout!: SELayout;\n\n @Input() size!: 'default' | 'compact';\n @Input() @InputBoolean() firstVisual!: boolean;\n @Input() @InputBoolean() ingoreDirty!: boolean;\n @Input() @InputBoolean() line = false;\n @Input()\n set errors(val: SEErrorRefresh[]) {\n this.setErrors(val);\n }\n\n get margin(): number {\n return -((this.gutter as number) / 2);\n }\n\n get errorNotify(): Observable<SEErrorRefresh> {\n return this.errorNotify$.pipe(filter(v => v != null));\n }\n\n constructor(configSrv: AlainConfigService) {\n configSrv.attach(this, 'se', {\n size: 'default',\n nzLayout: 'horizontal',\n gutter: 32,\n col: 2,\n labelWidth: 150,\n firstVisual: false,\n ingoreDirty: false\n });\n }\n\n setErrors(errors: SEErrorRefresh[]): void {\n for (const error of errors) {\n this.errorNotify$.next(error);\n }\n }\n}\n\n@Component({\n selector: 'se-title, [se-title]',\n exportAs: 'seTitle',\n template: '<ng-content></ng-content>',\n host: {\n '[class.se__title]': 'true'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SETitleComponent implements OnInit {\n private el: HTMLElement;\n constructor(\n @Host()\n @Optional()\n private parent: SEContainerComponent,\n el: ElementRef,\n private ren: Renderer2\n ) {\n if (parent == null) {\n throw new Error(`[se-title] must include 'se-container' component`);\n }\n this.el = el.nativeElement;\n }\n\n private setClass(): void {\n const { el } = this;\n const gutter = this.parent.gutter as number;\n this.ren.setStyle(el, 'padding-left', `${gutter / 2}px`);\n this.ren.setStyle(el, 'padding-right', `${gutter / 2}px`);\n }\n\n ngOnInit(): void {\n this.setClass();\n }\n}\n","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Host,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormControlName, NgModel, RequiredValidator, Validator } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\nimport { ResponsiveService } from '@delon/theme';\nimport { isEmpty } from '@delon/util/browser';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput } from '@delon/util/decorator';\nimport { helpMotion } from 'ng-zorro-antd/core/animation';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { SEContainerComponent } from './se-container.component';\nimport { SEError, SEErrorType } from './se.types';\n\nconst prefixCls = `se`;\nlet nextUniqueId = 0;\n\n@Component({\n selector: 'se',\n exportAs: 'se',\n templateUrl: './se.component.html',\n host: {\n '[style.padding-left.px]': 'paddingValue',\n '[style.padding-right.px]': 'paddingValue',\n '[class.se__hide-label]': 'hideLabel',\n '[class.ant-form-item-has-error]': 'invalid',\n '[class.ant-form-item-with-help]': 'showErr'\n },\n preserveWhitespaces: false,\n animations: [helpMotion],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SEComponent implements OnChanges, AfterContentInit, AfterViewInit, OnDestroy {\n static ngAcceptInputType_col: NumberInput;\n static ngAcceptInputType_required: BooleanInput;\n static ngAcceptInputType_line: BooleanInput;\n static ngAcceptInputType_labelWidth: NumberInput;\n static ngAcceptInputType_noColon: BooleanInput;\n static ngAcceptInputType_hideLabel: BooleanInput;\n\n private el: HTMLElement;\n private unsubscribe$ = new Subject<void>();\n @ContentChild(NgModel, { static: true }) private readonly ngModel?: NgModel;\n @ContentChild(FormControlName, { static: true })\n private readonly formControlName?: FormControlName;\n @ViewChild('contentElement', { static: true }) private readonly contentElement!: ElementRef;\n private clsMap: string[] = [];\n private inited = false;\n private onceFlag = false;\n private errorData: SEError = {};\n private isBindModel = false;\n invalid = false;\n _labelWidth: number | null = null;\n _noColon: boolean | null = null;\n _error?: string | TemplateRef<void>;\n\n // #region fields\n\n @Input() optional?: string | TemplateRef<void> | null = null;\n @Input() optionalHelp?: string | TemplateRef<void> | null = null;\n @Input() optionalHelpColor?: string;\n @Input()\n set error(val: SEErrorType) {\n this.errorData = typeof val === 'string' || val instanceof TemplateRef ? { '': val } : val;\n }\n @Input() extra?: string | TemplateRef<void> | null;\n @Input() label?: string | TemplateRef<void> | null;\n @Input() @InputNumber(null) col?: number | null;\n @Input() @InputBoolean() required = false;\n @Input() controlClass?: string | null = '';\n @Input() @InputBoolean(null) line?: boolean | null;\n @Input() @InputNumber(null) labelWidth?: number | null;\n @Input() @InputBoolean(null) noColon?: boolean | null;\n @Input() @InputBoolean() hideLabel = false;\n\n @Input()\n set id(value: string) {\n this._id = value;\n this._autoId = false;\n }\n\n _id = `_se-${++nextUniqueId}`;\n _autoId = true;\n\n // #endregion\n\n get paddingValue(): number {\n return (this.parent.gutter as number) / 2;\n }\n\n get showErr(): boolean {\n return this.invalid && !!this._error && !this.compact;\n }\n\n get compact(): boolean {\n return this.parent.size === 'compact';\n }\n\n private get ngControl(): NgModel | FormControlName | null | undefined {\n return this.ngModel || this.formControlName;\n }\n\n constructor(\n el: ElementRef,\n @Optional() @Host() private parent: SEContainerComponent,\n private rep: ResponsiveService,\n private ren: Renderer2,\n private cdr: ChangeDetectorRef\n ) {\n if (parent == null) {\n throw new Error(`[se] must include 'se-container' component`);\n }\n this.el = el.nativeElement;\n parent.errorNotify\n .pipe(\n takeUntil(this.unsubscribe$),\n filter(w => this.inited && this.ngControl != null && this.ngControl.name === w.name)\n )\n .subscribe(item => {\n this.error = item.error;\n this.updateStatus(this.ngControl!.invalid!);\n });\n }\n\n private setClass(): this {\n const { el, ren, clsMap, col, parent, cdr, line, labelWidth, rep, noColon } = this;\n this._noColon = noColon != null ? noColon : parent.noColon;\n this._labelWidth = parent.nzLayout === 'horizontal' ? (labelWidth != null ? labelWidth : parent.labelWidth) : null;\n clsMap.forEach(cls => ren.removeClass(el, cls));\n clsMap.length = 0;\n const repCls =\n parent.nzLayout === 'horizontal' ? rep.genCls(col != null ? col : parent.colInCon || parent.col) : [];\n clsMap.push(`ant-form-item`, ...repCls, `${prefixCls}__item`);\n if (line || parent.line) {\n clsMap.push(`${prefixCls}__line`);\n }\n clsMap.forEach(cls => ren.addClass(el, cls));\n cdr.detectChanges();\n return this;\n }\n\n private bindModel(): void {\n if (!this.ngControl || this.isBindModel) return;\n\n this.isBindModel = true;\n this.ngControl\n .statusChanges!.pipe(takeUntil(this.unsubscribe$))\n .subscribe(res => this.updateStatus(res === 'INVALID'));\n if (this._autoId) {\n const controlAccessor = this.ngControl.valueAccessor as NzSafeAny;\n const control = (controlAccessor?.elementRef || controlAccessor?._elementRef)?.nativeElement as HTMLElement;\n if (!!control) {\n if (control.id) {\n this._id = control.id;\n } else {\n control.id = this._id;\n }\n }\n }\n // auto required\n if (this.required !== true) {\n const rawValidators = (this.ngControl as NzSafeAny)?._rawValidators as Validator[];\n this.required = rawValidators.find(w => w instanceof RequiredValidator) != null;\n this.cdr.detectChanges();\n }\n }\n\n private updateStatus(invalid: boolean): void {\n if (this.ngControl?.disabled || this.ngControl?.isDisabled) {\n return;\n }\n this.invalid =\n !this.onceFlag && invalid && this.parent.ingoreDirty === false && !this.ngControl?.dirty ? false : invalid;\n const errors = this.ngControl?.errors;\n if (errors != null && Object.keys(errors).length > 0) {\n const key = Object.keys(errors)[0] || '';\n const err = this.errorData[key];\n this._error = err != null ? err : this.errorData[''] || '';\n }\n\n this.cdr.detectChanges();\n }\n\n checkContent(): void {\n const el = this.contentElement.nativeElement;\n const cls = `${prefixCls}__item-empty`;\n if (isEmpty(el)) {\n this.ren.addClass(el, cls);\n } else {\n this.ren.removeClass(el, cls);\n }\n }\n\n ngAfterContentInit(): void {\n this.checkContent();\n }\n\n ngOnChanges(): void {\n this.onceFlag = this.parent.firstVisual;\n if (this.inited) {\n this.setClass().bindModel();\n }\n }\n\n ngAfterViewInit(): void {\n this.setClass().bindModel();\n this.inited = true;\n if (this.onceFlag) {\n Promise.resolve().then(() => {\n this.updateStatus(this.ngControl?.invalid!);\n this.onceFlag = false;\n });\n }\n }\n\n ngOnDestroy(): void {\n const { unsubscribe$ } = this;\n unsubscribe$.next();\n unsubscribe$.complete();\n }\n}\n","<div class=\"ant-form-item-label\" [class.se__nolabel]=\"hideLabel || !label\" [style.width.px]=\"_labelWidth\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"_id\"\n class=\"se__label\"\n [ngClass]=\"{ 'ant-form-item-required': required, 'se__no-colon': _noColon }\"\n >\n <span class=\"se__label-text\">\n <ng-container *nzStringTemplateOutlet=\"label\">{{ label }}</ng-container>\n </span>\n <span *ngIf=\"optional || optionalHelp\" class=\"se__label-optional\" [class.se__label-optional-no-text]=\"!optional\">\n <ng-container *nzStringTemplateOutlet=\"optional\">{{ optional }}</ng-container>\n <i\n *ngIf=\"optionalHelp\"\n nz-tooltip\n [nzTooltipTitle]=\"optionalHelp\"\n [nzTooltipColor]=\"optionalHelpColor\"\n nz-icon\n nzType=\"question-circle\"\n ></i>\n </span>\n </label>\n</div>\n<div class=\"ant-form-item-control se__control\">\n <div class=\"ant-form-item-control-input {{ controlClass }}\">\n <div class=\"ant-form-item-control-input-content\" (cdkObserveContent)=\"checkContent()\" #contentElement>\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"ant-form-item-explain ant-form-item-explain-error\" *ngIf=\"showErr\">\n <div @helpMotion>\n <ng-container *nzStringTemplateOutlet=\"_error\">{{ _error }}</ng-container>\n </div>\n </div>\n <div *ngIf=\"extra && !compact\" class=\"ant-form-item-extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { SEContainerComponent, SETitleComponent } from './se-container.component';\nimport { SEComponent } from './se.component';\n\nconst COMPONENTS = [SEContainerComponent, SEComponent, SETitleComponent];\n\n@NgModule({\n imports: [CommonModule, NzToolTipModule, NzIconModule, NzOutletModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class SEModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport type SELayout = 'horizontal' | 'vertical' | 'inline';\n\nexport type SESize = 'default' | 'compact';\n\nexport type SEErrorType = string | TemplateRef<void> | SEError;\n\nexport interface SEError {\n [key: string]: string | TemplateRef<void>;\n}\n\nexport interface SEErrorRefresh {\n name: string;\n error: SEErrorType;\n}\n\n// /**\n// * Error collection\n// * - `name`: The value of` ngModel` or `formControlName`\n// * - `error`: Replaced error value\n// */\n// errors: Array<{ name: string; error: SEErrorType }>;\n// /**\n// * Whether force show error, even if the form component has not invalid, Default: `false`\n// * - `false`: Whether to display error by `invalid`\n// * - `true`: Force show display error\n// */\n// force?: boolean;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
import { __decorate } from 'tslib';
|
|
2
|
+
import * as i3 from '@angular/common';
|
|
3
|
+
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
4
|
+
import * as i0 from '@angular/core';
|
|
5
|
+
import { Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, ViewChild, Input, NgModule } from '@angular/core';
|
|
6
|
+
import { take } from 'rxjs/operators';
|
|
7
|
+
import { InputBoolean, InputNumber } from '@delon/util/decorator';
|
|
8
|
+
import * as i1 from '@angular/platform-browser';
|
|
9
|
+
import * as i2 from '@angular/cdk/observers';
|
|
10
|
+
import { ObserversModule } from '@angular/cdk/observers';
|
|
11
|
+
import * as i4 from 'ng-zorro-antd/tooltip';
|
|
12
|
+
import { NzToolTipModule } from 'ng-zorro-antd/tooltip';
|
|
13
|
+
|
|
14
|
+
class EllipsisComponent {
|
|
15
|
+
constructor(el, ngZone, dom, doc, cdr) {
|
|
16
|
+
this.el = el;
|
|
17
|
+
this.ngZone = ngZone;
|
|
18
|
+
this.dom = dom;
|
|
19
|
+
this.doc = doc;
|
|
20
|
+
this.cdr = cdr;
|
|
21
|
+
this.isSupportLineClamp = this.doc.body.style['webkitLineClamp'] !== undefined;
|
|
22
|
+
this.inited = false;
|
|
23
|
+
this.type = 'default';
|
|
24
|
+
this.cls = {};
|
|
25
|
+
this.text = '';
|
|
26
|
+
this.targetCount = 0;
|
|
27
|
+
this.tooltip = false;
|
|
28
|
+
this.fullWidthRecognition = false;
|
|
29
|
+
this.tail = '...';
|
|
30
|
+
}
|
|
31
|
+
get linsWord() {
|
|
32
|
+
const { targetCount, text, tail } = this;
|
|
33
|
+
return ((targetCount > 0 ? text.substring(0, targetCount) : '') +
|
|
34
|
+
(targetCount > 0 && targetCount < text.length ? tail : ''));
|
|
35
|
+
}
|
|
36
|
+
getStrFullLength(str) {
|
|
37
|
+
return str.split('').reduce((pre, cur) => {
|
|
38
|
+
const charCode = cur.charCodeAt(0);
|
|
39
|
+
if (charCode >= 0 && charCode <= 128) {
|
|
40
|
+
return pre + 1;
|
|
41
|
+
}
|
|
42
|
+
return pre + 2;
|
|
43
|
+
}, 0);
|
|
44
|
+
}
|
|
45
|
+
cutStrByFullLength(str, maxLength) {
|
|
46
|
+
let showLength = 0;
|
|
47
|
+
return str.split('').reduce((pre, cur) => {
|
|
48
|
+
const charCode = cur.charCodeAt(0);
|
|
49
|
+
if (charCode >= 0 && charCode <= 128) {
|
|
50
|
+
showLength += 1;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
showLength += 2;
|
|
54
|
+
}
|
|
55
|
+
if (showLength <= maxLength) {
|
|
56
|
+
return pre + cur;
|
|
57
|
+
}
|
|
58
|
+
return pre;
|
|
59
|
+
}, '');
|
|
60
|
+
}
|
|
61
|
+
bisection(targetHeight, mid, begin, end, text, node) {
|
|
62
|
+
const suffix = this.tail;
|
|
63
|
+
node.innerHTML = text.substring(0, mid) + suffix;
|
|
64
|
+
let sh = node.offsetHeight;
|
|
65
|
+
if (sh <= targetHeight) {
|
|
66
|
+
node.innerHTML = text.substring(0, mid + 1) + suffix;
|
|
67
|
+
sh = node.offsetHeight;
|
|
68
|
+
if (sh > targetHeight || mid === begin) {
|
|
69
|
+
return mid;
|
|
70
|
+
}
|
|
71
|
+
begin = mid;
|
|
72
|
+
mid = end - begin === 1 ? begin + 1 : Math.floor((end - begin) / 2) + begin;
|
|
73
|
+
return this.bisection(targetHeight, mid, begin, end, text, node);
|
|
74
|
+
}
|
|
75
|
+
if (mid - 1 < 0) {
|
|
76
|
+
return mid;
|
|
77
|
+
}
|
|
78
|
+
node.innerHTML = text.substring(0, mid - 1) + suffix;
|
|
79
|
+
sh = node.offsetHeight;
|
|
80
|
+
if (sh <= targetHeight) {
|
|
81
|
+
return mid - 1;
|
|
82
|
+
}
|
|
83
|
+
end = mid;
|
|
84
|
+
mid = Math.floor((end - begin) / 2) + begin;
|
|
85
|
+
return this.bisection(targetHeight, mid, begin, end, text, node);
|
|
86
|
+
}
|
|
87
|
+
genType() {
|
|
88
|
+
const { lines, length, isSupportLineClamp } = this;
|
|
89
|
+
this.cls = {
|
|
90
|
+
ellipsis: true,
|
|
91
|
+
ellipsis__lines: lines && !isSupportLineClamp,
|
|
92
|
+
'ellipsis__line-clamp': lines && isSupportLineClamp
|
|
93
|
+
};
|
|
94
|
+
if (!lines && !length) {
|
|
95
|
+
this.type = 'default';
|
|
96
|
+
}
|
|
97
|
+
else if (!lines) {
|
|
98
|
+
this.type = 'length';
|
|
99
|
+
}
|
|
100
|
+
else if (isSupportLineClamp) {
|
|
101
|
+
this.type = 'line-clamp';
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
this.type = 'line';
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
gen() {
|
|
108
|
+
const { type, lines, length, fullWidthRecognition, tail, orgEl, cdr, ngZone } = this;
|
|
109
|
+
if (type === 'length') {
|
|
110
|
+
const el = orgEl.nativeElement;
|
|
111
|
+
if (el.children.length > 0) {
|
|
112
|
+
throw new Error('Ellipsis content must be string.');
|
|
113
|
+
}
|
|
114
|
+
const lengthText = el.textContent;
|
|
115
|
+
const textLength = fullWidthRecognition ? this.getStrFullLength(lengthText) : lengthText.length;
|
|
116
|
+
if (textLength <= length || length < 0) {
|
|
117
|
+
this.text = lengthText;
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
let displayText;
|
|
121
|
+
if (length - tail.length <= 0) {
|
|
122
|
+
displayText = '';
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
displayText = fullWidthRecognition
|
|
126
|
+
? this.cutStrByFullLength(lengthText, length)
|
|
127
|
+
: lengthText.slice(0, length);
|
|
128
|
+
}
|
|
129
|
+
this.text = displayText + tail;
|
|
130
|
+
}
|
|
131
|
+
ngZone.run(() => cdr.detectChanges());
|
|
132
|
+
}
|
|
133
|
+
else if (type === 'line') {
|
|
134
|
+
const { shadowOrgEl, shadowTextEl } = this;
|
|
135
|
+
const orgNode = shadowOrgEl.nativeElement;
|
|
136
|
+
const lineText = orgNode.innerText || orgNode.textContent;
|
|
137
|
+
const lineHeight = parseInt(getComputedStyle(this.getEl('.ellipsis')).lineHeight, 10);
|
|
138
|
+
const targetHeight = lines * lineHeight;
|
|
139
|
+
this.getEl('.ellipsis__handle').style.height = `${targetHeight}px`;
|
|
140
|
+
if (orgNode.offsetHeight <= targetHeight) {
|
|
141
|
+
this.text = lineText;
|
|
142
|
+
this.targetCount = lineText.length;
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
// bisection
|
|
146
|
+
const len = lineText.length;
|
|
147
|
+
const mid = Math.ceil(len / 2);
|
|
148
|
+
const count = this.bisection(targetHeight, mid, 0, len, lineText, shadowTextEl.nativeElement.firstChild);
|
|
149
|
+
this.text = lineText;
|
|
150
|
+
this.targetCount = count;
|
|
151
|
+
}
|
|
152
|
+
ngZone.run(() => cdr.detectChanges());
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
getEl(cls) {
|
|
156
|
+
return this.el.nativeElement.querySelector(cls);
|
|
157
|
+
}
|
|
158
|
+
executeOnStable(fn) {
|
|
159
|
+
if (this.ngZone.isStable) {
|
|
160
|
+
fn();
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
this.ngZone.onStable.asObservable().pipe(take(1)).subscribe(fn);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
refresh() {
|
|
167
|
+
this.genType();
|
|
168
|
+
const { type, dom, orgEl, cdr } = this;
|
|
169
|
+
const html = orgEl.nativeElement.innerHTML;
|
|
170
|
+
this.orgHtml = dom.bypassSecurityTrustHtml(html);
|
|
171
|
+
cdr.detectChanges();
|
|
172
|
+
this.executeOnStable(() => {
|
|
173
|
+
this.gen();
|
|
174
|
+
if (type !== 'line') {
|
|
175
|
+
const el = this.getEl('.ellipsis');
|
|
176
|
+
if (el) {
|
|
177
|
+
el.innerHTML = html;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
ngAfterViewInit() {
|
|
183
|
+
this.inited = true;
|
|
184
|
+
this.refresh();
|
|
185
|
+
}
|
|
186
|
+
ngOnChanges() {
|
|
187
|
+
if (this.inited) {
|
|
188
|
+
this.refresh();
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
EllipsisComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.DomSanitizer }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
193
|
+
EllipsisComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: EllipsisComponent, selector: "ellipsis", inputs: { tooltip: "tooltip", length: "length", lines: "lines", fullWidthRecognition: "fullWidthRecognition", tail: "tail" }, viewQueries: [{ propertyName: "orgEl", first: true, predicate: ["orgEl"], descendants: true }, { propertyName: "shadowOrgEl", first: true, predicate: ["shadowOrgEl"], descendants: true }, { propertyName: "shadowTextEl", first: true, predicate: ["shadowTextEl"], descendants: true }], exportAs: ["ellipsis"], usesOnChanges: true, ngImport: i0, template: "<div (cdkObserveContent)=\"refresh()\" #orgEl style=\"display: none\"><ng-content></ng-content></div>\n<ng-template #tooltipTpl let-con>\n <span\n *ngIf=\"tooltip; else con\"\n nz-tooltip\n [nzTooltipTitle]=\"titleTpl\"\n [nzTooltipOverlayStyle]=\"{ 'overflow-wrap': 'break-word', 'word-wrap': 'break-word' }\"\n >\n <ng-container *ngTemplateOutlet=\"con\"></ng-container>\n <ng-template #titleTpl><div [innerHTML]=\"orgHtml\"></div></ng-template>\n </span>\n</ng-template>\n<ng-container [ngSwitch]=\"type\">\n <span *ngSwitchCase=\"'default'\" [ngClass]=\"cls\"></span>\n <ng-container *ngSwitchCase=\"'length'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lengthTpl }\"></ng-template>\n <ng-template #lengthTpl>{{ text }}</ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"'line-clamp'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineClampTpl }\"></ng-template>\n <ng-template #lineClampTpl>\n <div [ngClass]=\"cls\" [ngStyle]=\"{ '-webkit-line-clamp': lines, '-webkit-box-orient': 'vertical' }\"></div>\n </ng-template>\n </ng-container>\n <div *ngSwitchCase=\"'line'\" [ngClass]=\"cls\">\n <div class=\"ellipsis__handle\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineTpl }\"></ng-template>\n <ng-template #lineTpl>{{ linsWord }}</ng-template>\n <div class=\"ellipsis__shadow\" #shadowOrgEl [innerHTML]=\"orgHtml\"></div>\n <div class=\"ellipsis__shadow\" #shadowTextEl>\n <span>{{ text }}</span>\n </div>\n </div>\n </div>\n</ng-container>\n", directives: [{ type: i2.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
194
|
+
__decorate([
|
|
195
|
+
InputBoolean()
|
|
196
|
+
], EllipsisComponent.prototype, "tooltip", void 0);
|
|
197
|
+
__decorate([
|
|
198
|
+
InputNumber(null)
|
|
199
|
+
], EllipsisComponent.prototype, "length", void 0);
|
|
200
|
+
__decorate([
|
|
201
|
+
InputNumber(null)
|
|
202
|
+
], EllipsisComponent.prototype, "lines", void 0);
|
|
203
|
+
__decorate([
|
|
204
|
+
InputBoolean()
|
|
205
|
+
], EllipsisComponent.prototype, "fullWidthRecognition", void 0);
|
|
206
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisComponent, decorators: [{
|
|
207
|
+
type: Component,
|
|
208
|
+
args: [{ selector: 'ellipsis', exportAs: 'ellipsis', preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div (cdkObserveContent)=\"refresh()\" #orgEl style=\"display: none\"><ng-content></ng-content></div>\n<ng-template #tooltipTpl let-con>\n <span\n *ngIf=\"tooltip; else con\"\n nz-tooltip\n [nzTooltipTitle]=\"titleTpl\"\n [nzTooltipOverlayStyle]=\"{ 'overflow-wrap': 'break-word', 'word-wrap': 'break-word' }\"\n >\n <ng-container *ngTemplateOutlet=\"con\"></ng-container>\n <ng-template #titleTpl><div [innerHTML]=\"orgHtml\"></div></ng-template>\n </span>\n</ng-template>\n<ng-container [ngSwitch]=\"type\">\n <span *ngSwitchCase=\"'default'\" [ngClass]=\"cls\"></span>\n <ng-container *ngSwitchCase=\"'length'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lengthTpl }\"></ng-template>\n <ng-template #lengthTpl>{{ text }}</ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"'line-clamp'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineClampTpl }\"></ng-template>\n <ng-template #lineClampTpl>\n <div [ngClass]=\"cls\" [ngStyle]=\"{ '-webkit-line-clamp': lines, '-webkit-box-orient': 'vertical' }\"></div>\n </ng-template>\n </ng-container>\n <div *ngSwitchCase=\"'line'\" [ngClass]=\"cls\">\n <div class=\"ellipsis__handle\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineTpl }\"></ng-template>\n <ng-template #lineTpl>{{ linsWord }}</ng-template>\n <div class=\"ellipsis__shadow\" #shadowOrgEl [innerHTML]=\"orgHtml\"></div>\n <div class=\"ellipsis__shadow\" #shadowTextEl>\n <span>{{ text }}</span>\n </div>\n </div>\n </div>\n</ng-container>\n" }]
|
|
209
|
+
}], ctorParameters: function () {
|
|
210
|
+
return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.DomSanitizer }, { type: undefined, decorators: [{
|
|
211
|
+
type: Inject,
|
|
212
|
+
args: [DOCUMENT]
|
|
213
|
+
}] }, { type: i0.ChangeDetectorRef }];
|
|
214
|
+
}, propDecorators: { orgEl: [{
|
|
215
|
+
type: ViewChild,
|
|
216
|
+
args: ['orgEl', { static: false }]
|
|
217
|
+
}], shadowOrgEl: [{
|
|
218
|
+
type: ViewChild,
|
|
219
|
+
args: ['shadowOrgEl', { static: false }]
|
|
220
|
+
}], shadowTextEl: [{
|
|
221
|
+
type: ViewChild,
|
|
222
|
+
args: ['shadowTextEl', { static: false }]
|
|
223
|
+
}], tooltip: [{
|
|
224
|
+
type: Input
|
|
225
|
+
}], length: [{
|
|
226
|
+
type: Input
|
|
227
|
+
}], lines: [{
|
|
228
|
+
type: Input
|
|
229
|
+
}], fullWidthRecognition: [{
|
|
230
|
+
type: Input
|
|
231
|
+
}], tail: [{
|
|
232
|
+
type: Input
|
|
233
|
+
}] } });
|
|
234
|
+
|
|
235
|
+
const COMPONENTS = [EllipsisComponent];
|
|
236
|
+
class EllipsisModule {
|
|
237
|
+
}
|
|
238
|
+
EllipsisModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
239
|
+
EllipsisModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisModule, declarations: [EllipsisComponent], imports: [CommonModule, ObserversModule, NzToolTipModule], exports: [EllipsisComponent] });
|
|
240
|
+
EllipsisModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisModule, imports: [[CommonModule, ObserversModule, NzToolTipModule]] });
|
|
241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisModule, decorators: [{
|
|
242
|
+
type: NgModule,
|
|
243
|
+
args: [{
|
|
244
|
+
imports: [CommonModule, ObserversModule, NzToolTipModule],
|
|
245
|
+
declarations: COMPONENTS,
|
|
246
|
+
exports: COMPONENTS
|
|
247
|
+
}]
|
|
248
|
+
}] });
|
|
249
|
+
|
|
250
|
+
/**
|
|
251
|
+
* Generated bundle index. Do not edit.
|
|
252
|
+
*/
|
|
253
|
+
|
|
254
|
+
export { EllipsisComponent, EllipsisModule };
|
|
255
|
+
//# sourceMappingURL=ellipsis.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ellipsis.mjs","sources":["../../../../packages/abc/ellipsis/ellipsis.component.ts","../../../../packages/abc/ellipsis/ellipsis.component.html","../../../../packages/abc/ellipsis/ellipsis.module.ts","../../../../packages/abc/ellipsis/ellipsis.ts"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Inject,\n Input,\n NgZone,\n OnChanges,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { take } from 'rxjs/operators';\n\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Component({\n selector: 'ellipsis',\n exportAs: 'ellipsis',\n templateUrl: './ellipsis.component.html',\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class EllipsisComponent implements AfterViewInit, OnChanges {\n static ngAcceptInputType_tooltip: BooleanInput;\n static ngAcceptInputType_length: NumberInput;\n static ngAcceptInputType_lines: NumberInput;\n static ngAcceptInputType_fullWidthRecognition: BooleanInput;\n\n private isSupportLineClamp = this.doc.body.style['webkitLineClamp'] !== undefined;\n @ViewChild('orgEl', { static: false }) private orgEl!: ElementRef;\n @ViewChild('shadowOrgEl', { static: false }) private shadowOrgEl!: ElementRef;\n @ViewChild('shadowTextEl', { static: false }) private shadowTextEl!: ElementRef;\n private inited = false;\n orgHtml!: SafeHtml;\n type = 'default';\n cls = {};\n text = '';\n targetCount = 0;\n\n @Input() @InputBoolean() tooltip = false;\n @Input() @InputNumber(null) length?: number;\n @Input() @InputNumber(null) lines?: number;\n @Input() @InputBoolean() fullWidthRecognition = false;\n @Input() tail = '...';\n\n get linsWord(): string {\n const { targetCount, text, tail } = this;\n return (\n (targetCount > 0 ? text.substring(0, targetCount) : '') +\n (targetCount > 0 && targetCount < text.length ? tail : '')\n );\n }\n\n constructor(\n private el: ElementRef,\n private ngZone: NgZone,\n private dom: DomSanitizer,\n @Inject(DOCUMENT) private doc: NzSafeAny,\n private cdr: ChangeDetectorRef\n ) {}\n\n private getStrFullLength(str: string): number {\n return str.split('').reduce((pre, cur) => {\n const charCode = cur.charCodeAt(0);\n if (charCode >= 0 && charCode <= 128) {\n return pre + 1;\n }\n return pre + 2;\n }, 0);\n }\n\n private cutStrByFullLength(str: string, maxLength: number): string {\n let showLength = 0;\n return str.split('').reduce((pre, cur) => {\n const charCode = cur.charCodeAt(0);\n if (charCode >= 0 && charCode <= 128) {\n showLength += 1;\n } else {\n showLength += 2;\n }\n if (showLength <= maxLength) {\n return pre + cur;\n }\n return pre;\n }, '');\n }\n\n private bisection(\n targetHeight: number,\n mid: number,\n begin: number,\n end: number,\n text: string,\n node: HTMLElement\n ): number {\n const suffix = this.tail;\n node.innerHTML = text.substring(0, mid) + suffix;\n let sh = node.offsetHeight;\n\n if (sh <= targetHeight) {\n node.innerHTML = text.substring(0, mid + 1) + suffix;\n sh = node.offsetHeight;\n if (sh > targetHeight || mid === begin) {\n return mid;\n }\n begin = mid;\n mid = end - begin === 1 ? begin + 1 : Math.floor((end - begin) / 2) + begin;\n return this.bisection(targetHeight, mid, begin, end, text, node);\n }\n if (mid - 1 < 0) {\n return mid;\n }\n node.innerHTML = text.substring(0, mid - 1) + suffix;\n sh = node.offsetHeight;\n if (sh <= targetHeight) {\n return mid - 1;\n }\n end = mid;\n mid = Math.floor((end - begin) / 2) + begin;\n return this.bisection(targetHeight, mid, begin, end, text, node);\n }\n\n private genType(): void {\n const { lines, length, isSupportLineClamp } = this;\n this.cls = {\n ellipsis: true,\n ellipsis__lines: lines && !isSupportLineClamp,\n 'ellipsis__line-clamp': lines && isSupportLineClamp\n };\n if (!lines && !length) {\n this.type = 'default';\n } else if (!lines) {\n this.type = 'length';\n } else if (isSupportLineClamp) {\n this.type = 'line-clamp';\n } else {\n this.type = 'line';\n }\n }\n\n private gen(): void {\n const { type, lines, length, fullWidthRecognition, tail, orgEl, cdr, ngZone } = this;\n if (type === 'length') {\n const el = orgEl.nativeElement as HTMLElement;\n if (el.children.length > 0) {\n throw new Error('Ellipsis content must be string.');\n }\n const lengthText = el.textContent!;\n const textLength = fullWidthRecognition ? this.getStrFullLength(lengthText) : lengthText.length;\n if (textLength <= length! || length! < 0) {\n this.text = lengthText;\n } else {\n let displayText: string;\n if (length! - tail.length <= 0) {\n displayText = '';\n } else {\n displayText = fullWidthRecognition\n ? this.cutStrByFullLength(lengthText, length!)\n : lengthText.slice(0, length);\n }\n this.text = displayText + tail;\n }\n ngZone.run(() => cdr.detectChanges());\n } else if (type === 'line') {\n const { shadowOrgEl, shadowTextEl } = this;\n const orgNode = shadowOrgEl.nativeElement as HTMLElement;\n const lineText = orgNode.innerText || orgNode.textContent!;\n const lineHeight = parseInt(getComputedStyle(this.getEl('.ellipsis')).lineHeight!, 10);\n const targetHeight = lines! * lineHeight;\n this.getEl('.ellipsis__handle').style.height = `${targetHeight}px`;\n\n if (orgNode.offsetHeight <= targetHeight) {\n this.text = lineText;\n this.targetCount = lineText.length;\n } else {\n // bisection\n const len = lineText.length;\n const mid = Math.ceil(len / 2);\n\n const count = this.bisection(targetHeight, mid, 0, len, lineText, shadowTextEl.nativeElement.firstChild);\n this.text = lineText;\n this.targetCount = count;\n }\n ngZone.run(() => cdr.detectChanges());\n }\n }\n\n private getEl(cls: string): HTMLElement {\n return this.el.nativeElement.querySelector(cls);\n }\n\n private executeOnStable(fn: () => void): void {\n if (this.ngZone.isStable) {\n fn();\n } else {\n this.ngZone.onStable.asObservable().pipe(take(1)).subscribe(fn);\n }\n }\n\n refresh(): void {\n this.genType();\n const { type, dom, orgEl, cdr } = this;\n const html = orgEl.nativeElement.innerHTML;\n this.orgHtml = dom.bypassSecurityTrustHtml(html);\n cdr.detectChanges();\n this.executeOnStable(() => {\n this.gen();\n if (type !== 'line') {\n const el = this.getEl('.ellipsis');\n if (el) {\n el.innerHTML = html;\n }\n }\n });\n }\n\n ngAfterViewInit(): void {\n this.inited = true;\n this.refresh();\n }\n\n ngOnChanges(): void {\n if (this.inited) {\n this.refresh();\n }\n }\n}\n","<div (cdkObserveContent)=\"refresh()\" #orgEl style=\"display: none\"><ng-content></ng-content></div>\n<ng-template #tooltipTpl let-con>\n <span\n *ngIf=\"tooltip; else con\"\n nz-tooltip\n [nzTooltipTitle]=\"titleTpl\"\n [nzTooltipOverlayStyle]=\"{ 'overflow-wrap': 'break-word', 'word-wrap': 'break-word' }\"\n >\n <ng-container *ngTemplateOutlet=\"con\"></ng-container>\n <ng-template #titleTpl><div [innerHTML]=\"orgHtml\"></div></ng-template>\n </span>\n</ng-template>\n<ng-container [ngSwitch]=\"type\">\n <span *ngSwitchCase=\"'default'\" [ngClass]=\"cls\"></span>\n <ng-container *ngSwitchCase=\"'length'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lengthTpl }\"></ng-template>\n <ng-template #lengthTpl>{{ text }}</ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"'line-clamp'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineClampTpl }\"></ng-template>\n <ng-template #lineClampTpl>\n <div [ngClass]=\"cls\" [ngStyle]=\"{ '-webkit-line-clamp': lines, '-webkit-box-orient': 'vertical' }\"></div>\n </ng-template>\n </ng-container>\n <div *ngSwitchCase=\"'line'\" [ngClass]=\"cls\">\n <div class=\"ellipsis__handle\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineTpl }\"></ng-template>\n <ng-template #lineTpl>{{ linsWord }}</ng-template>\n <div class=\"ellipsis__shadow\" #shadowOrgEl [innerHTML]=\"orgHtml\"></div>\n <div class=\"ellipsis__shadow\" #shadowTextEl>\n <span>{{ text }}</span>\n </div>\n </div>\n </div>\n</ng-container>\n","import { ObserversModule } from '@angular/cdk/observers';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { EllipsisComponent } from './ellipsis.component';\n\nconst COMPONENTS = [EllipsisComponent];\n\n@NgModule({\n imports: [CommonModule, ObserversModule, NzToolTipModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class EllipsisModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import { __decorate } from 'tslib';
|
|
2
|
+
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, Optional, Input, NgModule } from '@angular/core';
|
|
5
|
+
import { Subject, interval } from 'rxjs';
|
|
6
|
+
import { takeUntil } from 'rxjs/operators';
|
|
7
|
+
import { InputNumber } from '@delon/util/decorator';
|
|
8
|
+
import * as i1 from '@delon/util/config';
|
|
9
|
+
import * as i2 from '@angular/cdk/bidi';
|
|
10
|
+
import * as i3 from 'ng-zorro-antd/icon';
|
|
11
|
+
import { NzIconModule } from 'ng-zorro-antd/icon';
|
|
12
|
+
|
|
13
|
+
class ErrorCollectComponent {
|
|
14
|
+
constructor(el, cdr, doc, configSrv, directionality) {
|
|
15
|
+
this.el = el;
|
|
16
|
+
this.cdr = cdr;
|
|
17
|
+
this.doc = doc;
|
|
18
|
+
this.directionality = directionality;
|
|
19
|
+
this.formEl = null;
|
|
20
|
+
this.destroy$ = new Subject();
|
|
21
|
+
this._hiden = true;
|
|
22
|
+
this.count = 0;
|
|
23
|
+
this.dir = 'ltr';
|
|
24
|
+
configSrv.attach(this, 'errorCollect', { freq: 500, offsetTop: 65 + 64 + 8 * 2 });
|
|
25
|
+
}
|
|
26
|
+
get errEls() {
|
|
27
|
+
return this.formEl.querySelectorAll('.ant-form-item-has-error');
|
|
28
|
+
}
|
|
29
|
+
update() {
|
|
30
|
+
const count = this.errEls.length;
|
|
31
|
+
if (count === this.count)
|
|
32
|
+
return;
|
|
33
|
+
this.count = count;
|
|
34
|
+
this._hiden = count === 0;
|
|
35
|
+
this.cdr.markForCheck();
|
|
36
|
+
}
|
|
37
|
+
_click() {
|
|
38
|
+
if (this.count === 0)
|
|
39
|
+
return false;
|
|
40
|
+
// nz-form-control
|
|
41
|
+
const els = this.errEls;
|
|
42
|
+
const formItemEl = this.findParent(els[0], '[nz-form-control]') || els[0];
|
|
43
|
+
formItemEl.scrollIntoView(true);
|
|
44
|
+
// fix header height
|
|
45
|
+
this.doc.documentElement.scrollTop -= this.offsetTop;
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
install() {
|
|
49
|
+
var _a;
|
|
50
|
+
this.dir = this.directionality.value;
|
|
51
|
+
(_a = this.directionality.change) === null || _a === void 0 ? void 0 : _a.pipe(takeUntil(this.destroy$)).subscribe((direction) => {
|
|
52
|
+
this.dir = direction;
|
|
53
|
+
});
|
|
54
|
+
interval(this.freq)
|
|
55
|
+
.pipe(takeUntil(this.destroy$))
|
|
56
|
+
.subscribe(() => this.update());
|
|
57
|
+
this.update();
|
|
58
|
+
}
|
|
59
|
+
findParent(el, selector) {
|
|
60
|
+
let retEl = null;
|
|
61
|
+
while (el) {
|
|
62
|
+
if (el.querySelector(selector)) {
|
|
63
|
+
retEl = el;
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
el = el.parentElement;
|
|
67
|
+
}
|
|
68
|
+
return retEl;
|
|
69
|
+
}
|
|
70
|
+
ngOnInit() {
|
|
71
|
+
this.formEl = this.findParent(this.el.nativeElement, 'form');
|
|
72
|
+
if (this.formEl === null)
|
|
73
|
+
throw new Error('No found form element');
|
|
74
|
+
this.install();
|
|
75
|
+
}
|
|
76
|
+
ngOnDestroy() {
|
|
77
|
+
this.destroy$.next();
|
|
78
|
+
this.destroy$.complete();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
ErrorCollectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ErrorCollectComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i1.AlainConfigService }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
82
|
+
ErrorCollectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ErrorCollectComponent, selector: "error-collect, [error-collect]", inputs: { freq: "freq", offsetTop: "offsetTop" }, host: { listeners: { "click": "_click()" }, properties: { "class.error-collect": "true", "class.error-collect-rtl": "dir === 'rtl'", "class.d-none": "_hiden" } }, exportAs: ["errorCollect"], ngImport: i0, template: `
|
|
83
|
+
<i nz-icon nzType="exclamation-circle"></i>
|
|
84
|
+
<span class="error-collect__count">{{ count }}</span>
|
|
85
|
+
`, isInline: true, directives: [{ type: i3.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
86
|
+
__decorate([
|
|
87
|
+
InputNumber()
|
|
88
|
+
], ErrorCollectComponent.prototype, "freq", void 0);
|
|
89
|
+
__decorate([
|
|
90
|
+
InputNumber()
|
|
91
|
+
], ErrorCollectComponent.prototype, "offsetTop", void 0);
|
|
92
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ErrorCollectComponent, decorators: [{
|
|
93
|
+
type: Component,
|
|
94
|
+
args: [{
|
|
95
|
+
selector: 'error-collect, [error-collect]',
|
|
96
|
+
exportAs: 'errorCollect',
|
|
97
|
+
template: `
|
|
98
|
+
<i nz-icon nzType="exclamation-circle"></i>
|
|
99
|
+
<span class="error-collect__count">{{ count }}</span>
|
|
100
|
+
`,
|
|
101
|
+
host: {
|
|
102
|
+
'[class.error-collect]': 'true',
|
|
103
|
+
'[class.error-collect-rtl]': `dir === 'rtl'`,
|
|
104
|
+
'[class.d-none]': '_hiden',
|
|
105
|
+
'(click)': '_click()'
|
|
106
|
+
},
|
|
107
|
+
preserveWhitespaces: false,
|
|
108
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
109
|
+
encapsulation: ViewEncapsulation.None
|
|
110
|
+
}]
|
|
111
|
+
}], ctorParameters: function () {
|
|
112
|
+
return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
|
|
113
|
+
type: Inject,
|
|
114
|
+
args: [DOCUMENT]
|
|
115
|
+
}] }, { type: i1.AlainConfigService }, { type: i2.Directionality, decorators: [{
|
|
116
|
+
type: Optional
|
|
117
|
+
}] }];
|
|
118
|
+
}, propDecorators: { freq: [{
|
|
119
|
+
type: Input
|
|
120
|
+
}], offsetTop: [{
|
|
121
|
+
type: Input
|
|
122
|
+
}] } });
|
|
123
|
+
|
|
124
|
+
const COMPONENTS = [ErrorCollectComponent];
|
|
125
|
+
class ErrorCollectModule {
|
|
126
|
+
}
|
|
127
|
+
ErrorCollectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ErrorCollectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
128
|
+
ErrorCollectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ErrorCollectModule, declarations: [ErrorCollectComponent], imports: [CommonModule, NzIconModule], exports: [ErrorCollectComponent] });
|
|
129
|
+
ErrorCollectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ErrorCollectModule, imports: [[CommonModule, NzIconModule]] });
|
|
130
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ErrorCollectModule, decorators: [{
|
|
131
|
+
type: NgModule,
|
|
132
|
+
args: [{
|
|
133
|
+
imports: [CommonModule, NzIconModule],
|
|
134
|
+
declarations: COMPONENTS,
|
|
135
|
+
exports: COMPONENTS
|
|
136
|
+
}]
|
|
137
|
+
}] });
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Generated bundle index. Do not edit.
|
|
141
|
+
*/
|
|
142
|
+
|
|
143
|
+
export { ErrorCollectComponent, ErrorCollectModule };
|
|
144
|
+
//# sourceMappingURL=errorCollect.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errorCollect.mjs","sources":["../../../../packages/abc/error-collect/error-collect.component.ts","../../../../packages/abc/error-collect/error-collect.module.ts","../../../../packages/abc/error-collect/errorCollect.ts"],"sourcesContent":["import { Direction, Directionality } from '@angular/cdk/bidi';\nimport { DOCUMENT } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n ViewEncapsulation\n} from '@angular/core';\nimport { interval, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { AlainConfigService } from '@delon/util/config';\nimport { InputNumber } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Component({\n selector: 'error-collect, [error-collect]',\n exportAs: 'errorCollect',\n template: `\n <i nz-icon nzType=\"exclamation-circle\"></i>\n <span class=\"error-collect__count\">{{ count }}</span>\n `,\n host: {\n '[class.error-collect]': 'true',\n '[class.error-collect-rtl]': `dir === 'rtl'`,\n '[class.d-none]': '_hiden',\n '(click)': '_click()'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class ErrorCollectComponent implements OnInit, OnDestroy {\n private formEl: HTMLFormElement | null = null;\n private destroy$ = new Subject<void>();\n\n _hiden = true;\n count = 0;\n dir: Direction = 'ltr';\n\n @Input() @InputNumber() freq!: number;\n @Input() @InputNumber() offsetTop!: number;\n\n constructor(\n private el: ElementRef,\n private cdr: ChangeDetectorRef,\n @Inject(DOCUMENT) private doc: NzSafeAny,\n configSrv: AlainConfigService,\n @Optional() private directionality: Directionality\n ) {\n configSrv.attach(this, 'errorCollect', { freq: 500, offsetTop: 65 + 64 + 8 * 2 });\n }\n\n private get errEls(): NodeListOf<HTMLElement> {\n return this.formEl!.querySelectorAll('.ant-form-item-has-error');\n }\n\n private update(): void {\n const count = this.errEls.length;\n if (count === this.count) return;\n this.count = count;\n this._hiden = count === 0;\n this.cdr.markForCheck();\n }\n\n _click(): boolean {\n if (this.count === 0) return false;\n // nz-form-control\n const els = this.errEls;\n const formItemEl = this.findParent(els[0], '[nz-form-control]') || els[0];\n formItemEl.scrollIntoView(true);\n // fix header height\n this.doc.documentElement.scrollTop -= this.offsetTop;\n return true;\n }\n\n private install(): void {\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n this.dir = direction;\n });\n interval(this.freq)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => this.update());\n this.update();\n }\n\n private findParent(el: Element, selector: string): HTMLFormElement | null {\n let retEl: HTMLFormElement | null = null;\n while (el) {\n if (el.querySelector(selector)) {\n retEl = el as HTMLFormElement;\n break;\n }\n el = el.parentElement as HTMLFormElement;\n }\n return retEl;\n }\n\n ngOnInit(): void {\n this.formEl = this.findParent(this.el.nativeElement, 'form');\n if (this.formEl === null) throw new Error('No found form element');\n this.install();\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { ErrorCollectComponent } from './error-collect.component';\n\nconst COMPONENTS = [ErrorCollectComponent];\n\n@NgModule({\n imports: [CommonModule, NzIconModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class ErrorCollectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|