install commit!

This commit is contained in:
chengzhaofeng 2024-10-14 19:35:56 +08:00
commit 8d80832062
2116 changed files with 501086 additions and 0 deletions

3
.browserslistrc Normal file
View File

@ -0,0 +1,3 @@
> 1%
last 2 versions
not ie <= 8

15
.editorconfig Normal file
View File

@ -0,0 +1,15 @@
# http://editorconfig.org
root = true
[*]
charset = utf-8
indent_style = space
indent_size = 2
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
[*.md]
insert_final_newline = false
trim_trailing_whitespace = false

4
.eslintignore Normal file
View File

@ -0,0 +1,4 @@
build/*.js
src/assets
public
dist

215
.eslintrc.js Normal file
View File

@ -0,0 +1,215 @@
module.exports = {
root: true,
parserOptions: {
parser: 'babel-eslint',
sourceType: 'module'
},
env: {
browser: true,
node: true,
es6: true
},
extends: ['plugin:vue/recommended', 'eslint:recommended'],
// add your custom rules here
// it is base on https://github.com/vuejs/eslint-config-vue
rules: {
'vue/max-attributes-per-line': [2, {
'singleline': 10,
'multiline': {
'max': 1,
'allowFirstLine': false
}
}],
'vue/html-self-closing': ['error', {
'html': {
'void': 'any',
'normal': 'any',
'component': 'any'
},
'svg': 'any',
'math': 'any'
}],
'vue/singleline-html-element-content-newline': 'off',
'vue/no-parsing-error': [2, { 'invalid-first-character-of-tag-name': false }],
'vue/no-use-v-if-with-v-for': 'off',
'vue/multiline-html-element-content-newline': 'off',
'vue/name-property-casing': [0, 'PascalCase'],
'vue/html-closing-bracket-newline': [0, {
'singleline': 'never',
'multiline': 'always'
}],
'vue/no-side-effects-in-computed-properties': 0,
'accessor-pairs': 2, //在对象中使用getter/setter
'arrow-spacing': [2, {
'before': true,
'after': true
}], //=>的前/后括号
'block-spacing': [2, 'always'], //块是否需要空格
// if while function 后面的{必须与if在同一行,java风格。
'brace-style': [2, '1tbs', {
'allowSingleLine': true
}],
//强制驼峰法命名
'camelcase': [0, {
'properties': 'always'
}],
// 数组和对象键值对最后一个逗号, never参数:不能带末尾的逗号, always参数:必须带末尾的逗号,
// always-multiline:多行模式必须带逗号,单行模式不能带逗号
'comma-dangle': [2, 'never'],
// 控制逗号前后的空格
'comma-spacing': [2, {
'before': false,
'after': true
}],
'comma-style': [2, 'last'], // 控制逗号在行尾出现还是在行首出现
// 强制在子类构造函数中用super()调用父类构造函数,TypeScrip的编译器也会提示
'constructor-super': 2,
// 强制object.key 中 . 的位置,参数:
// property,'.'号应与属性在同一行
// object, '.' 号应与对象名在同一行
'dot-location': [2, 'property'],
'eol-last': 2, // 文件末尾强制换行
'eqeqeq': [2, 'allow-null'], // 使用 === 替代 ==
'generator-star-spacing': 0, //生成器函数*的前后空格
'handle-callback-err': 0, //nodejs 处理错误
'indent': [2, 2, { //缩进风格
'SwitchCase': 1
}],
// JSX 属性中一致使用双引号或单引号
'jsx-quotes': [2, 'prefer-single'],
//对象字面量中冒号的前后空格
'key-spacing': [2, {
'beforeColon': false,
'afterColon': true
}],
'keyword-spacing': [2, {
'before': true,
'after': true
}],
//函数名首行大写必须使用new方式调用,首行小写必须用不带new方式调用
'new-cap': [2, {
'newIsCap': true,
'capIsNew': false
}],
'new-parens': 2, //new时必须加小括号
'no-array-constructor': 2, //禁止使用数组构造器
'no-caller': 2, //禁止使用arguments.caller或arguments.callee
'no-console': process.env.NODE_ENV === 'production' ? 2 : 0, //禁止使用console
'no-class-assign': 2, //禁止给类赋值
'no-cond-assign': 2, //禁止在条件表达式中使用赋值语句
'no-const-assign': 2, //禁止修改const声明的变量
'no-control-regex': 0, //禁止在正则表达式中使用控制字符
'no-delete-var': 2, //不能对var声明的变量使用delete操作符
'no-dupe-args': 2, //函数参数不能重复
'no-dupe-class-members': 2, //不允许类中出现重复的声明
'no-dupe-keys': 2, //在创建对象字面量时不允许键重复 {a:1,a:1}
'no-duplicate-case': 2, //switch中的case标签不能重复
'no-empty-character-class': 0, //正则表达式中的[]内容不能为空
'no-empty-pattern': 0,
'no-eval': 0, //禁止使用eval
'no-ex-assign': 2, //禁止给catch语句中的异常参数赋值
'no-extend-native': 2, //禁止扩展native对象
'no-extra-bind': 2, //禁止不必要的函数绑定
'no-extra-boolean-cast': 2, //禁止不必要的bool转换
'no-extra-parens': [2, 'functions'], //禁止非必要的括号
'no-fallthrough': 2, //禁止switch穿透
'no-floating-decimal': 2, //禁止省略浮点数中的0 .5 3.
'no-func-assign': 2, //禁止重复的函数声明
'no-implied-eval': 2, //禁止使用隐式eval
'no-inner-declarations': [2, 'functions'], //禁止在块语句中使用声明(变量或函数)
'no-invalid-regexp': 2, //禁止无效的正则表达式
'no-irregular-whitespace': 2, //不能有不规则的空格
'no-iterator': 2, //禁止使用__iterator__ 属性
'no-label-var': 2, //label名不能与var声明的变量名相同
'no-labels': [2, { //禁止标签声明
'allowLoop': false,
'allowSwitch': false
}],
'no-lone-blocks': 2, //禁止不必要的嵌套块
'no-mixed-spaces-and-tabs': 2, //禁止混用tab和空格
'no-multi-spaces': 2, //不能用多余的空格
'no-multi-str': 2, //字符串不能用\换行
'no-multiple-empty-lines': [0, {
'max': 1
}], //空行最多不能超过1行
'no-native-reassign': 2, //不能重写native对象
'no-negated-in-lhs': 2, //in 操作符的左边不能有!
'no-new-object': 2, //禁止使用new Object()
'no-new-require': 2, //禁止使用new require
'no-new-symbol': 2, //禁止使用new symbol
'no-new-wrappers': 2, //禁止使用new创建包装实例,new String new Boolean new Number
'no-obj-calls': 0, //不能调用内置的全局对象,比如Math() JSON()
'no-octal': 2, //禁止使用八进制数字
'no-octal-escape': 2, //禁止使用八进制转义序列
'no-path-concat': 2, //node中不能使用__dirname或__filename做路径拼接
'no-proto': 2, //禁止使用__proto__属性
'no-redeclare': 2, //禁止重复声明变量
'no-regex-spaces': 2, //禁止在正则表达式字面量中使用多个空格 /foo bar/
'no-return-assign': [2, 'except-parens'], //return 语句中不能有赋值表达式
'no-self-assign': 2, //自我分配
'no-self-compare': 2, //不能比较自身
'no-sequences': 2, //禁止使用逗号运算符
'no-shadow-restricted-names': 2, //严格模式中规定的限制标识符不能作为声明时的变量名使用
'no-spaced-func': 2, //函数调用时 函数名与()之间不能有空格
'no-sparse-arrays': 2, //禁止稀疏数组, [1,,2]
'no-this-before-super': 2, //在调用super()之前不能使用this或super
'no-throw-literal': 2, //禁止抛出字面量错误 throw "error";
'no-trailing-spaces': 0, //一行结束后面不要有空格
'no-undef': 2, //不能有未定义的变量
'no-undef-init': 2, //变量初始化时不能直接给它赋值为undefined
'no-unexpected-multiline': 0, //避免多行表达式
'no-unmodified-loop-condition': 0, //检查引用是否在循环中被修改
'no-unneeded-ternary': 0, //禁止不必要的嵌套 var isYes = answer === 1 ? true : false;
'no-unreachable': 2, //不能有无法执行的代码
'no-unsafe-finally': 0,
'no-unused-vars': [2, {
'vars': 'all',
'args': 'none'
}], //不能有声明后未被使用的变量或参数
'no-useless-call': 2, //禁止不必要的call和apply
'no-useless-computed-key': 0, //没有必要使用带文字的计算属性
'no-useless-constructor': 2, //可以在不改变类的工作方式的情况下安全地移除的类构造函数
'no-useless-escape': 0,
'no-whitespace-before-property': 0,
'no-with': 2, //禁用with
'one-var': 0, //连续声明
'operator-linebreak': [2, 'after', {
'overrides': {
'?': 'before',
':': 'before'
}
}], //换行时运算符在行尾还是行首
'padded-blocks': 0, //块语句内行首行尾是否要空行
'quotes': [2, 'single', {
'avoidEscape': true,
'allowTemplateLiterals': true
}], //引号类型 `` "" ''
'semi': [2, 'never'], //语句强制分号结尾
'semi-spacing': [2, {
'before': false,
'after': true
}], //分号前后空格
'space-before-blocks': [2, 'always'], //不以新行开始的块{前面要不要有空格
'space-before-function-paren': [2, 'never'], //函数定义时括号前面要不要有空格
'space-in-parens': [2, 'never'], //小括号里面要不要有空格
'space-infix-ops': 2, //中缀操作符周围要不要有空格
'space-unary-ops': [2, {
'words': true,
'nonwords': false
}], //一元运算符的前/后要不要加空格
'spaced-comment': 0, //注释风格不要有空格什么的
'template-curly-spacing': [2, 'never'],
'use-isnan': 2, //禁止比较时使用NaN,只能用isNaN()
'valid-typeof': 2, //必须使用合法的typeof的值
'wrap-iife': [2, 'any'], //立即执行函数表达式的小括号风格
'yield-star-spacing': 0,
'yoda': [2, 'never'], //禁止尤达条件
'prefer-const': 2, //首选const
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0, //禁止使用debugger
'object-curly-spacing': [2, 'always', {
objectsInObjects: false
}], //大括号内是否允许不必要的空格
'array-bracket-spacing': [2, 'never'] //是否允许非空数组里面有多余的空格
}
}

35
.gitignore vendored Normal file
View File

@ -0,0 +1,35 @@
.DS_Store
node_modules
/dist
/tests/e2e/videos/
/tests/e2e/screenshots/
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw*
# Lock File
package-lock.json
yarn.lock
src/page/login/index copy.vue
src/styles/login copy.scss
src/styles/login copy 2.scss
*.zip
/zip
/target

28
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,28 @@
## GitLab CI/CD Config File
## https://ewiki.semi-tech.com/STC/CICD/index.md
## https://docs.gitlab.com/ee/ci/index.html
## https://docs.gitlab.com/ee/ci/yaml/index.html
---
variables:
## `BOT_ALIAS` and `TEMPLATE_ALIAS` can be set here, or defined in your Group/Project > Settings > CI/CD > Variables
## !!!: Project variables > Group variables > Instance(GitLab) variables > .yml job variables > .yml global variables
## CI/CD variable precedence: https://docs.gitlab.com/ee/ci/variables/index.html#cicd-variable-precedence
BOT_ALIAS: "TODO_replace_with_your_bot_alias"
TEMPLATE_ALIAS: "sonar"
VERBOSE: "false"
default:
tags:
## public runners
- public
include:
## https://gitlab.semi-tech.com/stc/cicd/cicd-config
- project: stc/cicd/cicd-config
ref: master
file: js.yml

31
.npmrc Normal file
View File

@ -0,0 +1,31 @@
registry=https://registry.npmmirror.com
disturl=https://npmmirror.com/dist
chromedriver-cdnurl=https://npmmirror.com/mirrors/chromedriver
couchbase-binary-host-mirror=https://npmmirror.com/mirrors/couchbase/v{version}
debug-binary-host-mirror=https://npmmirror.com/mirrors/node-inspector
electron-mirror=https://npmmirror.com/mirrors/electron/
flow-bin-binary-host-mirror=https://npmmirror.com/mirrors/flow/v
fse-binary-host-mirror=https://npmmirror.com/mirrors/fsevents
fuse-bindings-binary-host-mirror=https://npmmirror.com/mirrors/fuse-bindings/v{version}
git4win-mirror=https://npmmirror.com/mirrors/git-for-windows
gl-binary-host-mirror=https://npmmirror.com/mirrors/gl/v{version}
grpc-node-binary-host-mirror=https://npmmirror.com/mirrors
hackrf-binary-host-mirror=https://npmmirror.com/mirrors/hackrf/v{version}
leveldown-binary-host-mirror=https://npmmirror.com/mirrors/leveldown/v{version}
leveldown-hyper-binary-host-mirror=https://npmmirror.com/mirrors/leveldown-hyper/v{version}
mknod-binary-host-mirror=https://npmmirror.com/mirrors/mknod/v{version}
node-sqlite3-binary-host-mirror=https://npmmirror.com/mirrors
node-tk5-binary-host-mirror=https://npmmirror.com/mirrors/node-tk5/v{version}
nodegit-binary-host-mirror=https://npmmirror.com/mirrors/nodegit/v{version}/
operadriver-cdnurl=https://npmmirror.com/mirrors/operadriver
phantomjs-cdnurl=https://npmmirror.com/mirrors/phantomjs
profiler-binary-host-mirror=https://npmmirror.com/mirrors/node-inspector/
puppeteer-download-host=https://npmmirror.com/mirrors
python-mirror=https://npmmirror.com/mirrors/python
rabin-binary-host-mirror=https://npmmirror.com/mirrors/rabin/v{version}
sass-binary-site=https://npmmirror.com/mirrors/node-sass
sodium-prebuilt-binary-host-mirror=https://npmmirror.com/mirrors/sodium-prebuilt/v{version}
sqlite3-binary-site=https://npmmirror.com/mirrors/sqlite3
utf-8-validate-binary-host-mirror=https://npmmirror.com/mirrors/utf-8-validate/v{version}
utp-native-binary-host-mirror=https://npmmirror.com/mirrors/utp-native/v{version}
zmq-prebuilt-binary-host-mirror=https://npmmirror.com/mirrors/zmq-prebuilt/v{version}

5
.postcssrc.js Normal file
View File

@ -0,0 +1,5 @@
module.exports = {
plugins: {
autoprefixer: {}
}
}

12
Dockerfile Normal file
View File

@ -0,0 +1,12 @@
FROM node:14.18.3 as builder
WORKDIR /opt
COPY .. .
RUN npm install -g cnpm --registry=https://registry.npm.taobao.org \
&& cnpm install && cnpm run build
FROM nginx:1.19
COPY --from=builder /opt/web.conf /etc/nginx/conf.d/default.conf
COPY --from=builder /opt/dist /opt/dist

5
README.md Normal file
View File

@ -0,0 +1,5 @@
# nlv-ui
#### 介绍
所有模块的前端

7
babel.config.js Normal file
View File

@ -0,0 +1,7 @@
module.exports = {
presets: [[
'@vue/app',
{ useBuiltIns: "entry" }
]],
plugins: ["@babel/plugin-proposal-optional-chaining", "@babel/plugin-transform-modules-commonjs"]
}

9
docker/Dockerfile Normal file
View File

@ -0,0 +1,9 @@
FROM nginx
COPY ./dist /data
RUN rm /etc/nginx/conf.d/default.conf
ADD mom-ui.conf /etc/nginx/conf.d/default.conf
RUN /bin/bash -c 'echo init ok'

View File

@ -0,0 +1,19 @@
version: '3'
services:
mom-ui:
build:
context: .
restart: always
container_name: mom-ui
image: mom-ui
networks:
- mom_default
external_links:
- mom-gateway
ports:
- 80:80
# 加入到后端网络, 默认为 mom_default | docker network ls 查看
networks:
mom_default:
external: true

26
docker/mom-ui.conf Normal file
View File

@ -0,0 +1,26 @@
server {
listen 80;
gzip on;
gzip_static on; # 需要http_gzip_static_module 模块
gzip_min_length 1k;
gzip_comp_level 4;
gzip_proxied any;
gzip_types text/plain text/xml text/css;
gzip_vary on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
# 前端打包好的dist目录文件
root /data/;
# 若新增后端路由前缀注意在此处添加(|新增)
location ~* ^/(code|auth|admin|monitor|actuator|gen|job|tx|act|mp|pay|jimu|aj|rpt|mes-core|pms|tooling|anomaly) {
proxy_pass http://mom-gateway:9999;
proxy_connect_timeout 15s;
proxy_send_timeout 15s;
proxy_read_timeout 15s;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto http;
}
}

9
jsconfig.json Normal file
View File

@ -0,0 +1,9 @@
{
"compilerOptions": {
"baseUrl": "./",
"paths": {
"@/*": ["src/*"]
}
},
"exclude": ["node_modules", "dist"]
}

9
nlv-ui.iml Normal file
View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

3
nodestatic.json Normal file
View File

@ -0,0 +1,3 @@
{
"path": "dist"
}

108
package.json Normal file
View File

@ -0,0 +1,108 @@
{
"name": "nlv-ui",
"version": "4.5.0",
"private": true,
"scripts": {
"dev": "vue-cli-service serve",
"build": "vue-cli-service build",
"build:docker": "vue-cli-service build --dest=./docker/dist/",
"lint": "vue-cli-service lint",
"analyze": "vue-cli-service build --report",
"build:rainbond": "vue-cli-service build --mode test --dest=./rainbond/dist/ && cd rainbond && (if exist .git rd /s /q .git) && copy web.conf dist && git init && git add . && git commit -m \"@deploy\" && git push -f https://gitee.com/forever_win/mom-ui-html-3peak.git master",
"macbuild:rainbond": "vue-cli-service build --mode test --dest=./rainbond/dist/ && cd rainbond && rm -rf .git && cp web.conf dist && git init && git add . && git commit -m \"@deploy\" && git push -f https://gitee.com/forever_win/mom-ui-html-3peak.git master",
"build:prd": "vue-cli-service build --mode production --dest=./rainbond/dist/ && cd rainbond && (if exist .git rd /s /q .git) && copy web.conf dist && git init && git add . && git commit -m \"@deploy\" && git push -f https://gitee.com/forever_win/mom-ui-html-prd-3peak.git master",
"macbuild:prd": "vue-cli-service build --mode production --dest=./rainbond/dist/ && cd rainbond && rm -rf .git && cp web.conf dist && git init && git add . && git commit -m \"@deploy\" && git push -f https://gitee.com/forever_win/mom-ui-html-prd-3peak.git master"
},
"dependencies": {
"@chenfengyuan/vue-qrcode": "^1.0.1",
"@riophae/vue-treeselect": "0.4.0",
"@tinymce/tinymce-vue": "^3.2.0",
"@types/webpack-env": "^1.18.4",
"@xkeshi/image-compressor": "^0.5.3",
"avue-plugin-ueditor": "^0.1.4",
"axios": "^0.18.0",
"babel-polyfill": "^6.26.0",
"bin-code-editor": "^0.9.0",
"bpmn-js-create-append-anything": "^0.4.0",
"bpmn-js-token-simulation": "0.10.0",
"classlist-polyfill": "^1.2.0",
"clipboard": "^2.0.4",
"codemirror": "^5.53.2",
"cropperjs": "^1.6.2",
"crypto-js": "^3.1.9-1",
"e-icon-picker": "^1.1.7",
"echarts": "^4.9.0",
"el-table-draggable": "^1.4.12",
"element-ui": "2.15.8",
"encryptlong": "^3.1.4",
"exceljs": "^4.3.0",
"file-saver": "^2.0.5",
"highlight.js": "10.5.0",
"js-beautify": "1.13.0",
"js-cookie": "^2.2.0",
"jsencrypt": "^3.3.2",
"json-server": "^1.0.0-alpha.23",
"jsplumb": "^2.9.2",
"less": "^4.1.1",
"less-loader": "^6.0.0",
"lodash": "4.17.15",
"moment": "^2.29.4",
"nprogress": "^0.2.0",
"pig-avue-form-design": "^1.5.15",
"script-loader": "^0.7.2",
"sockjs-client": "1.0.0",
"stomp-websocket": "2.3.4-next",
"svg-sprite-loader": "^5.1.1",
"vue": "2.6.14",
"vue-awesome": "^4.5.0",
"vue-axios": "^2.1.2",
"vue-clipboard2": "^0.3.0",
"vue-cnname-avatar": "^1.0.6",
"vue-codemirror": "^4.0.6",
"vue-cron": "^1.0.9",
"vue-echarts": "^4.1.0",
"vue-i18n": "^8.28.2",
"vue-json-editor": "^1.2.3",
"vue-json-tree-view": "^2.1.4",
"vue-quill-editor": "3.0.6",
"vue-router": "^3.0.2",
"vue-upload-component": "^2.8.23",
"vuedraggable": "^2.24.3",
"vuex": "^3.0.1",
"webpack": "4.47.0",
"xlsx": "^0.18.5",
"xml-js": "^1.6.11"
},
"devDependencies": {
"@babel/plugin-proposal-optional-chaining": "^7.21.0",
"@babel/plugin-transform-modules-commonjs": "^7.22.5",
"@vue/cli-plugin-babel": "^3.12.0",
"@vue/cli-service": "^3.12.0",
"benz-amr-recorder": "^1.0.14",
"bpmn-js": "^14.2.0",
"cache-loader": "^4.1.0",
"chai": "^4.1.2",
"compression-webpack-plugin": "^3.1.0",
"filemanager-webpack-plugin": "^5.0.0",
"sass": "1.32.13",
"sass-loader": "10.1.1",
"ts-loader": "^8.2.0",
"typescript": "^5.3.3",
"vue-class-component": "^7.2.6",
"vue-pdf": "^4.3.0",
"vue-property-decorator": "^9.1.2",
"vue-template-compiler": "2.6.14",
"vue-video-player": "^5.0.2",
"webpack-war-plugin": "^1.0.0-beta.3"
},
"lint-staged": {
"*.js": [
"vue-cli-service lint",
"git add"
],
"*.vue": [
"vue-cli-service lint",
"git add"
]
}
}

11
public/cdn/animate/3.5.2/animate.css vendored Normal file

File diff suppressed because one or more lines are too long

59
public/cdn/avue/avue.css Normal file
View File

@ -0,0 +1,59 @@
html,
body,
#app {
height: 100%;
margin: 0;
padding: 0;
}
.avue-home {
background-color: #303133;
height: 100%;
display: flex;
flex-direction: column;
}
.avue-home__main {
user-select: none;
width: 100%;
flex-grow: 1;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.avue-home__footer {
width: 100%;
flex-grow: 0;
text-align: center;
padding: 1em 0;
}
.avue-home__footer > a {
font-size: 12px;
color: #ABABAB;
text-decoration: none;
}
.avue-home__loading {
height: 32px;
width: 32px;
margin-bottom: 20px;
}
.avue-home__title {
color: #FFF;
font-size: 14px;
margin-bottom: 10px;
}
.avue-home__sub-title {
color: #ABABAB;
font-size: 12px;
}
.avue-tree__content {
padding: 5px 0 0 5px !important;
height: calc(100% - 32px);
}

4491
public/cdn/avue/index.css Normal file

File diff suppressed because it is too large Load Diff

9
public/cdn/avue/index.js Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,193 @@
'use strict'
// Module export pattern from
// https://github.com/umdjs/umd/blob/master/returnExports.js
;(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define([], factory)
} else if (typeof exports === 'object') {
// Node. Does not work with strict CommonJS, but
// only CommonJS-like environments that support module.exports,
// like Node.
module.exports = factory()
} else {
// Browser globals (root is window)
root.store = factory()
}
}(this, function () {
// Store.js
var store = {}
var win = (typeof window !== 'undefined' ? window : global)
var doc = win.document
var localStorageName = 'localStorage'
var scriptTag = 'script'
var storage
store.disabled = false
store.version = '1.3.20'
store.set = function (key, value) {}
store.get = function (key, defaultVal) {}
store.has = function (key) { return store.get(key) !== undefined }
store.remove = function (key) {}
store.clear = function () {}
store.transact = function (key, defaultVal, transactionFn) {
if (transactionFn == null) {
transactionFn = defaultVal
defaultVal = null
}
if (defaultVal == null) {
defaultVal = {}
}
var val = store.get(key, defaultVal)
transactionFn(val)
store.set(key, val)
}
store.getAll = function () {}
store.forEach = function () {}
store.serialize = function (value) {
return JSON.stringify(value)
}
store.deserialize = function (value) {
if (typeof value !== 'string') { return undefined }
try { return JSON.parse(value) } catch (e) { return value || undefined }
}
// Functions to encapsulate questionable FireFox 3.6.13 behavior
// when about.config::dom.storage.enabled === false
// See https://github.com/marcuswestin/store.js/issues#issue/13
function isLocalStorageNameSupported () {
try { return (localStorageName in win && win[localStorageName]) } catch (err) { return false }
}
if (isLocalStorageNameSupported()) {
storage = win[localStorageName]
store.set = function (key, val) {
if (val === undefined) { return store.remove(key) }
storage.setItem(key, store.serialize(val))
return val
}
store.get = function (key, defaultVal) {
var val = store.deserialize(storage.getItem(key))
return (val === undefined ? defaultVal : val)
}
store.remove = function (key) { storage.removeItem(key) }
store.clear = function () { storage.clear() }
store.getAll = function () {
var ret = {}
store.forEach(function (key, val) {
ret[key] = val
})
return ret
}
store.forEach = function (callback) {
for (var i = 0; i < storage.length; i++) {
var key = storage.key(i)
callback(key, store.get(key))
}
}
} else if (doc && doc.documentElement.addBehavior) {
var storageOwner,
storageContainer
// Since #userData storage applies only to specific paths, we need to
// somehow link our data to a specific path. We choose /favicon.ico
// as a pretty safe option, since all browsers already make a request to
// this URL anyway and being a 404 will not hurt us here. We wrap an
// iframe pointing to the favicon in an ActiveXObject(htmlfile) object
// (see: http://msdn.microsoft.com/en-us/library/aa752574(v=VS.85).aspx)
// since the iframe access rules appear to allow direct access and
// manipulation of the document element, even for a 404 page. This
// document can be used instead of the current document (which would
// have been limited to the current path) to perform #userData storage.
try {
storageContainer = new ActiveXObject('htmlfile')
storageContainer.open()
storageContainer.write('<' + scriptTag + '>document.w=window</' + scriptTag + '><iframe src="/favicon.ico"></iframe>')
storageContainer.close()
storageOwner = storageContainer.w.frames[0].document
storage = storageOwner.createElement('div')
} catch (e) {
// somehow ActiveXObject instantiation failed (perhaps some special
// security settings or otherwse), fall back to per-path storage
storage = doc.createElement('div')
storageOwner = doc.body
}
var withIEStorage = function (storeFunction) {
return function () {
var args = Array.prototype.slice.call(arguments, 0)
args.unshift(storage)
// See http://msdn.microsoft.com/en-us/library/ms531081(v=VS.85).aspx
// and http://msdn.microsoft.com/en-us/library/ms531424(v=VS.85).aspx
storageOwner.appendChild(storage)
storage.addBehavior('#default#userData')
storage.load(localStorageName)
var result = storeFunction.apply(store, args)
storageOwner.removeChild(storage)
return result
}
}
// In IE7, keys cannot start with a digit or contain certain chars.
// See https://github.com/marcuswestin/store.js/issues/40
// See https://github.com/marcuswestin/store.js/issues/83
var forbiddenCharsRegex = new RegExp("[!\"#$%&'()*+,/\\\\:;<=>?@[\\]^`{|}~]", 'g')
var ieKeyFix = function (key) {
return key.replace(/^d/, '___$&').replace(forbiddenCharsRegex, '___')
}
store.set = withIEStorage(function (storage, key, val) {
key = ieKeyFix(key)
if (val === undefined) { return store.remove(key) }
storage.setAttribute(key, store.serialize(val))
storage.save(localStorageName)
return val
})
store.get = withIEStorage(function (storage, key, defaultVal) {
key = ieKeyFix(key)
var val = store.deserialize(storage.getAttribute(key))
return (val === undefined ? defaultVal : val)
})
store.remove = withIEStorage(function (storage, key) {
key = ieKeyFix(key)
storage.removeAttribute(key)
storage.save(localStorageName)
})
store.clear = withIEStorage(function (storage) {
var attributes = storage.XMLDocument.documentElement.attributes
storage.load(localStorageName)
for (var i = attributes.length - 1; i >= 0; i--) {
storage.removeAttribute(attributes[i].name)
}
storage.save(localStorageName)
})
store.getAll = function (storage) {
var ret = {}
store.forEach(function (key, val) {
ret[key] = val
})
return ret
}
store.forEach = withIEStorage(function (storage, callback) {
var attributes = storage.XMLDocument.documentElement.attributes
for (var i = 0, attr; attr = attributes[i]; ++i) {
callback(attr.name, store.deserialize(storage.getAttribute(attr.name)))
}
})
}
try {
var testKey = '__storejs__'
store.set(testKey, testKey)
if (store.get(testKey) != testKey) { store.disabled = true }
store.remove(testKey)
} catch (e) {
store.disabled = true
}
store.enabled = !store.disabled
return store
}))

BIN
public/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 732 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 553 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 355 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
public/images/gantt/red.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 B

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

BIN
public/img/IEP-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
public/img/bg/bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 477 KiB

BIN
public/img/bg/cloud.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
public/img/bg/login.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 359 KiB

BIN
public/img/code/qq-code.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

BIN
public/img/iep-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
public/img/login.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 KiB

BIN
public/img/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
public/img/notFound.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
public/img/white-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

48
public/index.html Normal file
View File

@ -0,0 +1,48 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<meta name="format-detection" content="telephone=no" />
<!--避免微信管理防盗链机制-->
<meta name="referrer" content="no-referrer" />
<meta http-equiv="X-UA-Compatible" content="chrome=1" />
<link rel="stylesheet" href="<%= BASE_URL %>cdn/animate/3.5.2/animate.css" />
<link rel="stylesheet" href="<%= BASE_URL %>cdn/avue/avue.css" />
<link rel="stylesheet" href="<%= BASE_URL %>cdn/avue/index.css" />
<link rel="icon" href="<%= BASE_URL %>img/iep-icon.png" />
<title>iMES</title>
</head>
<body>
<noscript>
<strong>很抱歉,如果没有 JavaScript 支持,网站将不能正常工作。请启用浏览器的 JavaScript 然后继续。</strong>
</noscript>
<div id="app">
<div class="avue-home">
<div class="avue-home__main">
<img class="avue-home__loading" src="./svg/loading-spin.svg" alt="loading" />
<div class="avue-home__title">正在加载资源</div>
<div class="avue-home__sub-title">初次加载资源可能需要较多时间 请耐心等待</div>
</div>
<div class="avue-home__footer">
<a href="http://www.foreverwin.com.cn/" target="_blank"> Copyright © 2022 foreverwin.com</a>
</div>
</div>
</div>
<!-- built files will be auto injected -->
<script src="<%= BASE_URL %>cdn/avue/index.js" charset="utf-8"></script>
<script>
var _hmt = _hmt || [];
(function () {
var hm = document.createElement('script');
hm.src = 'https://hm.baidu.com/hm.js?0625618efb027ed02e88da84c121652e';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More