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,48 +1,48 @@
|
|
|
1
|
-
import { addHeader } from './functions'
|
|
2
|
-
import Print from './print'
|
|
3
|
-
import Browser from './browser'
|
|
4
|
-
|
|
5
|
-
export default {
|
|
6
|
-
print: (params, printFrame) => {
|
|
7
|
-
// Check if we are printing one image or multiple images
|
|
8
|
-
if (params.printable.constructor !== Array) {
|
|
9
|
-
// Create array with one image
|
|
10
|
-
params.printable = [params.printable]
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
// Create printable element (container)
|
|
14
|
-
params.printableElement = document.createElement('div')
|
|
15
|
-
|
|
16
|
-
// Create all image elements and append them to the printable container
|
|
17
|
-
params.printable.forEach(src => {
|
|
18
|
-
// Create the image element
|
|
19
|
-
const img = document.createElement('img')
|
|
20
|
-
img.setAttribute('style', params.imageStyle)
|
|
21
|
-
|
|
22
|
-
// Set image src with the file url
|
|
23
|
-
img.src = src
|
|
24
|
-
|
|
25
|
-
// The following block is for Firefox, which for some reason requires the image's src to be fully qualified in
|
|
26
|
-
// order to print it
|
|
27
|
-
if (Browser.isFirefox()) {
|
|
28
|
-
const fullyQualifiedSrc = img.src
|
|
29
|
-
img.src = fullyQualifiedSrc
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
// Create the image wrapper
|
|
33
|
-
const imageWrapper = document.createElement('div')
|
|
34
|
-
|
|
35
|
-
// Append image to the wrapper element
|
|
36
|
-
imageWrapper.appendChild(img)
|
|
37
|
-
|
|
38
|
-
// Append wrapper to the printable element
|
|
39
|
-
params.printableElement.appendChild(imageWrapper)
|
|
40
|
-
})
|
|
41
|
-
|
|
42
|
-
// Check if we are adding a print header
|
|
43
|
-
if (params.header) addHeader(params.printableElement, params)
|
|
44
|
-
|
|
45
|
-
// Print image
|
|
46
|
-
Print.send(params, printFrame)
|
|
47
|
-
}
|
|
48
|
-
}
|
|
1
|
+
import { addHeader } from './functions'
|
|
2
|
+
import Print from './print'
|
|
3
|
+
import Browser from './browser'
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
print: (params, printFrame) => {
|
|
7
|
+
// Check if we are printing one image or multiple images
|
|
8
|
+
if (params.printable.constructor !== Array) {
|
|
9
|
+
// Create array with one image
|
|
10
|
+
params.printable = [params.printable]
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
// Create printable element (container)
|
|
14
|
+
params.printableElement = document.createElement('div')
|
|
15
|
+
|
|
16
|
+
// Create all image elements and append them to the printable container
|
|
17
|
+
params.printable.forEach(src => {
|
|
18
|
+
// Create the image element
|
|
19
|
+
const img = document.createElement('img')
|
|
20
|
+
img.setAttribute('style', params.imageStyle)
|
|
21
|
+
|
|
22
|
+
// Set image src with the file url
|
|
23
|
+
img.src = src
|
|
24
|
+
|
|
25
|
+
// The following block is for Firefox, which for some reason requires the image's src to be fully qualified in
|
|
26
|
+
// order to print it
|
|
27
|
+
if (Browser.isFirefox()) {
|
|
28
|
+
const fullyQualifiedSrc = img.src
|
|
29
|
+
img.src = fullyQualifiedSrc
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Create the image wrapper
|
|
33
|
+
const imageWrapper = document.createElement('div')
|
|
34
|
+
|
|
35
|
+
// Append image to the wrapper element
|
|
36
|
+
imageWrapper.appendChild(img)
|
|
37
|
+
|
|
38
|
+
// Append wrapper to the printable element
|
|
39
|
+
params.printableElement.appendChild(imageWrapper)
|
|
40
|
+
})
|
|
41
|
+
|
|
42
|
+
// Check if we are adding a print header
|
|
43
|
+
if (params.header) addHeader(params.printableElement, params)
|
|
44
|
+
|
|
45
|
+
// Print image
|
|
46
|
+
Print.send(params, printFrame)
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -1,168 +1,168 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
import Browser from './browser'
|
|
4
|
-
import Modal from './modal'
|
|
5
|
-
import Pdf from './pdf'
|
|
6
|
-
import Html from './html'
|
|
7
|
-
import RawHtml from './raw-html'
|
|
8
|
-
import Image from './image'
|
|
9
|
-
import Json from './json'
|
|
10
|
-
|
|
11
|
-
const printTypes = ['pdf', 'html', 'image', 'json', 'raw-html']
|
|
12
|
-
|
|
13
|
-
export default {
|
|
14
|
-
init () {
|
|
15
|
-
const params = {
|
|
16
|
-
printable: null,
|
|
17
|
-
fallbackPrintable: null,
|
|
18
|
-
type: 'pdf',
|
|
19
|
-
header: null,
|
|
20
|
-
headerStyle: 'font-weight: 300;',
|
|
21
|
-
maxWidth: 800,
|
|
22
|
-
properties: null,
|
|
23
|
-
gridHeaderStyle: 'font-weight: bold; padding: 5px; border: 1px solid #dddddd;',
|
|
24
|
-
gridStyle: 'border: 1px solid lightgray; margin-bottom: -1px;',
|
|
25
|
-
showModal: false,
|
|
26
|
-
onError: (error) => { throw error },
|
|
27
|
-
onLoadingStart: null,
|
|
28
|
-
onLoadingEnd: null,
|
|
29
|
-
onPrintDialogClose: () => {},
|
|
30
|
-
onIncompatibleBrowser: () => {},
|
|
31
|
-
modalMessage: '打印中...',
|
|
32
|
-
frameId: 'printJS',
|
|
33
|
-
printableElement: null,
|
|
34
|
-
documentTitle: 'Document',
|
|
35
|
-
targetStyle: ['clear', 'display', 'width', 'min-width', 'height', 'min-height', 'max-height'],
|
|
36
|
-
targetStyles: ['border', 'box', 'break', 'text-decoration'],
|
|
37
|
-
ignoreElements: [],
|
|
38
|
-
repeatTableHeader: true,
|
|
39
|
-
css: null,
|
|
40
|
-
style: null,
|
|
41
|
-
scanStyles: true,
|
|
42
|
-
base64: false,
|
|
43
|
-
|
|
44
|
-
// Deprecated
|
|
45
|
-
onPdfOpen: null,
|
|
46
|
-
font: 'TimesNewRoman',
|
|
47
|
-
font_size: '12pt',
|
|
48
|
-
honorMarginPadding: true,
|
|
49
|
-
honorColor: false,
|
|
50
|
-
imageStyle: 'max-width: 100%;'
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
// Check if a printable document or object was supplied
|
|
54
|
-
const args = arguments[0]
|
|
55
|
-
if (args === undefined) {
|
|
56
|
-
throw new Error('printJS expects at least 1 attribute.')
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// Process parameters
|
|
60
|
-
switch (typeof args) {
|
|
61
|
-
case 'string':
|
|
62
|
-
params.printable = encodeURI(args)
|
|
63
|
-
params.fallbackPrintable = params.printable
|
|
64
|
-
params.type = arguments[1] || params.type
|
|
65
|
-
break
|
|
66
|
-
case 'object':
|
|
67
|
-
params.printable = args.printable
|
|
68
|
-
params.fallbackPrintable = typeof args.fallbackPrintable !== 'undefined' ? args.fallbackPrintable : params.printable
|
|
69
|
-
params.fallbackPrintable = params.base64 ? `data:application/pdf;base64,${params.fallbackPrintable}` : params.fallbackPrintable
|
|
70
|
-
for (var k in params) {
|
|
71
|
-
if (k === 'printable' || k === 'fallbackPrintable') continue
|
|
72
|
-
|
|
73
|
-
params[k] = typeof args[k] !== 'undefined' ? args[k] : params[k]
|
|
74
|
-
}
|
|
75
|
-
break
|
|
76
|
-
default:
|
|
77
|
-
throw new Error('Unexpected argument type! Expected "string" or "object", got ' + typeof args)
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
// Validate printable
|
|
81
|
-
if (!params.printable) throw new Error('Missing printable information.')
|
|
82
|
-
|
|
83
|
-
// Validate type
|
|
84
|
-
if (!params.type || typeof params.type !== 'string' || printTypes.indexOf(params.type.toLowerCase()) === -1) {
|
|
85
|
-
throw new Error('Invalid print type. Available types are: pdf, html, image and json.')
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
// Check if we are showing a feedback message to the user (useful for large files)
|
|
89
|
-
if (params.showModal) Modal.show(params)
|
|
90
|
-
|
|
91
|
-
// Check for a print start hook function
|
|
92
|
-
if (params.onLoadingStart) params.onLoadingStart()
|
|
93
|
-
|
|
94
|
-
// To prevent duplication and issues, remove any used printFrame from the DOM
|
|
95
|
-
const usedFrame = document.getElementById(params.frameId)
|
|
96
|
-
|
|
97
|
-
if (usedFrame) usedFrame.parentNode.removeChild(usedFrame)
|
|
98
|
-
|
|
99
|
-
// Create a new iframe for the print job
|
|
100
|
-
const printFrame = document.createElement('iframe')
|
|
101
|
-
|
|
102
|
-
if (Browser.isFirefox()) {
|
|
103
|
-
// Set the iframe to be is visible on the page (guaranteed by fixed position) but hidden using opacity 0, because
|
|
104
|
-
// this works in Firefox. The height needs to be sufficient for some part of the document other than the PDF
|
|
105
|
-
// viewer's toolbar to be visible in the page
|
|
106
|
-
printFrame.setAttribute('style', 'width: 1px; height: 100px; position: fixed; left: 0; top: 0; opacity: 0; border-width: 0; margin: 0; padding: 0')
|
|
107
|
-
} else {
|
|
108
|
-
// Hide the iframe in other browsers
|
|
109
|
-
printFrame.setAttribute('style', 'visibility: hidden; height: 0; width: 0; position: absolute; border: 0')
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
// Set iframe element id
|
|
113
|
-
printFrame.setAttribute('id', params.frameId)
|
|
114
|
-
|
|
115
|
-
// For non pdf printing, pass an html document string to srcdoc (force onload callback)
|
|
116
|
-
if (params.type !== 'pdf') {
|
|
117
|
-
printFrame.srcdoc = '<html><head><title>' + params.documentTitle + '</title>'
|
|
118
|
-
|
|
119
|
-
// Attach css files
|
|
120
|
-
if (params.css) {
|
|
121
|
-
// Add support for single file
|
|
122
|
-
if (!Array.isArray(params.css)) params.css = [params.css]
|
|
123
|
-
|
|
124
|
-
// Create link tags for each css file
|
|
125
|
-
params.css.forEach(file => {
|
|
126
|
-
printFrame.srcdoc += '<link rel="stylesheet" href="' + file + '">'
|
|
127
|
-
})
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
printFrame.srcdoc += '</head><body></body></html>'
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
// Check printable type
|
|
134
|
-
switch (params.type) {
|
|
135
|
-
case 'pdf':
|
|
136
|
-
// Check browser support for pdf and if not supported we will just open the pdf file instead
|
|
137
|
-
if (Browser.isIE()) {
|
|
138
|
-
try {
|
|
139
|
-
console.info('Print.js doesn\'t support PDF printing in Internet Explorer.')
|
|
140
|
-
const win = window.open(params.fallbackPrintable, '_blank')
|
|
141
|
-
win.focus()
|
|
142
|
-
params.onIncompatibleBrowser()
|
|
143
|
-
} catch (error) {
|
|
144
|
-
params.onError(error)
|
|
145
|
-
} finally {
|
|
146
|
-
// Make sure there is no loading modal opened
|
|
147
|
-
if (params.showModal) Modal.close()
|
|
148
|
-
if (params.onLoadingEnd) params.onLoadingEnd()
|
|
149
|
-
}
|
|
150
|
-
} else {
|
|
151
|
-
Pdf.print(params, printFrame)
|
|
152
|
-
}
|
|
153
|
-
break
|
|
154
|
-
case 'image':
|
|
155
|
-
Image.print(params, printFrame)
|
|
156
|
-
break
|
|
157
|
-
case 'html':
|
|
158
|
-
Html.print(params, printFrame)
|
|
159
|
-
break
|
|
160
|
-
case 'raw-html':
|
|
161
|
-
RawHtml.print(params, printFrame)
|
|
162
|
-
break
|
|
163
|
-
case 'json':
|
|
164
|
-
Json.print(params, printFrame)
|
|
165
|
-
break
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
}
|
|
1
|
+
'use strict'
|
|
2
|
+
|
|
3
|
+
import Browser from './browser'
|
|
4
|
+
import Modal from './modal'
|
|
5
|
+
import Pdf from './pdf'
|
|
6
|
+
import Html from './html'
|
|
7
|
+
import RawHtml from './raw-html'
|
|
8
|
+
import Image from './image'
|
|
9
|
+
import Json from './json'
|
|
10
|
+
|
|
11
|
+
const printTypes = ['pdf', 'html', 'image', 'json', 'raw-html']
|
|
12
|
+
|
|
13
|
+
export default {
|
|
14
|
+
init () {
|
|
15
|
+
const params = {
|
|
16
|
+
printable: null,
|
|
17
|
+
fallbackPrintable: null,
|
|
18
|
+
type: 'pdf',
|
|
19
|
+
header: null,
|
|
20
|
+
headerStyle: 'font-weight: 300;',
|
|
21
|
+
maxWidth: 800,
|
|
22
|
+
properties: null,
|
|
23
|
+
gridHeaderStyle: 'font-weight: bold; padding: 5px; border: 1px solid #dddddd;',
|
|
24
|
+
gridStyle: 'border: 1px solid lightgray; margin-bottom: -1px;',
|
|
25
|
+
showModal: false,
|
|
26
|
+
onError: (error) => { throw error },
|
|
27
|
+
onLoadingStart: null,
|
|
28
|
+
onLoadingEnd: null,
|
|
29
|
+
onPrintDialogClose: () => {},
|
|
30
|
+
onIncompatibleBrowser: () => {},
|
|
31
|
+
modalMessage: '打印中...',
|
|
32
|
+
frameId: 'printJS',
|
|
33
|
+
printableElement: null,
|
|
34
|
+
documentTitle: 'Document',
|
|
35
|
+
targetStyle: ['clear', 'display', 'width', 'min-width', 'height', 'min-height', 'max-height'],
|
|
36
|
+
targetStyles: ['border', 'box', 'break', 'text-decoration'],
|
|
37
|
+
ignoreElements: [],
|
|
38
|
+
repeatTableHeader: true,
|
|
39
|
+
css: null,
|
|
40
|
+
style: null,
|
|
41
|
+
scanStyles: true,
|
|
42
|
+
base64: false,
|
|
43
|
+
|
|
44
|
+
// Deprecated
|
|
45
|
+
onPdfOpen: null,
|
|
46
|
+
font: 'TimesNewRoman',
|
|
47
|
+
font_size: '12pt',
|
|
48
|
+
honorMarginPadding: true,
|
|
49
|
+
honorColor: false,
|
|
50
|
+
imageStyle: 'max-width: 100%;'
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// Check if a printable document or object was supplied
|
|
54
|
+
const args = arguments[0]
|
|
55
|
+
if (args === undefined) {
|
|
56
|
+
throw new Error('printJS expects at least 1 attribute.')
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// Process parameters
|
|
60
|
+
switch (typeof args) {
|
|
61
|
+
case 'string':
|
|
62
|
+
params.printable = encodeURI(args)
|
|
63
|
+
params.fallbackPrintable = params.printable
|
|
64
|
+
params.type = arguments[1] || params.type
|
|
65
|
+
break
|
|
66
|
+
case 'object':
|
|
67
|
+
params.printable = args.printable
|
|
68
|
+
params.fallbackPrintable = typeof args.fallbackPrintable !== 'undefined' ? args.fallbackPrintable : params.printable
|
|
69
|
+
params.fallbackPrintable = params.base64 ? `data:application/pdf;base64,${params.fallbackPrintable}` : params.fallbackPrintable
|
|
70
|
+
for (var k in params) {
|
|
71
|
+
if (k === 'printable' || k === 'fallbackPrintable') continue
|
|
72
|
+
|
|
73
|
+
params[k] = typeof args[k] !== 'undefined' ? args[k] : params[k]
|
|
74
|
+
}
|
|
75
|
+
break
|
|
76
|
+
default:
|
|
77
|
+
throw new Error('Unexpected argument type! Expected "string" or "object", got ' + typeof args)
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// Validate printable
|
|
81
|
+
if (!params.printable) throw new Error('Missing printable information.')
|
|
82
|
+
|
|
83
|
+
// Validate type
|
|
84
|
+
if (!params.type || typeof params.type !== 'string' || printTypes.indexOf(params.type.toLowerCase()) === -1) {
|
|
85
|
+
throw new Error('Invalid print type. Available types are: pdf, html, image and json.')
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// Check if we are showing a feedback message to the user (useful for large files)
|
|
89
|
+
if (params.showModal) Modal.show(params)
|
|
90
|
+
|
|
91
|
+
// Check for a print start hook function
|
|
92
|
+
if (params.onLoadingStart) params.onLoadingStart()
|
|
93
|
+
|
|
94
|
+
// To prevent duplication and issues, remove any used printFrame from the DOM
|
|
95
|
+
const usedFrame = document.getElementById(params.frameId)
|
|
96
|
+
|
|
97
|
+
if (usedFrame) usedFrame.parentNode.removeChild(usedFrame)
|
|
98
|
+
|
|
99
|
+
// Create a new iframe for the print job
|
|
100
|
+
const printFrame = document.createElement('iframe')
|
|
101
|
+
|
|
102
|
+
if (Browser.isFirefox()) {
|
|
103
|
+
// Set the iframe to be is visible on the page (guaranteed by fixed position) but hidden using opacity 0, because
|
|
104
|
+
// this works in Firefox. The height needs to be sufficient for some part of the document other than the PDF
|
|
105
|
+
// viewer's toolbar to be visible in the page
|
|
106
|
+
printFrame.setAttribute('style', 'width: 1px; height: 100px; position: fixed; left: 0; top: 0; opacity: 0; border-width: 0; margin: 0; padding: 0')
|
|
107
|
+
} else {
|
|
108
|
+
// Hide the iframe in other browsers
|
|
109
|
+
printFrame.setAttribute('style', 'visibility: hidden; height: 0; width: 0; position: absolute; border: 0')
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
// Set iframe element id
|
|
113
|
+
printFrame.setAttribute('id', params.frameId)
|
|
114
|
+
|
|
115
|
+
// For non pdf printing, pass an html document string to srcdoc (force onload callback)
|
|
116
|
+
if (params.type !== 'pdf') {
|
|
117
|
+
printFrame.srcdoc = '<html><head><title>' + params.documentTitle + '</title>'
|
|
118
|
+
|
|
119
|
+
// Attach css files
|
|
120
|
+
if (params.css) {
|
|
121
|
+
// Add support for single file
|
|
122
|
+
if (!Array.isArray(params.css)) params.css = [params.css]
|
|
123
|
+
|
|
124
|
+
// Create link tags for each css file
|
|
125
|
+
params.css.forEach(file => {
|
|
126
|
+
printFrame.srcdoc += '<link rel="stylesheet" href="' + file + '">'
|
|
127
|
+
})
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
printFrame.srcdoc += '</head><body></body></html>'
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
// Check printable type
|
|
134
|
+
switch (params.type) {
|
|
135
|
+
case 'pdf':
|
|
136
|
+
// Check browser support for pdf and if not supported we will just open the pdf file instead
|
|
137
|
+
if (Browser.isIE()) {
|
|
138
|
+
try {
|
|
139
|
+
console.info('Print.js doesn\'t support PDF printing in Internet Explorer.')
|
|
140
|
+
const win = window.open(params.fallbackPrintable, '_blank')
|
|
141
|
+
win.focus()
|
|
142
|
+
params.onIncompatibleBrowser()
|
|
143
|
+
} catch (error) {
|
|
144
|
+
params.onError(error)
|
|
145
|
+
} finally {
|
|
146
|
+
// Make sure there is no loading modal opened
|
|
147
|
+
if (params.showModal) Modal.close()
|
|
148
|
+
if (params.onLoadingEnd) params.onLoadingEnd()
|
|
149
|
+
}
|
|
150
|
+
} else {
|
|
151
|
+
Pdf.print(params, printFrame)
|
|
152
|
+
}
|
|
153
|
+
break
|
|
154
|
+
case 'image':
|
|
155
|
+
Image.print(params, printFrame)
|
|
156
|
+
break
|
|
157
|
+
case 'html':
|
|
158
|
+
Html.print(params, printFrame)
|
|
159
|
+
break
|
|
160
|
+
case 'raw-html':
|
|
161
|
+
RawHtml.print(params, printFrame)
|
|
162
|
+
break
|
|
163
|
+
case 'json':
|
|
164
|
+
Json.print(params, printFrame)
|
|
165
|
+
break
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
@@ -1,109 +1,109 @@
|
|
|
1
|
-
import { capitalizePrint, addHeader } from './functions'
|
|
2
|
-
import Print from './print'
|
|
3
|
-
|
|
4
|
-
export default {
|
|
5
|
-
print: (params, printFrame) => {
|
|
6
|
-
// Check if we received proper data
|
|
7
|
-
if (typeof params.printable !== 'object') {
|
|
8
|
-
throw new Error('Invalid javascript data object (JSON).')
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
// Validate repeatTableHeader
|
|
12
|
-
if (typeof params.repeatTableHeader !== 'boolean') {
|
|
13
|
-
throw new Error('Invalid value for repeatTableHeader attribute (JSON).')
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
// Validate properties
|
|
17
|
-
if (!params.properties || !Array.isArray(params.properties)) {
|
|
18
|
-
throw new Error('Invalid properties array for your JSON data.')
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
// We will format the property objects to keep the JSON api compatible with older releases
|
|
22
|
-
params.properties = params.properties.map(property => {
|
|
23
|
-
return {
|
|
24
|
-
field: typeof property === 'object' ? property.field : property,
|
|
25
|
-
displayName: typeof property === 'object' ? property.displayName : property,
|
|
26
|
-
columnSize: typeof property === 'object' && property.columnSize ? property.columnSize + ';' : 100 / params.properties.length + '%;'
|
|
27
|
-
}
|
|
28
|
-
})
|
|
29
|
-
|
|
30
|
-
// Create a print container element
|
|
31
|
-
params.printableElement = document.createElement('div')
|
|
32
|
-
|
|
33
|
-
// Check if we are adding a print header
|
|
34
|
-
if (params.header) {
|
|
35
|
-
addHeader(params.printableElement, params)
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// Build the printable html data
|
|
39
|
-
params.printableElement.innerHTML += jsonToHTML(params)
|
|
40
|
-
|
|
41
|
-
// Print the json data
|
|
42
|
-
Print.send(params, printFrame)
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
function jsonToHTML (params) {
|
|
47
|
-
// Get the row and column data
|
|
48
|
-
const data = params.printable
|
|
49
|
-
const properties = params.properties
|
|
50
|
-
|
|
51
|
-
// Create a html table
|
|
52
|
-
let htmlData = '<table style="border-collapse: collapse; width: 100%;">'
|
|
53
|
-
|
|
54
|
-
// Check if the header should be repeated
|
|
55
|
-
if (params.repeatTableHeader) {
|
|
56
|
-
htmlData += '<thead>'
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// Add the table header row
|
|
60
|
-
htmlData += '<tr>'
|
|
61
|
-
|
|
62
|
-
// Add the table header columns
|
|
63
|
-
for (let a = 0; a < properties.length; a++) {
|
|
64
|
-
htmlData += '<th style="width:' + properties[a].columnSize + ';' + params.gridHeaderStyle + '">' + capitalizePrint(properties[a].displayName) + '</th>'
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
// Add the closing tag for the table header row
|
|
68
|
-
htmlData += '</tr>'
|
|
69
|
-
|
|
70
|
-
// If the table header is marked as repeated, add the closing tag
|
|
71
|
-
if (params.repeatTableHeader) {
|
|
72
|
-
htmlData += '</thead>'
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
// Create the table body
|
|
76
|
-
htmlData += '<tbody>'
|
|
77
|
-
|
|
78
|
-
// Add the table data rows
|
|
79
|
-
for (let i = 0; i < data.length; i++) {
|
|
80
|
-
// Add the row starting tag
|
|
81
|
-
htmlData += '<tr>'
|
|
82
|
-
|
|
83
|
-
// Print selected properties only
|
|
84
|
-
for (let n = 0; n < properties.length; n++) {
|
|
85
|
-
let stringData = data[i]
|
|
86
|
-
|
|
87
|
-
// Support nested objects
|
|
88
|
-
const property = properties[n].field.split('.')
|
|
89
|
-
if (property.length > 1) {
|
|
90
|
-
for (let p = 0; p < property.length; p++) {
|
|
91
|
-
stringData = stringData[property[p]]
|
|
92
|
-
}
|
|
93
|
-
} else {
|
|
94
|
-
stringData = stringData[properties[n].field]
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
// Add the row contents and styles
|
|
98
|
-
htmlData += '<td style="width:' + properties[n].columnSize + params.gridStyle + '">' + stringData + '</td>'
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
// Add the row closing tag
|
|
102
|
-
htmlData += '</tr>'
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
// Add the table and body closing tags
|
|
106
|
-
htmlData += '</tbody></table>'
|
|
107
|
-
|
|
108
|
-
return htmlData
|
|
109
|
-
}
|
|
1
|
+
import { capitalizePrint, addHeader } from './functions'
|
|
2
|
+
import Print from './print'
|
|
3
|
+
|
|
4
|
+
export default {
|
|
5
|
+
print: (params, printFrame) => {
|
|
6
|
+
// Check if we received proper data
|
|
7
|
+
if (typeof params.printable !== 'object') {
|
|
8
|
+
throw new Error('Invalid javascript data object (JSON).')
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
// Validate repeatTableHeader
|
|
12
|
+
if (typeof params.repeatTableHeader !== 'boolean') {
|
|
13
|
+
throw new Error('Invalid value for repeatTableHeader attribute (JSON).')
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// Validate properties
|
|
17
|
+
if (!params.properties || !Array.isArray(params.properties)) {
|
|
18
|
+
throw new Error('Invalid properties array for your JSON data.')
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// We will format the property objects to keep the JSON api compatible with older releases
|
|
22
|
+
params.properties = params.properties.map(property => {
|
|
23
|
+
return {
|
|
24
|
+
field: typeof property === 'object' ? property.field : property,
|
|
25
|
+
displayName: typeof property === 'object' ? property.displayName : property,
|
|
26
|
+
columnSize: typeof property === 'object' && property.columnSize ? property.columnSize + ';' : 100 / params.properties.length + '%;'
|
|
27
|
+
}
|
|
28
|
+
})
|
|
29
|
+
|
|
30
|
+
// Create a print container element
|
|
31
|
+
params.printableElement = document.createElement('div')
|
|
32
|
+
|
|
33
|
+
// Check if we are adding a print header
|
|
34
|
+
if (params.header) {
|
|
35
|
+
addHeader(params.printableElement, params)
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Build the printable html data
|
|
39
|
+
params.printableElement.innerHTML += jsonToHTML(params)
|
|
40
|
+
|
|
41
|
+
// Print the json data
|
|
42
|
+
Print.send(params, printFrame)
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
function jsonToHTML (params) {
|
|
47
|
+
// Get the row and column data
|
|
48
|
+
const data = params.printable
|
|
49
|
+
const properties = params.properties
|
|
50
|
+
|
|
51
|
+
// Create a html table
|
|
52
|
+
let htmlData = '<table style="border-collapse: collapse; width: 100%;">'
|
|
53
|
+
|
|
54
|
+
// Check if the header should be repeated
|
|
55
|
+
if (params.repeatTableHeader) {
|
|
56
|
+
htmlData += '<thead>'
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// Add the table header row
|
|
60
|
+
htmlData += '<tr>'
|
|
61
|
+
|
|
62
|
+
// Add the table header columns
|
|
63
|
+
for (let a = 0; a < properties.length; a++) {
|
|
64
|
+
htmlData += '<th style="width:' + properties[a].columnSize + ';' + params.gridHeaderStyle + '">' + capitalizePrint(properties[a].displayName) + '</th>'
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// Add the closing tag for the table header row
|
|
68
|
+
htmlData += '</tr>'
|
|
69
|
+
|
|
70
|
+
// If the table header is marked as repeated, add the closing tag
|
|
71
|
+
if (params.repeatTableHeader) {
|
|
72
|
+
htmlData += '</thead>'
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// Create the table body
|
|
76
|
+
htmlData += '<tbody>'
|
|
77
|
+
|
|
78
|
+
// Add the table data rows
|
|
79
|
+
for (let i = 0; i < data.length; i++) {
|
|
80
|
+
// Add the row starting tag
|
|
81
|
+
htmlData += '<tr>'
|
|
82
|
+
|
|
83
|
+
// Print selected properties only
|
|
84
|
+
for (let n = 0; n < properties.length; n++) {
|
|
85
|
+
let stringData = data[i]
|
|
86
|
+
|
|
87
|
+
// Support nested objects
|
|
88
|
+
const property = properties[n].field.split('.')
|
|
89
|
+
if (property.length > 1) {
|
|
90
|
+
for (let p = 0; p < property.length; p++) {
|
|
91
|
+
stringData = stringData[property[p]]
|
|
92
|
+
}
|
|
93
|
+
} else {
|
|
94
|
+
stringData = stringData[properties[n].field]
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
// Add the row contents and styles
|
|
98
|
+
htmlData += '<td style="width:' + properties[n].columnSize + params.gridStyle + '">' + stringData + '</td>'
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// Add the row closing tag
|
|
102
|
+
htmlData += '</tr>'
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
// Add the table and body closing tags
|
|
106
|
+
htmlData += '</tbody></table>'
|
|
107
|
+
|
|
108
|
+
return htmlData
|
|
109
|
+
}
|