n20-common-lib 1.3.46 → 1.3.49
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 +2 -2
- package/g6.js +2 -2
- package/nstc-g6/assets/svg/addFile.svg +31 -31
- package/nstc-g6/assets/svg/deleteFile.svg +27 -27
- package/nstc-g6/assets/svg/filter.svg +15 -15
- package/nstc-g6/assets/svg/filterActive.svg +16 -16
- package/nstc-g6/assets/svg/hourglass.svg +18 -18
- package/nstc-g6/assets/svg/newsearch.svg +18 -18
- package/nstc-g6/assets/svg/searchActive.svg +18 -18
- package/nstc-g6/components/Calendar/index.js +8 -8
- package/nstc-g6/components/Calendar/src/basic/month-table.vue +129 -129
- package/nstc-g6/components/Calendar/src/basic/year-table.vue +126 -126
- package/nstc-g6/components/Calendar/src/main.vue +442 -442
- package/nstc-g6/components/DialogForm/index.js +8 -8
- package/nstc-g6/components/DialogForm/src/demo/index.vue +56 -56
- package/nstc-g6/components/DialogForm/src/main.vue +189 -189
- package/nstc-g6/components/Form/A_DEMO/component/originalForm.vue +280 -280
- package/nstc-g6/components/Form/A_DEMO/config/config_3.js +1222 -1222
- package/nstc-g6/components/Form/A_DEMO/index.vue +803 -803
- package/nstc-g6/components/Form/AutocompleteCustom/index.vue +72 -72
- package/nstc-g6/components/Form/BusinessSpecific/InputMultiple.vue +191 -191
- package/nstc-g6/components/Form/BusinessSpecific/InputWithUnit.vue +128 -128
- package/nstc-g6/components/Form/BusinessSpecific/SelectTreeDialog.vue +233 -233
- package/nstc-g6/components/Form/BusinessSpecific/readme.md +7 -7
- package/nstc-g6/components/Form/CascaderCustom/index.vue +101 -101
- package/nstc-g6/components/Form/CheckboxCustom/index.vue +84 -84
- package/nstc-g6/components/Form/Component.vue +661 -661
- package/nstc-g6/components/Form/ComponentSecond.vue +650 -650
- package/nstc-g6/components/Form/DatepickerCustom/index.vue +130 -130
- package/nstc-g6/components/Form/InputAndDialog/index.js +15 -15
- package/nstc-g6/components/Form/InputAndDialog/src/main.vue +394 -394
- package/nstc-g6/components/Form/InputCustom/demo/index.vue +65 -65
- package/nstc-g6/components/Form/InputCustom/index.vue +307 -307
- package/nstc-g6/components/Form/IntervalinputCustom/demo/index.vue +31 -31
- package/nstc-g6/components/Form/IntervalinputCustom/index.vue +118 -118
- package/nstc-g6/components/Form/Item.vue +330 -330
- package/nstc-g6/components/Form/ItemSecond.vue +269 -269
- package/nstc-g6/components/Form/List.vue +146 -146
- package/nstc-g6/components/Form/ListSecond.vue +130 -130
- package/nstc-g6/components/Form/RadioCustom/index.vue +73 -73
- package/nstc-g6/components/Form/SelectAccount/index.js +15 -15
- package/nstc-g6/components/Form/SelectAccount/src/demo/index.vue +57 -57
- package/nstc-g6/components/Form/SelectAccount/src/main.vue +282 -282
- package/nstc-g6/components/Form/SelectAndDialog/index.js +15 -15
- package/nstc-g6/components/Form/SelectAndDialog/src/main.vue +383 -383
- package/nstc-g6/components/Form/SelectCashFlow/index.js +15 -15
- package/nstc-g6/components/Form/SelectCashFlow/src/demo/index.vue +41 -41
- package/nstc-g6/components/Form/SelectCashFlow/src/main.vue +125 -125
- package/nstc-g6/components/Form/SelectCustom/demo/index.vue +82 -82
- package/nstc-g6/components/Form/SelectCustom/index.vue +488 -488
- package/nstc-g6/components/Form/SelectSubject/index.js +15 -15
- package/nstc-g6/components/Form/SelectSubject/src/demo/index.vue +84 -84
- package/nstc-g6/components/Form/SelectSubject/src/main.vue +181 -181
- package/nstc-g6/components/Form/SelectindialogCustom/demo/index.vue +188 -188
- package/nstc-g6/components/Form/SelectindialogCustom/index.vue +650 -650
- package/nstc-g6/components/Form/SelectindialogCustom/install.js +6 -6
- package/nstc-g6/components/Form/TableRadioCustom/demo/index.vue +53 -53
- package/nstc-g6/components/Form/TableRadioCustom/index.vue +183 -183
- package/nstc-g6/components/Form/TextCustom/index.vue +38 -38
- package/nstc-g6/components/Form/UploadCustom/demo/index.vue +31 -31
- package/nstc-g6/components/Form/UploadCustom/index.vue +506 -506
- package/nstc-g6/components/Form/configs.js +191 -191
- package/nstc-g6/components/Form/configsSecond.js +161 -161
- package/nstc-g6/components/Form/index.js +8 -8
- package/nstc-g6/components/Form/index.scss +29 -29
- package/nstc-g6/components/Form/payeePersonSelect/index.js +15 -15
- package/nstc-g6/components/Form/payeePersonSelect/src/demo/index.vue +163 -163
- package/nstc-g6/components/Form/payeePersonSelect/src/main.vue +184 -184
- package/nstc-g6/components/Form/readme.txt +4 -4
- package/nstc-g6/components/FormGroup/index.js +8 -8
- package/nstc-g6/components/FormGroup/src/demo/config.js +23 -23
- package/nstc-g6/components/FormGroup/src/demo/index.vue +85 -85
- package/nstc-g6/components/FormGroup/src/main.vue +639 -639
- package/nstc-g6/components/FormGroup/src/validate.js +22 -22
- package/nstc-g6/components/InputTag/InputTag.vue +269 -269
- package/nstc-g6/components/NstcApprovel/NstcApprovel.vue +24 -24
- package/nstc-g6/components/NstcBackToTop/NstcBackToTop.vue +150 -150
- package/nstc-g6/components/NstcBranchLazyLoad/NstcBranchLazyLoad.vue +123 -123
- package/nstc-g6/components/NstcCharts/NstcCharts.vue +162 -162
- package/nstc-g6/components/NstcCharts/define.js +74 -74
- package/nstc-g6/components/NstcCharts/mixins/resize.js +56 -56
- package/nstc-g6/components/NstcConfirm/NstcConfirm.vue +152 -152
- package/nstc-g6/components/NstcConfirm/index.js +24 -24
- package/nstc-g6/components/NstcDialog/NstcDialog.vue +184 -184
- package/nstc-g6/components/NstcDialogForm/NstcDialogForm.vue +175 -175
- package/nstc-g6/components/NstcDialogTable/NstcDialogTable.vue +280 -280
- package/nstc-g6/components/NstcDropdown/NstcDropdown.vue +52 -52
- package/nstc-g6/components/NstcDropdownTree/NstcDropdownTree.vue +396 -396
- package/nstc-g6/components/NstcElectronicFile/NstcElectronicFile.vue +711 -711
- package/nstc-g6/components/NstcExcelCustomImport/NstcExcelCustomImport.vue +475 -475
- package/nstc-g6/components/NstcExcelExport/NstcExcelExport.vue +145 -145
- package/nstc-g6/components/NstcExcelImport/NstcExcelImport.vue +1074 -1074
- package/nstc-g6/components/NstcExcelImportN/NstcExcelImportN.vue +1166 -1166
- package/nstc-g6/components/NstcExpandCollapse/NstcExpandCollapse.vue +130 -130
- package/nstc-g6/components/NstcExpandCollapse/index.scss +77 -77
- package/nstc-g6/components/NstcFileUpload/NstcFileUpload.vue +989 -989
- package/nstc-g6/components/NstcFileUpload/img/addFile.svg +31 -31
- package/nstc-g6/components/NstcFileUpload/img/delete.svg +23 -23
- package/nstc-g6/components/NstcFileUpload/img/deleteFile.svg +27 -27
- package/nstc-g6/components/NstcFileUpload/img/download.svg +23 -23
- package/nstc-g6/components/NstcFileUpload/img/inputUpload.svg +29 -29
- package/nstc-g6/components/NstcFileUpload/img/look-diabled.svg +23 -23
- package/nstc-g6/components/NstcFileUpload/img/look.svg +23 -23
- package/nstc-g6/components/NstcForm/A_DEMO/component/originalForm.vue +280 -280
- package/nstc-g6/components/NstcForm/A_DEMO/config/config_3.js +1222 -1222
- package/nstc-g6/components/NstcForm/A_DEMO/index.vue +796 -796
- package/nstc-g6/components/NstcForm/AutocompleteCustom/index.vue +68 -68
- package/nstc-g6/components/NstcForm/BusinessSpecific/InputMultiple.vue +189 -189
- package/nstc-g6/components/NstcForm/BusinessSpecific/InputWithUnit.vue +128 -128
- package/nstc-g6/components/NstcForm/BusinessSpecific/SelectTreeDialog.vue +233 -233
- package/nstc-g6/components/NstcForm/BusinessSpecific/readme.md +7 -7
- package/nstc-g6/components/NstcForm/CascaderCustom/index.vue +101 -101
- package/nstc-g6/components/NstcForm/CheckboxCustom/index.vue +84 -84
- package/nstc-g6/components/NstcForm/Component.vue +684 -684
- package/nstc-g6/components/NstcForm/ComponentSecond.vue +650 -650
- package/nstc-g6/components/NstcForm/DatepickerCustom/index.vue +130 -130
- package/nstc-g6/components/NstcForm/InputAndDialog/NstcInputAndDialog.vue +389 -389
- package/nstc-g6/components/NstcForm/InputCustom/index.vue +313 -313
- package/nstc-g6/components/NstcForm/IntervalInputCustom/index.vue +111 -111
- package/nstc-g6/components/NstcForm/Item.vue +327 -327
- package/nstc-g6/components/NstcForm/ItemSecond.vue +269 -269
- package/nstc-g6/components/NstcForm/List.vue +146 -146
- package/nstc-g6/components/NstcForm/ListSecond.vue +130 -130
- package/nstc-g6/components/NstcForm/RadioCustom/index.vue +73 -73
- package/nstc-g6/components/NstcForm/SelectAccount/NstcSelectAccount.vue +334 -334
- package/nstc-g6/components/NstcForm/SelectAndDialog/NstcSelectAndDialog.vue +377 -377
- package/nstc-g6/components/NstcForm/SelectCashFlow/NstcSelectCashFlow.vue +122 -122
- package/nstc-g6/components/NstcForm/SelectCustom/index.vue +460 -460
- package/nstc-g6/components/NstcForm/SelectSubject/NstcSelectSubject.vue +184 -184
- package/nstc-g6/components/NstcForm/SelectindialogCustom/index.vue +648 -648
- package/nstc-g6/components/NstcForm/TableRadioCustom/index.vue +183 -183
- package/nstc-g6/components/NstcForm/TextCustom/index.vue +38 -38
- package/nstc-g6/components/NstcForm/UploadCustom/index.vue +500 -500
- package/nstc-g6/components/NstcForm/configs.js +191 -191
- package/nstc-g6/components/NstcForm/configsSecond.js +161 -161
- package/nstc-g6/components/NstcForm/index.js +8 -8
- package/nstc-g6/components/NstcForm/index.scss +29 -29
- package/nstc-g6/components/NstcForm/payeePersonSelect/NstcPayeePerson.vue +187 -187
- package/nstc-g6/components/NstcForm/readme.txt +4 -4
- package/nstc-g6/components/NstcPagination/NstcPagination.vue +428 -428
- package/nstc-g6/components/NstcScreenFull/NstcScreenFull.vue +70 -70
- package/nstc-g6/components/NstcSelectTree/NstcSelectTree.vue +730 -730
- package/nstc-g6/components/NstcSelectTreeList/NstcSelectTreeList.vue +677 -677
- package/nstc-g6/components/NstcSticky/NstcSticky.vue +97 -97
- package/nstc-g6/components/NstcSvgIcon/NstcSvgIcon.vue +72 -72
- package/nstc-g6/components/NstcTab/NstcTab.vue +80 -80
- package/nstc-g6/components/NstcTabWithBadge/NstcTabWithBadge.vue +45 -45
- package/nstc-g6/components/NstcTabWithBadge/index.scss +31 -31
- package/nstc-g6/components/NstcTable/ElTableColumnCustom/index.vue +292 -292
- package/nstc-g6/components/NstcTable/NstcTable.vue +460 -460
- package/nstc-g6/components/NstcTableSet/NstcTableSet.vue +802 -802
- package/nstc-g6/components/NstcThemePicker/NstcThemePicker.vue +186 -186
- package/nstc-g6/components/NstcUploadCustomExcel/NstcUploadCustomExcel.vue +328 -328
- package/nstc-g6/components/NstcUploadExcel/NstcUploadExcel.vue +145 -145
- package/nstc-g6/components/NstcWorkBench/NstcWorkBench.vue +180 -180
- package/nstc-g6/components/Search/NstcSearch.vue +583 -583
- package/nstc-g6/components/Search/src/demo/index copy.vue +101 -101
- package/nstc-g6/components/Search/src/demo/index.vue +103 -103
- package/nstc-g6/components/Search/src/main copy.vue +607 -607
- package/nstc-g6/components/approvelTwo/main.vue +220 -220
- package/nstc-g6/components/approvelTwo/progress.vue +154 -154
- package/nstc-g6/directives/VCopy/index.js +59 -59
- package/nstc-g6/directives/VNstcNumber/index.js +14 -14
- package/nstc-g6/directives/VNstcNumber/temp.js +446 -446
- package/nstc-g6/index.js +193 -193
- package/nstc-g6/utils/auth.js +2 -2
- package/nstc-g6/utils/axios.js +2 -2
- package/nstc-g6/utils/dateAndValidator.js +649 -649
- package/nstc-g6/utils/debounce.js +40 -40
- package/nstc-g6/utils/mapper_aims.js +809 -809
- package/nstc-g6/utils/parseTime.js +48 -48
- package/nstc-g6/utils/validate/index.js +6 -6
- package/nstc-g6/utils/vendor/Export2Excel.js +229 -229
- package/nstc-g6/utils/vendor/Export2Zip.js +24 -24
- package/nstc-g6/utils/vue-bus.js +4 -4
- package/package.json +103 -103
- package/src/_qiankun/index.js +113 -113
- package/src/_qiankun/postMessage.js +24 -24
- package/src/assets/css/_coreLib.scss +43 -43
- package/src/assets/css/alert.scss +28 -28
- package/src/assets/css/cl-anchor.scss +70 -70
- package/src/assets/css/cl-approve-card.scss +68 -68
- package/src/assets/css/cl-dialog.scss +113 -113
- package/src/assets/css/cl-drag-list.scss +24 -24
- package/src/assets/css/cl-empty.scss +10 -10
- package/src/assets/css/cl-expandable-pane.scss +37 -37
- package/src/assets/css/cl-expandable.scss +27 -27
- package/src/assets/css/cl-file-upload-table.scss +31 -31
- package/src/assets/css/cl-filter.scss +4 -4
- package/src/assets/css/cl-flow-step.scss +185 -185
- package/src/assets/css/cl-footer-box.scss +10 -10
- package/src/assets/css/cl-form-item.scss +729 -729
- package/src/assets/css/cl-general-card.scss +11 -11
- package/src/assets/css/cl-layout-aside.scss +92 -92
- package/src/assets/css/cl-layout-content.scss +16 -16
- package/src/assets/css/cl-layout-header.scss +89 -89
- package/src/assets/css/cl-layout-tabs.scss +87 -87
- package/src/assets/css/cl-layout.scss +97 -97
- package/src/assets/css/cl-login-temporary.scss +37 -37
- package/src/assets/css/cl-message.scss +159 -159
- package/src/assets/css/cl-more-tab.scss +98 -98
- package/src/assets/css/cl-nav-menu.scss +5 -5
- package/src/assets/css/cl-pagination.scss +130 -130
- package/src/assets/css/cl-secondary-tab.scss +53 -53
- package/src/assets/css/cl-showcolumn.scss +40 -40
- package/src/assets/css/cl-sifting.scss +51 -51
- package/src/assets/css/cl-statis.scss +54 -54
- package/src/assets/css/cl-step.scss +73 -73
- package/src/assets/css/cl-suspend.scss +19 -19
- package/src/assets/css/cl-tertiary-tab.scss +56 -56
- package/src/assets/css/cl-upload.scss +52 -52
- package/src/assets/css/cl-worn-pagination.scss +50 -50
- package/src/assets/css/el-button.scss +186 -186
- package/src/assets/css/el-table.scss +88 -88
- package/src/assets/css/element-variables.scss +1061 -1061
- package/src/assets/css/element.dev.scss +22 -22
- package/src/assets/css/font-icon.scss +26 -26
- package/src/assets/css/index.dev.scss +4 -4
- package/src/assets/css/index.scss +11 -11
- package/src/assets/css/normalize.scss +845 -845
- package/src/assets/css/plain-text.scss +36 -36
- package/src/assets/css/rootvar.scss +143 -143
- package/src/assets/css/select.scss +25 -25
- package/src/assets/css/title-pop.scss +23 -23
- package/src/assets/getJsonc.js +53 -53
- package/src/assets/iconFont/demo.css +539 -539
- package/src/assets/iconFont/demo_index.html +1614 -1614
- package/src/assets/iconFont/iconfont.css +263 -263
- package/src/assets/iconFont/iconfont.json +443 -443
- package/src/assets/realUrl.js +13 -13
- package/src/components/Anchor/AnchorItem.vue +30 -30
- package/src/components/Anchor/index.vue +208 -208
- package/src/components/ApprovalButtons/index.vue +240 -240
- package/src/components/ApprovalCard/index.vue +132 -132
- package/src/components/ApprovalRecord/approvalImg.vue +39 -39
- package/src/components/ApprovalRecord/approvalImgPro.vue +424 -424
- package/src/components/ApprovalRecord/flowDialog.vue +47 -47
- package/src/components/ApprovalRecord/index.vue +63 -63
- package/src/components/Button/button-group.vue +148 -148
- package/src/components/Button/icon-group-button.vue +63 -63
- package/src/components/Button/index.vue +56 -56
- package/src/components/CascaderArea/index.vue +103 -103
- package/src/components/ChildRange/index.vue +169 -169
- package/src/components/ChildRange/style.scss +34 -34
- package/src/components/ContentLoading/index.vue +41 -41
- package/src/components/ContentNull/index.vue +19 -19
- package/src/components/DatePicker/index.vue +33 -33
- package/src/components/DatePicker/por.vue +171 -171
- package/src/components/Descriptions/index.vue +42 -42
- package/src/components/Dialog/index.vue +26 -26
- package/src/components/Dialog/indexO.vue +116 -116
- package/src/components/DragList/index.vue +79 -79
- package/src/components/ECharts/define.js +74 -74
- package/src/components/ECharts/index.vue +170 -170
- package/src/components/ECharts/mixins/resize.js +23 -23
- package/src/components/Empty/img/400.svg +101 -101
- package/src/components/Empty/img/401.svg +101 -101
- package/src/components/Empty/img/403.svg +101 -101
- package/src/components/Empty/img/405.svg +101 -101
- package/src/components/Empty/img/901.svg +95 -95
- package/src/components/Empty/img/902.svg +95 -95
- package/src/components/Empty/img/903.svg +95 -95
- package/src/components/Empty/img/904.svg +95 -95
- package/src/components/Empty/img/905.svg +95 -95
- package/src/components/Empty/img/906.svg +95 -95
- package/src/components/Empty/img/907.svg +95 -95
- package/src/components/Empty/img/abnormal.svg +108 -108
- package/src/components/Empty/img/dispose.svg +71 -71
- package/src/components/Empty/img/empty.svg +57 -57
- package/src/components/Empty/img/general.svg +58 -58
- package/src/components/Empty/img/lock.svg +57 -57
- package/src/components/Empty/img/network.svg +59 -59
- package/src/components/Empty/img/relevant.svg +68 -68
- package/src/components/Empty/img/search.svg +72 -72
- package/src/components/Empty/index.vue +147 -147
- package/src/components/EventBubble/demo/a.vue +29 -29
- package/src/components/EventBubble/demo/b.vue +12 -12
- package/src/components/EventBubble/demo/c.vue +18 -18
- package/src/components/EventBubble/index.vue +57 -57
- package/src/components/Expandable/index.vue +49 -49
- package/src/components/Expandable/main.vue +64 -64
- package/src/components/FileExportAsync/index.vue +191 -191
- package/src/components/FileImport/index.vue +108 -108
- package/src/components/FileUploadTable/index.vue +583 -583
- package/src/components/Filters/form-item-input.vue +185 -185
- package/src/components/Filters/index.vue +216 -216
- package/src/components/Filters/indexO.vue +106 -106
- package/src/components/FlowStep/index.vue +92 -92
- package/src/components/FooterBox/index.vue +21 -21
- package/src/components/GeneralCard/index.vue +15 -15
- package/src/components/InputNumber/index.vue +184 -184
- package/src/components/InputNumber/numberRange.vue +62 -62
- package/src/components/InputSearch/index.vue +79 -75
- package/src/components/Layout/AsideNav/index.vue +120 -120
- package/src/components/Layout/AsideNav/menuItem.vue +34 -34
- package/src/components/Layout/AsideNav/submenuTitle.vue +26 -26
- package/src/components/Layout/HeaderWrap/changePwd.vue +215 -215
- package/src/components/Layout/HeaderWrap/index.vue +412 -412
- package/src/components/Layout/HeaderWrap/noticePop.vue +316 -316
- package/src/components/Layout/SubContent/index.vue +127 -127
- package/src/components/Layout/TabsNav/index.vue +169 -169
- package/src/components/Layout/index.vue +518 -518
- package/src/components/Layout/utils.js +12 -12
- package/src/components/LoginTemporary/form.vue +581 -581
- package/src/components/LoginTemporary/index.vue +198 -198
- package/src/components/LoginTemporary/qrcode.vue +92 -92
- package/src/components/LoginTemporary/retrievePw.vue +375 -375
- package/src/components/LoginTemporary/utils.js +73 -73
- package/src/components/MicroApp/index.js +67 -67
- package/src/components/MicroFrame/index.vue +95 -95
- package/src/components/MoreTab/index.vue +229 -229
- package/src/components/NavMenu/index.vue +60 -60
- package/src/components/PageHeader/index.vue +39 -39
- package/src/components/PageHeader/style.scss +44 -44
- package/src/components/PageLayout/page.vue +15 -15
- package/src/components/Pagination/index.vue +165 -165
- package/src/components/SecondaryTab/index.vue +57 -57
- package/src/components/SelectLazy/index.vue +75 -75
- package/src/components/SelectTree/SelectTreeLazy.vue +241 -241
- package/src/components/SelectTree/index.vue +206 -206
- package/src/components/ShowColumn/index.vue +252 -252
- package/src/components/Sifting/index.vue +98 -98
- package/src/components/Stamp/index.vue +75 -75
- package/src/components/Statis/index.vue +113 -113
- package/src/components/Statis/statisItem.vue +65 -65
- package/src/components/Statis/statisPopover.vue +63 -63
- package/src/components/Step/index.vue +37 -37
- package/src/components/Suspend/index.vue +72 -72
- package/src/components/Table/filters.js +60 -60
- package/src/components/Table/index.vue +89 -89
- package/src/components/Table/indexO.vue +149 -149
- package/src/components/TableOperateColumn/OperateBtns.vue +86 -86
- package/src/components/TableOperateColumn/index.vue +26 -26
- package/src/components/Task/index.vue +26 -26
- package/src/components/TertiaryTab/index.vue +62 -62
- package/src/components/TimePicker/index.vue +28 -28
- package/src/components/Upload/index.vue +280 -280
- package/src/components/Upload/uploadMsg.vue +114 -114
- package/src/components/WornPagination/index.vue +73 -73
- package/src/directives/VClickOutside/index.js +27 -27
- package/src/directives/VHas/index.js +58 -58
- package/src/directives/VMove/index.js +42 -42
- package/src/directives/VRuleKey/index.js +201 -201
- package/src/directives/VTitle/index.js +109 -109
- package/src/index.js +265 -265
- package/src/plugins/CompatibleOld/index.js +11 -11
- package/src/plugins/Print/index.js +4 -4
- package/src/plugins/Print/print-js/.babelrc +12 -12
- package/src/plugins/Print/print-js/LICENSE +21 -21
- package/src/plugins/Print/print-js/README.md +98 -98
- package/src/plugins/Print/print-js/dist/print.css +96 -96
- package/src/plugins/Print/print-js/dist/print.js +990 -990
- package/src/plugins/Print/print-js/package.json +60 -60
- package/src/plugins/Print/print-js/src/index.d.ts +45 -45
- package/src/plugins/Print/print-js/src/index.js +10 -10
- package/src/plugins/Print/print-js/src/js/browser.js +33 -33
- package/src/plugins/Print/print-js/src/js/functions.js +103 -103
- package/src/plugins/Print/print-js/src/js/html.js +70 -70
- package/src/plugins/Print/print-js/src/js/image.js +48 -48
- package/src/plugins/Print/print-js/src/js/init.js +168 -168
- package/src/plugins/Print/print-js/src/js/json.js +109 -109
- package/src/plugins/Print/print-js/src/js/modal.js +62 -62
- package/src/plugins/Print/print-js/src/js/pdf.js +62 -62
- package/src/plugins/Print/print-js/src/js/print.js +102 -102
- package/src/plugins/Print/print-js/src/js/raw-html.js +15 -15
- package/src/plugins/Print/print-js/src/sass/index.scss +13 -13
- package/src/plugins/Print/print-js/src/sass/modules/_colors.scss +9 -9
- package/src/plugins/Print/print-js/src/sass/partials/_modal.scss +40 -40
- package/src/plugins/Print/print-js/src/sass/partials/_spinner.scss +45 -45
- package/src/plugins/Print/print.js +2 -2
- package/src/plugins/Print/print.scss +1 -1
- package/src/plugins/SetMenuTree/index.vue +41 -41
- package/src/plugins/SetMenuTree/logoIcon.vue +37 -37
- package/src/plugins/SetMenuTree/setmenutree.vue +427 -427
- package/src/plugins/SetMenuTree/utils.js +74 -74
- package/src/plugins/Sign/InfosecNetSignCNGAgent.min.js +2000 -2000
- package/src/plugins/Sign/bjca/XTXSAB.js +2395 -2395
- package/src/plugins/Sign/bjca/index.js +129 -129
- package/src/plugins/Sign/index.js +28 -28
- package/src/plugins/Sign/sign.js +108 -64
- package/src/plugins/setTabsForSub.js +2 -2
- package/src/utils/auth.js +56 -56
- package/src/utils/axios.js +205 -205
- package/src/utils/downloadBlob.js +19 -19
- package/src/utils/forEachs.js +16 -16
- package/src/utils/getScrollContainer.js +43 -43
- package/src/utils/handleTab.js +109 -109
- package/src/utils/i18n/cn2hk.json +1270 -1270
- package/src/utils/i18n/index.js +50 -50
- package/src/utils/importGlobal.js +16 -16
- package/src/utils/list2tree.js +36 -36
- package/src/utils/msgboxPor.js +26 -26
- package/src/utils/print.js +161 -161
- package/src/utils/relaNo.js +72 -72
- package/src/utils/repairElementUI.js +169 -169
- package/src/utils/tableheaderFilterpanel.vue +248 -248
- package/src/utils/theme.config.js +22 -22
- package/src/utils/theme.js +31 -31
- package/src/utils/toExcel.js +103 -103
- package/src/utils/urlToGo.js +82 -82
- package/src/utils/xls2json.js +44 -44
- package/src/utils/xlsx2json.js +28 -28
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "print-js",
|
|
3
|
-
"homepage": "http://printjs.crabbly.com",
|
|
4
|
-
"description": "A tiny javascript library to help printing from the web.",
|
|
5
|
-
"version": "1.6.0",
|
|
6
|
-
"main": "dist/print.js",
|
|
7
|
-
"types": "src/index.d.ts",
|
|
8
|
-
"repository": "https://github.com/crabbly/Print.js",
|
|
9
|
-
"license": "MIT",
|
|
10
|
-
"devDependencies": {
|
|
11
|
-
"@babel/core": "7.11.6",
|
|
12
|
-
"@babel/preset-env": "7.11.5",
|
|
13
|
-
"babel-loader": "8.1.0",
|
|
14
|
-
"coveralls": "3.1.0",
|
|
15
|
-
"css-loader": "4.2.2",
|
|
16
|
-
"istanbul-instrumenter-loader": "3.0.1",
|
|
17
|
-
"jasmine-core": "3.6.0",
|
|
18
|
-
"karma": "5.2.1",
|
|
19
|
-
"karma-chrome-launcher": "3.1.0",
|
|
20
|
-
"karma-coverage": "2.0.3",
|
|
21
|
-
"karma-jasmine": "4.0.1",
|
|
22
|
-
"karma-phantomjs-launcher": "1.0.4",
|
|
23
|
-
"karma-sourcemap-loader": "0.3.8",
|
|
24
|
-
"karma-webpack": "4.0.2",
|
|
25
|
-
"mini-css-extract-plugin": "0.11.0",
|
|
26
|
-
"node-sass": "4.14.1",
|
|
27
|
-
"optimize-css-assets-webpack-plugin": "5.0.4",
|
|
28
|
-
"sass-loader": "10.0.2",
|
|
29
|
-
"standard": "14.3.4",
|
|
30
|
-
"terser-webpack-plugin": "4.1.0",
|
|
31
|
-
"webpack": "4.44.1",
|
|
32
|
-
"webpack-cli": "3.3.12",
|
|
33
|
-
"webpack-dev-server": "3.11.0"
|
|
34
|
-
},
|
|
35
|
-
"scripts": {
|
|
36
|
-
"test": "standard && karma start",
|
|
37
|
-
"dev": "webpack --mode development --progress --hide-modules --devtool source-map",
|
|
38
|
-
"watch": "webpack --mode development --watch --progress --hide-modules",
|
|
39
|
-
"production": "webpack --mode production --progress --hide-modules",
|
|
40
|
-
"coverage": "open coverage/lcov-report/index.html",
|
|
41
|
-
"coveralls": "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
|
|
42
|
-
"start": "webpack-dev-server --public http://localhost:8080/test/manual --open",
|
|
43
|
-
"standard:fix": "standard --fix"
|
|
44
|
-
},
|
|
45
|
-
"author": "Rodrigo Vieira <rodrigo@crabbly.com>",
|
|
46
|
-
"standard": {
|
|
47
|
-
"ignore": [
|
|
48
|
-
"/dist/print.js"
|
|
49
|
-
],
|
|
50
|
-
"env": {
|
|
51
|
-
"browser": true,
|
|
52
|
-
"jasmine": true
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
"keywords": [
|
|
56
|
-
"printjs",
|
|
57
|
-
"print.js",
|
|
58
|
-
"print-js"
|
|
59
|
-
]
|
|
60
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "print-js",
|
|
3
|
+
"homepage": "http://printjs.crabbly.com",
|
|
4
|
+
"description": "A tiny javascript library to help printing from the web.",
|
|
5
|
+
"version": "1.6.0",
|
|
6
|
+
"main": "dist/print.js",
|
|
7
|
+
"types": "src/index.d.ts",
|
|
8
|
+
"repository": "https://github.com/crabbly/Print.js",
|
|
9
|
+
"license": "MIT",
|
|
10
|
+
"devDependencies": {
|
|
11
|
+
"@babel/core": "7.11.6",
|
|
12
|
+
"@babel/preset-env": "7.11.5",
|
|
13
|
+
"babel-loader": "8.1.0",
|
|
14
|
+
"coveralls": "3.1.0",
|
|
15
|
+
"css-loader": "4.2.2",
|
|
16
|
+
"istanbul-instrumenter-loader": "3.0.1",
|
|
17
|
+
"jasmine-core": "3.6.0",
|
|
18
|
+
"karma": "5.2.1",
|
|
19
|
+
"karma-chrome-launcher": "3.1.0",
|
|
20
|
+
"karma-coverage": "2.0.3",
|
|
21
|
+
"karma-jasmine": "4.0.1",
|
|
22
|
+
"karma-phantomjs-launcher": "1.0.4",
|
|
23
|
+
"karma-sourcemap-loader": "0.3.8",
|
|
24
|
+
"karma-webpack": "4.0.2",
|
|
25
|
+
"mini-css-extract-plugin": "0.11.0",
|
|
26
|
+
"node-sass": "4.14.1",
|
|
27
|
+
"optimize-css-assets-webpack-plugin": "5.0.4",
|
|
28
|
+
"sass-loader": "10.0.2",
|
|
29
|
+
"standard": "14.3.4",
|
|
30
|
+
"terser-webpack-plugin": "4.1.0",
|
|
31
|
+
"webpack": "4.44.1",
|
|
32
|
+
"webpack-cli": "3.3.12",
|
|
33
|
+
"webpack-dev-server": "3.11.0"
|
|
34
|
+
},
|
|
35
|
+
"scripts": {
|
|
36
|
+
"test": "standard && karma start",
|
|
37
|
+
"dev": "webpack --mode development --progress --hide-modules --devtool source-map",
|
|
38
|
+
"watch": "webpack --mode development --watch --progress --hide-modules",
|
|
39
|
+
"production": "webpack --mode production --progress --hide-modules",
|
|
40
|
+
"coverage": "open coverage/lcov-report/index.html",
|
|
41
|
+
"coveralls": "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
|
|
42
|
+
"start": "webpack-dev-server --public http://localhost:8080/test/manual --open",
|
|
43
|
+
"standard:fix": "standard --fix"
|
|
44
|
+
},
|
|
45
|
+
"author": "Rodrigo Vieira <rodrigo@crabbly.com>",
|
|
46
|
+
"standard": {
|
|
47
|
+
"ignore": [
|
|
48
|
+
"/dist/print.js"
|
|
49
|
+
],
|
|
50
|
+
"env": {
|
|
51
|
+
"browser": true,
|
|
52
|
+
"jasmine": true
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"keywords": [
|
|
56
|
+
"printjs",
|
|
57
|
+
"print.js",
|
|
58
|
+
"print-js"
|
|
59
|
+
]
|
|
60
|
+
}
|
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
declare function printJS(configuration: printJS.Configuration): void;
|
|
2
|
-
declare function printJS(source: string, type?: printJS.PrintTypes): void;
|
|
3
|
-
|
|
4
|
-
declare namespace printJS {
|
|
5
|
-
type PrintTypes = 'pdf' | 'html' | 'image' | 'json' | 'raw-html';
|
|
6
|
-
|
|
7
|
-
interface Configuration {
|
|
8
|
-
printable: any;
|
|
9
|
-
fallbackPrintable?: string;
|
|
10
|
-
type?: PrintTypes;
|
|
11
|
-
documentTitle?: string;
|
|
12
|
-
header?: any;
|
|
13
|
-
headerStyle?: string;
|
|
14
|
-
maxWidth?: number;
|
|
15
|
-
targetStyle?: string | string[];
|
|
16
|
-
targetStyles?: string | string[];
|
|
17
|
-
properties?: any;
|
|
18
|
-
gridHeaderStyle?: string;
|
|
19
|
-
gridStyle?: string;
|
|
20
|
-
showModal?: boolean;
|
|
21
|
-
onLoadingStart?: () => void;
|
|
22
|
-
onLoadingEnd?: () => void;
|
|
23
|
-
modalMessage?: string;
|
|
24
|
-
frameId?: string;
|
|
25
|
-
ignoreElements?: string | string[];
|
|
26
|
-
repeatTableHeader?: boolean;
|
|
27
|
-
css?: string | string[];
|
|
28
|
-
style?: string;
|
|
29
|
-
scanStyles?: boolean;
|
|
30
|
-
onError?: (error: any, xmlHttpRequest?: XMLHttpRequest) => void;
|
|
31
|
-
onPrintDialogClose?: () => void;
|
|
32
|
-
onIncompatibleBrowser?: () => void;
|
|
33
|
-
base64?: boolean;
|
|
34
|
-
|
|
35
|
-
// Deprecated
|
|
36
|
-
onPdfOpen?: () => void;
|
|
37
|
-
font?: string;
|
|
38
|
-
font_size?: string;
|
|
39
|
-
honorMarginPadding?: boolean;
|
|
40
|
-
honorColor?: boolean;
|
|
41
|
-
imageStyle?: string;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export = printJS;
|
|
1
|
+
declare function printJS(configuration: printJS.Configuration): void;
|
|
2
|
+
declare function printJS(source: string, type?: printJS.PrintTypes): void;
|
|
3
|
+
|
|
4
|
+
declare namespace printJS {
|
|
5
|
+
type PrintTypes = 'pdf' | 'html' | 'image' | 'json' | 'raw-html';
|
|
6
|
+
|
|
7
|
+
interface Configuration {
|
|
8
|
+
printable: any;
|
|
9
|
+
fallbackPrintable?: string;
|
|
10
|
+
type?: PrintTypes;
|
|
11
|
+
documentTitle?: string;
|
|
12
|
+
header?: any;
|
|
13
|
+
headerStyle?: string;
|
|
14
|
+
maxWidth?: number;
|
|
15
|
+
targetStyle?: string | string[];
|
|
16
|
+
targetStyles?: string | string[];
|
|
17
|
+
properties?: any;
|
|
18
|
+
gridHeaderStyle?: string;
|
|
19
|
+
gridStyle?: string;
|
|
20
|
+
showModal?: boolean;
|
|
21
|
+
onLoadingStart?: () => void;
|
|
22
|
+
onLoadingEnd?: () => void;
|
|
23
|
+
modalMessage?: string;
|
|
24
|
+
frameId?: string;
|
|
25
|
+
ignoreElements?: string | string[];
|
|
26
|
+
repeatTableHeader?: boolean;
|
|
27
|
+
css?: string | string[];
|
|
28
|
+
style?: string;
|
|
29
|
+
scanStyles?: boolean;
|
|
30
|
+
onError?: (error: any, xmlHttpRequest?: XMLHttpRequest) => void;
|
|
31
|
+
onPrintDialogClose?: () => void;
|
|
32
|
+
onIncompatibleBrowser?: () => void;
|
|
33
|
+
base64?: boolean;
|
|
34
|
+
|
|
35
|
+
// Deprecated
|
|
36
|
+
onPdfOpen?: () => void;
|
|
37
|
+
font?: string;
|
|
38
|
+
font_size?: string;
|
|
39
|
+
honorMarginPadding?: boolean;
|
|
40
|
+
honorColor?: boolean;
|
|
41
|
+
imageStyle?: string;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export = printJS;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import './sass/index.scss'
|
|
2
|
-
import print from './js/init'
|
|
3
|
-
|
|
4
|
-
const printJS = print.init
|
|
5
|
-
|
|
6
|
-
if (typeof window !== 'undefined') {
|
|
7
|
-
window.printJS = printJS
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export default printJS
|
|
1
|
+
import './sass/index.scss'
|
|
2
|
+
import print from './js/init'
|
|
3
|
+
|
|
4
|
+
const printJS = print.init
|
|
5
|
+
|
|
6
|
+
if (typeof window !== 'undefined') {
|
|
7
|
+
window.printJS = printJS
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export default printJS
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
const Browser = {
|
|
2
|
-
// Firefox 1.0+
|
|
3
|
-
isFirefox: () => {
|
|
4
|
-
return typeof InstallTrigger !== 'undefined'
|
|
5
|
-
},
|
|
6
|
-
// Internet Explorer 6-11
|
|
7
|
-
isIE: () => {
|
|
8
|
-
return navigator.userAgent.indexOf('MSIE') !== -1 || !!document.documentMode
|
|
9
|
-
},
|
|
10
|
-
// Edge 20+
|
|
11
|
-
isEdge: () => {
|
|
12
|
-
return !Browser.isIE() && !!window.StyleMedia
|
|
13
|
-
},
|
|
14
|
-
// Chrome 1+
|
|
15
|
-
isChrome: (context = window) => {
|
|
16
|
-
return !!context.chrome
|
|
17
|
-
},
|
|
18
|
-
// At least Safari 3+: "[object HTMLElementConstructor]"
|
|
19
|
-
isSafari: () => {
|
|
20
|
-
return Object.prototype.toString.call(window.HTMLElement).indexOf('Constructor') > 0 ||
|
|
21
|
-
navigator.userAgent.toLowerCase().indexOf('safari') !== -1
|
|
22
|
-
},
|
|
23
|
-
// IOS Chrome
|
|
24
|
-
isIOSChrome: () => {
|
|
25
|
-
return navigator.userAgent.toLowerCase().indexOf('crios') !== -1
|
|
26
|
-
},
|
|
27
|
-
// QiCheng
|
|
28
|
-
isNstc: () => {
|
|
29
|
-
return navigator.userAgent.indexOf('NSTC-WebEntry') !== -1
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export default Browser
|
|
1
|
+
const Browser = {
|
|
2
|
+
// Firefox 1.0+
|
|
3
|
+
isFirefox: () => {
|
|
4
|
+
return typeof InstallTrigger !== 'undefined'
|
|
5
|
+
},
|
|
6
|
+
// Internet Explorer 6-11
|
|
7
|
+
isIE: () => {
|
|
8
|
+
return navigator.userAgent.indexOf('MSIE') !== -1 || !!document.documentMode
|
|
9
|
+
},
|
|
10
|
+
// Edge 20+
|
|
11
|
+
isEdge: () => {
|
|
12
|
+
return !Browser.isIE() && !!window.StyleMedia
|
|
13
|
+
},
|
|
14
|
+
// Chrome 1+
|
|
15
|
+
isChrome: (context = window) => {
|
|
16
|
+
return !!context.chrome
|
|
17
|
+
},
|
|
18
|
+
// At least Safari 3+: "[object HTMLElementConstructor]"
|
|
19
|
+
isSafari: () => {
|
|
20
|
+
return Object.prototype.toString.call(window.HTMLElement).indexOf('Constructor') > 0 ||
|
|
21
|
+
navigator.userAgent.toLowerCase().indexOf('safari') !== -1
|
|
22
|
+
},
|
|
23
|
+
// IOS Chrome
|
|
24
|
+
isIOSChrome: () => {
|
|
25
|
+
return navigator.userAgent.toLowerCase().indexOf('crios') !== -1
|
|
26
|
+
},
|
|
27
|
+
// QiCheng
|
|
28
|
+
isNstc: () => {
|
|
29
|
+
return navigator.userAgent.indexOf('NSTC-WebEntry') !== -1
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export default Browser
|
|
@@ -1,103 +1,103 @@
|
|
|
1
|
-
import Modal from './modal'
|
|
2
|
-
import Browser from './browser'
|
|
3
|
-
|
|
4
|
-
export function addWrapper (htmlData, params) {
|
|
5
|
-
const bodyStyle = 'font-family:' + params.font + ' !important; font-size: ' + params.font_size + ' !important; width:100%;'
|
|
6
|
-
return '<div style="' + bodyStyle + '">' + htmlData + '</div>'
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export function capitalizePrint (obj) {
|
|
10
|
-
return obj.charAt(0).toUpperCase() + obj.slice(1)
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export function collectStyles (element, params) {
|
|
14
|
-
const win = document.defaultView || window
|
|
15
|
-
|
|
16
|
-
// String variable to hold styling for each element
|
|
17
|
-
let elementStyle = ''
|
|
18
|
-
|
|
19
|
-
// Loop over computed styles
|
|
20
|
-
const styles = win.getComputedStyle(element, '')
|
|
21
|
-
|
|
22
|
-
for (let key = 0; key < styles.length; key++) {
|
|
23
|
-
// Check if style should be processed
|
|
24
|
-
if (params.targetStyles.indexOf('*') !== -1 || params.targetStyle.indexOf(styles[key]) !== -1 || targetStylesMatch(params.targetStyles, styles[key])) {
|
|
25
|
-
if (styles.getPropertyValue(styles[key])) elementStyle += styles[key] + ':' + styles.getPropertyValue(styles[key]) + ';'
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
// Print friendly defaults (deprecated)
|
|
30
|
-
elementStyle += 'max-width: ' + params.maxWidth + 'px !important; font-size: ' + params.font_size + ' !important;'
|
|
31
|
-
|
|
32
|
-
return elementStyle
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
function targetStylesMatch (styles, value) {
|
|
36
|
-
for (let i = 0; i < styles.length; i++) {
|
|
37
|
-
if (typeof value === 'object' && value.indexOf(styles[i]) !== -1) return true
|
|
38
|
-
}
|
|
39
|
-
return false
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export function addHeader (printElement, params) {
|
|
43
|
-
// Create the header container div
|
|
44
|
-
const headerContainer = document.createElement('div')
|
|
45
|
-
|
|
46
|
-
// Check if the header is text or raw html
|
|
47
|
-
if (isRawHTML(params.header)) {
|
|
48
|
-
headerContainer.innerHTML = params.header
|
|
49
|
-
} else {
|
|
50
|
-
// Create header element
|
|
51
|
-
const headerElement = document.createElement('h1')
|
|
52
|
-
|
|
53
|
-
// Create header text node
|
|
54
|
-
const headerNode = document.createTextNode(params.header)
|
|
55
|
-
|
|
56
|
-
// Build and style
|
|
57
|
-
headerElement.appendChild(headerNode)
|
|
58
|
-
headerElement.setAttribute('style', params.headerStyle)
|
|
59
|
-
headerContainer.appendChild(headerElement)
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
printElement.insertBefore(headerContainer, printElement.childNodes[0])
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export function cleanUp (params) {
|
|
66
|
-
// If we are showing a feedback message to user, remove it
|
|
67
|
-
if (params.showModal) Modal.close()
|
|
68
|
-
|
|
69
|
-
// Check for a finished loading hook function
|
|
70
|
-
if (params.onLoadingEnd) params.onLoadingEnd()
|
|
71
|
-
|
|
72
|
-
// If preloading pdf files, clean blob url
|
|
73
|
-
if (params.showModal || params.onLoadingStart) window.URL.revokeObjectURL(params.printable)
|
|
74
|
-
|
|
75
|
-
// Run onPrintDialogClose callback
|
|
76
|
-
let event = 'mouseover'
|
|
77
|
-
|
|
78
|
-
if (Browser.isChrome() || Browser.isFirefox()) {
|
|
79
|
-
// Ps.: Firefox will require an extra click in the document to fire the focus event.
|
|
80
|
-
event = 'focus'
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
const handler = () => {
|
|
84
|
-
// Make sure the event only happens once.
|
|
85
|
-
window.removeEventListener(event, handler)
|
|
86
|
-
|
|
87
|
-
params.onPrintDialogClose()
|
|
88
|
-
|
|
89
|
-
// Remove iframe from the DOM
|
|
90
|
-
const iframe = document.getElementById(params.frameId)
|
|
91
|
-
|
|
92
|
-
if (iframe) {
|
|
93
|
-
iframe.remove()
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
window.addEventListener(event, handler)
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
export function isRawHTML (raw) {
|
|
101
|
-
const regexHtml = new RegExp('<([A-Za-z][A-Za-z0-9]*)\\b[^>]*>(.*?)</\\1>')
|
|
102
|
-
return regexHtml.test(raw)
|
|
103
|
-
}
|
|
1
|
+
import Modal from './modal'
|
|
2
|
+
import Browser from './browser'
|
|
3
|
+
|
|
4
|
+
export function addWrapper (htmlData, params) {
|
|
5
|
+
const bodyStyle = 'font-family:' + params.font + ' !important; font-size: ' + params.font_size + ' !important; width:100%;'
|
|
6
|
+
return '<div style="' + bodyStyle + '">' + htmlData + '</div>'
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export function capitalizePrint (obj) {
|
|
10
|
+
return obj.charAt(0).toUpperCase() + obj.slice(1)
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export function collectStyles (element, params) {
|
|
14
|
+
const win = document.defaultView || window
|
|
15
|
+
|
|
16
|
+
// String variable to hold styling for each element
|
|
17
|
+
let elementStyle = ''
|
|
18
|
+
|
|
19
|
+
// Loop over computed styles
|
|
20
|
+
const styles = win.getComputedStyle(element, '')
|
|
21
|
+
|
|
22
|
+
for (let key = 0; key < styles.length; key++) {
|
|
23
|
+
// Check if style should be processed
|
|
24
|
+
if (params.targetStyles.indexOf('*') !== -1 || params.targetStyle.indexOf(styles[key]) !== -1 || targetStylesMatch(params.targetStyles, styles[key])) {
|
|
25
|
+
if (styles.getPropertyValue(styles[key])) elementStyle += styles[key] + ':' + styles.getPropertyValue(styles[key]) + ';'
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Print friendly defaults (deprecated)
|
|
30
|
+
elementStyle += 'max-width: ' + params.maxWidth + 'px !important; font-size: ' + params.font_size + ' !important;'
|
|
31
|
+
|
|
32
|
+
return elementStyle
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function targetStylesMatch (styles, value) {
|
|
36
|
+
for (let i = 0; i < styles.length; i++) {
|
|
37
|
+
if (typeof value === 'object' && value.indexOf(styles[i]) !== -1) return true
|
|
38
|
+
}
|
|
39
|
+
return false
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export function addHeader (printElement, params) {
|
|
43
|
+
// Create the header container div
|
|
44
|
+
const headerContainer = document.createElement('div')
|
|
45
|
+
|
|
46
|
+
// Check if the header is text or raw html
|
|
47
|
+
if (isRawHTML(params.header)) {
|
|
48
|
+
headerContainer.innerHTML = params.header
|
|
49
|
+
} else {
|
|
50
|
+
// Create header element
|
|
51
|
+
const headerElement = document.createElement('h1')
|
|
52
|
+
|
|
53
|
+
// Create header text node
|
|
54
|
+
const headerNode = document.createTextNode(params.header)
|
|
55
|
+
|
|
56
|
+
// Build and style
|
|
57
|
+
headerElement.appendChild(headerNode)
|
|
58
|
+
headerElement.setAttribute('style', params.headerStyle)
|
|
59
|
+
headerContainer.appendChild(headerElement)
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
printElement.insertBefore(headerContainer, printElement.childNodes[0])
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export function cleanUp (params) {
|
|
66
|
+
// If we are showing a feedback message to user, remove it
|
|
67
|
+
if (params.showModal) Modal.close()
|
|
68
|
+
|
|
69
|
+
// Check for a finished loading hook function
|
|
70
|
+
if (params.onLoadingEnd) params.onLoadingEnd()
|
|
71
|
+
|
|
72
|
+
// If preloading pdf files, clean blob url
|
|
73
|
+
if (params.showModal || params.onLoadingStart) window.URL.revokeObjectURL(params.printable)
|
|
74
|
+
|
|
75
|
+
// Run onPrintDialogClose callback
|
|
76
|
+
let event = 'mouseover'
|
|
77
|
+
|
|
78
|
+
if (Browser.isChrome() || Browser.isFirefox()) {
|
|
79
|
+
// Ps.: Firefox will require an extra click in the document to fire the focus event.
|
|
80
|
+
event = 'focus'
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
const handler = () => {
|
|
84
|
+
// Make sure the event only happens once.
|
|
85
|
+
window.removeEventListener(event, handler)
|
|
86
|
+
|
|
87
|
+
params.onPrintDialogClose()
|
|
88
|
+
|
|
89
|
+
// Remove iframe from the DOM
|
|
90
|
+
const iframe = document.getElementById(params.frameId)
|
|
91
|
+
|
|
92
|
+
if (iframe) {
|
|
93
|
+
iframe.remove()
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
window.addEventListener(event, handler)
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export function isRawHTML (raw) {
|
|
101
|
+
const regexHtml = new RegExp('<([A-Za-z][A-Za-z0-9]*)\\b[^>]*>(.*?)</\\1>')
|
|
102
|
+
return regexHtml.test(raw)
|
|
103
|
+
}
|
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
import { collectStyles, addHeader } from './functions'
|
|
2
|
-
import Print from './print'
|
|
3
|
-
|
|
4
|
-
export default {
|
|
5
|
-
print: (params, printFrame) => {
|
|
6
|
-
// Get the DOM printable element
|
|
7
|
-
const printElement = isHtmlElement(params.printable) ? params.printable : document.getElementById(params.printable)
|
|
8
|
-
|
|
9
|
-
// Check if the element exists
|
|
10
|
-
if (!printElement) {
|
|
11
|
-
window.console.error('Invalid HTML element id: ' + params.printable)
|
|
12
|
-
return
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
// Clone the target element including its children (if available)
|
|
16
|
-
params.printableElement = cloneElement(printElement, params)
|
|
17
|
-
|
|
18
|
-
// Add header
|
|
19
|
-
if (params.header) {
|
|
20
|
-
addHeader(params.printableElement, params)
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
// Print html element contents
|
|
24
|
-
Print.send(params, printFrame)
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
function cloneElement (element, params) {
|
|
29
|
-
// Clone the main node (if not already inside the recursion process)
|
|
30
|
-
const clone = element.cloneNode()
|
|
31
|
-
|
|
32
|
-
// Loop over and process the children elements / nodes (including text nodes)
|
|
33
|
-
const childNodesArray = Array.prototype.slice.call(element.childNodes)
|
|
34
|
-
for (let i = 0; i < childNodesArray.length; i++) {
|
|
35
|
-
// Check if we are skipping the current element
|
|
36
|
-
if (params.ignoreElements.indexOf(childNodesArray[i].id) !== -1) {
|
|
37
|
-
continue
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
// Clone the child element
|
|
41
|
-
const clonedChild = cloneElement(childNodesArray[i], params)
|
|
42
|
-
|
|
43
|
-
// Attach the cloned child to the cloned parent node
|
|
44
|
-
clone.appendChild(clonedChild)
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
// Get all styling for print element (for nodes of type element only)
|
|
48
|
-
if (params.scanStyles && element.nodeType === 1) {
|
|
49
|
-
clone.setAttribute('style', collectStyles(element, params))
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// Check if the element needs any state processing (copy user input data)
|
|
53
|
-
switch (element.tagName) {
|
|
54
|
-
case 'SELECT':
|
|
55
|
-
// Copy the current selection value to its clone
|
|
56
|
-
clone.value = element.value
|
|
57
|
-
break
|
|
58
|
-
case 'CANVAS':
|
|
59
|
-
// Copy the canvas content to its clone
|
|
60
|
-
clone.getContext('2d').drawImage(element, 0, 0)
|
|
61
|
-
break
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
return clone
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
function isHtmlElement (printable) {
|
|
68
|
-
// Check if element is instance of HTMLElement or has nodeType === 1 (for elements in iframe)
|
|
69
|
-
return typeof printable === 'object' && printable && (printable instanceof HTMLElement || printable.nodeType === 1)
|
|
70
|
-
}
|
|
1
|
+
import { collectStyles, addHeader } from './functions'
|
|
2
|
+
import Print from './print'
|
|
3
|
+
|
|
4
|
+
export default {
|
|
5
|
+
print: (params, printFrame) => {
|
|
6
|
+
// Get the DOM printable element
|
|
7
|
+
const printElement = isHtmlElement(params.printable) ? params.printable : document.getElementById(params.printable)
|
|
8
|
+
|
|
9
|
+
// Check if the element exists
|
|
10
|
+
if (!printElement) {
|
|
11
|
+
window.console.error('Invalid HTML element id: ' + params.printable)
|
|
12
|
+
return
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// Clone the target element including its children (if available)
|
|
16
|
+
params.printableElement = cloneElement(printElement, params)
|
|
17
|
+
|
|
18
|
+
// Add header
|
|
19
|
+
if (params.header) {
|
|
20
|
+
addHeader(params.printableElement, params)
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// Print html element contents
|
|
24
|
+
Print.send(params, printFrame)
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
function cloneElement (element, params) {
|
|
29
|
+
// Clone the main node (if not already inside the recursion process)
|
|
30
|
+
const clone = element.cloneNode()
|
|
31
|
+
|
|
32
|
+
// Loop over and process the children elements / nodes (including text nodes)
|
|
33
|
+
const childNodesArray = Array.prototype.slice.call(element.childNodes)
|
|
34
|
+
for (let i = 0; i < childNodesArray.length; i++) {
|
|
35
|
+
// Check if we are skipping the current element
|
|
36
|
+
if (params.ignoreElements.indexOf(childNodesArray[i].id) !== -1) {
|
|
37
|
+
continue
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// Clone the child element
|
|
41
|
+
const clonedChild = cloneElement(childNodesArray[i], params)
|
|
42
|
+
|
|
43
|
+
// Attach the cloned child to the cloned parent node
|
|
44
|
+
clone.appendChild(clonedChild)
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// Get all styling for print element (for nodes of type element only)
|
|
48
|
+
if (params.scanStyles && element.nodeType === 1) {
|
|
49
|
+
clone.setAttribute('style', collectStyles(element, params))
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// Check if the element needs any state processing (copy user input data)
|
|
53
|
+
switch (element.tagName) {
|
|
54
|
+
case 'SELECT':
|
|
55
|
+
// Copy the current selection value to its clone
|
|
56
|
+
clone.value = element.value
|
|
57
|
+
break
|
|
58
|
+
case 'CANVAS':
|
|
59
|
+
// Copy the canvas content to its clone
|
|
60
|
+
clone.getContext('2d').drawImage(element, 0, 0)
|
|
61
|
+
break
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return clone
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
function isHtmlElement (printable) {
|
|
68
|
+
// Check if element is instance of HTMLElement or has nodeType === 1 (for elements in iframe)
|
|
69
|
+
return typeof printable === 'object' && printable && (printable instanceof HTMLElement || printable.nodeType === 1)
|
|
70
|
+
}
|