vue2-client 1.16.77 → 1.16.79

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.
Files changed (328) hide show
  1. package/.claude/settings.local.json +20 -20
  2. package/.cursorrules +19 -19
  3. package/.env.apply +19 -19
  4. package/.env.gaslink +19 -19
  5. package/.env.his +19 -19
  6. package/.env.liuli +20 -20
  7. package/.env.scada +19 -19
  8. package/.eslintrc.js +90 -90
  9. package/CHANGELOG.md +830 -830
  10. package/CLAUDE.md +97 -97
  11. package/Components.md +60 -60
  12. package/docs/LowCode/lowcode.md +155 -155
  13. package/docs/LowCode/lowcodeForDeveloper.md +230 -230
  14. package/docs/index.md +30 -30
  15. package/index.js +31 -31
  16. package/jest-transform-stub.js +8 -8
  17. package/jest.setup.js +7 -7
  18. package/jsconfig.json +19 -19
  19. package/package.json +112 -112
  20. package/public/his/editor/editor.html +51 -51
  21. package/public/his/editor/mock/bind_data.html +779 -779
  22. package/public/his/editor/mock/data_table.html +40 -40
  23. package/public/his/editor/mock/sign.html +75 -75
  24. package/public/his/editor/vender/JsBarcode.all.js +3669 -3669
  25. package/public/his/editor/vender/date97/My97DatePicker.htm +65 -65
  26. package/public/his/editor/vender/date97/WdatePicker.js +677 -677
  27. package/public/his/editor/vender/date97/calendar.js +4 -4
  28. package/public/his/editor/vender/date97/lang/en.js +13 -13
  29. package/public/his/editor/vender/date97/lang/zh-cn.js +13 -13
  30. package/public/his/editor/vender/date97/lang/zh-tw.js +13 -13
  31. package/public/his/editor/vender/date97/skin/WdatePicker.css +10 -10
  32. package/public/his/editor/vender/date97/skin/default/datepicker.css +328 -328
  33. package/public/his/editor/vender/date97/skin/ext/datepicker.css +308 -308
  34. package/public/his/editor/vender/date97/skin/whyGreen/datepicker.css +255 -255
  35. package/public/his/editor/vender/diff.js +1627 -1627
  36. package/public/his/editor/vender/editor.js +1 -1
  37. package/public/his/editor/vender/fabric.js +31187 -31187
  38. package/public/his/editor/vender/jquery/jquery.base64.js +190 -190
  39. package/public/his/editor/vender/jquery/jquery.js +10872 -10872
  40. package/public/his/editor/vender/jquery/jquery.print.js +255 -255
  41. package/public/his/editor/vender/jquery/zTreeStyle/zTreeStyle.css +96 -96
  42. package/public/his/editor/vender/mui/mui.min.css +4 -4
  43. package/public/his/editor/vender/mui/mui.min.js +5 -5
  44. package/public/his/editor/vender/mui/mui.picker.min.css +6 -6
  45. package/public/his/editor/vender/mui/mui.picker.min.js +6 -6
  46. package/public/his/editor/vender/qrcode.js +7 -7
  47. package/public/his/editor/vender/requirejs/require.js +2145 -2145
  48. package/public/his/editor/vender/signature/jSignature.CompressorSVG.js +518 -518
  49. package/public/his/editor/vender/signature/jSignature.UndoButton.js +164 -164
  50. package/public/his/editor/vender/signature/jSignature.js +1486 -1486
  51. package/public/his/editor/vender/validator.js +5094 -5094
  52. package/public/his/editor/vender/weui/weui.css +5659 -5659
  53. package/public/his/editor/vender/weui/weui.min.css +4 -4
  54. package/public/his/editor/vender/weui/weui.min.js +11 -11
  55. package/src/assets/img/querySlotDemo.svg +15 -15
  56. package/src/assets/svg/badtwo.svg +1 -1
  57. package/src/assets/svg/goodtwo.svg +1 -1
  58. package/src/base-client/components/AI/AskAiBtn.vue +136 -136
  59. package/src/base-client/components/AI/demo.vue +31 -31
  60. package/src/base-client/components/common/AddressSearchCombobox/IcMapIcon.vue +16 -16
  61. package/src/base-client/components/common/AddressSearchCombobox/demo.vue +36 -36
  62. package/src/base-client/components/common/AddressSearchCombobox/ic_map.svg +6 -6
  63. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  64. package/src/base-client/components/common/CitySelect/index.js +3 -3
  65. package/src/base-client/components/common/CitySelect/index.md +109 -109
  66. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +669 -669
  67. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1014 -1014
  68. package/src/base-client/components/common/CreateQuery/index.js +3 -3
  69. package/src/base-client/components/common/CreateQuery/index.md +42 -42
  70. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +452 -452
  71. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +511 -511
  72. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -3
  73. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
  74. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  75. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  76. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +166 -166
  77. package/src/base-client/components/common/FormGroupQuery/index.js +3 -3
  78. package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
  79. package/src/base-client/components/common/HIS/demo.vue +61 -61
  80. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  81. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorModal.vue +108 -108
  82. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorPanel.vue +413 -413
  83. package/src/base-client/components/common/LowCodeComponent/LowCodePageOrganization.vue +502 -502
  84. package/src/base-client/components/common/LowCodeComponent/LowCodeRender.vue +728 -728
  85. package/src/base-client/components/common/LowCodeComponent/LowCodeRenderEnter.vue +29 -29
  86. package/src/base-client/components/common/LowCodeComponent/LowCodeUIStore.vue +219 -219
  87. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeAddPageModal.vue +117 -117
  88. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeCustomJSModal.vue +80 -80
  89. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeEventEditorModal.vue +398 -398
  90. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLifeCycleModal.vue +65 -65
  91. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicCallbackModal.vue +64 -64
  92. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicParamModal.vue +73 -73
  93. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeRunFunctionParamModal.vue +76 -76
  94. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +208 -208
  95. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  96. package/src/base-client/components/common/Recording/Recording.vue +243 -243
  97. package/src/base-client/components/common/Recording/index.js +3 -3
  98. package/src/base-client/components/common/Tree/Tree.vue +149 -149
  99. package/src/base-client/components/common/Tree/index.js +2 -2
  100. package/src/base-client/components/common/Upload/Upload.vue +334 -334
  101. package/src/base-client/components/common/Upload/index.js +3 -3
  102. package/src/base-client/components/common/XAddForm/XAddForm.vue +113 -113
  103. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +1280 -1280
  104. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  105. package/src/base-client/components/common/XAddNativeFormOA/XAddNativeFormOA.vue +304 -304
  106. package/src/base-client/components/common/XAddNativeFormOA/index.js +3 -3
  107. package/src/base-client/components/common/XAddNativeFormOA/index.md +146 -146
  108. package/src/base-client/components/common/XAddReport/index.js +3 -3
  109. package/src/base-client/components/common/XAddReport/index.md +56 -56
  110. package/src/base-client/components/common/XBadge/XBadge.vue +94 -94
  111. package/src/base-client/components/common/XButtons/XButtonDemo.vue +28 -28
  112. package/src/base-client/components/common/XButtons/index.js +3 -3
  113. package/src/base-client/components/common/XButtons/index.md +61 -61
  114. package/src/base-client/components/common/XCalendar/XCalendar.vue +4 -4
  115. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  116. package/src/base-client/components/common/XCheckList/XCheckList.vue +106 -106
  117. package/src/base-client/components/common/XCheckList/XCheckListDemo.vue +41 -41
  118. package/src/base-client/components/common/XDataCard/index.js +3 -3
  119. package/src/base-client/components/common/XDataCard/index.md +1 -1
  120. package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
  121. package/src/base-client/components/common/XDataDrawer/index.js +3 -3
  122. package/src/base-client/components/common/XDataDrawer/index.md +41 -41
  123. package/src/base-client/components/common/XDatePicker/demo.vue +153 -153
  124. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  125. package/src/base-client/components/common/XDescriptions/index.md +83 -83
  126. package/src/base-client/components/common/XDetailsView/XDetailsView.vue +238 -238
  127. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  128. package/src/base-client/components/common/XForm/XStatusButton.vue +54 -54
  129. package/src/base-client/components/common/XForm/index.md +178 -178
  130. package/src/base-client/components/common/XForm/itemComponent/XClickChangeBtn/index.vue +49 -49
  131. package/src/base-client/components/common/XFormGroup/index.js +3 -3
  132. package/src/base-client/components/common/XFormGroup/index.md +38 -38
  133. package/src/base-client/components/common/XFormGroupDetails/XFormGroupDetails.vue +72 -72
  134. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  135. package/src/base-client/components/common/XFormTable/index.md +92 -92
  136. package/src/base-client/components/common/XLabelSelect/XLabelSelect.vue +110 -110
  137. package/src/base-client/components/common/XLabelSelect/XLabelSelectDemo.vue +35 -35
  138. package/src/base-client/components/common/XLicensePlate/XLicensePlate.vue +193 -193
  139. package/src/base-client/components/common/XLicensePlate/XLicensePlateDemo.vue +48 -48
  140. package/src/base-client/components/common/XPrint/OpenInvoice.vue +21 -21
  141. package/src/base-client/components/common/XPrint/PrintHtml.js +98 -98
  142. package/src/base-client/components/common/XPrint/css/hiPrintCss.js +359 -359
  143. package/src/base-client/components/common/XPrint/css/lodopCss.js +26 -26
  144. package/src/base-client/components/common/XPrint/css/print-lock.css +351 -351
  145. package/src/base-client/components/common/XPrint/index.vue +97 -97
  146. package/src/base-client/components/common/XReport/XReportDesign.vue +463 -463
  147. package/src/base-client/components/common/XReport/XReportJsonRender.vue +381 -381
  148. package/src/base-client/components/common/XReport/index.js +3 -3
  149. package/src/base-client/components/common/XReport/print.js +186 -186
  150. package/src/base-client/components/common/XReportDrawer/index.js +3 -3
  151. package/src/base-client/components/common/XReportGrid/index.js +3 -3
  152. package/src/base-client/components/common/XReportGrid/index.md +44 -44
  153. package/src/base-client/components/common/XReportSlot/XReportSlot.vue +110 -110
  154. package/src/base-client/components/common/XReportSlot/index.js +3 -3
  155. package/src/base-client/components/common/XReportSlot/index.md +48 -48
  156. package/src/base-client/components/common/XSimpleDescriptions/XSimpleDescriptions.vue +166 -166
  157. package/src/base-client/components/common/XSimpleDescriptions/index.js +3 -3
  158. package/src/base-client/components/common/XSimpleDescriptions/index.md +7 -7
  159. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  160. package/src/base-client/components/common/XStepView/index.js +3 -3
  161. package/src/base-client/components/common/XStepView/index.md +31 -31
  162. package/src/base-client/components/common/XTab/XTabDemo.vue +22 -22
  163. package/src/base-client/components/common/XTab/index.js +3 -3
  164. package/src/base-client/components/common/XTable/CustomFuncCel.vue +51 -51
  165. package/src/base-client/components/common/XTable/TableCellRenderer.vue +161 -161
  166. package/src/base-client/components/common/XTable/XTableWrapper.vue +3 -3
  167. package/src/base-client/components/common/XTable/index.md +255 -255
  168. package/src/base-client/components/common/XTagGroup/index.vue +52 -52
  169. package/src/base-client/components/common/XTree/XTree.vue +424 -424
  170. package/src/base-client/components/common/XTree/XTreePro.vue +4 -4
  171. package/src/base-client/components/common/XTree/index.js +3 -3
  172. package/src/base-client/components/common/XTree/index.md +36 -36
  173. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +113 -113
  174. package/src/base-client/components/common/XTreeOne/XTreeOnePro.vue +128 -128
  175. package/src/base-client/components/common/richTextModal/index.vue +56 -56
  176. package/src/base-client/components/common/richTextModal/richDemo.vue +48 -48
  177. package/src/base-client/components/his/XCharge/XChargeDemo.vue +145 -145
  178. package/src/base-client/components/his/XHisEditor/index.js +3 -3
  179. package/src/base-client/components/his/XRadio/XRadio.vue +1 -1
  180. package/src/base-client/components/index.js +51 -51
  181. package/src/base-client/components/layout/XTreeView/XTreeView.vue +130 -130
  182. package/src/base-client/components/layout/XTreeView/index.js +3 -3
  183. package/src/base-client/components/layout/XTreeView/index.md +46 -46
  184. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  185. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  186. package/src/base-client/plugins/Config.js +19 -19
  187. package/src/base-client/plugins/GetLoginInfoService.js +183 -183
  188. package/src/base-client/plugins/Recording.js +258 -258
  189. package/src/base-client/plugins/index.js +23 -23
  190. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  191. package/src/components/Charts/Bar.vue +62 -62
  192. package/src/components/Charts/ChartCard.vue +134 -134
  193. package/src/components/Charts/Liquid.vue +67 -67
  194. package/src/components/Charts/MiniArea.vue +39 -39
  195. package/src/components/Charts/MiniBar.vue +39 -39
  196. package/src/components/Charts/MiniProgress.vue +75 -75
  197. package/src/components/Charts/MiniSmoothArea.vue +40 -40
  198. package/src/components/Charts/Radar.vue +68 -68
  199. package/src/components/Charts/RankList.vue +77 -77
  200. package/src/components/Charts/TagCloud.vue +113 -113
  201. package/src/components/Charts/TransferBar.vue +64 -64
  202. package/src/components/Charts/Trend.vue +82 -82
  203. package/src/components/Charts/chart.less +12 -12
  204. package/src/components/Charts/smooth.area.less +13 -13
  205. package/src/components/CodeMirror/inedx.vue +118 -118
  206. package/src/components/CodeMirror/setting.js +40 -40
  207. package/src/components/FileImageItem/FileItem.vue +320 -320
  208. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  209. package/src/components/NumberInfo/index.js +3 -3
  210. package/src/components/NumberInfo/index.less +54 -54
  211. package/src/components/NumberInfo/index.md +43 -43
  212. package/src/components/card/ChartCard.vue +79 -79
  213. package/src/components/chart/Bar.vue +60 -60
  214. package/src/components/chart/MiniArea.vue +67 -67
  215. package/src/components/chart/MiniBar.vue +59 -59
  216. package/src/components/chart/MiniProgress.vue +57 -57
  217. package/src/components/chart/Radar.vue +80 -80
  218. package/src/components/chart/RankingList.vue +60 -60
  219. package/src/components/chart/Trend.vue +79 -79
  220. package/src/components/chart/index.less +9 -9
  221. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  222. package/src/components/checkbox/ImgCheckbox.vue +117 -117
  223. package/src/components/checkbox/ImgCheckboxGroup.vue +76 -76
  224. package/src/components/checkbox/index.js +9 -9
  225. package/src/components/exception/ExceptionPage.vue +70 -70
  226. package/src/components/g2Charts/constants.js +202 -202
  227. package/src/components/g2Charts/demo.vue +808 -808
  228. package/src/components/g2Charts/designer.vue +228 -228
  229. package/src/components/g2Charts/designerBaseConfig.vue +61 -61
  230. package/src/components/g2Charts/designerDataConfig.vue +259 -259
  231. package/src/components/g2Charts/designerStyleConfig.vue +16 -16
  232. package/src/components/g2Charts/index.vue +397 -397
  233. package/src/components/index.js +36 -36
  234. package/src/components/input/IInput.vue +66 -66
  235. package/src/components/menu/SideMenu.vue +75 -75
  236. package/src/components/menu/menu.js +273 -273
  237. package/src/components/setting/Setting.vue +234 -234
  238. package/src/components/tool/AStepItem.vue +60 -60
  239. package/src/config/CreateQueryConfig.js +325 -325
  240. package/src/config/default/antd.config.js +89 -89
  241. package/src/config/default/setting.config.js +55 -55
  242. package/src/font-style/font.css +60 -60
  243. package/src/layouts/CommonLayout.vue +56 -56
  244. package/src/layouts/PageLayout.vue +151 -151
  245. package/src/layouts/SinglePageView.vue +136 -136
  246. package/src/layouts/header/AdminHeader.vue +132 -132
  247. package/src/layouts/header/HeaderNotice.vue +177 -177
  248. package/src/layouts/header/InstitutionDetail.vue +181 -181
  249. package/src/layouts/tabs/TabsHead.vue +189 -189
  250. package/src/lib.js +1 -1
  251. package/src/mock/extend/index.js +84 -84
  252. package/src/mock/goods/index.js +108 -108
  253. package/src/pages/DefaultExample/index.vue +77 -77
  254. package/src/pages/DynamicStatistics/ChartSelector.vue +331 -331
  255. package/src/pages/DynamicStatistics/DataTabs.vue +83 -83
  256. package/src/pages/DynamicStatistics/DynamicTable.vue +128 -128
  257. package/src/pages/DynamicStatistics/EvaluationArea.vue +69 -69
  258. package/src/pages/DynamicStatistics/FavoriteList.vue +50 -50
  259. package/src/pages/DynamicStatistics/QuestionHistoryAndFavorites.vue +591 -591
  260. package/src/pages/DynamicStatistics/SearchBar.vue +192 -192
  261. package/src/pages/DynamicStatistics/index.vue +282 -282
  262. package/src/pages/Example/childIndex.vue +15 -15
  263. package/src/pages/Example/index.vue +30 -30
  264. package/src/pages/NewDynamicStatistics/ChartSelector.vue +331 -331
  265. package/src/pages/NewDynamicStatistics/DataTabs.vue +122 -122
  266. package/src/pages/NewDynamicStatistics/DynamicTable.vue +128 -128
  267. package/src/pages/NewDynamicStatistics/EvaluationArea.vue +69 -69
  268. package/src/pages/NewDynamicStatistics/FavoriteList.vue +50 -50
  269. package/src/pages/NewDynamicStatistics/QuestionHistoryAndFavorites.vue +289 -289
  270. package/src/pages/NewDynamicStatistics/SearchBar.vue +193 -193
  271. package/src/pages/NewDynamicStatistics/index.vue +258 -258
  272. package/src/pages/Recording/index.vue +77 -77
  273. package/src/pages/ServiceReview/index.vue +284 -284
  274. package/src/pages/SubExample/index.vue +26 -26
  275. package/src/pages/WorkflowDetail/WorkflowPageDetail/TrimTextTail.vue +23 -23
  276. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +1770 -1770
  277. package/src/pages/XReportView/index.vue +64 -64
  278. package/src/pages/XTreeOneProExample/index.vue +67 -67
  279. package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
  280. package/src/pages/login/Login.vue +379 -379
  281. package/src/pages/login/LoginV3.vue +389 -389
  282. package/src/pages/lowCode/lowCodeEditor.vue +1219 -1219
  283. package/src/pages/lowCode/lowCodeRenderPage.vue +43 -43
  284. package/src/pages/report/ReportTable.js +124 -124
  285. package/src/pages/resourceManage/orgListManage.vue +98 -98
  286. package/src/pages/system/dictionary/index.vue +44 -44
  287. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  288. package/src/pages/system/monitor/operLog/index.vue +37 -37
  289. package/src/pages/system/settings/modifyPassword.vue +117 -117
  290. package/src/pages/system/ticket/index.vue +480 -480
  291. package/src/pages/system/ticket/submitTicketSuccess.vue +484 -484
  292. package/src/pages/userInfoDetailManage/ChangeMeterRecordQuery/index.vue +64 -64
  293. package/src/pages/userInfoDetailManage/InfoChangeRecordQuery/index.vue +64 -64
  294. package/src/pages/userInfoDetailManage/InstructRecordQuery/index.vue +64 -64
  295. package/src/pages/userInfoDetailManage/MeterParamRecordQuery/index.vue +64 -64
  296. package/src/pages/userInfoDetailManage/TransferRecordQuery/index.vue +66 -66
  297. package/src/pages/userInfoDetailManage/WatchCollectionRecordQuery/index.vue +64 -64
  298. package/src/plugins/EventLogPlugin.js +33 -33
  299. package/src/plugins/FindParentsData.js +17 -17
  300. package/src/services/DataModel.js +30 -30
  301. package/src/services/LodopFuncs.js +137 -137
  302. package/src/services/api/TicketDetailsViewApi.js +46 -46
  303. package/src/services/api/cas.js +79 -79
  304. package/src/services/api/entity.js +18 -18
  305. package/src/services/api/index.js +17 -17
  306. package/src/store/modules/account.js +115 -115
  307. package/src/store/modules/index.js +5 -5
  308. package/src/store/modules/lowCode.js +33 -33
  309. package/src/store/modules/setting.js +119 -119
  310. package/src/theme/default/style.less +58 -58
  311. package/src/utils/authority-utils.js +85 -85
  312. package/src/utils/errorCode.js +6 -6
  313. package/src/utils/formatter.js +74 -74
  314. package/src/utils/htmlToPDF.js +108 -108
  315. package/src/utils/htmlToPDFApi.js +5 -5
  316. package/src/utils/login.js +188 -188
  317. package/src/utils/lowcode/lowcodeComponentMixin.js +120 -120
  318. package/src/utils/lowcode/lowcodeLog.js +29 -29
  319. package/src/utils/lowcode/lowcodeUtils.js +373 -373
  320. package/src/utils/lowcode/registerComponentForEditor.js +1 -1
  321. package/src/utils/lowcode/registerComponentForRender.js +11 -11
  322. package/src/utils/map-utils.js +47 -47
  323. package/src/utils/reg.js +95 -95
  324. package/src/utils/runEvalFunction.js +14 -14
  325. package/src/utils/theme-color-replacer-extend.js +92 -92
  326. package/src/utils/util.js +329 -329
  327. package/src/utils/waterMark.js +31 -31
  328. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
