From bb584963c6abe77c5577cbcad3c9956b69444ae9 Mon Sep 17 00:00:00 2001 From: zhongshujie <2862698242@qq.com> Date: 星期二, 01 七月 2025 17:17:30 +0800 Subject: [PATCH] 无人机样章 --- src/books/UAVTechIntro/assets/images/0018-02.jpg | 0 src/books/UAVTechIntro/assets/images/0075-01.jpg | 0 src/books/UAVTechIntro/assets/images/0016-02.jpg | 0 src/books/UAVTechIntro/assets/images/0060_01.jpg | 0 src/books/UAVTechIntro/assets/images/0071-01.jpg | 0 src/books/UAVTechIntro/assets/images/0168-03.jpg | 0 src/books/UAVTechIntro/assets/images/0046_02.jpg | 0 src/books/UAVTechIntro/assets/images/0077-01.jpg | 0 src/books/UAVTechIntro/assets/images/0079-01.jpg | 0 src/books/toddlerGameImplementation/view/components/chapter002.vue | 31 src/books/UAVTechIntro/assets/images/0016-01-02.png | 0 src/books/UAVTechIntro/assets/images/0055-02.jpg | 0 src/books/UAVTechIntro/assets/images/0037-03.jpg | 0 src/books/UAVTechIntro/assets/images/0017-01-02.png | 0 src/books/UAVTechIntro/assets/images/0013-04.jpg | 0 src/books/UAVTechIntro/assets/images/0090-02.jpg | 0 src/books/UAVTechIntro/assets/images/0131-01.jpg | 0 src/books/UAVTechIntro/assets/images/0135-01.jpg | 0 src/books/UAVTechIntro/assets/images/0161-01.jpg | 0 src/books/UAVTechIntro/assets/images/0126-01.jpg | 0 src/books/UAVTechIntro/assets/images/0030-01.jpg | 0 src/books/UAVTechIntro/assets/main.less | 2311 ++++++++++++++ src/books/UAVTechIntro/assets/images/0163-01.jpg | 0 src/books/UAVTechIntro/assets/images/0017_03.jpg | 0 src/books/UAVTechIntro/assets/images/0041-01.jpg | 0 src/books/UAVTechIntro/assets/images/0147-02.jpg | 0 src/books/UAVTechIntro/assets/images/0132-03.jpg | 0 src/books/UAVTechIntro/assets/images/0176-01.jpg | 0 src/books/UAVTechIntro/assets/images/0032-01.jpg | 0 src/books/UAVTechIntro/view/components/chapter001.vue | 2048 ++++++++++++ src/books/UAVTechIntro/assets/images/0036-01.jpg | 0 yarn.lock | 189 + src/books/UAVTechIntro/assets/images/0154-02.jpg | 0 src/books/UAVTechIntro/assets/images/0033_02.jpg | 0 src/books/UAVTechIntro/assets/images/0066-01.jpg | 0 src/books/UAVTechIntro/assets/images/0060-02.jpg | 0 package-lock.json | 984 +++++ src/books/UAVTechIntro/assets/images/0168_02.jpg | 0 src/books/UAVTechIntro/assets/images/0029-01.jpg | 0 src/books/UAVTechIntro/assets/images/0101-01.jpg | 0 src/books/UAVTechIntro/assets/images/0026-03.jpg | 0 src/books/UAVTechIntro/assets/images/0084-01.jpg | 0 src/books/UAVTechIntro/assets/images/0080-01.jpg | 0 src/books/UAVTechIntro/assets/images/0008-01.jpg | 0 src/books/UAVTechIntro/assets/images/a1.jpg | 0 src/books/UAVTechIntro/assets/images/0120-01.jpg | 0 src/books/UAVTechIntro/assets/images/0124-01.jpg | 0 src/assets/methods/resources.js | 1 src/books/UAVTechIntro/assets/images/0100-02.jpg | 0 src/books/UAVTechIntro/assets/images/feiye.jpg | 0 src/books/UAVTechIntro/assets/images/0083-02.jpg | 0 src/books/UAVTechIntro/assets/images/0011-01.jpg | 0 src/books/UAVTechIntro/assets/images/0098-02.jpg | 0 src/books/UAVTechIntro/assets/images/0133_01.jpg | 0 src/books/toddlerGameImplementation/assets/main.less | 20 src/components/pdfview/index.vue | 24 src/books/UAVTechIntro/assets/images/0014_05.jpg | 0 src/books/UAVTechIntro/assets/images/0096_02.jpg | 0 src/books/UAVTechIntro/assets/images/0105-01.jpg | 0 src/books/UAVTechIntro/assets/images/0085-03.jpg | 0 src/books/UAVTechIntro/assets/images/0019-03.jpg | 0 src/books/UAVTechIntro/assets/images/0039-02.jpg | 0 src/books/UAVTechIntro/assets/images/0090_01.jpg | 0 src/books/UAVTechIntro/assets/images/0058-01.jpg | 0 src/books/UAVTechIntro/assets/images/0091-01.jpg | 0 src/books/UAVTechIntro/assets/images/0092-01.jpg | 0 src/books/UAVTechIntro/assets/images/0026_02.jpg | 0 src/books/UAVTechIntro/assets/images/0013-03.jpg | 0 src/books/UAVTechIntro/assets/images/0110-01.jpg | 0 src/books/UAVTechIntro/assets/images/0017-01.jpg | 0 src/books/UAVTechIntro/assets/images/0099-01.jpg | 0 src/books/UAVTechIntro/assets/images/0015-01.jpg | 0 src/books/UAVTechIntro/assets/images/0078-02.jpg | 0 src/books/UAVTechIntro/assets/images/0097-01.jpg | 0 src/books/UAVTechIntro/assets/images/0029_02.jpg | 0 src/books/UAVTechIntro/assets/images/0127-02.jpg | 0 src/books/UAVTechIntro/assets/images/0016-01-05.png | 0 src/books/UAVTechIntro/assets/images/0148-01.jpg | 0 src/books/UAVTechIntro/assets/images/0016-01-01.png | 0 src/books/UAVTechIntro/assets/images/0059-03.jpg | 0 src/books/UAVTechIntro/assets/images/0145-01.jpg | 0 src/books/UAVTechIntro/assets/images/0154-01.jpg | 0 src/books/UAVTechIntro/assets/images/0082-03.jpg | 0 src/books/UAVTechIntro/assets/images/0033_03.jpg | 0 src/books/UAVTechIntro/assets/images/0061-01.jpg | 0 src/books/UAVTechIntro/assets/images/0018-03.jpg | 0 src/books/UAVTechIntro/assets/images/0017-01-01.png | 0 src/books/UAVTechIntro/assets/images/0032-02.jpg | 0 src/books/UAVTechIntro/assets/images/0141-03.jpg | 0 src/books/civilPassengerTransport/assets/main.less | 1565 +++++++++ src/books/UAVTechIntro/assets/images/0050-01.jpg | 0 src/books/UAVTechIntro/assets/images/0040-02.jpg | 0 src/books/UAVTechIntro/view/index.vue | 80 src/books/UAVTechIntro/assets/images/0086-01.jpg | 0 src/books/UAVTechIntro/assets/images/icon/heart.png | 0 src/books/UAVTechIntro/assets/images/0009-01.jpg | 0 src/books/UAVTechIntro/assets/images/0046-03.jpg | 0 src/books/UAVTechIntro/assets/images/0121-01.jpg | 0 src/books/UAVTechIntro/assets/images/0141_02.jpg | 0 src/books/UAVTechIntro/assets/images/0143-01.jpg | 0 src/books/UAVTechIntro/assets/images/0137-01.jpg | 0 src/books/UAVTechIntro/assets/images/0084-02.jpg | 0 src/books/UAVTechIntro/assets/images/0105-02.jpg | 0 src/books/UAVTechIntro/assets/images/0113-02.jpg | 0 src/books/UAVTechIntro/assets/images/0162-01.jpg | 0 src/books/UAVTechIntro/assets/images/0151-01.jpg | 0 src/books/UAVTechIntro/assets/images/0076-03.jpg | 0 src/books/UAVTechIntro/assets/images/0160_01.jpg | 0 src/books/UAVTechIntro/assets/images/0146_01.jpg | 0 src/books/UAVTechIntro/assets/images/0031-01.jpg | 0 src/books/civilPassengerTransport/view/components/header.vue | 46 src/books/UAVTechIntro/assets/images/0042-01.jpg | 0 src/books/UAVTechIntro/assets/images/0146-02.jpg | 0 package.json | 3 src/books/UAVTechIntro/assets/images/0113_01.jpg | 0 src/books/UAVTechIntro/assets/images/0015-02.jpg | 0 src/books/UAVTechIntro/assets/images/0160-02.jpg | 0 src/books/UAVTechIntro/view/components/index.vue | 989 ++++++ src/books/UAVTechIntro/assets/images/0076_02.jpg | 0 src/App.vue | 11 src/assets/js/config.js | 7 src/books/UAVTechIntro/assets/images/0076-01.jpg | 0 vue.config.js | 32 src/books/UAVTechIntro/assets/images/0039-01.jpg | 0 src/books/UAVTechIntro/assets/images/0017-02.jpg | 0 src/books/UAVTechIntro/assets/images/0072-01.jpg | 0 src/books/UAVTechIntro/assets/images/0078-01.jpg | 0 src/books/UAVTechIntro/assets/images/0148-02.jpg | 0 src/books/UAVTechIntro/assets/images/yemei01.png | 0 src/books/UAVTechIntro/assets/images/0016-01-04.png | 0 src/books/aviationEtiquette/view/components/index.vue | 2 src/books/UAVTechIntro/assets/images/0038-03.jpg | 0 src/books/UAVTechIntro/assets/images/0091-02.jpg | 0 src/books/UAVTechIntro/assets/images/0020_01.jpg | 0 src/books/UAVTechIntro/assets/images/0071-03.jpg | 0 src/books/UAVTechIntro/assets/images/0014-04.jpg | 0 src/books/UAVTechIntro/assets/images/0097-02.jpg | 0 src/books/UAVTechIntro/assets/images/0134-01.jpg | 0 src/books/UAVTechIntro/assets/images/0099-02.jpg | 0 src/books/UAVTechIntro/assets/images/a3.jpg | 0 src/components/dialogExaminations/index.vue | 21 src/books/UAVTechIntro/assets/images/0071_02.jpg | 0 src/books/UAVTechIntro/assets/images/0127_01.jpg | 0 .env.product | 20 src/books/UAVTechIntro/assets/images/0067-01.jpg | 0 src/books/UAVTechIntro/assets/images/0014_03.jpg | 0 src/books/UAVTechIntro/assets/images/0085-01.jpg | 0 src/books/UAVTechIntro/assets/images/0089-01.jpg | 0 src/books/UAVTechIntro/assets/images/0102-01.jpg | 0 src/books/UAVTechIntro/assets/images/0026-01.jpg | 0 src/books/UAVTechIntro/assets/images/0081-01.jpg | 0 src/books/UAVTechIntro/assets/images/0137-02.jpg | 0 src/books/UAVTechIntro/assets/images/0007-01.jpg | 0 src/books/UAVTechIntro/assets/images/0123-01.jpg | 0 src/books/UAVTechIntro/assets/images/0141-01.jpg | 0 src/books/UAVTechIntro/assets/images/0019_02.jpg | 0 src/books/UAVTechIntro/assets/images/0138-01.jpg | 0 src/books/UAVTechIntro/assets/images/0153-01.jpg | 0 src/books/UAVTechIntro/assets/images/0096-03.jpg | 0 src/books/UAVTechIntro/assets/images/0120-03.jpg | 0 src/books/UAVTechIntro/assets/images/0157-01.jpg | 0 src/books/UAVTechIntro/assets/images/0133-02.jpg | 0 src/books/UAVTechIntro/assets/images/0175-01.jpg | 0 src/books/UAVTechIntro/assets/images/0120_02.jpg | 0 src/books/UAVTechIntro/assets/images/0168-01.jpg | 0 src/books/UAVTechIntro/assets/images/0162-02.jpg | 0 src/books/UAVTechIntro/assets/images/0013-02.jpg | 0 src/books/UAVTechIntro/assets/images/0040-01.jpg | 0 src/books/UAVTechIntro/assets/images/tb.png | 0 src/books/UAVTechIntro/assets/images/0155-02.jpg | 0 src/books/UAVTechIntro/assets/images/0031-02.jpg | 0 src/books/UAVTechIntro/assets/images/0020-02.jpg | 0 src/books/UAVTechIntro/assets/images/0055-01.jpg | 0 src/books/UAVTechIntro/assets/images/Cover.jpg | 0 src/books/UAVTechIntro/assets/images/0083_01.jpg | 0 src/books/UAVTechIntro/assets/images/0095-01.jpg | 0 src/books/UAVTechIntro/assets/images/0019-01.jpg | 0 src/books/UAVTechIntro/assets/Fonts/FZSSK.TTF | 0 src/books/civilPassengerTransport/view/index.vue | 78 src/books/UAVTechIntro/assets/images/0016-01.jpg | 0 src/books/UAVTechIntro/assets/images/0077-02.jpg | 0 src/books/UAVTechIntro/assets/images/0111-01.jpg | 0 src/books/UAVTechIntro/assets/images/0018-01.jpg | 0 src/books/UAVTechIntro/assets/images/0096-01.jpg | 0 src/books/UAVTechIntro/assets/images/0098-01.jpg | 0 src/books/UAVTechIntro/assets/images/yemei.png | 0 src/books/UAVTechIntro/assets/images/0050-03.jpg | 0 src/books/UAVTechIntro/assets/images/yemei02.png | 0 src/books/UAVTechIntro/assets/images/0079-02.jpg | 0 src/books/UAVTechIntro/assets/images/0147-01.jpg | 0 src/books/UAVTechIntro/assets/images/0151_02.jpg | 0 src/books/UAVTechIntro/assets/images/0014_06.jpg | 0 src/books/UAVTechIntro/assets/images/0010-01.jpg | 0 src/books/UAVTechIntro/assets/images/a2.jpg | 0 src/books/UAVTechIntro/assets/images/0080-03.jpg | 0 src/books/UAVTechIntro/assets/images/0136-02.jpg | 0 src/books/UAVTechIntro/assets/images/0112-03.jpg | 0 src/books/UAVTechIntro/assets/images/0054-01.jpg | 0 src/books/UAVTechIntro/assets/images/0038-02.jpg | 0 src/books/UAVTechIntro/assets/images/0063-01.jpg | 0 src/books/UAVTechIntro/assets/images/0016-01-03.png | 0 src/books/UAVTechIntro/assets/images/icon/heart-check.png | 0 src/books/toddlerGameImplementation/view/components/chapter007.vue | 4 src/books/UAVTechIntro/assets/images/0014_02.jpg | 0 src/books/UAVTechIntro/assets/images/0041-02.jpg | 0 src/books/UAVTechIntro/assets/images/0065-01.jpg | 0 src/books/UAVTechIntro/assets/images/0050_02.jpg | 0 src/books/UAVTechIntro/assets/images/0159-03.jpg | 0 src/books/UAVTechIntro/assets/images/0100-01.jpg | 0 src/books/UAVTechIntro/assets/images/0063-02.jpg | 0 src/books/UAVTechIntro/assets/images/0158-01.jpg | 0 src/books/UAVTechIntro/assets/images/0122-01.jpg | 0 src/books/UAVTechIntro/view/components/header.vue | 136 src/books/UAVTechIntro/assets/images/0101-02.jpg | 0 src/books/UAVTechIntro/assets/images/0033_01.jpg | 0 src/books/UAVTechIntro/assets/images/0080-02.jpg | 0 src/books/UAVTechIntro/assets/images/0038_01.jpg | 0 src/books/UAVTechIntro/assets/images/0085-02.jpg | 0 src/books/UAVTechIntro/assets/images/0136-01.jpg | 0 src/books/civilPassengerTransport/view/components/index.vue | 975 ++++++ src/books/UAVTechIntro/assets/images/0155-01.jpg | 0 src/books/UAVTechIntro/assets/images/0013-01.jpg | 0 src/books/UAVTechIntro/assets/images/0039-03.jpg | 0 src/books/toddlerGameImplementation/view/components/index.vue | 16 src/books/UAVTechIntro/assets/images/0151-03.jpg | 0 src/books/UAVTechIntro/assets/images/0153-02.jpg | 0 src/books/UAVTechIntro/assets/images/0046-01.jpg | 0 src/books/UAVTechIntro/assets/images/0057-01.jpg | 0 228 files changed, 9,469 insertions(+), 124 deletions(-) diff --git a/.env.product b/.env.product index 39985b7..458a09d 100644 --- a/.env.product +++ b/.env.product @@ -1,12 +1,20 @@ VUE_APP_ENV = 'product' -VUE_APP_API_URL = "https://jsek.bnuic.com" + +# 娴嬭瘯鏈嶅浘涔﹂儴缃查厤缃枃浠� # VUE_APP_API_URL = "http://182.92.203.7:3001" -# VUE_APP_API_URL = "https://www.tepcb.com" -VUE_APP_RESOURCE_CTX = 'https://jsek.bnuic.com/books/resource/' -VUE_APP_PUBLIC_PATH = 'https://jsek.bnuic.com/books/book/lifeCare' # VUE_APP_RESOURCE_CTX = 'http://182.92.203.7:3007/books/resource/' # VUE_APP_PUBLIC_PATH = 'http://182.92.203.7:3007/books/book/hydraulicTransmission' + +# 浜笀e璇炬寮忔湇鍥句功閮ㄧ讲閰嶇疆鏂囦欢 +VUE_APP_API_URL = "https://jsek.bnuic.com" +VUE_APP_RESOURCE_CTX = 'https://jsek.bnuic.com/books/resource/' +VUE_APP_PUBLIC_PATH = 'https://jsek.bnuic.com/books/book/UAVTechIntro' + + +# 鏃呮父绀惧浘涔﹂儴缃查厤缃枃浠� +# VUE_APP_API_URL = "https://www.tepcb.com" # VUE_APP_RESOURCE_CTX = 'https://www.tepcb.com/books/resource/' # VUE_APP_PUBLIC_PATH = 'https://www.tepcb.com/books/book/policiesAndRegulations' -VUE_APP_BOOK_LIST = "childHealth/lifeCare/sportsAndHealth/embedded/english/artAndDance/artAndDrama/mathBook/botany/civilAviation/civilServices/meetingPlanners/aviationBasicSkills/aviationEtiquette/aviationSafety/toddlerGameImplementation/childcareInstitutionsManagement/preschoolGameGuidance/kindergartenLanguageActivity/preschoolEvaluation/preschoolBasicKnowledge/practicalCareChildrenManual/OralAndBroadcasting/aurturingAndEducationAged0to3/policiesAndRegulations/kindergartenActivitiesDesignGuidance/toddlerSportsSafetyProtection/artInitiationForAges0to3/childIllnessPreventionCare/behaviorObserveAndGuid/cognitiveLanDevEduAges0to3/aviationPassengerTransport6th/hotelEnglishTrainingBrochure2nd/hydraulicTransmission/MMVRTCMP/foodSensoryInspection" -VUE_APP_BOOK_ID = 'lifeCare' + +VUE_APP_BOOK_LIST = "childHealth/lifeCare/sportsAndHealth/embedded/english/artAndDance/artAndDrama/mathBook/botany/civilAviation/civilServices/meetingPlanners/aviationBasicSkills/aviationEtiquette/aviationSafety/toddlerGameImplementation/childcareInstitutionsManagement/preschoolGameGuidance/kindergartenLanguageActivity/preschoolEvaluation/preschoolBasicKnowledge/practicalCareChildrenManual/OralAndBroadcasting/aurturingAndEducationAged0to3/policiesAndRegulations/kindergartenActivitiesDesignGuidance/toddlerSportsSafetyProtection/artInitiationForAges0to3/childIllnessPreventionCare/behaviorObserveAndGuid/cognitiveLanDevEduAges0to3/aviationPassengerTransport6th/hotelEnglishTrainingBrochure2nd/hydraulicTransmission/MMVRTCMP/foodSensoryInspection/civilPassengerTransport/UAVTechIntro" +VUE_APP_BOOK_ID = 'UAVTechIntro' diff --git a/package-lock.json b/package-lock.json index 0cecb12..d1a4fd5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -34,8 +34,11 @@ "@vue/cli-service": "~5.0.0", "eslint": "^7.32.0", "eslint-plugin-vue": "^8.0.3", + "file-loader": "^6.2.0", "less": "^4.2.0", "less-loader": "^12.2.0", + "rimraf": "^6.0.1", + "url-loader": "^4.1.1", "vue-template-compiler": "^2.6.14", "webpack": "^5.92.0" } @@ -2075,6 +2078,123 @@ "dev": true, "license": "BSD-3-Clause" }, + "node_modules/@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "dev": true, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/brace-expansion": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", + "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", + "dev": true, + "dependencies": { + "@isaacs/balanced-match": "^4.0.1" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmmirror.com/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.5", "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", @@ -2164,6 +2284,43 @@ }, "bin": { "node-pre-gyp": "bin/node-pre-gyp" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "optional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "optional": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@mapbox/node-pre-gyp/node_modules/semver": { @@ -5119,11 +5276,10 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, - "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -5979,6 +6135,12 @@ "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", "dev": true, "license": "MIT" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true }, "node_modules/easy-stack": { "version": "1.0.1", @@ -7127,6 +7289,58 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmmirror.com/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/file-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/file-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, "node_modules/fill-range": { "version": "7.0.1", "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz", @@ -7233,6 +7447,43 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/flat-cache/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/flatted": { "version": "3.3.1", "resolved": "https://registry.npmmirror.com/flatted/-/flatted-3.3.1.tgz", @@ -7258,6 +7509,34 @@ "debug": { "optional": true } + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/form-data": { @@ -7346,8 +7625,7 @@ "version": "1.0.0", "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "devOptional": true, - "license": "ISC" + "devOptional": true }, "node_modules/fsevents": { "version": "2.3.3", @@ -7455,21 +7733,23 @@ } }, "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "devOptional": true, - "license": "ISC", + "version": "11.0.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-11.0.3.tgz", + "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", + "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.0.3", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "*" + "node": "20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -7494,6 +7774,30 @@ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true, "license": "BSD-2-Clause" + }, + "node_modules/glob/node_modules/minimatch": { + "version": "10.0.3", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", + "dev": true, + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } }, "node_modules/globals": { "version": "11.12.0", @@ -8078,8 +8382,8 @@ "version": "1.0.6", "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "devOptional": true, - "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -8323,6 +8627,21 @@ "license": "MIT", "engines": { "node": ">=0.10.0" + } + }, + "node_modules/jackspeak": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/jackspeak/-/jackspeak-4.1.1.tgz", + "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/javascript-stringify": { @@ -10092,6 +10411,12 @@ "node": ">=6" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, "node_modules/param-case": { "version": "3.0.4", "resolved": "https://registry.npmmirror.com/param-case/-/param-case-3.0.4.tgz", @@ -10204,7 +10529,6 @@ "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "devOptional": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -10225,6 +10549,40 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true, "license": "MIT" + }, + "node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dev": true, + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "11.1.0", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-11.1.0.tgz", + "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", + "dev": true, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/path-scurry/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } }, "node_modules/path-to-regexp": { "version": "0.1.7", @@ -11436,16 +11794,19 @@ } }, "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "devOptional": true, - "license": "ISC", + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-6.0.1.tgz", + "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", + "dev": true, "dependencies": { - "glob": "^7.1.3" + "glob": "^11.0.0", + "package-json-from-dist": "^1.0.0" }, "bin": { - "rimraf": "bin.js" + "rimraf": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -12139,12 +12500,40 @@ "node": ">=8" } }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "devOptional": true, "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -12816,6 +13205,65 @@ "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" + } + }, + "node_modules/url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true + } + } + }, + "node_modules/url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/url-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/url-parse": { @@ -13541,12 +13989,49 @@ "ajv": "^8.8.2" } }, + "node_modules/webpack-dev-server/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true, "license": "MIT" + }, + "node_modules/webpack-dev-server/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, "node_modules/webpack-dev-server/node_modules/schema-utils": { "version": "4.2.0", @@ -13766,6 +14251,57 @@ "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, "node_modules/wrap-ansi/node_modules/ansi-styles": { "version": "4.3.0", @@ -15346,6 +15882,86 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "dev": true + }, + "@isaacs/brace-expansion": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", + "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", + "dev": true, + "requires": { + "@isaacs/balanced-match": "^4.0.1" + } + }, + "@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmmirror.com/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "requires": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true + }, + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + } + } + } + }, "@jridgewell/gen-mapping": { "version": "0.3.5", "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", @@ -15418,6 +16034,29 @@ "tar": "^6.1.11" }, "dependencies": { + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, "semver": { "version": "7.6.3", "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", @@ -17578,9 +18217,9 @@ } }, "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -18161,6 +18800,12 @@ "version": "0.1.2", "resolved": "https://registry.npmmirror.com/duplexer/-/duplexer-0.1.2.tgz", "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", "dev": true }, "easy-stack": { @@ -18974,6 +19619,40 @@ "flat-cache": "^3.0.4" } }, + "file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmmirror.com/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz", @@ -19051,6 +19730,31 @@ "flatted": "^3.2.9", "keyv": "^4.5.3", "rimraf": "^3.0.2" + }, + "dependencies": { + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "flatted": { @@ -19063,6 +19767,24 @@ "version": "1.15.6", "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.6.tgz", "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==" + }, + "foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "dependencies": { + "signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true + } + } }, "form-data": { "version": "4.0.0", @@ -19196,17 +19918,34 @@ } }, "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "devOptional": true, + "version": "11.0.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-11.0.3.tgz", + "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", + "dev": true, "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.0.3", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "dependencies": { + "minimatch": { + "version": "10.0.3", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", + "dev": true, + "requires": { + "@isaacs/brace-expansion": "^5.0.0" + } + }, + "minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true + } } }, "glob-parent": { @@ -19770,6 +20509,15 @@ "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true + }, + "jackspeak": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/jackspeak/-/jackspeak-4.1.1.tgz", + "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", + "dev": true, + "requires": { + "@isaacs/cliui": "^8.0.2" + } }, "javascript-stringify": { "version": "2.1.0", @@ -21005,6 +21753,12 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, "param-case": { "version": "3.0.4", "resolved": "https://registry.npmmirror.com/param-case/-/param-case-3.0.4.tgz", @@ -21104,6 +21858,30 @@ "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true + }, + "path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dev": true, + "requires": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "dependencies": { + "lru-cache": { + "version": "11.1.0", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-11.1.0.tgz", + "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", + "dev": true + }, + "minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true + } + } }, "path-to-regexp": { "version": "0.1.7", @@ -21885,12 +22663,13 @@ "dev": true }, "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "devOptional": true, + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-6.0.1.tgz", + "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", + "dev": true, "requires": { - "glob": "^7.1.3" + "glob": "^11.0.0", + "package-json-from-dist": "^1.0.0" } }, "run-parallel": { @@ -22401,11 +23180,31 @@ "strip-ansi": "^6.0.1" } }, + "string-width-cjs": { + "version": "npm:string-width@4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "devOptional": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-ansi-cjs": { + "version": "npm:strip-ansi@6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "requires": { "ansi-regex": "^5.0.1" } @@ -22846,6 +23645,41 @@ "dev": true, "requires": { "punycode": "^2.1.0" + } + }, + "url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } } }, "url-parse": { @@ -23376,11 +24210,34 @@ "fast-deep-equal": "^3.1.3" } }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, "json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } }, "schema-utils": { "version": "4.2.0", @@ -23546,6 +24403,43 @@ } } }, + "wrap-ansi-cjs": { + "version": "npm:wrap-ansi@7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + } + } + }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", diff --git a/package.json b/package.json index 3349d21..408b540 100644 --- a/package.json +++ b/package.json @@ -34,8 +34,11 @@ "@vue/cli-service": "~5.0.0", "eslint": "^7.32.0", "eslint-plugin-vue": "^8.0.3", + "file-loader": "^6.2.0", "less": "^4.2.0", "less-loader": "^12.2.0", + "rimraf": "^6.0.1", + "url-loader": "^4.1.1", "vue-template-compiler": "^2.6.14", "webpack": "^5.92.0" }, diff --git a/src/App.vue b/src/App.vue index 0ad370f..691b2d2 100644 --- a/src/App.vue +++ b/src/App.vue @@ -44,6 +44,8 @@ <hydraulicTransmission v-if="activeBook.name == 'hydraulicTransmission'"></hydraulicTransmission> <foodSensoryInspection v-if="activeBook.name == 'foodSensoryInspection'"></foodSensoryInspection> <MMVRTCMP v-if="activeBook.name == 'MMVRTCMP'"></MMVRTCMP> + <civilPassengerTransport v-if="activeBook.name == 'civilPassengerTransport'"> </civilPassengerTransport> + <UAVTechIntro v-if="activeBook.name == 'UAVTechIntro'"></UAVTechIntro> </div> </template> <script> @@ -127,6 +129,9 @@ foodSensoryInspection: () => import("./books/foodSensoryInspection/view/index.vue"), MMVRTCMP: () => import("./books/MMVRTCMP/view/index.vue"), + civilPassengerTransport: () => + import("./books/civilPassengerTransport/view/index.vue"), + UAVTechIntro: () => import("./books/UAVTechIntro/view/index.vue") }, data() { return { @@ -169,6 +174,7 @@ // aviationBasicSkills // 鍩烘湰鎶�鑳� // aviationSafety // 瀹夊叏妫�鏌ュ疄鍔� // aviationEtiquette // 绀间华鏈嶅姟 + // botany // 妞嶇墿瀛︼紙鍐滃ぇ绀撅級 // childcareInstitutionsManagement // 鎵樿偛鏈烘瀯绠$悊涓庡疄鍔� // toddlerGameImplementation // 濠村辜鍎挎父鎴忔椿鍔ㄥ疄鏂� // preschoolGameGuidance // 瀛﹀墠娓告垙鎸囧 @@ -190,13 +196,14 @@ // hydraulicTransmission // 鏈烘浼犲姩 锛堝搱宸ュぇ锛� // foodSensoryInspection // 椋熷搧鎰熷畼妫�楠屾妧鏈� // MMVRTCMP // 瑙嗚鎵嬪唽 + // civilPassengerTransport // 姘戣埅鏃呭杩愯緭 + // UAVTechIntro // 鏃犱汉鏈哄簲鐢ㄦ妧鏈璁� this.activeBook = await this.config.getBookConfig( process.env.VUE_APP_RESOURCE_CTX + (process.env.VUE_APP_ENV == "product" ? process.env.VUE_APP_BOOK_ID - : "toddlerGameImplementation") + : "UAVTechIntro") ); - // 娴嬭瘯璇曡30椤� // this.activeBook.tryPageCount = 10; // this.config.activeBook = this.activeBook; diff --git a/src/assets/js/config.js b/src/assets/js/config.js index 4a85c7b..49f7369 100644 --- a/src/assets/js/config.js +++ b/src/assets/js/config.js @@ -7,6 +7,12 @@ return response.data; }; +// 璇锋眰鏁欐潗璧勬簮淇℃伅 +const getBookResources = async (ctx) => { + const response = await axios.get(ctx + "/bookResources.json"); + return response.data; +}; + export const appId = 0; export const requestTimeOut = 300000; // 璇锋眰瓒呮椂鏃堕棿 export const tokenKey = "token"; @@ -19,5 +25,6 @@ goodsStore, appId, getBookConfig, + getBookResources, }; export default config; diff --git a/src/assets/methods/resources.js b/src/assets/methods/resources.js index 7f245ad..57391ca 100644 --- a/src/assets/methods/resources.js +++ b/src/assets/methods/resources.js @@ -16,7 +16,6 @@ md5, appRefCode, }); - console.log("res", res); if (typeof res === "string" && res.includes("http")) { return res; } else if (typeof res === "object" && res.data != "") { diff --git a/src/books/UAVTechIntro/assets/Fonts/FZSSK.TTF b/src/books/UAVTechIntro/assets/Fonts/FZSSK.TTF new file mode 100644 index 0000000..d4f6b93 --- /dev/null +++ b/src/books/UAVTechIntro/assets/Fonts/FZSSK.TTF Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0007-01.jpg b/src/books/UAVTechIntro/assets/images/0007-01.jpg new file mode 100644 index 0000000..4a75d52 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0007-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0008-01.jpg b/src/books/UAVTechIntro/assets/images/0008-01.jpg new file mode 100644 index 0000000..426eae0 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0008-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0009-01.jpg b/src/books/UAVTechIntro/assets/images/0009-01.jpg new file mode 100644 index 0000000..971239b --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0009-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0010-01.jpg b/src/books/UAVTechIntro/assets/images/0010-01.jpg new file mode 100644 index 0000000..6bbac8f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0010-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0011-01.jpg b/src/books/UAVTechIntro/assets/images/0011-01.jpg new file mode 100644 index 0000000..4d8b6ae --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0011-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0013-01.jpg b/src/books/UAVTechIntro/assets/images/0013-01.jpg new file mode 100644 index 0000000..992a523 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0013-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0013-02.jpg b/src/books/UAVTechIntro/assets/images/0013-02.jpg new file mode 100644 index 0000000..c6f1325 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0013-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0013-03.jpg b/src/books/UAVTechIntro/assets/images/0013-03.jpg new file mode 100644 index 0000000..ee4fe02 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0013-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0013-04.jpg b/src/books/UAVTechIntro/assets/images/0013-04.jpg new file mode 100644 index 0000000..a3df2f3 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0013-04.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0014-04.jpg b/src/books/UAVTechIntro/assets/images/0014-04.jpg new file mode 100644 index 0000000..738e7f1 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0014-04.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0014_02.jpg b/src/books/UAVTechIntro/assets/images/0014_02.jpg new file mode 100644 index 0000000..3b64066 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0014_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0014_03.jpg b/src/books/UAVTechIntro/assets/images/0014_03.jpg new file mode 100644 index 0000000..e4f2094 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0014_03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0014_05.jpg b/src/books/UAVTechIntro/assets/images/0014_05.jpg new file mode 100644 index 0000000..49e8d05 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0014_05.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0014_06.jpg b/src/books/UAVTechIntro/assets/images/0014_06.jpg new file mode 100644 index 0000000..26e1d1c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0014_06.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0015-01.jpg b/src/books/UAVTechIntro/assets/images/0015-01.jpg new file mode 100644 index 0000000..e22760b --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0015-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0015-02.jpg b/src/books/UAVTechIntro/assets/images/0015-02.jpg new file mode 100644 index 0000000..2e79161 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0015-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0016-01-01.png b/src/books/UAVTechIntro/assets/images/0016-01-01.png new file mode 100644 index 0000000..3529913 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0016-01-01.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0016-01-02.png b/src/books/UAVTechIntro/assets/images/0016-01-02.png new file mode 100644 index 0000000..3e985a7 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0016-01-02.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0016-01-03.png b/src/books/UAVTechIntro/assets/images/0016-01-03.png new file mode 100644 index 0000000..dd902cd --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0016-01-03.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0016-01-04.png b/src/books/UAVTechIntro/assets/images/0016-01-04.png new file mode 100644 index 0000000..121759a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0016-01-04.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0016-01-05.png b/src/books/UAVTechIntro/assets/images/0016-01-05.png new file mode 100644 index 0000000..0cfed0e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0016-01-05.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0016-01.jpg b/src/books/UAVTechIntro/assets/images/0016-01.jpg new file mode 100644 index 0000000..3250771 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0016-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0016-02.jpg b/src/books/UAVTechIntro/assets/images/0016-02.jpg new file mode 100644 index 0000000..24c1706 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0016-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0017-01-01.png b/src/books/UAVTechIntro/assets/images/0017-01-01.png new file mode 100644 index 0000000..2576162 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0017-01-01.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0017-01-02.png b/src/books/UAVTechIntro/assets/images/0017-01-02.png new file mode 100644 index 0000000..1734b7a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0017-01-02.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0017-01.jpg b/src/books/UAVTechIntro/assets/images/0017-01.jpg new file mode 100644 index 0000000..7345ce0 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0017-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0017-02.jpg b/src/books/UAVTechIntro/assets/images/0017-02.jpg new file mode 100644 index 0000000..9d24750 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0017-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0017_03.jpg b/src/books/UAVTechIntro/assets/images/0017_03.jpg new file mode 100644 index 0000000..0471503 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0017_03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0018-01.jpg b/src/books/UAVTechIntro/assets/images/0018-01.jpg new file mode 100644 index 0000000..e7a8324 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0018-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0018-02.jpg b/src/books/UAVTechIntro/assets/images/0018-02.jpg new file mode 100644 index 0000000..fb72829 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0018-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0018-03.jpg b/src/books/UAVTechIntro/assets/images/0018-03.jpg new file mode 100644 index 0000000..6164b46 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0018-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0019-01.jpg b/src/books/UAVTechIntro/assets/images/0019-01.jpg new file mode 100644 index 0000000..e49ae12 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0019-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0019-03.jpg b/src/books/UAVTechIntro/assets/images/0019-03.jpg new file mode 100644 index 0000000..ac62369 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0019-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0019_02.jpg b/src/books/UAVTechIntro/assets/images/0019_02.jpg new file mode 100644 index 0000000..9937f46 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0019_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0020-02.jpg b/src/books/UAVTechIntro/assets/images/0020-02.jpg new file mode 100644 index 0000000..97b0df6 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0020-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0020_01.jpg b/src/books/UAVTechIntro/assets/images/0020_01.jpg new file mode 100644 index 0000000..bd49eba --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0020_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0026-01.jpg b/src/books/UAVTechIntro/assets/images/0026-01.jpg new file mode 100644 index 0000000..06010b9 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0026-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0026-03.jpg b/src/books/UAVTechIntro/assets/images/0026-03.jpg new file mode 100644 index 0000000..2f34f6d --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0026-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0026_02.jpg b/src/books/UAVTechIntro/assets/images/0026_02.jpg new file mode 100644 index 0000000..eeb1623 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0026_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0029-01.jpg b/src/books/UAVTechIntro/assets/images/0029-01.jpg new file mode 100644 index 0000000..9332c11 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0029-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0029_02.jpg b/src/books/UAVTechIntro/assets/images/0029_02.jpg new file mode 100644 index 0000000..20f3fcb --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0029_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0030-01.jpg b/src/books/UAVTechIntro/assets/images/0030-01.jpg new file mode 100644 index 0000000..56538d4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0030-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0031-01.jpg b/src/books/UAVTechIntro/assets/images/0031-01.jpg new file mode 100644 index 0000000..4910c56 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0031-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0031-02.jpg b/src/books/UAVTechIntro/assets/images/0031-02.jpg new file mode 100644 index 0000000..866305e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0031-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0032-01.jpg b/src/books/UAVTechIntro/assets/images/0032-01.jpg new file mode 100644 index 0000000..2b2618d --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0032-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0032-02.jpg b/src/books/UAVTechIntro/assets/images/0032-02.jpg new file mode 100644 index 0000000..2724902 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0032-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0033_01.jpg b/src/books/UAVTechIntro/assets/images/0033_01.jpg new file mode 100644 index 0000000..5bf1826 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0033_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0033_02.jpg b/src/books/UAVTechIntro/assets/images/0033_02.jpg new file mode 100644 index 0000000..1776a1f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0033_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0033_03.jpg b/src/books/UAVTechIntro/assets/images/0033_03.jpg new file mode 100644 index 0000000..708fc70 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0033_03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0036-01.jpg b/src/books/UAVTechIntro/assets/images/0036-01.jpg new file mode 100644 index 0000000..4d59427 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0036-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0037-03.jpg b/src/books/UAVTechIntro/assets/images/0037-03.jpg new file mode 100644 index 0000000..7c5d929 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0037-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0038-02.jpg b/src/books/UAVTechIntro/assets/images/0038-02.jpg new file mode 100644 index 0000000..b90600b --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0038-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0038-03.jpg b/src/books/UAVTechIntro/assets/images/0038-03.jpg new file mode 100644 index 0000000..8eb2529 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0038-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0038_01.jpg b/src/books/UAVTechIntro/assets/images/0038_01.jpg new file mode 100644 index 0000000..49d8f04 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0038_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0039-01.jpg b/src/books/UAVTechIntro/assets/images/0039-01.jpg new file mode 100644 index 0000000..36c3863 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0039-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0039-02.jpg b/src/books/UAVTechIntro/assets/images/0039-02.jpg new file mode 100644 index 0000000..c77815a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0039-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0039-03.jpg b/src/books/UAVTechIntro/assets/images/0039-03.jpg new file mode 100644 index 0000000..57129f4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0039-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0040-01.jpg b/src/books/UAVTechIntro/assets/images/0040-01.jpg new file mode 100644 index 0000000..376813a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0040-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0040-02.jpg b/src/books/UAVTechIntro/assets/images/0040-02.jpg new file mode 100644 index 0000000..6a355d6 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0040-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0041-01.jpg b/src/books/UAVTechIntro/assets/images/0041-01.jpg new file mode 100644 index 0000000..bd65acd --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0041-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0041-02.jpg b/src/books/UAVTechIntro/assets/images/0041-02.jpg new file mode 100644 index 0000000..9286e76 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0041-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0042-01.jpg b/src/books/UAVTechIntro/assets/images/0042-01.jpg new file mode 100644 index 0000000..fd8f08e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0042-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0046-01.jpg b/src/books/UAVTechIntro/assets/images/0046-01.jpg new file mode 100644 index 0000000..dbed9b9 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0046-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0046-03.jpg b/src/books/UAVTechIntro/assets/images/0046-03.jpg new file mode 100644 index 0000000..3bb099a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0046-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0046_02.jpg b/src/books/UAVTechIntro/assets/images/0046_02.jpg new file mode 100644 index 0000000..530e300 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0046_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0050-01.jpg b/src/books/UAVTechIntro/assets/images/0050-01.jpg new file mode 100644 index 0000000..7bac6e6 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0050-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0050-03.jpg b/src/books/UAVTechIntro/assets/images/0050-03.jpg new file mode 100644 index 0000000..9813e91 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0050-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0050_02.jpg b/src/books/UAVTechIntro/assets/images/0050_02.jpg new file mode 100644 index 0000000..895a594 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0050_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0054-01.jpg b/src/books/UAVTechIntro/assets/images/0054-01.jpg new file mode 100644 index 0000000..2743da7 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0054-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0055-01.jpg b/src/books/UAVTechIntro/assets/images/0055-01.jpg new file mode 100644 index 0000000..f839cc2 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0055-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0055-02.jpg b/src/books/UAVTechIntro/assets/images/0055-02.jpg new file mode 100644 index 0000000..8641eaa --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0055-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0057-01.jpg b/src/books/UAVTechIntro/assets/images/0057-01.jpg new file mode 100644 index 0000000..6d89769 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0057-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0058-01.jpg b/src/books/UAVTechIntro/assets/images/0058-01.jpg new file mode 100644 index 0000000..1d883d6 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0058-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0059-03.jpg b/src/books/UAVTechIntro/assets/images/0059-03.jpg new file mode 100644 index 0000000..4c5fdd5 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0059-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0060-02.jpg b/src/books/UAVTechIntro/assets/images/0060-02.jpg new file mode 100644 index 0000000..67146c8 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0060-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0060_01.jpg b/src/books/UAVTechIntro/assets/images/0060_01.jpg new file mode 100644 index 0000000..0b195e8 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0060_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0061-01.jpg b/src/books/UAVTechIntro/assets/images/0061-01.jpg new file mode 100644 index 0000000..3ae480b --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0061-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0063-01.jpg b/src/books/UAVTechIntro/assets/images/0063-01.jpg new file mode 100644 index 0000000..1f52c9f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0063-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0063-02.jpg b/src/books/UAVTechIntro/assets/images/0063-02.jpg new file mode 100644 index 0000000..b4495a3 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0063-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0065-01.jpg b/src/books/UAVTechIntro/assets/images/0065-01.jpg new file mode 100644 index 0000000..ed6fb7b --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0065-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0066-01.jpg b/src/books/UAVTechIntro/assets/images/0066-01.jpg new file mode 100644 index 0000000..641e04e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0066-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0067-01.jpg b/src/books/UAVTechIntro/assets/images/0067-01.jpg new file mode 100644 index 0000000..5269a46 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0067-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0071-01.jpg b/src/books/UAVTechIntro/assets/images/0071-01.jpg new file mode 100644 index 0000000..1c830ec --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0071-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0071-03.jpg b/src/books/UAVTechIntro/assets/images/0071-03.jpg new file mode 100644 index 0000000..74aa200 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0071-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0071_02.jpg b/src/books/UAVTechIntro/assets/images/0071_02.jpg new file mode 100644 index 0000000..8813378 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0071_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0072-01.jpg b/src/books/UAVTechIntro/assets/images/0072-01.jpg new file mode 100644 index 0000000..01e8163 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0072-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0075-01.jpg b/src/books/UAVTechIntro/assets/images/0075-01.jpg new file mode 100644 index 0000000..72fc0cf --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0075-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0076-01.jpg b/src/books/UAVTechIntro/assets/images/0076-01.jpg new file mode 100644 index 0000000..5d8e2a4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0076-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0076-03.jpg b/src/books/UAVTechIntro/assets/images/0076-03.jpg new file mode 100644 index 0000000..ea44bc6 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0076-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0076_02.jpg b/src/books/UAVTechIntro/assets/images/0076_02.jpg new file mode 100644 index 0000000..673a745 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0076_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0077-01.jpg b/src/books/UAVTechIntro/assets/images/0077-01.jpg new file mode 100644 index 0000000..8543118 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0077-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0077-02.jpg b/src/books/UAVTechIntro/assets/images/0077-02.jpg new file mode 100644 index 0000000..181bb7a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0077-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0078-01.jpg b/src/books/UAVTechIntro/assets/images/0078-01.jpg new file mode 100644 index 0000000..649bd41 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0078-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0078-02.jpg b/src/books/UAVTechIntro/assets/images/0078-02.jpg new file mode 100644 index 0000000..703a5b8 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0078-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0079-01.jpg b/src/books/UAVTechIntro/assets/images/0079-01.jpg new file mode 100644 index 0000000..e05e7cf --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0079-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0079-02.jpg b/src/books/UAVTechIntro/assets/images/0079-02.jpg new file mode 100644 index 0000000..3bafe78 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0079-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0080-01.jpg b/src/books/UAVTechIntro/assets/images/0080-01.jpg new file mode 100644 index 0000000..1903053 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0080-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0080-02.jpg b/src/books/UAVTechIntro/assets/images/0080-02.jpg new file mode 100644 index 0000000..0756a7e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0080-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0080-03.jpg b/src/books/UAVTechIntro/assets/images/0080-03.jpg new file mode 100644 index 0000000..9270dc0 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0080-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0081-01.jpg b/src/books/UAVTechIntro/assets/images/0081-01.jpg new file mode 100644 index 0000000..c9dc6ea --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0081-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0082-03.jpg b/src/books/UAVTechIntro/assets/images/0082-03.jpg new file mode 100644 index 0000000..0ccfaf4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0082-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0083-02.jpg b/src/books/UAVTechIntro/assets/images/0083-02.jpg new file mode 100644 index 0000000..51a4a5f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0083-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0083_01.jpg b/src/books/UAVTechIntro/assets/images/0083_01.jpg new file mode 100644 index 0000000..cb16657 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0083_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0084-01.jpg b/src/books/UAVTechIntro/assets/images/0084-01.jpg new file mode 100644 index 0000000..ffadfa7 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0084-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0084-02.jpg b/src/books/UAVTechIntro/assets/images/0084-02.jpg new file mode 100644 index 0000000..be063e5 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0084-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0085-01.jpg b/src/books/UAVTechIntro/assets/images/0085-01.jpg new file mode 100644 index 0000000..01ac062 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0085-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0085-02.jpg b/src/books/UAVTechIntro/assets/images/0085-02.jpg new file mode 100644 index 0000000..0eda48e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0085-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0085-03.jpg b/src/books/UAVTechIntro/assets/images/0085-03.jpg new file mode 100644 index 0000000..f5d85f5 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0085-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0086-01.jpg b/src/books/UAVTechIntro/assets/images/0086-01.jpg new file mode 100644 index 0000000..3f53509 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0086-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0089-01.jpg b/src/books/UAVTechIntro/assets/images/0089-01.jpg new file mode 100644 index 0000000..94f3171 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0089-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0090-02.jpg b/src/books/UAVTechIntro/assets/images/0090-02.jpg new file mode 100644 index 0000000..bd7157a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0090-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0090_01.jpg b/src/books/UAVTechIntro/assets/images/0090_01.jpg new file mode 100644 index 0000000..5555648 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0090_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0091-01.jpg b/src/books/UAVTechIntro/assets/images/0091-01.jpg new file mode 100644 index 0000000..898116d --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0091-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0091-02.jpg b/src/books/UAVTechIntro/assets/images/0091-02.jpg new file mode 100644 index 0000000..6e3ebb1 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0091-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0092-01.jpg b/src/books/UAVTechIntro/assets/images/0092-01.jpg new file mode 100644 index 0000000..5e7f85c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0092-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0095-01.jpg b/src/books/UAVTechIntro/assets/images/0095-01.jpg new file mode 100644 index 0000000..ff62a20 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0095-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0096-01.jpg b/src/books/UAVTechIntro/assets/images/0096-01.jpg new file mode 100644 index 0000000..0a576de --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0096-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0096-03.jpg b/src/books/UAVTechIntro/assets/images/0096-03.jpg new file mode 100644 index 0000000..48321ea --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0096-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0096_02.jpg b/src/books/UAVTechIntro/assets/images/0096_02.jpg new file mode 100644 index 0000000..cdf6e1f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0096_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0097-01.jpg b/src/books/UAVTechIntro/assets/images/0097-01.jpg new file mode 100644 index 0000000..6f82358 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0097-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0097-02.jpg b/src/books/UAVTechIntro/assets/images/0097-02.jpg new file mode 100644 index 0000000..ca7d183 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0097-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0098-01.jpg b/src/books/UAVTechIntro/assets/images/0098-01.jpg new file mode 100644 index 0000000..e055c6c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0098-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0098-02.jpg b/src/books/UAVTechIntro/assets/images/0098-02.jpg new file mode 100644 index 0000000..db63ca7 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0098-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0099-01.jpg b/src/books/UAVTechIntro/assets/images/0099-01.jpg new file mode 100644 index 0000000..7081a78 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0099-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0099-02.jpg b/src/books/UAVTechIntro/assets/images/0099-02.jpg new file mode 100644 index 0000000..949d88f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0099-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0100-01.jpg b/src/books/UAVTechIntro/assets/images/0100-01.jpg new file mode 100644 index 0000000..85222d4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0100-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0100-02.jpg b/src/books/UAVTechIntro/assets/images/0100-02.jpg new file mode 100644 index 0000000..f4ddc28 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0100-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0101-01.jpg b/src/books/UAVTechIntro/assets/images/0101-01.jpg new file mode 100644 index 0000000..3cbfa47 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0101-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0101-02.jpg b/src/books/UAVTechIntro/assets/images/0101-02.jpg new file mode 100644 index 0000000..57c2c5d --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0101-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0102-01.jpg b/src/books/UAVTechIntro/assets/images/0102-01.jpg new file mode 100644 index 0000000..d5f683b --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0102-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0105-01.jpg b/src/books/UAVTechIntro/assets/images/0105-01.jpg new file mode 100644 index 0000000..b744d31 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0105-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0105-02.jpg b/src/books/UAVTechIntro/assets/images/0105-02.jpg new file mode 100644 index 0000000..5c66dc6 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0105-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0110-01.jpg b/src/books/UAVTechIntro/assets/images/0110-01.jpg new file mode 100644 index 0000000..b5829c8 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0110-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0111-01.jpg b/src/books/UAVTechIntro/assets/images/0111-01.jpg new file mode 100644 index 0000000..2244b63 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0111-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0112-03.jpg b/src/books/UAVTechIntro/assets/images/0112-03.jpg new file mode 100644 index 0000000..68c11c7 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0112-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0113-02.jpg b/src/books/UAVTechIntro/assets/images/0113-02.jpg new file mode 100644 index 0000000..c86133c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0113-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0113_01.jpg b/src/books/UAVTechIntro/assets/images/0113_01.jpg new file mode 100644 index 0000000..aedc488 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0113_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0120-01.jpg b/src/books/UAVTechIntro/assets/images/0120-01.jpg new file mode 100644 index 0000000..1547b4a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0120-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0120-03.jpg b/src/books/UAVTechIntro/assets/images/0120-03.jpg new file mode 100644 index 0000000..41e2a1e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0120-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0120_02.jpg b/src/books/UAVTechIntro/assets/images/0120_02.jpg new file mode 100644 index 0000000..f7cf3a2 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0120_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0121-01.jpg b/src/books/UAVTechIntro/assets/images/0121-01.jpg new file mode 100644 index 0000000..37ab545 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0121-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0122-01.jpg b/src/books/UAVTechIntro/assets/images/0122-01.jpg new file mode 100644 index 0000000..090f2e5 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0122-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0123-01.jpg b/src/books/UAVTechIntro/assets/images/0123-01.jpg new file mode 100644 index 0000000..115cb7f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0123-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0124-01.jpg b/src/books/UAVTechIntro/assets/images/0124-01.jpg new file mode 100644 index 0000000..6f7ceaa --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0124-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0126-01.jpg b/src/books/UAVTechIntro/assets/images/0126-01.jpg new file mode 100644 index 0000000..2e504ab --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0126-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0127-02.jpg b/src/books/UAVTechIntro/assets/images/0127-02.jpg new file mode 100644 index 0000000..9601672 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0127-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0127_01.jpg b/src/books/UAVTechIntro/assets/images/0127_01.jpg new file mode 100644 index 0000000..c9a395e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0127_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0131-01.jpg b/src/books/UAVTechIntro/assets/images/0131-01.jpg new file mode 100644 index 0000000..b74d2ca --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0131-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0132-03.jpg b/src/books/UAVTechIntro/assets/images/0132-03.jpg new file mode 100644 index 0000000..afa566e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0132-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0133-02.jpg b/src/books/UAVTechIntro/assets/images/0133-02.jpg new file mode 100644 index 0000000..8ae2d9c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0133-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0133_01.jpg b/src/books/UAVTechIntro/assets/images/0133_01.jpg new file mode 100644 index 0000000..5a29849 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0133_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0134-01.jpg b/src/books/UAVTechIntro/assets/images/0134-01.jpg new file mode 100644 index 0000000..09742ae --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0134-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0135-01.jpg b/src/books/UAVTechIntro/assets/images/0135-01.jpg new file mode 100644 index 0000000..09062ad --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0135-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0136-01.jpg b/src/books/UAVTechIntro/assets/images/0136-01.jpg new file mode 100644 index 0000000..1db2f8c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0136-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0136-02.jpg b/src/books/UAVTechIntro/assets/images/0136-02.jpg new file mode 100644 index 0000000..41c09d0 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0136-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0137-01.jpg b/src/books/UAVTechIntro/assets/images/0137-01.jpg new file mode 100644 index 0000000..b276569 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0137-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0137-02.jpg b/src/books/UAVTechIntro/assets/images/0137-02.jpg new file mode 100644 index 0000000..c23be5b --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0137-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0138-01.jpg b/src/books/UAVTechIntro/assets/images/0138-01.jpg new file mode 100644 index 0000000..d054221 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0138-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0141-01.jpg b/src/books/UAVTechIntro/assets/images/0141-01.jpg new file mode 100644 index 0000000..51faee7 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0141-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0141-03.jpg b/src/books/UAVTechIntro/assets/images/0141-03.jpg new file mode 100644 index 0000000..753af52 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0141-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0141_02.jpg b/src/books/UAVTechIntro/assets/images/0141_02.jpg new file mode 100644 index 0000000..45a3558 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0141_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0143-01.jpg b/src/books/UAVTechIntro/assets/images/0143-01.jpg new file mode 100644 index 0000000..133794e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0143-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0145-01.jpg b/src/books/UAVTechIntro/assets/images/0145-01.jpg new file mode 100644 index 0000000..ae63a62 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0145-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0146-02.jpg b/src/books/UAVTechIntro/assets/images/0146-02.jpg new file mode 100644 index 0000000..fe41423 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0146-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0146_01.jpg b/src/books/UAVTechIntro/assets/images/0146_01.jpg new file mode 100644 index 0000000..d1efdc4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0146_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0147-01.jpg b/src/books/UAVTechIntro/assets/images/0147-01.jpg new file mode 100644 index 0000000..f2c8319 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0147-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0147-02.jpg b/src/books/UAVTechIntro/assets/images/0147-02.jpg new file mode 100644 index 0000000..e66471c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0147-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0148-01.jpg b/src/books/UAVTechIntro/assets/images/0148-01.jpg new file mode 100644 index 0000000..dbb716a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0148-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0148-02.jpg b/src/books/UAVTechIntro/assets/images/0148-02.jpg new file mode 100644 index 0000000..3df4050 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0148-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0151-01.jpg b/src/books/UAVTechIntro/assets/images/0151-01.jpg new file mode 100644 index 0000000..10414ac --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0151-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0151-03.jpg b/src/books/UAVTechIntro/assets/images/0151-03.jpg new file mode 100644 index 0000000..2062f40 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0151-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0151_02.jpg b/src/books/UAVTechIntro/assets/images/0151_02.jpg new file mode 100644 index 0000000..13d4178 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0151_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0153-01.jpg b/src/books/UAVTechIntro/assets/images/0153-01.jpg new file mode 100644 index 0000000..af8752d --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0153-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0153-02.jpg b/src/books/UAVTechIntro/assets/images/0153-02.jpg new file mode 100644 index 0000000..783bd6e --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0153-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0154-01.jpg b/src/books/UAVTechIntro/assets/images/0154-01.jpg new file mode 100644 index 0000000..8d8fc7c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0154-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0154-02.jpg b/src/books/UAVTechIntro/assets/images/0154-02.jpg new file mode 100644 index 0000000..9a3f80a --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0154-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0155-01.jpg b/src/books/UAVTechIntro/assets/images/0155-01.jpg new file mode 100644 index 0000000..7ffa6c5 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0155-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0155-02.jpg b/src/books/UAVTechIntro/assets/images/0155-02.jpg new file mode 100644 index 0000000..640f083 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0155-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0157-01.jpg b/src/books/UAVTechIntro/assets/images/0157-01.jpg new file mode 100644 index 0000000..1028298 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0157-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0158-01.jpg b/src/books/UAVTechIntro/assets/images/0158-01.jpg new file mode 100644 index 0000000..ad8a56d --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0158-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0159-03.jpg b/src/books/UAVTechIntro/assets/images/0159-03.jpg new file mode 100644 index 0000000..c8526a3 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0159-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0160-02.jpg b/src/books/UAVTechIntro/assets/images/0160-02.jpg new file mode 100644 index 0000000..a5ae9cf --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0160-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0160_01.jpg b/src/books/UAVTechIntro/assets/images/0160_01.jpg new file mode 100644 index 0000000..05bcf71 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0160_01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0161-01.jpg b/src/books/UAVTechIntro/assets/images/0161-01.jpg new file mode 100644 index 0000000..254e258 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0161-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0162-01.jpg b/src/books/UAVTechIntro/assets/images/0162-01.jpg new file mode 100644 index 0000000..badaab5 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0162-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0162-02.jpg b/src/books/UAVTechIntro/assets/images/0162-02.jpg new file mode 100644 index 0000000..123d082 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0162-02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0163-01.jpg b/src/books/UAVTechIntro/assets/images/0163-01.jpg new file mode 100644 index 0000000..3c7da81 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0163-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0168-01.jpg b/src/books/UAVTechIntro/assets/images/0168-01.jpg new file mode 100644 index 0000000..069aaf8 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0168-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0168-03.jpg b/src/books/UAVTechIntro/assets/images/0168-03.jpg new file mode 100644 index 0000000..acbc9c4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0168-03.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0168_02.jpg b/src/books/UAVTechIntro/assets/images/0168_02.jpg new file mode 100644 index 0000000..6d38b92 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0168_02.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0175-01.jpg b/src/books/UAVTechIntro/assets/images/0175-01.jpg new file mode 100644 index 0000000..248b234 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0175-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/0176-01.jpg b/src/books/UAVTechIntro/assets/images/0176-01.jpg new file mode 100644 index 0000000..821f16d --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/0176-01.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/Cover.jpg b/src/books/UAVTechIntro/assets/images/Cover.jpg new file mode 100644 index 0000000..61b74c8 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/Cover.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/a1.jpg b/src/books/UAVTechIntro/assets/images/a1.jpg new file mode 100644 index 0000000..d06996c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/a1.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/a2.jpg b/src/books/UAVTechIntro/assets/images/a2.jpg new file mode 100644 index 0000000..fd41c8f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/a2.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/a3.jpg b/src/books/UAVTechIntro/assets/images/a3.jpg new file mode 100644 index 0000000..909b90c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/a3.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/feiye.jpg b/src/books/UAVTechIntro/assets/images/feiye.jpg new file mode 100644 index 0000000..22d0e7f --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/feiye.jpg Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/icon/heart-check.png b/src/books/UAVTechIntro/assets/images/icon/heart-check.png new file mode 100644 index 0000000..74d469c --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/icon/heart-check.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/icon/heart.png b/src/books/UAVTechIntro/assets/images/icon/heart.png new file mode 100644 index 0000000..7817ec4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/icon/heart.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/tb.png b/src/books/UAVTechIntro/assets/images/tb.png new file mode 100644 index 0000000..10b18c4 --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/tb.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/yemei.png b/src/books/UAVTechIntro/assets/images/yemei.png new file mode 100644 index 0000000..0160f7d --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/yemei.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/yemei01.png b/src/books/UAVTechIntro/assets/images/yemei01.png new file mode 100644 index 0000000..d85e5eb --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/yemei01.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/images/yemei02.png b/src/books/UAVTechIntro/assets/images/yemei02.png new file mode 100644 index 0000000..14ea0ea --- /dev/null +++ b/src/books/UAVTechIntro/assets/images/yemei02.png Binary files differ diff --git a/src/books/UAVTechIntro/assets/main.less b/src/books/UAVTechIntro/assets/main.less new file mode 100644 index 0000000..639e6e3 --- /dev/null +++ b/src/books/UAVTechIntro/assets/main.less @@ -0,0 +1,2311 @@ +.UAVTechIntro-book { + width: 100%; + height: 100%; + + // 鑷畾涔夊唴瀹� + .page-box { + box-sizing: border-box; + min-height: 1128px; + margin-bottom: 20px; + box-shadow: 0 3px 6px 1px #00000029; + background-color: #fff; + } + + .foreword { + font-family: 'FZLTZHJW'; + font-weight: 300; + font-size: 1.4em; + color: #6E85AF; + margin-top: 0; + margin-bottom: 0; + text-indent: 0em; + line-height: 30px; + } + + .topBorder { + width: 120px; + border-top: 1px solid #6E85AF; + border-bottom: 1px solid #6E85AF; + height: 2px; + } + + .bottomBorder { + width: 220px; + border-top: 1px solid #6E85AF; + border-bottom: 1px solid #6E85AF; + height: 2px; + } + + input[type="radio"] { + accent-color: #6E85AF !important; + cursor: pointer; + } + + input[type="checkbox"] { + accent-color: #6E85AF !important; + cursor: pointer; + } + + + .wh-no { + white-space: nowrap; + } + + .c-g { + color: green; + } + + .c-r { + color: red; + } + + .t-right { + text-align: right; + } + + .mr-0 { + margin: 0; + } + + .mt-10 { + margin-top: 10px !important; + } + + .mt-20 { + margin-top: 20px !important; + } + + .table-pad { + padding: 1em 0.8em !important; + } + + + .mt-30 { + margin-top: 30px; + } + + .mb-30 { + margin-bottom: 30px !important; + } + + .ml-35 { + margin-left: 35px; + } + + .ma-l { + margin-left: 8%; + } + + .ma-0 { + margin: 0% !important; + } + + .pd-5 { + padding: 0 5px; + } + + .w100 { + width: 100%; + } + + .w80 { + width: 80%; + } + + .w70 { + width: 70%; + } + + .w25 { + width: 25%; + } + + .w20 { + width: 20%; + } + + + .fz-11 { + font-size: 11px !important; + } + + .fz-13 { + font-size: 13px !important; + } + + .fz-14 { + font-size: 14px !important; + } + + .fz-15 { + font-size: 15px !important; + } + + .fz-16 { + font-size: 16px !important; + } + + .fz-18 { + font-size: 18px !important; + } + + .fz-20 { + font-size: 20px; + } + + .pt-20 { + padding-top: 20px; + } + + .td-0 { + text-indent: 0em !important; + } + + .c-p { + cursor: pointer; + } + + .fl { + display: flex; + } + + .ju-cn { + justify-content: center; + } + + .ju-ev { + justify-content: space-evenly; + } + + .jc-sb { + justify-content: space-between; + } + + .jc-fs { + justify-content: flex-start; + } + + .fw-w { + flex-wrap: wrap; + } + + .fd-c { + flex-direction: column; + } + + .fd-r { + flex-direction: row-reverse; + } + + .al-c { + align-items: center; + } + + .h-25 { + height: 25.59px; + } + + .al-fe { + align-items: flex-end; + } + + .ac-f { + align-content: flex-end; + } + + .jc-fe { + justify-content: flex-end; + } + + .jc-c { + justify-content: center; + } + + .jc-sa { + justify-content: space-around + } + + .mr-70 { + margin-right: 70px; + } + + .mr-10 { + margin-right: 10px; + } + + .pad-t-55 { + padding-top: 55px; + } + + .ma-t-30 { + margin-top: 30px; + } + + .ma-t-20 { + margin-top: 20px; + } + + .pad-l-60 { + padding-left: 60px; + } + + .pad-l-80 { + padding-left: 80px; + } + + .pad-r-80 { + padding-right: 80px; + } + + .mb-45 { + margin-bottom: 45px; + } + + .mb-20 { + margin-bottom: 20px !important; + } + + .mb-10 { + margin-bottom: 10px !important; + } + + .pNum { + font-size: 18px !important; + font-style: italic; + font-family: "kaiti"; + padding-top: 2px !important; + padding-bottom: 2px !important; + } + + .p-Num { + background-color: #92B0D5; + color: #fff; + height: 100%; + padding-right: 8px; + font-size: 18px; + font-style: italic; + font-family: "kaiti"; + display: flex; + align-items: center; + } + + /*琛屽唴鍥�*/ + .h-pic { + height: 1.6em; + vertical-align: middle; + } + + + + .cloud { + padding: 0px 8px 0 0 !important; + } + + .headerImg { + width: 30px; + } + + .headerText { + font-size: 12px; + padding: 0 8px; + color: #B1BEDE; + } + + .headerNumber { + color: #231F20; + font-size: 12px; + padding: 0 8px; + border-left: 1px solid #231F20; + } + + .header-left-Number { + color: #728DC0; + font-size: 14px; + padding-right: 8px; + + .span-box-title { + margin: 0 5px; + display: inline-block; + width: 8px; + height: 8px; + background-color: #728DC0; + } + } + + .header-left-text { + margin-left: 8px; + font-size: 12px; + text-align: right; + } + + .header-right-Box { + color: #728DC0; + font-size: 14px; + padding-right: 8px; + + } + + .header-right-Number { + background-color: #92B0D5; + color: #fff; + font-size: 14px; + padding: 3px 0; + padding-right: 8px; + display: flex; + align-items: center; + + img { + height: 26px; + } + } + + .header-right-title { + padding-left: 20px; + border-radius: 10px 0px 0px 10px; + } + + .header-right-last { + height: 100%; + font-size: 18px; + background-color: #B799B6; + padding-left: 20px; + } + + .header-right-end { + height: 100%; + font-size: 18px; + background-color: #738DC0; + padding-left: 50px; + } + + + table { + border-color: none !important; + } + + .table-th-bc { + background-color: #8898c7; + color: #fff; + text-align: center; + text-wrap: nowrap; + + + th { + font-weight: 400; + font-family: "鏂规瀹嬩綋"; + } + } + + td { + padding: 3px; + line-height: 20px; + } + + .table-tr-bc { + background-color: #ede8f1; + color: #000; + font-family: "鏂规浠垮畫"; + } + + .table-tr-bc-one { + background-color: #c7d0e6; + color: #000; + font-family: "鏂规浠垮畫"; + } + + .table-textarea { + background-color: transparent; + border: none; + font-size: 14px; + width: 40px; + font-family: "Times New Roman", "瀹嬩綋"; + resize: none; + + &:focus { + outline: none; + } + } + + .textarea-box { + width: 88%; + margin-left: 2em; + overflow: auto; + word-break: break-all; + resize: none; + border: 1px solid #738DC0; + border-radius: 5px; + background-color: rgba(255, 255, 255, 0); + } + + .input-box { + border: none; + border-bottom: 1px solid #333; + background-color: rgba(255, 255, 255, 0); + outline: none; + } + + + .b0 { + border: 0; + } + + .task { + width: 16%; + margin-bottom: 5em; + margin-top: 0; + border-top: 0.7em solid #5192C6; + } + + .task2 { + width: 16%; + margin-bottom: 5em; + margin-top: 0; + border-top: 0.7em solid #F89C1C; + } + + .task3 { + width: 16%; + margin-bottom: 5em; + margin-top: 0; + border-top: 0.7em solid #448D9C; + } + + .task4 { + width: 16%; + margin-bottom: 5em; + margin-top: 0; + border-top: 0.7em solid #9EAA60; + } + + .p-odd { + padding-right: 1%; + } + + .p-even { + padding-left: 1%; + } + + .p-continued { + text-align: right; + font-size: 14px; + margin-bottom: 10px; + } + + .img-float { + width: 310px; + float: left; + height: auto; + margin: auto; + margin-right: 20px; + + img { + width: 100%; + } + + p { + margin: 0; + } + } + + .img-rights { + width: 310px; + float: right; + height: auto; + margin: auto; + margin-left: 20px; + + img { + width: 100%; + } + + p { + margin: 0 !important; + } + } + + .w430 { + width: 430px; + } + + .w395 { + width: 395px; + } + + .w350 { + width: 350px; + } + + .w290 { + width: 290px; + } + + .w280 { + width: 280px; + } + + .w275 { + width: 275px; + } + + .w270 { + width: 270px; + } + + .w250 { + width: 250px; + } + + .w230 { + width: 230px; + } + + .w220 { + width: 220px; + } + + .w200 { + width: 200px; + } + + .w180 { + width: 180px; + } + + .w150 { + width: 150px; + } + + .w115 { + width: 115px; + } + + .pdf-text { + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: flex-start; + margin-bottom: 20px; + + p { + margin: 0; + margin-right: 10px; + } + + .pdf-con { + display: flex; + justify-content: flex-start; + align-items: center; + padding: 10px 0; + box-sizing: border-box; + border-radius: 10px; + + .pdf-view { + min-width: 160px; + display: flex; + justify-content: center; + align-items: center; + border: 0.15em dashed #895B2E; + margin-right: 15px; + padding: 0 15px; + border-radius: 5px; + margin-top: 15px; + + span { + font-size: 14px; + text-align: center; + font-family: 'FZLTXIHJW'; + display: flex; + align-items: center; + justify-content: flex-start; + + svg { + fill: #895B2E; + } + } + + span:nth-child(2) { + padding-top: 5px; + box-sizing: border-box; + } + + span:hover { + color: #895B2E; + cursor: pointer; + text-decoration: underline; + -webkit-user-select: none; + /* Safari 3.1+ */ + -moz-user-select: none; + /* Firefox 2+ */ + -ms-user-select: none; + /* IE 10+ */ + user-select: none; + /* 鏍囧噯璇硶 */ + } + } + } + + .pdf-con-15 { + margin-top: -20px; + } + } + + div.bk-ztgs { + border: 0.15em dotted #5192c6; + padding: 0.5em; + margin-bottom: 2em; + margin-top: 2em; + border-radius: 1em; + position: relative; + } + + p.bj1-ztgs { + background-color: #5192c6; + color: #ffffff; + display: inline-block; + font-size: 1em; + padding: 0.1em 0.7em 0.12em 0.7em; + font-weight: bold; + border-radius: 0em; + margin-left: 0em; + text-align: center; + text-indent: 0em; + position: absolute; + top: -2em; + } + + + .link-float { + width: 150px; + float: left; + height: auto; + margin: auto; + margin-right: 20px; + } + + .imgBox-003 { + width: 100%; + height: 280px; + margin-bottom: 18px; + } + + + .imgBox { + display: flex !important; + flex-direction: column-reverse !important; + position: relative !important; + + .img { + margin: 0 !important; + font-size: 14px !important; + position: absolute !important; + left: 50% !important; + transform: translateX(-50%); + bottom: -2% !important; + } + + img { + height: 80%; + } + } + + // 棰樼洰 + + .textarea-main { + background-color: transparent; + max-width: 95%; + min-width: 95%; + outline: none; + } + + .textarea-focused { + border-color: #5192c6 !important; + box-shadow: #5192c6 !important; + } + + .select-border { + width: 60px; + border: 0; + border-bottom: 1px solid #767676; + + &:focus { + outline: none; + } + } + + .btn-border { + border-radius: 6px; + border-color: #5192C6; + } + + .btn-w { + cursor: pointer; + font-size: 14px; + border-width: 1px; + width: 80px; + height: 30px; + background-color: #fff; + + &:hover { + background-color: #5192C6; + color: #fff; + } + } + + .parimary-btn { + cursor: pointer; + min-width: 80px; + height: 30px; + font-size: 14px; + margin-left: 5px; + background-color: #5192C6; + border-color: #5192C6; + border-width: 1px; + color: #fff; + border-radius: 6px; + + &:hover { + background-color: #a1afc8; + border-color: #a1afc8; + } + } + + .event-header-text-bc { + background-color: #DED5E8; + } + + //瑙嗛 + .video-box-cover { + border: 1px dashed #6E85AF; + padding: 2% 2%; + } + + .video-box { + margin: 20px 0 20px 0; + border: 1px dashed #6E85AF; + padding: 2% 2%; + } + + .video-box-left { + margin: 20px 8% 20px 0; + border: 1px dashed #6E85AF; + padding: 2% 2%; + } + + .videoname { + display: flex; + justify-content: center; + } + + .collect-btn { + cursor: pointer; + width: 20px; + height: 20px; + margin-left: 10px; + margin-top: 0.8%; + } + + .collect-btn1 { + cursor: pointer; + width: 10px; + height: 10px; + margin-left: 10px; + margin-top: 0.8%; + } + + .unitImg { + position: relative; + z-index: 1; + } + + .unitBox { + z-index: 99; + position: absolute; + top: -5px; + left: 40px; + } + + .unit2Box { + z-index: 99; + position: absolute; + top: -200px; + left: 40px; + } + + .unitGraphic { + display: inline-block; + width: 10px; + height: 10px; + background-color: #5192C6; + border-radius: 50%; + margin-right: 15px; + } + + .unit2Graphic { + display: inline-block; + width: 10px; + height: 10px; + background-color: #F89C1C; + border-radius: 50%; + margin-right: 15px; + } + + .unit3Graphic { + display: inline-block; + width: 10px; + height: 10px; + background-color: #448D9C; + border-radius: 50%; + margin-right: 15px; + } + + .unit4Graphic { + display: inline-block; + width: 10px; + height: 10px; + background-color: #9EAA60; + border-radius: 50%; + margin-right: 15px; + } + + + .unitText { + color: #5192C6; + font-size: 18px; + } + + .unit2Text { + color: #F89C1C; + font-size: 16px; + } + + .unit3Text { + color: #448D9C; + font-size: 16px; + } + + .unit4Text { + color: #9EAA60; + font-size: 16px; + } + + + + //杩佺Щ + ul { + list-style-type: none; + } + + li { + list-style-type: none; + } + + .custom_tag2 { + background-color: #F1BE49; + color: #FFFFFF; + display: inline-block; + padding: 0.5px; + border-radius: 1.5em; + font-size: 1.1em; + padding: 2px 10px 2px 10px; + font-weight: bold; + margin: 0; + text-indent: 0em; + margin-bottom: 0.5em; + } + + .custom_tag1 { + background-color: #35ACD6; + color: #FFFFFF; + display: inline-block; + padding: 1px; + font-size: 1.1em; + padding: 3px 10px 3px 10px; + font-weight: bold; + box-shadow: 15px 0px 0px 0px #F5D83E, -15px 0px 0px 0px #F5D83E; + margin: 0; + text-indent: 0em; + margin-bottom: 0.5em; + } + + .custom_tag { + background-color: #35509F; + color: #FFFFFF; + display: inline-block; + padding: 1px; + border-radius: 1.5em; + font-size: 1.1em; + padding: 10px 20px 10px 20px; + font-weight: bold; + box-shadow: 30px 0px 0px 0px #F5D83E; + margin: 0; + text-indent: 0em; + margin-bottom: 0.5em; + } + + + span.under1 { + border-bottom: 2px solid #F0BD4A; + border-width: 2px; + + } + + div.bodycontent-div-center { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + margin: 1em 1em 1em 1em; + font-weight: normal; + border-width: 1.5px; + border-color: #dfb27d; + padding: 1em; + } + + img.bodycontent-divcenter-image { + float: center; + clear: both; + height: 140px; + margin: 15px; + } + + .module_block { + display: flex; + font-size: 1.1em; + position: relative; + padding-left: 90px; + justify-content: center; + align-items: center; + margin-right: 91px; + } + + .module_block .custom1 { + background-color: #9ACC77; + padding: 10px 20px; + color: #FFFFFF; + /* position: absolute; */ + /* left:0; */ + /* top: 50%; */ + border-radius: 0.5em 0em 0em 0.5em; + /* transform: translateY(-50%); */ + } + + .module_block .custom2 { + background-color: #E9F3E0; + padding: 10px 20px; + color: #75A64E; + font-weight: bold; + border-radius: 0em 0.5em 0.5em 0em; + } + + + + div.bodycontent-div-left1 { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + margin: 1em 1em 1em 1em; + font-weight: normal; + border-width: 1.5px; + border-color: #dfb27d; + padding: 1em; + background-color: #F0F8FF; + } + + div.bodycontent-div-left { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + margin: 1em 1em 1em 1em; + font-weight: normal; + border-width: 1.5px; + border-color: #dfb27d; + padding: 1em; + } + + img.bodycontent-divright-image { + float: right; + clear: both; + height: 140px; + margin: 15px; + } + + img.bodycontent-divleft-image { + float: left; + clear: both; + height: 110px; + margin: 15px; + } + + .bodystyle { + text-align: justify; + margin: 0 12%; + padding-bottom: 80px; + line-height: 30px; + } + + span.zt-0 { + color: #0087AF; + } + + p.pzt-0 { + color: #0087AF; + font-size: 18px; + } + + p.pzt-0-right { + font-size: 18px; + color: #0087AF; + text-align: right; + } + + p.pzt-1 { + font-weight: bold; + color: #0087AF; + font-size: 18px; + } + + div.sgc-toc-title { + font-size: 2em; + font-weight: bold; + margin-bottom: 1em; + text-align: center; + } + + div.sgc-toc-level-1 { + margin-left: 0em; + } + + div.sgc-toc-level-2 { + margin-left: 2em; + } + + div.sgc-toc-level-3 { + margin-left: 2em; + } + + div.sgc-toc-level-4 { + margin-left: 2em; + } + + div.sgc-toc-level-5 { + margin-left: 2em; + } + + div.sgc-toc-level-6 { + margin-left: 2em; + } + + .imz { + width: 100%; + text-align: center; + + + } + + .note { + font-size: 0.85em; + } + + + .block { + font-family: "FangSong"; + margin-top: 0.2em; + margin-bottom: 0.2em !important; + text-indent: 2em; + line-height: 30px; + font-size: 17px; + text-align: justify; + } + + .block1 { + text-align: center; + } + + .block2 { + line-height: 25px; + } + + .block3 { + line-height: 20px; + } + + + .img { + font-weight: 400; + font-family: 'FZLTXIHJW'; + text-align: center; + font-size: 0.7em; + margin-left: 0%; + margin-right: 0%; + text-indent: 0em; + } + + .img1 { + font-family: 'FZLTXIHJW'; + text-align: right; + font-size: 0.85em; + margin-left: 0%; + margin-right: 2em; + text-indent: 0em; + } + + + p { + font-family: "鏂规瀹嬩綋"; + margin-top: 0.2em; + margin-bottom: 0.2em !important; + text-indent: 2em; + line-height: 30px; + text-align: justify; + } + + .t-al { + text-align-last: justify; + } + + + .cover { + width: 100%; + padding: 0px; + } + + .center { + text-align: center; + margin-left: 0%; + margin-right: 0%; + text-indent: 0em; + } + + .center-ss { + text-align: center; + color: #EF8472; + font-weight: bold; + margin-left: 0%; + margin-right: 0%; + text-indent: 0em; + } + + .left { + text-indent: 0em; + margin: 0 !important; + line-height: 20px; + } + + .left2 { + font-size: 1.3em; + text-indent: 0em; + font-weight: bold; + margin-left: 0%; + margin-right: 0%; + } + + .left3 { + margin: 0 !important; + line-height: 20px; + } + + .right { + text-align: right; + margin-left: 0%; + margin-right: 0%; + } + + .left1 { + text-indent: 0em; + margin-left: 0%; + margin-right: 0%; + } + + .center1 { + text-align: center; + margin-left: 0%; + margin-right: 0%; + font-size: 1.2em; + text-indent: 0em; + font-weight: bold; + } + + .right1 { + text-align: right; + margin-left: 0%; + margin-right: 0%; + } + + .quote { + margin-top: 0%; + margin-bottom: 0%; + margin-left: 1em; + margin-right: 1em; + text-align: justify; + font-family: "cnepub", serif; + } + + h1 { + font-family: 'FZLTZHJW'; + line-height: 2em; + font-weight: bold; + color: #FFFFFF; + font-size: 2em; + margin-bottom: 1em; + margin-top: 1em; + } + + .h1-bj { + background-color: #6E85AF; + padding: 0.3em 0.5em 0.3em 0.5em; + margin-left: -0.2em; + + } + + .h1-bk { + box-shadow: inset 0em 0.1em 0em 0em #C3C2C0; + border-top-style: solid; + border-right-style: solid; + border-bottom-style: solid; + border-left-style: none; + padding: 0.1em 0.8em 0.1em 0.5em; + font-weight: bold; + color: #000000; + margin-bottom: 1em; + margin-top: 1em; + + } + + h1.jz { + text-align: center; + text-indent: 0em; + } + + + + .front { + font-family: 'FZLTZHJW'; + font-weight: 400; + font-size: 1.1em; + color: #000; + margin-top: 1.5em; + margin-bottom: 3em; + text-indent: 0em; + text-align: center; + } + + h2 { + font-family: 'FZLTZHJW'; + color: #6A80B9; + font-weight: 400; + text-align: left; + font-size: 25px; + margin-top: 2em; + margin-bottom: 1.5em; + margin-left: 2.5em; + } + + h3 { + font-family: 'FZLTZHJW'; + font-weight: 100; + text-align: left; + font-size: 1em; + color: #EEAF68; + margin-top: 2em; + margin-bottom: 1.5em; + text-indent: 0em; + margin-left: 0em; + } + + h4 { + font-family: 'FZHTJW'; + color: #697DB8; + font-weight: 100; + margin-bottom: 0.5em; + margin-top: 1em; + font-size: 1.1em; + text-indent: 0em; + } + + h5 { + font-family: 'FZHTJW'; + color: #EEAF68; + margin-bottom: 0.5em; + margin-top: 1em; + font-size: 1.05em; + text-indent: 2em; + font-weight: 100; + } + + h6 { + font-weight: 100; + font-family: "妤蜂綋"; + color: #000000; + margin-bottom: 0.2em; + margin-top: 0.2em; + font-size: 1.15em; + text-indent: 2em; + } + + .zt-h6 { + + font-family: 'FZHTJW'; + color: #65C097; + margin-bottom: 0.5em; + margin-top: 1em; + font-size: 1.15em; + text-indent: 2em; + } + + .bb { + + font-family: "cnepub", serif; + font-family: 'FZHTJW'; + color: #66CCCC; + font-size: 1.1em; + margin-top: 10px; + text-indent: 2em; + margin-bottom: 10px; + border-bottom: 5px dotted #F4C388; + margin-left: 2em; + margin-bottom: 0.5em; + text-indent: 0em; + } + + .u { + + text-decoration: underline; + } + + .img-0 { + width: 100%; + } + + .img-a { + width: 95%; + } + + .img-b { + width: 70%; + } + + .img-c { + width: 60%; + } + + .img-d { + width: 50%; + } + + .img-e { + width: 45%; + } + + .img-f { + width: 40%; + } + + .img-g { + width: 30%; + } + + .img-h { + width: 20%; + } + + .img-i { + width: 10%; + } + + .img-j { + width: 5%; + } + + .img-k{ + width: 2%; + } + + .img-zt { + height: 6em; + margin-top: -1.5em; + margin-bottom: -0.4em; + margin-left: 15%; + } + + .inline { + height: 1em; + margin-bottom: -0.3em; + } + + .inline0 { + height: 3em; + } + + .inline0-1 { + height: 2em; + } + + .inline2 { + height: 2.3em; + } + + .img-qj { + height: 7.5em; + margin-bottom: -3.4em; + margin-right: 0.5em; + } + + + .bk-bwh { + background-color: #DFEBF7; + font-size: 1.2em; + padding: 25px; + border: 4px dotted #197ABF; + + .block { + font-family: "kaiti"; + } + } + + .zt-ls1 { + color: #000; + font-size: 16px; + font-weight: bold; + } + + span.lsyq-1 { + background-color: #0082D4; + padding: 0.2em 0.4em 0.2em 0.4em; + border-radius: 1.2em; + margin-right: 0.5em; + color: #FFFFFF; + font-weight: bold; + font-size: 1.3em; + } + + span.hsyq-1 { + background-color: #FFB7D4; + padding: 0.2em 0.4em 0.2em 0.4em; + border-radius: 1.2em; + margin-right: 0.5em; + color: #FFFFFF; + font-weight: bold; + font-size: 1.3em; + + } + + .zt-hs1 { + font-weight: bold; + color: #F0855B; + font-size: 1.2em; + } + + .h1-zt1 { + padding: 5px 25px 5px 25px; + border-radius: 10px 0px 0px 10px; + background-color: #5392C7; + font-size: 1.2em; + color: #FFFFFF; + } + + .h1-zt2 { + padding: 10px; + background-color: #B1DDE0; + margin-right: 2em; + color: #FFFFFF; + padding: 5px 50px 5px 25px; + border-radius: 0px 5px 80px 0px; + font-size: 1.2em; + } + + + .bk { + border: 0.15em dotted #FAAD70; + padding: 1em; + margin-bottom: 2.5em; + margin-top: 2.5em; + border-radius: 0em; + position: relative; + + } + + .bk-img { + border: 0.15em dotted #FAAD70; + padding: 3em 3em; + margin-bottom: 2em; + margin-top: 2em; + border-radius: 0em; + position: relative; + } + + p.bj1-qjms { + background-color: #fff; + color: #FAAD70; + font-weight: bold; + border-radius: 1.5em; + margin-left: 0em; + text-align: center; + text-indent: 0em; + position: absolute; + top: -19px; + } + + .span-box { + display: inline-block; + width: 8px; + height: 8px; + background-color: #FAAD70; + } + + .span-text { + font-size: 16px; + font-weight: 100; + padding: 0em 0.5em 0em 0.5em; + } + + + .bj { + background-color: #E1E7F3; + padding: 0.2em 0.8em 0.2em 0.8em; + margin-bottom: 2em; + + } + + span.bj1 { + background-color: #FFFFFF; + padding: 0.2em 0.05em 0.2em 0.05em; + font-size: 1.1em; + font-weight: bold; + color: #EFAA71; + } + + span.bj2 { + background-color: #6E85AF; + padding: 0.2em 0.5em 0.2em 0.5em; + font-size: 1.1em; + font-weight: bold; + border-radius: 1em; + color: #FFFFFF; + box-shadow: 0.3em 0.3em 0px 0px #C3C2C0; + } + + div.bk2 { + border: 3px solid #93A8D5; + padding: 0.2em 1em 0.2em 1em; + border-radius: 1em; + margin-top: 2em; + margin-bottom: 1.5em; + } + + .zt-zysx { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + background-color: #24b8bc; + border-radius: 1.5em; + color: #FFFFFF; + font-weight: bold; + padding: 4px; + font-size: 1.2em; + box-shadow: 0.2em 0.2em 0px 0px #c1e3e4; + } + + .zt-zysx1 { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + background-color: #96A7D5; + border-radius: 1.5em; + color: #FFFFFF; + font-weight: 100; + padding: 4px; + font-size: 1em; + } + + .zt-zysx2 { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + background-color: #0071BD; + font-size: 1.2em; + } + + .zt-1 { + color: #6F84AF; + font-weight: bold; + font-size: 1.1em; + + } + + div.bj3 { + background-color: #DED5E8; + padding: 1em 1em 1em 1.5em; + border-radius: 1em; + margin-bottom: 0.1em; + margin-left: -0.6em; + margin-right: -0.6em; + margin-top: -0.5em; + + } + + div.bj3 p { + font-family: 'FangSong' !important; + } + + span.bj3-xyx { + background-color: #92B03D; + color: #FFFFFF; + border-radius: 5px; + padding: 5px 10px 5px 10px; + font-size: 1em; + font-weight: bold; + + } + + div.bj3-xyx { + position: absolute; + top: -15px; + left: -25px; + + } + + + + span.bj3-xyx { + background-color: #92B03E; + color: #FFFFFF; + border-radius: 1.5em; + padding: 5px 20px 5px 20px; + font-size: 1em; + font-weight: bold; + + } + + div.bk1 { + margin-top: -2em; + margin-left: -1.6em; + } + + + .bk-video { + padding: 10px 5px; + margin-bottom: 2em; + margin-top: 0; + border-radius: 0em; + position: relative; + } + + p.bj4-qjms { + background-color: #fff; + color: #92A1CB; + font-size: 20px; + font-weight: bold; + border-radius: 1.5em; + margin-left: 0em; + text-align: center; + text-indent: 0em; + position: absolute; + top: -32px; + } + + .span-text-video { + padding: 0em 0.15em 0em 0.3em; + } + + .span-svg { + padding: 0.3em 0.15em 0em 0.3em; + } + + .bold { + font-size: 1.1em; + font-weight: 800; + color: #677fb7; + } + + .quotation { + font-family: "kaiti"; + font-size: 1em; + font-weight: 400; + } + + + .ts-1 { + font-weight: bold; + } + + .zt-h4 { + background-color: #F0BD40; + padding: 10px; + color: #FFFFFF; + margin-left: -2em; + border-radius: 1.5em; + } + + .qyls-h4 { + font-family: "HiFont Hei GB"; + color: #6CB26C; + font-weight: bold; + padding: 0.2em; + text-indent: 0em; + margin-left: 0%; + } + + .bj4 { + background-color: #FFDEB5; + padding: 20px; + border-radius: 0.1em; + margin-bottom: 2em; + margin-top: 2.5em; + } + + span.bj4-xyx { + background-color: #FA9D1A; + color: #FFFFFF; + border-radius: 1.5em; + padding: 5px 20px 5px 20px; + font-size: 1em; + font-weight: bold; + + } + + div.bj4-xyx { + margin-top: -3em; + margin-bottom: 1.5em; + margin-left: -2.5em; + } + + .bj5 { + background-color: #CFCBDC; + padding: 20px; + border-radius: 1em; + margin-bottom: 1em; + margin-top: 2.5em; + } + + span.bj5-xyx { + background-color: #FFFFFF; + color: #7D719F; + border-radius: 0.5em 0.5em 0em 0em; + padding: 5px 20px 5px 20px; + font-size: 1em; + font-weight: bold; + + } + + div.bj5-xyx { + margin-top: -4em; + margin-bottom: 1.5em; + margin-left: -1.5em; + } + + + div.bj6 { + margin-top: 1.6em; + margin-bottom: -2.2em; + margin-left: -1.3em; + } + + + span.bj6-xyx { + background-color: #7B72A1; + border-radius: 0.5em 0.5em 0em 0em; + padding: 10px 20px 10px 20px; + font-size: 1em; + font-weight: bold; + + } + + .zt-1 { + color: #6F84AF; + font-weight: bold; + font-size: 1.1em; + + } + + + .zt-lvs1 { + color: #95B321; + } + + + .zt-cs { + color: #FCA01B; + } + + + .bk3 { + background-color: #E9F0E9; + border: 2px dotted #C9DBCD; + padding: 3px 10px 3px 10px; + margin-top: 2em; + margin-bottom: 1em; + } + + .zysx { + margin-top: -1.2em; + margin-left: -2em; + + p { + margin: 0 !important; + } + } + + .zt-zysx2 { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + background-color: #0071BD; + font-size: 1.2em; + } + + span.bk1 { + border: 1px solid #000000; + margin: 1em 1em 1em 1em; + } + + .cs1 { + color: #E9AB7A; + font-weight: bold; + } + + .bk4 { + border: 2px dashed #9FA8CF; + padding: 3px 10px 3px 10px; + margin-top: 2em; + margin-bottom: 1em; + } + + + .bk5 { + margin-top: -1.4em; + margin-bottom: 0.5em; + margin-left: -1.6em; + } + + .h3-zt1 { + padding: 0.26em 0.7em; + background-color: #EEAF68; + color: #FFFFFF; + } + + .h3-bk { + border: 1px solid #EEAF68; + margin: 5em 5em 5em 0em; + padding: 0.2em 1em 0.2em 0.4em; + border-radius: 0em 1em 1em 0em; + } + + + .inline1 { + height: 2em; + margin-top: 0.5em; + margin-bottom: -0.5em; + } + + + .tp-3 { + margin-top: -4.5em; + margin-bottom: 1em; + } + + + .rwmb-4 { + height: 2.5em; + } + + +} + + +.custom-dialog { + overflow: hidden !important; + + .el-dialog__body { + padding: 0; + } + + .el-dialog__header { + background-color: rgba(0, 0, 0, 0.8); + + .header_title { + display: flex; + justify-content: space-between; + align-items: center; + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + + span:nth-child(2):hover { + cursor: pointer; + } + } + + .el-dialog__title, + .el-dialog__headerbtn .el-dialog__close { + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + } + } +} + +.header_title { + display: flex; + justify-content: space-between; + align-items: center; + // color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + + span:nth-child(2):hover { + cursor: pointer; + } +} + +// 琛ㄦ牸鏍峰紡 +table { + border-collapse: collapse; //琛ㄦ牸鐨勮竟妗嗗悎骞讹紝濡傛灉鐩搁偦锛屽垯鍏辩敤涓�涓竟妗嗐�� + border-spacing: 0px; //璁剧疆琛屼笌鍗曞厓鏍艰竟妗嗙殑闂磋窛銆� +} + +@font-face { + font-family: '鏂规瀹嬩綋'; + src: url('./Fonts/FZSSK.TTF'); +} + +// @font-face { +// font-family: 'FZLTXIHJW'; +// src: url('./Fonts/FZLTXIHJW.ttf'); +// } + +// @font-face { +// font-family: 'FZHTJW'; +// src: url('./Fonts/FZHTJW.ttf'); +// } + +// @font-face { +// font-family: 'FANGSONG'; +// src: url('./Fonts/fangSong.ttf'); +// } + +// @font-face { +// font-family: 'FANGZHENG'; +// src: url('./Fonts/fangZheng.ttf'); +// } + +// @font-face { +// font-family: 'ZHUNYUAN'; +// src: url('./Fonts/zhunyuan.ttf'); +// } + +// @font-face { +// font-family: 'ZHONGDENGXIAN'; +// src: url('./Fonts/zhongdengxian.ttf'); +// } + +// @font-face { +// font-family: 'BOYA'; +// src: url('./Fonts/boYa.ttf'); +// } + + +.dialogQuestion { + background-color: #6E85AF; + height: 80px; + width: 100%; + display: flex; + align-items: center; + justify-content: space-between; + cursor: pointer; + + span { + color: #fff; + font-size: 20px; + padding: 0 40px 0 20px; + + } +} + +// 闅愯棌椤甸潰 +.hidePage { + min-height: 0 !important; + height: 0 !important; + box-shadow: none !important; +} + + +.pdfModal { + width: 100%; + height: 90vh; + + .pdfBox-component { + width: 100%; + height: 100%; + position: relative; + + .preview { + width: 100%; + height: 100%; + + .imageBox { + height: calc(100% - 30px); + overflow-x: hidden; + overflow-y: auto; + background: #ccc; + box-sizing: border-box; + } + + .imageBox:hover { + cursor: zoom-in !important; + } + + ::v-deep .el-dialog__header { + background-color: rgba(0, 0, 0, 0.8); + + .header_title { + display: flex; + justify-content: space-between; + align-items: center; + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + + span:nth-child(2):hover { + cursor: pointer; + } + } + + ::v-deep .el-dialog__title, + ::v-deep .el-dialog__headerbtn .el-dialog__close { + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + } + } + + .bottom_tool { + height: 30px; + background-color: rgba(0, 0, 0, 0.8); + display: flex; + justify-content: flex-end; + align-items: center; + + svg { + margin-right: 15px; + fill: #d1d1d1; + } + + svg:hover { + fill: #fff; + cursor: pointer; + } + } + } + + .notBox { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: calc(100% - 30px); + min-height: 300px; + } + } +} + +.custom-dialog { + overflow: hidden !important; + + .el-dialog__body { + padding: 0; + } + + .el-dialog__header { + background-color: rgba(0, 0, 0, 0.8); + + .header_title { + display: flex; + justify-content: space-between; + align-items: center; + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + + span:nth-child(2):hover { + cursor: pointer; + } + } + + .el-dialog__title, + .el-dialog__headerbtn .el-dialog__close { + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + } + } +} + +.examination { + height: calc(100% - 50px); + overflow-x: hidden; + overflow-y: auto; + box-sizing: border-box; +} + + +.header_title { + display: flex; + justify-content: space-between; + align-items: center; + // color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + + span:nth-child(2):hover { + cursor: pointer; + } +} + + +.custom-dialog .el-dialog__header { + background-color: #6E85AF !important; +} + +/* 濯掍綋鏌ヨ鍋氬熀纭�鍝嶅簲寮忓竷灞� */ + +@media screen and (max-width: 1024px) { + + .custom-dialog { + .el-dialog { + width: 90vw !important; + } + } +} + +@media screen and (max-width: 800px) { + + + .custom-dialog { + .el-dialog { + width: 90vw !important; + } + } +} + +@media (max-width: 660px) { + .UAVTechIntro-book { + .header-right-Number { + font-size: 9px; + + img { + height: 16px; + } + } + + .header-left-Number { + font-size: 9px; + } + + .pad-r-80 { + padding-right: 10px; + } + + .pad-l-80 { + padding-left: 10px; + } + + h1 { + font-size: 1em; + } + + h2 { + font-size: 0.9em; + margin-top: 1.8em; + margin-bottom: 1.5em; + margin-left: 2.5em; + } + + .rwmb-4 { + margin-top: 1.5em; + height: 1.5em; + } + + .header-right-last { + font-size: 10px; + } + + .header-right-end { + font-size: 10px; + } + + .p-Num { + font-size: 12px; + } + + .mr-70 { + margin-right: 10px; + } + + /* 鍒嗛〉padding */ + .padding-93 { + padding: 0 20px; + } + + .padding-102 { + padding: 0 20px; + } + + + .img-float { + width: 130px; + } + + .img-rights { + width: 130px; + } + + .btn-w { + width: 42px; + } + + .unitText { + color: #5192C6; + font-size: 10px; + } + + .unit2Text { + color: #F89C1C; + font-size: 10px; + } + + .wh-no { + white-space: wrap; + } + + td { + padding: 5px 10px; + } + } +} + +@media (min-width: 660px) { + .UAVTechIntro-book { + .padding-93 { + padding: 0 93px 0px 93px; + } + + .padding-102 { + padding: 0 102px 0 102px; + } + } +} + +::-webkit-scrollbar { + width: 8px; + height: 10px; +} + +::-webkit-scrollbar-track-piece { + background-color: rgba(0, 0, 0, 0.1); + -webkit-border-radius: 6px; +} + +::-webkit-scrollbar-thumb:vertical { + height: 5px; + background-color: rgba(125, 125, 125, 0.3); + -webkit-border-radius: 6px; +} + +::-webkit-scrollbar-thumb:horizontal { + width: 5px; + background-color: rgba(125, 125, 125, 0.3); + -webkit-border-radius: 6px; +} \ No newline at end of file diff --git a/src/books/UAVTechIntro/view/components/chapter001.vue b/src/books/UAVTechIntro/view/components/chapter001.vue new file mode 100644 index 0000000..9ca8ecc --- /dev/null +++ b/src/books/UAVTechIntro/view/components/chapter001.vue @@ -0,0 +1,2048 @@ +<template> + <div class="chapter" num="2"> + <!-- 1椤� --> + <div class="page-box" page="7"> + <div v-if="showPageList.indexOf(7) > -1"> + <ul class="fl al-c jc-fe mr-70 pad-t-55 mb-45"> + <li class="headerText pNum">1</li> + <img class="headerImg mr-10" src="../../assets/images/yemei.png" alt="" /> + </ul> + <div class="bodystyle"> + <h2 id="b001">椤圭洰涓�銆�鏃犱汉鏈哄熀纭�鐭ヨ瘑</h2> + <div class="tp-3"> + <p class="tl-f td-0"> + <img class="rwmb-4" alt="" src="../../assets/images/tb.png" /> + </p> + </div> + <div class="bk"> + <p class="bj1-qjms fl al-c"> + <span class="span-box"></span><span class="span-text">鐩爣棰嗚埅</span><span + class="span-box"></span> + </p> + <p class="fz-15"> + 灏忓懆浣滀负鏃犱汉鏈轰紒涓氱殑涓�鍚嶅疄涔犲憳宸ワ紝杩戞湡琚垎閰嶅埌浜嗗唴閮ㄧ殑鏃犱汉鏈虹殑杩愯閮ㄩ棬銆傜幇鍦ㄥ皬鍛ㄧ殑鏃犱汉鏈虹郴缁熷凡鍑嗗瀹屾垚锛岄渶瑕侀鍏堣璇嗗悇绉嶇粍鎴愰儴鍒嗭紝鍐嶅涔犳棤浜烘満椋炶瀹夊叏鍙婃硶瑙勩�佺┖鍩熺煡璇嗐�佺┖涓氦閫氱鍒剁殑鐩稿叧鍐呭锛岃璇嗗ぇ姘旂幆澧冿紝鏈�鍚庡鏃犱汉鏈鸿繘琛岃瘯椋炲伐浣溿�傛垜浠厛甯︾潃灏忓懆璁よ瘑涓�涓嬫棤浜烘満鍩虹鐭ヨ瘑銆� + </p> + </div> + <div class="bk-img"> + <p class="bj1-qjms fl al-c"> + <span class="span-box"></span><span class="span-text">瀛︿範鍐呭</span><span + class="span-box"></span> + </p> + <p class="openImgBox td-0"> + <img class="img-a" src="../../assets/images/0013-04.jpg" alt="" active="true" /> + </p> + </div> + </div> + </div> + </div> + <!-- 2椤� --> + <div class="page-box" page="8"> + <div v-if="showPageList.indexOf(8) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">2</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <p class="content td-0"><img class="h-pic" src="../../assets/images/0014_02.jpg" alt="" /></p> + <p class="content td-0 mb-10 mt-20"><img class="h-pic" src="../../assets/images/0014_03.jpg" + alt="" /></p> + <div class="openImgBox"> + <img class="img-0" src="../../assets/images/0014-04.jpg" alt="" active="true" /> + </div> + <p class="td-0 mb-10 mt-20"><img class="h-pic" src="../../assets/images/0014_05.jpg" alt="" /> + </p> + <p class="content">鏃犱汉鏈虹郴缁燂紙unmanned aircraft + system锛孶AS锛夌敱澶氫釜缁撴瀯缁勬垚锛屽寘鎷┖涓郴缁熴�侀鏈虹郴缁熴�佷换鍔¤浇鑽峰拰鏃犱汉鏈轰娇鐢ㄤ繚闅滀汉鍛樸�傛湰鏂囦粙缁嶄簡鍥哄畾缈兼棤浜烘満绯荤粺銆佹棤浜虹洿鍗囨満绯荤粺鍜屽鏃嬬考鏃犱汉鏈虹郴缁熴�備笉鍚岀殑鏃犱汉鏈虹郴缁熷叿鏈変笉鍚岀殑缁撴瀯鍜岀壒鐐广�� + </p> + <p class="td-0 mb-10 mt-20"><img class="h-pic" src="../../assets/images/0014_06.jpg" alt="" /></p> + <p class="td-0"><span class="bold">鐩稿叧鐭ヨ瘑鐐癸細鏃犱汉鏈虹郴缁熸杩�</span></p> + <p class="content">骞夸箟涓婅锛屾棤浜烘満绯荤粺锛屼篃绉拌繙绋嬮┚椹惰埅绌哄櫒绯荤粺锛坮emotely piloted aircraft + sys-tem锛孯PAS锛夛紝鏄寚鐢变竴鏋舵棤浜烘満銆佺浉鍏崇殑閬ユ帶绔欍�佹墍闇�鐨勬寚浠や笌鎺у埗鏁版嵁閾捐矾浠ュ強鎵瑰噯鐨勫瀷鍙疯璁¤瀹氱殑浠讳綍鍏朵粬閮ㄤ欢缁勬垚鐨勭郴缁熴��</p> + <p class="content">甯歌鐨勬棤浜烘満绯荤粺鍙垎涓轰互涓嬪嚑绫汇��</p> + <p class="quotation">1锛庡浐瀹氱考鏃犱汉鏈虹郴缁�</p> + <p class="content">鍥哄畾缈兼棤浜烘満绯荤粺涓�鑸敱杩欏嚑閮ㄥ垎鏋勬垚锛氭満浣撶粨鏋勩�佽埅鐢电郴缁熴�佸姩鍔涚郴缁熷拰鍦伴潰鎺у埗绔欍��</p> + <p class="content"> + 鍥哄畾缈兼棤浜烘満鏄竴绉嶇敱鍔ㄥ姏瑁呯疆浜х敓鍓嶈繘鐨勬帹鍔涙垨鎷夊姏锛岀敱鏈轰綋涓婂浐瀹氱殑鏈虹考浜х敓鍗囧姏锛屽湪澶ф皵灞傚唴椋炶鐨勯噸浜庣┖姘旂殑鏃犱汉椹鹃┒鑸┖鍣ㄣ�傚畠涓�鑸寘鎷満缈笺�佹満韬�佸熬缈煎拰璧疯惤瑁呯疆绛夛紙鍥�1.1.1锛夈��</p> + <p class="content">鏈虹考鐨勪富瑕佸姛鑳芥槸浜х敓鍗囧姏锛屼互鏀寔椋炴満鍦ㄧ┖涓琛岋紝鍚屾椂涔熻捣鍒颁竴瀹氱殑绋冲畾鍜屾搷浣滅敤閫斻��</p> + </div> + </div> + </div> + <!-- 3椤� --> + <div class="page-box" page="9"> + <div v-if="showPageList.indexOf(9) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">3</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <div class="center openImgBox"> + <img class="img-b" src="../../assets/images/0015-01.jpg" alt="" active="true" /> + <p class="center img">鍥�1.1.1銆�涓�娆惧吀鍨嬬殑鍥哄畾缈兼棤浜烘満</p> + </div> + <p class="content">鏈鸿韩鐨勪富瑕佸姛鑳芥槸瑁呰浇鍚勭璁惧锛屽皢椋炴満鍏朵粬閮ㄤ欢锛堝鏈虹考鍜屽姩鍔涜缃級杩炴帴鎴愪竴涓暣浣擄紝浠ヤ繚鎸佸叾鏁翠綋姘斿姩鎬с��</p> + <p class="content"> + 灏剧考鍖呮嫭姘村钩灏剧考鍜屽瀭鐩村熬缈笺�傛按骞冲熬缈肩敱鍥哄畾鐨勬按骞冲畨瀹氶潰鍜屽彲鍔ㄧ殑鍗囬檷鑸电粍鎴愩�傚瀭鐩村熬缈煎寘鎷浐瀹氱殑鍨傜洿瀹夊畾闈㈠拰鍙姩鐨勬柟鍚戣埖銆傚熬缈肩殑浣滅敤鏄搷绾甸鏈轰刊浠板拰鍋忚浆锛屼互淇濊瘉椋炴満鑳藉钩绋抽琛屻��</p> + <p class="content">璧疯惤瑁呯疆澶у鐢卞噺闇囨敮鏌卞拰鏈鸿疆缁勬垚锛屽叾浣滅敤鏄捣椋炪�佺潃闄嗘粦璺戙�佸湴闈㈡粦琛屽拰鍋滄斁鏃舵敮鎾戦鏈恒��</p> + <p class="quotation">2锛庢棤浜虹洿鍗囨満绯荤粺</p> + <p class="content">鏃犱汉鐩村崌鏈烘槸鍏锋湁涓�鍓垨涓ゅ壇涓绘棆缈硷紝閫氳繃鏃嬬考鐨勫�炬枩銆佽浆閫熺殑璋冩暣鏉ヤ骇鐢熷悇涓繍鍔ㄦ柟鍚戠殑鍔涚殑鏃犱汉椹鹃┒鑸┖鍣ㄣ��</p> + <p class="content">鏃犱汉鐩村崌鏈虹殑涓昏缁撴瀯鏈夛細鏈鸿韩銆佸姩鍔涚郴缁熴�佹棆缈笺�佸熬缈笺�佽捣钀芥灦绛夛紙鍥�1.1.2锛夈��</p> + <div class="center openImgBox mb-10 mt-10"> + <img class="img-b" src="../../assets/images/0015-02.jpg" alt="" active="true" /> + <p class="center img">鍥�1.1.2銆�鏃犱汉鐩村崌鏈虹郴缁熺殑涓昏缁撴瀯绀烘剰鍥�</p> + </div> + <p class="content">鐩村崌鏈烘寜鏃嬬考鏁伴噺鍜屽竷灞�鏂瑰紡鐨勪笉鍚屽彲鍒嗕负鍗曟棆缈肩洿鍗囨満銆佸叡杞村紡鍙屾棆缈肩洿鍗囨満銆佺旱鍒楀紡鍙屾棆缈肩洿鍗囨満銆佹í鍒楀紡鍙屾棆缈肩洿鍗囨満鍜屽甫缈煎紡鐩村崌鏈虹瓑鍑犵绫诲瀷锛堝浘1.1.3锛夈��</p> + <p class="content">锛�1锛夋満韬細鏃犱汉鐩村崌鏈烘満韬粨鏋勬湁妗佹灦寮忕粨鏋勩�佽杽澹佸紡缁撴瀯鍜屽鍚堟潗鏂欏す灞傜粨鏋勩��</p> + <p class="content">锛�2锛夋棆缈硷細鏃犱汉鐩村崌鏈烘棆缈肩粨鏋勬湁鍏ㄩ摪鎺ュ紡銆佽贩璺锋澘寮忋�佹煍鎬ч摪寮忓拰鏃犺酱鎵垮紡鍥涚缁撴瀯銆�</p> + </div> + </div> + </div> + <!-- 4椤� --> + <div class="page-box" page="10"> + <div v-if="showPageList.indexOf(10) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">4</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <!-- 杞挱鍥� --> + <div class="imgBox-003 openImgBox"> + <div class="swiper-container swiper-img"> + <div class="swiper-wrapper"> + <div class="swiper-slide"> + <div class="imgBox" style="width: 100%; height: 100%"> + <img src="../../assets/images/0016-01-01.png" /> + </div> + </div> + <div class="swiper-slide"> + <div class="imgBox" style="width: 100%; height: 100%"> + <img src="../../assets/images/0016-01-02.png" /> + </div> + </div> + <div class="swiper-slide"> + <div class="imgBox" style="width: 100%; height: 100%"> + <img src="../../assets/images/0016-01-03.png" /> + </div> + </div> + <div class="swiper-slide"> + <div class="imgBox" style="width: 100%; height: 100%"> + <img src="../../assets/images/0016-01-04.png" /> + </div> + </div> + <div class="swiper-slide"> + <div class="imgBox" style="width: 100%; height: 100%"> + <img src="../../assets/images/0016-01-05.png" /> + </div> + </div> + </div> + <div class="swiper-button-next"></div> + <div class="swiper-button-prev"></div> + </div> + </div> + <p class="img">锛坅锛夊崟鏃嬬考鐩村崌鏈猴紱锛坆锛夊叡杞村紡鍙屾棆缈肩洿鍗囨満锛涳紙c锛夌旱鍒楀紡鍙屾棆缈肩洿鍗囨満锛涳紙d锛夋í鍒楀紡鍙屾棆缈肩洿鍗囨満锛涳紙e锛夊甫缈煎紡鐩村崌鏈�</p> + <p class="img">鍥�1.1.3銆�鐩村崌鏈虹殑绫诲瀷</p> + <p class="content">锛�3锛夊熬缈硷細鏃犱汉鐩村崌鏈哄熬缈煎寘鎷瀭鐩村畨瀹氶潰鍜屾按骞冲畨瀹氶潰锛堝浘1.1.4锛夈��</p> + <div class="center openImgBox mt-10 mb-10"> + <img class="img-d" src="../../assets/images/0016-02.jpg" alt="" active="true" /> + <p class="img">鍥�1.1.4銆�鏃犱汉鐩村崌鏈哄熬缈肩殑缁撴瀯绀烘剰鍥�</p> + </div> + <p class="quotation">3锛庡鏃嬬考鏃犱汉鏈虹郴缁�</p> + <p class="content"> + 澶氭棆缈兼棤浜烘満鏄竴绉嶇壒娈婄殑鐩村崌鏈恒�傛瘡涓棆缈肩殑铻烘棆妗ㄦ〃璺濅竴鑸笉鍙戠敓鏀瑰彉锛岃�屾槸閫氳繃鏀瑰彉鍚勪釜鏃嬬考涔嬮棿鐨勭浉瀵硅浆閫燂紝浠ユ敼鍙樺崟杞存帹杩涘姏鐨勫ぇ灏忥紝浠庤�屾敼鍙樿繍琛岃建杩圭殑涓�绉嶆棤浜洪┚椹惰埅绌哄櫒銆�</p> + <p class="content">鐩稿鍥哄畾缈兼棤浜烘満鍜屾棤浜虹洿鍗囨満鏉ヨ锛屽鏃嬬考鏃犱汉鏈虹殑鏈轰綋缁撴瀯姣旇緝绠�鍗曘�傛寜褰㈢姸鍙垎涓篨鍨嬪竷灞�銆佸崄鍨嬪竷灞�銆丠鍨嬪竷灞�绛夛紙鍥�1.1.5銆佸浘1.1.6锛夈��</p> + <p class="content">鐩墠X鍨嬪竷灞�鐨勫鏃嬬考鏃犱汉鏈烘槸鏈�甯歌鐨勩�傜浉姣斿崄鍨嬪竷灞�鐨勫鏃嬬考鏃犱汉鏈烘潵璇达紝瀹冪殑鍓嶅悗宸﹀彸鍔ㄤ綔鏃跺姞鍑忛�熺殑鐢垫満杈冨锛屾帶鍒舵瘮杈冭繀閫熴�佹湁鍔涖��</p> + </div> + </div> + </div> + <!-- 5椤� --> + <div class="page-box" page="11"> + <div v-if="showPageList.indexOf(11) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">5</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <!-- 杞挱鍥� --> + <div class="imgBox-003 openImgBox"> + <div class="swiper-container swiper-img"> + <div class="swiper-wrapper"> + <div class="swiper-slide"> + <div class="imgBox" style="width: 100%; height: 100%"> + <img src="../../assets/images/0017-01-01.png" /> + </div> + </div> + <div class="swiper-slide"> + <div class="imgBox" style="width: 100%; height: 100%"> + <img src="../../assets/images/0017-01-02.png" /> + </div> + </div> + </div> + <div class="swiper-button-next"></div> + <div class="swiper-button-prev"></div> + </div> + </div> + <p class="img">鍥�1.1.5銆�涓�娆綳鍨嬪竷灞�鐨勫洓鏃嬬考鏃犱汉鏈�</p> + <p class="content">鍗佸瀷澶氭棆缈兼槸鏈�鏃╁嚭鐜扮殑涓�绉嶆皵鍔ㄥ竷灞�锛屽彧闇�鏀瑰彉灏戦噺鐢垫満杞�熷氨鍙疄鐜般��</p> + <p class="content">H鍨嬪竷灞�鐨勫鏃嬬考鏃犱汉鏈虹殑鐗圭偣鍦ㄤ簬姣旇緝鏄撲簬璁捐鎴愭按骞虫姌鍙犵粨鏋勶紝鐪嬭捣鏉ユ瘮X鍨嬪竷灞�鐨勫鏃嬬考鏃犱汉鏈哄帤閲嶏紝鍙堟嫢鏈変笌X鍨嬪竷灞�鐨勫鏃嬬考鏃犱汉鏈虹浉褰撶殑鐗圭偣锛岀粨鏋勭畝鍗曪紝鏂逛究鎺у埗銆� + </p> + <div class="center openImgBox mt-10 mb-10"> + <img class="w80" src="../../assets/images/0017-02.jpg" alt="" active="true" /> + <p class="img">鍥�1.1.6銆�涓�娆綡鍨嬪竷灞�鐨勫洓鏃嬬考鏃犱汉鏈�</p> + </div> + <p class="td-0 mt-10 mb-10"><span class="bj2">路瑙嗛搴撀�</span></p> + <div class="bk-video fl"> + <div class="fl jc-fs fw-w"> + <div style="width: 290px; height: auto; margin: 0 5px;" + v-for="(item, index) in videoDataOne.videoMd5" :key="index"> + <video webkit-playsinline="true" x-webkit-airplay="true" playsinline="true" + x5-video-orientation="h5" x5-video-player-fullscreen="true" x5-playsinline="" + controls controlslist="nodownload" class="video-border w100" + :src="item.handleMd5"></video> + <div class="fl al-c jc-c"> + <p class="td-0" style="font-size: 12px;">{{ item.name }}</p> + <el-tooltip class="item" effect="dark" + :content="item.isCollectVideo ? '鐐瑰嚮鍙栨秷' : '鐐瑰嚮鏀惰棌'" placement="top-start"> + <img :src="collectResourceList.findIndex(citem => citem.id == item.md5) > -1 ? collectCheck : collectImg" + alt="" class="collect-btn1" @click="handleCollect(item)" /> + </el-tooltip> + </div> + </div> + </div> + </div> + <p class="content"><img class="h-pic" src="../../assets/images/0017_03.jpg" alt="" /></p> + <div v-for="(item, index) in questionData.slice(0, 3)" :key="index"> + <p class="block">{{ index + 1 }}.{{ item.txt }}</p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveInputChoice" /> + {{ citem.txt }} + </p> + </div> + </div> + </div> + </div> + <!-- 6椤� --> + <div class="page-box" page="12"> + <div v-if="showPageList.indexOf(12) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">6</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <div v-for="(item, index) in questionData.slice(3, 8)" :key="index"> + <p class="block">{{ index + 4 }}.{{ item.txt }}</p> + <p class="center" v-if="item.imgSrc"> + <img class="img-c" :src=item.imgSrc alt=""> + </p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveInputChoice" /> + {{ citem.txt }} + </p> + </div> + </div> + </div> + </div> + <!-- 7椤� --> + <div class="page-box" page="13"> + <div v-if="showPageList.indexOf(13) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">7</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <div v-for="(item, index) in questionData.slice(8, 12)" :key="index"> + <p class="block">{{ index + 9 }}.{{ item.txt }}</p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveInputChoice" /> + {{ citem.txt }} + </p> + <p class="center" v-if="item.imgSrc"> + <img class="img-e" :src=item.imgSrc alt=""> + </p> + </div> + <p class="td-0 mb-10 mt-10"><img class="h-pic" src="../../assets/images/0019_02.jpg" alt="" /></p> + <p class="content">閫氳繃鏈换鍔$殑瀛︿範锛岃鏍规嵁鑷繁鐨勫涔犳儏鍐靛~鍐欎换鍔¤瘎浠疯〃锛岃瘎鍒嗘椂瑕佺患鍚堣�冭檻灏忕粍涔嬮棿鐨勫悎浣溿�佹矡閫氳兘鍔涚瓑鑱屼笟绱犲吇锛堟寜鑷瘎鍒嗘暟40%銆佹暀甯堣瘎鍒�60%璁$畻寰楀垎锛夈��</p> + <table border="1" cellpadding="4" cellspacing="0" + style="border-color: #677fb7; border-collapse: collapse" class="fz-14 img-0"> + <tr class="img-0 table-th-bc"> + <th>搴忓彿</th> + <th>璇惧悗浠诲姟</th> + <th>鏍囧噯璇勪环</th> + <th>鑷瘎鍒嗘暟</th> + <th>鏁欏笀璇勫垎</th> + </tr> + <tr class="table-tr-bc"> + <td rowspan="3" class="center">1</td> + <td rowspan="3" class="center">鏃犱汉鏈虹郴缁熺殑鍩烘湰姒傚康(40鍒�)</td> + <td>鏃犱汉鏈虹郴缁熺殑瀹氫箟鍙婂垎绫绘竻鏅�(40鍒�)</td> + <td rowspan="3" class="center"> + <input v-model="tableData.unitOne.one" type="number" step="1" min="0" + class="table-textarea" @change="setBookTableData"> + </td> + <td rowspan="3" class="center"> + <input v-model="tableData.unitOne.two" type="number" step="1" min="0" + class="table-textarea" @change="setBookTableData"> + </td> + </tr> + <tr class="table-tr-bc"> + <td>鏃犱汉鏈虹郴缁熺殑瀹氫箟鍙婂垎绫昏緝娓呮櫚(30鍒�)</td> + </tr> + <tr class="table-tr-bc"> + <td>鏃犱汉鏈虹郴缁熺殑瀹氫箟鍙婂垎绫讳笉娓呮櫚(10鍒�)</td> + </tr> + <tr class="table-tr-bc-one"> + <td rowspan="3" class="center">2</td> + <td rowspan="3" class="center">鏃犱汉鏈虹郴缁熺殑鍒嗙被(40鍒�)</td> + <td>瀵规棤浜烘満绯荤粺鐨勫悇缁勬垚閮ㄥ垎鍙婂叾浣滅敤鏄庣‘(40鍒�)</td> + <td rowspan="3" class="center"><input v-model="tableData.unitOne.three" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + <td rowspan="3" class="center"><input v-model="tableData.unitOne.four" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + </tr> + <tr class="table-tr-bc-one"> + <td>瀵规棤浜烘満绯荤粺鐨勫悇缁勬垚閮ㄥ垎鍙婂叾浣滅敤杈冩槑纭�(30鍒�)</td> + </tr> + <tr class="table-tr-bc-one"> + <td>瀵规棤浜烘満绯荤粺鐨勫悇缁勬垚閮ㄥ垎鍙婂叾浣滅敤涓嶆槑纭�(10鍒�)</td> + </tr> + <tr class="table-tr-bc"> + <td rowspan="2" class="center">3</td> + <td rowspan="2" class="center">鍥㈤槦鍚堜綔(20鍒�)</td> + <td>浜掑府浜掑姪锛屽彲浠ユ甯告矡閫氫氦娴�(20鍒�)</td> + <td rowspan="2" class="center"><input v-model="tableData.unitOne.five" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + <td rowspan="2" class="center"><input v-model="tableData.unitOne.six" type="number" step="1" + min="0" class="table-textarea" @change="setBookTableData"></td> + </tr> + <tr class="table-tr-bc"> + <td>浜掑府浜掑姪锛屼氦娴佽緝灏戯紝甯︽湁鑴炬皵(10鍒�)</td> + </tr> + </table> + </div> + </div> + </div> + <!-- 8椤� --> + <div class="page-box" page="14"> + <div v-if="showPageList.indexOf(14) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">8</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <p class="content td-0"><img class="h-pic" src="../../assets/images/0020_01.jpg" alt="" /></p> + <p class="content td-0 mb-10 mt-20"><img class="h-pic" src="../../assets/images/0014_03.jpg" + alt="" /> + </p> + <div class="openImgBox"><img class="img-0" src="../../assets/images/0020-02.jpg" alt="" + active="true" /> + </div> + <p class="content td-0 mb-10 mt-20"><img class="h-pic" src="../../assets/images/0014_05.jpg" + alt="" /> + </p> + <p class="content"> + 鏃犱汉鏈虹郴缁熷湪杩愯鏃堕渶瑕佽�冭檻璁稿鍥犵礌锛屼笉浠呭彈鍒版棤浜烘満娉曡鐨勫埗绾︼紝杩橀渶瑕侀厤鍚堟棤浜烘満鐨勭┖鍩熺鐞嗭紝鍚屾椂鏍规嵁涓嶅悓鐨勯琛屾儏鍐甸�夋嫨涓嶅悓鐨勯琛岀┖鍩熴�傛湰鏂囧湪姝ゅ皢浠嬬粛鏃犱汉鏈虹浉鍏虫硶瑙勩�佺┖鍩熺殑鍒掑垎绛夈��</p> + <p class="td-0 mb-10 mt-20"><img class="h-pic" src="../../assets/images/0014_06.jpg" alt="" /></p> + <p class="content"><span class="bold">鐩稿叧鐭ヨ瘑鐐�1锛氭棤浜烘満娉曡</span></p> + <p class="content"> + 姘戠敤鏃犱汉鏈烘硶寰嬫硶瑙勬槸鏃犱汉鏈哄簲鐢ㄧ殑娉曞緥淇濋殰锛屽畠浣挎棤浜烘満椋炶銆佷綔涓氱瓑鏈夋硶鍙緷銆備緷鎹�婁腑鍗庝汉姘戝叡鍜屽浗姘戠敤鑸┖娉曘�嬨�婁腑鍗庝汉姘戝叡鍜屽浗椋炶鍩烘湰瑙勫垯銆嬨�婁腑鍥芥皯鐢ㄨ埅绌虹┖涓氦閫氱鍒跺伐浣滆鍒欍�嬨�婇�氱敤鑸┖椋炶绠″埗鏉′緥銆嬬瓑鍒跺畾浜嗘棤浜烘満鐩稿叧娉曡锛屽鐢卞浗鍔¢櫌涓嬭涓浗姘戠敤鑸┖灞�鐨勭浉鍏抽儴闂ㄦ牴鎹皯鐢ㄦ棤浜烘満鐨勫彂灞曠姸鍐碉紝鍒跺畾鐨勭浉鍏宠瀹氫笌鍔炴硶锛涗腑鍥芥皯鐢ㄨ埅绌哄眬濮旀墭鈥滀腑鍥借埅绌哄櫒鎷ユ湁鑰呭強椹鹃┒鍛樺崗浼氾紙Aircraft + Owners and Pilots Asso-ciation of + China锛孉OPA-China锛夆�濆埗瀹氱殑鐩稿叧瑙勫垯锛堝銆婃皯鐢ㄦ棤浜烘満椹鹃┒鍛樼鐞嗚瀹氥�嬶級锛屽叡鍚屾瀯绛戜簡鐢熶骇鍒堕�犮�侀�傝埅瀹″畾銆佽繍琛岀鐞嗐�佷汉鍛樿缁冦�佷汉鍛樼鐞嗐�佽瘉鐓х鐞嗙瓑鏃犱汉鏈虹殑娉曞埗鍩虹銆�</p> + <p class="content"> + 涓浗鑸┖鍣ㄦ嫢鏈夎�呭強椹鹃┒鍛樺崗浼氾紝鎴愮珛浜�2004骞达紝缁忓浗鍔¢櫌鎵瑰噯锛屽湪姘戞斂閮ㄧ櫥璁版敞鍐岋紝鏄浗鍐呮皯鐢ㄨ埅绌洪鍩熺涓�涓叏鍥芥�ц涓氬崗浼氥�傚畠鏄腑鍥斤紙鍚娓�佹境闂ㄣ�佸彴婀惧湴鍖猴級鍦ㄥ浗闄呰埅绌哄櫒鎷ユ湁鑰呭強椹鹃┒鍛樺崗浼氾紙The + International Council of Aircraft Owner and Pilot Association锛孖AOPA锛夌殑鍞竴鍚堟硶浠h〃銆�</p> + <p class="content">鏃犱汉鏈烘硶瑙勭敤鏉ヨ鑼冩皯鐢ㄦ棤浜烘満閫傝埅鎬ц璁°�佺敓浜с�佽繍琛屼互鍙婁粠涓氫汉鍛樼殑璁粌銆佺鐞嗙瓑銆�</p> + </div> + </div> + </div> + <!-- 9椤� --> + <div class="page-box" page="15"> + <div v-if="showPageList.indexOf(15) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">9</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <p class="content">姹借溅鐨勮椹讹紝瑕侀伒瀹堣鍒欙紝鍚勮鍏堕亾锛屽惉浠庢寚鎸ワ紝鍚﹀垯杞昏�呴�犳垚浜ら�氭嫢鍫碉紝閲嶈�呭紩鍙戜氦閫氫簨鏁呯敋鑷宠溅姣佷汉浜°�傚彲瑙侀伒瀹堣鍒欑殑閲嶈鎬с�傛棤浜烘満鐨勯琛屼篃涓�鏍凤紝瑕侀伒瀹堟棤浜烘満鐩稿叧娉曡銆� + </p> + <p class="content"> + 鏃犱汉鏈虹殑鏃犲簭椋炶鏇剧粡澶氭閫犳垚寤惰鑸彮銆佸共鎵伴�氫俊銆佹崯鍧忚储鐗┿�佽浼や汉鍛樼瓑浜嬫晠锛岄�犳垚浜嗕笉鍙及閲忕殑鎹熷け銆傚綋鍓嶆垜鍥芥斂搴滀负淇濊瘉鏃犱汉鏈虹殑椋炶瀹夊叏锛屾湁搴忎綔涓氾紝鍒跺畾浜嗗椤圭浉鍏宠瀹氥�佸姙娉曪紝瀵规棤浜烘満鐨勯琛岃繘琛屾湁搴忕鐞嗐�傝繖浜涜瀹氥�佸姙娉曞寘鎷负浠�涔堣杩涜椋炶绠″埗銆佷緷鎹粈涔堣繘琛岀鍒躲�佸浣曡繘琛岀鍒剁瓑鏂归潰鐨勫唴瀹癸紝瑙勫畾浜嗕粈涔堟牱鐨勬棤浜烘満鍦ㄤ粈涔堟儏鍐典笅椋炶蹇呴』杩涜绌哄煙鐢宠銆佸湪浠�涔堟儏鍐典笅蹇呴』寰楀埌鐩稿叧鑸┖绠″埗閮ㄩ棬鎵瑰噯鍚庢墠鑳介琛岀瓑銆� + </p> + <p class="content">姘戠敤鏃犱汉鏈烘硶瑙勫叿鏈夌嫭绔嬫�с�佺患鍚堟�с�佸钩鏃舵�с�佸浗闄呮�х瓑鐗规�с��</p> + <p class="quotation">1锛庣嫭绔嬫��</p> + <p class="content">鏃犱汉鏈烘硶瑙勭殑鐙珛鎬ф槸鎸囨棤浜烘満鐨勬硶瑙勮嚜鎴愪竴绫伙紝褰㈡垚涓�涓嫭绔嬬殑娉曞緥浣撶郴銆�</p> + <p class="content"> + 鏃犱汉鏈虹浉鍏虫硶瑙勪粎閫傜敤浜庢皯鐢ㄦ棤浜烘満鐨勭敓浜с�侀�傝埅銆佽繍琛屽強浜哄憳绠$悊绛夛紝涓嶉�傜敤浜庢湁浜鸿埅绌哄櫒鍙婂浗瀹惰埅绌哄櫒銆傚綋鐒讹紝鐙珛鎬ф槸鍦ㄧ户鎵垮熀纭�涓婄殑鐙珛锛屾槸鍦ㄨ仈绯诲熀纭�涓婄殑鐙珛銆傛病鏈夎仈绯讳笌缁ф壙鐨勭嫭绔嬫槸涓嶅瓨鍦ㄧ殑銆�</p> + <p class="content"> + 姘戠敤鏃犱汉鏈虹殑鐩稿叧娉曞緥銆佽绔犳潵婧愪簬姘戠敤鑸┖娉曞強鍏剁浉鍏崇殑瑙勭珷鍒跺害锛屽叿鏈変竴瀹氱殑缁ф壙鎬у拰浠庡睘鎬с�備緥濡傦紝銆婁綆绌虹┖鍩熺鐞嗕娇鐢ㄨ瀹氥�嬪弬鑰冦�婁腑鍗庝汉姘戝叡鍜屽浗姘戠敤鑸┖娉曘�嬨�婁腑鍗庝汉姘戝叡鍜屽浗椋炶鍩烘湰瑙勫垯銆嬨�婇�氱敤鑸┖椋炶绠″埗鏉′緥銆嬩互鍙婂啗鏂圭殑鐩稿叧绠$悊瑙勫畾鍒跺畾銆傚悓鏃讹紝姘戠敤鏃犱汉鏈虹殑绌哄煙绠$悊鍙堟湁鍏剁嫭鏈夊睘鎬э紝鍏剁鐞嗙殑绌哄煙鏄寚椋炶楂樺害鍦�1000 + m浠ヤ笅鐨勫尯鍩燂紝骞朵笖鏍规嵁鎯呭喌涓嶅悓鎸夌収绠″埗绌哄煙銆佹姤鍛婄┖鍩熴�佺洃瑙嗙┖鍩熴�佺洰瑙嗛琛岃埅绾跨瓑杩涜浜嗗垎绫伙紝鎵�浠ユ棤浜烘満娉曞緥娉曡鍏锋湁鐙珛鎬с��</p> + <p class="quotation">2锛庣患鍚堟��</p> + <p class="content">缁煎悎鎬ф槸鎸囧皢涓嶅悓閮ㄥ垎銆佷笉鍚屼簨鐗╃殑灞炴�у悎骞舵垚涓轰竴涓暣浣撶殑鐗规�с��</p> + <p class="content">鏃犱汉鏈烘硶瑙勬槸璋冩暣鏃犱汉鏈虹敓浜с�佽繍钀ュ強鍏剁浉鍏抽鍩熶腑浜х敓鐨勭ぞ浼氬叧绯荤殑鍚勭娉曞緥鎵嬫銆傝繖浜涙墜娈电旱妯氦閿欙紝娉曞緥璋冩暣鏂规硶澶氱澶氭牱銆�</p> + <p class="content"> + 鏃犱汉鏈烘硶瑙勭殑缁煎悎鎬т富瑕佷綋鐜板湪娑夊強鐨勬硶寰嬫棦鏈夋皯鐢ㄨ埅绌虹殑鐩稿叧娉曞緥娉曡锛屽張鏈夊娉曘�佹皵璞℃硶銆佸浗瀹跺畨鍏ㄦ硶銆佹皯娉曘�佸垜娉曘�佹不瀹夋潯渚嬬瓑鏂归潰鐨勫唴瀹癸紝杩樻秹鍙婄ぞ浼氬叧绯荤殑鏂规柟闈㈤潰涓婏紝鍥犳鏃犱汉鏈烘硶寰嬫硶瑙勫叿鏈夊皢鐩稿叧娉曡杩涜铻嶅悎鐨勭患鍚堟�с�� + </p> + <p class="quotation">3锛庡钩鏃舵��</p> + <p class="content"> + 骞虫椂鎬ф槸鎸囨棤浜烘満鐩稿叧娉曡浠呯敤浜庤皟鏁村拰骞虫椂鏈熸皯鐢ㄦ棤浜烘満鑸┖娲诲姩鍙婂叾鐩稿叧棰嗗煙浜х敓鐨勭ぞ浼氬叧绯汇�傚鏋滈亣鎴樹簤鎴栧浗瀹跺浜庣揣鎬ョ姸鎬侊紝姘戠敤鏃犱汉鑸┖鍒欒鍙楀埌鎴樻椂娉曚护鎴栫揣鎬ョ姸鎬佷笅鐨勯潪甯告硶鐨勭害鏉熴��</p> + + </div> + </div> + </div> + <!-- 10椤� --> + <div class="page-box" page="16"> + <div v-if="showPageList.indexOf(16) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">10</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <p class="quotation">4锛庡浗闄呮��</p> + <p class="content"> + 鍥介檯鎬т綋鐜板湪娉曞緥娉曡鏉ユ簮鐨勫浗闄呮�т笂銆傜敱浜庢皯鐢ㄦ棤浜烘満鍦ㄥ叏鐞冭寖鍥村唴鍙戝睍杩呴�燂紝鍥介檯姘戣埅缁勭粐宸茬粡寮�濮嬩负鏃犱汉鏈虹郴缁熷埗瀹氭爣鍑嗗拰寤鸿鎺柦銆佺┖涓埅琛屾湇鍔$▼搴忓強鎸囧鏉愭枡锛屽苟涓斿涓浗瀹跺彂甯冧簡绠$悊瑙勫畾銆傛垜鍥芥棤浜烘満娉曞緥娉曡鐨勫埗瀹氭棦鍙傜収浜嗗叾浠栧浗瀹舵垨鍥介檯缁勭粐鐨勭浉鍏虫潯鏂囷紝濡傜編鍥借仈閭﹁埅绌虹鐞嗗眬锛團ederal + Aviation Administration锛孎AA锛夐甯冪殑107閮ㄨ绔犵瓑锛屼篃缁撳悎浜嗙浉鍏崇殑鍒や緥绛夈�傚洜姝わ紝鏃犱汉鏈烘硶寰嬫硶瑙勫叿鏈変竴瀹氱殑鍥介檯鎬с��</p> + <p class="content"><span class="bold">鐩稿叧鐭ヨ瘑鐐�2锛氱┖鍩熺煡璇�</span></p> + <p class="content"> + 鏃犱汉鏈虹殑绌哄煙绠$悊涓昏浠庢棤浜烘満绌哄煙鍒掕鐨勫師鍒欍�佸垝璁剧殑渚濇嵁銆佸垝璁剧殑鍐呭锛岀┖涓氦閫氱鍒剁殑渚濇嵁銆佸唴瀹瑰拰鐩稿簲鏉℃绛夋柟闈紝鎶婃棤浜烘満椋炶绌哄煙鐨勪娇鐢ㄤ笌绠$悊绾冲叆娉曟不鍖栥�佹瑙勫寲銆佺粺涓�鍖栫殑绠$悊涔嬩腑锛屽嵆鐢辫埅绌虹鍒堕儴闂ㄨ繘琛岀粺涓�鐨勭鐞嗐�傚彧鏈夎繖鏍锋墠鑳戒繚璇佺┖涓氦閫氬畨鍏紝淇濊瘉鍚勭鑸┖鍣ㄦ湁搴忋�佸畨鍏ㄨ繍琛屻�� + </p> + <p class="content">鏃犱汉鏈虹殑绌哄煙鏄寚鏃犱汉鏈洪琛岀殑绌洪棿銆傜洰鍓嶆棤浜烘満鐨勯琛岄珮搴︿负0锝�1000 + m銆傛按骞崇┖闂存牴鎹渶瑕佸垝鍒嗕负绠″埗绌哄煙銆佹姤鍛婄┖鍩熴�佺洃瑙嗙┖鍩熴�佺洰瑙嗛琛岃埅绾裤�佽瀺鍚堢┖鍩熷拰闅旂绌哄煙鍏被銆�</p> + <p class="quotation">1锛庣鍒剁┖鍩�</p> + <p class="content">绠″埗绌哄煙鏄寚閲嶇偣鐩爣澶栧洿5 km鍖哄煙銆佷互姘戣埅鏈哄満璺戦亾涓績鐐逛负涓績鐨勮窇閬撲袱澶村悇25 km鍖哄煙鍜岃窇閬撲袱渚у悇10 + km鐨勫尯鍩熴�傚湪璇ュ尯鍩熷唴锛屾棤浜烘満闇�鑾峰緱鎵瑰噯骞舵寔鏈夋墽鐓ф柟鍙琛屻��</p> + <p class="quotation">2锛庢姤鍛婄┖鍩�</p> + <p class="content">鎶ュ憡绌哄煙鏄寚閫氱敤鏈哄満鍜屼复鏃惰捣闄嶇偣10 km鍖哄煙锛屼笖涓嶅緱鍒掕鍦ㄧ┖涓鍖鸿竟缂樺20 km鑼冨洿鍐呭拰鍏ㄥ浗閲嶇偣鐩爣澶栫紭10 + km鑼冨洿鍐呫�傚湪璇ュ尯鍩熷唴锛屾棤浜烘満椋炶蹇呴』鎶ュ椋炶璁″垝锛岄┚椹跺憳椤绘寔鐓ч琛屻��</p> + <p class="quotation">3锛庣洃瑙嗙┖鍩�</p> + <p class="content">鐩戣绌哄煙鏄寚浣嶄簬绠″埗绌哄煙鍜屾姤鍛婄┖鍩熶箣澶栫殑绌哄煙銆�</p> + <p class="quotation">4锛庣洰瑙嗛琛岃埅绾�</p> + <p class="content">鐩椋炶鑸嚎鏄寚鑸┖鍣ㄥ浜庨┚椹跺憳鐩瑙嗚窛鍗婂緞500 m锛岀浉瀵归珮搴︿綆浜�120 m鐨勮寖鍥淬��</p> + <p class="quotation">5锛庤瀺鍚堢┖鍩�</p> + <p class="content">铻嶅悎绌哄煙鏄寚鏈夊叾浠栬埅绌哄櫒鍚屾椂杩愯鐨勭┖鍩熴��</p> + </div> + </div> + </div> + <!-- 11椤� --> + <div class="page-box" page="17"> + <div v-if="showPageList.indexOf(17) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">11</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <p class="quotation">6锛庨殧绂荤┖鍩�</p> + <p class="content">闅旂绌哄煙鏄寚涓撻棬鍒嗛厤缁欐棤浜烘満杩愯鐨勭┖鍩燂紝閫氳繃闄愬埗鍏朵粬鑸┖鍣ㄧ殑杩涘叆浠ヨ閬跨鎾為闄┿��</p> + <p class="content"><span class="bold">鐩稿叧鐭ヨ瘑鐐�3锛氱┖涓氦閫氱鍒�</span></p> + <p class="content">绌轰腑浜ら�氱鍒舵槸鎸囪埅绌虹鍒堕儴闂ㄥ埄鐢ㄦ妧鏈墜娈靛鏃犱汉鏈虹殑椋炶璁″垝銆侀琛屽尯鍩熴�侀琛岄珮搴︾瓑杩愯鎯呭喌杩涜绠$悊鍜屾帶鍒躲��</p> + <p class="quotation">1锛庣┖涓氦閫氱鍒剁殑鐩殑</p> + <p class="content">绌轰腑浜ら�氱鍒剁殑鐩殑鍦ㄤ簬闃叉鏃犱汉鏈轰笌绌轰腑椋炴満銆佸湴闈㈤殰纰嶇墿鐩告挒锛屽苟鏈夋晥鍦板埄鐢ㄧ┖鍩燂紝瀹夊叏鍦板姞閫熺┖涓氦閫氳繍杈撱�傚叾鍐呭鍖呮嫭绌轰腑浜ら�氱鍒朵笟鍔°�侀琛屾儏鎶ュ拰鍛婅涓氬姟銆�</p> + <p class="quotation">2锛庣┖涓氦閫氱鍒剁殑浠诲姟</p> + <p class="content">绌轰腑浜ら�氱鍒剁殑浠诲姟鏄淮鎶ょ┖涓З搴忥紝纭繚椋炶瀹夊叏锛岄槻姝㈣埅绌哄櫒鐩告挒锛岄槻姝㈡満鍦哄強鍏堕檮杩戠┖鍩熷唴鐨勮埅绌哄櫒涓庨殰纰嶇墿鐩告挒锛屼粠鑰屼繚闅滅┖涓氦閫氱晠閫氾紝淇濊瘉椋炶瀹夊叏锛屾彁楂橀琛屾晥鐜囥�� + </p> + <p class="quotation">3锛庣┖涓氦閫氱鍒舵湇鍔′富浣�</p> + <p class="content">绌轰腑浜ら�氱鍒舵湇鍔′富浣撴槸鎸囧叿澶囩┖涓氦閫氱鍒舵湇鍔¤祫鏍煎苟鎻愪緵绌轰腑浜ら�氱鍒舵湇鍔$殑鍗曚綅鍜屼汉鍛樸��</p> + <p class="quotation">4锛庣┖涓氦閫氱鍒舵湇鍔″崟浣�</p> + <p class="content">绌轰腑浜ら�氱鍒舵湇鍔″崟浣嶅寘鎷満鍦哄鍙板強绌轰腑浜ら�氱鍒跺銆佺┖涓氦閫氭湇鍔℃姤鍛婂銆佽繘杩戠鍒跺銆佸尯鍩熺鍒跺銆佹皯鑸湴鍖虹鐞嗗眬璋冨害瀹ゃ�佷腑鍥芥皯鐢ㄨ埅绌哄眬绌轰腑浜ら�氱鐞嗗眬鎬昏皟搴﹀銆�</p> + <p class="quotation">5锛庣┖涓氦閫氱鍒舵湇鍔′汉鍛�</p> + <p class="content">绌轰腑浜ら�氱鍒舵湇鍔′汉鍛樺寘鎷┖涓氦閫氱鍒跺憳銆佺┖涓埅琛岃皟搴﹀憳銆侀琛岀娲惧憳銆佽埅琛屾儏鎶ュ憳銆�</p> + <p class="content"> + 绌轰腑浜ら�氱鍒堕�氬父閲囩敤绋嬪簭绠″埗涓庨浄杈剧鍒朵袱绉嶆柟娉曘�傛棤璁烘槸绋嬪簭绠″埗杩樻槸闆疯揪绠″埗锛岄兘鏄负浜嗗姞寮哄鏃犱汉鏈鸿繍琛岀殑绠℃帶锛岀淮鎶ょ┖涓З搴忥紝纭繚椋炶瀹夊叏銆傛棤浜烘満鐨勭┖涓氦閫氱鍒跺繀椤绘敞閲嶆棤浜烘満椋炶鐨勫姩鎬佹帶鍒躲�� + </p> + <p class="content">鏃犱汉鏈洪琛屽崟浣嶃�佷釜浜哄簲褰撲笌绌虹閮ㄩ棬寤虹珛鏈夋晥鐨勬矡閫氬崗璋冩満鍒跺拰椤虹晠鐨勫崗鍚岄�氭姤锛屽鏃犱汉鏈哄強鍏堕琛屾椿鍔ㄥ疄鏂借仈鍚堢鐞嗭紝淇冭繘鎴戝浗绌虹鏀归潻鐨勬繁鍏ユ帹杩涘拰鏃犱汉鏈哄簲鐢ㄧ殑鍋ュ悍鍙戝睍銆� + </p> + <p class="content">鏃犱汉鏈虹┖涓氦閫氳繍琛岀鍒剁殑鍐呭涓昏鍖呮嫭杩愯鍔ㄦ�佹帉鎻°�佹棤浜烘満瀹夊叏闂撮殧鏈嶅姟銆佹棤浜烘満杩愯搴旀�ュ鐞嗐�佹棤浜烘満杩濊杩愯鏌ュ銆佹棤浜烘満绌轰腑绠″埗淇濋殰涓庡崗璋冪瓑銆�</p> + </div> + </div> + </div> + <!-- 12椤� --> + <div class="page-box" page="18"> + <div v-if="showPageList.indexOf(18) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">12</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <p class="td-0 mt-10 mb-10"><span class="bj2">路瑙嗛搴撀�</span></p> + <div class="bk-video fl"> + <div class="fl jc-fs fw-w"> + <div style="width: 290px; height: auto; margin: 0 5px;" + v-for="(item, index) in videoDataTwo.videoMd5" :key="index"> + <video webkit-playsinline="true" x-webkit-airplay="true" playsinline="true" + x5-video-orientation="h5" x5-video-player-fullscreen="true" x5-playsinline="" + controls controlslist="nodownload" class="video-border w100" + :src="item.handleMd5"></video> + <div class="fl al-c jc-c"> + <p class="td-0" style="font-size: 12px;">{{ item.name }}</p> + <el-tooltip class="item" effect="dark" + :content="item.isCollectVideo ? '鐐瑰嚮鍙栨秷' : '鐐瑰嚮鏀惰棌'" placement="top-start"> + <img :src="collectResourceList.findIndex(citem => citem.id == item.md5) > -1 ? collectCheck : collectImg" + alt="" class="collect-btn1" @click="handleCollect(item)" /> + </el-tooltip> + </div> + </div> + </div> + </div> + <p class="td-0 mb-10 mt-10"><img class="h-pic" src="../../assets/images/0017_03.jpg" alt="" /></p> + <div v-for="(item, index) in questionDataTwo.slice(0, 8)" :key="index"> + <p class="block">{{ index + 1 }}.{{ item.txt }}</p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveQuestionDataTwo" /> + {{ citem.txt }} + </p> + </div> + </div> + </div> + </div> + <!-- 13椤� --> + <div class="page-box" page="19"> + <div v-if="showPageList.indexOf(19) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">13</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <div v-for="(item, index) in questionDataTwo.slice(8, 19)" :key="index"> + <p class="block">{{ index + 9 }}.{{ item.txt }}</p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveQuestionDataTwo" /> + {{ citem.txt }} + </p> + </div> + </div> + </div> + </div> + <!-- 14椤� --> + <div class="page-box" page="20"> + <div v-if="showPageList.indexOf(20) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">14</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <div v-for="(item, index) in questionDataTwo.slice(19, 20)" :key="index"> + <p class="block">{{ index + 20 }}.{{ item.txt }}</p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveQuestionDataTwo" /> + {{ citem.txt }} + </p> + </div> + <p class="td-0 mb-10 mt-10"><img class="h-pic" src="../../assets/images/0019_02.jpg" alt="" /></p> + <p class="content">閫氳繃鏈换鍔$殑瀛︿範锛岃鏍规嵁鑷繁鐨勫涔犳儏鍐靛~鍐欎换鍔¤瘎浠疯〃锛岃瘎鍒嗘椂瑕佺患鍚堣�冭檻灏忕粍涔嬮棿鐨勫悎浣溿�佹矡閫氳兘鍔涚瓑鑱屼笟绱犲吇锛堟寜鑷瘎鍒嗘暟40%銆佹暀甯堣瘎鍒�60%璁$畻寰楀垎锛夈��</p> + <table border="1" cellpadding="4" cellspacing="0" + style="border-color: #677fb7; border-collapse: collapse" class="fz-14 img-0"> + <tr class="img-0 table-th-bc"> + <th>搴忓彿</th> + <th>璇惧悗浠诲姟</th> + <th>鏍囧噯璇勪环</th> + <th>鑷瘎鍒嗘暟</th> + <th>鏁欏笀璇勫垎</th> + </tr> + <tr class="table-tr-bc"> + <td rowspan="3" class="center">1</td> + <td rowspan="3" class="center">鏃犱汉鏈烘硶瑙勭殑涓昏鍐呭(30鍒�)</td> + <td>瀵规棤浜烘満鐩稿叧娉曡鏄庣‘(30 鍒�)</td> + <td rowspan="3" class="center"> + <input v-model="tableData.unitTwo.one" type="number" step="1" min="0" + class="table-textarea" @change="setBookTableData"> + </td> + <td rowspan="3" class="center"> + <input v-model="tableData.unitTwo.two" type="number" step="1" min="0" + class="table-textarea" @change="setBookTableData"> + </td> + </tr> + <tr class="table-tr-bc"> + <td>鏃犱汉鏈虹郴缁熺殑瀹氫箟鍙婂垎绫昏緝娓呮櫚(30鍒�)</td> + </tr> + <tr class="table-tr-bc"> + <td>鏃犱汉鏈虹郴缁熺殑瀹氫箟鍙婂垎绫讳笉娓呮櫚(10鍒�)</td> + </tr> + <tr class="table-tr-bc-one"> + <td rowspan="3" class="center">2</td> + <td rowspan="3" class="center">鏃犱汉鏈虹郴缁熺殑鍒嗙被(40鍒�)</td> + <td>瀵规棤浜烘満绯荤粺鐨勫悇缁勬垚閮ㄥ垎鍙婂叾浣滅敤鏄庣‘(40鍒�)</td> + <td rowspan="3" class="center"><input v-model="tableData.unitTwo.three" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + <td rowspan="3" class="center"><input v-model="tableData.unitTwo.four" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + </tr> + <tr class="table-tr-bc-one"> + <td>瀵规棤浜烘満绯荤粺鐨勫悇缁勬垚閮ㄥ垎鍙婂叾浣滅敤杈冩槑纭�(30鍒�)</td> + </tr> + <tr class="table-tr-bc-one"> + <td>瀵规棤浜烘満绯荤粺鐨勫悇缁勬垚閮ㄥ垎鍙婂叾浣滅敤涓嶆槑纭�(10鍒�)</td> + </tr> + <tr class="table-tr-bc"> + <td rowspan="2" class="center">3</td> + <td rowspan="2" class="center">鍥㈤槦鍚堜綔(20鍒�)</td> + <td>浜掑府浜掑姪锛屽彲浠ユ甯告矡閫氫氦娴�(20鍒�)</td> + <td rowspan="2" class="center"><input v-model="tableData.unitTwo.five" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + <td rowspan="2" class="center"><input v-model="tableData.unitTwo.six" type="number" step="1" + min="0" class="table-textarea" @change="setBookTableData"></td> + </tr> + <tr class="table-tr-bc"> + <td>浜掑府浜掑姪锛屼氦娴佽緝灏戯紝甯︽湁鑴炬皵(10鍒�)</td> + </tr> + </table> + <p><br></p> + <p class="content td-0 mt-30 mb-20"><img class="h-pic" src="../../assets/images/0026_02.jpg" + alt="" /></p> + <p class="content td-0 mt-10 mb-20"><img class="h-pic" src="../../assets/images/0014_03.jpg" + alt="" /></p> + <div class="bodyPic"><img class="img-0" src="../../assets/images/0026-03.jpg" alt="" + active="true" /> + </div> + </div> + </div> + </div> + <!-- 15椤� --> + <div class="page-box" page="21"> + <div v-if="showPageList.indexOf(21) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">15</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <p class="content td-0 mt-10 mb-10"><img class="h-pic" src="../../assets/images/0014_05.jpg" + alt="" /></p> + <p class="content">椋炶鍣ㄥ湪椋炶鏃朵笉浠呰鍙楀埌绌哄煙鐜鐨勫奖鍝嶏紝杩樺彈鍒板ぇ姘旂幆澧冪殑褰卞搷銆傚ぇ姘斿寘鎷皵娓┿�佹皵鍘嬨�佺┖姘旀箍搴︾瓑姘旇薄瑕佺礌銆備簡瑙i琛屽櫒鎵�杩愯鐨勫ぇ姘旂幆澧冩墠鑳藉疄鐜板畨鍏ㄩ珮鏁堢殑椋炶銆�</p> + <p class="content td-0 mt-10 mb-10"><img class="h-pic" src="../../assets/images/0014_06.jpg" + alt="" /></p> + <p class="content">澶ф皵椋炶鐜涓昏鎸囬琛屽櫒鍦ㄥぇ姘斿眰鍐呴琛屾椂鎵�澶勭殑鐜鏉′欢銆傚寘鍥村湴鐞冪殑绌烘皵灞傦紙鍗冲ぇ姘旓級鏄埅绌哄櫒鐨勫敮涓�椋炶娲诲姩鐜锛屼篃鏄寮瑰拰鑸ぉ鍣ㄧ殑閲嶈椋炶鐜銆�</p> + <p class="content"><span class="bold">鐩稿叧鐭ヨ瘑鐐�1锛氬ぇ姘旂殑鍩烘湰瑕佺礌</span></p> + <p class="content"> + 琛ㄧず澶ф皵鐘舵�佺殑鐗╃悊閲忓拰鐗╃悊鐜拌薄閫氱О涓烘皵璞¤绱犮�傛皵娓┿�佹皵鍘嬨�佺┖姘旀箍搴︾瓑鐗╃悊閲忔槸姘旇薄瑕佺礌锛岄銆佷簯銆侀檷姘寸瓑鐜拌薄涔熸槸姘旇薄瑕佺礌锛屽畠浠兘鑳藉湪涓�瀹氱▼搴︿笂鍙嶆槧褰撴椂鐨勫ぇ姘旂姸鍐点�傚叾涓紝姘旀俯銆佹皵鍘嬪拰绌烘皵婀垮害琚О涓轰笁澶ф皵璞¤绱犮�� + </p> + <p class="quotation">1锛庢皵娓�</p> + <p class="content"> + 姘旀俯鏄〃绀虹┖姘斿喎鐑▼搴︾殑鐗╃悊閲忥紝瀹冨疄璐ㄤ笂鏄┖姘斿垎瀛愮殑骞冲潎鍔ㄨ兘澶у皬鐨勫畯瑙傝〃鐜般�備竴鑸儏鍐典笅锛屽彲灏嗙┖姘旇涓虹悊鎯虫皵浣擄紝杩欐牱绌烘皵鍒嗗瓙鐨勫钩鍧囧姩鑳藉氨鏄┖姘斿唴鑳斤紝鍥犳姘旀俯鐨勫崌楂樻垨闄嶄綆锛屼篃灏辨槸绌烘皵鍐呰兘鐨勫鍔犳垨鍑忓皯銆傚湪瀹為檯澶ф皵涓紝姘旀俯鍙樺寲鐨勫熀鏈柟寮忔湁闈炵粷鐑彉鍖栧拰缁濈儹鍙樺寲涓ょ銆傚鏌愪竴鍦扮偣鐨勬皵娓╋紙鍙堢О灞�鍦版皵娓╋級鏉ヨ锛屽叾鍙樺寲闄や簡涓庤鍦扮偣鐨勬皵鍧楁俯搴︾殑缁濈儹鍙樺寲鍜岄潪缁濈儹鍙樺寲鏈夊叧澶栵紝杩樹笌涓嶅悓姘斿潡娓╁害鐨勭Щ鍔ㄦ湁鍏炽�� + </p> + <p class="quotation">2锛庢皵鍘�</p> + <p class="content"> + 姘斿帇鍗冲ぇ姘斿帇鍔涳紝鏄寚涓庡ぇ姘旂浉鎺ヨЕ鐨勯潰涓婏紝绌烘皵鍒嗗瓙浣滅敤鍦ㄥ崟浣嶉潰绉笂鐨勫姏銆傝繖涓姏鏄敱绌烘皵鍒嗗瓙瀵规帴瑙﹂潰鐨勭鎾炲紩璧风殑锛屼篃鏄┖姘斿垎瀛愯繍鍔ㄦ墍浜х敓鐨勫帇鍔涖�傛皵鍘嬬殑鍗曚綅鏄笗锛圥a锛夈�傚湪姘旇薄瀛︿腑锛屼汉浠竴鑸敤鐧惧笗锛坔Pa锛夛紝鍏舵崲绠楀叧绯绘湁1 + hPa=100 N/m<span class="super">2</span>銆�</p> + <p class="content"> + 姘斿帇闅忛珮搴︾殑鍙樺寲鑰屽彉鍖栥�傚綋澶ф皵澶勪簬闈欐鐘舵�佹椂锛屾煇涓�楂樺害涓婄殑姘斿帇鍊肩瓑浜庡叾鍗曚綅姘村钩闈㈢Н涓婃墍鎵垮彈鐨勪笂閮ㄥぇ姘旀煴鐨勯噸鍔涖�傞殢鐫�楂樺害澧炲姞锛屽叾涓婇儴澶ф皵鏌辫秺鏉ヨ秺鐭紝姘旀煴涓┖姘斿瘑搴﹁秺鏉ヨ秺灏忥紝姘旀煴閲嶅姏涔熷氨瓒婃潵瓒婂皬銆� + </p> + <p class="content">鑸┖棰嗗煙甯哥敤鐨勬皵鍘嬪寘鎷互涓嬪嚑绫汇��</p> + <p class="content">鏈珯姘斿帇锛氭寚姘旇薄鍙版皵鍘嬭〃鐩存帴娴嬪緱鐨勬皵鍘嬨�傜敱浜庡悇娴嬬珯鎵�澶勭殑鍦扮悊浣嶇疆鍙婃捣鎷斾笉鍚岋紝鏈珯姘斿帇甯告湁杈冨ぇ宸紓銆�</p> + <p class="content">淇娴峰钩闈㈡皵鍘嬶細鎸囩敱鏈珯姘斿帇鎺ㄧ畻鍒板悓涓�鍦扮偣娴峰钩闈㈤珮搴︿笂鐨勬皵鍘嬪�笺�傝繍鐢ㄤ慨姝f捣骞抽潰姘斿帇渚夸簬鍒嗘瀽鍜岀爺绌舵皵鍘嬬殑姘村钩鍒嗗竷鎯呭喌銆傛捣鎷旈珮浜�1500 + m鐨勬祴绔欎笉鎺ㄧ畻淇娴峰钩闈㈡皵鍘嬶紝鍥犱负鎺ㄧ畻鍑虹殑淇娴峰钩闈㈡皵鍘嬬殑璇樊鍙兘杩囧ぇ锛屽け鍘绘剰涔夈��</p> + </div> + </div> + </div> + <!-- 16椤� --> + <div class="page-box" page="22"> + <div v-if="showPageList.indexOf(22) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">16</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <p class="content"> + 鍦洪潰姘斿帇锛氭寚鐫�闄嗗尯锛堣窇閬撳叆鍙g锛夋渶楂樼偣鐨勬皵鍘嬨�傚満闈㈡皵鍘嬩篃鏄敱鏈珯姘斿帇鎺ㄧ畻鍑烘潵鐨勩�傞鏈鸿捣闄嶆椂锛屼负浜嗗噯纭帉鎻″叾鐩稿璺戦亾鐨勯珮搴︼紝灏遍渶瑕佺煡閬撳満闈㈡皵鍘嬨�傚満闈㈡皵鍘嬩篃鍙敱鏈哄満鏍囬珮鐐瑰鐨勬皵鍘嬩唬鏇裤��</p> + <p class="content">鏍囧噯娴峰钩闈㈡皵鍘嬶細澶ф皵澶勪簬鏍囧噯鐘舵�佷笅鐨勬捣骞抽潰姘斿帇琚О涓烘爣鍑嗘捣骞抽潰姘斿帇锛屽叾鍊间负1013.25 hPa銆傛捣骞抽潰姘斿帇鏄粡甯稿彉鍖栫殑锛岃�屾爣鍑嗘捣骞抽潰姘斿帇鏄竴涓父鏁般��</p> + <p class="content"> + 椋炴満椋炶鏃讹紝娴嬮噺鍏堕琛岄珮搴﹀閲囩敤鏃犵嚎鐢甸珮搴﹁〃鍜屾皵鍘嬪紡楂樺害琛ㄣ�傛棤绾跨數楂樺害琛ㄦ墍娴嬮噺鐨勬槸椋炴満鐩稿浜庢墍椋炶秺鍦板尯鍦拌〃鐨勫瀭鐩磋窛绂汇�傛棤绾跨數楂樺害琛ㄨ兘涓嶆柇鍦版寚绀洪鏈虹浉瀵逛簬鎵�椋炶秺鍦拌〃鐨勯珮搴︼紝骞跺鍦板舰鐨勪换浣曞彉鍖栭兘寰堚�滄晱鎰熲�濄�� + </p> + <p class="content"> + 姘斿帇寮忛珮搴﹁〃鏄富瑕佺殑鑸浠〃锛屽畠鏄竴涓珮搴︾伒鏁忕殑绌虹洅姘斿帇琛紝浣嗗埢搴︾洏涓婃爣鍑虹殑鏄珮搴︺�傚彟澶栵紝鏈変竴涓緟鍔╁埢搴︾洏鍙樉绀烘皵鍘嬶紝楂樺害鍜屾皵鍘嬮兘鍙�氳繃鏃嬮挳璋冨畾銆傛皵鍘嬪紡楂樺害琛ㄧ殑鍒诲害鐩樻槸鍦ㄦ爣鍑嗗ぇ姘旀潯浠朵笅鎸夋皵鍘嬮殢楂樺害鐨勫彉鍖栬寰嬭�岀‘瀹氱殑锛屽嵆姘斿帇寮忛珮搴﹁〃鎵�娴嬮噺鐨勬槸姘斿帇锛屾牴鎹爣鍑嗗ぇ姘斾腑姘斿帇涓庨珮搴︾殑鍏崇郴锛屽氨鍙互琛ㄧず楂樺害銆� + </p> + <p class="content">椋炶涓父鐢ㄧ殑姘斿帇楂樺害鏈変互涓嬪嚑绉嶃��</p> + <p class="content"> + 鍦洪潰姘斿帇楂樺害锛氬畠鏄寚椋炴満鐩稿浜庤捣椋炴垨鐫�闄嗘満鍦鸿窇閬撶殑楂樺害銆備负浣挎皵鍘嬪紡楂樺害琛ㄦ寚绀哄満闈㈡皵鍘嬮珮搴︼紝椋炶鍛橀渶鎸夊満闈㈡皵鍘嬫潵鎷ㄦ姘斿帇寮忛珮搴﹁〃锛屽皢姘斿帇寮忛珮搴﹁〃鐨勬皵鍘嬪埢搴︽嫧姝e埌鍦洪潰姘斿帇鍊间笂銆�</p> + <p class="content"> + 闈㈤珮搴︼細瀹冩槸鎸囩浉瀵逛簬鏍囧噯娴峰钩闈㈢殑楂樺害銆傞鏈哄湪鑸嚎涓婇琛屾椂锛岄兘瑕佹寜鏍囧噯娴峰钩闈㈡皵鍘嬭皟鏁撮珮搴﹁〃锛屽叾鐩殑鏄娇鎵�鏈夊湪鑸嚎涓婇琛岀殑椋炴満閮芥湁鐩稿悓鐨勨�滈浂鐐光�濋珮搴︼紝骞舵寜姝や繚鎸佽瀹氱殑鑸嚎浠〃楂樺害椋炶锛屼互閬垮厤椋炴満鍦ㄧ┖涓浉鎾炪�� + </p> + <p class="content"> + 淇娴峰钩闈㈡皵鍘嬮珮搴︼細濡傛灉鎸変慨姝f捣骞抽潰姘斿帇鎷ㄦ姘斿帇寮忛珮搴﹁〃锛屽垯楂樺害琛ㄥ皢鏄剧ず淇娴峰钩闈㈡皵鍘嬮珮搴︺�傚湪椋炴満鐫�闄嗘椂锛屽皢楂樺害琛ㄦ寚绀洪珮搴﹀噺鍘绘満鍦烘爣楂樺氨绛変簬椋炴満璺濇満鍦鸿窇閬撻潰鐨勯珮搴︺��</p> + <p class="quotation">3锛庣┖姘旀箍搴�</p> + <p class="content">澶ф皵涓惈鏈夋按钂告皵锛屽ぇ姘斾腑鐨勬按钂告皵鍚噺鏄殢鏃堕棿銆佸湴鐐广�侀珮搴︺�佸ぉ姘旀潯浠惰�屼笉鏂彉鍖栫殑銆傜┖姘旀箍搴﹀氨鏄敤鏉ラ噺搴︾┖姘斾腑鐨勬按钂告皵鍚噺鎴栬�呯┖姘旀疆婀跨▼搴︾殑鐗╃悊閲忋��</p> + <p class="content"><span class="bold">鐩稿叧鐭ヨ瘑鐐�2锛氬ぇ姘斿眰鐨勫垝鍒�</span></p> + <p class="content"> + 澶ф皵灞傛棤鏄庢樉鐨勪笂闄愶紝瀹冪殑鍚勭鐗规�у湪鍨傜洿鏂瑰悜涓婄殑宸紓闈炲父鏄庢樉锛屽绌烘皵闅忛珮搴﹀鍔犺�岃秼浜庣█钖勩�備互澶ф皵涓俯搴﹂殢楂樺害鐨勫垎甯冧负涓昏渚濇嵁锛屽彲灏嗗ぇ姘斿眰鍒掑垎涓哄娴佸眰銆佸钩娴佸眰銆佷腑闂村眰銆佺儹灞傚拰鏁i�稿眰锛屽鍥�1.3.1鎵�绀恒�傝埅绌哄櫒鐨勫ぇ姘旈琛岀幆澧冩槸瀵规祦灞傚拰骞虫祦灞傘�傚ぇ姘斿眰瀵归琛屾湁寰堝ぇ鐨勫奖鍝嶏紝鎭跺姡鐨勫ぉ姘旀潯浠朵細鍗卞強椋炶瀹夊叏銆傚ぇ姘斿睘鎬э紙娓╁害銆佸帇鍔涖�佹箍搴︺�侀鍚戙�侀閫熺瓑锛夊椋炴満鐨勯琛屾�ц兘鍜岄琛岃埅杩逛篃浼氫骇鐢熶笉鍚岀▼搴︾殑褰卞搷銆� + </p> + </div> + </div> + </div> + <!-- 17椤� --> + <div class="page-box" page="23"> + <div v-if="showPageList.indexOf(23) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">17</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <div class="center openImgBox"> + <img class="img-e" src="../../assets/images/0029-01.jpg" alt="" active="true" /> + <p class="img">鍥�1.3.1銆�鍦扮悆澶ф皵灞傚垝鍒嗙ず鎰忓浘</p> + </div> + <p class="quotation">1锛庡娴佸眰</p> + <p class="content"> + 瀵规祦灞傛槸鍦扮悆澶ф皵涓渶浣庣殑涓�灞傘�傚湪瀵规祦灞備腑锛屾皵娓╅殢楂樺害澧炲姞鑰岄檷浣庯紝绌烘皵鐨勫娴佽繍鍔ㄦ瀬涓烘槑鏄撅紝绌烘皵娓╁害鍜屾箍搴︾殑姘村钩鍒嗗竷涔熷緢涓嶅潎鍖�銆傚娴佸眰鐨勫帤搴﹂殢绾害鍜屽鑺傚彉鍖栵紝涓�鑸湪浣庣含搴﹀湴鍖哄钩鍧囦负16 km锝�18 + km锛屽湪涓含搴﹀湴鍖哄钩鍧囦负10 km锝�12 km锛屽湪楂樼含搴﹀湴鍖哄钩鍧囦负8 km锝�9 km銆傚氨瀛h妭鑰岃█锛屾垜鍥界粷澶ч儴鍒嗗湴鍖轰竴鑸兘鏄瀛e娴佸眰鍘氾紝鍐瀵规祦灞傝杽銆傚娴佸眰闆嗕腑浜嗗叏閮ㄥぇ姘旂害 + <math> + <mfrac> + <mn>3</mn> + <mn>4</mn> + </mfrac> + </math>鐨勮川閲忓拰鍑犱箮鍏ㄩ儴鐨勬按钂告皵锛屾槸澶╂皵鍙樺寲鏈�澶嶆潅鐨勫眰锛屼篃鏄椋炶褰卞搷鏈�閲嶈鐨勫眰銆傞琛屼腑鎵�閬囧埌鐨勫悇绉嶉噸瑕佸ぉ姘旂幇璞″嚑涔庨兘鍑虹幇鍦ㄨ繖涓�灞備腑锛屽闆锋毚銆佹祿闆俱�佷綆浜戝箷銆侀洦銆侀洩銆佸ぇ姘旀箥娴併�侀鍒囧彉绛夈�傚娴佸眰鎸夋皵娴佸拰澶╂皵鐜拌薄鍒嗗竷鐨勭壒鐐癸紝鍙堝彲鍒嗕负涓嬪眰銆佷腑灞傚拰涓婂眰銆� + </p> + <p class="content">瀵规祦灞備笅灞傦紝鍙堢О鎽╂摝灞傦紝瀹冪殑鑼冨洿鑷湴闈㈠埌1 km锝�2 + km鐨勯珮搴︼紝浣嗗湪鍚勫湴鐨勫疄闄呴珮搴﹀張涓庡湴琛ㄦ�ц川銆佸鑺傜瓑鍥犵礌鏈夊叧銆備竴鑸鏉ワ紝鍏堕珮搴﹀湪绮楃硻鍦拌〃涓婇珮浜庡钩鏁村湴琛ㄤ笂锛屽瀛i珮浜庡啲瀛o紙鍖楀崐鐞冿級锛屾樇闂撮珮浜庡闂淬�傚湪瀵规祦灞備笅灞傦紝姘旀祦鍙楀湴闈㈡懇鎿︿綔鐢ㄥ奖鍝嶅緢澶э紝椋庨�熼�氬父闅忛珮搴﹀鍔犺�屽澶с�傚湪澶嶆潅鐨勫湴褰㈠拰鎭跺姡鐨勫ぉ姘旀潯浠朵笅锛屽父瀛樺湪鍓х儓鐨勬皵娴佹壈鍔紝濞佽儊鐫�椋炶瀹夊叏锛岀獊鍙戠殑涓嬪啿姘旀祦鍜屽己鐑堢殑浣庣┖椋庡垏鍙樺父浼氬紩鍙戦鏈轰簨鏁呫�傚彟澶栵紝鍏呮矝鐨勬按钂告皵鍜屽皹鍩冨線寰�瀵艰嚧娴撻浘鍙婂叾浠栨伓鍖栬兘瑙佸害鐨勭幇璞★紝瀵归鏈虹殑璧烽鍜岀潃闄嗘瀯鎴愪弗閲嶇殑闅滅銆備负浜嗙‘淇濋琛屽畨鍏紝姣忎釜鏈哄満閮借瀹氭湁鍚勭被椋炴満鐨勮捣闄嶆皵璞℃潯浠躲�傚彟澶栵紝瀵规祦灞備笅灞備腑姘旀俯鐨勬棩鍙樺寲鏋佷负鏄庢樉锛屾樇澶滄俯宸彲杈�10鈩冿綖40鈩冦�� + </p> + <p class="content">瀵规祦灞備腑灞傜殑搴曠晫鍗冲娴佸眰涓嬪眰椤讹紝涓婄晫楂樺害绾︿负6 + km锛岃繖涓�灞傚彈鍦拌〃鐨勫奖鍝嶈繙灏忎簬瀵规祦灞備笅灞傘�傚ぇ姘斾腑鐨勪簯鍜岄檷姘寸幇璞″ぇ閮藉彂鐢熷湪杩欎竴灞傚唴銆傚娴佸眰涓眰鐨勪笂閮ㄧ殑姘斿帇閫氬父鍙湁鍦伴潰鐨勪竴鍗婏紝鍦ㄩ偅閲岄琛屾椂闇�瑕佷娇鐢ㄦ哀姘斻�備竴鑸交鍨嬭繍杈撴満銆佺洿鍗囨満绛夊父鍦ㄨ繖涓�灞備腑椋炶锛堝浘1.3.2锛夈�� + </p> + </div> + </div> + </div> + <!-- 18椤� --> + <div class="page-box" page="24"> + <div v-if="showPageList.indexOf(24) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">18</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <p class="content">涓婂眰鑼冨洿浠�6 + km楂樺害浼稿睍鍒板娴佸眰鐨勯《閮紝杩欎竴灞傜殑姘旀俯甯稿勾閮藉湪0鈩冧互涓嬶紝姘磋捀姘斿惈閲忓緢灏戯紝鍚勭浜戦兘鐢卞啺鏅舵垨杩囧喎鍗存按婊寸粍鎴愩�傚湪涓含搴﹀拰鍓儹甯﹀湴鍖猴紝杩欎竴灞備腑甯告湁椋庨�熺瓑浜庢垨澶т簬30 + m/s鐨勫己椋庡甫锛屽嵆鎵�璋撻珮绌烘�ユ祦銆傞鏈哄湪楂樼┖鎬ユ祦闄勮繎椋炶鏃跺線寰�浼氬彂鐢熷己鐑堥绨革紝浣夸箻瀹㈡劅瑙変笉閫傦紝鐢氳嚦琚牬鍧忕粨鏋勫拰閫犳垚瀹夊叏濞佽儊銆�</p> + <p class="content">鍦ㄥ娴佸眰鍜屽钩娴佸眰涔嬮棿锛岃繕鏈変竴涓帤搴︿负鏁扮櫨绫冲埌2 + km鐨勮繃娓″眰锛岃绉颁负瀵规祦灞傞《銆傚娴佸眰椤跺鍨傜洿姘旀祦鏈夊緢澶х殑闃绘尅浣滅敤銆備笂鍗囩殑姘磋捀姘斻�佸皹绮掔瓑澶氳仛闆嗗叾涓嬶紝閭i噷鐨勮兘瑙佸害寰�寰�杈冧綆銆�</p> + <div class="openImgBox center"> + <img class="img-b" src="../../assets/images/0030-01.jpg" alt="" active="true" /> + <p class="img">鍥�1.3.2銆�涓�鏋舵鍦ㄥ娴佸眰宸¤埅椋炶鐨勫皬鍨嬪鏈�</p> + </div> + <p class="quotation">2锛庡钩娴佸眰</p> + <p class="content">骞虫祦灞備綅浜庡娴佸眰涔嬩笂锛屼綅浜�50 km锝�55 km楂樺害澶勩�傚湪骞虫祦灞傚唴锛岄殢鐫�楂樺害鐨勫鍔狅紝姘旀俯鏈�鍒濅繚鎸佷笉鍙樻垨寰湁涓婂崌锛屽埌30 + km楂樺害浠ヤ笂姘旀俯鍗囬珮杈冨揩锛屽埌浜嗗钩娴佸眰椤舵皵娓╁崌鑷�270 K锝�290 + K銆傚钩娴佸眰鐨勮繖绉嶆皵娓╁垎甯冪壒寰佸悓瀹冨彈鍦伴潰褰卞搷灏忓拰瀛樺湪澶ч噺鑷哀锛堣嚟姘ц兘鐩存帴鍚告敹澶槼杈愬皠锛夋湁鍏炽�傚钩娴佸眰杩囧幓甯歌绉颁负鍚屾俯灞傦紝瀹為檯涓婃寚鐨勬槸骞虫祦灞傜殑涓嬮儴銆傚湪骞虫祦灞備腑锛岀┖姘旂殑鍨傜洿杩愬姩杩滄瘮瀵规祦灞傚急锛屾按钂告皵銆佸皹绮掑惈閲忎篃杈冨皯锛屽洜鑰屾皵娴佹瘮杈冨钩缂擄紝鑳借搴﹁緝楂樸�傚浜庨琛屾潵璇达紝骞虫祦灞傛皵娴佸钩绋炽�佺┖姘旈樆鍔涘皬鏄湁鍒╃殑涓�闈紙鍥�1.3.3锛夛紝浣嗗洜骞虫祦灞傜┖姘旂█钖勶紝椋炶鍣ㄧ殑绋冲畾鎬у拰鎿嶇旱鎬у彉宸紝杩欏張鏄笉鍒╃殑涓�闈€�傞珮鎬ц兘鐨勭幇浠f鍑绘満鍜屼睛瀵熸満閮借兘鍦ㄥ钩娴佸眰涓琛岋紙鍥�1.3.4锛夈�傞殢鐫�椋炴満椋炶楂樺害涓婇檺鐨勬棩鐩婂鍔狅紝鐏銆佸寮圭瓑鎶�鏈殑鍙戝睍锛屽骞虫祦灞傜殑鐮旂┒鏃ヨ秼閲嶈銆� + </p> + + </div> + </div> + </div> + <!-- 19椤� --> + <div class="page-box" page="25"> + <div v-if="showPageList.indexOf(25) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">19</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <div class="openImgBox center"> + <img class="img-c" src="../../assets/images/0031-01.jpg" alt="" active="true" /> + <p class="img">鍥�1.3.3銆�涓�鏋舵鍦ㄥ钩娴佸眰宸¤埅椋炶鐨勫ぇ鍨嬪鏈�</p> + </div> + <div class="openImgBox center"> + <img class="img-c" src="../../assets/images/0031-02.jpg" alt="" active="true" /> + <p class="img">鍥�1.3.4銆�缇庡浗鈥滈粦楦熲�濅睛瀵熸満26600 m鐨勯琛岄珮搴︽槸鑸┖棰嗗煙鐩墠鏋侀檺</p> + </div> + <p class="quotation">3锛庝腑闂村眰</p> + <p class="content">涓棿灞備粠骞虫祦灞傞《浼稿睍鍒�80 km锝�85 km楂樺害銆傝繖涓�灞傜殑鐗圭偣鏄皵娓╅殢楂樺害澧炲姞鑰岄檷浣庯紝绌烘皵鏈夌浉褰撳己鐑堢殑鍨傜洿杩愬姩銆傚湪杩欎竴灞傜殑椤堕儴锛屾皵娓╁彲浣庤嚦160 K锝�190 K銆� + </p> + <p class="quotation">4锛庣儹灞�</p> + <p class="content">鐑眰鍙堢О涓烘殩灞傛垨鐢电灞傦紝鑼冨洿浠庝腑闂村眰椤朵几灞曞埌绾�800 + km楂樺害銆傝繖涓�灞傜殑绌烘皵瀵嗗害寰堝皬锛屽0娉篃闅句互浼犳挱銆傜儹灞傜殑涓�涓壒寰佹槸姘旀俯闅忛珮搴﹀鍔犺�屼笂鍗囷紝鍙︿竴涓壒寰佹槸绌烘皵澶勪簬楂樺害鐢电鐘舵�併�傜儹灞傜殑鍙樺寲浼氬奖鍝嶉琛屽櫒鐨勬棤绾跨數閫氫俊锛堝浘1.3.5銆佸浘1.3.6锛夈�� + </p> + </div> + </div> + </div> + <!-- 20椤� --> + <div class="page-box" page="26"> + <div v-if="showPageList.indexOf(26) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">20</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <div class="openImgBox center"> + <img class="img-c" src="../../assets/images/0032-01.jpg" alt="" active="true" /> + <p class="img">鍥�1.3.5銆�浣庤建鍗槦鍦ㄧ數绂诲眰鎵ц璧勬簮鎺㈡祴鎴栨皵璞℃帰娴嬩换鍔�</p> + </div> + <div class="openImgBox center"> + <img class="img-c" src="../../assets/images/0032-02.jpg" alt="" active="true" /> + <p class="img">鍥�1.3.6銆�娲查檯寮归亾瀵煎脊鍙姷杈剧數绂诲眰椋炶</p> + </div> + <p class="quotation">5锛庢暎閫稿眰</p> + <p class="content"> + 鏁i�稿眰鍙堢О閫冮�稿眰銆佸澶ф皵灞傦紝鏄湴鐞冨ぇ姘旂殑鏈�澶栧眰锛屼綅浜庣儹灞備箣涓娿�傛暎閫稿眰鐨勭┖姘旀瀬鍏剁█钖勶紝鍚屾椂鍙堣繙绂诲湴闈紝鍙楀湴鐞冪殑寮曞姏浣滅敤杈冨皬锛屽洜鑰屽ぇ姘斿垎瀛愪笉鏂湴鍚戞槦闄呯┖闂撮�冮�搞�傝埅澶╁櫒鑴辩杩欎竴灞傚悗渚胯繘鍏ュお绌洪琛屻�� + </p> + <p class="td-0 mt-10 mb-10"><span class="bj2">路瑙嗛搴撀�</span></p> + <div class="bk-video fl"> + <div class="fl jc-fs fw-w"> + <div style="width: 290px; height: auto; margin: 0 5px;" + v-for="(item, index) in videoDataThree.videoMd5" :key="index"> + <video webkit-playsinline="true" x-webkit-airplay="true" playsinline="true" + x5-video-orientation="h5" x5-video-player-fullscreen="true" x5-playsinline="" + controls controlslist="nodownload" class="video-border w100" + :src="item.handleMd5"></video> + <div class="fl al-c jc-c"> + <p class="td-0" style="font-size: 12px;">{{ item.name }}</p> + <el-tooltip class="item" effect="dark" + :content="item.isCollectVideo ? '鐐瑰嚮鍙栨秷' : '鐐瑰嚮鏀惰棌'" placement="top-start"> + <img :src="collectResourceList.findIndex(citem => citem.id == item.md5) > -1 ? collectCheck : collectImg" + alt="" class="collect-btn1" @click="handleCollect(item)" /> + </el-tooltip> + </div> + </div> + </div> + </div> + <p class="td-0 mt-10 mb-10"><img class="h-pic" src="../../assets/images/0017_03.jpg" alt="" /></p> + <div v-for="(item, index) in questionDataThree.slice(0, 3)" :key="index"> + <p class="block">{{ index + 1 }}.{{ item.txt }}</p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveQuestionDataThree" /> + {{ citem.txt }} + </p> + </div> + </div> + </div> + </div> + <!-- 21椤� --> + <div class="page-box" page="27"> + <div v-if="showPageList.indexOf(27) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">21</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <div v-for="(item, index) in questionDataThree.slice(3, 14)" :key="index"> + <p class="block">{{ index + 4 }}.{{ item.txt }}</p> + <p class="block fl ml-35" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveQuestionDataThree" /> + <span class="td-0" v-if="citem.txt">{{ citem.txt }}</span> + <img class="img-k" v-if="citem.imgSrc" :src="citem.imgSrc" alt=""> + </p> + </div> + </div> + </div> + </div> + <!-- 22椤� --> + <div class="page-box" page="28"> + <div v-if="showPageList.indexOf(28) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">22</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <div v-for="(item, index) in questionDataThree.slice(14, 28)" :key="index"> + <p class="block"> + <span>{{ index + 15 }}</span>. + <span class="td-0" v-if="item.txt">{{ item.txt }}</span> + <span class="td-0" v-if="item.RichTxt" v-html="item.RichTxt"></span> + </p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveQuestionDataThree" /> + <span class="td-0" v-if="citem.txt"> + {{ citem.txt }} + </span> + </p> + </div> + </div> + </div> + </div> + <!-- 23椤� --> + <div class="page-box" page="29"> + <div v-if="showPageList.indexOf(29) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">23</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + <div v-for="(item, index) in questionDataThree.slice(28, 39)" :key="index"> + <p class="block">{{ index + 29 }}.{{ item.txt }}</p> + <p class="block" v-for="(citem, cindex) in item.options" :key="cindex"> + <input type="radio" :value="citem.value" v-model="item.userAnswer" + @change="saveQuestionDataThree" /> + {{ citem.txt }} + </p> + </div> + </div> + </div> + </div> + <!-- 24椤� --> + <div class="page-box" page="30"> + <div v-if="showPageList.indexOf(30) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">24</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <p class="content td-0 mt-10 mb-10"><img class="h-pic" src="../../assets/images/0019_02.jpg" + alt="" /></p> + <p class="content">閫氳繃鏈换鍔″涔狅紝璇锋牴鎹嚜宸辩殑瀛︿範鎯呭喌濉啓浠诲姟璇勪环琛紝璇勫垎鏃惰缁煎悎鑰冭檻灏忕粍涔嬮棿鐨勫悎浣溿�佹矡閫氳兘鍔涚瓑鑱屼笟绱犲吇锛堟寜鑷瘎鍒嗘暟40%銆佹暀甯堣瘎鍒�60%璁$畻寰楀垎锛夈��</p> + <table border="1" cellpadding="4" cellspacing="0" + style="border-color: #677fb7; border-collapse: collapse" class="fz-14 img-0"> + <tr class="img-0 table-th-bc"> + <th>搴忓彿</th> + <th>璇惧悗浠诲姟</th> + <th>鏍囧噯璇勪环</th> + <th>鑷瘎鍒嗘暟</th> + <th>鏁欏笀璇勫垎</th> + </tr> + <tr class="table-tr-bc"> + <td rowspan="3" class="center">1</td> + <td rowspan="3" class="center">澶ф皵鐨勫熀鏈绱�(40鍒�)</td> + <td>瀵瑰ぇ姘斿眰鐨勪笁涓熀鏈绱犳槑纭�(40鍒�)</td> + <td rowspan="3" class="center"> + <input v-model="tableData.unitThree.one" type="number" step="1" min="0" + class="table-textarea" @change="setBookTableData"> + </td> + <td rowspan="3" class="center"> + <input v-model="tableData.unitThree.two" type="number" step="1" min="0" + class="table-textarea" @change="setBookTableData"> + </td> + </tr> + <tr class="table-tr-bc"> + <td>瀵瑰ぇ姘斿眰鐨勪笁涓熀鏈绱犺緝鏄庣‘(30鍒�)</td> + </tr> + <tr class="table-tr-bc"> + <td>瀵瑰ぇ姘斿眰鐨勪笁涓熀鏈绱犱笉鏄庣‘(10鍒�)</td> + </tr> + <tr class="table-tr-bc-one"> + <td rowspan="3" class="center">2</td> + <td rowspan="3" class="center">澶ф皵灞傜殑鍒掑垎(40鍒�)</td> + <td>瀵瑰ぇ姘斿眰鐨勫垝鍒嗗強鐗圭偣鏄庣‘(40鍒�)</td> + <td rowspan="3" class="center"><input v-model="tableData.unitThree.three" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + <td rowspan="3" class="center"><input v-model="tableData.unitThree.four" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + </tr> + <tr class="table-tr-bc-one"> + <td>瀵瑰ぇ姘斿眰鐨勫垝鍒嗗強鐗圭偣杈冩槑纭�(30鍒�)</td> + </tr> + <tr class="table-tr-bc-one"> + <td>瀵瑰ぇ姘斿眰鐨勫垝鍒嗗強鐗圭偣涓嶆槑纭�(10鍒�)</td> + </tr> + <tr class="table-tr-bc"> + <td rowspan="2" class="center">3</td> + <td rowspan="2" class="center">鍥㈤槦鍚堜綔(20鍒�)</td> + <td>浜掑府浜掑姪锛屽彲浠ユ甯告矡閫氫氦娴�(20鍒�)</td> + <td rowspan="2" class="center"><input v-model="tableData.unitThree.five" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + <td rowspan="2" class="center"><input v-model="tableData.unitThree.six" type="number" + step="1" min="0" class="table-textarea" @change="setBookTableData"></td> + </tr> + <tr class="table-tr-bc"> + <td>浜掑府浜掑姪锛屼氦娴佽緝灏戯紝甯︽湁鑴炬皵(10鍒�)</td> + </tr> + </table> + + </div> + </div> + </div> + <!-- 5椤� --> + <!-- <div class="page-box" page="11"> + <div v-if="showPageList.indexOf(11) > -1"> + <ul class="fl al-fe pad-t-55 pad-l-80 jc-fe mb-45 h-25"> + <li class="header-right-Number header-right-title">椤圭洰涓�</li> + <li class="header-right-Number">鏃犱汉鏈哄熀纭�鐭ヨ瘑</li> + <li class="p-Num">5</li> + <li class="header-right-Number cloud"> + <img class="" src="../../assets/images/yemei02.png" alt="" /> + </li> + <li class="header-right-last"><br /></li> + <li class="header-right-end"><br /></li> + </ul> + <div class="bodystyle"> + </div> + </div> + </div> --> + </div> +</template> +<script> +import { getResourcePath } from "@/assets/methods/resources"; +import { + getCollectResource, + setCollectResource, +} from "@/assets/methods/resources"; +export default { + name: "chapterOne", + props: { + showPageList: { + type: Array, + }, + resourceList: { + type: Object, + } + }, + data() { + return { + collectImg: require("../../assets/images/icon/heart.png"), + collectCheck: require("../../assets/images/icon/heart-check.png"), + questionData: [ + { + txt: "鏈鸿韩鐨勪富瑕佸姛鑳芥槸锛堛��锛夈��", + userAnswer: "", + options: [ + { + txt: "瑁呰浇浜哄憳", + value: "A", + }, + { + txt: "瑁呰浇鍚勭璁惧", + value: "B", + }, + { + txt: "淇濇姢椋炴満", + value: "C", + }, + ] + }, + { + txt: "鍥哄畾缈兼棤浜烘満绯荤粺涓�鑸敱锛堛��锛夐儴鍒嗘瀯鎴愩��", + userAnswer: "", + options: [ + { + txt: "涓�", + value: "A", + }, + { + txt: "鍥�", + value: "B", + }, + { + txt: "浜�", + value: "C", + }, + ] + }, + { + txt: "鏃嬬考缁撴瀯鏈夛紙銆�锛夌銆�", + userAnswer: "", + options: [ + { + txt: "鍥�", + value: "A", + }, + { + txt: "浜�", + value: "B", + }, + { + txt: "鍏�", + value: "C", + }, + ] + }, + { + txt: "鍓嶅悗宸﹀彸鍔ㄤ綔鏃跺姞鍑忛�熺殑鐢垫満杈冨锛屾帶鍒舵瘮杈冭繀閫熴�佹湁鍔涚殑鏄紙銆�锛夈��", + userAnswer: "", + options: [ + { + txt: "X鍨嬪竷灞�鐨勫鏃嬬考鏃犱汉鏈�", + value: "A", + }, + { + txt: "鍗佸瀷甯冨眬鐨勫鏃嬬考鏃犱汉鏈�", + value: "B", + }, + { + txt: "H鍨嬪竷灞�鐨勫鏃嬬考鏃犱汉鏈�", + value: "C", + }, + ] + }, + { + txt: "鏄撲簬璁捐鎴愭按骞虫姌鍙犵粨鏋勭殑鏄紙銆�锛夈��", + userAnswer: "", + options: [ + { + txt: "X鍨嬪鏃嬬考", + value: "A", + }, + { + txt: "鍗佸瀷澶氭棆缈�", + value: "B", + }, + { + txt: "H鍨嬪鏃嬬考", + value: "C", + }, + ] + }, + { + txt: "涓嬪浘鏄紙銆�锛夊瀷甯冨眬鐨勶紙銆�锛夋棆缈兼棤浜烘満銆�", + userAnswer: "", + imgSrc: require("../../assets/images/0018-01.jpg"), + options: [ + { + txt: "H\鍥�", + value: "A", + }, + { + txt: "X\鍥�", + value: "B", + }, + { + txt: "鍗乗鍥�", + value: "C", + }, + ] + }, + { + txt: "涓嬪浘鏄紙銆�锛夊瀷甯冨眬鐨勶紙銆�锛夋棆缈兼棤浜烘満銆�", + userAnswer: "", + imgSrc: require("../../assets/images/0018-02.jpg"), + options: [ + { + txt: "X\鍥�", + value: "A", + }, + { + txt: "H\鍥�", + value: "B", + }, + { + txt: "鍗乗鍥�", + value: "C", + }, + ] + }, + { + txt: "涓嬪浘鏄紙銆�锛夈��", + userAnswer: "", + imgSrc: require("../../assets/images/0018-03.jpg"), + options: [ + { + txt: "绾靛垪寮忓弻鏃嬬考鐩村崌鏈�", + value: "A", + }, + { + txt: "妯垪寮忓弻鏃嬬考鐩村崌鏈�", + value: "B", + }, + { + txt: "鍗曟棆缈肩洿鍗囨満", + value: "C", + }, + ] + }, + { + txt: "涓嬪浘鏄紙銆�锛夈��", + userAnswer: "", + imgSrc: require("../../assets/images/0019-01.jpg"), + options: [ + { + txt: "绾靛垪寮忓弻鏃嬬考鐩村崌鏈�", + value: "A", + }, + { + txt: "妯垪寮忓弻鏃嬬考鐩村崌鏈�", + value: "B", + }, + { + txt: "鍗曟棆缈肩洿鍗囨満", + value: "C", + }, + ] + }, + { + txt: "姘村钩灏剧考鐢憋紙銆�锛夌粍鎴愩�傗憼鍥哄畾鐨勬按骞冲畨瀹氶潰锛涒憽鍙姩鐨勫崌闄嶈埖锛涒憿鍙姩鐨勬柟鍚戣埖銆�", + userAnswer: "", + options: [ + { + txt: "鈶犫憽鈶�", + value: "A", + }, + { + txt: "鈶♀憿", + value: "B", + }, + { + txt: "鈶犫憽", + value: "C", + }, + ] + }, + { + txt: "灏剧考鐨勪綔鐢ㄦ槸锛堛��锛夈�傗憼鎿嶇旱椋炴満淇话鍜屽亸杞紱鈶′繚璇侀鏈鸿兘骞崇ǔ椋炶锛涒憿鎻愪緵鍗囧姏銆�", + userAnswer: "", + options: [ + { + txt: "鈶犫憽鈶�", + value: "A", + }, + { + txt: "鈶犫憽", + value: "B", + }, + { + txt: "鈶犫憿", + value: "C", + }, + ] + }, + { + txt: "鏃犱汉鏈虹郴缁熷寘鎷┖涓郴缁熴�侀鏈虹郴缁熴�侊紙銆�锛夊拰鏃犱汉鏈轰娇鐢ㄤ繚闅滀汉鍛樸��", + userAnswer: "", + options: [ + { + txt: "鏁版嵁閾剧郴缁�", + value: "A", + }, + { + txt: "浠诲姟杞借嵎", + value: "B", + }, + { + txt: "鍦伴潰绔�", + value: "C", + }, + ] + }, + ], + tableData: { + unitOne: { + one: "", + two: "", + three: "", + four: "", + five: "", + six: "", + }, + unitTwo: { + one: "", + two: "", + three: "", + four: "", + five: "", + six: "", + }, + unitThree: { + one: "", + two: "", + three: "", + four: "", + five: "", + six: "", + }, + }, + questionDataTwo: [ + { + txt: "鐩戣绌哄煙鏄寚浣嶄簬绠″埗绌哄煙鍜屾姤鍛婏紙銆�锛夌殑绌哄煙銆�", + userAnswer: "", + options: [ + { txt: "绌哄煙涔嬪", value: "A" }, + { txt: "闆疯揪涔嬪", value: "B" }, + { txt: "绌哄煙涔嬪唴", value: "C" } + ] + }, + { + txt: "鐩椋炶鑸嚎鏄寚鑸┖鍣ㄥ浜庨┚椹跺憳鐩瑙嗚窛鍗婂緞锛堛��锛夛紝鐩稿楂樺害浣庝簬锛堛��锛夌殑鑼冨洿銆�", + userAnswer: "", + options: [ + { txt: "550 m锛�150 m", value: "A" }, + { txt: "500 m锛�120 m", value: "B" }, + { txt: "505 m锛�125 m", value: "C" } + ] + }, + { + txt: "涓浗鑸┖鍣ㄦ嫢鏈夎�呭強椹鹃┒鍛樺崗浼氭垚绔嬩簬锛堛��锛夊勾銆�", + userAnswer: "", + options: [ + { txt: "2002", value: "A" }, + { txt: "2006", value: "B" }, + { txt: "2004", value: "C" } + ] + }, + { + txt: "绠″埗绌哄煙鏄寚閲嶇偣鐩爣澶栧洿锛堛��锛夊尯鍩熴�佷互姘戣埅鏈哄満璺戦亾涓績鐐逛负涓績鐨勮窇閬撲袱澶村悇锛堛��锛夊尯鍩熷拰璺戦亾涓や晶鍚勶紙銆�锛夌殑鍖哄煙銆�", + userAnswer: "", + options: [ + { txt: "5.5 km锛�20 km锛�5 km", value: "A" }, + { txt: "5 km锛�25 km锛�10 km", value: "B" }, + { txt: "10 km锛�30 km锛�5 km", value: "C" } + ] + }, + { + txt: "鐩墠鏃犱汉鏈虹殑杩愯楂樺害绌洪棿涓猴紙銆�锛夈�傛按骞崇┖闂存牴鎹渶瑕佸垝鍒嗕负绠″埗绌哄煙銆佹姤鍛婄┖鍩熴�佺洃瑙嗙┖鍩熴�佺洰瑙嗛琛岃埅绾裤�佽瀺鍚堢┖鍩熷拰闅旂绌哄煙鍏被銆�", + userAnswer: "", + options: [ + { txt: "0锝�500 m", value: "A" }, + { txt: "0锝�750 m", value: "B" }, + { txt: "0锝�1000 m", value: "C" } + ] + }, + { + txt: "鏃犱汉鏈虹殑绌哄煙绠$悊涓昏浠庢棤浜烘満绌哄煙鍒掕鐨勫師鍒欍�佸垝璁剧殑渚濇嵁鍜屽垝璁剧殑鍐呭锛岋紙銆�锛夊唴瀹瑰拰鐩稿簲鏉℃绛夋柟闈紝鎶婃棤浜烘満杩愯绌哄煙鐨勪娇鐢ㄤ笌绠$悊绾冲叆娉曟不鍖栥�佹瑙勫寲銆佺粺涓�鍖栫殑绠$悊涔嬩腑銆�", + userAnswer: "", + options: [ + { txt: "绌轰腑閫氱鍒剁殑渚濇嵁", value: "A" }, + { txt: "绌轰腑浜ょ鍒剁殑渚濇嵁", value: "B" }, + { txt: "绌轰腑浜ら�氱鍒剁殑渚濇嵁", value: "C" } + ] + }, + { + txt: "涓浗鑸┖鍣ㄦ嫢鏈夎�呭強椹鹃┒鍛樺崗浼氾紝缁忓浗鍔¢櫌鎵瑰噯锛屽湪姘戞斂閮ㄧ櫥璁版敞鍐岋紝涓烘帴鍙楁皯鑸眬涓氬姟鎸囧鐨勫浗瀹朵竴绾у崗浼氾紝鏄浗鍐咃紙銆�锛夎埅绌洪鍩熺涓�涓叏鍥芥�ц涓氬崗浼氥��", + userAnswer: "", + options: [ + { txt: "鍐涚敤", value: "A" }, + { txt: "鍐涙皯涓ょ敤", value: "B" }, + { txt: "姘戠敤", value: "C" } + ] + }, + { + txt: "涓浗鑸┖鍣ㄦ嫢鏈夎�呭強椹鹃┒鍛樺崗浼氾紝鏄腑鍥斤紙銆�锛夊湪鍥介檯鑸┖鍣ㄦ嫢鏈夎�呭強椹鹃┒鍛樺崗浼氱殑鍞竴鍚堟硶浠h〃銆�", + userAnswer: "", + options: [ + { txt: "鍙版咕鍦板尯", value: "A" }, + { txt: "鍚娓�佹境闂ㄥ湴鍖�", value: "B" }, + { txt: "鍚娓�佹境闂ㄣ�佸彴婀惧湴鍖�", value: "C" } + ] + }, + { + txt: "渚嬪锛屻�婁綆绌虹┖鍩熺鐞嗕娇鐢ㄨ瀹氥�嬪弬鑰冦�婁腑鍗庝汉姘戝叡鍜屽浗姘戠敤鑸┖娉曘�嬨�婁腑鍗庝汉姘戝叡鍜屽浗椋炶鍩烘湰瑙勫垯銆嬨�婇�氱敤鑸┖椋炶绠″埗鏉′緥銆嬩互鍙婂啗鏂圭殑鐩稿叧绠$悊瑙勫畾鍒跺畾銆傚悓鏃讹紝姘戠敤鏃犱汉鏈虹殑绌哄煙绠$悊鍙堟湁鍏剁嫭鏈夊睘鎬э紝鍏剁鐞嗙殑绌哄煙鏄琛岄珮搴﹀湪锛堛��锛変互涓嬬殑鍖哄煙锛屽苟涓旀牴鎹儏鍐典笉鍚屾寜鐓х鍒剁┖鍩熴�佹姤鍛婄┖鍩熴�佺洃瑙嗙┖鍩熴�佺洰瑙嗛琛岃埅绾跨瓑杩涜浜嗗垎绫伙紝鎵�浠ユ棤浜烘満娉曞緥娉曡鍏锋湁鐙珛鎬с��", + userAnswer: "", + options: [ + { txt: "1200 m", value: "A" }, + { txt: "1500 m", value: "B" }, + { txt: "1000 m", value: "C" } + ] + }, + { + txt: "绌轰腑浜ら�氱鍒舵湇鍔′富浣撴槸锛堛��锛夈��", + userAnswer: "", + options: [ + { txt: "鍏峰绌轰腑浜ら�氱鍒舵湇鍔¤祫鏍肩殑鍗曚綅鍜屼汉鍛�", value: "A" }, + { txt: "鎻愪緵绌轰腑浜ら�氱鍒舵湇鍔$殑鍗曚綅鍜屼汉鍛�", value: "B" }, + { txt: "鍏峰绌轰腑浜ら�氱鍒舵湇鍔¤祫鏍煎苟鎻愪緵绌轰腑浜ら�氱鍒舵湇鍔$殑鍗曚綅鍜屼汉鍛�", value: "C" } + ] + }, + { + txt: "绌轰腑浜ら�氱鍒舵湇鍔′汉鍛樺寘鎷紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "绌轰腑浜ら�氱鍒跺憳銆佺┖涓埅琛岃皟搴﹀憳銆侀琛岀娲惧憳銆佽埅琛屾儏鎶ュ憳", value: "A" }, + { txt: "绌轰腑浜ら�氱鍒跺憳銆佺┖涓埅琛岃皟搴﹀憳銆侀琛岀娲惧憳銆侀琛屾儏鎶ュ憳", value: "B" }, + { txt: "绌轰腑浜ら�氱鍒跺憳銆佺┖涓琛岃皟搴﹀憳銆侀琛岀娲惧憳銆侀琛屾儏鎶ュ憳", value: "C" } + ] + }, + { + txt: "姘戠敤鏃犱汉鏈烘硶瑙勫叿鏈夌嫭绔嬫�с�佺患鍚堟�с�侊紙銆�锛夌瓑鐗规�с��", + userAnswer: "", + options: [ + { txt: "骞虫椂鎬с�佺粡甯告��", value: "A" }, + { txt: "缁忓父鎬с�佸浗闄呮��", value: "B" }, + { txt: "骞虫椂鎬с�佸浗闄呮��", value: "C" } + ] + }, + { + txt: "涓浗鑸┖鍣ㄦ嫢鏈夎�呭強椹鹃┒鍛樺崗浼氾紝绠�绉颁腑鍥紸OPA锛屾垚绔嬩簬锛堛��锛夊勾銆�", + userAnswer: "", + options: [ + { txt: "2002", value: "A" }, + { txt: "2003", value: "B" }, + { txt: "2004", value: "C" } + ] + }, + { + txt: "缇庡浗鈥滈粦楦熲�濅睛瀵熸満锛堛��锛夐琛岄珮搴︽槸鑸┖棰嗗煙鐩墠鏋侀檺銆�", + userAnswer: "", + options: [ + { txt: "26000 m", value: "A" }, + { txt: "26600 m", value: "B" }, + { txt: "20600 m", value: "C" } + ] + }, + { + txt: "鍏ㄤ笘鐣屾渶澶嶆潅鐨勭┖鍩熺粨鏋勬槸锛堛��锛夈��", + userAnswer: "", + options: [ + { txt: "缇庡浗绾界害", value: "A" }, + { txt: "鑻卞浗浼︽暒", value: "B" }, + { txt: "涓浗骞垮窞", value: "C" } + ] + }, + { + txt: "锛堛��锛夋槸鏃犱汉鏈哄簲鐢ㄧ殑娉曞緥淇濋殰鍩虹煶銆�", + userAnswer: "", + options: [ + { txt: "鏃犱汉鏈烘硶寰�", value: "A" }, + { txt: "鏃犱汉鏈烘硶瑙�", value: "B" }, + { txt: "姘戠敤鏃犱汉鏈烘硶寰嬫硶瑙�", value: "C" } + ] + }, + { + txt: "绌轰腑浜ら�氱鍒跺崟浣嶄负椋炶涓殑姘戠敤鑸┖鍣ㄦ彁渚涚殑绌轰腑浜ら�氭湇鍔′腑鍚湁锛堛��锛夈��", + userAnswer: "", + options: [ + { txt: "椋炶鎯呮姤鏈嶅姟", value: "A" }, + { txt: "鏈哄満淇濋殰鏈嶅姟", value: "B" }, + { txt: "瀵艰埅鏈嶅姟", value: "C" } + ] + }, + { + txt: "绌轰腑浜ら�氱鍒剁殑鐩殑鍦ㄤ簬锛堛��锛夈�傗憼闃叉鏃犱汉鏈轰笌绌轰腑椋炴満銆佸湴闈㈤殰纰嶇墿鐩告挒锛涒憽鏈夋晥鍦板埄鐢ㄧ┖鍩燂紱鈶㈠畨鍏ㄥ湴鍔犻�熺┖涓氦閫氳繍杈撱��", + userAnswer: "", + options: [ + { txt: "鈶犫憽鈶�", value: "A" }, + { txt: "鈶♀憿", value: "B" }, + { txt: "鈶犫憿", value: "C" } + ] + }, + { + txt: "姘戠敤鑸┖鍣ㄥ湪绠″埗绌哄煙鍐咃紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "鍙互鑷敱椋炶", value: "A" }, + { txt: "鍙互鎸塚FR锛堢洰瑙嗛鏈鸿鍒欙級鑷敱椋炶", value: "B" }, + { txt: "蹇呴』鍙栧緱绌轰腑浜ら�氱鍒跺崟浣嶇殑璁稿彲", value: "C" } + ] + }, + { + txt: "涓嬪垪鑸┖娉曞緥娉曡涓骇鍒渶楂樼殑鏄紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "銆婁腑鍗庝汉姘戝叡鍜屽浗椋炶鍩烘湰瑙勫垯銆�", value: "A" }, + { txt: "銆婁腑鍗庝汉姘戝叡鍜屽浗姘戠敤鑸┖娉曘��", value: "B" }, + { txt: "銆婁腑鍗庝汉姘戝叡鍜屽浗鎼滃鎻存晳姘戠敤鑸┖鍣ㄧ殑瑙勫畾銆�", value: "C" } + ] + } + ], + questionDataThree: [ + { + txt: "鑸┖鍣ㄧ殑澶ф皵椋炶鐜鏄紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "瀵规祦灞傦紝骞虫祦灞�", value: "A" }, + { txt: "瀵规祦灞傦紝涓棿灞�", value: "B" }, + { txt: "骞虫祦灞傦紝鐑眰", value: "C" } + ] + }, + { + txt: "瀵规祦灞傛槸鍦扮悆澶ф皵涓渶浣庣殑涓�灞傦紝瀵规祦灞備腑姘旀俯闅忛珮搴︼紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "澧炲姞鑰屽鍔�", value: "A" }, + { txt: "澧炲姞鑰岄檷浣�", value: "B" }, + { txt: "闄嶄綆鑰岄檷浣�", value: "C" } + ] + }, + { + txt: "瀵规祦灞傜殑鍘氬害闅忕含搴﹀拰瀛h妭鍙樺寲锛屼竴鑸綆绾害鍦板尯骞冲潎涓猴紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "16 km锝�18 km", value: "A" }, + { txt: "8 km锝�9 km", value: "B" }, + { txt: "10 km锝�12 km", value: "C" } + ] + }, + { + txt: "瀵规祦灞傞泦涓簡鍏ㄩ儴澶ф皵绾︼紙銆�锛夌殑璐ㄩ噺鍜屽嚑涔庡叏閮ㄧ殑姘磋捀姘旓紝鏄ぉ姘斿彉鍖栨渶澶嶆潅鐨勫眰锛屼篃鏄椋炶褰卞搷鏈�閲嶈鐨勫眰銆�", + userAnswer: "", + options: [ + { imgSrc: require("../../assets/images/0033_01.jpg"), value: "A" }, + { imgSrc: require("../../assets/images/0033_02.jpg"), value: "B" }, + { imgSrc: require("../../assets/images/0033_03.jpg"), value: "C" } + ] + }, + { + txt: "瀵规祦灞備笅灞傦紝鍙堢О鎽╂摝灞傦紝瀹冪殑鑼冨洿鑷湴闈㈠埌锛堛��锛夌殑楂樺害锛屼絾鍦ㄥ悇鍦扮殑瀹為檯楂樺害鍙堜笌鍦拌〃鎬ц川銆佸鑺傜瓑鍥犵礌鏈夊叧銆�", + userAnswer: "", + options: [ + { txt: "2 km锝�3 km", value: "A" }, + { txt: "1 km锝�2 km", value: "B" }, + { txt: "1 km锝�3 km", value: "C" } + ] + }, + { + txt: "涓轰簡纭繚椋炶瀹夊叏锛屾瘡涓満鍦洪兘瑙勫畾鏈夊悇绫婚鏈虹殑璧烽檷姘旇薄鏉′欢銆傚彟澶栵紝瀵规祦灞備笅灞備腑姘旀俯鐨勬棩鍙樺寲鏋佷负鏄庢樉锛屾樇澶滄俯宸彲杈撅紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "10鈩冿綖40鈩�", value: "A" }, + { txt: "10鈩冿綖30鈩�", value: "B" }, + { txt: "20鈩冿綖40鈩�", value: "C" } + ] + }, + { + txt: "瀵规祦灞備腑灞傜殑搴曠晫鍗冲娴佸眰涓嬪眰椤讹紝涓婄晫楂樺害绾︿负锛堛��锛夛紝杩欎竴灞傚彈鍦拌〃鐨勫奖鍝嶈繙灏忎簬瀵规祦灞備笅灞傘��", + userAnswer: "", + options: [ + { txt: "5 km", value: "A" }, + { txt: "6 km", value: "B" }, + { txt: "7 km", value: "C" } + ] + }, + { + txt: "鍦ㄤ腑绾害鍜屽壇鐑甫鍦板尯锛岃繖涓�灞備腑甯告湁椋庨�熺瓑浜庢垨澶т簬锛堛��锛夌殑寮洪甯︼紝鍗虫墍璋撻珮绌烘�ユ祦銆�", + userAnswer: "", + options: [ + { txt: "20 m/s", value: "A" }, + { txt: "30 m/s", value: "B" }, + { txt: "40 m/s", value: "C" } + ] + }, + { + txt: "骞虫祦灞備綅浜庯紙銆�锛変箣涓婏紝浣嶄簬50 km锝�55 km楂樺害澶勩��", + userAnswer: "", + options: [ + { txt: "涓棿灞�", value: "A" }, + { txt: "瀵规祦灞�", value: "B" }, + { txt: "鐑眰", value: "C" } + ] + }, + { + txt: "鍦ㄥ钩娴佸眰鍐咃紝闅忕潃楂樺害鐨勫鍔狅紝姘旀俯鏈�鍒濅繚鎸佷笉鍙樻垨寰湁涓婂崌锛屽埌30 km楂樺害浠ヤ笂姘旀俯鍗囬珮杈冨揩锛屽埌浜嗗钩娴佸眰椤舵皵娓╁崌鑷筹紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "270 K锝�290 K", value: "A" }, + { txt: "260 K锝�290 K", value: "B" }, + { txt: "270 K锝�280 K", value: "C" } + ] + }, + { + txt: "瀵规祦灞備笅灞傦紝鍙堢О鎽╂摝灞傦紝瀹冪殑鑼冨洿鑷湴闈㈠埌锛堛��锛夌殑楂樺害銆�", + userAnswer: "", + options: [ + { txt: "500 km锝�800 km", value: "A" }, + { txt: "800 km锝�1000 km", value: "B" }, + { txt: "1000 km锝�2000 km", value: "C" } + ] + }, + { + txt: "涓婂眰鑼冨洿浠庯紙銆�锛夐珮搴︿几灞曞埌瀵规祦灞傜殑椤堕儴锛岃繖涓�灞傜殑姘旀俯甯稿勾閮藉湪0鈩冧互涓嬶紝姘磋捀姘斿惈閲忓緢灏戯紝鍚勭浜戦兘鐢卞啺鏅舵垨杩囧喎鍗存按婊寸粍鎴愩��", + userAnswer: "", + options: [ + { txt: "5 km", value: "A" }, + { txt: "6 km", value: "B" }, + { txt: "7 km", value: "C" } + ] + }, + { + txt: "鍦ㄤ腑绾害鍜屽壇鐑甫鍦板尯锛岃繖涓�灞備腑甯告湁椋庨�熺瓑浜庢垨澶т簬30 m/s鐨勫己椋庡甫锛屽嵆鎵�璋擄紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "楂樼┖鎬ユ祦", value: "A" }, + { txt: "浣庣┖鎬ユ祦", value: "B" }, + { txt: "涓珮绌烘�ユ祦", value: "C" } + ] + }, + { + txt: "鍦ㄥ鏉傜殑鍦板舰鍜屾伓鍔eぉ姘旀潯浠朵笅锛屽父瀛樺湪鍓х儓鐨勬皵娴佹壈鍔紝濞佽儊鐫�椋炶瀹夊叏锛岀獊鍙戠殑涓嬪啿姘旀祦鍜屽己鐑堢殑锛堛��锛夊父浼氬紩鍙戦鏈轰簨鏁呫��", + userAnswer: "", + options: [ + { txt: "浣庣┖椋庡垏鍙�", value: "A" }, + { txt: "涓珮绌洪鍒囧彉", value: "B" }, + { txt: "楂樼┖椋庡垏鍙�", value: "C" } + ] + }, + { + txt: "鐑眰鍙堢О涓烘殩灞傛垨鐢电灞傦紝鑼冨洿浠庝腑闂村眰椤朵几灞曞埌绾︼紙銆�锛夐珮搴︺�傝繖涓�灞傜殑绌烘皵瀵嗗害寰堝皬锛屽0娉篃闅句互浼犳挱銆�", + userAnswer: "", + options: [ + { txt: "700 km", value: "A" }, + { txt: "800 km", value: "B" }, + { txt: "900 km", value: "C" } + ] + }, + { + txt: "鍦ㄨ緝楂樼殑楂樺害锛岀敱浜庡ぇ姘斿帇鍔涢檷浣庯紝璧烽鍜岀潃闄嗚窛绂讳細锛堛��锛夛紝鐖崌鐜囦篃浼氾紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "澧炲姞锛屽鍔�", value: "A" }, + { txt: "澧炲姞锛屽噺灏�", value: "B" }, + { txt: "鍑忓皬锛屽噺灏�", value: "C" } + ] + }, + { + RichTxt: "<span>娴峰钩闈㈡俯搴︿负锛堛��锛夛紝娴峰钩闈㈢┖姘旀爣鍑嗗瘑搴︿负1.225 kg/m<sup>2</sup></span>", + userAnswer: "", + options: [ + { txt: "55 F", value: "A" }, + { txt: "59 F", value: "B" }, + { txt: "60 F", value: "C" } + ] + }, + { + txt: "锛堛��锛夋皵鍘嬪拰绌烘皵婀垮害绉颁负涓夊ぇ姘旇薄瑕佺礌銆�", + userAnswer: "", + options: [ + { txt: "椋庡帇", value: "A" }, + { txt: "姘旀俯", value: "B" }, + { txt: "姘斿瘑搴�", value: "C" } + ] + }, + { + txt: "澶ф皵澶勪簬鏍囧噯鐘舵�佷笅鐨勬捣骞抽潰姘斿帇绉颁负锛堛��锛夈��", + userAnswer: "", + options: [ + { txt: "鏍囧噯娴峰钩闈㈡皵鍘�", value: "A" }, + { txt: "澶ф皵鏍囧噯娴峰钩闈㈡皵鍘�", value: "B" }, + { txt: "娴峰钩闈㈡皵鍘�", value: "C" } + ] + }, + { + txt: "锛堛��锛夋槸鎸囩浉瀵逛簬鏍囧噯娴峰钩闈㈢殑楂樺害銆�", + userAnswer: "", + options: [ + { txt: "骞抽潰楂樺害", value: "A" }, + { txt: "娴峰钩闈㈤珮搴�", value: "B" }, + { txt: "闈㈤珮搴�", value: "C" } + ] + }, + { + txt: "鍦ㄥ娴佸眰鍜屽钩娴佸眰涔嬮棿锛岃繕鏈変竴涓帤搴︿负鏁扮櫨绫冲埌2 km鐨勮繃娓″眰锛岀О涓猴紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "骞冲娴佸眰", value: "A" }, + { txt: "瀵规祦灞傞《", value: "B" }, + { txt: "瀵规祦灞�", value: "C" } + ] + }, + { + txt: "骞虫祦灞傝繃鍘诲父琚О涓猴紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "骞冲娴佸眰", value: "A" }, + { txt: "骞虫祦灞備腑", value: "B" }, + { txt: "鍚屾俯灞�", value: "C" } + ] + }, + { + txt: "鐑眰鐨勫彉鍖栵紙銆�锛夐琛屽櫒鐨勬棤绾跨數閫氫俊銆�", + userAnswer: "", + options: [ + { txt: "涓嶅奖鍝�", value: "A" }, + { txt: "浼氬奖鍝�", value: "B" }, + { txt: "鏈変竴瀹氬奖鍝�", value: "C" } + ] + }, + { + txt: "鏁i�稿眰鍙堢О锛堛��锛夈��", + userAnswer: "", + options: [ + { txt: "閫冮�稿眰", value: "A" }, + { txt: "閫冩暎灞�", value: "B" }, + { txt: "鏁h繙灞�", value: "C" } + ] + }, + { + txt: "鍦扮悆琛ㄩ潰鏈変竴灞傚帤鍘氱殑锛堛��锛夈��", + userAnswer: "", + options: [ + { txt: "澶ф皵灞�", value: "A" }, + { txt: "姘ф皵灞�", value: "B" }, + { txt: "鑷哀灞�", value: "C" } + ] + }, + { + txt: "瀵规祦灞備笅灞傦紝鍙堢О锛堛��锛夈��", + userAnswer: "", + options: [ + { txt: "涓嬪娴佸眰", value: "A" }, + { txt: "鎽╂摝灞�", value: "B" }, + { txt: "瀵规祦灞�", value: "C" } + ] + }, + { + txt: "鍦ㄥ娴佸眰涓嬪眰锛屾皵娴佸彈鍦伴潰鎽╂摝浣滅敤寰堝ぇ锛岄閫熼�氬父闅忛珮搴﹀鍔犺�岋紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "澧炲ぇ", value: "A" }, + { txt: "鍑忓皬", value: "B" }, + { txt: "涓嶅彉", value: "C" } + ] + }, + { + txt: "锛堛��锛夋寜姘旀祦鍜屽ぉ姘旂幇璞″垎甯冪殑鐗圭偣锛屽張鍙垎涓轰笅灞傘�佷腑灞傚拰涓婂眰銆�", + userAnswer: "", + options: [ + { txt: "瀵规祦灞�", value: "A" }, + { txt: "鎽╂摝灞�", value: "B" }, + { txt: "涓眰鎬ユ祦", value: "C" } + ] + }, + { + txt: "瀵规祦灞傛槸鍦扮悆澶ф皵涓渶锛堛��锛夌殑涓�灞傘��", + userAnswer: "", + options: [ + { txt: "楂�", value: "A" }, + { txt: "浣�", value: "B" }, + { txt: "澶�", value: "C" } + ] + }, + { + txt: "鍦ㄩ鏈虹潃闄嗘椂锛屽皢楂樺害琛ㄦ寚绀洪珮搴﹀噺鍘绘満鍦烘爣楂樺氨绛変簬椋炴満璺濇満鍦鸿窇閬撻潰鐨勶紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "闀垮害", value: "A" }, + { txt: "楂樺害", value: "B" }, + { txt: "璺濈", value: "C" } + ] + }, + { + txt: "鏍规嵁鏍囧噯澶ф皵涓皵鍘嬩笌楂樺害鐨勫叧绯伙紝灏卞彲浠ヨ〃绀猴紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "楂樺害", value: "A" }, + { txt: "姘斿帇", value: "B" }, + { txt: "澶ф皵鍘�", value: "C" } + ] + }, + { + txt: "姘斿帇寮忛珮搴﹁〃鏄富瑕佺殑锛堛��锛変华琛ㄣ��", + userAnswer: "", + options: [ + { txt: "楂樺害", value: "A" }, + { txt: "澶ф皵鍘�", value: "B" }, + { txt: "鑸", value: "C" } + ] + }, + { + txt: "姘斿帇闅忛珮搴︾殑鍙樺寲褰撳ぇ姘斿浜庨潤姝㈢姸鎬侊紝鏌愪竴楂樺害涓婄殑姘斿帇鍊肩瓑浜庡叾鍗曚綅姘村钩闈㈢Н涓婃墍鎵垮彈鐨勪笂閮ㄥぇ姘旀煴鐨勯噸鍔涳紝闅忕潃楂樺害澧炲姞锛屽叾涓婇儴澶ф皵鏌辫秺鏉ヨ秺鐭紝涓旀皵鏌变腑绌烘皵瀵嗗害瓒婃潵瓒婂皬锛屾皵鏌遍噸鍔涗篃灏憋紙銆�锛夈��", + userAnswer: "", + options: [ + { txt: "瓒婂皬", value: "A" }, + { txt: "瓒婂ぇ", value: "B" }, + { txt: "涓嶅彉", value: "C" } + ] + }, + { + txt: "娲查檯寮归亾瀵煎脊鍙姷杈撅紙銆�锛夐琛屻��", + userAnswer: "", + options: [ + { txt: "鐢电灞�", value: "A" }, + { txt: "鐑眰", value: "B" }, + { txt: "浜戝眰", value: "C" } + ] + }, + { + txt: "锛堛��锛夌殑鍙樺寲浼氬奖鍝嶉琛屽櫒鐨勬棤绾跨數閫氫俊銆�", + userAnswer: "", + options: [ + { txt: "鐢电", value: "A" }, + { txt: "鐑眰", value: "B" }, + { txt: "浜戝眰", value: "C" } + ] + }, + { + txt: "锛堛��锛夌殑鐜颁唬姝煎嚮鏈哄拰渚﹀療鏈洪兘鑳藉湪骞虫祦灞備腑椋炶銆�", + userAnswer: "", + options: [ + { txt: "楂樻�ц兘", value: "A" }, + { txt: "浣庢�ц兘", value: "B" }, + { txt: "涓�ц兘", value: "C" } + ] + }, + { + txt: "锛堛��锛夈�侊紙銆�锛夊拰锛堛��锛夌О涓轰笁澶ф皵璞¤绱犮��", + userAnswer: "", + options: [ + { txt: "姘旀俯銆佹皵鍘嬨�佷簯", value: "A" }, + { txt: "姘旀俯銆佹皵鍘嬨�佺┖姘旀箍搴�", value: "B" }, + { txt: "姘旀俯銆佷簯銆侀檷姘�", value: "C" } + ] + }, + { + txt: "椋炶楂樺害灞傚簲褰撴牴鎹紙銆�锛夎绠椼��", + userAnswer: "", + options: [ + { txt: "鏍囧噯澶ф皵鍘嬫潯浠朵笅骞冲潎骞抽潰", value: "A" }, + { txt: "鏍囧噯澶ф皵鍘嬫潯浠朵笅鍋囧畾娴峰钩闈�", value: "B" }, + { txt: "瀹為檯澶ф皵鍘嬫潯浠朵笅鍋囧畾娴峰钩闈�", value: "C" } + ] + }, + { + txt: "锛堛��锛夋寚姘旇薄鍙版皵鍘嬭〃鐩存帴娴嬪緱鐨勬皵鍘嬨�傜敱浜庡悇娴嬬珯鎵�澶勭殑鍦扮悊浣嶇疆鍙婃捣鎷斾笉鍚岋紝鏈珯姘斿帇甯告湁杈冨ぇ宸紓銆�", + userAnswer: "", + options: [ + { txt: "鏈珯姘斿帇", value: "A" }, + { txt: "鍦洪潰姘斿帇", value: "B" }, + { txt: "淇娴峰钩闈㈡皵鍘�", value: "C" } + ] + } + ], + // 瑙嗛 + videoDataOne: { + videoMd5: [ + { + isCollectVideo: false, + handleMd5: "", + md5: this.resourceList[23], + name: "1-澶氭棆缈兼棤浜烘満姒傚康鍙婄粨鏋�", + }, + { + isCollectVideo: false, + handleMd5: "", + md5: this.resourceList[24], + name: "2-鏃犱汉鐩村崌鏈烘蹇典笌缁撴瀯", + }, + { + isCollectVideo: false, + handleMd5: "", + md5: this.resourceList[25], + name: "3-鍥哄畾缈兼棤浜烘満姒傚康涓庣粨鏋�", + }, + { + isCollectVideo: false, + handleMd5: "", + md5: this.resourceList[26], + name: "4-澶氾紙鍥涳級鏃嬬考鏃犱汉鏈哄竷灞�鍙婂叾鐗圭偣", + }, + ], + }, + videoDataTwo: { + videoMd5: [ + { + isCollectVideo: false, + handleMd5: "", + md5: this.resourceList[27], + name: "5-鏃犱汉鏈烘硶瑙勭殑鎰忎箟鍙婇粦椋炵殑鍗卞", + }, + { + isCollectVideo: false, + handleMd5: "", + md5: this.resourceList[28], + name: "6-绌哄煙鐨勫垎绫讳笌鍖哄埆", + }, + ], + }, + videoDataThree: { + videoMd5: [ + { + isCollectVideo: false, + handleMd5: "", + md5: this.resourceList[29], + name: "7-澶ф皵灞傜殑鍒掑垎鍙婂娴佸眰銆佸钩娴佸眰鐨勭壒鐐�", + }, + ], + }, + collectResourceList: [], + }; + }, + async mounted() { + const questionData = localStorage.getItem("UAVTechIntro-book-chapter001-questionData"); + if (questionData) { + this.questionData = JSON.parse(questionData); + } + + const tableData = localStorage.getItem("UAVTechIntro-book-chapter001-tableData"); + if (tableData) { + this.tableData = JSON.parse(tableData); + } + + const questionDataTwo = localStorage.getItem("UAVTechIntro-book-chapter001-questionDataTwo"); + if (questionDataTwo) { + this.questionDataTwo = JSON.parse(questionDataTwo); + } + + const questionDataThree = localStorage.getItem("UAVTechIntro-book-chapter001-questionDataThree"); + if (questionDataThree) { + this.questionDataThree = JSON.parse(questionDataThree); + } + this.getVidoePath() + this.collectResourceList = await getCollectResource( + this.config.activeBook.bookId + ); + }, + methods: { + async getVidoePath() { + for (let index = 0; index < this.videoDataOne.videoMd5.length; index++) { + const item = this.videoDataOne.videoMd5[index]; + if (item.md5 && !item.md5.includes("https:")) { + item.handleMd5 = await getResourcePath(item.md5); + } + } + + for (let index = 0; index < this.videoDataTwo.videoMd5.length; index++) { + const item = this.videoDataTwo.videoMd5[index]; + if (item.md5 && !item.md5.includes("https:")) { + item.handleMd5 = await getResourcePath(item.md5); + } + } + + for (let index = 0; index < this.videoDataThree.videoMd5.length; index++) { + const item = this.videoDataThree.videoMd5[index]; + if (item.md5 && !item.md5.includes("https:")) { + item.handleMd5 = await getResourcePath(item.md5); + } + } + }, + handleCollect(e) { + if (e.md5) { + this.handleCollectResource( + e.md5, + e.md5, + "", + "瑙嗛", + "bits", + "" + e.name + ); + e.isCollectVideo = !e.isCollectVideo; + } + }, + //璧勬簮鏀惰棌浜嬩欢 + // resourcePath 鏂囦欢璺緞锛� + // resourceType 鏂囦欢绫诲瀷 + // source 鏂囦欢鏉ユ簮 + handleCollectResource(id, md5, resourcePath, resourceType, source, resourceName) { + let list = this.collectResourceList + if (list.findIndex(item => item.id == id) > -1) { + list = list.filter(item => item.id != id) + } else { + list.push({ + id, + md5, + resourcePath, + resourceType, + source, + resourceName, + }) + } + this.collectResourceList = list + setCollectResource(this.config.activeBook.bookId, this.collectResourceList) + }, + + saveInputChoice() { + localStorage.setItem('UAVTechIntro-book-chapter001-questionData', JSON.stringify(this.questionData)) + }, + setBookTableData() { + localStorage.setItem('UAVTechIntro-book-chapter001-tableData', JSON.stringify(this.tableData)) + }, + + saveQuestionDataTwo() { + localStorage.setItem('UAVTechIntro-book-chapter001-questionDataTwo', JSON.stringify(this.questionDataTwo)) + }, + saveQuestionDataThree() { + localStorage.setItem('UAVTechIntro-book-chapter001-questionDataThree', JSON.stringify(this.questionDataThree)) + } + }, +}; +</script> + +<style lang="less" scoped></style> \ No newline at end of file diff --git a/src/books/UAVTechIntro/view/components/header.vue b/src/books/UAVTechIntro/view/components/header.vue new file mode 100644 index 0000000..c044df0 --- /dev/null +++ b/src/books/UAVTechIntro/view/components/header.vue @@ -0,0 +1,136 @@ +<template> + <div class="chapter" num="1"> + <!-- 灏侀潰 --> + <div class="page-box mt-20" page="1" style="padding-bottom: 0px"> + <div v-if="showPageList.indexOf(1) > -1"> + <img class="img-0" alt="" src="../../assets/images/Cover.jpg" /> + </div> + </div> + <!-- 鎵夐〉 --> + <div class="page-box mt-20" page="2" style="padding-bottom: 0px"> + <div v-if="showPageList.indexOf(2) > -1"> + <img class="img-0" alt="" src="../../assets/images/feiye.jpg" /> + </div> + </div> + <!-- 浠嬬粛椤甸潰 --> + <div class="page-box" page="3"> + <div v-if="showPageList.indexOf(3) > -1"> + <div style="margin: 0 auto; padding: 50% 40% 10% 10%;"> + <p class="td-1 fz-15 block2"><b>鍥句功鍦ㄧ増缂栫洰锛圕IP锛夋暟鎹�</b></p> + <p class="td-1 fz-15 block2"> + 鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�/榄忓叏鏂屼富缂栵紝鈥斿寳浜�:鍖椾含甯堣寖澶у鍑虹増绀撅紝2023.12 + </p> + <p class="td-1 fz-15 block2"> + 鑱屼笟鏁欒偛鑸┖瑁呭绫讳笓涓氣�滀骇鏁欒瀺鍚堚�濇柊褰㈡�佹暀鏉�/榄忓叏鏂屾�讳富缂� + </p> + <p class="td-1 fz-15 block2">ISBN 978-7-303-29775-7</p> + <p class="td-1 fz-15 block2"> + I. 鈶犳棤鈥︺��鈪�. 鈶犻瓘鈥︺��鈪�. 鈶犳棤浜洪┚椹堕鏈轰竴楂樼瓑鑱屼笟鏁欒偛涓�鏁欐潗銆�IV.鈶燰279 + </p> + <p class="td-1 fz-15 block2"> + 涓浗鍥藉鐗堟湰棣咰IP鏁版嵁鏍稿瓧(2024)绗�02473鍙� + </p> + <hr /> + <p class="td-0 fz-14 block3"> + 鍑虹増鍙戣锛氬寳浜笀鑼冨ぇ瀛﹀嚭鐗堢ぞ銆�https://www.bnupg.com + </p> + <p class="td-0 fz-14 block3"> + 銆�銆�銆�銆�銆�鍖椾含甯傝タ鍩庡尯鏂拌鍙e澶ц12-3鍙� + </p> + <p class="td-0 fz-14 block3">銆�銆�銆�銆�銆�閭斂缂栫爜锛�100088</p> + <p class="td-0 fz-14 block3">鍗般��銆�鍒凤細澶╂触涓嵃鑱斿嵃鍔℃湁闄愬叕鍙�</p> + <p class="td-0 fz-14 block3">缁忋��銆�閿�锛氬叏鍥芥柊鍗庝功搴�</p> + <p class="td-0 fz-14 block3">寮�銆�銆�鏈細889mm脳1194mm銆�1/16</p> + <p class="td-0 fz-14 block3">鍗般��銆�寮狅細11</p> + <p class="td-0 fz-14 block3">瀛椼��銆�鏁帮細245鍗冨瓧</p> + <p class="td-0 fz-14 block3">鐗堛��銆�娆★細2023骞�12鏈堢1鐗�</p> + <p class="td-0 fz-14 block3">鍗般��銆�娆★細2023骞�12鏈堢1娆″嵃鍒�</p> + <p class="td-0 fz-14 block3">瀹氥��銆�浠凤細38.00鍏�</p> + <hr /> + <p class="td-0 fz-15 block3"> + 绛栧垝缂栬緫锛氱帇浜戣嫳銆�銆�銆�銆�銆�銆�銆�璐d换缂栬緫锛氶┈鍔涙晱 + </p> + <p class="td-0 fz-15 block3"> + 缇庢湳缂栬緫锛氱劍銆�涓姐��銆�銆�銆�銆�銆�銆�瑁呭抚璁捐锛氱劍銆�涓� + </p> + <p class="td-0 fz-15 block3 mb-20"> + 璐d换鏍″锛氶檲銆�姘戙��銆�銆�銆�銆�銆�銆�璐d换鍗板埗锛氳档銆�榫� + </p> + <p class="td-0 block3 fz-16"><b>鐗堟潈鎵�鏈夈��渚垫潈蹇呯┒</b></p> + <p class="td-0 block3 fz-11">璇昏�呮湇鍔$數璇�:010-58806806</p> + <p class="td-0 block3 fz-11">濡傚彂鐜板嵃瑁呰川閲忛棶棰�,褰卞搷闃呰,璇疯仈绯诲嵃鍒剁鐞嗛儴:010-58800608</p> + </div> + </div> + </div> + <!-- 鍓嶈█ --> + <div class="page-box" page="5"> + <div v-if="showPageList.indexOf(5) > -1"> + <ul class="fl al-c jc-fe mr-70 pad-t-55 mb-45"> + <li class="headerText pNum">1</li> + <img class="headerImg mr-10" src="../../assets/images/yemei.png" alt="" /> + </ul> + <div style="padding: 0px 12% 136px 12%"> + <div class="fl"> + <div class="fl fd-c" style="margin: 0 0 100px 0"> + <div class="topBorder"></div> + <h1 id="a004" class="foreword">鍓嶈█</h1> + <div class="bottomBorder"></div> + </div> + </div> + <p class="preface"> + 涔犺繎骞虫�讳功璁板娆″己璋冩暀鑲插己鍥姐�佺鎶�寮哄浗锛屾槑纭寚鍑衡�滄暀鑲层�佺鎶�銆佷汉鎵嶆槸鍏ㄩ潰寤鸿绀句細涓讳箟鐜颁唬鍖栧浗瀹剁殑鍩虹鎬с�佹垬鐣ユ�ф敮鎾戔�濓紝杩欎负楂樼瓑鏁欒偛鐨勫彂灞曟彁鍑轰簡鏂版柟鍚戜笌鏂拌姹傘�傛嫢鎶辩鎶�锛岃凯浠f枃鏄庯紝澧炲己鑱屼笟鏁欒偛閫傚簲鎬э紝鍔犲揩鏋勫缓鐜颁唬鑱屼笟鏁欒偛浣撶郴锛屽煿鍏绘洿澶氶珮绱犺川绉戞妧搴旂敤鍨嬩汉鎵嶃�佹妧鏈妧鑳戒汉鎵嶃�佽兘宸ュ阀鍖犮�佸ぇ鍥藉伐鍖狅紝鏄亴涓氶櫌鏍$殑鍔炲浣垮懡銆� + </p> + <p class="preface"> + 鐜颁唬鏃犱汉鏈烘妧鏈互鍙婁互鏃犱汉鏈轰负杞戒綋鐨勬嫇灞曢」鐩凡缁忚搴旂敤鍒扮ぞ浼氬悇涓柟闈€�傞殢鐫�鏃犱汉鏈虹浉鍏虫妧鏈殑鍙戝睍鍜岃繍鐢ㄤ互鍙婃棤浜烘満浜т笟鐨勮摤鍕冨彂灞曪紝鐩稿叧棰嗗煙鐨勪笓涓氫汉鎵嶅煿鍏诲凡缁忔垚涓烘椂浠f墍闇�銆佽涓氭墍闇�銆傜劧鑰岋紝鎴戝浗鏃犱汉鏈鸿亴涓氭暀鑲茶捣姝ヨ緝鏅氾紝鏁欒偛杩囩▼涓己涔忓熀纭�銆佺郴缁熴�佷笓涓氱殑鏁欐潗銆備负瑙e喅杩欎竴闂锛屾垜浠壒缂栧啓浜嗘湰涔︺�� + </p> + <p class="preface"> + 鏈功渚濇嵁鏃犱汉鏈轰笓涓氭暀瀛︽寚瀵兼柟妗堬紝浠ュ強琛屼笟銆佽亴涓氭妧鏈鑼冨拰鐩稿叧娉曞緥娉曡缂栧啓鑰屾垚锛屽叏闈粙缁嶄簡鏃犱汉鏈哄熀纭�鐭ヨ瘑銆佺浉鍏冲簲鐢ㄦ柟鍚戙�佺幇鐘跺拰鏈潵鍙戝睍瓒嬪娍锛屼负杩涘叆鏃犱汉鏈哄簲鐢ㄦ妧鏈笓涓氬涔犵殑瀛︾敓鎻愪緵浜嗘墡瀹炵殑鐭ヨ瘑璁茶В銆傚箍澶ц鑰呬篃鑳藉湪瀛︿範鏈功鍚庯紝鎷撳睍鐭ヨ瘑闈紝鍩瑰吇鍏磋叮鐖卞ソ锛屽苟灏嗗涔犲埌鐨勬棤浜烘満鐭ヨ瘑鍜屾妧鏈繍鐢ㄥ埌瀹為檯宀椾綅瀹炶返涓紝杈惧埌瀛︿互鑷寸敤銆佽祴鑳藉疄闄呭伐浣滅殑鐩殑銆� + </p> + <p class="preface"> + 鏈功鍐呭鐨勯�夋嫨鍜岀紪鎺掞紝鍏呭垎鑰冭檻鍒板鐢熷師鏈夌煡璇嗙粨鏋勭殑鐗圭偣锛屽幓绻佷粠绠�銆佺敱鏄撳埌闅撅紝浣跨敤澶ч噺鍥剧墖鏉ヤ唬鏇挎娊璞$殑鐞嗚姒傚康锛岃鍒濆鑰呰兘澶熷揩閫熷湴鎺屾彙鏃犱汉鏈哄熀纭�鐭ヨ瘑锛屾彁楂樺涔犲叴瓒o紝涓烘繁鍏ュ涔犱笓涓氳绋嬫墦涓嬪潥瀹炵殑鍩虹銆� + </p> + <p class="preface"> + 鏈功缂栨帓绱у瘑缁撳悎绉戞妧鍙戝睍鍜岀ぞ浼氶渶姹傝秼鍔匡紝娉ㄩ噸瀹炵敤鎬у拰瓒e懗鎬э紝閫傚悎鑱屼笟闄㈡牎鏃犱汉鏈轰笓涓氬鐢熷拰鏃犱汉鏈虹埍濂借�呭涔犱娇鐢ㄣ�傛垜浠》蹇冨笇鏈涜繖鏈功鑳藉甯姪鏇村璇昏�呮帉鎻℃棤浜烘満鍩虹鐭ヨ瘑鍜屽熀鏈妧鏈紝鍔╁姏绉戞妧寮哄浗鍜屾棤浜烘満琛屼笟鍙戝睍銆� + </p> + <p class="preface"> + 鏈功鐢卞洓宸濇硾缇庢暀鑲叉姇璧勯泦鍥㈡湁闄愯矗浠诲叕鍙哥壍澶达紝鑱斿悎鍥涘窛瑗垮崡鑸┖鑱屼笟瀛﹂櫌銆佸寳浜俊鎭鎶�澶у銆佸寳浜伐涓氳亴涓氭妧鏈闄€�侀噾鍗庡競绗竴涓瓑鑱屼笟瀛︽牎绛夐櫌鏍★紝涓浗鑸┖鍣ㄦ嫢鏈夎�呭強椹鹃┒鍛樺崗浼氾紝浠ュ強鍖椾含鍚櫤澶╃┖绉戞妧鏈夐檺鍏徃銆佽嫃宸炴瀬鐩満鍣ㄤ汉绉戞妧鏈夐檺鍏徃绛変紒涓氬叡鍚岀紪鍐欍�傜紪鑰呬腑鏃㈡湁闀挎湡浠庝簨鑱屼笟鏁欒偛鐨勪笓瀹躲�佹暀鎺堛�佷竴绾挎暀甯堬紝瀵硅亴涓氶櫌鏍$殑瀛︽湳鐗圭偣鍜屾暀瀛﹁寰嬮潪甯哥啛鎮夛紱涔熸湁鍦ㄤ紒涓氬伐浣滃骞磋浆琛岃嚦楂樿亴闄㈡牎鐨勯珮绾у伐绋嬫妧鏈汉鍛橈紝瑙e喅闂鐨勬�濈淮瀵煎悜鍗佸垎鏄庣‘锛涜繕鏈夋棤浜烘満鍗忎細鍜屼紒涓氱殑鎶�鏈笓瀹跺拰楠ㄥ共锛屼繚璇佷簡鍐呭璐磋繎鐢熶骇宸ヤ綔瀹為檯銆� + </p> + </div> + </div> + </div> + <!-- 鍓嶈█ --> + <div class="page-box" page="6"> + <div v-if="showPageList.indexOf(6) > -1"> + <ul class="fl al-c jc-sb pad-t-55 pad-l-80 pad-r-80"> + <li class="header-left-Number"> + <span class="mr-10 pNum">2</span> + <span><span class="span-box-title"></span>鏃犱汉鏈哄簲鐢ㄦ妧鏈璁�<span class="span-box-title"></span></span> + </li> + <li class="header-left-text"> + <img class="img-c" src="../../assets/images/yemei01.png" alt="" /> + </li> + </ul> + <div class="bodystyle"> + <p class="preface">鏈功鐢遍瓘鍏ㄦ枌鎷呬换涓荤紪锛岃碍娴┿�佸鏂囩惓鎷呬换鍓富缂栵紝鍙傚姞缂栧啓鐨勮繕鏈夊緪涓广�佸嵖寤轰笢銆侀粍濠夊┓銆佸懆椋庢櫙銆佸懆浼熴�佽儭绁栫伀銆佽档鐝犵惇銆佹瘺鐟躲��</p> + <p class="preface">鍦ㄧ紪鍐欒繃绋嬩腑锛屽緱鍒颁簡鍥涘窛瑗垮崡鑸┖鑱屼笟瀛﹂櫌鏁欏姟澶勩�佺鐮斿鍙婂寳浜笀鑼冨ぇ瀛﹀嚭鐗堢ぞ锛堥泦鍥級鏈夐檺鍏徃鐨勫ぇ鍔涙敮鎸侊紝骞舵彁鍑轰簡瀹濊吹鐨勬寚瀵兼剰瑙侊紝鍦ㄦ涓�骞惰〃绀烘劅璋紒</p> + <p class="preface">鐢变簬缂栬�呰兘鍔涘拰姘村钩鏈夐檺锛屼功涓毦鍏嶆湁涓嶈冻涔嬪锛屾伋璇峰箍澶ц鑰呮壒璇勬寚姝o紝浠ヤ究鎴戜滑淇鏃跺姞浠ュ畬鍠勩��</p> + </div> + </div> + </div> + </div> +</template> +<script> +export default { + name: "pageHeader", + props: { + showPageList: { + type: Array, + }, + }, + data() { + return {}; + }, +}; +</script> + +<style lang="less" scoped></style> \ No newline at end of file diff --git a/src/books/UAVTechIntro/view/components/index.vue b/src/books/UAVTechIntro/view/components/index.vue new file mode 100644 index 0000000..1eca689 --- /dev/null +++ b/src/books/UAVTechIntro/view/components/index.vue @@ -0,0 +1,989 @@ +<template> + <div class="page-main" @scroll="throttledScrollHandler"> + <div id="searchDomBox" style="display: none"> + <div id="searchContent"></div> + </div> + <div class="page-content" :style="{ + fontSize: fontSize + 'px', + transform: `scale(${pageZoom})`, + transformOrigin: 'center top', + }"> + <pageHeader v-if="showCatalogList.indexOf(1) > -1" :showPageList="loadPageList"></pageHeader> + <chapterOne v-if="showCatalogList.indexOf(2) > -1" :showPageList="loadPageList" :resourceList="resourceList"> + </chapterOne> + <!-- <chapterTwo + v-if="showCatalogList.indexOf(3) > -1" + :showPageList="loadPageList" + ></chapterTwo> + <chapterThree + v-if="showCatalogList.indexOf(4) > -1" + :showPageList="loadPageList" + ></chapterThree> + <chapterFour + v-if="showCatalogList.indexOf(5) > -1" + :showPageList="loadPageList" + ></chapterFour>--> + <!-- <chapterFive + v-if="showCatalogList.indexOf(2) > -1" + :showPageList="loadPageList" + :interfaceQuestion="questionDataMap" + ></chapterFive> --> + </div> + </div> +</template> + +<script> +import Vue from "vue"; +import pageHeader from "./header.vue"; +import chapterOne from "./chapter001.vue"; +// import chapterTwo from "./chapter002.vue"; +// import chapterThree from "./chapter003.vue"; +// import chapterFour from "./chapter004.vue"; +// import chapterFive from "./chapter005.vue"; +import NoteIcon from "@/assets/images/biji.png"; +// import getQuestionList from "@/assets/methods/examination"; +// import testData from "../../assets/examinationList"; +import _ from "lodash"; +import Swiper from "swiper/bundle"; +import "swiper/swiper-bundle.css"; +import Viewer from "viewerjs"; +import "viewerjs/dist/viewer.css"; +export default { + name: "pageContent", + data() { + return { + catalogLength: 2, // 鎬荤珷鑺傛暟 + showCatalogList: [], // 鏄剧ず鐨勭珷鑺� + loadThreshold: 300, // 瑙﹀彂鍔犺浇闃堝�� + throttleThreshold: 100, // 鑺傛祦闃堝�� + previousScrollTop: 0, + throttledScrollHandler: null, + observer: null, + loadPageObserver: null, + loadPageList: [], + questionDataMap: {}, + renderSignMap: {}, + highlightData: null, + audioPath: "", + currentTime: null, + videoList: [], + resourceList: {}, + }; + }, + computed: { + fontSize() { + this.transformDom(this.$store.state.qiankun.fontSize); + return this.$store.state.qiankun.fontSize + ? this.$store.state.qiankun.fontSize + : 16; + }, + pageZoom() { + return this.$store.state.qiankun.scale + ? this.$store.state.qiankun.scale / 100 + : 1; + }, + }, + watch: { + showCatalogList: { + handler(newVal, oldVal) { + if ( + this.$store.state.qiankun && + this.$store.state.qiankun.catalogChange + ) { + // 璋冪敤鐖跺眰鏂规硶 + this.$store.state.qiankun.catalogChange({ + showCatalogList: newVal, + }); + } + // 鍚姩椤电爜瑙傚療 + setTimeout(() => { + this.initObservation(); + this.initThemeColor(); + }, 500); + }, + }, + loadPageList: { + handler(newVal, oldVal) { + setTimeout(() => { + this.transformDom(this.$store.state.qiankun.fontSize); + this.initSwiper(); + this.initViewer(); + this.closeAudio(); + this.closeVideo(); + }, 200); + }, + }, + pageZoom: { + handler(newVal, oldVal) { + const scrollBox = ( + this.container ? this.container : document + ).querySelector(".page-main"); + scrollBox.scrollTop = (scrollBox.scrollTop / oldVal) * newVal; + }, + }, + resourceList: { + handler(newVal, oldVal) { + this.resourceList = newVal; + }, + }, + }, + mounted() { + // 榛樿鍔犺浇绔犺妭 + this.showCatalogList = [1]; + // 婊氬姩鐩戝惉鑺傛祦 + this.throttledScrollHandler = _.throttle( + this.scrollFun, + this.throttleThreshold, + { leading: true, trailing: false } + ); + // 瀹氫箟瀛愬眰鏂规硶 + if (this.setGlobalState) { + // 鎻愪緵椤甸潰璺宠浆鍔熻兘 + this.setGlobalState({ + gotoPage: (catalog, page) => { + this.gotoPage(catalog, page); + }, + // 娓叉煋绗旇銆侀珮浜�佸垝绾� + renderSign: (type, data) => { + // 鍥犱负璋冩暣涓洪〉闈㈡噿鍔犺浇锛屾墍浠ユ覆鏌撴爣璁颁篃闇�瑕佹寜鐓ч〉闈㈣繘琛屽鐞嗭紝鍏堝偍瀛樻暟鎹紝椤甸潰鍔犺浇瀹屾垚鍐嶆覆鏌撳搴旂殑鏍囪锛� + this.handelSignData(type, data); + // this.renderSign(type, data); + }, + // 鍒犻櫎绗旇銆侀珮浜�佸垝绾� + delSign: (data) => { + this.delSign(data); + }, + // 鍏ㄦ枃妫�绱� + searchBookByKeyword: (keyword) => { + return this.searchTextByPage(keyword); + }, + // 璺宠浆妫�绱㈢粨鏋滀綅缃� + jumpSearchItem: (data) => { + this.searchItemLocation(data); + }, + }); + } + + // 鍒涘缓涓�涓柊鐨� Intersection Observer 瀹炰緥锛岀敤浜庤瀵熺洰鏍囧厓绱犲拰鎵ц鐩稿簲鐨勫洖璋冨嚱鏁般�� + // new IntersectionObserver(callback, options)锛氫娇鐢ㄤ箣鍓嶅畾涔夌殑 callback 鍥炶皟鍑芥暟鍜� options 閰嶇疆閫夐」鏉ュ垵濮嬪寲 Intersection Observer 瀹炰緥銆� + this.observer = new IntersectionObserver(this.pageChangeCallback, { + root: null, // 鎸囧畾鏍瑰厓绱狅紝杩欓噷璁句负 null锛岃〃绀洪�夊彇鏁翠釜瑙嗙獥浣滀负鏍瑰厓绱犮�� + rootMargin: "0px", // 鎸囧畾鏍瑰厓绱犵殑杈圭晫锛岃繖閲岃涓� "0px"锛岃〃绀烘牴鍏冪礌鐨勮竟鐣屽拰瑙嗙獥鐨勮竟鐣岄噸鍚� + threshold: 0.5, // 鎸囧畾浜ゅ弶姣斾緥锛岃繖閲岃涓� 0.5锛岃〃绀哄綋鐩爣鍏冪礌涓�鍗婃垨鏇村鏄剧ず鍦ㄨ绐椾腑鏃惰Е鍙戝洖璋冨嚱鏁般�� + }); + + this.loadPageObserver = new IntersectionObserver(this.loadPageCallback, { + root: null, // 鎸囧畾鏍瑰厓绱狅紝杩欓噷璁句负 null锛岃〃绀洪�夊彇鏁翠釜瑙嗙獥浣滀负鏍瑰厓绱犮�� + rootMargin: "0px", // 鎸囧畾鏍瑰厓绱犵殑杈圭晫锛岃繖閲岃涓� "0px"锛岃〃绀烘牴鍏冪礌鐨勮竟鐣屽拰瑙嗙獥鐨勮竟鐣岄噸鍚� + threshold: 0, // 鎸囧畾浜ゅ弶姣斾緥锛岃繖閲岃涓� 0.5锛岃〃绀哄綋鐩爣鍏冪礌涓�鍗婃垨鏇村鏄剧ず鍦ㄨ绐椾腑鏃惰Е鍙戝洖璋冨嚱鏁般�� + }); + + this.getBookResourceList(); + + // 鍚姩椤电爜瑙傚療 + setTimeout(() => { + this.initObservation(); + this.initThemeColor(); + }, 500); + + // 娴嬭瘯椤甸潰璺宠浆 + // setTimeout(() => { + // this.gotoPage(2, 11); + // }, 500); + + // const pageDom = (this.container ? this.container : document) + // .querySelector("#app") + // .querySelectorAll(".page-box"); + // 妫�绱� + // console.log(this.searchTextByPage("淇濇姢鍐呰剰鍣ㄥ畼"), "searchTextByPage"); + // 妫�绱㈣烦杞� + // this.searchItemLocation({ + // catalog: 2, + // page: 10, + // txt: " 杩愬姩绯荤粺鏄敱楠ㄣ�侀杩炵粨鍜岄楠艰倢涓夐儴鍒嗙粍鎴愮殑銆傚叏韬殑楠ㄩ�氳繃楠ㄨ繛缁撶粍鎴愪汉浣撻楠硷紙瑙佸浘1-1锛夈�傞楠兼槸浜轰綋鐨勬敮鏋讹紝鍏锋湁淇濇姢鍐呰剰鍣ㄥ畼銆佷緵鑲岃倝闄勭潃鍜屼綔涓鸿倢鑲夎繍鍔ㄧ殑鏉犳潌绛変綔鐢ㄣ�傚湪绁炵粡绯荤粺鐨勬敮閰嶄笅锛岃倢鑲夋敹缂╃壍鍔ㄦ墍闄勭潃鐨勯缁曠潃鍏宠妭杞姩锛屼娇韬綋浜х敓鍚勭鍔ㄤ綔銆傛墍浠ワ紝杩愬姩绯荤粺鍏锋湁杩愬姩銆佹敮鎸佸拰淇濇姢绛夊姛鑳斤紝骞煎勾鏃舵湡鐨勯楠艰繕鍏锋湁閫犺鍔熻兘銆� ", + // txtIndex: 57 + // }); + // }, 500); + + }, + methods: { + // setZoom1() { + // let scale = this.$store.state.qiankun.scale + 10; + // const scrollBox = ( + // this.container ? this.container : document + // ).querySelector(".page-main"); + // this.$store.commit("setZoom", scale); + // }, + // setZoom2() { + // let scale = this.$store.state.qiankun.scale - 10; + // const scrollBox = ( + // this.container ? this.container : document + // ).querySelector(".page-main"); + // this.$store.commit("setZoom", scale); + // }, + // 璇锋眰璧勬簮Json + async getBookResourceList() { + this.resourceList = await this.config.getBookResources( + process.env.VUE_APP_RESOURCE_CTX + (process.env.VUE_APP_ENV == "product" + ? process.env.VUE_APP_BOOK_ID + : "UAVTechIntro") + ); + }, + // 婊氬姩鐩戝惉 + scrollFun(event) { + this.handleVideoPicture(); + // 鍒ゆ柇鍚戜笂婊氬姩杩樻槸鍚戜笅婊氬姩 + if (event.target.scrollTop > this.previousScrollTop) { + this.getAduio(); + // 鍚戜笅 + const currentScrollTop = + event.target.scrollTop + event.target.offsetHeight; + if ( + currentScrollTop >= + event.target.scrollHeight - this.loadThreshold + ) { + console.log(1); + + // 鍒拌揪闃堝�� + if ( + this.showCatalogList[this.showCatalogList.length - 1] < + this.catalogLength + ) { + // 鍔犺浇涓嬩竴绔� + this.showCatalogList.push( + this.showCatalogList[this.showCatalogList.length - 1] + 1 + ); + if (this.showCatalogList.length > 3) { + // 瓒呰繃涓夌珷闅愯棌椤堕儴涓�绔� + this.showCatalogList.shift(); + } + } + } + } else if (event.target.scrollTop < this.previousScrollTop) { + this.handleAudio(); + // 鍚戜笂 + const currentScrollTop = event.target.scrollTop; + if (currentScrollTop <= this.loadThreshold) { + // 鍒拌揪闃堝�� + if (this.showCatalogList[0] > 0) { + // 鍔犺浇涓婁竴绔� + this.showCatalogList.unshift(this.showCatalogList[0] - 1); + if (this.showCatalogList.length > 3) { + // 瓒呰繃涓夌珷闅愯棌搴曢儴涓�绔� + this.showCatalogList.pop(); + } + } + } + } + // showCatalogList 褰撳墠鏄剧ず鐨勪笁涓珷鑺傦紝watch鐩戝惉浼犻�掔粰涓诲簲鐢� + // 鏇存柊涓婁竴娆℃粴鍔ㄧ殑浣嶇疆 + this.previousScrollTop = event.target.scrollTop; + }, + // 绔犺妭銆侀〉闈㈣烦杞� + gotoPage(catalog, page) { + if (catalog >= 0 && catalog <= this.catalogLength) { + // 澶勭悊娓叉煋绔犺妭 + if (catalog == 0) { + this.showCatalogList = [0, 1]; + } else if (catalog == this.catalogLength) { + this.showCatalogList = [ + this.catalogLength - 2, + this.catalogLength - 1, + this.catalogLength, + ]; + } else { + this.showCatalogList = [catalog - 1, catalog, catalog + 1]; + } + setTimeout(() => { + // 璺宠浆椤电爜 + const pageDom = ( + this.container ? this.container : document + ).querySelector(`[page="${page}"]`); + if (pageDom) { + pageDom.scrollIntoView(); + } else { + console.log("椤电爜閿欒锛�"); + } + }, 500); + } else { + console.log("绔犺妭閿欒锛�"); + } + }, + + // 澶勭悊鏍囪鏁版嵁 + handelSignData(type, data) { + if (this.loadPageList.indexOf(Number(data.page)) > -1) { + // 绔嬪嵆娓叉煋 + this.renderSign(type, data); + } + + // 鍌ㄥ瓨鏁版嵁 + if (!this.renderSignMap[type]) this.renderSignMap[type] = {}; + if (!this.renderSignMap[type][data.page]) + this.renderSignMap[type][data.page] = []; + this.renderSignMap[type][data.page].push(data); + }, + + // 娓叉煋鏍囪 + renderSign(type, data) { + // 鐖跺眰璁剧疆绂佹娓叉煋鏍囪鏃朵笉鍐嶈繘琛屾覆鏌� + if (this.$store.state.qiankun.disableSign) { + return false; + } + const existence = ( + this.container ? this.container : document + ).querySelector(`[dataid="${data.id}"]`); + // 鍘婚噸 + if (!existence) { + const pageDom = ( + this.container ? this.container : document + ).querySelector(`[page="${data.page}"]`); + // 鍒涘缓 createTreeWalker 杩唬鍣紝鐢ㄤ簬閬嶅巻鏂囨湰鑺傜偣锛屼繚瀛樺埌涓�涓暟缁� + const treeWalker = document.createTreeWalker( + pageDom, + NodeFilter.SHOW_TEXT + ); + const allTextNodes = []; + let currentNode = treeWalker.nextNode(); + while (currentNode) { + allTextNodes.push(currentNode); + currentNode = treeWalker.nextNode(); + } + for (let i = 0; i < allTextNodes.length; i++) { + const textDom = allTextNodes[i]; + if (textDom.textContent.indexOf(data.txt) > -1) { + let reg = new RegExp(`${data.txt}`, "ig"); + switch (type) { + case "Highlight": + // 楂樹寒 + textDom.parentNode.innerHTML = + textDom.parentNode.innerHTML.replace( + reg, + `<span datatype="Highlight" dataid="${data.id}" style="background: ${data.color};" class="highLight" onclick="signClick('Highlight','${data.id}','${data.chapterNum}')">${data.txt}</span>` + ); + break; + case "Dashing": + // 鍒掔嚎 + textDom.parentNode.innerHTML = + textDom.parentNode.innerHTML.replace( + reg, + `<span datatype="Dashing" dataid="${data.id}" style="text-decoration-color:${data.color};" class="underline" onclick="signClick('Dashing','${data.id}','${data.chapterNum}')">${data.txt}</span>` + ); + break; + case "Note": + // 绗旇 + textDom.parentNode.innerHTML = + textDom.parentNode.innerHTML.replace( + reg, + `<span datatype="Note" dataid="${data.id}" style="border-bottom-color:${data.color}" class="notesline" onclick="signClick('Note','${data.id}','${data.chapterNum}')" onmouseover="noteHover('Note','${data.id}','${data.chapterNum}')" onmouseout="noteOut('Note')">${data.txt}<img src="${NoteIcon}"/></span>` + ); + break; + } + } + } + } + }, + // 鍒犻櫎鏍囪娓叉煋 + delSign({ ids, type }) { + if (ids && ids.length) { + for (let i = 0; i < ids.length; i++) { + const id = ids[i]; + const dom = ( + this.container ? this.container : document + ).querySelector(`[dataid="${id}"]`); + dom.parentNode.innerHTML = dom.parentNode.innerHTML.replace( + dom.outerHTML, + dom.outerText + ); + } + } + if (type) { + const doms = ( + this.container ? this.container : document + ).querySelectorAll(`[datatype="${type}"]`); + for (let i = 0; i < doms.length; i++) { + const dom = doms[i]; + dom.parentNode.innerHTML = dom.parentNode.innerHTML.replace( + dom.outerHTML, + dom.outerText + ); + } + } + }, + initObservation() { + const sections = ( + this.container ? this.container : document + ).querySelectorAll(".page-box"); + sections.forEach((section) => { + if (this.config.activeBook && this.config.activeBook.tryPageCount) { + const page = section.getAttribute("page"); + if (Number(page) > this.config.activeBook.tryPageCount) { + let chapterDom = this.getParentWithClass(section, "chapter"); + const chapterNum = chapterDom.getAttribute("num"); + this.catalogLength = Number(chapterNum) - 1; + section.remove(); + return false; + } + } + // observer 瑙傚療姣忎釜鍏冪礌锛屼互渚垮湪瀹冧滑杩涘叆鎴栫寮�瑙嗙獥鏃惰Е鍙戝洖璋冨嚱鏁般�� + const isObserver = section.getAttribute("observer"); + const isLoadObserver = section.getAttribute("loadObserver"); + if (!isObserver) { + this.observer.observe(section); + section.setAttribute("observer", "1"); + } + if (!isLoadObserver) { + this.loadPageObserver.observe(section); + section.setAttribute("loadObserver", "1"); + } + }); + }, + initThemeColor() { + // 鑾峰彇鍚勭闇�瑕佷富棰樿壊鐨勮妭鐐� + const colorDom = ( + this.container ? this.container : document + ).querySelectorAll(".theme-color"); + const backgroundColorDom = ( + this.container ? this.container : document + ).querySelectorAll(".theme-back"); + const borderColorDom = ( + this.container ? this.container : document + ).querySelectorAll(".theme-border"); + // 鑾峰彇閰嶇疆鐨勪富棰樿壊 + const bookThemeColor = + this.config.activeBook && this.config.activeBook.bookThemeColor + ? this.config.activeBook.bookThemeColor + : null; + const chapterThemeColor = + this.config.activeBook && this.config.activeBook.chapterThemeColor + ? this.config.activeBook.chapterThemeColor + : null; + const pageThemeColor = + this.config.activeBook && this.config.activeBook.pageThemeColor + ? this.config.activeBook.pageThemeColor + : null; + colorDom.forEach((domItem) => { + // 鑾峰彇绔犺妭銆侀〉鐮� + let pageDom = this.getParentWithClass(domItem, "page-box"); + let chapterDom = this.getParentWithClass(domItem, "chapter"); + let page, chapterNum; + if (pageDom) page = pageDom.getAttribute("page"); + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + // 鍚戜笂鍖归厤涓婚鑹� + const themeColor = + page && pageThemeColor && pageThemeColor[page] + ? pageThemeColor[page] + : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] + ? chapterThemeColor[chapterNum] + : bookThemeColor; + if (themeColor) { + domItem.style.color = themeColor; + } + }); + backgroundColorDom.forEach((domItem) => { + // 鑾峰彇绔犺妭銆侀〉鐮� + let pageDom = this.getParentWithClass(domItem, "page-box"); + let chapterDom = this.getParentWithClass(domItem, "chapter"); + let page, chapterNum; + if (pageDom) page = pageDom.getAttribute("page"); + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + // 鍚戜笂鍖归厤涓婚鑹� + const themeColor = + page && pageThemeColor && pageThemeColor[page] + ? pageThemeColor[page] + : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] + ? chapterThemeColor[chapterNum] + : bookThemeColor; + if (themeColor) { + domItem.style.backgroundColor = themeColor; + } + }); + borderColorDom.forEach((domItem) => { + // 鑾峰彇绔犺妭銆侀〉鐮� + let pageDom = this.getParentWithClass(domItem, "page-box"); + let chapterDom = this.getParentWithClass(domItem, "chapter"); + let page, chapterNum; + if (pageDom) page = pageDom.getAttribute("page"); + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + // 鍚戜笂鍖归厤涓婚鑹� + const themeColor = + page && pageThemeColor && pageThemeColor[page] + ? pageThemeColor[page] + : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] + ? chapterThemeColor[chapterNum] + : bookThemeColor; + if (themeColor) { + domItem.style.borderColor = themeColor; + } + }); + }, + getParentWithClass(element, className) { + while (element.parentElement) { + element = element.parentElement; + if (element.classList.contains(className)) { + return element; + } + } + }, + pageChangeCallback(entries, observer) { + //entries锛氫唬琛ㄨ瀵熷埌鐨勭洰鏍囧厓绱犵殑闆嗗悎銆� observer锛氫唬琛ㄨ瀵熻�呭璞°�� + entries.forEach((entry) => { + //entry.isIntersecting锛氭鏌ュ綋鍓嶇洰鏍囧厓绱犳槸鍚︿笌鏍瑰厓绱犵浉浜ゃ�� + if (entry.isIntersecting) { + const target = entry.target; + //entry.target锛氳幏鍙栧綋鍓嶇洰鏍囧厓绱� + const page = target.getAttribute("page"); + const catalogDom = this.tool.getParentNodeByClassName( + target, + "chapter" + ); + const catalog = catalogDom.getAttribute("num"); + let text = null; + if (target.querySelector("p")) { + text = target.querySelector("p").textContent.substring(0, 50); + } + // 杩斿洖椤电爜鍜岀珷鑺備俊鎭� + if (this.$store.state.qiankun && this.$store.state.qiankun.pageChange) + this.$store.state.qiankun.pageChange({ + page: page, + catalog: catalog, + text, + }); + // const sections = Array.from(document.querySelectorAll(".section")); + //sections锛氳幏鍙栨墍鏈夊叿鏈� .section 绫诲悕鐨勫厓绱狅紝骞惰浆鎹负鏁扮粍銆� + // let index = sections.findIndex((section) => section === target) + 1; + //index锛氭煡鎵惧綋鍓嶇洰鏍囧厓绱犲湪 sections 鏁扮粍涓殑绱㈠紩锛屽苟鍔� 1锛岀敤浜庣‘瀹氬綋鍓嶉〉鐮併�� + } + }); + }, + loadPageCallback(entries, observer) { + entries.forEach(async (entry) => { + if (entry.isIntersecting) { + const target = entry.target; + const page = target.getAttribute("page"); + if (this.loadPageList.indexOf(Number(page)) == -1) { + const catalogDom = this.tool.getParentNodeByClassName( + target, + "chapter" + ); + // 娣诲姞椤电爜 + this.loadPageList.push(Number(page)); + const catalog = catalogDom.getAttribute("num"); + // if (!this.questionDataMap[page]) { + // if (testData && testData[catalog]) { + // if (testData[catalog][page]) { + // if (Array.isArray(testData[catalog][page])) { + // this.questionDataMap[page] = await getQuestionList( + // page, + // testData[catalog][page], + // this.config.activeBook + // ); + // } else { + // const obj = {}; + // for (let key in testData[catalog][page]) { + // obj[key] = await getQuestionList( + // [], + // testData[catalog][page][key], + // this.config.activeBook + // ); + // } + // this.questionDataMap[page] = obj; + // } + // console.log("棰樼洰", this.questionDataMap); + // } + // } + // } + // 娓叉煋杩欎竴椤电殑鏍囪 + for (const key in this.renderSignMap) { + if (this.renderSignMap[key][page]) { + this.renderSignMap[key][page].forEach((item) => { + this.renderSign(key, item); + }); + } + } + // 澶勭悊楂樹寒 + if (this.highlightData) { + // 楂樹寒琛� + setTimeout(() => { + // 鑾峰彇椤甸潰鎵�鏈塼ext鑺傜偣 + const pageTextList = document.createTreeWalker( + target, + NodeFilter.SHOW_TEXT + ); + // 鍖归厤鍏抽敭瀛� + const allPageTextNodes = []; + let currentNode = pageTextList.nextNode(); + while (currentNode) { + allPageTextNodes.push(currentNode); + currentNode = pageTextList.nextNode(); + } + for (let i = 0; i < allPageTextNodes.length; i++) { + const textDom = allPageTextNodes[i]; + let txtIndex = textDom.textContent.indexOf( + this.highlightData.txt + ); + if (txtIndex > -1) { + textDom.parentNode.style.transition = + "background-color 0.8s"; + textDom.parentNode.scrollIntoView(); + textDom.parentNode.style.backgroundColor = "#79bbf0"; + setTimeout(() => { + textDom.parentNode.style.backgroundColor = ""; + }, 1000); + } + } + }, 100); + } + if (this.loadPageList.length > 5) { + // 瓒呰繃5椤� + this.loadPageList.shift(); + } + } + } + }); + }, + initSwiper() { + const doms = ( + this.container ? this.container : document + ).querySelectorAll(".swiper-img"); + for (let i = 0; i < doms.length; i++) { + const dom = doms[i]; + new Swiper(dom, { + loop: false, // 鏃犵紳 + autoplay: { + //鑷姩寮�濮� + delay: 3000, //鏃堕棿闂撮殧 + disableOnInteraction: false, //*鎵嬪姩鎿嶄綔杞挱鍥惧悗涓嶄細鏆傚仠* + }, + paginationClickable: true, + slidesPerView: 1, // 涓�缁勪笁涓� + spaceBetween: 30, // 闂撮殧 + // 濡傛灉闇�瑕佸墠杩涘悗閫�鎸夐挳 + navigation: { + nextEl: dom.querySelector(".swiper-button-next"), + prevEl: dom.querySelector(".swiper-button-prev"), + }, + // 绐楀彛鍙樺寲,閲嶆柊init,閽堝F11鍏ㄥ睆鍜屾斁澶х缉灏�,蹇呴』鍔� + // observer: true, + // observeParents: true + // // 濡傛灉闇�瑕佸垎椤靛櫒 + // pagination: { + // el: (this.container ? this.container : document).querySelector( + // ".swiper-pagination" + // ), + // clickable: true // 鍒嗛〉鍣ㄥ彲浠ョ偣鍑� + // } + }); + } + const pptDoms = ( + this.container ? this.container : document + ).querySelectorAll(".swiper_ppt"); + for (let i = 0; i < pptDoms.length; i++) { + const dom = pptDoms[i]; + new Swiper(dom, { + loop: false, // 鏃犵紳 + autoplay: false, + paginationClickable: true, + slidesPerView: 1, // 涓�缁勪笁涓� + spaceBetween: 30, // 闂撮殧 + // 濡傛灉闇�瑕佸墠杩涘悗閫�鎸夐挳 + navigation: { + nextEl: dom.querySelector(".swiper-button-next"), + prevEl: dom.querySelector(".swiper-button-prev"), + }, + // 绐楀彛鍙樺寲,閲嶆柊init,閽堝F11鍏ㄥ睆鍜屾斁澶х缉灏�,蹇呴』鍔� + observer: true, + observeParents: true, + on: { + init: (value) => { + let currentPage = value.activeIndex + 1; // 鑾峰彇褰撳墠椤碉紙浠�1寮�濮嬭鏁帮級 + let totalPages = value.slides.length; // 鑾峰彇鎬婚〉鏁� + var paginationInfoEl = dom.querySelector(".pageBox"); + if (paginationInfoEl) + paginationInfoEl.textContent = currentPage + "/" + totalPages; + }, + slideChange: (value) => { + let currentPage = value.activeIndex + 1; // 鑾峰彇褰撳墠椤碉紙浠�1寮�濮嬭鏁帮級 + let totalPages = value.slides.length; // 鑾峰彇鎬婚〉鏁� + var paginationInfoEl = dom.querySelector(".pageBox"); + if (paginationInfoEl) + paginationInfoEl.textContent = currentPage + "/" + totalPages; + }, + }, + }); + } + }, + initViewer() { + const doms = ( + this.container ? this.container : document + ).querySelectorAll(".openImgBox"); + for (let i = 0; i < doms.length; i++) { + const dom = doms[i]; + new Viewer(dom, { + container: this.container + ? this.container.querySelector("#app") + : "body", + navbar: true, // 鏄剧ず瀵艰埅鏍� + toolbar: true, // 鏄剧ず宸ュ叿鏍� + title: true, // 鏄剧ず鏍囬 + }); + } + }, + // 鏍规嵁鍏抽敭瀛楀叏鏂囨绱� + searchTextByPage(keyword) { + const searchResult = []; + let catalogIndex = 0; + // 鎵�鏈夌珷鑺傜粍浠讹紙姣忔湰涔﹀埗浣滄椂鍗曠嫭閰嶇疆锛� + const pageData = { + pageHeader, + chapterOne, + // chapterTwo, + // chapterThree, + // chapterFour, + // chapterFive, + }; + // 閬嶅巻鎵�鏈夌珷鑺傛枃浠� + for (const key in pageData) { + catalogIndex++; + let pageComponent, pageExample; + // 鍏堟覆鏌撲竴娆″綋鍓嶇珷鑺傛枃浠讹紙杩欐椂椤甸潰鐨勫唴瀹逛负绌猴級锛岃幏鍙栭〉鐮佷俊鎭� + pageComponent = Vue.extend(pageData[key]); + pageExample = new pageComponent({ + propsData: { + showPageList: [], + questionData: {}, + isSearch: true, + }, + }); + pageExample.$mount( + (this.container ? this.container : document).querySelector( + "#searchContent" + ) + ); + // 鑾峰彇椤电爜 + const pageDom = (this.container ? this.container : document) + .querySelector("#searchDomBox") + .querySelectorAll(".page-box"); + const pages = []; + for (let i = 0; i < pageDom.length; i++) { + const pageDomItem = pageDom[i]; + pages.push(Number(pageDomItem.getAttribute("page"))); + } + // 鑾峰彇椤甸潰缁撴潫锛屽嵏杞介攢姣� + pageExample.$destroy(); + (this.container ? this.container : document).querySelector( + "#searchDomBox" + ).innerHTML = '<div id="searchContent"></div>'; + // 閬嶅巻椤电爜 + if (pages.length) { + for (let i = 0; i < pages.length; i++) { + const pageNum = pages[i]; + // 鍔ㄦ�佹覆鏌撳搴旂珷鑺傜殑椤电爜 + pageComponent = Vue.extend(pageData[key]); + pageExample = new pageComponent({ + propsData: { + showPageList: [pageNum], + questionData: {}, + isSearch: true, + }, + }); + pageExample.$mount( + (this.container ? this.container : document).querySelector( + "#searchContent" + ) + ); + // 鑾峰彇瀵瑰簲椤甸潰dom + const thisPageDom = (this.container ? this.container : document) + .querySelector("#searchDomBox") + .querySelector(`[page="${pageNum}"]`); + if (thisPageDom) { + // 鑾峰彇椤甸潰鎵�鏈塼ext鑺傜偣 + const pageTextList = document.createTreeWalker( + thisPageDom, + NodeFilter.SHOW_TEXT + ); + // 鍖归厤鍏抽敭瀛� + const allPageTextNodes = []; + let currentNode = pageTextList.nextNode(); + while (currentNode) { + allPageTextNodes.push(currentNode); + currentNode = pageTextList.nextNode(); + } + for (let i = 0; i < allPageTextNodes.length; i++) { + const textDom = allPageTextNodes[i]; + let txtIndex = textDom.textContent.indexOf(keyword); + if (txtIndex > -1) { + // 璁板綍鍏抽敭瀛楁墍鍦ㄩ〉鐮併�佺珷鑺備互鍙婂尮閰嶅埌鐨勬钀� + searchResult.push({ + page: pageNum, + catalog: catalogIndex, + txt: textDom.textContent, + txtIndex: txtIndex, + }); + } + } + // 缁撴潫锛屽嵏杞介攢姣� + pageExample.$destroy(); + (this.container ? this.container : document).querySelector( + "#searchDomBox" + ).innerHTML = '<div id="searchContent"></div>'; + } + } + } + } + // 杈撳嚭鎼滅储缁撴灉 + console.log(searchResult); + return searchResult; + }, + // 鏍规嵁妫�绱㈢粨鏋滆烦杞搴斾綅缃苟楂樹寒 + searchItemLocation(data) { + // 璁板綍楂樹寒淇℃伅 + this.highlightData = data; + // 璺宠浆 + this.gotoPage(data.catalog, data.page, () => { }); + }, + // 椤甸潰鍚戜笅婊氬姩锛岄煶棰戝皬绐楁挱鏀惧姛鑳� + getAduio() { + let allVideo = ( + this.container ? this.container : document + ).querySelectorAll(".audio"); + allVideo = Array.from(allVideo); + this.videoList = allVideo; + if (allVideo.length) { + // 鏌ユ壘鎾斁鐘舵�佺殑鏈�鍚庝竴鏉¢煶棰� + const playAudio = allVideo + .reverse() + .find((item) => item.paused == false); + if (playAudio) { + const bottomGap = playAudio.getBoundingClientRect().bottom; + if (bottomGap < 0) { + playAudio.pause(); + this.audioPath = playAudio.src; + this.currentTime = playAudio.currentTime; + } + } + } + }, + // 椤甸潰鍚戜笂婊氬姩锛岄煶棰戝皬绐楀洖鏀� + handleAudio() { + if (!this.audioPath) return false; + let allVideo = ( + this.container ? this.container : document + ).querySelectorAll(".audio"); + allVideo = Array.from(allVideo); + if (allVideo.length) { + //鏌ユ壘涓庡皬绐楁挱鏀鹃煶棰戝悓婧愮殑椤甸潰audio DOM + const playAudio = allVideo.find((item) => item.src == this.audioPath); + if (playAudio) { + const bottomGap = playAudio.getBoundingClientRect().bottom; + if (bottomGap >= 0) { + if (this.$refs.audioPlayer) { + const playerState = this.$refs.audioPlayer.getVideoPlayer(); + this.audioPath = ""; + playAudio.currentTime = playerState.currentTime; + if (!playerState.paused) playAudio.play(); + } + } + } + } + }, + // 鍏抽棴mini video + closeMiniAudio() { + this.audioPath = ""; + }, + // 鐐瑰嚮闊抽鎾斁锛屽叧闂叾浠栭煶棰� + closeAudio() { + let allAudio = ( + this.container ? this.container : document + ).querySelectorAll(".audio"); + for (let index = 0; index < allAudio.length; index++) { + const item = allAudio[index]; + item.addEventListener("play", () => { + const audioList = Array.from(allAudio); + for (let cindex = 0; cindex < audioList.length; cindex++) { + const citem = audioList[cindex]; + if (citem.currentSrc != item.src) { + citem.pause(); + } + } + this.closeMiniAudio(); + }); + } + }, + // 鐐瑰嚮瑙嗛鍏抽棴鍏朵粬 + closeVideo() { + let allVideo = ( + this.container ? this.container : document + ).querySelectorAll(".video"); + for (let index = 0; index < allVideo.length; index++) { + const item = allVideo[index]; + item.addEventListener("playing", (item) => { + const path = item.srcElement.src; + const videoList = Array.from(allVideo); + for (let cindex = 0; cindex < videoList.length; cindex++) { + const citem = videoList[cindex]; + if (citem.currentSrc != path && path) { + citem.pause(); + } + } + }); + } + }, + // 瑙嗛灏忕獥 + handleVideoPicture() { + let doms = (this.container ? this.container : document).querySelectorAll( + ".video" + ); + doms = Array.from(doms); + if (!doms.length) return false; + const playVudio = doms.reverse().find((item) => item.paused == false); + if (playVudio) { + const bottomGap = playVudio.getBoundingClientRect().bottom; + const topGap = playVudio.getBoundingClientRect().top; + if (bottomGap < 0 || topGap > window.innerHeight) { + try { + if (playVudio.readyState) playVudio.requestPictureInPicture(); + } catch (error) { + console.log(error, "灏忕獥閿欒error"); + } + } + } + }, + //鍏朵粬绫诲悕涓嬪瓧浣撳ぇ灏忓彉鍖� + transformDom(fs) { + if (!fs) return; + let doms = (this.container ? this.container : document).querySelectorAll( + ".block" + ); + if (!doms.length) return; + for (let index = 0; index < doms.length; index++) { + const dom = doms[index]; + dom.style.fontSize = fs + "px"; + } + }, + }, + components: { + pageHeader, + chapterOne, + // chapterTwo, + // chapterThree, + // chapterFour, + // chapterFive, + }, +}; +</script> + +<style lang="less" scoped> +.page-main { + width: 100% !important; + height: 100% !important; + overflow: auto; + + .page-content { + max-width: 816px; + min-width: 375px; + margin: 0 auto; + padding-bottom: 100px; + } +} +</style> diff --git a/src/books/UAVTechIntro/view/index.vue b/src/books/UAVTechIntro/view/index.vue new file mode 100644 index 0000000..588cc59 --- /dev/null +++ b/src/books/UAVTechIntro/view/index.vue @@ -0,0 +1,80 @@ +<template> + <div class="UAVTechIntro-book" @mouseup="handleMouseUp"> + <pageContent></pageContent> + </div> + </template> + + <script> + import pageContent from "./components/index.vue"; + export default { + name: "UAVTechIntro-book", + components: { + pageContent, + }, + computed: { + fontSize() { + return this.$store.state.qiankun.fontSize; + }, + pageZoom() { + return this.$store.state.qiankun.scale / 100; + }, + }, + + methods: { + getParentWithClass(element, className) { + while (element.parentElement) { + element = element.parentElement; + if (element.classList.contains(className)) { + return element; + } + } + }, + handleMouseUp(e) { + const selection = ( + this.container ? this.container : window + ).getSelection(); + const txt = selection.toString(); + if (selection.type != "none" && txt) { + let node = selection.anchorNode.parentNode; + let pageHtml = this.getParentWithClass( + selection.anchorNode, + "page-box" + ); + let chapterDom = this.getParentWithClass( + selection.anchorNode, + "chapter" + ); + let chapterNum; + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + if (pageHtml) { + const page = pageHtml.getAttribute("page"); + // 鐩戝惉閫変腑鏂囨湰浜嬩欢锛屽苟瑙﹀彂鐖跺眰鏂规硶 + if (this.$store.state.qiankun.windowSelection) { + this.$store.state.qiankun.windowSelection({ + chapterNum, + txt, + page, + x: e.x, + y: e.y, + }); + } + } + } else { + if (this.$store.state.qiankun.windowSelection) { + this.$store.state.qiankun.windowSelection({ + chapterNum: "", + txt: "", + page: "", + x: e.x, + y: e.y, + }); + } + } + }, + }, + }; + </script> + + <style lang="less"> + @import "../assets/main.less"; + </style> \ No newline at end of file diff --git a/src/books/aviationEtiquette/view/components/index.vue b/src/books/aviationEtiquette/view/components/index.vue index c060256..65f3c20 100644 --- a/src/books/aviationEtiquette/view/components/index.vue +++ b/src/books/aviationEtiquette/view/components/index.vue @@ -167,7 +167,7 @@ //娴嬭瘯椤甸潰璺宠浆 // setTimeout(() => { - // this.gotoPage(4, 117); + // this.gotoPage(4, 99); // }, 500); // const pageDom = (this.container ? this.container : document) diff --git a/src/books/civilPassengerTransport/assets/main.less b/src/books/civilPassengerTransport/assets/main.less new file mode 100644 index 0000000..d194af5 --- /dev/null +++ b/src/books/civilPassengerTransport/assets/main.less @@ -0,0 +1,1565 @@ +.civilPassengerTransport-book { + width: 100%; + height: 100%; + + // 鑷畾涔夊唴瀹� + .page-box { + box-sizing: border-box; + min-height: 1128px; + margin-bottom: 20px; + box-shadow: 0 3px 6px 1px #00000029; + background-color: #fff; + } + + .c-g { + color: green; + } + + .c-r { + color: red; + } + + .t-right { + text-align: right; + } + + .mr-0 { + margin: 0; + } + + .mt-20 { + margin-top: 20px !important; + } + + .mt-30 { + margin-top: 30px; + } + + .mb-30 { + margin-bottom: 30px; + } + + .mb-10 { + margin-bottom: 10px; + } + + .pd-5 { + padding: 0 5px; + } + + .w100 { + width: 100%; + } + + .w90 { + width: 90%; + } + + + .w80 { + width: 80%; + } + + + sup { + vertical-align: super; + /* 淇濇寔涓婃爣瀵归綈鏂瑰紡 */ + font-size: smaller; + // position: relative; /* 鐩稿浜庢甯镐綅缃皟鏁� */ + // top: -0.2em; /* 鏍规嵁闇�瑕佽皟鏁磋繖涓�� */ + } + + .fz-13 { + font-size: 13px !important; + } + + .fz-14 { + font-size: 14px !important; + } + + .fz-16 { + font-size: 16px !important; + } + + .fz-18 { + font-size: 18px !important; + } + + + .img-0 { + width: 100%; + } + + .pt-20 { + padding-top: 20px; + } + + .td-0 { + text-indent: 0em !important; + } + + .fl { + display: flex; + } + + .ju-cn { + justify-content: center; + } + + .ju-ev { + justify-content: space-evenly; + } + + .fd-c { + flex-direction: column; + } + + .fd-r { + flex-direction: row-reverse; + } + + .al-c { + align-items: center; + } + + .al-fe { + align-items: flex-end; + } + + .ac-f { + align-content: flex-end; + } + + .jc-fe { + justify-content: flex-end; + } + + .jc-c { + justify-content: center; + } + + .jc-sa { + justify-content: space-around + } + + .mr-70 { + margin-right: 70px; + } + + .mr-45 { + margin-right: 45px; + } + + .mr-10 { + margin-right: 10px; + } + + .ma-l { + margin-left: 10%; + } + + .pad-t-55 { + padding-top: 55px; + } + + .pad-l-60 { + padding-left: 60px; + } + + .mb-45 { + margin-bottom: 45px; + } + + .headerImg { + width: 30px; + } + + .headerText { + font-size: 12px; + padding: 0 8px; + color: #B98C64; + } + + .headerNumber { + color: #231F20; + font-size: 12px; + padding: 0 8px; + border-left: 1px solid #231F20; + } + + .header-left-Number { + color: #231F20; + font-size: 12px; + padding-right: 8px; + border-right: 1px solid #000; + } + + .header-left-text { + margin-left: 8px; + font-size: 12px; + color: #fff; + background-color: #0082D4; + } + + .table-tr-bc { + color: #fff; + } + + .task { + width: 16%; + margin-bottom: 3.5em; + margin-top: 0; + border-top: 0.7em solid #5192C6; + } + + .task-u2-c { + width: 16%; + margin-bottom: 3.5em; + margin-top: 0; + border-top: 0.7em solid #F89C1C; + } + + .task-u3-c { + width: 16%; + margin-bottom: 3.5em; + margin-top: 0; + border-top: 0.7em solid #0A9CAC; + } + + .task-u4-c { + width: 16%; + margin-bottom: 3.5em; + margin-top: 0; + border-top: 0.7em solid #92B03D; + } + + .task-u5-c { + width: 16%; + margin-bottom: 3.5em; + margin-top: 0; + border-top: 0.7em solid #0180CD; + } + + + + .p-odd { + padding-right: 10%; + } + + .p-even { + padding-left: 10%; + } + + .img-float-smaller { + width: 200px; + float: left; + height: auto; + margin: auto; + margin-right: 20px; + } + + .img-float-medium { + width: 250px; + float: left; + height: auto; + margin: auto; + margin-right: 20px; + } + + + + .img-float { + width: 310px; + float: left; + height: auto; + margin: auto; + margin-right: 20px; + + img { + width: 100%; + } + + p { + margin: 0; + } + } + + + .img-float-formula { + width: 310px; + float: left; + height: auto; + margin: auto; + margin-right: 20px; + + p { + margin: 0; + } + } + + .img-rights { + width: 47%; + float: right; + height: auto; + margin: auto; + margin-left: 20px; + + img { + width: 100%; + } + + p { + margin: 0 !important; + } + } + + .references { + margin-top: 140px; + + hr { + font-weight: bold; + margin-left: 0; + width: 15%; + } + } + + .w395 { + width: 395px; + } + + .w430 { + width: 430px; + } + + .w280 { + width: 280px; + } + + .w270 { + width: 270px; + } + + .w250 { + width: 250px; + } + + .w230 { + width: 230px; + } + + .w220 { + width: 220px; + } + + .w200 { + width: 200px; + } + + .w180 { + width: 180px; + } + + .w115 { + width: 115px; + } + + + + .text-rights { + width: 230px; + float: right; + height: auto; + margin: auto; + margin-left: 20px; + + img { + width: 100%; + } + + p { + margin: 0 !important; + } + } + + + + .pdf-text { + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: flex-start; + margin-bottom: 20px; + + p { + margin: 0; + margin-right: 10px; + } + + .pdf-con { + display: flex; + justify-content: flex-start; + align-items: center; + padding: 10px 0; + box-sizing: border-box; + border-radius: 10px; + + .pdf-view { + min-width: 160px; + display: flex; + justify-content: center; + align-items: center; + border: 0.15em dashed #895B2E; + margin-right: 15px; + padding: 0 15px; + border-radius: 5px; + margin-top: 15px; + + span { + font-size: 14px; + text-align: center; + font-family: 'FZLTXIHJW'; + display: flex; + align-items: center; + justify-content: flex-start; + + svg { + fill: #895B2E; + } + } + + span:nth-child(2) { + padding-top: 5px; + box-sizing: border-box; + } + + span:hover { + color: #895B2E; + cursor: pointer; + text-decoration: underline; + -webkit-user-select: none; + /* Safari 3.1+ */ + -moz-user-select: none; + /* Firefox 2+ */ + -ms-user-select: none; + /* IE 10+ */ + user-select: none; + /* 鏍囧噯璇硶 */ + } + } + } + + .pdf-con-15 { + margin-top: -20px; + } + } + + div.bk-ztgs { + border: 0.15em dotted #5192c6; + padding: 1.5em 0.5em; + margin-bottom: 2em; + margin-top: 2em; + border-radius: 1em; + position: relative; + } + + p.bj1-ztgs { + background-color: #5192c6; + color: #ffffff; + display: inline-block; + font-size: 1em; + padding: 0.1em 0.7em 0.12em 0.7em; + font-weight: bold; + border-radius: 0em; + margin-left: 0em; + text-align: center; + text-indent: 0em; + position: absolute; + top: -1.2em; + } + + + .link-float { + width: 120px; + float: left; + height: auto; + margin: auto; + margin-top: 12px; + margin-right: 20px; + } + + .imgBox-003 { + width: 100%; + height: 280px; + margin-bottom: 18px; + } + + // 棰樼洰 + .textarea-box { + background-color: transparent; + max-width: 85%; + min-width: 85%; + outline: none; + } + + .textarea-box-left { + background-color: transparent; + margin-left: 12%; + max-width: 85%; + min-width: 85%; + outline: none; + } + + .textarea-box-right { + background-color: transparent; + margin-left: 8%; + max-width: 85%; + min-width: 85%; + outline: none; + } + + .textarea-focused { + border-color: #5192c6 !important; + box-shadow: #5192c6 !important; + } + + .select-border { + width: 60px; + border: 0; + border-bottom: 1px solid #767676; + + &:focus { + outline: none; + } + } + + .btn-border { + border-radius: 6px; + border-color: #5192C6; + } + + .btn-w { + cursor: pointer; + font-size: 14px; + border-width: 1px; + width: 80px; + height: 30px; + background-color: #fff; + + &:hover { + background-color: #5192C6; + color: #fff; + } + } + + .parimary-btn { + cursor: pointer; + min-width: 80px; + height: 30px; + font-size: 14px; + margin-left: 5px; + background-color: #5192C6; + border-color: #5192C6; + border-width: 1px; + color: #fff; + border-radius: 6px; + + &:hover { + background-color: #a1afc8; + border-color: #a1afc8; + } + } + + .event-header-text-bc { + background-color: #bbd4ec; + } + + // 杩佺Щ + .bk-bwh { + min-height: 800px; + background-color: #DFEBF7; + font-size: 1.2em; + padding: 25px; + border: 4px dotted #197ABF; + } + + ul { + list-style-type: none; + } + + li { + list-style-type: none; + } + + .custom_tag2 { + background-color: #F1BE49; + color: #FFFFFF; + display: inline-block; + padding: 0.5px; + border-radius: 1.5em; + font-size: 1.1em; + padding: 2px 10px 2px 10px; + font-weight: bold; + margin: 0; + text-indent: 0em; + margin-bottom: 0.5em; + } + + .custom_tag1 { + background-color: #35ACD6; + color: #FFFFFF; + display: inline-block; + padding: 1px; + font-size: 1.1em; + padding: 3px 10px 3px 10px; + font-weight: bold; + box-shadow: 15px 0px 0px 0px #F5D83E, -15px 0px 0px 0px #F5D83E; + margin: 0; + text-indent: 0em; + margin-bottom: 0.5em; + } + + .custom_tag { + background-color: #35509F; + color: #FFFFFF; + display: inline-block; + padding: 1px; + border-radius: 1.5em; + font-size: 1.1em; + padding: 10px 20px 10px 20px; + font-weight: bold; + box-shadow: 30px 0px 0px 0px #F5D83E; + margin: 0; + text-indent: 0em; + margin-bottom: 0.5em; + } + + + span.under1 { + border-bottom: 2px solid #F0BD4A; + border-width: 2px; + + } + + div.bodycontent-div-center { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + margin: 1em 1em 1em 1em; + font-weight: normal; + border-width: 1.5px; + border-color: #dfb27d; + padding: 1em; + } + + img.bodycontent-divcenter-image { + float: center; + clear: both; + height: 140px; + margin: 15px; + } + + .module_block { + display: flex; + font-size: 1.1em; + position: relative; + padding-left: 90px; + justify-content: center; + align-items: center; + margin-right: 91px; + } + + .module_block .custom1 { + background-color: #9ACC77; + padding: 10px 20px; + color: #FFFFFF; + /* position: absolute; */ + /* left:0; */ + /* top: 50%; */ + border-radius: 0.5em 0em 0em 0.5em; + /* transform: translateY(-50%); */ + } + + .module_block .custom2 { + background-color: #E9F3E0; + padding: 10px 20px; + color: #75A64E; + font-weight: bold; + border-radius: 0em 0.5em 0.5em 0em; + } + + + + div.bodycontent-div-left1 { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + margin: 1em 1em 1em 1em; + font-weight: normal; + border-width: 1.5px; + border-color: #dfb27d; + padding: 1em; + background-color: #F0F8FF; + } + + div.bodycontent-div-left { + font-family: "DK-HEITI", "鏂规鍏颁涵榛戠畝浣�", "榛戜綋"; + margin: 1em 1em 1em 1em; + font-weight: normal; + border-width: 1.5px; + border-color: #dfb27d; + padding: 1em; + } + + img.bodycontent-divright-image { + float: right; + clear: both; + height: 140px; + margin: 15px; + } + + img.bodycontent-divleft-image { + float: left; + clear: both; + height: 110px; + margin: 15px; + } + + + div.bodystyle { + font-family: 'FZLTXIHJW'; + text-align: justify; + margin: 0 10%; + padding-bottom: 80px; + line-height: 30px; + } + + span.zt-0 { + color: #0087AF; + } + + p.pzt-0 { + color: #0087AF; + font-size: 18px; + } + + p.pzt-0-right { + font-size: 18px; + color: #0087AF; + text-align: right; + } + + p.pzt-1 { + font-weight: bold; + color: #0087AF; + font-size: 18px; + } + + div.sgc-toc-title { + font-size: 2em; + font-weight: bold; + margin-bottom: 1em; + text-align: center; + } + + div.sgc-toc-level-1 { + margin-left: 0em; + } + + div.sgc-toc-level-2 { + margin-left: 2em; + } + + div.sgc-toc-level-3 { + margin-left: 2em; + } + + div.sgc-toc-level-4 { + margin-left: 2em; + } + + div.sgc-toc-level-5 { + margin-left: 2em; + } + + div.sgc-toc-level-6 { + margin-left: 2em; + } + + .imz { + height: 96%; + text-align: center; + + + } + + .note { + margin: 0; + font-size: 14px; + line-height: 22px; + } + + + .block { + font-family: "瀹嬩綋"; + margin-top: 0.2em; + margin-bottom: 0.2em !important; + text-indent: 2em; + line-height: 30px; + font-size: 16px; + text-align: justify; + } + + .block1 { + text-align: center; + } + + .img { + text-indent: 0; + font-family: 'FZLTXIHJW'; + text-align: center; + font-size: 14px; + margin-left: 0%; + margin-right: 0%; + text-indent: 0em; + } + + .img1 { + font-family: 'FZLTXIHJW'; + text-align: right; + font-size: 0.85em; + margin-left: 0%; + margin-right: 2em; + text-indent: 0em; + } + + + p { + font-family: "瀹嬩綋"; + margin-top: 0.2em; + margin-bottom: 0.2em !important; + text-indent: 2em; + line-height: 30px; + text-align: justify; + } + + .cover { + width: 100%; + padding: 0px; + } + + .center { + text-align: center; + margin-left: 0%; + margin-right: 0%; + text-indent: 0em; + } + + .center-ss { + text-align: center; + color: #EF8472; + font-weight: bold; + margin-left: 0%; + margin-right: 0%; + text-indent: 0em; + } + + .left { + text-indent: 0em; + margin: 0 !important; + line-height: 20px; + } + + .left3 { + margin: 20px 0 0 0 !important; + line-height: 20px; + } + + .left2 { + font-size: 1.3em; + text-indent: 0em; + font-weight: bold; + margin-left: 0%; + margin-right: 0%; + } + + .right { + text-align: right; + margin-left: 0%; + margin-right: 0%; + } + + .left1 { + text-indent: 0em; + margin-left: 0%; + margin-right: 0%; + } + + .center1 { + text-align: center; + margin-left: 0%; + margin-right: 0%; + font-size: 1.2em; + text-indent: 0em; + font-weight: bold; + } + + .right1 { + text-align: right; + margin-left: 0%; + margin-right: 0%; + } + + .quote { + margin-top: 0%; + margin-bottom: 0%; + margin-left: 1em; + margin-right: 1em; + text-align: justify; + font-family: "cnepub", serif; + } + + h1 { + font-family: 'FZLTZHJW'; + font-weight: 100; + font-size: 2em; + color: #F0855B; + margin-top: 0.2em; + margin-bottom: 0.2em; + text-indent: 0em; + } + + .front { + font-family: 'FZLTZHJW'; + font-weight: 400; + font-size: 1.1em; + color: #000; + margin-top: 1.5em; + margin-bottom: 3em; + text-indent: 0em; + text-align: center; + } + + + h2 { + font-family: 'FZLTZHJW'; + line-height: 2em; + font-weight: bold; + color: #5192C6; + font-size: 1.3em; + margin-bottom: 0.5cm; + margin-top: 0.5cm; + } + + h3 { + font-family: 'FZHTJW'; + color: #5192C6; + font-weight: 500; + font-size: 1.6em; + margin-top: 0.5em; + margin-bottom: 5px; + text-indent: 0em; + } + + .unit2-c { + color: #F89C1C !important; + } + + .unit3-c { + color: #0A9CAC !important; + } + + .unit4-c { + color: #92B03D !important; + } + + .unit5-c { + color: #0180CD !important; + } + + h4 { + font-family: 'FZHTJW'; + color: #5192C6; + font-weight: 400; + font-size: 1.1em; + margin-bottom: 1.2em; + margin-top: 1.2em; + margin-left: 0em; + text-indent: 0em; + } + + h5 { + font-family: 'FZHTJW'; + color: #5192C6; + text-align: left; + font-weight: 400; + margin-bottom: 0.5em; + margin-top: 0.5em; + font-size: 18px; + text-indent: 0em; + } + + h6 { + font-family: 'FZHTJW'; + font-weight: 400; + margin-bottom: 5px; + margin-top: 10px; + font-size: 18px; + text-indent: 2em; + } + + .zt-h6 { + font-family: 'FZHTJW'; + color: #65C097; + margin-bottom: 0.5em; + margin-top: 1em; + font-size: 1.15em; + text-indent: 2em; + } + + .bb { + + font-family: "cnepub", serif; + font-family: 'FZHTJW'; + color: #66CCCC; + font-size: 1.1em; + margin-top: 10px; + text-indent: 2em; + margin-bottom: 10px; + border-bottom: 5px dotted #F4C388; + margin-left: 2em; + margin-bottom: 0.5em; + text-indent: 0em; + } + + .u { + + text-decoration: underline; + } + + .img-0 { + width: 100%; + } + + .img-a { + width: 95%; + } + + .img-b { + width: 70%; + } + + .img-c { + width: 60%; + } + + .img-d { + width: 50%; + } + + .img-e { + width: 45%; + } + + .img-f { + width: 40%; + } + + .img-g { + width: 30%; + } + + .img-h { + width: 20%; + } + + .img-i { + width: 10%; + } + + .img-j { + width: 5%; + } + + .img-zt { + height: 6em; + margin-top: -1.5em; + margin-bottom: -0.4em; + margin-left: 15%; + } + + .inline { + height: 1em; + margin-bottom: -0.3em; + } + + .inline1 { + height: 2.5em; + margin-top: 0.5em; + margin-bottom: -0.5em; + } + + .inline2 { + height: 1.5em; + margin-top: 0.5em; + margin-bottom: -0.5em; + } + + .inline4 { + height: 2em; + margin-left: -2em; + margin-right: 0.5em; + margin-bottom: -0.6em; + } + + .img-qj { + height: 7.5em; + margin-bottom: -3.4em; + margin-right: 0.5em; + } + + .zt-ls1 { + color: #000; + font-size: 16px; + font-weight: bold; + } + + span.lsyq-1 { + background-color: #0082D4; + padding: 0.2em 0.4em 0.2em 0.4em; + border-radius: 1.5em; + margin-right: 0.5em; + color: #FFFFFF; + font-weight: bold; + font-size: 1.5em; + } + + span.hsyq-1 { + background-color: #FFB7D4; + padding: 0.2em 0.4em 0.2em 0.4em; + border-radius: 1.5em; + margin-right: 0.5em; + color: #FFFFFF; + font-weight: bold; + font-size: 1.5em; + + } + + .zt-hs1 { + font-weight: 500; + color: #000; + font-size: 1em; + } + + .h2-zt1 { + padding: 5px 25px 5px 25px; + border-radius: 10px 0px 0px 10px; + background-color: #5392C7; + font-size: 1.2em; + color: #FFFFFF; + } + + .h2-zt2 { + padding: 10px; + background-color: #B1DDE0; + margin-right: 2em; + color: #FFFFFF; + padding: 5px 50px 5px 25px; + border-radius: 0px 5px 80px 0px; + font-size: 1.2em; + } + + .bk { + border: 0.15em dotted #5593C6; + padding: 0.5em; + margin-bottom: 2em; + margin-top: 0.5em; + border-radius: 1em; + position: relative; + } + + .bk1 { + border: 0.15em dotted #F89C1C; + padding: 0.5em; + margin-bottom: 2em; + margin-top: 0.5em; + border-radius: 1em; + position: relative; + } + + p.bj1-qjms { + background-color: #5392C7; + color: #FFFFFF; + display: inline-block; + font-size: 1em; + padding: 0.1em 0.7em 0.12em 0.7em; + font-weight: bold; + border-radius: 1.5em; + margin-left: 0em; + text-align: center; + text-indent: 0em; + position: absolute; + top: -2em; + } + + .bj { + background-color: #E1E7F3; + padding: 0.2em 0.8em 0.2em 0.8em; + } + + .bj2 { + background-color: #3D8B9F; + padding: 0.2em 0.8em 0.2em 0.8em; + font-size: 1.3em; + font-weight: bold; + border-radius: 0.5em; + color: #FFFFFF; + } + + .bj3 { + background-color: #FEDDB4; + padding: 20px 10px 10px 10px; + border-radius: 10px; + margin-bottom: 10px; + margin-top: 10px; + position: relative; + } + + span.bj3-xyx { + background-color: #F5A101; + color: #FFFFFF; + border-radius: 5px; + padding: 5px 10px 5px 10px; + font-size: 1em; + font-weight: bold; + + } + + div.bj3-xyx { + position: absolute; + top: -15px; + left: -25px; + + } + + .ts-1 { + font-weight: bold; + } + + .zt-h4 { + background-color: #F0BD40; + padding: 10px; + color: #FFFFFF; + margin-left: -2em; + border-radius: 1.5em; + } + + .qyls-h4 { + font-family: "HiFont Hei GB"; + color: #6CB26C; + font-weight: bold; + padding: 0.2em; + text-indent: 0em; + margin-left: 0%; + } + + .bj4 { + background-color: #D7E2F0; + padding: 10px 20px; + border-radius: 0.1em; + margin-bottom: 2em; + margin-top: 1em; + } + + div.bj4-xyx { + font-size: 18px; + color: #fff; + line-height: 20px; + padding: 12.5px 15px 12.5px 15px; + margin-right: 10px; + background-color: #5192C6; + border-radius: 5px; + } + + .bj4-xyx-pd { + font-size: 16px; + color: #fff; + line-height: 20px; + padding: 22px 10px 22px 10px; + background-color: #5192C6; + margin-right: 10px; + border-radius: 5px; + flex-wrap: nowrap; + } + + .bj4-xyx-icon { + color: #5192C6; + text-wrap: nowrap; + } + + .bj5 { + background-color: #F0F3E2; + padding: 20px; + border-radius: 0.1em; + margin-bottom: 2em; + margin-top: 2.5em; + } + + span.bj5-xyx { + background-color: #95B321; + color: #FFFFFF; + border-radius: 1.5em; + padding: 5px 20px 5px 20px; + font-size: 1em; + font-weight: bold; + + } + + div.bj5-xyx { + margin-top: -3em; + margin-bottom: 1.5em; + margin-left: -2.5em; + } + + .zt-lvs1 { + color: #95B321; + } + + div.bj-1 { + color: #fff; + border-radius: 2em; + margin-bottom: 1.5em; + margin-top: 1.5em; + } + + .bj-1-zt { + color: #fff; + font-weight: 400; + font-size: 1.2em; + line-height: 1.8em; + } + +} + +.pdfModal { + width: 100%; + height: 90vh; + + .pdfBox-component { + width: 100%; + height: 100%; + position: relative; + + .preview { + width: 100%; + height: 100%; + + .imageBox { + height: calc(100% - 30px); + overflow-x: hidden; + overflow-y: auto; + background: #ccc; + box-sizing: border-box; + } + + .imageBox:hover { + cursor: zoom-in !important; + } + + ::v-deep .el-dialog__header { + background-color: rgba(0, 0, 0, 0.8); + + .header_title { + display: flex; + justify-content: space-between; + align-items: center; + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + + span:nth-child(2):hover { + cursor: pointer; + } + } + + ::v-deep .el-dialog__title, + ::v-deep .el-dialog__headerbtn .el-dialog__close { + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + } + } + + .bottom_tool { + height: 30px; + background-color: rgba(0, 0, 0, 0.8); + display: flex; + justify-content: flex-end; + align-items: center; + + svg { + margin-right: 15px; + fill: #d1d1d1; + } + + svg:hover { + fill: #fff; + cursor: pointer; + } + } + } + + .notBox { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: calc(100% - 30px); + min-height: 300px; + } + } +} + +.custom-dialog { + overflow: hidden !important; + + .el-dialog__body { + padding: 0; + } + + .el-dialog__header { + background-color: rgba(0, 0, 0, 0.8); + + .header_title { + display: flex; + justify-content: space-between; + align-items: center; + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + + span:nth-child(2):hover { + cursor: pointer; + } + } + + .el-dialog__title, + .el-dialog__headerbtn .el-dialog__close { + color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + } + } +} + +.header_title { + display: flex; + justify-content: space-between; + align-items: center; + // color: #fff; + font-weight: 900; + font-size: 16px; + font-family: 'FZLTXIHJW'; + + span:nth-child(2):hover { + cursor: pointer; + } +} + + + + +/* 濯掍綋鏌ヨ鍋氬熀纭�鍝嶅簲寮忓竷灞� */ + +@media screen and (max-width: 1024px) { + .pdfModal { + width: 100%; + height: 80vh; + } + + .custom-dialog { + .el-dialog { + width: 90vw !important; + } + } +} + +@media screen and (max-width: 800px) { + .pdfModal { + width: 100%; + height: 60vh; + } + + .custom-dialog { + .el-dialog { + width: 90vw !important; + } + } +} + +@media (max-width: 660px) { + .civilPassengerTransport-book { + + .pad-l-60 { + padding-left: 10px; + } + + .mr-70 { + margin-right: 15px; + } + /* 鍒嗛〉padding */ + .padding-93 { + padding: 0 20px; + } + + .padding-102 { + padding: 0 20px; + } + + + .img-float { + width: 130px; + } + + .img-rights { + width: 130px; + } + + .btn-w { + width: 42px; + } + } +} + +@media (min-width: 660px) { + .civilPassengerTransport-book { + .padding-93 { + padding: 0 93px 0px 93px; + } + + .padding-102 { + padding: 0 102px 0 102px; + } + } +} + +::-webkit-scrollbar { + width: 8px; + height: 10px; +} + +::-webkit-scrollbar-track-piece { + background-color: rgba(0, 0, 0, 0.1); + -webkit-border-radius: 6px; +} + +::-webkit-scrollbar-thumb:vertical { + height: 5px; + background-color: rgba(125, 125, 125, 0.3); + -webkit-border-radius: 6px; +} + +::-webkit-scrollbar-thumb:horizontal { + width: 5px; + background-color: rgba(125, 125, 125, 0.3); + -webkit-border-radius: 6px; +} \ No newline at end of file diff --git a/src/books/civilPassengerTransport/view/components/header.vue b/src/books/civilPassengerTransport/view/components/header.vue new file mode 100644 index 0000000..2ead37e --- /dev/null +++ b/src/books/civilPassengerTransport/view/components/header.vue @@ -0,0 +1,46 @@ +<template> + <div class="chapter" num="1"> + <!-- 灏侀潰 --> + <!-- <div class="page-box mt-30" page="1" style="min-height: auto"> + <div v-if="showPageList.indexOf(1) > -1"> + <img class="img-0" alt="" src="../../assets/images/fengmian.jpg" /> + </div> + </div> --> + </div> +</template> + +<script> +export default { + name: "pageHeader", + props: { + showPageList: { + type: Array, + }, + }, + data() { + return { + }; + }, +}; +</script> + +<style lang="less" scoped> +.box { + max-width: 400px; + margin: 0 auto; +} + +.preface { + height: 224px; + background: linear-gradient(to right, #8fc58c, #fff); +} + +.preface-text { + font-size: 26px !important; + color: #000 !important; +} + +.mt-100 { + margin-top: 100px !important; +} +</style> \ No newline at end of file diff --git a/src/books/civilPassengerTransport/view/components/index.vue b/src/books/civilPassengerTransport/view/components/index.vue new file mode 100644 index 0000000..0b7ed73 --- /dev/null +++ b/src/books/civilPassengerTransport/view/components/index.vue @@ -0,0 +1,975 @@ +<template> + <div class="page-main" @scroll="throttledScrollHandler"> + <div id="searchDomBox" style="display: none"> + <div id="searchContent"></div> + </div> + <div + class="page-content" + :style="{ + fontSize: fontSize + 'px', + transform: `scale(${pageZoom})`, + transformOrigin: 'center top', + }" + > + <pageHeader + v-if="showCatalogList.indexOf(1) > -1" + :showPageList="loadPageList" + ></pageHeader> + <!-- <chapterOne + v-if="showCatalogList.indexOf(2) > -1" + :showPageList="loadPageList" + ></chapterOne> + <chapterTwo + v-if="showCatalogList.indexOf(3) > -1" + :showPageList="loadPageList" + ></chapterTwo> + <chapterThree + v-if="showCatalogList.indexOf(4) > -1" + :showPageList="loadPageList" + ></chapterThree> + <chapterFour + v-if="showCatalogList.indexOf(5) > -1" + :showPageList="loadPageList" + ></chapterFour> --> + </div> + </div> +</template> + +<script> +import Vue from "vue"; +import pageHeader from "./header.vue"; +// import chapterOne from "./chapter001.vue"; +// import chapterTwo from "./chpater002.vue"; +// import chapterThree from "./chapter003.vue"; +// import chapterFour from "./chapter004.vue"; +import NoteIcon from "@/assets/images/biji.png"; +import _ from "lodash"; +import Swiper from "swiper/bundle"; +import "swiper/swiper-bundle.css"; +import Viewer from "viewerjs"; +import "viewerjs/dist/viewer.css"; +export default { + name: "pageContent", + data() { + return { + catalogLength: 2, // 鎬荤珷鑺傛暟 + showCatalogList: [], // 鏄剧ず鐨勭珷鑺� + loadThreshold: 300, // 瑙﹀彂鍔犺浇闃堝�� + throttleThreshold: 100, // 鑺傛祦闃堝�� + previousScrollTop: 0, + throttledScrollHandler: null, + observer: null, + loadPageObserver: null, + loadPageList: [], + questionDataMap: {}, + renderSignMap: {}, + highlightData: null, + audioPath: "", + currentTime: null, + videoList: [], + }; + }, + computed: { + fontSize() { + this.transformDom(this.$store.state.qiankun.fontSize); + return this.$store.state.qiankun.fontSize + ? this.$store.state.qiankun.fontSize + : 18; + }, + pageZoom() { + return this.$store.state.qiankun.scale + ? this.$store.state.qiankun.scale / 100 + : 1; + }, + }, + watch: { + showCatalogList: { + handler(newVal, oldVal) { + if ( + this.$store.state.qiankun && + this.$store.state.qiankun.catalogChange + ) { + // 璋冪敤鐖跺眰鏂规硶 + this.$store.state.qiankun.catalogChange({ + showCatalogList: newVal, + }); + } + // 鍚姩椤电爜瑙傚療 + setTimeout(() => { + this.initObservation(); + this.initThemeColor(); + }, 500); + }, + }, + loadPageList: { + handler(newVal, oldVal) { + setTimeout(() => { + this.transformDom(this.$store.state.qiankun.fontSize); + this.initSwiper(); + this.initViewer(); + this.closeAudio(); + this.closeVideo(); + }, 200); + }, + }, + pageZoom: { + handler(newVal, oldVal) { + const scrollBox = ( + this.container ? this.container : document + ).querySelector(".page-main"); + scrollBox.scrollTop = (scrollBox.scrollTop / oldVal) * newVal; + }, + }, + }, + mounted() { + // 榛樿鍔犺浇绔犺妭 + this.showCatalogList = [1]; + // 婊氬姩鐩戝惉鑺傛祦 + this.throttledScrollHandler = _.throttle( + this.scrollFun, + this.throttleThreshold, + { leading: true, trailing: false } + ); + // 瀹氫箟瀛愬眰鏂规硶 + if (this.setGlobalState) { + // 鎻愪緵椤甸潰璺宠浆鍔熻兘 + this.setGlobalState({ + gotoPage: (catalog, page) => { + this.gotoPage(catalog, page); + }, + // 娓叉煋绗旇銆侀珮浜�佸垝绾� + renderSign: (type, data) => { + // 鍥犱负璋冩暣涓洪〉闈㈡噿鍔犺浇锛屾墍浠ユ覆鏌撴爣璁颁篃闇�瑕佹寜鐓ч〉闈㈣繘琛屽鐞嗭紝鍏堝偍瀛樻暟鎹紝椤甸潰鍔犺浇瀹屾垚鍐嶆覆鏌撳搴旂殑鏍囪锛� + this.handelSignData(type, data); + // this.renderSign(type, data); + }, + // 鍒犻櫎绗旇銆侀珮浜�佸垝绾� + delSign: (data) => { + this.delSign(data); + }, + // 鍏ㄦ枃妫�绱� + searchBookByKeyword: (keyword) => { + return this.searchTextByPage(keyword); + }, + // 璺宠浆妫�绱㈢粨鏋滀綅缃� + jumpSearchItem: (data) => { + this.searchItemLocation(data); + }, + }); + } + + // 鍒涘缓涓�涓柊鐨� Intersection Observer 瀹炰緥锛岀敤浜庤瀵熺洰鏍囧厓绱犲拰鎵ц鐩稿簲鐨勫洖璋冨嚱鏁般�� + // new IntersectionObserver(callback, options)锛氫娇鐢ㄤ箣鍓嶅畾涔夌殑 callback 鍥炶皟鍑芥暟鍜� options 閰嶇疆閫夐」鏉ュ垵濮嬪寲 Intersection Observer 瀹炰緥銆� + this.observer = new IntersectionObserver(this.pageChangeCallback, { + root: null, // 鎸囧畾鏍瑰厓绱狅紝杩欓噷璁句负 null锛岃〃绀洪�夊彇鏁翠釜瑙嗙獥浣滀负鏍瑰厓绱犮�� + rootMargin: "0px", // 鎸囧畾鏍瑰厓绱犵殑杈圭晫锛岃繖閲岃涓� "0px"锛岃〃绀烘牴鍏冪礌鐨勮竟鐣屽拰瑙嗙獥鐨勮竟鐣岄噸鍚� + threshold: 0.5, // 鎸囧畾浜ゅ弶姣斾緥锛岃繖閲岃涓� 0.5锛岃〃绀哄綋鐩爣鍏冪礌涓�鍗婃垨鏇村鏄剧ず鍦ㄨ绐椾腑鏃惰Е鍙戝洖璋冨嚱鏁般�� + }); + + this.loadPageObserver = new IntersectionObserver(this.loadPageCallback, { + root: null, // 鎸囧畾鏍瑰厓绱狅紝杩欓噷璁句负 null锛岃〃绀洪�夊彇鏁翠釜瑙嗙獥浣滀负鏍瑰厓绱犮�� + rootMargin: "0px", // 鎸囧畾鏍瑰厓绱犵殑杈圭晫锛岃繖閲岃涓� "0px"锛岃〃绀烘牴鍏冪礌鐨勮竟鐣屽拰瑙嗙獥鐨勮竟鐣岄噸鍚� + threshold: 0, // 鎸囧畾浜ゅ弶姣斾緥锛岃繖閲岃涓� 0.5锛岃〃绀哄綋鐩爣鍏冪礌涓�鍗婃垨鏇村鏄剧ず鍦ㄨ绐椾腑鏃惰Е鍙戝洖璋冨嚱鏁般�� + }); + + // 鍚姩椤电爜瑙傚療 + setTimeout(() => { + this.initObservation(); + this.initThemeColor(); + }, 500); + + // 娴嬭瘯椤甸潰璺宠浆 + // setTimeout(() => { + // this.gotoPage(4,140); + // }, 500); + + // const pageDom = (this.container ? this.container : document) + // .querySelector("#app") + // .querySelectorAll(".page-box"); + // 妫�绱� + // console.log(this.searchTextByPage("淇濇姢鍐呰剰鍣ㄥ畼"), "searchTextByPage"); + // 妫�绱㈣烦杞� + // this.searchItemLocation({ + // catalog: 2, + // page: 10, + // txt: " 杩愬姩绯荤粺鏄敱楠ㄣ�侀杩炵粨鍜岄楠艰倢涓夐儴鍒嗙粍鎴愮殑銆傚叏韬殑楠ㄩ�氳繃楠ㄨ繛缁撶粍鎴愪汉浣撻楠硷紙瑙佸浘1-1锛夈�傞楠兼槸浜轰綋鐨勬敮鏋讹紝鍏锋湁淇濇姢鍐呰剰鍣ㄥ畼銆佷緵鑲岃倝闄勭潃鍜屼綔涓鸿倢鑲夎繍鍔ㄧ殑鏉犳潌绛変綔鐢ㄣ�傚湪绁炵粡绯荤粺鐨勬敮閰嶄笅锛岃倢鑲夋敹缂╃壍鍔ㄦ墍闄勭潃鐨勯缁曠潃鍏宠妭杞姩锛屼娇韬綋浜х敓鍚勭鍔ㄤ綔銆傛墍浠ワ紝杩愬姩绯荤粺鍏锋湁杩愬姩銆佹敮鎸佸拰淇濇姢绛夊姛鑳斤紝骞煎勾鏃舵湡鐨勯楠艰繕鍏锋湁閫犺鍔熻兘銆� ", + // txtIndex: 57 + // }); + // }, 500); + }, + methods: { + // setZoom1() { + // let scale = this.$store.state.qiankun.scale + 10; + // const scrollBox = ( + // this.container ? this.container : document + // ).querySelector(".page-main"); + // this.$store.commit("setZoom", scale); + // }, + // setZoom2() { + // let scale = this.$store.state.qiankun.scale - 10; + // const scrollBox = ( + // this.container ? this.container : document + // ).querySelector(".page-main"); + // this.$store.commit("setZoom", scale); + // }, + // 婊氬姩鐩戝惉 + scrollFun(event) { + this.handleVideoPicture(); + // 鍒ゆ柇鍚戜笂婊氬姩杩樻槸鍚戜笅婊氬姩 + if (event.target.scrollTop > this.previousScrollTop) { + this.getAduio(); + // 鍚戜笅 + const currentScrollTop = + event.target.scrollTop + event.target.offsetHeight; + if ( + currentScrollTop >= + event.target.scrollHeight - this.loadThreshold + ) { + console.log(1); + + // 鍒拌揪闃堝�� + if ( + this.showCatalogList[this.showCatalogList.length - 1] < + this.catalogLength + ) { + // 鍔犺浇涓嬩竴绔� + this.showCatalogList.push( + this.showCatalogList[this.showCatalogList.length - 1] + 1 + ); + if (this.showCatalogList.length > 3) { + // 瓒呰繃涓夌珷闅愯棌椤堕儴涓�绔� + this.showCatalogList.shift(); + } + } + } + } else if (event.target.scrollTop < this.previousScrollTop) { + this.handleAudio(); + // 鍚戜笂 + const currentScrollTop = event.target.scrollTop; + if (currentScrollTop <= this.loadThreshold) { + // 鍒拌揪闃堝�� + if (this.showCatalogList[0] > 0) { + // 鍔犺浇涓婁竴绔� + this.showCatalogList.unshift(this.showCatalogList[0] - 1); + if (this.showCatalogList.length > 3) { + // 瓒呰繃涓夌珷闅愯棌搴曢儴涓�绔� + this.showCatalogList.pop(); + } + } + } + } + // showCatalogList 褰撳墠鏄剧ず鐨勪笁涓珷鑺傦紝watch鐩戝惉浼犻�掔粰涓诲簲鐢� + // 鏇存柊涓婁竴娆℃粴鍔ㄧ殑浣嶇疆 + this.previousScrollTop = event.target.scrollTop; + }, + // 绔犺妭銆侀〉闈㈣烦杞� + gotoPage(catalog, page) { + if (catalog >= 0 && catalog <= this.catalogLength) { + // 澶勭悊娓叉煋绔犺妭 + if (catalog == 0) { + this.showCatalogList = [0, 1]; + } else if (catalog == this.catalogLength) { + this.showCatalogList = [ + this.catalogLength - 2, + this.catalogLength - 1, + this.catalogLength, + ]; + } else { + this.showCatalogList = [catalog - 1, catalog, catalog + 1]; + } + setTimeout(() => { + // 璺宠浆椤电爜 + const pageDom = ( + this.container ? this.container : document + ).querySelector(`[page="${page}"]`); + if (pageDom) { + pageDom.scrollIntoView(); + } else { + console.log("椤电爜閿欒锛�"); + } + }, 500); + } else { + console.log("绔犺妭閿欒锛�"); + } + }, + + // 澶勭悊鏍囪鏁版嵁 + handelSignData(type, data) { + if (this.loadPageList.indexOf(Number(data.page)) > -1) { + // 绔嬪嵆娓叉煋 + this.renderSign(type, data); + } + + // 鍌ㄥ瓨鏁版嵁 + if (!this.renderSignMap[type]) this.renderSignMap[type] = {}; + if (!this.renderSignMap[type][data.page]) + this.renderSignMap[type][data.page] = []; + this.renderSignMap[type][data.page].push(data); + }, + + // 娓叉煋鏍囪 + renderSign(type, data) { + // 鐖跺眰璁剧疆绂佹娓叉煋鏍囪鏃朵笉鍐嶈繘琛屾覆鏌� + if (this.$store.state.qiankun.disableSign) { + return false; + } + const existence = ( + this.container ? this.container : document + ).querySelector(`[dataid="${data.id}"]`); + // 鍘婚噸 + if (!existence) { + const pageDom = ( + this.container ? this.container : document + ).querySelector(`[page="${data.page}"]`); + // 鍒涘缓 createTreeWalker 杩唬鍣紝鐢ㄤ簬閬嶅巻鏂囨湰鑺傜偣锛屼繚瀛樺埌涓�涓暟缁� + const treeWalker = document.createTreeWalker( + pageDom, + NodeFilter.SHOW_TEXT + ); + const allTextNodes = []; + let currentNode = treeWalker.nextNode(); + while (currentNode) { + allTextNodes.push(currentNode); + currentNode = treeWalker.nextNode(); + } + for (let i = 0; i < allTextNodes.length; i++) { + const textDom = allTextNodes[i]; + if (textDom.textContent.indexOf(data.txt) > -1) { + let reg = new RegExp(`${data.txt}`, "ig"); + switch (type) { + case "Highlight": + // 楂樹寒 + textDom.parentNode.innerHTML = + textDom.parentNode.innerHTML.replace( + reg, + `<span datatype="Highlight" dataid="${data.id}" style="background: ${data.color};" class="highLight" onclick="signClick('Highlight','${data.id}','${data.chapterNum}')">${data.txt}</span>` + ); + break; + case "Dashing": + // 鍒掔嚎 + textDom.parentNode.innerHTML = + textDom.parentNode.innerHTML.replace( + reg, + `<span datatype="Dashing" dataid="${data.id}" style="text-decoration-color:${data.color};" class="underline" onclick="signClick('Dashing','${data.id}','${data.chapterNum}')">${data.txt}</span>` + ); + break; + case "Note": + // 绗旇 + textDom.parentNode.innerHTML = + textDom.parentNode.innerHTML.replace( + reg, + `<span datatype="Note" dataid="${data.id}" style="border-bottom-color:${data.color}" class="notesline" onclick="signClick('Note','${data.id}','${data.chapterNum}')" onmouseover="noteHover('Note','${data.id}','${data.chapterNum}')" onmouseout="noteOut('Note')">${data.txt}<img src="${NoteIcon}"/></span>` + ); + break; + } + } + } + } + }, + // 鍒犻櫎鏍囪娓叉煋 + delSign({ ids, type }) { + if (ids && ids.length) { + for (let i = 0; i < ids.length; i++) { + const id = ids[i]; + const dom = ( + this.container ? this.container : document + ).querySelector(`[dataid="${id}"]`); + dom.parentNode.innerHTML = dom.parentNode.innerHTML.replace( + dom.outerHTML, + dom.outerText + ); + } + } + if (type) { + const doms = ( + this.container ? this.container : document + ).querySelectorAll(`[datatype="${type}"]`); + for (let i = 0; i < doms.length; i++) { + const dom = doms[i]; + dom.parentNode.innerHTML = dom.parentNode.innerHTML.replace( + dom.outerHTML, + dom.outerText + ); + } + } + }, + initObservation() { + const sections = ( + this.container ? this.container : document + ).querySelectorAll(".page-box"); + sections.forEach((section) => { + if (this.config.activeBook && this.config.activeBook.tryPageCount) { + const page = section.getAttribute("page"); + if (Number(page) > this.config.activeBook.tryPageCount) { + let chapterDom = this.getParentWithClass(section, "chapter"); + const chapterNum = chapterDom.getAttribute("num"); + this.catalogLength = Number(chapterNum) - 1; + section.remove(); + return false; + } + } + // observer 瑙傚療姣忎釜鍏冪礌锛屼互渚垮湪瀹冧滑杩涘叆鎴栫寮�瑙嗙獥鏃惰Е鍙戝洖璋冨嚱鏁般�� + const isObserver = section.getAttribute("observer"); + const isLoadObserver = section.getAttribute("loadObserver"); + if (!isObserver) { + this.observer.observe(section); + section.setAttribute("observer", "1"); + } + if (!isLoadObserver) { + this.loadPageObserver.observe(section); + section.setAttribute("loadObserver", "1"); + } + }); + }, + initThemeColor() { + // 鑾峰彇鍚勭闇�瑕佷富棰樿壊鐨勮妭鐐� + const colorDom = ( + this.container ? this.container : document + ).querySelectorAll(".theme-color"); + const backgroundColorDom = ( + this.container ? this.container : document + ).querySelectorAll(".theme-back"); + const borderColorDom = ( + this.container ? this.container : document + ).querySelectorAll(".theme-border"); + // 鑾峰彇閰嶇疆鐨勪富棰樿壊 + const bookThemeColor = + this.config.activeBook && this.config.activeBook.bookThemeColor + ? this.config.activeBook.bookThemeColor + : null; + const chapterThemeColor = + this.config.activeBook && this.config.activeBook.chapterThemeColor + ? this.config.activeBook.chapterThemeColor + : null; + const pageThemeColor = + this.config.activeBook && this.config.activeBook.pageThemeColor + ? this.config.activeBook.pageThemeColor + : null; + colorDom.forEach((domItem) => { + // 鑾峰彇绔犺妭銆侀〉鐮� + let pageDom = this.getParentWithClass(domItem, "page-box"); + let chapterDom = this.getParentWithClass(domItem, "chapter"); + let page, chapterNum; + if (pageDom) page = pageDom.getAttribute("page"); + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + // 鍚戜笂鍖归厤涓婚鑹� + const themeColor = + page && pageThemeColor && pageThemeColor[page] + ? pageThemeColor[page] + : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] + ? chapterThemeColor[chapterNum] + : bookThemeColor; + if (themeColor) { + domItem.style.color = themeColor; + } + }); + backgroundColorDom.forEach((domItem) => { + // 鑾峰彇绔犺妭銆侀〉鐮� + let pageDom = this.getParentWithClass(domItem, "page-box"); + let chapterDom = this.getParentWithClass(domItem, "chapter"); + let page, chapterNum; + if (pageDom) page = pageDom.getAttribute("page"); + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + // 鍚戜笂鍖归厤涓婚鑹� + const themeColor = + page && pageThemeColor && pageThemeColor[page] + ? pageThemeColor[page] + : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] + ? chapterThemeColor[chapterNum] + : bookThemeColor; + if (themeColor) { + domItem.style.backgroundColor = themeColor; + } + }); + borderColorDom.forEach((domItem) => { + // 鑾峰彇绔犺妭銆侀〉鐮� + let pageDom = this.getParentWithClass(domItem, "page-box"); + let chapterDom = this.getParentWithClass(domItem, "chapter"); + let page, chapterNum; + if (pageDom) page = pageDom.getAttribute("page"); + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + // 鍚戜笂鍖归厤涓婚鑹� + const themeColor = + page && pageThemeColor && pageThemeColor[page] + ? pageThemeColor[page] + : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] + ? chapterThemeColor[chapterNum] + : bookThemeColor; + if (themeColor) { + domItem.style.borderColor = themeColor; + } + }); + }, + getParentWithClass(element, className) { + while (element.parentElement) { + element = element.parentElement; + if (element.classList.contains(className)) { + return element; + } + } + }, + pageChangeCallback(entries, observer) { + //entries锛氫唬琛ㄨ瀵熷埌鐨勭洰鏍囧厓绱犵殑闆嗗悎銆� observer锛氫唬琛ㄨ瀵熻�呭璞°�� + entries.forEach((entry) => { + //entry.isIntersecting锛氭鏌ュ綋鍓嶇洰鏍囧厓绱犳槸鍚︿笌鏍瑰厓绱犵浉浜ゃ�� + if (entry.isIntersecting) { + const target = entry.target; + //entry.target锛氳幏鍙栧綋鍓嶇洰鏍囧厓绱� + const page = target.getAttribute("page"); + const catalogDom = this.tool.getParentNodeByClassName( + target, + "chapter" + ); + const catalog = catalogDom.getAttribute("num"); + let text = null; + if (target.querySelector("p")) { + text = target.querySelector("p").textContent.substring(0, 50); + } + // 杩斿洖椤电爜鍜岀珷鑺備俊鎭� + if (this.$store.state.qiankun && this.$store.state.qiankun.pageChange) + this.$store.state.qiankun.pageChange({ + page: page, + catalog: catalog, + text, + }); + // const sections = Array.from(document.querySelectorAll(".section")); + //sections锛氳幏鍙栨墍鏈夊叿鏈� .section 绫诲悕鐨勫厓绱狅紝骞惰浆鎹负鏁扮粍銆� + // let index = sections.findIndex((section) => section === target) + 1; + //index锛氭煡鎵惧綋鍓嶇洰鏍囧厓绱犲湪 sections 鏁扮粍涓殑绱㈠紩锛屽苟鍔� 1锛岀敤浜庣‘瀹氬綋鍓嶉〉鐮併�� + } + }); + }, + loadPageCallback(entries, observer) { + entries.forEach(async (entry) => { + if (entry.isIntersecting) { + const target = entry.target; + const page = target.getAttribute("page"); + if (this.loadPageList.indexOf(Number(page)) == -1) { + const catalogDom = this.tool.getParentNodeByClassName( + target, + "chapter" + ); + // 娣诲姞椤电爜 + this.loadPageList.push(Number(page)); + const catalog = catalogDom.getAttribute("num"); + // if (!this.questionDataMap[page]) { + // if (testData && testData[catalog]) { + // if (testData[catalog][page]) { + // if (Array.isArray(testData[catalog][page])) { + // this.questionDataMap[page] = await getQuestionList( + // page, + // testData[catalog][page], + // this.config.activeBook + // ); + // } else { + // const obj = {}; + // for (let key in testData[catalog][page]) { + // obj[key] = await getQuestionList( + // [], + // testData[catalog][page][key], + // this.config.activeBook + // ); + // } + // this.questionDataMap[page] = obj; + // } + // console.log("棰樼洰", this.questionDataMap); + // } + // } + // } + // 娓叉煋杩欎竴椤电殑鏍囪 + for (const key in this.renderSignMap) { + if (this.renderSignMap[key][page]) { + this.renderSignMap[key][page].forEach((item) => { + this.renderSign(key, item); + }); + } + } + // 澶勭悊楂樹寒 + if (this.highlightData) { + // 楂樹寒琛� + setTimeout(() => { + // 鑾峰彇椤甸潰鎵�鏈塼ext鑺傜偣 + const pageTextList = document.createTreeWalker( + target, + NodeFilter.SHOW_TEXT + ); + // 鍖归厤鍏抽敭瀛� + const allPageTextNodes = []; + let currentNode = pageTextList.nextNode(); + while (currentNode) { + allPageTextNodes.push(currentNode); + currentNode = pageTextList.nextNode(); + } + for (let i = 0; i < allPageTextNodes.length; i++) { + const textDom = allPageTextNodes[i]; + let txtIndex = textDom.textContent.indexOf( + this.highlightData.txt + ); + if (txtIndex > -1) { + textDom.parentNode.style.transition = + "background-color 0.8s"; + textDom.parentNode.scrollIntoView(); + textDom.parentNode.style.backgroundColor = "#79bbf0"; + setTimeout(() => { + textDom.parentNode.style.backgroundColor = ""; + }, 1000); + } + } + }, 100); + } + if (this.loadPageList.length > 5) { + // 瓒呰繃5椤� + this.loadPageList.shift(); + } + } + } + }); + }, + initSwiper() { + const doms = ( + this.container ? this.container : document + ).querySelectorAll(".swiper-img"); + for (let i = 0; i < doms.length; i++) { + const dom = doms[i]; + new Swiper(dom, { + loop: false, // 鏃犵紳 + autoplay: { + //鑷姩寮�濮� + delay: 3000, //鏃堕棿闂撮殧 + disableOnInteraction: false, //*鎵嬪姩鎿嶄綔杞挱鍥惧悗涓嶄細鏆傚仠* + }, + paginationClickable: true, + slidesPerView: 1, // 涓�缁勪笁涓� + spaceBetween: 30, // 闂撮殧 + // 濡傛灉闇�瑕佸墠杩涘悗閫�鎸夐挳 + navigation: { + nextEl: dom.querySelector(".swiper-button-next"), + prevEl: dom.querySelector(".swiper-button-prev"), + }, + // 绐楀彛鍙樺寲,閲嶆柊init,閽堝F11鍏ㄥ睆鍜屾斁澶х缉灏�,蹇呴』鍔� + // observer: true, + // observeParents: true + // // 濡傛灉闇�瑕佸垎椤靛櫒 + // pagination: { + // el: (this.container ? this.container : document).querySelector( + // ".swiper-pagination" + // ), + // clickable: true // 鍒嗛〉鍣ㄥ彲浠ョ偣鍑� + // } + }); + } + const pptDoms = ( + this.container ? this.container : document + ).querySelectorAll(".swiper_ppt"); + for (let i = 0; i < pptDoms.length; i++) { + const dom = pptDoms[i]; + new Swiper(dom, { + loop: false, // 鏃犵紳 + autoplay: false, + paginationClickable: true, + slidesPerView: 1, // 涓�缁勪笁涓� + spaceBetween: 30, // 闂撮殧 + // 濡傛灉闇�瑕佸墠杩涘悗閫�鎸夐挳 + navigation: { + nextEl: dom.querySelector(".swiper-button-next"), + prevEl: dom.querySelector(".swiper-button-prev"), + }, + // 绐楀彛鍙樺寲,閲嶆柊init,閽堝F11鍏ㄥ睆鍜屾斁澶х缉灏�,蹇呴』鍔� + observer: true, + observeParents: true, + on: { + init: (value) => { + let currentPage = value.activeIndex + 1; // 鑾峰彇褰撳墠椤碉紙浠�1寮�濮嬭鏁帮級 + let totalPages = value.slides.length; // 鑾峰彇鎬婚〉鏁� + var paginationInfoEl = dom.querySelector(".pageBox"); + if (paginationInfoEl) + paginationInfoEl.textContent = currentPage + "/" + totalPages; + }, + slideChange: (value) => { + let currentPage = value.activeIndex + 1; // 鑾峰彇褰撳墠椤碉紙浠�1寮�濮嬭鏁帮級 + let totalPages = value.slides.length; // 鑾峰彇鎬婚〉鏁� + var paginationInfoEl = dom.querySelector(".pageBox"); + if (paginationInfoEl) + paginationInfoEl.textContent = currentPage + "/" + totalPages; + }, + }, + }); + } + }, + initViewer() { + const doms = ( + this.container ? this.container : document + ).querySelectorAll(".openImgBox"); + for (let i = 0; i < doms.length; i++) { + const dom = doms[i]; + new Viewer(dom, { + container: this.container + ? this.container.querySelector("#app") + : "body", + navbar: true, // 鏄剧ず瀵艰埅鏍� + toolbar: true, // 鏄剧ず宸ュ叿鏍� + title: true, // 鏄剧ず鏍囬 + }); + } + }, + // 鏍规嵁鍏抽敭瀛楀叏鏂囨绱� + searchTextByPage(keyword) { + const searchResult = []; + let catalogIndex = 0; + // 鎵�鏈夌珷鑺傜粍浠讹紙姣忔湰涔﹀埗浣滄椂鍗曠嫭閰嶇疆锛� + const pageData = { + pageHeader, + // chapterOne, + // chapterTwo, + // chapterThree, + // chapterFour, + }; + // 閬嶅巻鎵�鏈夌珷鑺傛枃浠� + for (const key in pageData) { + catalogIndex++; + let pageComponent, pageExample; + // 鍏堟覆鏌撲竴娆″綋鍓嶇珷鑺傛枃浠讹紙杩欐椂椤甸潰鐨勫唴瀹逛负绌猴級锛岃幏鍙栭〉鐮佷俊鎭� + pageComponent = Vue.extend(pageData[key]); + pageExample = new pageComponent({ + propsData: { + showPageList: [], + questionData: {}, + isSearch: true, + }, + }); + pageExample.$mount( + (this.container ? this.container : document).querySelector( + "#searchContent" + ) + ); + // 鑾峰彇椤电爜 + const pageDom = (this.container ? this.container : document) + .querySelector("#searchDomBox") + .querySelectorAll(".page-box"); + const pages = []; + for (let i = 0; i < pageDom.length; i++) { + const pageDomItem = pageDom[i]; + pages.push(Number(pageDomItem.getAttribute("page"))); + } + // 鑾峰彇椤甸潰缁撴潫锛屽嵏杞介攢姣� + pageExample.$destroy(); + (this.container ? this.container : document).querySelector( + "#searchDomBox" + ).innerHTML = '<div id="searchContent"></div>'; + // 閬嶅巻椤电爜 + if (pages.length) { + for (let i = 0; i < pages.length; i++) { + const pageNum = pages[i]; + // 鍔ㄦ�佹覆鏌撳搴旂珷鑺傜殑椤电爜 + pageComponent = Vue.extend(pageData[key]); + pageExample = new pageComponent({ + propsData: { + showPageList: [pageNum], + questionData: {}, + isSearch: true, + }, + }); + pageExample.$mount( + (this.container ? this.container : document).querySelector( + "#searchContent" + ) + ); + // 鑾峰彇瀵瑰簲椤甸潰dom + const thisPageDom = (this.container ? this.container : document) + .querySelector("#searchDomBox") + .querySelector(`[page="${pageNum}"]`); + if (thisPageDom) { + // 鑾峰彇椤甸潰鎵�鏈塼ext鑺傜偣 + const pageTextList = document.createTreeWalker( + thisPageDom, + NodeFilter.SHOW_TEXT + ); + // 鍖归厤鍏抽敭瀛� + const allPageTextNodes = []; + let currentNode = pageTextList.nextNode(); + while (currentNode) { + allPageTextNodes.push(currentNode); + currentNode = pageTextList.nextNode(); + } + for (let i = 0; i < allPageTextNodes.length; i++) { + const textDom = allPageTextNodes[i]; + let txtIndex = textDom.textContent.indexOf(keyword); + if (txtIndex > -1) { + // 璁板綍鍏抽敭瀛楁墍鍦ㄩ〉鐮併�佺珷鑺備互鍙婂尮閰嶅埌鐨勬钀� + searchResult.push({ + page: pageNum, + catalog: catalogIndex, + txt: textDom.textContent, + txtIndex: txtIndex, + }); + } + } + // 缁撴潫锛屽嵏杞介攢姣� + pageExample.$destroy(); + (this.container ? this.container : document).querySelector( + "#searchDomBox" + ).innerHTML = '<div id="searchContent"></div>'; + } + } + } + } + // 杈撳嚭鎼滅储缁撴灉 + console.log(searchResult); + return searchResult; + }, + // 鏍规嵁妫�绱㈢粨鏋滆烦杞搴斾綅缃苟楂樹寒 + searchItemLocation(data) { + // 璁板綍楂樹寒淇℃伅 + this.highlightData = data; + // 璺宠浆 + this.gotoPage(data.catalog, data.page, () => {}); + }, + // 椤甸潰鍚戜笅婊氬姩锛岄煶棰戝皬绐楁挱鏀惧姛鑳� + getAduio() { + let allVideo = ( + this.container ? this.container : document + ).querySelectorAll(".audio"); + allVideo = Array.from(allVideo); + this.videoList = allVideo; + if (allVideo.length) { + // 鏌ユ壘鎾斁鐘舵�佺殑鏈�鍚庝竴鏉¢煶棰� + const playAudio = allVideo + .reverse() + .find((item) => item.paused == false); + if (playAudio) { + const bottomGap = playAudio.getBoundingClientRect().bottom; + if (bottomGap < 0) { + playAudio.pause(); + this.audioPath = playAudio.src; + this.currentTime = playAudio.currentTime; + } + } + } + }, + // 椤甸潰鍚戜笂婊氬姩锛岄煶棰戝皬绐楀洖鏀� + handleAudio() { + if (!this.audioPath) return false; + let allVideo = ( + this.container ? this.container : document + ).querySelectorAll(".audio"); + allVideo = Array.from(allVideo); + if (allVideo.length) { + //鏌ユ壘涓庡皬绐楁挱鏀鹃煶棰戝悓婧愮殑椤甸潰audio DOM + const playAudio = allVideo.find((item) => item.src == this.audioPath); + if (playAudio) { + const bottomGap = playAudio.getBoundingClientRect().bottom; + if (bottomGap >= 0) { + if (this.$refs.audioPlayer) { + const playerState = this.$refs.audioPlayer.getVideoPlayer(); + this.audioPath = ""; + playAudio.currentTime = playerState.currentTime; + if (!playerState.paused) playAudio.play(); + } + } + } + } + }, + // 鍏抽棴mini video + closeMiniAudio() { + this.audioPath = ""; + }, + // 鐐瑰嚮闊抽鎾斁锛屽叧闂叾浠栭煶棰� + closeAudio() { + let allAudio = ( + this.container ? this.container : document + ).querySelectorAll(".audio"); + for (let index = 0; index < allAudio.length; index++) { + const item = allAudio[index]; + item.addEventListener("play", () => { + const audioList = Array.from(allAudio); + for (let cindex = 0; cindex < audioList.length; cindex++) { + const citem = audioList[cindex]; + if (citem.currentSrc != item.src) { + citem.pause(); + } + } + this.closeMiniAudio(); + }); + } + }, + // 鐐瑰嚮瑙嗛鍏抽棴鍏朵粬 + closeVideo() { + let allVideo = ( + this.container ? this.container : document + ).querySelectorAll(".video"); + for (let index = 0; index < allVideo.length; index++) { + const item = allVideo[index]; + item.addEventListener("playing", (item) => { + const path = item.srcElement.src; + const videoList = Array.from(allVideo); + for (let cindex = 0; cindex < videoList.length; cindex++) { + const citem = videoList[cindex]; + if (citem.currentSrc != path && path) { + citem.pause(); + } + } + }); + } + }, + // 瑙嗛灏忕獥 + handleVideoPicture() { + let doms = (this.container ? this.container : document).querySelectorAll( + ".video" + ); + doms = Array.from(doms); + if (!doms.length) return false; + const playVudio = doms.reverse().find((item) => item.paused == false); + if (playVudio) { + const bottomGap = playVudio.getBoundingClientRect().bottom; + const topGap = playVudio.getBoundingClientRect().top; + if (bottomGap < 0 || topGap > window.innerHeight) { + try { + if (playVudio.readyState) { + // playVudio.requestPictureInPicture(); + setTimeout(()=>{ + playVudio.requestPictureInPicture(); + },0) + } + } catch (error) { + console.log(error, "灏忕獥閿欒error"); + } + } + } + }, + //鍏朵粬绫诲悕涓嬪瓧浣撳ぇ灏忓彉鍖� + transformDom(fs) { + if (!fs) return; + let doms = (this.container ? this.container : document).querySelectorAll( + ".block" + ); + if (!doms.length) return; + for (let index = 0; index < doms.length; index++) { + const dom = doms[index]; + dom.style.fontSize = fs + "px"; + } + }, + }, + components: { + pageHeader, + // chapterOne, + // chapterTwo, + // chapterThree, + // chapterFour, + }, +}; +</script> + +<style lang="less" scoped> +.page-main { + width: 100% !important; + height: 100% !important; + overflow: auto; + + .page-content { + max-width: 816px; + min-width: 375px; + margin: 0 auto; + padding-bottom: 100px; + } +} +</style> diff --git a/src/books/civilPassengerTransport/view/index.vue b/src/books/civilPassengerTransport/view/index.vue new file mode 100644 index 0000000..6f67224 --- /dev/null +++ b/src/books/civilPassengerTransport/view/index.vue @@ -0,0 +1,78 @@ +<template> + <div class="civilPassengerTransport-book" @mouseup="handleMouseUp"> + <pageContent></pageContent> + </div> + </template> + + <script> + import pageContent from "./components/index.vue" + export default { + name: "civilPassengerTransport-book", + components: { pageContent }, + computed: { + fontSize() { + return this.$store.state.qiankun.fontSize; + }, + pageZoom() { + return this.$store.state.qiankun.scale / 100; + }, + }, + methods: { + getParentWithClass(element, className) { + while (element.parentElement) { + element = element.parentElement; + if (element.classList.contains(className)) { + return element; + } + } + }, + handleMouseUp(e) { + const selection = ( + this.container ? this.container : window + ).getSelection(); + const txt = selection.toString(); + if (selection.type != "none" && txt) { + let node = selection.anchorNode.parentNode; + let pageHtml = this.getParentWithClass( + selection.anchorNode, + "page-box" + ); + let chapterDom = this.getParentWithClass( + selection.anchorNode, + "chapter" + ); + let chapterNum; + if (chapterDom) chapterNum = chapterDom.getAttribute("num"); + if (pageHtml) { + const page = pageHtml.getAttribute("page"); + // 鐩戝惉閫変腑鏂囨湰浜嬩欢锛屽苟瑙﹀彂鐖跺眰鏂规硶 + if (this.$store.state.qiankun.windowSelection) { + this.$store.state.qiankun.windowSelection({ + chapterNum, + txt, + page, + x: e.x, + y: e.y, + }); + } + } + } else { + if (this.$store.state.qiankun.windowSelection) { + this.$store.state.qiankun.windowSelection({ + chapterNum: "", + txt: "", + page: "", + x: e.x, + y: e.y, + }); + } + } + }, + }, + }; + </script> + + <style lang="less"> + @import "../assets/main.less"; + </style> + \ No newline at end of file diff --git a/src/books/toddlerGameImplementation/assets/main.less b/src/books/toddlerGameImplementation/assets/main.less index e78b3e6..23bc3fe 100644 --- a/src/books/toddlerGameImplementation/assets/main.less +++ b/src/books/toddlerGameImplementation/assets/main.less @@ -174,8 +174,8 @@ font-family: "鏂规涔﹀畫"; } - .fm-fzxbs{ - font-weight: 100 !important; + .fm-fzxbs { + font-weight: 100 !important; font-size: 0.9em !important; font-family: "鏂规鏂版姤瀹�" !important; } @@ -1490,7 +1490,7 @@ } h4 { - font-family: '鏂规鍑嗛泤瀹�'; + font-family: 'FZZYS'; font-weight: 400; color: #03AFED; margin-bottom: 0.2em; @@ -1650,7 +1650,7 @@ .ls2 { - font-family: "鏂规鍑嗛泤瀹�"; + font-family: "FZZYS"; color: #00B1F5; font-weight: 400; font-size: 1em; @@ -2191,11 +2191,9 @@ } - - @font-face { font-family: '鏂规浠垮畫'; - src: url('./Fonts/FZFSK.TTF'); + src: url(../assets/Fonts/FZFSK.TTF); } @font-face { @@ -2247,13 +2245,13 @@ } @font-face { - font-family: '鏂规涓瓑绾�'; - src: url('./Fonts/FZZDXK.TTF'); + font-family: '鏂规涓瓑绾�'; + src: url('./Fonts/FZZDXK.TTF'); } @font-face { - font-family: '鏂规鍑嗛泤瀹�'; - src: url('./Fonts/FZZYSJW.TTF'); + font-family: 'FZZYS'; + src: url('./Fonts/FZZYSJW.TTF'); } diff --git a/src/books/toddlerGameImplementation/view/components/chapter002.vue b/src/books/toddlerGameImplementation/view/components/chapter002.vue index bf60a0b..9a3c1f1 100644 --- a/src/books/toddlerGameImplementation/view/components/chapter002.vue +++ b/src/books/toddlerGameImplementation/view/components/chapter002.vue @@ -612,7 +612,7 @@ <span class="c-g"> 绛旀锛歿{ item.answer }}</span> <span :class="{ 'c-g': item.isRight, 'c-r': item.isRight == false }">鎮ㄧ殑绛旀锛歿{ item.userAnswer - }}</span> + }}</span> <span class="icon-box-big fl al-c"> <svg v-if="item.isRight" t="1716986419862" class="icon" viewBox="0 0 1820 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="18767" @@ -644,7 +644,7 @@ </li> <li v-if="unitQuestionOne.isShowAnswer" class="event-header-text-bc pd-5 fl jc-sa"> <span class="c-g"> 绛旀锛�<span v-for="(answer, dindex) in item.answer" :key="dindex">{{ answer - }}銆�</span></span> + }}銆�</span></span> <span :class="{ 'c-g': item.isRight, 'c-r': item.isRight == false }">鎮ㄧ殑绛旀锛�<span v-for="(userAnswer, eindex) in item.userAnswer" :key="eindex">{{ userAnswer }}銆�</span></span> @@ -1192,7 +1192,7 @@ <span class="c-g"> 绛旀锛歿{ item.answer }}</span> <span :class="{ 'c-g': item.isRight, 'c-r': item.isRight == false }">鎮ㄧ殑绛旀锛歿{ item.userAnswer - }}</span> + }}</span> <span class="icon-box-big fl al-c"> <svg v-if="item.isRight" t="1716986419862" class="icon" viewBox="0 0 1820 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="18767" @@ -1240,7 +1240,7 @@ <span class="c-g"> 绛旀锛歿{ item.answer }}</span> <span :class="{ 'c-g': item.isRight, 'c-r': item.isRight == false }">鎮ㄧ殑绛旀锛歿{ item.userAnswer - }}</span> + }}</span> <span class="icon-box-big fl al-c"> <svg v-if="item.isRight" t="1716986419862" class="icon" viewBox="0 0 1820 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="18767" @@ -1272,7 +1272,7 @@ </li> <li v-if="unitQuestionTwo.isShowAnswer" class="event-header-text-bc pd-5 fl jc-sa"> <span class="c-g"> 绛旀锛�<span v-for="(answer, dindex) in item.answer" :key="dindex">{{ answer - }}銆�</span></span> + }}銆�</span></span> <span :class="{ 'c-g': item.isRight, 'c-r': item.isRight == false }">鎮ㄧ殑绛旀锛�<span v-for="(userAnswer, eindex) in item.userAnswer" :key="eindex">{{ userAnswer }}銆�</span></span> @@ -1406,9 +1406,9 @@ </div> </div> <preView :isClear="dialogVisible" :md5="p_md5" :pdfTitle="somePdfTitleValue" ref="pdfDialogRef"></preView> - <dialogExaminations :isClear="dialogVisibleOne" :primaryColor="themeColor" - :cardList="interfaceQuestion[questionNum]" v-if="interfaceQuestion" :chapter="3" :page="questionNum" - :questionTitle="questionTitleMain" ref="dialogRef"> + <dialogExaminations :isClear="dialogVisibleOne" :primaryColor="themeColor" :cardList="cardArrayList" + v-if="interfaceQuestion" :chapter="3" :page="questionNum" :questionTitle="questionTitleMain" + ref="dialogRef"> </dialogExaminations> </div> </template> @@ -1485,6 +1485,7 @@ themeColor: "#6dcff6", questionNum: 0, questionTitleMain: "", + cardArrayList: [], // 棰樼洰 tableData: { unitOne: { @@ -1783,6 +1784,17 @@ }, }; }, + watch: { + interfaceQuestion: { + handler(newValue) { + if (newValue[this.questionNum] != undefined) { + this.cardArrayList = newValue[this.questionNum]; + } + }, + deep: true, + immediate: true + }, + }, async mounted() { const bookQuestion = localStorage.getItem( "toddleGame-book-chapter02-tableData" @@ -1903,8 +1915,6 @@ JSON.stringify(this.unitQuestionOne) ); }, - - goUnitTwo() { for (let index = 0; index < this.unitQuestionTwo.unitOne.length; index++) { const item = this.unitQuestionTwo.unitOne[index]; @@ -1951,7 +1961,6 @@ JSON.stringify(this.unitQuestionTwo) ); }, - toUrl(val) { if (val) { this.p_md5 = this.chapter001.pdfMd5[val].md5; diff --git a/src/books/toddlerGameImplementation/view/components/chapter007.vue b/src/books/toddlerGameImplementation/view/components/chapter007.vue index 53aa380..b8873ca 100644 --- a/src/books/toddlerGameImplementation/view/components/chapter007.vue +++ b/src/books/toddlerGameImplementation/view/components/chapter007.vue @@ -1526,7 +1526,7 @@ name: "妯″潡涓兟犲矖浣嶈繘闃惰缁�", }, 2: { - md5: "aba3b273bec8580f316611f82118cb21", + md5: "81517e6df1265de49aa9000c456ef2fc", name: "妯″潡涓兟犲疄璁伐浣滀换鍔�", }, }, @@ -1775,7 +1775,7 @@ ], unitOneChoice: [ { - txt: "鍦�4-6涓湀濠村効鐨勬儏缁儏鎰熶笌绀句細鎬у彂灞曠壒鐐逛腑锛屾弿杩版纭殑鏈夛紙銆�锛夈��", + txt: "鍦�4锝�6涓湀濠村効鐨勬儏缁儏鎰熶笌绀句細鎬у彂灞曠壒鐐逛腑锛屾弿杩版纭殑鏈夛紙銆�锛夈��", isRight: null, answer: ["A", "B", "D"], userAnswer: [], diff --git a/src/books/toddlerGameImplementation/view/components/index.vue b/src/books/toddlerGameImplementation/view/components/index.vue index b547e4b..f63b78e 100644 --- a/src/books/toddlerGameImplementation/view/components/index.vue +++ b/src/books/toddlerGameImplementation/view/components/index.vue @@ -178,9 +178,10 @@ }, 500); // 娴嬭瘯椤甸潰璺宠浆 - // setTimeout(() => { - // this.gotoPage(6, 118); - // }, 500); + setTimeout(() => { + this.gotoPage(4, 59); + }, 500); + // const pageDom = (this.container ? this.container : document) // .querySelector("#app") // .querySelectorAll(".page-box"); @@ -537,6 +538,7 @@ } }); }, + loadPageCallback(entries, observer) { entries.forEach(async (entry) => { if (entry.isIntersecting) { @@ -554,11 +556,12 @@ if (testData && testData[catalog]) { if (testData[catalog][page]) { if (Array.isArray(testData[catalog][page])) { - this.questionDataMap[page] = await getQuestionList( + Vue.set(this.questionDataMap, page, await getQuestionList( page, testData[catalog][page], this.config.activeBook - ); + )); + console.log("棰樼洰", this.questionDataMap); } else { const obj = {}; for (let key in testData[catalog][page]) { @@ -568,9 +571,8 @@ this.config.activeBook ); } - this.questionDataMap[page] = obj; + Vue.set(this.questionDataMap, page, obj); } - console.log("棰樼洰", this.questionDataMap); } } } diff --git a/src/components/dialogExaminations/index.vue b/src/components/dialogExaminations/index.vue index b001916..91ce858 100644 --- a/src/components/dialogExaminations/index.vue +++ b/src/components/dialogExaminations/index.vue @@ -367,18 +367,19 @@ ], }; }, - watch: { - cardList: { - handler(newVal) { - this.cardData = this.cardList; - if (newVal && newVal.length) { - this.loading = false; - } - }, - immediate: true, - deep: true, +watch: { + cardList: { + handler(newVal) { + if (newVal && newVal.length) { + this.cardData = newVal; + this.loading = false; + } }, + immediate: true, + deep: true, }, +}, + mounted() { this.getCollectIdList(); this.getErrorList(); diff --git a/src/components/pdfview/index.vue b/src/components/pdfview/index.vue index a712e0f..845bf08 100644 --- a/src/components/pdfview/index.vue +++ b/src/components/pdfview/index.vue @@ -1,15 +1,7 @@ <!-- @format --> <template> - <el-dialog - :visible.sync="localDialogVisible" - @open="hadleOpenDialog" - width="60vw" - top="2vh" - append-to-body - lock-scroll - :show-close="false" - class="custom-dialog" - > + <el-dialog :visible.sync="localDialogVisible" @open="hadleOpenDialog" width="60vw" top="2vh" append-to-body + lock-scroll :show-close="false" class="custom-dialog"> <div slot="title" class="header_title"> <span>{{ pdfTitle }}</span> <span @click="closeDialog"> x </span> @@ -54,7 +46,7 @@ return { localDialogVisible: false, currentPageSrc: "", - currentPage: 1, + currentPage: 3, totalPage: 1, viewerCon: null, preViewMd5: "", @@ -92,7 +84,7 @@ methods: { hadleOpenDialog() { this.preViewMd5 = this.md5; - this.currentPage = 1; + this.currentPage = 3; this.currentPageSrc = ""; this.totalPage = 1; this.viewerCon?.destroy(); @@ -174,7 +166,7 @@ if (this.currentPage < this.totalPage) { this.currentPage++; if (this.currentPage <= this.totalPage) { - this.createDom(this.currentPage, ele); + this.createDom(this.currentPage); } } } @@ -182,6 +174,7 @@ }); } }, + getFileInfo() { // 鑾峰彇鐩綍 @@ -198,8 +191,8 @@ } catch (error) { console.log(error, "pdf杩斿洖鍊肩被鍨嬮敊璇�"); } - Math.min(3, res.totalPages); - for (let i = 0; i <= Math.min(3, res.totalPages); i++) { + const maxPages = Math.min(3, this.totalPage); + for (let i = 0; i < maxPages; i++) { this.createDom(i + 1); } this.loading = false; @@ -211,6 +204,7 @@ this.loading = false; }); }, + getPageImage(page) { const ctx = process.env.VUE_APP_API_URL; return ( diff --git a/vue.config.js b/vue.config.js index 3473d09..dfbae49 100644 --- a/vue.config.js +++ b/vue.config.js @@ -1,7 +1,10 @@ const { defineConfig } = require("@vue/cli-service"); const webpack = require("webpack"); // 鑾峰彇鎵�鏈変功绫嶅垪琛� -const bookList = process.env.VUE_APP_BOOK_LIST ? process.env.VUE_APP_BOOK_LIST.split("/") : []; +const bookList = process.env.VUE_APP_BOOK_LIST + ? process.env.VUE_APP_BOOK_LIST.split("/") + : []; +const publicPath = process.env.VUE_APP_PUBLIC_PATH; module.exports = defineConfig({ publicPath: process.env.VUE_APP_PUBLIC_PATH, transpileDependencies: true, @@ -14,14 +17,14 @@ "access-control-allow-origin": "*", }, client: { - overlay: { warnings: false, errors: true } - } + overlay: { warnings: false, errors: true }, + }, }, configureWebpack: { output: { library: `app-content`, libraryTarget: "umd", - chunkLoadingGlobal: `webpackJsonp_app-content` + chunkLoadingGlobal: `webpackJsonp_app-content`, }, plugins: [ new webpack.IgnorePlugin({ @@ -39,9 +42,9 @@ } } return false; - } - }) - ] + }, + }), + ], }, chainWebpack: (config) => { config.module @@ -53,8 +56,19 @@ .loader("change-prefix-loader") .options({ prefix: "el-", - replace: "gp-" + replace: "gp-", }) .end(); - } + // config.module + // .rule("fonts") + // .test(/.(woff|woff2|eot|ttf|otf|TTF)$/) + // .type("asset/resource") + // .use("file-loader") + // .loader("file-loader") + // .options({ + // name: "fonts/[name].[hash:8].[ext]", // 杈撳嚭鍒� dist/fonts/ 鐩綍 + // publicPath: publicPath, // 纭繚 publicPath 姝g‘ + // limit: 0, + // }); + }, }); diff --git a/yarn.lock b/yarn.lock index fc4d9f9..a6efdb3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1085,6 +1085,30 @@ resolved "https://registry.npmmirror.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== +"@isaacs/balanced-match@^4.0.1": + version "4.0.1" + resolved "https://registry.npmmirror.com/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz" + integrity sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ== + +"@isaacs/brace-expansion@^5.0.0": + version "5.0.0" + resolved "https://registry.npmmirror.com/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz" + integrity sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA== + dependencies: + "@isaacs/balanced-match" "^4.0.1" + +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.npmmirror.com/@isaacs/cliui/-/cliui-8.0.2.tgz" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + "@jridgewell/gen-mapping@^0.3.5": version "0.3.5" resolved "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz" @@ -2044,6 +2068,11 @@ resolved "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.1.0" + resolved "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-6.1.0.tgz" + integrity sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA== + ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz" @@ -2064,6 +2093,11 @@ integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" + +ansi-styles@^6.1.0: + version "6.2.1" + resolved "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-6.2.1.tgz" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== any-promise@^1.0.0: version "1.3.0" @@ -2756,10 +2790,10 @@ shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.2, cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== +cross-spawn@^7.0.2, cross-spawn@^7.0.3, cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" @@ -3137,6 +3171,11 @@ resolved "https://registry.npmmirror.com/duplexer/-/duplexer-0.1.2.tgz" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + easy-stack@1.0.1: version "1.0.1" resolved "https://registry.npmmirror.com/easy-stack/-/easy-stack-1.0.1.tgz" @@ -3168,6 +3207,11 @@ version "8.0.0" resolved "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== emojis-list@^3.0.0: version "3.0.0" @@ -3622,6 +3666,14 @@ dependencies: flat-cache "^3.0.4" +file-loader@*, file-loader@^6.2.0: + version "6.2.0" + resolved "https://registry.npmmirror.com/file-loader/-/file-loader-6.2.0.tgz" + integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + fill-range@^7.0.1: version "7.0.1" resolved "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz" @@ -3682,6 +3734,14 @@ version "1.15.6" resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.6.tgz" integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA== + +foreground-child@^3.3.1: + version "3.3.1" + resolved "https://registry.npmmirror.com/foreground-child/-/foreground-child-3.3.1.tgz" + integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== + dependencies: + cross-spawn "^7.0.6" + signal-exit "^4.0.1" form-data@^4.0.0: version "4.0.0" @@ -3822,6 +3882,18 @@ version "0.4.1" resolved "https://registry.npmmirror.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== + +glob@^11.0.0: + version "11.0.3" + resolved "https://registry.npmmirror.com/glob/-/glob-11.0.3.tgz" + integrity sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA== + dependencies: + foreground-child "^3.3.1" + jackspeak "^4.1.1" + minimatch "^10.0.3" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^2.0.0" glob@^7.1.3: version "7.2.3" @@ -4321,6 +4393,13 @@ resolved "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== +jackspeak@^4.1.1: + version "4.1.1" + resolved "https://registry.npmmirror.com/jackspeak/-/jackspeak-4.1.1.tgz" + integrity sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + javascript-stringify@^2.0.1: version "2.1.0" resolved "https://registry.npmmirror.com/javascript-stringify/-/javascript-stringify-2.1.0.tgz" @@ -4638,6 +4717,11 @@ dependencies: tslib "^2.0.3" +lru-cache@^11.0.0: + version "11.1.0" + resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-11.1.0.tgz" + integrity sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A== + lru-cache@^4.0.1: version "4.1.5" resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-4.1.5.tgz" @@ -4794,6 +4878,13 @@ resolved "https://registry.npmmirror.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== +minimatch@^10.0.3: + version "10.0.3" + resolved "https://registry.npmmirror.com/minimatch/-/minimatch-10.0.3.tgz" + integrity sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw== + dependencies: + "@isaacs/brace-expansion" "^5.0.0" + minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz" @@ -4817,6 +4908,11 @@ version "5.0.0" resolved "https://registry.npmmirror.com/minipass/-/minipass-5.0.0.tgz" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== + +minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.npmmirror.com/minipass/-/minipass-7.1.2.tgz" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== minizlib@^2.1.1: version "2.1.2" @@ -5162,6 +5258,11 @@ resolved "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +package-json-from-dist@^1.0.0: + version "1.0.1" + resolved "https://registry.npmmirror.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + param-case@^3.0.4: version "3.0.4" resolved "https://registry.npmmirror.com/param-case/-/param-case-3.0.4.tgz" @@ -5256,6 +5357,14 @@ version "1.0.7" resolved "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-scurry@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/path-scurry/-/path-scurry-2.0.0.tgz" + integrity sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg== + dependencies: + lru-cache "^11.0.0" + minipass "^7.1.2" path-to-regexp@0.1.7: version "0.1.7" @@ -5878,6 +5987,14 @@ dependencies: glob "^7.1.3" +rimraf@^6.0.1: + version "6.0.1" + resolved "https://registry.npmmirror.com/rimraf/-/rimraf-6.0.1.tgz" + integrity sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A== + dependencies: + glob "^11.0.0" + package-json-from-dist "^1.0.0" + run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz" @@ -6149,6 +6266,11 @@ resolved "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.npmmirror.com/signal-exit/-/signal-exit-4.1.0.tgz" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + simple-concat@^1.0.0: version "1.0.1" resolved "https://registry.npmmirror.com/simple-concat/-/simple-concat-1.0.1.tgz" @@ -6323,6 +6445,15 @@ dependencies: safe-buffer "~5.1.0" +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz" @@ -6340,6 +6471,22 @@ is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.npmmirror.com/string-width/-/string-width-5.1.2.tgz" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-4.0.0.tgz" @@ -6353,6 +6500,13 @@ integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" + +strip-ansi@^7.0.1: + version "7.1.0" + resolved "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-7.1.0.tgz" + integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== + dependencies: + ansi-regex "^6.0.1" strip-eof@^1.0.0: version "1.0.0" @@ -6669,6 +6823,15 @@ integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" + +url-loader@^4.1.1: + version "4.1.1" + resolved "https://registry.npmmirror.com/url-loader/-/url-loader-4.1.1.tgz" + integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== + dependencies: + loader-utils "^2.0.0" + mime-types "^2.1.27" + schema-utils "^3.0.0" url-parse@^1.5.3: version "1.5.10" @@ -7039,6 +7202,15 @@ resolved "https://registry.npmmirror.com/wildcard/-/wildcard-2.0.1.tgz" integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ== +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^3.0.1: version "3.0.1" resolved "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz" @@ -7056,6 +7228,15 @@ string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + wrappy@1: version "1.0.2" resolved "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz" -- Gitblit v1.9.1