main.ts 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  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. config.headers["caseId"] = params.caseId;
  40. config.headers["sharePassword"] = params.p;
  41. } else {
  42. config.headers = { "page-type": type, fusionId: params.caseId, sharePassword: params.p };
  43. }
  44. },
  45. });
  46. addHook({
  47. before(config: any) {
  48. if (params.sign) {
  49. config.headers["sign"] = params.sign
  50. }
  51. },
  52. });
  53. watchEffect(
  54. (onCleanup) => {
  55. if (
  56. params.sign && [RoutesName.show, RoutesName.signModel].includes(currentLayout.value!)
  57. ) {
  58. const untokenURLS = [
  59. URL.FUSE_MODEL_LIST,
  60. URL.MODEL_LIST,
  61. URL.GET_SETTING,
  62. URL.TAGGING_LIST,
  63. URL.TAGGING_POINT_LIST,
  64. URL.TAGGING_STYLE_LIST,
  65. URL.MESASURE_LIST,
  66. URL.GUIDE_LIST,
  67. URL.GUIDE_PATH_LIST,
  68. URL.CASE_FIRE_INFO,
  69. URL.RECORD_LIST,
  70. URL.RECORD_FRAGMENT_LIST,
  71. URL.VIEW_LIST,
  72. URL.FOLDER_TYPE_LIST,
  73. URL.FLODER_LIST,
  74. URL.MODEL_SIGN,
  75. URL.CASE_INFO,
  76. URL.PATH_LIST,
  77. URL.AUTH_PWD,
  78. URL.MAP_TILE_LIST,
  79. URL.AM_MODEL_LIST,
  80. '/fusion/caseInquest/info',
  81. '/fusion/caseExtractDetail/info',
  82. '/fusion/caseInquest/downDocx',
  83. '/fusion/caseExtractDetail/downDocx',
  84. '/fusion/caseImg/getFfmpegImage'
  85. ]
  86. addUnsetTokenURLS(...untokenURLS);
  87. onCleanup(() => {
  88. delUnsetTokenURLS(...untokenURLS);
  89. });
  90. }
  91. },
  92. { flush: "sync" }
  93. );
  94. export default app;
  95. document.documentElement.addEventListener('contextmenu', ev => ev.preventDefault())
  96. document.documentElement.addEventListener('click', ev => ev.preventDefault())