main.ts 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. import { App, createApp, watchEffect } from "vue";
  2. import "./style.scss";
  3. import Home from "./app.vue";
  4. import Below from './below.vue'
  5. import Components from "bill/index";
  6. import router from "./router";
  7. import { params } from "@/env";
  8. import { addHook, addUnsetTokenURLS, delHook, delUnsetTokenURLS } from "@/api";
  9. import { currentLayout, RoutesName } from "./router";
  10. import * as URL from "@/api/constant";
  11. import VueKonva from "vue-konva";
  12. // import 'ant-design-vue/dist/reset.css';
  13. import "@/assets/style/global.less";
  14. import { isFirefoxBelow } from "./utils";
  15. let app: App
  16. if (isFirefoxBelow("115.9")) {
  17. app = createApp(Below)
  18. } else {
  19. app = createApp(Home);
  20. app.use(router);
  21. app.use(VueKonva);
  22. }
  23. app.use(Components);
  24. app.mount("#app");
  25. if (import.meta.env.DEV) {
  26. // import('@/hook/notice')
  27. }
  28. addHook({
  29. before(config: any) {
  30. const isView = [
  31. RoutesName.show,
  32. RoutesName.signModel,
  33. RoutesName.error,
  34. ].includes(currentLayout.value!);
  35. const type = isView ? "view" : "edit";
  36. if (config.headers) {
  37. config.headers["page-type"] = type;
  38. config.headers["fusionId"] = params.caseId;
  39. } else {
  40. config.headers = { "page-type": type, fusionId: params.caseId };
  41. }
  42. },
  43. });
  44. addHook({
  45. before(config: any) {
  46. if (params.sign) {
  47. config.headers["sign"] = params.sign
  48. }
  49. },
  50. });
  51. watchEffect(
  52. (onCleanup) => {
  53. if (
  54. params.sign && [RoutesName.show, RoutesName.signModel].includes(currentLayout.value!)
  55. ) {
  56. const untokenURLS = [
  57. URL.FUSE_MODEL_LIST,
  58. URL.MODEL_LIST,
  59. URL.GET_SETTING,
  60. URL.TAGGING_LIST,
  61. URL.TAGGING_POINT_LIST,
  62. URL.TAGGING_STYLE_LIST,
  63. URL.MESASURE_LIST,
  64. URL.GUIDE_LIST,
  65. URL.GUIDE_PATH_LIST,
  66. URL.CASE_FIRE_INFO,
  67. URL.RECORD_LIST,
  68. URL.RECORD_FRAGMENT_LIST,
  69. URL.VIEW_LIST,
  70. URL.FOLDER_TYPE_LIST,
  71. URL.FLODER_LIST,
  72. URL.MODEL_SIGN,
  73. URL.CASE_INFO,
  74. URL.PATH_LIST,
  75. URL.AUTH_PWD,
  76. URL.MAP_TILE_LIST,
  77. URL.AM_MODEL_LIST,
  78. '/fusion/caseInquest/info',
  79. '/fusion/caseExtractDetail/info',
  80. '/fusion/caseInquest/downDocx',
  81. '/fusion/caseExtractDetail/downDocx',
  82. '/fusion/caseImg/getFfmpegImage'
  83. ]
  84. addUnsetTokenURLS(...untokenURLS);
  85. onCleanup(() => {
  86. delUnsetTokenURLS(...untokenURLS);
  87. });
  88. }
  89. },
  90. { flush: "sync" }
  91. );
  92. export default app;
  93. document.documentElement.addEventListener('contextmenu', ev => ev.preventDefault())
  94. document.documentElement.addEventListener('click', ev => ev.preventDefault())