@@ -1,255 +1,255 @@
1
- /* @license
2
- * jQuery.print, version 1.5.1
3
- * (c) Sathvik Ponangi, Doers' Guild
4
- * Licence: CC-By (http://creativecommons.org/licenses/by/3.0/)
5
- *--------------------------------------------------------------------------*/
6
- (function ($) {
7
- "use strict";
8
- // A nice closure for our definitions
9
- function getjQueryObject(string) {
10
- // Make string a vaild jQuery thing
11
- var jqObj = $("");
12
- try {
13
- jqObj = $(string)
14
- .clone();
15
- } catch (e) {
16
- jqObj = $("<span />")
17
- .html(string);
18
- }
19
- return jqObj;
20
- }
21
-
22
- function printFrame(frameWindow, content, options) {
23
- // Print the selected window/iframe
24
- var def = $.Deferred();
25
- try {
26
- frameWindow = frameWindow.contentWindow || frameWindow.contentDocument || frameWindow;
27
- var wdoc = frameWindow.document || frameWindow.contentDocument || frameWindow;
28
- if(options.doctype) {
29
- wdoc.write(options.doctype);
30
- }
31
- wdoc.write(content);
32
- wdoc.close();
33
- var printed = false;
34
- var callPrint = function () {
35
- if(printed) {
36
- return;
37
- }
38
- // Fix for IE : Allow it to render the iframe
39
- frameWindow.focus();
40
- try {
41
- // Fix for IE11 - printng the whole page instead of the iframe content
42
- if (!frameWindow.document.execCommand('print', false, null)) {
43
- // document.execCommand returns false if it failed -http://stackoverflow.com/a/21336448/937891
44
- frameWindow.print();
45
- }
46
- // focus body as it is losing focus in iPad and content not getting printed
47
- $('body').focus();
48
- } catch (e) {
49
- frameWindow.print();
50
- }
51
- frameWindow.close();
52
- printed = true;
53
- def.resolve();
54
- }
55
- // Print once the frame window loads - seems to work for the new-window option but unreliable for the iframe
56
- $(frameWindow).on("load", callPrint);
57
- // Fallback to printing directly if the frame doesn't fire the load event for whatever reason
58
- setTimeout(callPrint, options.timeout);
59
- } catch (err) {
60
- def.reject(err);
61
- }
62
- return def;
63
- }
64
-
65
- function printContentInIFrame(content, options) {
66
- var $iframe = $(options.iframe + "");
67
- var iframeCount = $iframe.length;
68
- if (iframeCount === 0) {
69
- // Create a new iFrame if none is given
70
- $iframe = $('<iframe height="0" width="0" border="0" wmode="Opaque"/>')
71
- .prependTo('body')
72
- .css({
73
- "position": "absolute",
74
- "top": -999,
75
- "left": -999
76
- });
77
- }
78
- var frameWindow = $iframe.get(0);
79
- return printFrame(frameWindow, content, options)
80
- .done(function () {
81
- // Success
82
- setTimeout(function () {
83
- // Wait for IE
84
- if (iframeCount === 0) {
85
- // Destroy the iframe if created here
86
- $iframe.remove();
87
- }
88
- }, 1000);
89
- })
90
- .fail(function (err) {
91
- // Use the pop-up method if iframe fails for some reason
92
- console.error("Failed to print from iframe", err);
93
- printContentInNewWindow(content, options);
94
- })
95
- .always(function () {
96
- try {
97
- options.deferred.resolve();
98
- } catch (err) {
99
- console.warn('Error notifying deferred', err);
100
- }
101
- });
102
- }
103
-
104
- function printContentInNewWindow(content, options) {
105
- // Open a new window and print selected content
106
- var frameWindow = window.open();
107
- return printFrame(frameWindow, content, options)
108
- .always(function () {
109
- try {
110
- options.deferred.resolve();
111
- } catch (err) {
112
- console.warn('Error notifying deferred', err);
113
- }
114
- });
115
- }
116
-
117
- function isNode(o) {
118
- /* http://stackoverflow.com/a/384380/937891 */
119
- return !!(typeof Node === "object" ? o instanceof Node : o && typeof o === "object" && typeof o.nodeType === "number" && typeof o.nodeName === "string");
120
- }
121
- $.print = $.fn.print = function () {
122
- // Print a given set of elements
123
- var options, $this, self = this;
124
- // console.log("Printing", this, arguments);
125
- if (self instanceof $) {
126
- // Get the node if it is a jQuery object
127
- self = self.get(0);
128
- }
129
- if (isNode(self)) {
130
- // If `this` is a HTML element, i.e. for
131
- // $(selector).print()
132
- $this = $(self);
133
- if (arguments.length > 0) {
134
- options = arguments[0];
135
- }
136
- } else {
137
- if (arguments.length > 0) {
138
- // $.print(selector,options)
139
- $this = $(arguments[0]);
140
- if (isNode($this[0])) {
141
- if (arguments.length > 1) {
142
- options = arguments[1];
143
- }
144
- } else {
145
- // $.print(options)
146
- options = arguments[0];
147
- $this = $("html");
148
- }
149
- } else {
150
- // $.print()
151
- $this = $("html");
152
- }
153
- }
154
- // Default options
155
- var defaults = {
156
- globalStyles: true,
157
- mediaPrint: false,
158
- stylesheet: null,
159
- noPrintSelector: ".no-print",
160
- iframe: true,
161
- append: null,
162
- prepend: null,
163
- manuallyCopyFormValues: true,
164
- deferred: $.Deferred(),
165
- timeout: 750,
166
- title: null,
167
- doctype: '<!doctype html>'
168
- };
169
- // Merge with user-options
170
- options = $.extend({}, defaults, (options || {}));
171
- var $styles = $("");
172
- if (options.globalStyles) {
173
- // Apply the stlyes from the current sheet to the printed page
174
- $styles = $("style, link, meta, base, title");
175
- } else if (options.mediaPrint) {
176
- // Apply the media-print stylesheet
177
- $styles = $("link[media=print]");
178
- }
179
- if (options.stylesheet) {
180
- // Add a custom stylesheet if given
181
- $styles = $.merge($styles, $('<link rel="stylesheet" href="' + options.stylesheet + '">'));
182
- }
183
- // Create a copy of the element to print
184
- var copy = $this.clone();
185
- // Wrap it in a span to get the HTML markup string
186
- copy = $("<span/>")
187
- .append(copy);
188
- // Remove unwanted elements
189
- copy.find(options.noPrintSelector)
190
- .remove();
191
- // Add in the styles
192
- copy.append($styles.clone());
193
- // Update title
194
- if (options.title) {
195
- var title = $("title", copy);
196
- if (title.length === 0) {
197
- title = $("<title />");
198
- copy.append(title);
199
- }
200
- title.text(options.title);
201
- }
202
- // Appedned content
203
- copy.append(getjQueryObject(options.append));
204
- // Prepended content
205
- copy.prepend(getjQueryObject(options.prepend));
206
- if (options.manuallyCopyFormValues) {
207
- // Manually copy form values into the HTML for printing user-modified input fields
208
- // http://stackoverflow.com/a/26707753
209
- copy.find("input")
210
- .each(function () {
211
- var $field = $(this);
212
- if ($field.is("[type='radio']") || $field.is("[type='checkbox']")) {
213
- if ($field.prop("checked")) {
214
- $field.attr("checked", "checked");
215
- }
216
- } else {
217
- $field.attr("value", $field.val());
218
- }
219
- });
220
- copy.find("select").each(function () {
221
- var $field = $(this);
222
- $field.find(":selected").attr("selected", "selected");
223
- });
224
- copy.find("textarea").each(function () {
225
- // Fix for https://github.com/DoersGuild/jQuery.print/issues/18#issuecomment-96451589
226
- var $field = $(this);
227
- $field.text($field.val());
228
- });
229
- }
230
- // Get the HTML markup string
231
- var content = copy.html();
232
- // Notify with generated markup & cloned elements - useful for logging, etc
233
- try {
234
- options.deferred.notify('generated_markup', content, copy);
235
- } catch (err) {
236
- console.warn('Error notifying deferred', err);
237
- }
238
- // Destroy the copy
239
- copy.remove();
240
- if (options.iframe) {
241
- // Use an iframe for printing
242
- try {
243
- printContentInIFrame(content, options);
244
- } catch (e) {
245
- // Use the pop-up method if iframe fails for some reason
246
- console.error("Failed to print from iframe", e.stack, e.message);
247
- printContentInNewWindow(content, options);
248
- }
249
- } else {
250
- // Use a new window for printing
251
- printContentInNewWindow(content, options);
252
- }
253
- return this;
254
- };
255
- })(jQuery);
1
+ /* @license
2
+ * jQuery.print, version 1.5.1
3
+ * (c) Sathvik Ponangi, Doers' Guild
4
+ * Licence: CC-By (http://creativecommons.org/licenses/by/3.0/)
5
+ *--------------------------------------------------------------------------*/
6
+ (function ($) {
7
+ "use strict";
8
+ // A nice closure for our definitions
9
+ function getjQueryObject(string) {
10
+ // Make string a vaild jQuery thing
11
+ var jqObj = $("");
12
+ try {
13
+ jqObj = $(string)
14
+ .clone();
15
+ } catch (e) {
16
+ jqObj = $("<span />")
17
+ .html(string);
18
+ }
19
+ return jqObj;
20
+ }
21
+
22
+ function printFrame(frameWindow, content, options) {
23
+ // Print the selected window/iframe
24
+ var def = $.Deferred();
25
+ try {
26
+ frameWindow = frameWindow.contentWindow || frameWindow.contentDocument || frameWindow;
27
+ var wdoc = frameWindow.document || frameWindow.contentDocument || frameWindow;
28
+ if(options.doctype) {
29
+ wdoc.write(options.doctype);
30
+ }
31
+ wdoc.write(content);
32
+ wdoc.close();
33
+ var printed = false;
34
+ var callPrint = function () {
35
+ if(printed) {
36
+ return;
37
+ }
38
+ // Fix for IE : Allow it to render the iframe
39
+ frameWindow.focus();
40
+ try {
41
+ // Fix for IE11 - printng the whole page instead of the iframe content
42
+ if (!frameWindow.document.execCommand('print', false, null)) {
43
+ // document.execCommand returns false if it failed -http://stackoverflow.com/a/21336448/937891
44
+ frameWindow.print();
45
+ }
46
+ // focus body as it is losing focus in iPad and content not getting printed
47
+ $('body').focus();
48
+ } catch (e) {
49
+ frameWindow.print();
50
+ }
51
+ frameWindow.close();
52
+ printed = true;
53
+ def.resolve();
54
+ }
55
+ // Print once the frame window loads - seems to work for the new-window option but unreliable for the iframe
56
+ $(frameWindow).on("load", callPrint);
57
+ // Fallback to printing directly if the frame doesn't fire the load event for whatever reason
58
+ setTimeout(callPrint, options.timeout);
59
+ } catch (err) {
60
+ def.reject(err);
61
+ }
62
+ return def;
63
+ }
64
+
65
+ function printContentInIFrame(content, options) {
66
+ var $iframe = $(options.iframe + "");
67
+ var iframeCount = $iframe.length;
68
+ if (iframeCount === 0) {
69
+ // Create a new iFrame if none is given
70
+ $iframe = $('<iframe height="0" width="0" border="0" wmode="Opaque"/>')
71
+ .prependTo('body')
72
+ .css({
73
+ "position": "absolute",
74
+ "top": -999,
75
+ "left": -999
76
+ });
77
+ }
78
+ var frameWindow = $iframe.get(0);
79
+ return printFrame(frameWindow, content, options)
80
+ .done(function () {
81
+ // Success
82
+ setTimeout(function () {
83
+ // Wait for IE
84
+ if (iframeCount === 0) {
85
+ // Destroy the iframe if created here
86
+ $iframe.remove();
87
+ }
88
+ }, 1000);
89
+ })
90
+ .fail(function (err) {
91
+ // Use the pop-up method if iframe fails for some reason
92
+ console.error("Failed to print from iframe", err);
93
+ printContentInNewWindow(content, options);
94
+ })
95
+ .always(function () {
96
+ try {
97
+ options.deferred.resolve();
98
+ } catch (err) {
99
+ console.warn('Error notifying deferred', err);
100
+ }
101
+ });
102
+ }
103
+
104
+ function printContentInNewWindow(content, options) {
105
+ // Open a new window and print selected content
106
+ var frameWindow = window.open();
107
+ return printFrame(frameWindow, content, options)
108
+ .always(function () {
109
+ try {
110
+ options.deferred.resolve();
111
+ } catch (err) {
112
+ console.warn('Error notifying deferred', err);
113
+ }
114
+ });
115
+ }
116
+
117
+ function isNode(o) {
118
+ /* http://stackoverflow.com/a/384380/937891 */
119
+ return !!(typeof Node === "object" ? o instanceof Node : o && typeof o === "object" && typeof o.nodeType === "number" && typeof o.nodeName === "string");
120
+ }
121
+ $.print = $.fn.print = function () {
122
+ // Print a given set of elements
123
+ var options, $this, self = this;
124
+ // console.log("Printing", this, arguments);
125
+ if (self instanceof $) {
126
+ // Get the node if it is a jQuery object
127
+ self = self.get(0);
128
+ }
129
+ if (isNode(self)) {
130
+ // If `this` is a HTML element, i.e. for
131
+ // $(selector).print()
132
+ $this = $(self);
133
+ if (arguments.length > 0) {
134
+ options = arguments[0];
135
+ }
136
+ } else {
137
+ if (arguments.length > 0) {
138
+ // $.print(selector,options)
139
+ $this = $(arguments[0]);
140
+ if (isNode($this[0])) {
141
+ if (arguments.length > 1) {
142
+ options = arguments[1];
143
+ }
144
+ } else {
145
+ // $.print(options)
146
+ options = arguments[0];
147
+ $this = $("html");
148
+ }
149
+ } else {
150
+ // $.print()
151
+ $this = $("html");
152
+ }
153
+ }
154
+ // Default options
155
+ var defaults = {
156
+ globalStyles: true,
157
+ mediaPrint: false,
158
+ stylesheet: null,
159
+ noPrintSelector: ".no-print",
160
+ iframe: true,
161
+ append: null,
162
+ prepend: null,
163
+ manuallyCopyFormValues: true,
164
+ deferred: $.Deferred(),
165
+ timeout: 750,
166
+ title: null,
167
+ doctype: '<!doctype html>'
168
+ };
169
+ // Merge with user-options
170
+ options = $.extend({}, defaults, (options || {}));
171
+ var $styles = $("");
172
+ if (options.globalStyles) {
173
+ // Apply the stlyes from the current sheet to the printed page
174
+ $styles = $("style, link, meta, base, title");
175
+ } else if (options.mediaPrint) {
176
+ // Apply the media-print stylesheet
177
+ $styles = $("link[media=print]");
178
+ }
179
+ if (options.stylesheet) {
180
+ // Add a custom stylesheet if given
181
+ $styles = $.merge($styles, $('<link rel="stylesheet" href="' + options.stylesheet + '">'));
182
+ }
183
+ // Create a copy of the element to print
184
+ var copy = $this.clone();
185
+ // Wrap it in a span to get the HTML markup string
186
+ copy = $("<span/>")
187
+ .append(copy);
188
+ // Remove unwanted elements
189
+ copy.find(options.noPrintSelector)
190
+ .remove();
191
+ // Add in the styles
192
+ copy.append($styles.clone());
193
+ // Update title
194
+ if (options.title) {
195
+ var title = $("title", copy);
196
+ if (title.length === 0) {
197
+ title = $("<title />");
198
+ copy.append(title);
199
+ }
200
+ title.text(options.title);
201
+ }
202
+ // Appedned content
203
+ copy.append(getjQueryObject(options.append));
204
+ // Prepended content
205
+ copy.prepend(getjQueryObject(options.prepend));
206
+ if (options.manuallyCopyFormValues) {
207
+ // Manually copy form values into the HTML for printing user-modified input fields
208
+ // http://stackoverflow.com/a/26707753
209
+ copy.find("input")
210
+ .each(function () {
211
+ var $field = $(this);
212
+ if ($field.is("[type='radio']") || $field.is("[type='checkbox']")) {
213
+ if ($field.prop("checked")) {
214
+ $field.attr("checked", "checked");
215
+ }
216
+ } else {
217
+ $field.attr("value", $field.val());
218
+ }
219
+ });
220
+ copy.find("select").each(function () {
221
+ var $field = $(this);
222
+ $field.find(":selected").attr("selected", "selected");
223
+ });
224
+ copy.find("textarea").each(function () {
225
+ // Fix for https://github.com/DoersGuild/jQuery.print/issues/18#issuecomment-96451589
226
+ var $field = $(this);
227
+ $field.text($field.val());
228
+ });
229
+ }
230
+ // Get the HTML markup string
231
+ var content = copy.html();
232
+ // Notify with generated markup & cloned elements - useful for logging, etc
233
+ try {
234
+ options.deferred.notify('generated_markup', content, copy);
235
+ } catch (err) {
236
+ console.warn('Error notifying deferred', err);
237
+ }
238
+ // Destroy the copy
239
+ copy.remove();
240
+ if (options.iframe) {
241
+ // Use an iframe for printing
242
+ try {
243
+ printContentInIFrame(content, options);
244
+ } catch (e) {
245
+ // Use the pop-up method if iframe fails for some reason
246
+ console.error("Failed to print from iframe", e.stack, e.message);
247
+ printContentInNewWindow(content, options);
248
+ }
249
+ } else {
250
+ // Use a new window for printing
251
+ printContentInNewWindow(content, options);
252
+ }
253
+ return this;
254
+ };
255
+ })(jQuery);