index.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. import Loading from './loading/index.js';
  2. import Modal from './modal/index.js';
  3. import DateTime from './dateTime/index.js';
  4. import DateTimeV2 from './dateTime-v2/index.js';
  5. import Date from './date/index.js';
  6. import Checkbox from '../packages/checkbox/index.js';
  7. import PageSizeSelect from './page-size-select/index.js';
  8. import Time from './time/index.js';
  9. import Switches from './switches/index.js';
  10. import YearPicker from './year-picker/index.js';
  11. import VueBootstrapPagination from './vue-bootstrap-pagination/index.js';
  12. import VueMonthlyPicker from './vue-monthly-picker/index.js';
  13. import UploadWidget from './upload-widget/index.js';
  14. import Scanner from './scanner/index.js';
  15. import Navbar from './navbar/index.js';
  16. import ImagePreview from './image-preview/index.js';
  17. import InfoWindow from './info/index.js';
  18. import ProcessReport from './process/index.js';
  19. import ProcessReportResult from './process/process-report-result.js';
  20. import ProcessReportResultPreview from './process/process-report-result-preview.js';
  21. import DocGenerator from './info/doc-generator.js';
  22. import InfoSearchWidget from './info/info-search-widget.js';
  23. import SearchWidget from './info/search-widget.js';
  24. import PrintEpc from './print/print-epc.js';
  25. import PrintWidget from './print/print-widget.js';
  26. // import Pagination from './pagination/index.js';
  27. import TreeViewNode from './tree/index.js';
  28. import langZhCn from './i18n/zh-CN.js';
  29. import langEnUs from './i18n/en-US.js';
  30. // import VueI18n from 'vue-i18n';
  31. import Uuid from './common/Uuid.js';
  32. import Common from './common/Common.js';
  33. import SqlApi from './common/SqlApi.js';
  34. import Notify from './common/Notify.js';
  35. import IFrameUtil from './common/IFrameUtil.js';
  36. import UserStorageResource from './common/UserStorageResource.js';
  37. import DownloadService from './common/DownloadService.js';
  38. import ProcessReportResource from './process/src/api/ProcessReportResource.js';
  39. import ModalFix from './modal/src/ModalFix.js';
  40. import PrintUtil from './print/src/PrintUtil.js';
  41. const components = [
  42. Loading,
  43. Modal,
  44. DateTime,
  45. DateTimeV2,
  46. Date,
  47. Checkbox,
  48. PageSizeSelect,
  49. Time,
  50. Switches,
  51. YearPicker,
  52. VueBootstrapPagination,
  53. VueMonthlyPicker,
  54. UploadWidget,
  55. Scanner,
  56. Navbar,
  57. ImagePreview,
  58. InfoWindow,
  59. ProcessReport,
  60. ProcessReportResult,
  61. ProcessReportResultPreview,
  62. DocGenerator,
  63. InfoSearchWidget,
  64. SearchWidget,
  65. PrintEpc,
  66. PrintWidget,
  67. TreeViewNode,
  68. // Pagination
  69. ];
  70. const install = function (app, opts = {}) {
  71. console.log('start install.');
  72. /* istanbul ignore if */
  73. if (install.installed){
  74. console.log('pc-component-v3 already installed.');
  75. return;
  76. }
  77. // Vue.use(VueI18n);
  78. app.mixin({
  79. beforeCreate() {
  80. var _self = this;
  81. // 这里为了防止 beforeCreate 比 vue-i18n 的 beforeCreate 先执行导致 this.$i18n 为空
  82. this.$nextTick(() => {
  83. // 判断是否为根节点,合并国际化信息
  84. //if (this.$root === this && this.$i18n) {
  85. console.log('install pc-component-v3 i18n.');
  86. if (this.$i18n) {
  87. _self.$i18n.mergeLocaleMessage('zh-CN', langZhCn);
  88. _self.$i18n.mergeLocaleMessage('en-US', langEnUs);
  89. }
  90. });
  91. },
  92. });
  93. // locale.use(opts.locale);
  94. // locale.i18n(opts.i18n);
  95. components.map(component => {
  96. console.log('install component: ' + component.name);
  97. app.component(component.name, component);
  98. });
  99. install.installed = true;
  100. console.log('install finished.');
  101. };
  102. /* istanbul ignore if */
  103. // if (typeof window !== 'undefined' && window.Vue) {
  104. // install(window.Vue);
  105. // };
  106. export default {
  107. version: '1.2.9',
  108. // locale: locale.use,
  109. // i18n: locale.i18n,
  110. install,
  111. Loading,
  112. Modal,
  113. DateTime,
  114. DateTimeV2,
  115. Date,
  116. Checkbox,
  117. PageSizeSelect,
  118. Time,
  119. Switches,
  120. YearPicker,
  121. VueBootstrapPagination,
  122. VueMonthlyPicker,
  123. UploadWidget,
  124. Scanner,
  125. Navbar,
  126. ImagePreview,
  127. InfoWindow,
  128. DocGenerator,
  129. ProcessReport,
  130. ProcessReportResult,
  131. ProcessReportResultPreview,
  132. InfoSearchWidget,
  133. SearchWidget,
  134. PrintEpc,
  135. PrintWidget,
  136. TreeViewNode,
  137. // Pagination,
  138. Uuid,
  139. Common,
  140. SqlApi,
  141. Notify,
  142. IFrameUtil,
  143. ModalFix,
  144. PrintUtil,
  145. UserStorageResource,
  146. DownloadService,
  147. ProcessReportResource,
  148. };